summaryrefslogtreecommitdiff
path: root/editor
diff options
context:
space:
mode:
Diffstat (limited to 'editor')
-rw-r--r--editor/SCsub2
-rw-r--r--editor/animation_bezier_editor.cpp4
-rw-r--r--editor/animation_track_editor.cpp22
-rw-r--r--editor/animation_track_editor.h10
-rw-r--r--editor/connections_dialog.cpp31
-rw-r--r--editor/connections_dialog.h1
-rw-r--r--editor/debugger/editor_debugger_tree.h4
-rw-r--r--editor/dependency_editor.cpp19
-rw-r--r--editor/editor_builders.py5
-rw-r--r--editor/editor_command_palette.cpp2
-rw-r--r--editor/editor_feature_profile.cpp2
-rw-r--r--editor/editor_file_dialog.h4
-rw-r--r--editor/editor_file_system.cpp2
-rw-r--r--editor/editor_help_search.cpp5
-rw-r--r--editor/editor_inspector.cpp13
-rw-r--r--editor/editor_inspector.h2
-rw-r--r--editor/editor_node.cpp284
-rw-r--r--editor/editor_node.h44
-rw-r--r--editor/editor_plugin_settings.cpp2
-rw-r--r--editor/editor_quick_open.cpp21
-rw-r--r--editor/editor_quick_open.h1
-rw-r--r--editor/editor_resource_picker.cpp146
-rw-r--r--editor/editor_resource_picker.h1
-rw-r--r--editor/editor_run.cpp4
-rw-r--r--editor/editor_run_native.cpp4
-rw-r--r--editor/editor_settings_dialog.cpp54
-rw-r--r--editor/editor_themes.cpp374
-rw-r--r--editor/editor_themes.h11
-rw-r--r--editor/editor_undo_redo_manager.cpp4
-rw-r--r--editor/export/editor_export_platform.cpp8
-rw-r--r--editor/export/editor_export_platform.h2
-rw-r--r--editor/export/project_export.cpp8
-rw-r--r--editor/filesystem_dock.cpp17
-rw-r--r--editor/icons/MemberAnnotation.svg2
-rw-r--r--editor/icons/MethodOverride.svg1
-rw-r--r--editor/icons/MethodOverrideAndSlot.svg1
-rw-r--r--editor/icons/VisualScriptComment.svg1
-rw-r--r--editor/icons/VisualScriptExpression.svg1
-rw-r--r--editor/import/dynamic_font_import_settings.cpp8
-rw-r--r--editor/import/resource_importer_scene.h11
-rw-r--r--editor/plugins/animation_player_editor_plugin.cpp15
-rw-r--r--editor/plugins/animation_player_editor_plugin.h2
-rw-r--r--editor/plugins/bone_map_editor_plugin.cpp2
-rw-r--r--editor/plugins/canvas_item_editor_plugin.cpp33
-rw-r--r--editor/plugins/canvas_item_editor_plugin.h2
-rw-r--r--editor/plugins/debugger_editor_plugin.cpp14
-rw-r--r--editor/plugins/debugger_editor_plugin.h2
-rw-r--r--editor/plugins/font_config_plugin.cpp10
-rw-r--r--editor/plugins/script_editor_plugin.cpp78
-rw-r--r--editor/plugins/script_editor_plugin.h4
-rw-r--r--editor/plugins/script_text_editor.cpp153
-rw-r--r--editor/plugins/script_text_editor.h4
-rw-r--r--editor/plugins/shader_editor_plugin.cpp30
-rw-r--r--editor/plugins/shader_editor_plugin.h4
-rw-r--r--editor/plugins/text_editor.cpp16
-rw-r--r--editor/plugins/text_editor.h4
-rw-r--r--editor/plugins/texture_3d_editor_plugin.cpp6
-rw-r--r--editor/plugins/texture_3d_editor_plugin.h2
-rw-r--r--editor/plugins/texture_layered_editor_plugin.cpp6
-rw-r--r--editor/plugins/texture_layered_editor_plugin.h1
-rw-r--r--editor/plugins/theme_editor_plugin.cpp32
-rw-r--r--editor/plugins/tiles/tile_atlas_view.cpp5
-rw-r--r--editor/plugins/tiles/tile_map_editor.cpp2
-rw-r--r--editor/plugins/tiles/tile_set_atlas_source_editor.cpp2
-rw-r--r--editor/plugins/visual_shader_editor_plugin.cpp5
-rw-r--r--editor/project_converter_3_to_4.cpp120
-rw-r--r--editor/project_converter_3_to_4.h1
-rw-r--r--editor/project_manager.cpp61
-rw-r--r--editor/scene_create_dialog.cpp2
-rw-r--r--editor/scene_tree_dock.cpp89
-rw-r--r--editor/scene_tree_dock.h7
-rw-r--r--editor/scene_tree_editor.cpp22
-rw-r--r--editor/scene_tree_editor.h4
-rw-r--r--editor/shader_globals_editor.cpp2
-rw-r--r--editor/translations/bg.po363
-rw-r--r--editor/translations/cs.po14
-rw-r--r--editor/translations/de.po29
-rw-r--r--editor/translations/es.po282
-rw-r--r--editor/translations/et.po876
-rwxr-xr-xeditor/translations/extract.py7
-rw-r--r--editor/translations/fa.po578
-rw-r--r--editor/translations/fi.po21
-rw-r--r--editor/translations/fr.po205
-rw-r--r--editor/translations/hr.po43
-rw-r--r--editor/translations/id.po18
-rw-r--r--editor/translations/it.po162
-rw-r--r--editor/translations/ja.po1028
-rw-r--r--editor/translations/ko.po463
-rw-r--r--editor/translations/nl.po125
-rw-r--r--editor/translations/pt.po10
-rw-r--r--editor/translations/pt_BR.po58
-rw-r--r--editor/translations/ro.po105
-rw-r--r--editor/translations/ru.po1523
-rw-r--r--editor/translations/tr.po11
-rw-r--r--editor/translations/uk.po119
-rw-r--r--editor/translations/zh_CN.po27
-rw-r--r--editor/translations/zh_TW.po8
97 files changed, 3539 insertions, 4416 deletions
diff --git a/editor/SCsub b/editor/SCsub
index c217f162b4..32ad88add5 100644
--- a/editor/SCsub
+++ b/editor/SCsub
@@ -24,7 +24,7 @@ def _make_doc_data_class_path(to_path):
g.close()
-if env["tools"]:
+if env.editor_build:
# Register exporters
reg_exporters_inc = '#include "register_exporters.h"\n'
reg_exporters = "void register_exporters() {\n"
diff --git a/editor/animation_bezier_editor.cpp b/editor/animation_bezier_editor.cpp
index 219f3fdbe1..3b87b3e65e 100644
--- a/editor/animation_bezier_editor.cpp
+++ b/editor/animation_bezier_editor.cpp
@@ -667,8 +667,8 @@ void AnimationBezierTrackEdit::set_timeline(AnimationTimelineEdit *p_timeline) {
void AnimationBezierTrackEdit::set_editor(AnimationTrackEditor *p_editor) {
editor = p_editor;
- connect("clear_selection", Callable(editor, "_clear_selection").bind(false));
- connect("select_key", Callable(editor, "_key_selected"), CONNECT_DEFERRED);
+ connect("clear_selection", callable_mp(editor, &AnimationTrackEditor::_clear_selection).bind(false));
+ connect("select_key", callable_mp(editor, &AnimationTrackEditor::_key_selected), CONNECT_DEFERRED);
}
void AnimationBezierTrackEdit::_play_position_draw() {
diff --git a/editor/animation_track_editor.cpp b/editor/animation_track_editor.cpp
index c2e04e4be9..9529460ab1 100644
--- a/editor/animation_track_editor.cpp
+++ b/editor/animation_track_editor.cpp
@@ -1445,7 +1445,9 @@ void AnimationTimelineEdit::_anim_loop_pressed() {
default:
break;
}
+ undo_redo->add_do_method(this, "update_values");
undo_redo->add_undo_method(animation.ptr(), "set_loop_mode", animation->get_loop_mode());
+ undo_redo->add_undo_method(this, "update_values");
undo_redo->commit_action();
} else {
String base_path = animation->get_path();
@@ -1913,6 +1915,8 @@ void AnimationTimelineEdit::_bind_methods() {
ADD_SIGNAL(MethodInfo("timeline_changed", PropertyInfo(Variant::FLOAT, "position"), PropertyInfo(Variant::BOOL, "drag"), PropertyInfo(Variant::BOOL, "timeline_only")));
ADD_SIGNAL(MethodInfo("track_added", PropertyInfo(Variant::INT, "track")));
ADD_SIGNAL(MethodInfo("length_changed", PropertyInfo(Variant::FLOAT, "size")));
+
+ ClassDB::bind_method(D_METHOD("update_values"), &AnimationTimelineEdit::update_values);
}
AnimationTimelineEdit::AnimationTimelineEdit() {
@@ -3420,9 +3424,6 @@ void AnimationTrackEditGroup::_zoom_changed() {
queue_redraw();
}
-void AnimationTrackEditGroup::_bind_methods() {
-}
-
AnimationTrackEditGroup::AnimationTrackEditGroup() {
set_mouse_filter(MOUSE_FILTER_PASS);
}
@@ -6457,16 +6458,11 @@ void AnimationTrackEditor::_select_all_tracks_for_copy() {
}
void AnimationTrackEditor::_bind_methods() {
- ClassDB::bind_method(D_METHOD("_animation_update"), &AnimationTrackEditor::_animation_update);
- ClassDB::bind_method(D_METHOD("_track_grab_focus"), &AnimationTrackEditor::_track_grab_focus);
- ClassDB::bind_method(D_METHOD("_update_tracks"), &AnimationTrackEditor::_update_tracks);
- ClassDB::bind_method(D_METHOD("_redraw_tracks"), &AnimationTrackEditor::_redraw_tracks);
- ClassDB::bind_method(D_METHOD("_clear_selection_for_anim"), &AnimationTrackEditor::_clear_selection_for_anim);
- ClassDB::bind_method(D_METHOD("_select_at_anim"), &AnimationTrackEditor::_select_at_anim);
-
- ClassDB::bind_method(D_METHOD("_key_selected"), &AnimationTrackEditor::_key_selected); // Still used by some connect_compat.
- ClassDB::bind_method(D_METHOD("_key_deselected"), &AnimationTrackEditor::_key_deselected); // Still used by some connect_compat.
- ClassDB::bind_method(D_METHOD("_clear_selection"), &AnimationTrackEditor::_clear_selection); // Still used by some connect_compat.
+ ClassDB::bind_method("_animation_update", &AnimationTrackEditor::_animation_update);
+ ClassDB::bind_method("_track_grab_focus", &AnimationTrackEditor::_track_grab_focus);
+ ClassDB::bind_method("_clear_selection_for_anim", &AnimationTrackEditor::_clear_selection_for_anim);
+ ClassDB::bind_method("_select_at_anim", &AnimationTrackEditor::_select_at_anim);
+ ClassDB::bind_method("_clear_selection", &AnimationTrackEditor::_clear_selection);
ClassDB::bind_method(D_METHOD("_bezier_track_set_key_handle_mode", "animation", "track_idx", "key_idx", "key_handle_mode", "key_handle_set_mode"), &AnimationTrackEditor::_bezier_track_set_key_handle_mode, DEFVAL(Animation::HANDLE_SET_MODE_NONE));
diff --git a/editor/animation_track_editor.h b/editor/animation_track_editor.h
index ac69b88e99..5c51921d93 100644
--- a/editor/animation_track_editor.h
+++ b/editor/animation_track_editor.h
@@ -280,7 +280,6 @@ class AnimationTrackEditGroup : public Control {
void _zoom_changed();
protected:
- static void _bind_methods();
void _notification(int p_what);
public:
@@ -407,7 +406,6 @@ class AnimationTrackEditor : public VBoxContainer {
void _insert_key_from_track(float p_ofs, int p_track);
void _add_method_key(const String &p_method);
- void _clear_selection(bool p_update = false);
void _clear_selection_for_anim(const Ref<Animation> &p_anim);
void _select_at_anim(const Ref<Animation> &p_anim, int p_track, float p_pos);
@@ -425,9 +423,6 @@ class AnimationTrackEditor : public VBoxContainer {
RBMap<SelectedKey, KeyInfo> selection;
- void _key_selected(int p_key, bool p_single, int p_track);
- void _key_deselected(int p_key, int p_track);
-
bool moving_selection = false;
float moving_selection_offset = 0.0f;
void _move_selection_begin();
@@ -531,6 +526,11 @@ protected:
void _notification(int p_what);
public:
+ // Public for use with callable_mp.
+ void _clear_selection(bool p_update = false);
+ void _key_selected(int p_key, bool p_single, int p_track);
+ void _key_deselected(int p_key, int p_track);
+
enum {
EDIT_COPY_TRACKS,
EDIT_COPY_TRACKS_CONFIRM,
diff --git a/editor/connections_dialog.cpp b/editor/connections_dialog.cpp
index 861d05f17a..ddeb8643b8 100644
--- a/editor/connections_dialog.cpp
+++ b/editor/connections_dialog.cpp
@@ -238,6 +238,12 @@ void ConnectDialog::_notification(int p_what) {
String type_name = Variant::get_type_name((Variant::Type)type_list->get_item_id(i));
type_list->set_item_icon(i, get_theme_icon(type_name, SNAME("EditorIcons")));
}
+
+ Ref<StyleBox> style = get_theme_stylebox("normal", "LineEdit")->duplicate();
+ if (style.is_valid()) {
+ style->set_default_margin(SIDE_TOP, style->get_default_margin(SIDE_TOP) + 1.0);
+ from_signal->add_theme_style_override("normal", style);
+ }
} break;
}
}
@@ -361,6 +367,10 @@ void ConnectDialog::popup_dialog(const String &p_for_signal) {
error_label->set_visible(!_find_first_script(get_tree()->get_edited_scene_root(), get_tree()->get_edited_scene_root()));
}
+ if (first_popup) {
+ first_popup = false;
+ _advanced_pressed();
+ }
popup_centered();
}
@@ -383,6 +393,7 @@ void ConnectDialog::_advanced_pressed() {
}
_update_ok_enabled();
+ EditorSettings::get_singleton()->set_project_metadata("editor_metadata", "use_advanced_connections", advanced->is_pressed());
popup_centered();
}
@@ -465,30 +476,32 @@ ConnectDialog::ConnectDialog() {
vbc_right->add_margin_child(TTR("Unbind Signal Arguments:"), unbind_count);
- HBoxContainer *dstm_hb = memnew(HBoxContainer);
- vbc_left->add_margin_child(TTR("Receiver Method:"), dstm_hb);
-
dst_method = memnew(LineEdit);
dst_method->set_h_size_flags(Control::SIZE_EXPAND_FILL);
dst_method->connect("text_submitted", callable_mp(this, &ConnectDialog::_text_submitted));
- dstm_hb->add_child(dst_method);
+ vbc_left->add_margin_child(TTR("Receiver Method:"), dst_method);
advanced = memnew(CheckButton);
- dstm_hb->add_child(advanced);
+ vbc_left->add_child(advanced);
advanced->set_text(TTR("Advanced"));
+ advanced->set_h_size_flags(Control::SIZE_SHRINK_BEGIN | Control::SIZE_EXPAND);
+ advanced->set_pressed(EditorSettings::get_singleton()->get_project_metadata("editor_metadata", "use_advanced_connections", false));
advanced->connect("pressed", callable_mp(this, &ConnectDialog::_advanced_pressed));
+ HBoxContainer *hbox = memnew(HBoxContainer);
+ vbc_right->add_child(hbox);
+
deferred = memnew(CheckBox);
deferred->set_h_size_flags(0);
deferred->set_text(TTR("Deferred"));
deferred->set_tooltip_text(TTR("Defers the signal, storing it in a queue and only firing it at idle time."));
- vbc_right->add_child(deferred);
+ hbox->add_child(deferred);
one_shot = memnew(CheckBox);
one_shot->set_h_size_flags(0);
- one_shot->set_text(TTR("Oneshot"));
+ one_shot->set_text(TTR("One Shot"));
one_shot->set_tooltip_text(TTR("Disconnects the signal after its first emission."));
- vbc_right->add_child(one_shot);
+ hbox->add_child(one_shot);
cdbinds = memnew(ConnectDialogBinds);
@@ -810,7 +823,7 @@ void ConnectionsDock::_go_to_script(TreeItem &p_item) {
}
if (script.is_valid() && ScriptEditor::get_singleton()->script_goto_method(script, cd.method)) {
- EditorNode::get_singleton()->call("_editor_select", EditorNode::EDITOR_SCRIPT);
+ EditorNode::get_singleton()->editor_select(EditorNode::EDITOR_SCRIPT);
}
}
diff --git a/editor/connections_dialog.h b/editor/connections_dialog.h
index e37246e7a0..db2f855617 100644
--- a/editor/connections_dialog.h
+++ b/editor/connections_dialog.h
@@ -112,6 +112,7 @@ private:
LineEdit *dst_method = nullptr;
ConnectDialogBinds *cdbinds = nullptr;
bool edit_mode = false;
+ bool first_popup = true;
NodePath dst_path;
VBoxContainer *vbc_right = nullptr;
diff --git a/editor/debugger/editor_debugger_tree.h b/editor/debugger/editor_debugger_tree.h
index 5b2df8abd5..5af3a0d84a 100644
--- a/editor/debugger/editor_debugger_tree.h
+++ b/editor/debugger/editor_debugger_tree.h
@@ -28,11 +28,11 @@
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
/*************************************************************************/
-#include "scene/gui/tree.h"
-
#ifndef EDITOR_DEBUGGER_TREE_H
#define EDITOR_DEBUGGER_TREE_H
+#include "scene/gui/tree.h"
+
class SceneDebuggerTree;
class EditorFileDialog;
diff --git a/editor/dependency_editor.cpp b/editor/dependency_editor.cpp
index 43961a7ceb..b0ea289bbe 100644
--- a/editor/dependency_editor.cpp
+++ b/editor/dependency_editor.cpp
@@ -286,7 +286,11 @@ void DependencyEditorOwners::_list_rmb_clicked(int p_item, const Vector2 &p_pos,
file_options->clear();
file_options->reset_size();
if (p_item >= 0) {
- file_options->add_item(TTR("Open"), FILE_OPEN);
+ if (owners->get_selected_items().size() == 1) {
+ file_options->add_icon_item(get_theme_icon(SNAME("Load"), SNAME("EditorIcons")), TTR("Open Scene"), FILE_OPEN);
+ } else {
+ file_options->add_icon_item(get_theme_icon(SNAME("Load"), SNAME("EditorIcons")), TTR("Open Scenes"), FILE_OPEN);
+ }
}
file_options->set_position(owners->get_screen_position() + p_pos);
@@ -307,11 +311,14 @@ void DependencyEditorOwners::_select_file(int p_idx) {
void DependencyEditorOwners::_file_option(int p_option) {
switch (p_option) {
case FILE_OPEN: {
- int idx = owners->get_current();
- if (idx < 0 || idx >= owners->get_item_count()) {
- break;
+ PackedInt32Array selected_items = owners->get_selected_items();
+ for (int i = 0; i < selected_items.size(); i++) {
+ int item_idx = selected_items[i];
+ if (item_idx < 0 || item_idx >= owners->get_item_count()) {
+ break;
+ }
+ _select_file(item_idx);
}
- _select_file(idx);
} break;
}
}
@@ -362,7 +369,7 @@ DependencyEditorOwners::DependencyEditorOwners() {
file_options->connect("id_pressed", callable_mp(this, &DependencyEditorOwners::_file_option));
owners = memnew(ItemList);
- owners->set_select_mode(ItemList::SELECT_SINGLE);
+ owners->set_select_mode(ItemList::SELECT_MULTI);
owners->connect("item_clicked", callable_mp(this, &DependencyEditorOwners::_list_rmb_clicked));
owners->connect("item_activated", callable_mp(this, &DependencyEditorOwners::_select_file));
owners->set_allow_rmb_select(true);
diff --git a/editor/editor_builders.py b/editor/editor_builders.py
index e73fbc6107..696e3b64ec 100644
--- a/editor/editor_builders.py
+++ b/editor/editor_builders.py
@@ -9,6 +9,7 @@ import shutil
import subprocess
import tempfile
import uuid
+import zlib
from platform_methods import subprocess_main
@@ -28,7 +29,6 @@ def make_doc_header(target, source, env):
buf = (docbegin + buf + docend).encode("utf-8")
decomp_size = len(buf)
- import zlib
# Use maximum zlib compression level to further reduce file size
# (at the cost of initial build times).
@@ -88,9 +88,6 @@ def make_translations_header(target, source, env, category):
g.write("#ifndef _{}_TRANSLATIONS_H\n".format(category.upper()))
g.write("#define _{}_TRANSLATIONS_H\n".format(category.upper()))
- import zlib
- import os.path
-
sorted_paths = sorted(source, key=lambda path: os.path.splitext(os.path.basename(path))[0])
msgfmt_available = shutil.which("msgfmt") is not None
diff --git a/editor/editor_command_palette.cpp b/editor/editor_command_palette.cpp
index ba1f2fd6af..a0913265eb 100644
--- a/editor/editor_command_palette.cpp
+++ b/editor/editor_command_palette.cpp
@@ -130,7 +130,7 @@ void EditorCommandPalette::_update_command_search(const String &search_text) {
ti->set_metadata(0, entries[i].key_name);
ti->set_text_alignment(1, HORIZONTAL_ALIGNMENT_RIGHT);
ti->set_text(1, shortcut_text);
- Color c = Color(1, 1, 1, 0.5);
+ Color c = get_theme_color(SNAME("font_color"), SNAME("Editor")) * Color(1, 1, 1, 0.5);
ti->set_custom_color(1, c);
}
diff --git a/editor/editor_feature_profile.cpp b/editor/editor_feature_profile.cpp
index 708173ea26..9549ffb09b 100644
--- a/editor/editor_feature_profile.cpp
+++ b/editor/editor_feature_profile.cpp
@@ -763,7 +763,7 @@ void EditorFeatureProfileManager::_update_selected_profile() {
TreeItem *root = class_list->create_item();
TreeItem *features = class_list->create_item(root);
- TreeItem *last_feature;
+ TreeItem *last_feature = nullptr;
features->set_text(0, TTR("Main Features:"));
for (int i = 0; i < EditorFeatureProfile::FEATURE_MAX; i++) {
TreeItem *feature;
diff --git a/editor/editor_file_dialog.h b/editor/editor_file_dialog.h
index 6d11cb10ed..2e7302aaf9 100644
--- a/editor/editor_file_dialog.h
+++ b/editor/editor_file_dialog.h
@@ -202,7 +202,6 @@ private:
void _select_drive(int p_idx);
void _dir_submitted(String p_dir);
- void _file_submitted(const String &p_file);
void _action_pressed();
void _save_confirm_pressed();
void _cancel_pressed();
@@ -240,6 +239,9 @@ protected:
static void _bind_methods();
public:
+ // Public for use with callable_mp.
+ void _file_submitted(const String &p_file);
+
void popup_file_dialog();
void clear_filters();
void add_filter(const String &p_filter, const String &p_description = "");
diff --git a/editor/editor_file_system.cpp b/editor/editor_file_system.cpp
index b89bd23859..9153640115 100644
--- a/editor/editor_file_system.cpp
+++ b/editor/editor_file_system.cpp
@@ -2085,7 +2085,7 @@ void EditorFileSystem::reimport_files(const Vector<String> &p_files) {
if (group_file_cache.has(file)) {
//maybe the file itself is a group!
groups_to_reimport.insert(file);
- //groups do not belong to grups
+ //groups do not belong to groups
group_file = String();
} else if (!group_file.is_empty()) {
//it's a group file, add group to import and skip this file
diff --git a/editor/editor_help_search.cpp b/editor/editor_help_search.cpp
index 7e7d7ca418..1b8146a0f0 100644
--- a/editor/editor_help_search.cpp
+++ b/editor/editor_help_search.cpp
@@ -324,11 +324,16 @@ bool EditorHelpSearch::Runner::_phase_match_classes_init() {
}
bool EditorHelpSearch::Runner::_phase_match_classes() {
+ if (!iterator_doc) {
+ return true;
+ }
+
DocData::ClassDoc &class_doc = iterator_doc->value;
if (class_doc.name.is_empty()) {
++iterator_doc;
return false;
}
+
if (!_is_class_disabled_by_feature_profile(class_doc.name)) {
ClassMatch match;
match.doc = &class_doc;
diff --git a/editor/editor_inspector.cpp b/editor/editor_inspector.cpp
index 413eb52556..270f4560b7 100644
--- a/editor/editor_inspector.cpp
+++ b/editor/editor_inspector.cpp
@@ -426,6 +426,9 @@ void EditorProperty::_set_read_only(bool p_read_only) {
void EditorProperty::set_read_only(bool p_read_only) {
read_only = p_read_only;
+ if (GDVIRTUAL_CALL(_set_read_only, p_read_only)) {
+ return;
+ }
_set_read_only(p_read_only);
}
@@ -985,6 +988,8 @@ void EditorProperty::_bind_methods() {
ADD_SIGNAL(MethodInfo("selected", PropertyInfo(Variant::STRING, "path"), PropertyInfo(Variant::INT, "focusable_idx")));
GDVIRTUAL_BIND(_update_property)
+ GDVIRTUAL_BIND(_set_read_only, "read_only")
+
ClassDB::bind_method(D_METHOD("_update_editor_property_status"), &EditorProperty::update_editor_property_status);
}
@@ -1138,11 +1143,10 @@ Control *EditorInspectorCategory::make_custom_tooltip(const String &p_text) cons
}
Size2 EditorInspectorCategory::get_minimum_size() const {
- Ref<Font> font = get_theme_font(SNAME("font"), SNAME("Tree"));
- int font_size = get_theme_font_size(SNAME("font_size"), SNAME("Tree"));
+ Ref<Font> font = get_theme_font(SNAME("bold"), SNAME("EditorFonts"));
+ int font_size = get_theme_font_size(SNAME("bold_size"), SNAME("EditorFonts"));
Size2 ms;
- ms.width = 1;
ms.height = font->get_height(font_size);
if (icon.is_valid()) {
ms.height = MAX(icon->get_height(), ms.height);
@@ -3459,7 +3463,7 @@ void EditorInspector::expand_revertable() {
}
}
- // Climb up the hierachy doing double buffering with the sets.
+ // Climb up the hierarchy doing double buffering with the sets.
int a = 0;
int b = 1;
while (sections_to_unfold[a].size()) {
@@ -4060,6 +4064,7 @@ void EditorInspector::_show_add_meta_dialog() {
void EditorInspector::_bind_methods() {
ClassDB::bind_method("_edit_request_change", &EditorInspector::_edit_request_change);
+ ClassDB::bind_method("get_selected_path", &EditorInspector::get_selected_path);
ADD_SIGNAL(MethodInfo("property_selected", PropertyInfo(Variant::STRING, "property")));
ADD_SIGNAL(MethodInfo("property_keyed", PropertyInfo(Variant::STRING, "property"), PropertyInfo(Variant::NIL, "value", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_NIL_IS_VARIANT), PropertyInfo(Variant::BOOL, "advance")));
diff --git a/editor/editor_inspector.h b/editor/editor_inspector.h
index b7df5a8037..872007e637 100644
--- a/editor/editor_inspector.h
+++ b/editor/editor_inspector.h
@@ -120,6 +120,8 @@ private:
HashMap<StringName, Variant> cache;
GDVIRTUAL0(_update_property)
+ GDVIRTUAL1(_set_read_only, bool)
+
void _update_pin_flags();
protected:
diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp
index 8eaddcb7e1..6bc281c7e4 100644
--- a/editor/editor_node.cpp
+++ b/editor/editor_node.cpp
@@ -429,7 +429,7 @@ void EditorNode::_version_control_menu_option(int p_idx) {
void EditorNode::_update_title() {
const String appname = ProjectSettings::get_singleton()->get("application/config/name");
- String title = (appname.is_empty() ? TTR("Unnamed Project") : appname) + String(" - ") + VERSION_NAME;
+ String title = (appname.is_empty() ? TTR("Unnamed Project") : appname);
const String edited = editor_data.get_edited_scene_root() ? editor_data.get_edited_scene_root()->get_scene_file_path() : String();
if (!edited.is_empty()) {
// Display the edited scene name before the program name so that it can be seen in the OS task bar.
@@ -439,8 +439,10 @@ void EditorNode::_update_title() {
// Display the "modified" mark before anything else so that it can always be seen in the OS task bar.
title = vformat("(*) %s", title);
}
-
- DisplayServer::get_singleton()->window_set_title(title);
+ DisplayServer::get_singleton()->window_set_title(title + String(" - ") + VERSION_NAME);
+ if (project_title) {
+ project_title->set_text(title);
+ }
}
void EditorNode::shortcut_input(const Ref<InputEvent> &p_event) {
@@ -465,15 +467,15 @@ void EditorNode::shortcut_input(const Ref<InputEvent> &p_event) {
}
if (ED_IS_SHORTCUT("editor/editor_2d", p_event)) {
- _editor_select(EDITOR_2D);
+ editor_select(EDITOR_2D);
} else if (ED_IS_SHORTCUT("editor/editor_3d", p_event)) {
- _editor_select(EDITOR_3D);
+ editor_select(EDITOR_3D);
} else if (ED_IS_SHORTCUT("editor/editor_script", p_event)) {
- _editor_select(EDITOR_SCRIPT);
+ editor_select(EDITOR_SCRIPT);
} else if (ED_IS_SHORTCUT("editor/editor_help", p_event)) {
emit_signal(SNAME("request_help_search"), "");
} else if (ED_IS_SHORTCUT("editor/editor_assetlib", p_event) && AssetLibraryEditorPlugin::is_available()) {
- _editor_select(EDITOR_ASSETLIB);
+ editor_select(EDITOR_ASSETLIB);
} else if (ED_IS_SHORTCUT("editor/editor_next", p_event)) {
_editor_select_next();
} else if (ED_IS_SHORTCUT("editor/editor_prev", p_event)) {
@@ -584,7 +586,7 @@ void EditorNode::_update_from_settings() {
void EditorNode::_select_default_main_screen_plugin() {
if (EDITOR_3D < main_editor_buttons.size() && main_editor_buttons[EDITOR_3D]->is_visible()) {
// If the 3D editor is enabled, use this as the default.
- _editor_select(EDITOR_3D);
+ editor_select(EDITOR_3D);
return;
}
@@ -593,12 +595,12 @@ void EditorNode::_select_default_main_screen_plugin() {
for (int i = 0; i < main_editor_buttons.size(); i++) {
Button *editor_button = main_editor_buttons[i];
if (editor_button->is_visible()) {
- _editor_select(i);
+ editor_select(i);
return;
}
}
- _editor_select(-1);
+ editor_select(-1);
}
void EditorNode::_notification(int p_what) {
@@ -659,6 +661,12 @@ void EditorNode::_notification(int p_what) {
case NOTIFICATION_ENTER_TREE: {
Engine::get_singleton()->set_editor_hint(true);
+ Window *window = static_cast<Window *>(get_tree()->get_root());
+ if (window) {
+ // Handle macOS fullscreen and extend-to-title changes.
+ window->connect("titlebar_changed", callable_mp(this, &EditorNode::_titlebar_resized));
+ }
+
OS::get_singleton()->set_low_processor_usage_mode_sleep_usec(int(EDITOR_GET("interface/editor/low_processor_mode_sleep_usec")));
get_tree()->get_root()->set_as_audio_listener_3d(false);
get_tree()->get_root()->set_as_audio_listener_2d(false);
@@ -713,6 +721,8 @@ void EditorNode::_notification(int p_what) {
ProjectSettings::get_singleton()->save();
}
+ _titlebar_resized();
+
/* DO NOT LOAD SCENES HERE, WAIT FOR FILE SCANNING AND REIMPORT TO COMPLETE */
} break;
@@ -750,7 +760,8 @@ void EditorNode::_notification(int p_what) {
EditorSettings::get_singleton()->check_changed_settings_in_group("text_editor/theme") ||
EditorSettings::get_singleton()->check_changed_settings_in_group("interface/editor/font") ||
EditorSettings::get_singleton()->check_changed_settings_in_group("interface/editor/main_font") ||
- EditorSettings::get_singleton()->check_changed_settings_in_group("interface/editor/code_font");
+ EditorSettings::get_singleton()->check_changed_settings_in_group("interface/editor/code_font") ||
+ EditorSettings::get_singleton()->check_changed_settings_in_group("filesystem/file_dialog/thumbnail_size");
if (theme_changed) {
theme = create_custom_theme(theme_base->get_theme());
@@ -1169,6 +1180,18 @@ void EditorNode::_reload_project_settings() {
void EditorNode::_vp_resized() {
}
+void EditorNode::_titlebar_resized() {
+ const Size2 &margin = DisplayServer::get_singleton()->window_get_safe_title_margins(DisplayServer::MAIN_WINDOW_ID);
+ if (left_menu_spacer) {
+ int w = (gui_base->is_layout_rtl()) ? margin.y : margin.x;
+ left_menu_spacer->set_custom_minimum_size(Size2(w, 0));
+ }
+ if (right_menu_spacer) {
+ int w = (gui_base->is_layout_rtl()) ? margin.x : margin.y;
+ right_menu_spacer->set_custom_minimum_size(Size2(w, 0));
+ }
+}
+
void EditorNode::_version_button_pressed() {
DisplayServer::get_singleton()->clipboard_set(version_btn->get_meta(META_TEXT_TO_COPY));
}
@@ -1190,7 +1213,7 @@ void EditorNode::_editor_select_next() {
}
} while (!main_editor_buttons[editor]->is_visible());
- _editor_select(editor);
+ editor_select(editor);
}
void EditorNode::_open_command_palette() {
@@ -1208,7 +1231,7 @@ void EditorNode::_editor_select_prev() {
}
} while (!main_editor_buttons[editor]->is_visible());
- _editor_select(editor);
+ editor_select(editor);
}
Error EditorNode::load_resource(const String &p_resource, bool p_ignore_broken_deps) {
@@ -2390,7 +2413,7 @@ void EditorNode::_edit_current(bool p_skip_foreign) {
else if (main_plugin != editor_plugin_screen && (!ScriptEditor::get_singleton() || !ScriptEditor::get_singleton()->is_visible_in_tree() || ScriptEditor::get_singleton()->can_take_away_focus())) {
// Update screen main_plugin.
- _editor_select(plugin_index);
+ editor_select(plugin_index);
main_plugin->edit(current_obj);
} else {
editor_plugin_screen->edit(current_obj);
@@ -2450,7 +2473,7 @@ void EditorNode::_run(bool p_current, const String &p_custom) {
write_movie_file = GLOBAL_GET("editor/movie_writer/movie_file");
}
if (write_movie_file == String()) {
- show_accept(TTR("Movie Maker mode is enabled, but no movie file path has been specified.\nA default movie file path can be specified in the project settings under the 'Editor/Movie Writer' category.\nAlternatively, for running single scenes, a 'movie_path' metadata can be added to the root node,\nspecifying the path to a movie file that will be used when recording that scene."), TTR("OK"));
+ show_accept(TTR("Movie Maker mode is enabled, but no movie file path has been specified.\nA default movie file path can be specified in the project settings under the Editor > Movie Writer category.\nAlternatively, for running single scenes, a `movie_file` string metadata can be added to the root node,\nspecifying the path to a movie file that will be used when recording that scene."), TTR("OK"));
return;
}
}
@@ -2763,18 +2786,7 @@ void EditorNode::_menu_option_confirm(int p_option, bool p_confirmed) {
}
} else if (extensions.size()) {
String root_name = scene->get_name();
- // Very similar to node naming logic.
- switch (ProjectSettings::get_singleton()->get("editor/scene/scene_naming").operator int()) {
- case SCENE_NAME_CASING_AUTO:
- // Use casing of the root node.
- break;
- case SCENE_NAME_CASING_PASCAL_CASE: {
- root_name = root_name.to_pascal_case();
- } break;
- case SCENE_NAME_CASING_SNAKE_CASE:
- root_name = root_name.replace("-", "_").to_snake_case();
- break;
- }
+ root_name = EditorNode::adjust_scene_name_casing(root_name);
file->set_current_path(root_name + "." + extensions.front()->get().to_lower());
}
file->popup_file_dialog();
@@ -3080,8 +3092,8 @@ void EditorNode::_menu_option_confirm(int p_option, bool p_confirmed) {
case HELP_SUPPORT_GODOT_DEVELOPMENT: {
OS::get_singleton()->shell_open("https://godotengine.org/donate");
} break;
- case SET_RENDERING_DRIVER_SAVE_AND_RESTART: {
- ProjectSettings::get_singleton()->set("rendering/driver/driver_name", rendering_driver_request);
+ case SET_RENDERER_NAME_SAVE_AND_RESTART: {
+ ProjectSettings::get_singleton()->set("rendering/renderer/rendering_method", renderer_request);
ProjectSettings::get_singleton()->save();
save_all_scenes();
@@ -3090,6 +3102,19 @@ void EditorNode::_menu_option_confirm(int p_option, bool p_confirmed) {
}
}
+String EditorNode::adjust_scene_name_casing(const String &root_name) {
+ switch (ProjectSettings::get_singleton()->get("editor/scene/scene_naming").operator int()) {
+ case SCENE_NAME_CASING_AUTO:
+ // Use casing of the root node.
+ break;
+ case SCENE_NAME_CASING_PASCAL_CASE:
+ return root_name.to_pascal_case();
+ case SCENE_NAME_CASING_SNAKE_CASE:
+ return root_name.replace("-", "_").to_snake_case();
+ }
+ return root_name;
+}
+
void EditorNode::_request_screenshot() {
_screenshot();
}
@@ -3303,7 +3328,7 @@ VBoxContainer *EditorNode::get_main_screen_control() {
return main_screen_vbox;
}
-void EditorNode::_editor_select(int p_which) {
+void EditorNode::editor_select(int p_which) {
static bool selecting = false;
if (selecting || changing_scene) {
return;
@@ -3357,7 +3382,7 @@ void EditorNode::select_editor_by_name(const String &p_name) {
for (int i = 0; i < main_editor_buttons.size(); i++) {
if (main_editor_buttons[i]->get_text() == p_name) {
- _editor_select(i);
+ editor_select(i);
return;
}
}
@@ -3370,7 +3395,7 @@ void EditorNode::add_editor_plugin(EditorPlugin *p_editor, bool p_config_changed
Button *tb = memnew(Button);
tb->set_flat(true);
tb->set_toggle_mode(true);
- tb->connect("pressed", callable_mp(singleton, &EditorNode::_editor_select).bind(singleton->main_editor_buttons.size()));
+ tb->connect("pressed", callable_mp(singleton, &EditorNode::editor_select).bind(singleton->main_editor_buttons.size()));
tb->set_name(p_editor->get_name());
tb->set_text(p_editor->get_name());
@@ -3387,7 +3412,7 @@ void EditorNode::add_editor_plugin(EditorPlugin *p_editor, bool p_config_changed
tb->add_theme_font_size_override("font_size", singleton->gui_base->get_theme_font_size(SNAME("main_button_font_size"), SNAME("EditorFonts")));
singleton->main_editor_buttons.push_back(tb);
- singleton->main_editor_button_vb->add_child(tb);
+ singleton->main_editor_button_hb->add_child(tb);
singleton->editor_table.push_back(p_editor);
singleton->distraction_free->move_to_front();
@@ -3404,7 +3429,7 @@ void EditorNode::remove_editor_plugin(EditorPlugin *p_editor, bool p_config_chan
for (int i = 0; i < singleton->main_editor_buttons.size(); i++) {
if (p_editor->get_name() == singleton->main_editor_buttons[i]->get_text()) {
if (singleton->main_editor_buttons[i]->is_pressed()) {
- singleton->_editor_select(EDITOR_SCRIPT);
+ singleton->editor_select(EDITOR_SCRIPT);
}
memdelete(singleton->main_editor_buttons[i]);
@@ -3628,7 +3653,7 @@ void EditorNode::_set_main_scene_state(Dictionary p_state, Node *p_for_scene) {
int index = p_state["editor_index"];
if (current < 2) { // If currently in spatial/2d, only switch to spatial/2d. If currently in script, stay there.
if (index < 2 || !get_edited_scene()) {
- _editor_select(index);
+ editor_select(index);
}
}
}
@@ -3639,9 +3664,9 @@ void EditorNode::_set_main_scene_state(Dictionary p_state, Node *p_for_scene) {
int n2d = 0, n3d = 0;
_find_node_types(get_edited_scene(), n2d, n3d);
if (n2d > n3d) {
- _editor_select(EDITOR_2D);
+ editor_select(EDITOR_2D);
} else if (n3d > n2d) {
- _editor_select(EDITOR_3D);
+ editor_select(EDITOR_3D);
}
}
}
@@ -3668,10 +3693,6 @@ bool EditorNode::is_changing_scene() const {
return changing_scene;
}
-void EditorNode::_clear_undo_history() {
- get_undo_redo()->clear_history(false);
-}
-
void EditorNode::set_current_scene(int p_idx) {
// Save the folding in case the scene gets reloaded.
if (editor_data.get_scene_path(p_idx) != "" && editor_data.get_edited_scene_root(p_idx)) {
@@ -4857,7 +4878,7 @@ void EditorNode::_load_docks() {
editor_data.set_plugin_window_layout(config);
}
-void EditorNode::_update_dock_slots_visibility() {
+void EditorNode::_update_dock_slots_visibility(bool p_keep_selected_tabs) {
if (!docks_visible) {
for (int i = 0; i < DOCK_SLOT_MAX; i++) {
dock_slot[i]->hide();
@@ -4892,9 +4913,11 @@ void EditorNode::_update_dock_slots_visibility() {
}
}
- for (int i = 0; i < DOCK_SLOT_MAX; i++) {
- if (dock_slot[i]->is_visible() && dock_slot[i]->get_tab_count()) {
- dock_slot[i]->set_current_tab(0);
+ if (!p_keep_selected_tabs) {
+ for (int i = 0; i < DOCK_SLOT_MAX; i++) {
+ if (dock_slot[i]->is_visible() && dock_slot[i]->get_tab_count()) {
+ dock_slot[i]->set_current_tab(0);
+ }
}
}
@@ -5507,7 +5530,7 @@ void EditorNode::_bottom_panel_switch(bool p_enable, int p_idx) {
void EditorNode::set_docks_visible(bool p_show) {
docks_visible = p_show;
- _update_dock_slots_visibility();
+ _update_dock_slots_visibility(true);
}
bool EditorNode::get_docks_visible() const {
@@ -5882,27 +5905,27 @@ void EditorNode::_bottom_panel_raise_toggled(bool p_pressed) {
top_split->set_visible(!p_pressed);
}
-void EditorNode::_update_rendering_driver_color() {
- if (rendering_driver->get_text() == "opengl3") {
- rendering_driver->add_theme_color_override("font_color", Color::hex(0x5586a4ff));
- } else if (rendering_driver->get_text() == "vulkan") {
- rendering_driver->add_theme_color_override("font_color", theme_base->get_theme_color(SNAME("vulkan_color"), SNAME("Editor")));
+void EditorNode::_update_renderer_color() {
+ if (renderer->get_text() == "gl_compatibility") {
+ renderer->add_theme_color_override("font_color", Color::hex(0x5586a4ff));
+ } else if (renderer->get_text() == "forward_plus" || renderer->get_text() == "mobile") {
+ renderer->add_theme_color_override("font_color", theme_base->get_theme_color(SNAME("vulkan_color"), SNAME("Editor")));
}
}
-void EditorNode::_rendering_driver_selected(int p_which) {
- String driver = rendering_driver->get_item_metadata(p_which);
+void EditorNode::_renderer_selected(int p_which) {
+ String rendering_method = renderer->get_item_metadata(p_which);
- String current_driver = OS::get_singleton()->get_current_rendering_driver_name();
+ String current_renderer = GLOBAL_GET("rendering/renderer/rendering_method");
- if (driver == current_driver) {
+ if (rendering_method == current_renderer) {
return;
}
- rendering_driver_request = driver;
+ renderer_request = rendering_method;
video_restart_dialog->popup_centered();
- rendering_driver->select(rendering_driver_current);
- _update_rendering_driver_color();
+ renderer->select(renderer_current);
+ _update_renderer_color();
}
void EditorNode::_resource_saved(Ref<Resource> p_resource, const String &p_path) {
@@ -5937,7 +5960,7 @@ void EditorNode::_feature_profile_changed() {
if ((profile->is_feature_disabled(EditorFeatureProfile::FEATURE_3D) && singleton->main_editor_buttons[EDITOR_3D]->is_pressed()) ||
(profile->is_feature_disabled(EditorFeatureProfile::FEATURE_SCRIPT) && singleton->main_editor_buttons[EDITOR_SCRIPT]->is_pressed()) ||
(AssetLibraryEditorPlugin::is_available() && profile->is_feature_disabled(EditorFeatureProfile::FEATURE_ASSET_LIB) && singleton->main_editor_buttons[EDITOR_ASSETLIB]->is_pressed())) {
- _editor_select(EDITOR_2D);
+ editor_select(EDITOR_2D);
}
} else {
import_tabs->set_tab_hidden(import_tabs->get_tab_idx_from_control(ImportDock::get_singleton()), false);
@@ -5960,19 +5983,14 @@ void EditorNode::_bind_methods() {
GLOBAL_DEF("editor/scene/scene_naming", SCENE_NAME_CASING_SNAKE_CASE);
ProjectSettings::get_singleton()->set_custom_property_info("editor/scene/scene_naming", PropertyInfo(Variant::INT, "editor/scene/scene_naming", PROPERTY_HINT_ENUM, "Auto,PascalCase,snake_case"));
ClassDB::bind_method("edit_current", &EditorNode::edit_current);
- ClassDB::bind_method("_editor_select", &EditorNode::_editor_select);
- ClassDB::bind_method("_node_renamed", &EditorNode::_node_renamed);
ClassDB::bind_method("edit_node", &EditorNode::edit_node);
ClassDB::bind_method(D_METHOD("push_item", "object", "property", "inspector_only"), &EditorNode::push_item, DEFVAL(""), DEFVAL(false));
- ClassDB::bind_method("_get_scene_metadata", &EditorNode::_get_scene_metadata);
ClassDB::bind_method("set_edited_scene", &EditorNode::set_edited_scene);
ClassDB::bind_method("open_request", &EditorNode::open_request);
ClassDB::bind_method("edit_foreign_resource", &EditorNode::edit_foreign_resource);
ClassDB::bind_method("is_resource_read_only", &EditorNode::is_resource_read_only);
- ClassDB::bind_method("_close_messages", &EditorNode::_close_messages);
- ClassDB::bind_method("_show_messages", &EditorNode::_show_messages);
ClassDB::bind_method("stop_child_process", &EditorNode::stop_child_process);
@@ -5981,19 +5999,10 @@ void EditorNode::_bind_methods() {
ClassDB::bind_method("_set_main_scene_state", &EditorNode::_set_main_scene_state);
ClassDB::bind_method("_update_recent_scenes", &EditorNode::_update_recent_scenes);
- ClassDB::bind_method("_clear_undo_history", &EditorNode::_clear_undo_history);
-
ClassDB::bind_method("edit_item_resource", &EditorNode::edit_item_resource);
ClassDB::bind_method(D_METHOD("get_gui_base"), &EditorNode::get_gui_base);
- ClassDB::bind_method(D_METHOD("_on_plugin_ready"), &EditorNode::_on_plugin_ready); // Still used by some connect_compat.
-
- ClassDB::bind_method("_screenshot", &EditorNode::_screenshot);
- ClassDB::bind_method("_save_screenshot", &EditorNode::_save_screenshot);
-
- ClassDB::bind_method("_version_button_pressed", &EditorNode::_version_button_pressed);
-
ADD_SIGNAL(MethodInfo("play_pressed"));
ADD_SIGNAL(MethodInfo("pause_pressed"));
ADD_SIGNAL(MethodInfo("stop_pressed"));
@@ -6605,14 +6614,14 @@ EditorNode::EditorNode() {
if (can_expand) {
// Add spacer to avoid other controls under window minimize/maximize/close buttons (left side).
- Control *menu_spacer = memnew(Control);
- menu_spacer->set_mouse_filter(Control::MOUSE_FILTER_PASS);
- menu_spacer->set_custom_minimum_size(Size2(DisplayServer::get_singleton()->window_get_safe_title_margins(DisplayServer::MAIN_WINDOW_ID).x, 0));
- menu_hb->add_child(menu_spacer);
+ left_menu_spacer = memnew(Control);
+ left_menu_spacer->set_mouse_filter(Control::MOUSE_FILTER_PASS);
+ menu_hb->add_child(left_menu_spacer);
}
main_menu = memnew(MenuBar);
menu_hb->add_child(main_menu);
+
main_menu->add_theme_style_override("hover", gui_base->get_theme_stylebox(SNAME("MenuHover"), SNAME("EditorStyles")));
main_menu->set_flat(true);
main_menu->set_start_index(0); // Main menu, add to the start of global menu.
@@ -6781,22 +6790,30 @@ EditorNode::EditorNode() {
project_menu->add_shortcut(ED_GET_SHORTCUT("editor/quit_to_project_list"), RUN_PROJECT_MANAGER, true);
// Spacer to center 2D / 3D / Script buttons.
- Control *left_spacer = memnew(Control);
+ HBoxContainer *left_spacer = memnew(HBoxContainer);
left_spacer->set_mouse_filter(Control::MOUSE_FILTER_PASS);
+ left_spacer->set_h_size_flags(Control::SIZE_EXPAND_FILL);
menu_hb->add_child(left_spacer);
- menu_hb->add_spacer();
+ if (can_expand && global_menu) {
+ project_title = memnew(Label);
+ project_title->add_theme_font_override("font", gui_base->get_theme_font(SNAME("bold"), SNAME("EditorFonts")));
+ project_title->add_theme_font_size_override("font_size", gui_base->get_theme_font_size(SNAME("bold_size"), SNAME("EditorFonts")));
+ project_title->set_focus_mode(Control::FOCUS_NONE);
+ project_title->set_text_overrun_behavior(TextServer::OVERRUN_TRIM_ELLIPSIS);
+ project_title->set_vertical_alignment(VERTICAL_ALIGNMENT_CENTER);
+ project_title->set_h_size_flags(Control::SIZE_EXPAND_FILL);
+ left_spacer->add_child(project_title);
+ }
- main_editor_button_vb = memnew(HBoxContainer);
- menu_hb->add_child(main_editor_button_vb);
+ main_editor_button_hb = memnew(HBoxContainer);
+ menu_hb->add_child(main_editor_button_hb);
// Options are added and handled by DebuggerEditorPlugin.
debug_menu = memnew(PopupMenu);
debug_menu->set_name(TTR("Debug"));
main_menu->add_child(debug_menu);
- menu_hb->add_spacer();
-
settings_menu = memnew(PopupMenu);
settings_menu->set_name(TTR("Editor"));
main_menu->add_child(settings_menu);
@@ -6870,6 +6887,7 @@ EditorNode::EditorNode() {
// Spacer to center 2D / 3D / Script buttons.
Control *right_spacer = memnew(Control);
right_spacer->set_mouse_filter(Control::MOUSE_FILTER_PASS);
+ right_spacer->set_h_size_flags(Control::SIZE_EXPAND_FILL);
menu_hb->add_child(right_spacer);
launch_pad = memnew(PanelContainer);
@@ -6885,23 +6903,24 @@ EditorNode::EditorNode() {
play_button->set_toggle_mode(true);
play_button->set_focus_mode(Control::FOCUS_NONE);
play_button->connect("pressed", callable_mp(this, &EditorNode::_menu_option).bind(RUN_PLAY));
+ play_button->set_tooltip_text(TTR("Run the project's default scene."));
- ED_SHORTCUT_AND_COMMAND("editor/play", TTR("Play"), Key::F5);
- ED_SHORTCUT_OVERRIDE("editor/play", "macos", KeyModifierMask::META | Key::B);
- play_button->set_shortcut(ED_GET_SHORTCUT("editor/play"));
+ ED_SHORTCUT_AND_COMMAND("editor/run_project", TTR("Run Project"), Key::F5);
+ ED_SHORTCUT_OVERRIDE("editor/run_project", "macos", KeyModifierMask::META | Key::B);
+ play_button->set_shortcut(ED_GET_SHORTCUT("editor/run_project"));
pause_button = memnew(Button);
pause_button->set_flat(true);
pause_button->set_toggle_mode(true);
pause_button->set_icon(gui_base->get_theme_icon(SNAME("Pause"), SNAME("EditorIcons")));
pause_button->set_focus_mode(Control::FOCUS_NONE);
- pause_button->set_tooltip_text(TTR("Pause the scene execution for debugging."));
+ pause_button->set_tooltip_text(TTR("Pause the running project's execution for debugging."));
pause_button->set_disabled(true);
launch_pad_hb->add_child(pause_button);
- ED_SHORTCUT("editor/pause_scene", TTR("Pause Scene"), Key::F7);
- ED_SHORTCUT_OVERRIDE("editor/pause_scene", "macos", KeyModifierMask::META | KeyModifierMask::CTRL | Key::Y);
- pause_button->set_shortcut(ED_GET_SHORTCUT("editor/pause_scene"));
+ ED_SHORTCUT("editor/pause_running_project", TTR("Pause Running Project"), Key::F7);
+ ED_SHORTCUT_OVERRIDE("editor/pause_running_project", "macos", KeyModifierMask::META | KeyModifierMask::CTRL | Key::Y);
+ pause_button->set_shortcut(ED_GET_SHORTCUT("editor/pause_running_project"));
stop_button = memnew(Button);
stop_button->set_flat(true);
@@ -6909,12 +6928,12 @@ EditorNode::EditorNode() {
stop_button->set_focus_mode(Control::FOCUS_NONE);
stop_button->set_icon(gui_base->get_theme_icon(SNAME("Stop"), SNAME("EditorIcons")));
stop_button->connect("pressed", callable_mp(this, &EditorNode::_menu_option).bind(RUN_STOP));
- stop_button->set_tooltip_text(TTR("Stop the scene."));
+ stop_button->set_tooltip_text(TTR("Stop the currently running project."));
stop_button->set_disabled(true);
- ED_SHORTCUT("editor/stop", TTR("Stop"), Key::F8);
- ED_SHORTCUT_OVERRIDE("editor/stop", "macos", KeyModifierMask::META | Key::PERIOD);
- stop_button->set_shortcut(ED_GET_SHORTCUT("editor/stop"));
+ ED_SHORTCUT("editor/stop_running_project", TTR("Stop Running Project"), Key::F8);
+ ED_SHORTCUT_OVERRIDE("editor/stop_running_project", "macos", KeyModifierMask::META | Key::PERIOD);
+ stop_button->set_shortcut(ED_GET_SHORTCUT("editor/stop_running_project"));
run_native = memnew(EditorRunNative);
launch_pad_hb->add_child(run_native);
@@ -6926,10 +6945,11 @@ EditorNode::EditorNode() {
play_scene_button->set_toggle_mode(true);
play_scene_button->set_focus_mode(Control::FOCUS_NONE);
play_scene_button->connect("pressed", callable_mp(this, &EditorNode::_menu_option).bind(RUN_PLAY_SCENE));
+ play_scene_button->set_tooltip_text(TTR("Run the currently edited scene."));
- ED_SHORTCUT_AND_COMMAND("editor/play_scene", TTR("Play Scene"), Key::F6);
- ED_SHORTCUT_OVERRIDE("editor/play_scene", "macos", KeyModifierMask::META | Key::R);
- play_scene_button->set_shortcut(ED_GET_SHORTCUT("editor/play_scene"));
+ ED_SHORTCUT_AND_COMMAND("editor/run_current_scene", TTR("Run Current Scene"), Key::F6);
+ ED_SHORTCUT_OVERRIDE("editor/run_current_scene", "macos", KeyModifierMask::META | Key::R);
+ play_scene_button->set_shortcut(ED_GET_SHORTCUT("editor/run_current_scene"));
play_custom_scene_button = memnew(Button);
play_custom_scene_button->set_flat(true);
@@ -6937,12 +6957,13 @@ EditorNode::EditorNode() {
play_custom_scene_button->set_toggle_mode(true);
play_custom_scene_button->set_focus_mode(Control::FOCUS_NONE);
play_custom_scene_button->connect("pressed", callable_mp(this, &EditorNode::_menu_option).bind(RUN_PLAY_CUSTOM_SCENE));
+ play_custom_scene_button->set_tooltip_text(TTR("Run a specific scene."));
_reset_play_buttons();
- ED_SHORTCUT_AND_COMMAND("editor/play_custom_scene", TTR("Play Custom Scene"), KeyModifierMask::CTRL | KeyModifierMask::SHIFT | Key::F5);
- ED_SHORTCUT_OVERRIDE("editor/play_custom_scene", "macos", KeyModifierMask::META | KeyModifierMask::SHIFT | Key::R);
- play_custom_scene_button->set_shortcut(ED_GET_SHORTCUT("editor/play_custom_scene"));
+ ED_SHORTCUT_AND_COMMAND("editor/run_specific_scene", TTR("Run Specific Scene"), KeyModifierMask::META | KeyModifierMask::SHIFT | Key::F5);
+ ED_SHORTCUT_OVERRIDE("editor/run_specific_scene", "macos", KeyModifierMask::META | KeyModifierMask::SHIFT | Key::R);
+ play_custom_scene_button->set_shortcut(ED_GET_SHORTCUT("editor/run_specific_scene"));
write_movie_panel = memnew(PanelContainer);
write_movie_panel->add_theme_style_override("panel", gui_base->get_theme_stylebox(SNAME("MovieWriterButtonNormal"), SNAME("EditorStyles")));
@@ -6966,58 +6987,54 @@ EditorNode::EditorNode() {
HBoxContainer *right_menu_hb = memnew(HBoxContainer);
menu_hb->add_child(right_menu_hb);
- rendering_driver = memnew(OptionButton);
-
+ renderer = memnew(OptionButton);
// Hide the renderer selection dropdown until OpenGL support is more mature.
// The renderer can still be changed in the project settings or using `--rendering-driver opengl3`.
- rendering_driver->set_visible(false);
-
- rendering_driver->set_flat(true);
- rendering_driver->set_focus_mode(Control::FOCUS_NONE);
- rendering_driver->connect("item_selected", callable_mp(this, &EditorNode::_rendering_driver_selected));
- rendering_driver->add_theme_font_override("font", gui_base->get_theme_font(SNAME("bold"), SNAME("EditorFonts")));
- rendering_driver->add_theme_font_size_override("font_size", gui_base->get_theme_font_size(SNAME("bold_size"), SNAME("EditorFonts")));
+ renderer->set_visible(false);
+ renderer->set_flat(true);
+ renderer->set_focus_mode(Control::FOCUS_NONE);
+ renderer->connect("item_selected", callable_mp(this, &EditorNode::_renderer_selected));
+ renderer->add_theme_font_override("font", gui_base->get_theme_font(SNAME("bold"), SNAME("EditorFonts")));
+ renderer->add_theme_font_size_override("font_size", gui_base->get_theme_font_size(SNAME("bold_size"), SNAME("EditorFonts")));
- right_menu_hb->add_child(rendering_driver);
+ right_menu_hb->add_child(renderer);
if (can_expand) {
// Add spacer to avoid other controls under the window minimize/maximize/close buttons (right side).
- Control *menu_spacer = memnew(Control);
- menu_spacer->set_mouse_filter(Control::MOUSE_FILTER_PASS);
- menu_spacer->set_custom_minimum_size(Size2(DisplayServer::get_singleton()->window_get_safe_title_margins(DisplayServer::MAIN_WINDOW_ID).y, 0));
- menu_hb->add_child(menu_spacer);
+ right_menu_spacer = memnew(Control);
+ right_menu_spacer->set_mouse_filter(Control::MOUSE_FILTER_PASS);
+ menu_hb->add_child(right_menu_spacer);
}
- // Only display the render drivers that are available for this display driver.
- int display_driver_idx = OS::get_singleton()->get_display_driver_id();
- Vector<String> render_drivers = DisplayServer::get_create_function_rendering_drivers(display_driver_idx);
- String current_rendering_driver = OS::get_singleton()->get_current_rendering_driver_name();
+ String current_renderer = GLOBAL_GET("rendering/renderer/rendering_method");
+
+ PackedStringArray renderers = ProjectSettings::get_singleton()->get_custom_property_info().get(StringName("rendering/renderer/rendering_method")).hint_string.split(",", false);
// As we are doing string comparisons, keep in standard case to prevent problems with capitals
// "vulkan" in particular uses lowercase "v" in the code, and uppercase in the UI.
- current_rendering_driver = current_rendering_driver.to_lower();
+ current_renderer = current_renderer.to_lower();
- for (int i = 0; i < render_drivers.size(); i++) {
- String driver = render_drivers[i];
+ for (int i = 0; i < renderers.size(); i++) {
+ String rendering_method = renderers[i];
- // Add the driver to the UI.
- rendering_driver->add_item(driver);
- rendering_driver->set_item_metadata(i, driver);
+ // Add the renderers name to the UI.
+ renderer->add_item(rendering_method);
+ renderer->set_item_metadata(i, rendering_method);
// Lowercase for standard comparison.
- driver = driver.to_lower();
+ rendering_method = rendering_method.to_lower();
- if (current_rendering_driver == driver) {
- rendering_driver->select(i);
- rendering_driver_current = i;
+ if (current_renderer == rendering_method) {
+ renderer->select(i);
+ renderer_current = i;
}
}
- _update_rendering_driver_color();
+ _update_renderer_color();
video_restart_dialog = memnew(ConfirmationDialog);
- video_restart_dialog->set_text(TTR("Changing the video driver requires restarting the editor."));
+ video_restart_dialog->set_text(TTR("Changing the renderer requires restarting the editor."));
video_restart_dialog->set_ok_button_text(TTR("Save & Restart"));
- video_restart_dialog->connect("confirmed", callable_mp(this, &EditorNode::_menu_option).bind(SET_RENDERING_DRIVER_SAVE_AND_RESTART));
+ video_restart_dialog->connect("confirmed", callable_mp(this, &EditorNode::_menu_option).bind(SET_RENDERER_NAME_SAVE_AND_RESTART));
gui_base->add_child(video_restart_dialog);
progress_hb = memnew(BackgroundProgress);
@@ -7541,12 +7558,13 @@ EditorNode::EditorNode() {
screenshot_timer->set_owner(get_owner());
// Adjust spacers to center 2D / 3D / Script buttons.
- int max_w = MAX(launch_pad_hb->get_minimum_size().x + right_menu_hb->get_minimum_size().x, main_menu->get_minimum_size().x);
+ int max_w = MAX(launch_pad->get_minimum_size().x + right_menu_hb->get_minimum_size().x, main_menu->get_minimum_size().x);
left_spacer->set_custom_minimum_size(Size2(MAX(0, max_w - main_menu->get_minimum_size().x), 0));
- right_spacer->set_custom_minimum_size(Size2(MAX(0, max_w - launch_pad_hb->get_minimum_size().x - right_menu_hb->get_minimum_size().x), 0));
+ right_spacer->set_custom_minimum_size(Size2(MAX(0, max_w - launch_pad->get_minimum_size().x - right_menu_hb->get_minimum_size().x), 0));
// Extend menu bar to window title.
if (can_expand) {
+ DisplayServer::get_singleton()->window_set_window_buttons_offset(Vector2i(menu_hb->get_minimum_size().y / 2, menu_hb->get_minimum_size().y / 2), DisplayServer::MAIN_WINDOW_ID);
DisplayServer::get_singleton()->window_set_flag(DisplayServer::WINDOW_FLAG_EXTEND_TO_TITLE, true, DisplayServer::MAIN_WINDOW_ID);
menu_hb->set_can_move_window(true);
}
diff --git a/editor/editor_node.h b/editor/editor_node.h
index 200d68908c..3c236a1301 100644
--- a/editor/editor_node.h
+++ b/editor/editor_node.h
@@ -125,6 +125,12 @@ public:
EDITOR_ASSETLIB
};
+ enum SceneNameCasing {
+ SCENE_NAME_CASING_AUTO,
+ SCENE_NAME_CASING_PASCAL_CASE,
+ SCENE_NAME_CASING_SNAKE_CASE
+ };
+
struct ExecuteThreadArgs {
String path;
List<String> args;
@@ -218,7 +224,7 @@ private:
HELP_ABOUT,
HELP_SUPPORT_GODOT_DEVELOPMENT,
- SET_RENDERING_DRIVER_SAVE_AND_RESTART,
+ SET_RENDERER_NAME_SAVE_AND_RESTART,
GLOBAL_NEW_WINDOW,
GLOBAL_SCENE,
@@ -233,12 +239,6 @@ private:
MAX_BUILD_CALLBACKS = 128
};
- enum ScriptNameCasing {
- SCENE_NAME_CASING_AUTO,
- SCENE_NAME_CASING_PASCAL_CASE,
- SCENE_NAME_CASING_SNAKE_CASE
- };
-
struct BottomPanelItem {
String name;
Control *control = nullptr;
@@ -286,12 +286,12 @@ private:
Control *theme_base = nullptr;
Control *gui_base = nullptr;
VBoxContainer *main_vbox = nullptr;
- OptionButton *rendering_driver = nullptr;
+ OptionButton *renderer = nullptr;
ConfirmationDialog *video_restart_dialog = nullptr;
- int rendering_driver_current = 0;
- String rendering_driver_request;
+ int renderer_current = 0;
+ String renderer_request;
// Split containers.
HSplitContainer *left_l_hsplit = nullptr;
@@ -322,6 +322,9 @@ private:
HBoxContainer *bottom_hb = nullptr;
Control *vp_base = nullptr;
+ Label *project_title = nullptr;
+ Control *left_menu_spacer = nullptr;
+ Control *right_menu_spacer = nullptr;
EditorTitleBar *menu_hb = nullptr;
VBoxContainer *main_screen_vbox = nullptr;
MenuBar *main_menu = nullptr;
@@ -397,7 +400,7 @@ private:
String current_path;
MenuButton *update_spinner = nullptr;
- HBoxContainer *main_editor_button_vb = nullptr;
+ HBoxContainer *main_editor_button_hb = nullptr;
Vector<Button *> main_editor_buttons;
Vector<EditorPlugin *> editor_table;
@@ -543,7 +546,6 @@ private:
void _update_file_menu_opened();
void _update_file_menu_closed();
- void _on_plugin_ready(Object *p_script, const String &p_activate_name);
void _remove_plugin_from_enabled(const String &p_name);
void _fs_changed();
@@ -553,7 +555,6 @@ private:
void _node_renamed();
void _editor_select_next();
void _editor_select_prev();
- void _editor_select(int p_which);
void _set_scene_metadata(const String &p_file, int p_idx = -1);
void _get_scene_metadata(const String &p_file);
void _update_title();
@@ -562,6 +563,7 @@ private:
void _close_messages();
void _show_messages();
void _vp_resized();
+ void _titlebar_resized();
void _version_button_pressed();
int _save_external_resources();
@@ -599,8 +601,8 @@ private:
void _update_from_settings();
- void _rendering_driver_selected(int);
- void _update_rendering_driver_color();
+ void _renderer_selected(int);
+ void _update_renderer_color();
void _exit_editor(int p_exit_code);
@@ -649,7 +651,7 @@ private:
void _load_docks();
void _save_docks_to_config(Ref<ConfigFile> p_layout, const String &p_section);
void _load_docks_from_config(Ref<ConfigFile> p_layout, const String &p_section);
- void _update_dock_slots_visibility();
+ void _update_dock_slots_visibility(bool p_keep_selected_tabs = false);
void _dock_tab_changed(int p_tab);
void _save_open_scenes_to_config(Ref<ConfigFile> p_layout, const String &p_section);
@@ -658,8 +660,6 @@ private:
void _update_layouts_menu();
void _layout_menu_option(int p_id);
- void _clear_undo_history();
-
void _update_addon_config();
void _toggle_distraction_free_mode();
@@ -703,7 +703,11 @@ protected:
void set_current_tab(int p_tab);
public:
- void set_visible_editor(EditorTable p_table) { _editor_select(p_table); }
+ // Public for use with callable_mp.
+ void _on_plugin_ready(Object *p_script, const String &p_activate_name);
+
+ void editor_select(int p_which);
+ void set_visible_editor(EditorTable p_table) { editor_select(p_table); }
bool call_build();
@@ -720,6 +724,8 @@ public:
static HBoxContainer *get_menu_hb() { return singleton->menu_hb; }
static VSplitContainer *get_top_split() { return singleton->top_split; }
+ static String adjust_scene_name_casing(const String &root_name);
+
static bool has_unsaved_changes() { return singleton->unsaved_cache; }
static void disambiguate_filenames(const Vector<String> p_full_paths, Vector<String> &r_filenames);
static void add_io_error(const String &p_error);
diff --git a/editor/editor_plugin_settings.cpp b/editor/editor_plugin_settings.cpp
index a8df486381..bd19df41fe 100644
--- a/editor/editor_plugin_settings.cpp
+++ b/editor/editor_plugin_settings.cpp
@@ -46,7 +46,7 @@ void EditorPluginSettings::_notification(int p_what) {
} break;
case Node::NOTIFICATION_READY: {
- plugin_config_dialog->connect("plugin_ready", Callable(EditorNode::get_singleton(), "_on_plugin_ready"));
+ plugin_config_dialog->connect("plugin_ready", callable_mp(EditorNode::get_singleton(), &EditorNode::_on_plugin_ready));
plugin_list->connect("button_clicked", callable_mp(this, &EditorPluginSettings::_cell_button_pressed));
} break;
}
diff --git a/editor/editor_quick_open.cpp b/editor/editor_quick_open.cpp
index 539cb7cd8a..b4ec3bca15 100644
--- a/editor/editor_quick_open.cpp
+++ b/editor/editor_quick_open.cpp
@@ -31,6 +31,7 @@
#include "editor_quick_open.h"
#include "core/os/keyboard.h"
+#include "editor/editor_node.h"
void EditorQuickOpen::popup_dialog(const StringName &p_base, bool p_enable_multi, bool p_dontclear) {
base_type = p_base;
@@ -57,17 +58,29 @@ void EditorQuickOpen::_build_search_cache(EditorFileSystemDirectory *p_efsd) {
Vector<String> base_types = String(base_type).split(String(","));
for (int i = 0; i < p_efsd->get_file_count(); i++) {
- String file_type = p_efsd->get_file_type(i);
+ String file = p_efsd->get_file_path(i);
+ String engine_type = p_efsd->get_file_type(i);
+ // TODO: Fix lack of caching for resource's script's global class name (if applicable).
+ String script_type;
+ if (_load_resources) {
+ Ref<Resource> res = ResourceLoader::load(file);
+ if (res.is_valid()) {
+ Ref<Script> scr = res->get_script();
+ if (scr.is_valid()) {
+ script_type = scr->get_language()->get_global_class_name(file);
+ }
+ }
+ }
+ String actual_type = script_type.is_empty() ? engine_type : script_type;
// Iterate all possible base types.
for (String &parent_type : base_types) {
- if (ClassDB::is_parent_class(file_type, parent_type)) {
- String file = p_efsd->get_file_path(i);
+ if (ClassDB::is_parent_class(engine_type, parent_type) || EditorNode::get_editor_data().script_class_is_parent(script_type, parent_type)) {
files.push_back(file.substr(6, file.length()));
// Store refs to used icons.
String ext = file.get_extension();
if (!icons.has(ext)) {
- icons.insert(ext, get_theme_icon((has_theme_icon(file_type, SNAME("EditorIcons")) ? file_type : String("Object")), SNAME("EditorIcons")));
+ icons.insert(ext, get_theme_icon((has_theme_icon(actual_type, SNAME("EditorIcons")) ? actual_type : String("Object")), SNAME("EditorIcons")));
}
// Stop testing base types as soon as we got a match.
diff --git a/editor/editor_quick_open.h b/editor/editor_quick_open.h
index e41a8c7e75..83cbbd7cac 100644
--- a/editor/editor_quick_open.h
+++ b/editor/editor_quick_open.h
@@ -43,6 +43,7 @@ class EditorQuickOpen : public ConfirmationDialog {
Tree *search_options = nullptr;
StringName base_type;
bool allow_multi_select = false;
+ bool _load_resources = false; // Prohibitively slow for now.
Vector<String> files;
OAHashMap<String, Ref<Texture2D>> icons;
diff --git a/editor/editor_resource_picker.cpp b/editor/editor_resource_picker.cpp
index 84cb085551..de8259c25c 100644
--- a/editor/editor_resource_picker.cpp
+++ b/editor/editor_resource_picker.cpp
@@ -53,6 +53,7 @@ void EditorResourcePicker::_update_resource() {
if (edited_resource.is_valid() && edited_resource->get_path().is_resource_file()) {
resource_path = edited_resource->get_path() + "\n";
}
+ String class_name = _get_resource_type(edited_resource);
if (preview_rect) {
preview_rect->set_texture(Ref<Texture2D>());
@@ -64,16 +65,20 @@ void EditorResourcePicker::_update_resource() {
assign_button->set_text(TTR("<empty>"));
assign_button->set_tooltip_text("");
} else {
- assign_button->set_icon(EditorNode::get_singleton()->get_object_icon(edited_resource.operator->(), "Object"));
+ assign_button->set_icon(EditorNode::get_singleton()->get_object_icon(edited_resource.operator->(), SNAME("Object")));
if (!edited_resource->get_name().is_empty()) {
assign_button->set_text(edited_resource->get_name());
} else if (edited_resource->get_path().is_resource_file()) {
assign_button->set_text(edited_resource->get_path().get_file());
} else {
- assign_button->set_text(edited_resource->get_class());
+ assign_button->set_text(class_name);
}
- assign_button->set_tooltip_text(resource_path + TTR("Type:") + " " + edited_resource->get_class());
+
+ if (edited_resource->get_path().is_resource_file()) {
+ resource_path = edited_resource->get_path() + "\n";
+ }
+ assign_button->set_tooltip_text(resource_path + TTR("Type:") + " " + class_name);
// Preview will override the above, so called at the end.
EditorResourcePreview::get_singleton()->queue_edited_resource_preview(edited_resource, this, "_update_resource_preview", edited_resource->get_instance_id());
@@ -134,16 +139,29 @@ void EditorResourcePicker::_file_selected(const String &p_path) {
if (!base_type.is_empty()) {
bool any_type_matches = false;
+ String res_type = loaded_resource->get_class();
+ Ref<Script> res_script = loaded_resource->get_script();
+ bool is_global_class = false;
+ if (res_script.is_valid()) {
+ String script_type = EditorNode::get_editor_data().script_class_get_name(res_script->get_path());
+ if (!script_type.is_empty()) {
+ is_global_class = true;
+ res_type = script_type;
+ }
+ }
+
for (int i = 0; i < base_type.get_slice_count(","); i++) {
String base = base_type.get_slice(",", i);
- if (loaded_resource->is_class(base)) {
- any_type_matches = true;
+
+ any_type_matches = is_global_class ? EditorNode::get_editor_data().script_class_is_parent(res_type, base) : loaded_resource->is_class(base);
+
+ if (!any_type_matches) {
break;
}
}
if (!any_type_matches) {
- EditorNode::get_singleton()->show_warning(vformat(TTR("The selected resource (%s) does not match any type expected for this property (%s)."), loaded_resource->get_class(), base_type));
+ EditorNode::get_singleton()->show_warning(vformat(TTR("The selected resource (%s) does not match any type expected for this property (%s)."), res_type, base_type));
return;
}
}
@@ -227,16 +245,19 @@ void EditorResourcePicker::_update_menu_items() {
// Add options to copy/paste resource.
Ref<Resource> cb = EditorSettings::get_singleton()->get_resource_clipboard();
bool paste_valid = false;
- if (is_editable()) {
- if (cb.is_valid()) {
- if (base_type.is_empty()) {
- paste_valid = true;
- } else {
- for (int i = 0; i < base_type.get_slice_count(","); i++) {
- if (ClassDB::is_parent_class(cb->get_class(), base_type.get_slice(",", i))) {
- paste_valid = true;
- break;
- }
+ if (is_editable() && cb.is_valid()) {
+ if (base_type.is_empty()) {
+ paste_valid = true;
+ } else {
+ String res_type = _get_resource_type(cb);
+
+ for (int i = 0; i < base_type.get_slice_count(","); i++) {
+ String base = base_type.get_slice(",", i);
+
+ paste_valid = ClassDB::is_parent_class(res_type, base) || EditorNode::get_editor_data().script_class_is_parent(res_type, base);
+
+ if (!paste_valid) {
+ break;
}
}
}
@@ -281,6 +302,9 @@ void EditorResourcePicker::_edit_menu_cbk(int p_which) {
for (int i = 0; i < base_type.get_slice_count(","); i++) {
String base = base_type.get_slice(",", i);
ResourceLoader::get_recognized_extensions_for_type(base, &extensions);
+ if (ScriptServer::is_global_class(base)) {
+ ResourceLoader::get_recognized_extensions_for_type(ScriptServer::get_global_class_native_base(base), &extensions);
+ }
}
HashSet<String> valid_extensions;
@@ -408,13 +432,7 @@ void EditorResourcePicker::_edit_menu_cbk(int p_which) {
Variant obj;
if (ScriptServer::is_global_class(intype)) {
- obj = ClassDB::instantiate(ScriptServer::get_global_class_native_base(intype));
- if (obj) {
- Ref<Script> script = ResourceLoader::load(ScriptServer::get_global_class_path(intype));
- if (script.is_valid()) {
- ((Object *)obj)->set_script(script);
- }
- }
+ obj = EditorNode::get_editor_data().script_class_instance(intype);
} else {
obj = ClassDB::instantiate(intype);
}
@@ -512,23 +530,40 @@ void EditorResourcePicker::_button_draw() {
void EditorResourcePicker::_button_input(const Ref<InputEvent> &p_event) {
Ref<InputEventMouseButton> mb = p_event;
- if (mb.is_valid()) {
- if (mb->is_pressed() && mb->get_button_index() == MouseButton::RIGHT) {
- // Only attempt to update and show the menu if we have
- // a valid resource or the Picker is editable, as
- // there will otherwise be nothing to display.
- if (edited_resource.is_valid() || is_editable()) {
- _update_menu_items();
-
- Vector2 pos = get_screen_position() + mb->get_position();
- edit_menu->reset_size();
- edit_menu->set_position(pos);
- edit_menu->popup();
- }
+ if (mb.is_valid() && mb->is_pressed() && mb->get_button_index() == MouseButton::RIGHT) {
+ // Only attempt to update and show the menu if we have
+ // a valid resource or the Picker is editable, as
+ // there will otherwise be nothing to display.
+ if (edited_resource.is_valid() || is_editable()) {
+ _update_menu_items();
+
+ Vector2 pos = get_screen_position() + mb->get_position();
+ edit_menu->reset_size();
+ edit_menu->set_position(pos);
+ edit_menu->popup();
}
}
}
+String EditorResourcePicker::_get_resource_type(const Ref<Resource> &p_resource) const {
+ if (p_resource.is_null()) {
+ return String();
+ }
+ String res_type = p_resource->get_class();
+
+ Ref<Script> res_script = p_resource->get_script();
+ if (res_script.is_null()) {
+ return res_type;
+ }
+
+ // TODO: Replace with EditorFileSystem when PR #60606 is merged to use cached resource type.
+ String script_type = EditorNode::get_editor_data().script_class_get_name(res_script->get_path());
+ if (!script_type.is_empty()) {
+ res_type = script_type;
+ }
+ return res_type;
+}
+
void EditorResourcePicker::_get_allowed_types(bool p_with_convert, HashSet<String> *p_vector) const {
Vector<String> allowed_types = base_type.split(",");
int size = allowed_types.size();
@@ -550,7 +585,9 @@ void EditorResourcePicker::_get_allowed_types(bool p_with_convert, HashSet<Strin
List<StringName> allowed_subtypes;
List<StringName> inheriters;
- ClassDB::get_inheriters_from_class(base, &inheriters);
+ if (!ScriptServer::is_global_class(base)) {
+ ClassDB::get_inheriters_from_class(base, &inheriters);
+ }
for (const StringName &subtype_name : inheriters) {
p_vector->insert(subtype_name);
allowed_subtypes.push_back(subtype_name);
@@ -602,32 +639,29 @@ bool EditorResourcePicker::_is_drop_valid(const Dictionary &p_drag_data) const {
}
} else if (drag_data.has("type") && String(drag_data["type"]) == "resource") {
res = drag_data["resource"];
+ } else if (drag_data.has("type") && String(drag_data["type"]) == "files") {
+ Vector<String> files = drag_data["files"];
+
+ // TODO: Extract the typename of the dropped filepath's resource in a more performant way, without fully loading it.
+ if (files.size() == 1) {
+ String file = files[0];
+ res = ResourceLoader::load(file);
+ }
}
HashSet<String> allowed_types;
_get_allowed_types(true, &allowed_types);
- if (res.is_valid() && _is_type_valid(res->get_class(), allowed_types)) {
- return true;
- }
+ if (res.is_valid()) {
+ String res_type = _get_resource_type(res);
- if (res.is_valid() && res->get_script()) {
- StringName custom_class = EditorNode::get_singleton()->get_object_custom_type_name(res->get_script());
- if (_is_type_valid(custom_class, allowed_types)) {
+ if (_is_type_valid(res_type, allowed_types)) {
return true;
}
- }
-
- if (drag_data.has("type") && String(drag_data["type"]) == "files") {
- Vector<String> files = drag_data["files"];
-
- if (files.size() == 1) {
- String file = files[0];
- String file_type = EditorFileSystem::get_singleton()->get_file_type(file);
- if (!file_type.is_empty() && _is_type_valid(file_type, allowed_types)) {
- return true;
- }
+ StringName custom_class = EditorNode::get_singleton()->get_object_custom_type_name(res.ptr());
+ if (_is_type_valid(custom_class, allowed_types)) {
+ return true;
}
}
@@ -685,8 +719,10 @@ void EditorResourcePicker::drop_data_fw(const Point2 &p_point, const Variant &p_
HashSet<String> allowed_types;
_get_allowed_types(false, &allowed_types);
+ String res_type = _get_resource_type(dropped_resource);
+
// If the accepted dropped resource is from the extended list, it requires conversion.
- if (!_is_type_valid(dropped_resource->get_class(), allowed_types)) {
+ if (!_is_type_valid(res_type, allowed_types)) {
for (const String &E : allowed_types) {
String at = E.strip_edges();
diff --git a/editor/editor_resource_picker.h b/editor/editor_resource_picker.h
index 3d6127e656..d1a20f04b7 100644
--- a/editor/editor_resource_picker.h
+++ b/editor/editor_resource_picker.h
@@ -91,6 +91,7 @@ class EditorResourcePicker : public HBoxContainer {
void _button_draw();
void _button_input(const Ref<InputEvent> &p_event);
+ String _get_resource_type(const Ref<Resource> &p_resource) const;
void _get_allowed_types(bool p_with_convert, HashSet<String> *p_vector) const;
bool _is_drop_valid(const Dictionary &p_drag_data) const;
bool _is_type_valid(const String p_type_name, HashSet<String> p_allowed_types) const;
diff --git a/editor/editor_run.cpp b/editor/editor_run.cpp
index b909129b18..99c8481d33 100644
--- a/editor/editor_run.cpp
+++ b/editor/editor_run.cpp
@@ -63,7 +63,7 @@ Error EditorRun::run(const String &p_scene, const String &p_write_movie) {
args.push_back("--editor-pid");
args.push_back(itos(OS::get_singleton()->get_process_id()));
- bool debug_collisions = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_debug_collisons", false);
+ bool debug_collisions = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_debug_collisions", false);
bool debug_paths = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_debug_paths", false);
bool debug_navigation = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_debug_navigation", false);
if (debug_collisions) {
@@ -260,7 +260,7 @@ Error EditorRun::run(const String &p_scene, const String &p_write_movie) {
// Pass the debugger stop shortcut to the running instance(s).
String shortcut;
- VariantWriter::write_to_string(ED_GET_SHORTCUT("editor/stop"), shortcut);
+ VariantWriter::write_to_string(ED_GET_SHORTCUT("editor/stop_running_project"), shortcut);
OS::get_singleton()->set_environment("__GODOT_EDITOR_STOP_SHORTCUT__", shortcut);
printf("Running: %s", exec.utf8().get_data());
diff --git a/editor/editor_run_native.cpp b/editor/editor_run_native.cpp
index 3e8f17085d..47a9661bcb 100644
--- a/editor/editor_run_native.cpp
+++ b/editor/editor_run_native.cpp
@@ -134,7 +134,7 @@ Error EditorRunNative::run_native(int p_idx, int p_platform) {
bool deploy_debug_remote = is_deploy_debug_remote_enabled();
bool deploy_dumb = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_file_server", false);
- bool debug_collisions = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_debug_collisons", false);
+ bool debug_collisions = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_debug_collisions", false);
bool debug_navigation = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_debug_navigation", false);
if (deploy_debug_remote) {
@@ -144,7 +144,7 @@ Error EditorRunNative::run_native(int p_idx, int p_platform) {
flags |= EditorExportPlatform::DEBUG_FLAG_DUMB_CLIENT;
}
if (debug_collisions) {
- flags |= EditorExportPlatform::DEBUG_FLAG_VIEW_COLLISONS;
+ flags |= EditorExportPlatform::DEBUG_FLAG_VIEW_COLLISIONS;
}
if (debug_navigation) {
flags |= EditorExportPlatform::DEBUG_FLAG_VIEW_NAVIGATION;
diff --git a/editor/editor_settings_dialog.cpp b/editor/editor_settings_dialog.cpp
index 8062b6f756..2c09543d92 100644
--- a/editor/editor_settings_dialog.cpp
+++ b/editor/editor_settings_dialog.cpp
@@ -416,45 +416,50 @@ void EditorSettingsDialog::_update_shortcuts() {
List<String> slist;
EditorSettings::get_singleton()->get_shortcut_list(&slist);
+ slist.sort(); // Sort alphabetically.
const EditorPropertyNameProcessor::Style name_style = EditorPropertyNameProcessor::get_settings_style();
const EditorPropertyNameProcessor::Style tooltip_style = EditorPropertyNameProcessor::get_tooltip_style(name_style);
+ // Create all sections first.
for (const String &E : slist) {
Ref<Shortcut> sc = EditorSettings::get_singleton()->get_shortcut(E);
- if (!sc->has_meta("original")) {
+ String section_name = E.get_slice("/", 0);
+
+ if (sections.has(section_name)) {
continue;
}
- // Shortcut Section
+ TreeItem *section = shortcuts->create_item(root);
- TreeItem *section;
- String section_name = E.get_slice("/", 0);
+ const String item_name = EditorPropertyNameProcessor::get_singleton()->process_name(section_name, name_style);
+ const String tooltip = EditorPropertyNameProcessor::get_singleton()->process_name(section_name, tooltip_style);
- if (sections.has(section_name)) {
- section = sections[section_name];
- } else {
- section = shortcuts->create_item(root);
-
- const String item_name = EditorPropertyNameProcessor::get_singleton()->process_name(section_name, name_style);
- const String tooltip = EditorPropertyNameProcessor::get_singleton()->process_name(section_name, tooltip_style);
-
- section->set_text(0, item_name);
- section->set_tooltip_text(0, tooltip);
- section->set_selectable(0, false);
- section->set_selectable(1, false);
- section->set_custom_bg_color(0, shortcuts->get_theme_color(SNAME("prop_subsection"), SNAME("Editor")));
- section->set_custom_bg_color(1, shortcuts->get_theme_color(SNAME("prop_subsection"), SNAME("Editor")));
-
- if (collapsed.has(item_name)) {
- section->set_collapsed(collapsed[item_name]);
- }
+ section->set_text(0, item_name);
+ section->set_tooltip_text(0, tooltip);
+ section->set_selectable(0, false);
+ section->set_selectable(1, false);
+ section->set_custom_bg_color(0, shortcuts->get_theme_color(SNAME("prop_subsection"), SNAME("Editor")));
+ section->set_custom_bg_color(1, shortcuts->get_theme_color(SNAME("prop_subsection"), SNAME("Editor")));
- sections[section_name] = section;
+ if (collapsed.has(item_name)) {
+ section->set_collapsed(collapsed[item_name]);
}
- // Shortcut Item
+ sections[section_name] = section;
+ }
+ // Add shortcuts to sections.
+ for (const String &E : slist) {
+ Ref<Shortcut> sc = EditorSettings::get_singleton()->get_shortcut(E);
+ if (!sc->has_meta("original")) {
+ continue;
+ }
+
+ String section_name = E.get_slice("/", 0);
+ TreeItem *section = sections[section_name];
+
+ // Shortcut Item
if (!shortcut_filter.is_subsequence_ofn(sc->get_name())) {
continue;
}
@@ -767,6 +772,7 @@ EditorSettingsDialog::EditorSettingsDialog() {
shortcut_editor = memnew(InputEventConfigurationDialog);
shortcut_editor->connect("confirmed", callable_mp(this, &EditorSettingsDialog::_event_config_confirmed));
shortcut_editor->set_allowed_input_types(InputEventConfigurationDialog::InputType::INPUT_KEY);
+ shortcut_editor->set_close_on_escape(false);
add_child(shortcut_editor);
set_hide_on_ok(true);
diff --git a/editor/editor_themes.cpp b/editor/editor_themes.cpp
index edbd2dd62f..f4c1f308cc 100644
--- a/editor/editor_themes.cpp
+++ b/editor/editor_themes.cpp
@@ -42,10 +42,15 @@
#include "modules/svg/image_loader_svg.h"
#endif
-HashMap<Color, Color> EditorColorMap::editor_color_map;
+HashMap<Color, Color> EditorColorMap::color_conversion_map;
+HashSet<StringName> EditorColorMap::color_conversion_exceptions;
-void EditorColorMap::add_color_pair(const String p_from_color, const String p_to_color) {
- editor_color_map[Color::html(p_from_color)] = Color::html(p_to_color);
+void EditorColorMap::add_conversion_color_pair(const String p_from_color, const String p_to_color) {
+ color_conversion_map[Color::html(p_from_color)] = Color::html(p_to_color);
+}
+
+void EditorColorMap::add_conversion_exception(const StringName p_icon_name) {
+ color_conversion_exceptions.insert(p_icon_name);
}
void EditorColorMap::create() {
@@ -53,105 +58,139 @@ void EditorColorMap::create() {
// This can be a basis for proper palette validation later.
// Convert: FROM TO
- add_color_pair("#478cbf", "#478cbf"); // Godot Blue
- add_color_pair("#414042", "#414042"); // Godot Gray
+ add_conversion_color_pair("#478cbf", "#478cbf"); // Godot Blue
+ add_conversion_color_pair("#414042", "#414042"); // Godot Gray
- add_color_pair("#ffffff", "#414141"); // Pure white
- add_color_pair("#000000", "#bfbfbf"); // Pure black
+ add_conversion_color_pair("#ffffff", "#414141"); // Pure white
+ add_conversion_color_pair("#000000", "#bfbfbf"); // Pure black
// Keep pure RGB colors as is, but list them for explicitly.
- add_color_pair("#ff0000", "#ff0000"); // Pure red
- add_color_pair("#00ff00", "#00ff00"); // Pure green
- add_color_pair("#0000ff", "#0000ff"); // Pure blue
+ add_conversion_color_pair("#ff0000", "#ff0000"); // Pure red
+ add_conversion_color_pair("#00ff00", "#00ff00"); // Pure green
+ add_conversion_color_pair("#0000ff", "#0000ff"); // Pure blue
// GUI Colors
- add_color_pair("#e0e0e0", "#5a5a5a"); // Common icon color
- add_color_pair("#fefefe", "#fefefe"); // Forced light color
- add_color_pair("#808080", "#808080"); // GUI disabled color
- add_color_pair("#b3b3b3", "#363636"); // GUI disabled light color
- add_color_pair("#699ce8", "#699ce8"); // GUI highlight color
- add_color_pair("#f9f9f9", "#606060"); // Scrollbar grabber highlight color
-
- add_color_pair("#c38ef1", "#a85de9"); // Animation
- add_color_pair("#fc7f7f", "#cd3838"); // Spatial
- add_color_pair("#8da5f3", "#3d64dd"); // 2D
- add_color_pair("#4b70ea", "#1a3eac"); // 2D Dark
- add_color_pair("#8eef97", "#2fa139"); // Control
-
- add_color_pair("#5fb2ff", "#0079f0"); // Selection (blue)
- add_color_pair("#003e7a", "#2b74bb"); // Selection (darker blue)
- add_color_pair("#f7f5cf", "#615f3a"); // Gizmo (yellow)
+ add_conversion_color_pair("#e0e0e0", "#5a5a5a"); // Common icon color
+ add_conversion_color_pair("#fefefe", "#fefefe"); // Forced light color
+ add_conversion_color_pair("#808080", "#808080"); // GUI disabled color
+ add_conversion_color_pair("#b3b3b3", "#363636"); // GUI disabled light color
+ add_conversion_color_pair("#699ce8", "#699ce8"); // GUI highlight color
+ add_conversion_color_pair("#f9f9f9", "#606060"); // Scrollbar grabber highlight color
+
+ add_conversion_color_pair("#c38ef1", "#a85de9"); // Animation
+ add_conversion_color_pair("#fc7f7f", "#cd3838"); // Spatial
+ add_conversion_color_pair("#8da5f3", "#3d64dd"); // 2D
+ add_conversion_color_pair("#4b70ea", "#1a3eac"); // 2D Dark
+ add_conversion_color_pair("#8eef97", "#2fa139"); // Control
+
+ add_conversion_color_pair("#5fb2ff", "#0079f0"); // Selection (blue)
+ add_conversion_color_pair("#003e7a", "#2b74bb"); // Selection (darker blue)
+ add_conversion_color_pair("#f7f5cf", "#615f3a"); // Gizmo (yellow)
// Rainbow
- add_color_pair("#ff4545", "#ff2929"); // Red
- add_color_pair("#ffe345", "#ffe337"); // Yellow
- add_color_pair("#80ff45", "#74ff34"); // Green
- add_color_pair("#45ffa2", "#2cff98"); // Aqua
- add_color_pair("#45d7ff", "#22ccff"); // Blue
- add_color_pair("#8045ff", "#702aff"); // Purple
- add_color_pair("#ff4596", "#ff2781"); // Pink
+ add_conversion_color_pair("#ff4545", "#ff2929"); // Red
+ add_conversion_color_pair("#ffe345", "#ffe337"); // Yellow
+ add_conversion_color_pair("#80ff45", "#74ff34"); // Green
+ add_conversion_color_pair("#45ffa2", "#2cff98"); // Aqua
+ add_conversion_color_pair("#45d7ff", "#22ccff"); // Blue
+ add_conversion_color_pair("#8045ff", "#702aff"); // Purple
+ add_conversion_color_pair("#ff4596", "#ff2781"); // Pink
// Audio gradients
- add_color_pair("#e1da5b", "#d6cf4b"); // Yellow
+ add_conversion_color_pair("#e1da5b", "#d6cf4b"); // Yellow
- add_color_pair("#62aeff", "#1678e0"); // Frozen gradient top
- add_color_pair("#75d1e6", "#41acc5"); // Frozen gradient middle
- add_color_pair("#84ffee", "#49ccba"); // Frozen gradient bottom
+ add_conversion_color_pair("#62aeff", "#1678e0"); // Frozen gradient top
+ add_conversion_color_pair("#75d1e6", "#41acc5"); // Frozen gradient middle
+ add_conversion_color_pair("#84ffee", "#49ccba"); // Frozen gradient bottom
- add_color_pair("#f70000", "#c91616"); // Color track red
- add_color_pair("#eec315", "#d58c0b"); // Color track orange
- add_color_pair("#dbee15", "#b7d10a"); // Color track yellow
- add_color_pair("#288027", "#218309"); // Color track green
+ add_conversion_color_pair("#f70000", "#c91616"); // Color track red
+ add_conversion_color_pair("#eec315", "#d58c0b"); // Color track orange
+ add_conversion_color_pair("#dbee15", "#b7d10a"); // Color track yellow
+ add_conversion_color_pair("#288027", "#218309"); // Color track green
// Resource groups
- add_color_pair("#ffca5f", "#fea900"); // Mesh resource (orange)
- add_color_pair("#2998ff", "#68b6ff"); // Shape resource (blue)
- add_color_pair("#a2d2ff", "#4998e3"); // Shape resource (light blue)
+ add_conversion_color_pair("#ffca5f", "#fea900"); // Mesh resource (orange)
+ add_conversion_color_pair("#2998ff", "#68b6ff"); // Shape resource (blue)
+ add_conversion_color_pair("#a2d2ff", "#4998e3"); // Shape resource (light blue)
// Animation editor tracks
// The property track icon color is set by the common icon color.
- add_color_pair("#ea7940", "#bd5e2c"); // 3D Position track
- add_color_pair("#ff2b88", "#bd165f"); // 3D Rotation track
- add_color_pair("#eac840", "#bd9d1f"); // 3D Scale track
- add_color_pair("#3cf34e", "#16a827"); // Call Method track
- add_color_pair("#2877f6", "#236be6"); // Bezier Curve track
- add_color_pair("#eae440", "#9f9722"); // Audio Playback track
- add_color_pair("#a448f0", "#9853ce"); // Animation Playback track
- add_color_pair("#5ad5c4", "#0a9c88"); // Blend Shape track
+ add_conversion_color_pair("#ea7940", "#bd5e2c"); // 3D Position track
+ add_conversion_color_pair("#ff2b88", "#bd165f"); // 3D Rotation track
+ add_conversion_color_pair("#eac840", "#bd9d1f"); // 3D Scale track
+ add_conversion_color_pair("#3cf34e", "#16a827"); // Call Method track
+ add_conversion_color_pair("#2877f6", "#236be6"); // Bezier Curve track
+ add_conversion_color_pair("#eae440", "#9f9722"); // Audio Playback track
+ add_conversion_color_pair("#a448f0", "#9853ce"); // Animation Playback track
+ add_conversion_color_pair("#5ad5c4", "#0a9c88"); // Blend Shape track
// Control layouts
- add_color_pair("#d6d6d6", "#474747"); // Highlighted part
- add_color_pair("#474747", "#d6d6d6"); // Background part
- add_color_pair("#919191", "#6e6e6e"); // Border part
+ add_conversion_color_pair("#d6d6d6", "#474747"); // Highlighted part
+ add_conversion_color_pair("#474747", "#d6d6d6"); // Background part
+ add_conversion_color_pair("#919191", "#6e6e6e"); // Border part
// TileSet editor icons
- add_color_pair("#fce00e", "#aa8d24"); // New Single Tile
- add_color_pair("#0e71fc", "#0350bd"); // New Autotile
- add_color_pair("#c6ced4", "#828f9b"); // New Atlas
+ add_conversion_color_pair("#fce00e", "#aa8d24"); // New Single Tile
+ add_conversion_color_pair("#0e71fc", "#0350bd"); // New Autotile
+ add_conversion_color_pair("#c6ced4", "#828f9b"); // New Atlas
// Visual script
- add_color_pair("#41ecad", "#25e3a0"); // VisualScript variant
- add_color_pair("#6f91f0", "#6d8eeb"); // VisualScript bool
- add_color_pair("#5abbef", "#4fb2e9"); // VisualScript int
- add_color_pair("#35d4f4", "#27ccf0"); // VisualScript float
- add_color_pair("#4593ec", "#4690e7"); // VisualScript String
- add_color_pair("#ac73f1", "#ad76ee"); // VisualScript Vector2
- add_color_pair("#f1738f", "#ee758e"); // VisualScript Rect2
- add_color_pair("#de66f0", "#dc6aed"); // VisualScript Vector3
- add_color_pair("#b9ec41", "#96ce1a"); // VisualScript Transform2D
- add_color_pair("#f74949", "#f77070"); // VisualScript Plane
- add_color_pair("#ec418e", "#ec69a3"); // VisualScript Quat
- add_color_pair("#ee5677", "#ee7991"); // VisualScript AABB
- add_color_pair("#e1ec41", "#b2bb19"); // VisualScript Basis
- add_color_pair("#f68f45", "#f49047"); // VisualScript Transform
- add_color_pair("#417aec", "#6993ec"); // VisualScript NodePath
- add_color_pair("#41ec80", "#2ce573"); // VisualScript RID
- add_color_pair("#55f3e3", "#12d5c3"); // VisualScript Object
- add_color_pair("#54ed9e", "#57e99f"); // VisualScript Dictionary
+ add_conversion_color_pair("#41ecad", "#25e3a0"); // VisualScript variant
+ add_conversion_color_pair("#6f91f0", "#6d8eeb"); // VisualScript bool
+ add_conversion_color_pair("#5abbef", "#4fb2e9"); // VisualScript int
+ add_conversion_color_pair("#35d4f4", "#27ccf0"); // VisualScript float
+ add_conversion_color_pair("#4593ec", "#4690e7"); // VisualScript String
+ add_conversion_color_pair("#ac73f1", "#ad76ee"); // VisualScript Vector2
+ add_conversion_color_pair("#f1738f", "#ee758e"); // VisualScript Rect2
+ add_conversion_color_pair("#de66f0", "#dc6aed"); // VisualScript Vector3
+ add_conversion_color_pair("#b9ec41", "#96ce1a"); // VisualScript Transform2D
+ add_conversion_color_pair("#f74949", "#f77070"); // VisualScript Plane
+ add_conversion_color_pair("#ec418e", "#ec69a3"); // VisualScript Quat
+ add_conversion_color_pair("#ee5677", "#ee7991"); // VisualScript AABB
+ add_conversion_color_pair("#e1ec41", "#b2bb19"); // VisualScript Basis
+ add_conversion_color_pair("#f68f45", "#f49047"); // VisualScript Transform
+ add_conversion_color_pair("#417aec", "#6993ec"); // VisualScript NodePath
+ add_conversion_color_pair("#41ec80", "#2ce573"); // VisualScript RID
+ add_conversion_color_pair("#55f3e3", "#12d5c3"); // VisualScript Object
+ add_conversion_color_pair("#54ed9e", "#57e99f"); // VisualScript Dictionary
// Visual shaders
- add_color_pair("#77ce57", "#67c046"); // Vector funcs
- add_color_pair("#ea686c", "#d95256"); // Vector transforms
- add_color_pair("#eac968", "#d9b64f"); // Textures and cubemaps
- add_color_pair("#cf68ea", "#c050dd"); // Functions and expressions
+ add_conversion_color_pair("#77ce57", "#67c046"); // Vector funcs
+ add_conversion_color_pair("#ea686c", "#d95256"); // Vector transforms
+ add_conversion_color_pair("#eac968", "#d9b64f"); // Textures and cubemaps
+ add_conversion_color_pair("#cf68ea", "#c050dd"); // Functions and expressions
+
+ // These icons should not be converted.
+ add_conversion_exception("EditorPivot");
+ add_conversion_exception("EditorHandle");
+ add_conversion_exception("Editor3DHandle");
+ add_conversion_exception("EditorBoneHandle");
+ add_conversion_exception("Godot");
+ add_conversion_exception("Sky");
+ add_conversion_exception("EditorControlAnchor");
+ add_conversion_exception("DefaultProjectIcon");
+ add_conversion_exception("GuiChecked");
+ add_conversion_exception("GuiRadioChecked");
+ add_conversion_exception("GuiIndeterminate");
+ add_conversion_exception("GuiCloseCustomizable");
+ add_conversion_exception("GuiGraphNodePort");
+ add_conversion_exception("GuiResizer");
+ add_conversion_exception("ZoomMore");
+ add_conversion_exception("ZoomLess");
+ add_conversion_exception("ZoomReset");
+ add_conversion_exception("LockViewport");
+ add_conversion_exception("GroupViewport");
+ add_conversion_exception("StatusError");
+ add_conversion_exception("StatusSuccess");
+ add_conversion_exception("StatusWarning");
+ add_conversion_exception("OverbrightIndicator");
+ add_conversion_exception("GuiMiniCheckerboard");
+
+ /// Code Editor.
+ add_conversion_exception("GuiTab");
+ add_conversion_exception("GuiSpace");
+ add_conversion_exception("CodeFoldedRightArrow");
+ add_conversion_exception("CodeFoldDownArrow");
+ add_conversion_exception("TextEditorPlay");
+ add_conversion_exception("Breakpoint");
}
static Ref<StyleBoxTexture> make_stylebox(Ref<Texture2D> p_texture, float p_left, float p_top, float p_right, float p_bottom, float p_margin_left = -1, float p_margin_top = -1, float p_margin_right = -1, float p_margin_bottom = -1, bool p_draw_center = true) {
@@ -206,67 +245,49 @@ static Ref<ImageTexture> editor_generate_icon(int p_index, float p_scale, float
img->adjust_bcs(1.0, 1.0, p_saturation);
}
- // In this case filter really helps.
return ImageTexture::create_from_image(img);
}
#endif
-void editor_register_and_generate_icons(Ref<Theme> p_theme, bool p_dark_theme = true, int p_thumb_size = 32, bool p_only_thumbs = false, float p_icon_saturation = 1.0) {
+void editor_register_and_generate_icons(Ref<Theme> p_theme, bool p_dark_theme, float p_icon_saturation, int p_thumb_size, bool p_only_thumbs = false) {
#ifdef MODULE_SVG_ENABLED
- HashMap<Color, Color> icon_color_map;
-
- // The names of the icons to never convert, even if one of their colors
- // are contained in the dictionary above.
- HashSet<StringName> exceptions;
-
+ // Before we register the icons, we adjust their colors and saturation.
+ // Most icons follow the standard rules for color conversion to follow the editor
+ // theme's polarity (dark/light). We also adjust the saturation for most icons,
+ // following the editor setting.
+ // Some icons are excluded from this conversion, and instead use the configured
+ // accent color to replace their innate accent color to match the editor theme.
+ // And then some icons are completely excluded from the conversion.
+
+ // Standard color conversion map.
+ HashMap<Color, Color> color_conversion_map;
+ // Icons by default are set up for the dark theme, so if the theme is light,
+ // we apply the dark-to-light color conversion map.
if (!p_dark_theme) {
- for (KeyValue<Color, Color> &E : EditorColorMap::get()) {
- icon_color_map[E.key] = E.value;
+ for (KeyValue<Color, Color> &E : EditorColorMap::get_color_conversion_map()) {
+ color_conversion_map[E.key] = E.value;
}
-
- exceptions.insert("EditorPivot");
- exceptions.insert("EditorHandle");
- exceptions.insert("Editor3DHandle");
- exceptions.insert("EditorBoneHandle");
- exceptions.insert("Godot");
- exceptions.insert("Sky");
- exceptions.insert("EditorControlAnchor");
- exceptions.insert("DefaultProjectIcon");
- exceptions.insert("GuiChecked");
- exceptions.insert("GuiRadioChecked");
- exceptions.insert("GuiIndeterminate");
- exceptions.insert("GuiCloseCustomizable");
- exceptions.insert("GuiGraphNodePort");
- exceptions.insert("GuiResizer");
- exceptions.insert("ZoomMore");
- exceptions.insert("ZoomLess");
- exceptions.insert("ZoomReset");
- exceptions.insert("LockViewport");
- exceptions.insert("GroupViewport");
- exceptions.insert("StatusError");
- exceptions.insert("StatusSuccess");
- exceptions.insert("StatusWarning");
- exceptions.insert("OverbrightIndicator");
- exceptions.insert("GuiMiniCheckerboard");
-
- // Prevents Code Editor icons from changing
- exceptions.insert("GuiTab");
- exceptions.insert("GuiSpace");
- exceptions.insert("CodeFoldedRightArrow");
- exceptions.insert("CodeFoldDownArrow");
- exceptions.insert("TextEditorPlay");
- exceptions.insert("Breakpoint");
}
-
- // These ones should be converted even if we are using a dark theme.
+ // These colors should be converted even if we are using a dark theme.
const Color error_color = p_theme->get_color(SNAME("error_color"), SNAME("Editor"));
const Color success_color = p_theme->get_color(SNAME("success_color"), SNAME("Editor"));
const Color warning_color = p_theme->get_color(SNAME("warning_color"), SNAME("Editor"));
- icon_color_map[Color::html("#ff5f5f")] = error_color;
- icon_color_map[Color::html("#5fff97")] = success_color;
- icon_color_map[Color::html("#ffdd65")] = warning_color;
-
- // Use the accent color for some icons (checkbox, radio, toggle, etc.).
+ color_conversion_map[Color::html("#ff5f5f")] = error_color;
+ color_conversion_map[Color::html("#5fff97")] = success_color;
+ color_conversion_map[Color::html("#ffdd65")] = warning_color;
+
+ // The names of the icons to exclude from the standard color conversion.
+ HashSet<StringName> conversion_exceptions = EditorColorMap::get_color_conversion_exceptions();
+
+ // The names of the icons to exclude when adjusting for saturation.
+ HashSet<StringName> saturation_exceptions;
+ saturation_exceptions.insert("DefaultProjectIcon");
+ saturation_exceptions.insert("Godot");
+ saturation_exceptions.insert("Logo");
+
+ // Accent color conversion map.
+ // It is used on some icons (checkbox, radio, toggle, etc.), regardless of the dark
+ // or light mode.
HashMap<Color, Color> accent_color_map;
HashSet<StringName> accent_color_icons;
@@ -292,16 +313,14 @@ void editor_register_and_generate_icons(Ref<Theme> p_theme, bool p_dark_theme =
icon = editor_generate_icon(i, EDSCALE, 1.0, accent_color_map);
} else {
float saturation = p_icon_saturation;
-
- if (strcmp(editor_icons_names[i], "DefaultProjectIcon") == 0 || strcmp(editor_icons_names[i], "Godot") == 0 || strcmp(editor_icons_names[i], "Logo") == 0) {
+ if (saturation_exceptions.has(editor_icons_names[i])) {
saturation = 1.0;
}
- const int is_exception = exceptions.has(editor_icons_names[i]);
- if (is_exception) {
+ if (conversion_exceptions.has(editor_icons_names[i])) {
icon = editor_generate_icon(i, EDSCALE, saturation);
} else {
- icon = editor_generate_icon(i, EDSCALE, saturation, icon_color_map);
+ icon = editor_generate_icon(i, EDSCALE, saturation, color_conversion_map);
}
}
@@ -310,19 +329,26 @@ void editor_register_and_generate_icons(Ref<Theme> p_theme, bool p_dark_theme =
}
// Generate thumbnail icons with the given thumbnail size.
- // We don't need filtering when generating at one of the default resolutions.
- const bool force_filter = p_thumb_size != 64 && p_thumb_size != 32;
+ // See editor\icons\editor_icons_builders.py for the code that determines which icons are thumbnails.
if (p_thumb_size >= 64) {
const float scale = (float)p_thumb_size / 64.0 * EDSCALE;
for (int i = 0; i < editor_bg_thumbs_count; i++) {
const int index = editor_bg_thumbs_indices[i];
- const int is_exception = exceptions.has(editor_icons_names[index]);
-
Ref<ImageTexture> icon;
- if (!p_dark_theme && !is_exception) {
- icon = editor_generate_icon(index, scale, force_filter, icon_color_map);
+
+ if (accent_color_icons.has(editor_icons_names[index])) {
+ icon = editor_generate_icon(index, scale, 1.0, accent_color_map);
} else {
- icon = editor_generate_icon(index, scale, force_filter);
+ float saturation = p_icon_saturation;
+ if (saturation_exceptions.has(editor_icons_names[index])) {
+ saturation = 1.0;
+ }
+
+ if (conversion_exceptions.has(editor_icons_names[index])) {
+ icon = editor_generate_icon(index, scale, saturation);
+ } else {
+ icon = editor_generate_icon(index, scale, saturation, color_conversion_map);
+ }
}
p_theme->set_icon(editor_icons_names[index], SNAME("EditorIcons"), icon);
@@ -331,13 +357,21 @@ void editor_register_and_generate_icons(Ref<Theme> p_theme, bool p_dark_theme =
const float scale = (float)p_thumb_size / 32.0 * EDSCALE;
for (int i = 0; i < editor_md_thumbs_count; i++) {
const int index = editor_md_thumbs_indices[i];
- const bool is_exception = exceptions.has(editor_icons_names[index]);
-
Ref<ImageTexture> icon;
- if (!p_dark_theme && !is_exception) {
- icon = editor_generate_icon(index, scale, force_filter, icon_color_map);
+
+ if (accent_color_icons.has(editor_icons_names[index])) {
+ icon = editor_generate_icon(index, scale, 1.0, accent_color_map);
} else {
- icon = editor_generate_icon(index, scale, force_filter);
+ float saturation = p_icon_saturation;
+ if (saturation_exceptions.has(editor_icons_names[index])) {
+ saturation = 1.0;
+ }
+
+ if (conversion_exceptions.has(editor_icons_names[index])) {
+ icon = editor_generate_icon(index, scale, saturation);
+ } else {
+ icon = editor_generate_icon(index, scale, saturation, color_conversion_map);
+ }
}
p_theme->set_icon(editor_icons_names[index], SNAME("EditorIcons"), icon);
@@ -432,7 +466,7 @@ Ref<Theme> create_editor_theme(const Ref<Theme> p_theme) {
if (dark_theme) {
ImageLoaderSVG::set_forced_color_map(HashMap<Color, Color>());
} else {
- ImageLoaderSVG::set_forced_color_map(EditorColorMap::get());
+ ImageLoaderSVG::set_forced_color_map(EditorColorMap::get_color_conversion_map());
}
#endif
@@ -475,9 +509,8 @@ Ref<Theme> create_editor_theme(const Ref<Theme> p_theme) {
const Color highlight_color = Color(accent_color.r, accent_color.g, accent_color.b, 0.275);
const Color disabled_highlight_color = highlight_color.lerp(dark_theme ? Color(0, 0, 0) : Color(1, 1, 1), 0.5);
- float prev_icon_saturation = theme->has_color(SNAME("icon_saturation"), SNAME("Editor")) ? theme->get_color(SNAME("icon_saturation"), SNAME("Editor")).r : 1.0;
-
- theme->set_color("icon_saturation", "Editor", Color(icon_saturation, icon_saturation, icon_saturation)); // can't save single float in theme, so using color
+ // Can't save single float in theme, so using Color.
+ theme->set_color("icon_saturation", "Editor", Color(icon_saturation, icon_saturation, icon_saturation));
theme->set_color("accent_color", "Editor", accent_color);
theme->set_color("highlight_color", "Editor", highlight_color);
theme->set_color("disabled_highlight_color", "Editor", disabled_highlight_color);
@@ -518,7 +551,7 @@ Ref<Theme> create_editor_theme(const Ref<Theme> p_theme) {
Color readonly_warning_color = error_color.lerp(dark_theme ? Color(0, 0, 0) : Color(1, 1, 1), 0.25);
if (!dark_theme) {
- // Darken some colors to be readable on a light background
+ // Darken some colors to be readable on a light background.
success_color = success_color.lerp(mono_color, 0.35);
warning_color = warning_color.lerp(mono_color, 0.35);
error_color = error_color.lerp(mono_color, 0.25);
@@ -541,22 +574,43 @@ Ref<Theme> create_editor_theme(const Ref<Theme> p_theme) {
theme->set_constant("dark_theme", "Editor", dark_theme);
theme->set_constant("color_picker_button_height", "Editor", 28 * EDSCALE);
- // Register icons + font
+ // Register editor icons.
+ // If the settings are comparable to the old theme, then just copy them over.
+ // Otherwise, regenerate them. Also check if we need to regenerate "thumb" icons.
+ bool keep_old_icons = false;
+ bool regenerate_thumb_icons = true;
+ if (p_theme != nullptr) {
+ // We check editor scale, theme dark/light mode, icon saturation, and accent color.
+
+ // That doesn't really work as expected, since theme constants are integers, and scales are floats.
+ // So this check will never work when changing between 100-199% values.
+ const float prev_scale = (float)p_theme->get_constant(SNAME("scale"), SNAME("Editor"));
+ const bool prev_dark_theme = (bool)p_theme->get_constant(SNAME("dark_theme"), SNAME("Editor"));
+ const Color prev_accent_color = p_theme->get_color(SNAME("accent_color"), SNAME("Editor"));
+ const float prev_icon_saturation = p_theme->get_color(SNAME("icon_saturation"), SNAME("Editor")).r;
+
+ keep_old_icons = (Math::is_equal_approx(prev_scale, EDSCALE) &&
+ prev_dark_theme == dark_theme &&
+ prev_accent_color == accent_color &&
+ prev_icon_saturation == icon_saturation);
+
+ const double prev_thumb_size = (double)p_theme->get_constant(SNAME("thumb_size"), SNAME("Editor"));
+
+ regenerate_thumb_icons = !Math::is_equal_approx(prev_thumb_size, thumb_size);
+ }
- // The editor scale, icon color (dark_theme bool), icon saturation, and accent color has not changed, so we do not regenerate the icons.
- if (p_theme != nullptr && fabs(p_theme->get_constant(SNAME("scale"), SNAME("Editor")) - EDSCALE) < 0.00001 && (bool)p_theme->get_constant(SNAME("dark_theme"), SNAME("Editor")) == dark_theme && prev_icon_saturation == icon_saturation && p_theme->get_color(SNAME("accent_color"), SNAME("Editor")) == accent_color) {
- // Register already generated icons.
+ if (keep_old_icons) {
for (int i = 0; i < editor_icons_count; i++) {
theme->set_icon(editor_icons_names[i], SNAME("EditorIcons"), p_theme->get_icon(editor_icons_names[i], SNAME("EditorIcons")));
}
} else {
- editor_register_and_generate_icons(theme, dark_theme, thumb_size, false, icon_saturation);
+ editor_register_and_generate_icons(theme, dark_theme, icon_saturation, thumb_size, false);
}
- // Thumbnail size has changed, so we regenerate the medium sizes
- if (p_theme != nullptr && fabs((double)p_theme->get_constant(SNAME("thumb_size"), SNAME("Editor")) - thumb_size) > 0.00001) {
- editor_register_and_generate_icons(p_theme, dark_theme, thumb_size, true);
+ if (regenerate_thumb_icons) {
+ editor_register_and_generate_icons(theme, dark_theme, icon_saturation, thumb_size, true);
}
+ // Register editor fonts.
editor_register_fonts(theme);
// Ensure borders are visible when using an editor scale below 100%.
diff --git a/editor/editor_themes.h b/editor/editor_themes.h
index 37db8160fa..da5db95d0e 100644
--- a/editor/editor_themes.h
+++ b/editor/editor_themes.h
@@ -39,13 +39,18 @@
class EditorColorMap {
// Godot Color values are used to avoid the ambiguity of strings
// (where "#ffffff", "fff", and "white" are all equivalent).
- static HashMap<Color, Color> editor_color_map;
+ static HashMap<Color, Color> color_conversion_map;
+ // The names of the icons to never convert, even if one of their colors
+ // are contained in the color map from above.
+ static HashSet<StringName> color_conversion_exceptions;
public:
static void create();
- static void add_color_pair(const String p_from_color, const String p_to_color);
+ static void add_conversion_color_pair(const String p_from_color, const String p_to_color);
+ static void add_conversion_exception(const StringName p_icon_name);
- static HashMap<Color, Color> &get() { return editor_color_map; };
+ static HashMap<Color, Color> &get_color_conversion_map() { return color_conversion_map; };
+ static HashSet<StringName> &get_color_conversion_exceptions() { return color_conversion_exceptions; };
};
Ref<Theme> create_editor_theme(Ref<Theme> p_theme = nullptr);
diff --git a/editor/editor_undo_redo_manager.cpp b/editor/editor_undo_redo_manager.cpp
index 8c04a4d595..064448fd96 100644
--- a/editor/editor_undo_redo_manager.cpp
+++ b/editor/editor_undo_redo_manager.cpp
@@ -131,12 +131,12 @@ void EditorUndoRedoManager::create_action(const String &p_name, UndoRedo::MergeM
void EditorUndoRedoManager::add_do_methodp(Object *p_object, const StringName &p_method, const Variant **p_args, int p_argcount) {
UndoRedo *undo_redo = get_history_for_object(p_object).undo_redo;
- undo_redo->add_do_methodp(p_object, p_method, p_args, p_argcount);
+ undo_redo->add_do_method(Callable(p_object, p_method).bindp(p_args, p_argcount));
}
void EditorUndoRedoManager::add_undo_methodp(Object *p_object, const StringName &p_method, const Variant **p_args, int p_argcount) {
UndoRedo *undo_redo = get_history_for_object(p_object).undo_redo;
- undo_redo->add_undo_methodp(p_object, p_method, p_args, p_argcount);
+ undo_redo->add_undo_method(Callable(p_object, p_method).bindp(p_args, p_argcount));
}
void EditorUndoRedoManager::_add_do_method(const Variant **p_args, int p_argcount, Callable::CallError &r_error) {
diff --git a/editor/export/editor_export_platform.cpp b/editor/export/editor_export_platform.cpp
index bcc85570ed..c86114a140 100644
--- a/editor/export/editor_export_platform.cpp
+++ b/editor/export/editor_export_platform.cpp
@@ -77,7 +77,7 @@ bool EditorExportPlatform::fill_log_messages(RichTextLabel *p_log, Error p_err)
} else {
p_log->add_image(EditorNode::get_singleton()->get_gui_base()->get_theme_icon(SNAME("StatusSuccess"), SNAME("EditorIcons")), 16 * EDSCALE, 16 * EDSCALE, Color(1.0, 1.0, 1.0), INLINE_ALIGNMENT_CENTER);
p_log->add_text(" ");
- p_log->add_text(TTR("Completed sucessfully."));
+ p_log->add_text(TTR("Completed successfully."));
if (msg_count > 0) {
has_messages = true;
}
@@ -176,7 +176,7 @@ void EditorExportPlatform::gen_debug_flags(Vector<String> &r_flags, int p_flags)
}
}
- if (p_flags & DEBUG_FLAG_VIEW_COLLISONS) {
+ if (p_flags & DEBUG_FLAG_VIEW_COLLISIONS) {
r_flags.push_back("--debug-collisions");
}
@@ -710,7 +710,7 @@ String EditorExportPlatform::_export_customize(const String &p_path, LocalVector
if (type == "PackedScene") { // Its a scene.
Ref<PackedScene> ps = ResourceLoader::load(p_path, "PackedScene", ResourceFormatLoader::CACHE_MODE_IGNORE);
ERR_FAIL_COND_V(ps.is_null(), p_path);
- Node *node = ps->instantiate();
+ Node *node = ps->instantiate(PackedScene::GEN_EDIT_STATE_INSTANCE); // Make sure the child scene root gets the correct inheritance chain.
ERR_FAIL_COND_V(node == nullptr, p_path);
if (customize_scenes_plugins.size()) {
for (uint32_t i = 0; i < customize_scenes_plugins.size(); i++) {
@@ -1609,7 +1609,7 @@ void EditorExportPlatform::gen_export_flags(Vector<String> &r_flags, int p_flags
}
}
- if (p_flags & DEBUG_FLAG_VIEW_COLLISONS) {
+ if (p_flags & DEBUG_FLAG_VIEW_COLLISIONS) {
r_flags.push_back("--debug-collisions");
}
diff --git a/editor/export/editor_export_platform.h b/editor/export/editor_export_platform.h
index 93bc54284f..88dc7bd5cd 100644
--- a/editor/export/editor_export_platform.h
+++ b/editor/export/editor_export_platform.h
@@ -210,7 +210,7 @@ public:
DEBUG_FLAG_DUMB_CLIENT = 1,
DEBUG_FLAG_REMOTE_DEBUG = 2,
DEBUG_FLAG_REMOTE_DEBUG_LOCALHOST = 4,
- DEBUG_FLAG_VIEW_COLLISONS = 8,
+ DEBUG_FLAG_VIEW_COLLISIONS = 8,
DEBUG_FLAG_VIEW_NAVIGATION = 16,
};
diff --git a/editor/export/project_export.cpp b/editor/export/project_export.cpp
index 8c67885971..43aac5e981 100644
--- a/editor/export/project_export.cpp
+++ b/editor/export/project_export.cpp
@@ -865,10 +865,10 @@ void ProjectExportDialog::_validate_export_path(const String &p_path) {
if (invalid_path) {
export_project->get_ok_button()->set_disabled(true);
- export_project->get_line_edit()->disconnect("text_submitted", Callable(export_project, "_file_submitted"));
+ export_project->get_line_edit()->disconnect("text_submitted", callable_mp(export_project, &EditorFileDialog::_file_submitted));
} else {
export_project->get_ok_button()->set_disabled(false);
- export_project->get_line_edit()->connect("text_submitted", Callable(export_project, "_file_submitted"));
+ export_project->get_line_edit()->connect("text_submitted", callable_mp(export_project, &EditorFileDialog::_file_submitted));
}
}
@@ -901,9 +901,9 @@ void ProjectExportDialog::_export_project() {
// with _validate_export_path.
// FIXME: This is a hack, we should instead change EditorFileDialog to allow
// disabling validation by the "text_submitted" signal.
- if (!export_project->get_line_edit()->is_connected("text_submitted", Callable(export_project, "_file_submitted"))) {
+ if (!export_project->get_line_edit()->is_connected("text_submitted", callable_mp(export_project, &EditorFileDialog::_file_submitted))) {
export_project->get_ok_button()->set_disabled(false);
- export_project->get_line_edit()->connect("text_submitted", Callable(export_project, "_file_submitted"));
+ export_project->get_line_edit()->connect("text_submitted", callable_mp(export_project, &EditorFileDialog::_file_submitted));
}
export_project->set_file_mode(EditorFileDialog::FILE_MODE_SAVE_FILE);
diff --git a/editor/filesystem_dock.cpp b/editor/filesystem_dock.cpp
index 19b4932d3d..424eab2f02 100644
--- a/editor/filesystem_dock.cpp
+++ b/editor/filesystem_dock.cpp
@@ -1751,22 +1751,7 @@ void FileSystemDock::_tree_rmb_option(int p_option) {
case FOLDER_COLLAPSE_ALL: {
// Expand or collapse the folder
if (selected_strings.size() == 1) {
- bool is_collapsed = (p_option == FOLDER_COLLAPSE_ALL);
-
- Vector<TreeItem *> needs_check;
- needs_check.push_back(tree->get_selected());
-
- while (needs_check.size()) {
- needs_check[0]->set_collapsed(is_collapsed);
-
- TreeItem *child = needs_check[0]->get_first_child();
- while (child) {
- needs_check.push_back(child);
- child = child->get_next();
- }
-
- needs_check.remove_at(0);
- }
+ tree->get_selected()->set_collapsed_recursive(p_option == FOLDER_COLLAPSE_ALL);
}
} break;
default: {
diff --git a/editor/icons/MemberAnnotation.svg b/editor/icons/MemberAnnotation.svg
index c73ebf7b9b..39bef6d9ee 100644
--- a/editor/icons/MemberAnnotation.svg
+++ b/editor/icons/MemberAnnotation.svg
@@ -1 +1 @@
-<svg width="16" height="16" version="1.0" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><script id="custom-useragent-string-page-script"/><path d="m13.821 12.756c-5.0033 3.9148-12.551 2.248-12.49-4.538 0.67424-11.471 17.312-7.4502 12.446 2.1173-1.0549 1.1955-2.0737 1.4617-3.1983 0.4329-0.21023-0.19282-0.44783-1.1594-0.3819-1.5089 0.35827-1.8946 1.0885-4.0778-0.72151-4.7234-2.4171-0.86457-4.5592 1.6495-4.9697 4.0193-0.47396 2.7343 2.284 3.3749 4.1487 1.9879 0.4553-0.36324 1.6433-1.3796 1.6806-1.9742" fill="none" stroke="#e0e0e0" stroke-linejoin="round" stroke-width="1.4928"/></svg>
+<svg height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m13.821 12.756c-5.0033 3.9148-12.551 2.248-12.49-4.538.67424-11.471 17.312-7.4502 12.446 2.1173-1.0549 1.1955-2.0737 1.4617-3.1983.4329-.21023-.19282-.44783-1.1594-.3819-1.5089.35827-1.8946 1.0885-4.0778-.72151-4.7234-2.4171-.86457-4.5592 1.6495-4.9697 4.0193-.47396 2.7343 2.284 3.3749 4.1487 1.9879.4553-.36324 1.6433-1.3796 1.6806-1.9742" fill="none" stroke="#e0e0e0" stroke-linejoin="round" stroke-width="1.4928"/></svg>
diff --git a/editor/icons/MethodOverride.svg b/editor/icons/MethodOverride.svg
new file mode 100644
index 0000000000..004b9bf283
--- /dev/null
+++ b/editor/icons/MethodOverride.svg
@@ -0,0 +1 @@
+<svg height="16" viewBox="0 0 4.2333332 4.2333332" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m.49005985 3.3580432.83285685-.0000001v-.7093212c.0027125-.6681099.2054076-1.1321001 1.0021593-1.1328214h.3207573v-.79375l1.3229167 1.0648649-1.3229167 1.0518017v-.79375h-.3364788c-.2888876 0-.4514151.2436282-.4573001.5980603 0 .2833012.0000193.4455045.0000289.7134508h.79375v.4907171l-2.15577345.00147z" fill="#5fb2ff"/></svg>
diff --git a/editor/icons/MethodOverrideAndSlot.svg b/editor/icons/MethodOverrideAndSlot.svg
new file mode 100644
index 0000000000..d3bd9f0253
--- /dev/null
+++ b/editor/icons/MethodOverrideAndSlot.svg
@@ -0,0 +1 @@
+<svg height="16" viewBox="0 0 4.2333332 4.2333332" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m.15761184 3.636193h.37155483l.004252-.7093212c.0027092-.6681099.12999225-1.1321001.92674393-1.1328214h.1273374l.0042585-.7357171 1.3186582 1.006832-1.3229167 1.0700676v-.8531081h-.1260545c-.2888876 0-.3972562.2847204-.4031411.6391525 0 .2833012.0000193.4455045.0000289.7134508h1.2412654v.4907171h-2.14198686z" fill="#5fb2ff"/><path d="m2.38125.79375h1.5875v2.6458333h-1.5875v-.5291666h1.0583333v-1.5875h-1.0583333z" fill="#5fff97"/></svg>
diff --git a/editor/icons/VisualScriptComment.svg b/editor/icons/VisualScriptComment.svg
deleted file mode 100644
index 3887853b58..0000000000
--- a/editor/icons/VisualScriptComment.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg height="14" viewBox="0 0 14 14" width="14" xmlns="http://www.w3.org/2000/svg"><path d="m3 1v2h-2v2h2v4h-2v2h2v2h2v-2h4v2h2v-2h2v-2h-2v-4h2v-2h-2v-2h-2v2h-4v-2zm2 4h4v4h-4z" fill="#e0e0e0"/></svg>
diff --git a/editor/icons/VisualScriptExpression.svg b/editor/icons/VisualScriptExpression.svg
deleted file mode 100644
index d6a3c2d9a8..0000000000
--- a/editor/icons/VisualScriptExpression.svg
+++ /dev/null
@@ -1 +0,0 @@
-<svg height="16" viewBox="0 0 16 16" width="16" xmlns="http://www.w3.org/2000/svg"><g fill="#e0e0e0"><path d="m4.859536 3.0412379c-2.0539867 0-3.7190721 1.6650852-3.7190721 3.719072v6.1984521h2.4793814v-2.479381h2.4793814v-2.4793803h-2.4793814v-1.2396908c0-.6846622.5550285-1.2396907 1.2396907-1.2396907h1.2396907v-2.4793813z"/><path d="m7.5889175 3.0000003 2.5000005 4.9999997-2.5000005 5h2.5000005l1.135249-2.727 1.36475 2.727h2.499999l-2.499999-5 2.499999-4.9999997h-2.499999l-1.13525 2.7269998-1.364749-2.7269998zm7.4999985 9.9999997v-6.25z"/></g></svg>
diff --git a/editor/import/dynamic_font_import_settings.cpp b/editor/import/dynamic_font_import_settings.cpp
index d1f37179f3..1e0f45419f 100644
--- a/editor/import/dynamic_font_import_settings.cpp
+++ b/editor/import/dynamic_font_import_settings.cpp
@@ -302,6 +302,7 @@ static UniRange unicode_ranges[] = {
{ 0x10D00, 0x10D3F, U"Hanifi Rohingya" },
{ 0x10E60, 0x10E7F, U"Rumi Numeral Symbols" },
{ 0x10E80, 0x10EBF, U"Yezidi" },
+ { 0x10EC0, 0x10EFF, U"Arabic Extended-C" },
{ 0x10F00, 0x10F2F, U"Old Sogdian" },
{ 0x10F30, 0x10F6F, U"Sogdian" },
{ 0x10F70, 0x10FAF, U"Old Uyghur" },
@@ -333,11 +334,13 @@ static UniRange unicode_ranges[] = {
{ 0x11A50, 0x11AAF, U"Soyombo" },
{ 0x11AB0, 0x11ABF, U"Unified Canadian Aboriginal Syllabics Extended-A" },
{ 0x11AC0, 0x11AFF, U"Pau Cin Hau" },
+ { 0x11B00, 0x11B5F, U"Devanagari Extended-A" },
{ 0x11C00, 0x11C6F, U"Bhaiksuki" },
{ 0x11C70, 0x11CBF, U"Marchen" },
{ 0x11D00, 0x11D5F, U"Masaram Gondi" },
{ 0x11D60, 0x11DAF, U"Gunjala Gondi" },
{ 0x11EE0, 0x11EFF, U"Makasar" },
+ { 0x11F00, 0x11F5F, U"Kawi" },
{ 0x11FB0, 0x11FBF, U"Lisu Supplement" },
{ 0x11FC0, 0x11FFF, U"Tamil Supplement" },
{ 0x12000, 0x123FF, U"Cuneiform" },
@@ -370,6 +373,7 @@ static UniRange unicode_ranges[] = {
{ 0x1D000, 0x1D0FF, U"Byzantine Musical Symbols" },
{ 0x1D100, 0x1D1FF, U"Musical Symbols" },
{ 0x1D200, 0x1D24F, U"Ancient Greek Musical Notation" },
+ { 0x1D2C0, 0x1D2DF, U"Kaktovik Numerals" },
{ 0x1D2E0, 0x1D2FF, U"Mayan Numerals" },
{ 0x1D300, 0x1D35F, U"Tai Xuan Jing Symbols" },
{ 0x1D360, 0x1D37F, U"Counting Rod Numerals" },
@@ -377,9 +381,11 @@ static UniRange unicode_ranges[] = {
{ 0x1D800, 0x1DAAF, U"Sutton SignWriting" },
{ 0x1DF00, 0x1DFFF, U"Latin Extended-G" },
{ 0x1E000, 0x1E02F, U"Glagolitic Supplement" },
+ { 0x1E030, 0x1E08F, U"Cyrillic Extended-D" },
{ 0x1E100, 0x1E14F, U"Nyiakeng Puachue Hmong" },
{ 0x1E290, 0x1E2BF, U"Toto" },
{ 0x1E2C0, 0x1E2FF, U"Wancho" },
+ { 0x1E4D0, 0x1E4FF, U"Nag Mundari" },
{ 0x1E7E0, 0x1E7FF, U"Ethiopic Extended-B" },
{ 0x1E800, 0x1E8DF, U"Mende Kikakui" },
{ 0x1E900, 0x1E95F, U"Adlam" },
@@ -409,6 +415,7 @@ static UniRange unicode_ranges[] = {
{ 0x2CEB0, 0x2EBEF, U"CJK Unified Ideographs Extension F" },
{ 0x2F800, 0x2FA1F, U"CJK Compatibility Ideographs Supplement" },
{ 0x30000, 0x3134F, U"CJK Unified Ideographs Extension G" },
+ { 0x31350, 0x323AF, U"CJK Unified Ideographs Extension H" },
//{ 0xE0000, 0xE007F, U"Tags" },
//{ 0xE0100, 0xE01EF, U"Variation Selectors Supplement" },
{ 0xF0000, 0xFFFFF, U"Supplementary Private Use Area-A" },
@@ -1002,6 +1009,7 @@ void DynamicFontImportSettings::open_settings(const String &p_path) {
vars_list_root = vars_list->create_item();
+ import_settings_data->settings.clear();
import_settings_data->defaults.clear();
for (List<ResourceImporter::ImportOption>::Element *E = options_general.front(); E; E = E->next()) {
import_settings_data->defaults[E->get().option.name] = E->get().default_value;
diff --git a/editor/import/resource_importer_scene.h b/editor/import/resource_importer_scene.h
index 77bc06533c..386519bc59 100644
--- a/editor/import/resource_importer_scene.h
+++ b/editor/import/resource_importer_scene.h
@@ -35,11 +35,13 @@
#include "core/io/resource_importer.h"
#include "core/variant/dictionary.h"
#include "scene/3d/importer_mesh_instance_3d.h"
-#include "scene/3d/node_3d.h"
#include "scene/resources/animation.h"
+#include "scene/resources/box_shape_3d.h"
+#include "scene/resources/capsule_shape_3d.h"
+#include "scene/resources/cylinder_shape_3d.h"
#include "scene/resources/mesh.h"
#include "scene/resources/shape_3d.h"
-#include "scene/resources/skin.h"
+#include "scene/resources/sphere_shape_3d.h"
class Material;
class AnimationPlayer;
@@ -311,11 +313,6 @@ public:
virtual Node *import_scene(const String &p_path, uint32_t p_flags, const HashMap<StringName, Variant> &p_options, int p_bake_fps, List<String> *r_missing_deps, Error *r_err = nullptr) override;
};
-#include "scene/resources/box_shape_3d.h"
-#include "scene/resources/capsule_shape_3d.h"
-#include "scene/resources/cylinder_shape_3d.h"
-#include "scene/resources/sphere_shape_3d.h"
-
template <class M>
Vector<Ref<Shape3D>> ResourceImporterScene::get_collision_shapes(const Ref<Mesh> &p_mesh, const M &p_options) {
ShapeType generate_shape_type = SHAPE_TYPE_DECOMPOSE_CONVEX;
diff --git a/editor/plugins/animation_player_editor_plugin.cpp b/editor/plugins/animation_player_editor_plugin.cpp
index 5406aada09..e8caac565c 100644
--- a/editor/plugins/animation_player_editor_plugin.cpp
+++ b/editor/plugins/animation_player_editor_plugin.cpp
@@ -874,6 +874,11 @@ void AnimationPlayerEditor::_update_player() {
onion_toggle->set_disabled(no_anims_found);
onion_skinning->set_disabled(no_anims_found);
+ if (hack_disable_onion_skinning) {
+ onion_toggle->set_disabled(true);
+ onion_skinning->set_disabled(true);
+ }
+
_update_animation_list_icons();
updating = false;
@@ -1678,6 +1683,16 @@ AnimationPlayerEditor::AnimationPlayerEditor(AnimationPlayerEditorPlugin *p_plug
onion_skinning->get_popup()->add_check_item(TTR("Include Gizmos (3D)"), ONION_SKINNING_INCLUDE_GIZMOS);
hb->add_child(onion_skinning);
+ // FIXME: Onion skinning disabled for now as it's broken and triggers fast
+ // flickering red/blue modulation (GH-53870).
+ if (hack_disable_onion_skinning) {
+ onion_toggle->set_disabled(true);
+ onion_toggle->set_tooltip_text(TTR("Onion Skinning temporarily disabled due to rendering bug."));
+
+ onion_skinning->set_disabled(true);
+ onion_skinning->set_tooltip_text(TTR("Onion Skinning temporarily disabled due to rendering bug."));
+ }
+
hb->add_child(memnew(VSeparator));
pin = memnew(Button);
diff --git a/editor/plugins/animation_player_editor_plugin.h b/editor/plugins/animation_player_editor_plugin.h
index a37a9debef..06fd9455df 100644
--- a/editor/plugins/animation_player_editor_plugin.h
+++ b/editor/plugins/animation_player_editor_plugin.h
@@ -131,6 +131,8 @@ class AnimationPlayerEditor : public VBoxContainer {
AnimationTrackEditor *track_editor = nullptr;
static AnimationPlayerEditor *singleton;
+ bool hack_disable_onion_skinning = true; // Temporary hack for GH-53870.
+
// Onion skinning.
struct {
// Settings.
diff --git a/editor/plugins/bone_map_editor_plugin.cpp b/editor/plugins/bone_map_editor_plugin.cpp
index 46e2fe41af..60e8f5b44b 100644
--- a/editor/plugins/bone_map_editor_plugin.cpp
+++ b/editor/plugins/bone_map_editor_plugin.cpp
@@ -1309,7 +1309,7 @@ void BoneMapEditor::create_editors() {
void BoneMapEditor::fetch_objects() {
skeleton = nullptr;
- // Hackey... but it may be the easist way to get a selected object from "ImporterScene".
+ // Hackey... but it may be the easiest way to get a selected object from "ImporterScene".
SceneImportSettings *si = SceneImportSettings::get_singleton();
if (!si) {
return;
diff --git a/editor/plugins/canvas_item_editor_plugin.cpp b/editor/plugins/canvas_item_editor_plugin.cpp
index 070834b33b..84b8b4aed8 100644
--- a/editor/plugins/canvas_item_editor_plugin.cpp
+++ b/editor/plugins/canvas_item_editor_plugin.cpp
@@ -2535,30 +2535,32 @@ void CanvasItemEditor::_gui_input_viewport(const Ref<InputEvent> &p_event) {
bool release_lmb = (mb.is_valid() && !mb->is_pressed() && mb->get_button_index() == MouseButton::LEFT); // Required to properly release some stuff (e.g. selection box) while panning.
if (EditorSettings::get_singleton()->get("editors/panning/simple_panning") || !pan_pressed || release_lmb) {
- if ((accepted = _gui_input_rulers_and_guides(p_event))) {
+ accepted = true;
+ if (_gui_input_rulers_and_guides(p_event)) {
// print_line("Rulers and guides");
- } else if ((accepted = EditorNode::get_singleton()->get_editor_plugins_over()->forward_gui_input(p_event))) {
+ } else if (EditorNode::get_singleton()->get_editor_plugins_over()->forward_gui_input(p_event)) {
// print_line("Plugin");
- } else if ((accepted = _gui_input_open_scene_on_double_click(p_event))) {
+ } else if (_gui_input_open_scene_on_double_click(p_event)) {
// print_line("Open scene on double click");
- } else if ((accepted = _gui_input_scale(p_event))) {
+ } else if (_gui_input_scale(p_event)) {
// print_line("Set scale");
- } else if ((accepted = _gui_input_pivot(p_event))) {
+ } else if (_gui_input_pivot(p_event)) {
// print_line("Set pivot");
- } else if ((accepted = _gui_input_resize(p_event))) {
+ } else if (_gui_input_resize(p_event)) {
// print_line("Resize");
- } else if ((accepted = _gui_input_rotate(p_event))) {
+ } else if (_gui_input_rotate(p_event)) {
// print_line("Rotate");
- } else if ((accepted = _gui_input_move(p_event))) {
+ } else if (_gui_input_move(p_event)) {
// print_line("Move");
- } else if ((accepted = _gui_input_anchors(p_event))) {
+ } else if (_gui_input_anchors(p_event)) {
// print_line("Anchors");
- } else if ((accepted = _gui_input_select(p_event))) {
+ } else if (_gui_input_select(p_event)) {
// print_line("Selection");
- } else if ((accepted = _gui_input_ruler_tool(p_event))) {
+ } else if (_gui_input_ruler_tool(p_event)) {
// print_line("Measure");
} else {
// print_line("Not accepted");
+ accepted = false;
}
}
@@ -4715,12 +4717,10 @@ void CanvasItemEditor::_reset_drag() {
}
void CanvasItemEditor::_bind_methods() {
- ClassDB::bind_method(D_METHOD("_update_override_camera_button", "game_running"), &CanvasItemEditor::_update_override_camera_button);
ClassDB::bind_method("_get_editor_data", &CanvasItemEditor::_get_editor_data);
ClassDB::bind_method(D_METHOD("set_state"), &CanvasItemEditor::set_state);
ClassDB::bind_method(D_METHOD("update_viewport"), &CanvasItemEditor::update_viewport);
- ClassDB::bind_method(D_METHOD("_zoom_on_position"), &CanvasItemEditor::_zoom_on_position);
ClassDB::bind_method("_set_owner_for_node_and_children", &CanvasItemEditor::_set_owner_for_node_and_children);
@@ -4984,8 +4984,8 @@ CanvasItemEditor::CanvasItemEditor() {
SceneTreeDock::get_singleton()->connect("node_created", callable_mp(this, &CanvasItemEditor::_node_created));
SceneTreeDock::get_singleton()->connect("add_node_used", callable_mp(this, &CanvasItemEditor::_reset_create_position));
- EditorNode::get_singleton()->call_deferred(SNAME("connect"), "play_pressed", Callable(this, "_update_override_camera_button").bind(true));
- EditorNode::get_singleton()->call_deferred(SNAME("connect"), "stop_pressed", Callable(this, "_update_override_camera_button").bind(false));
+ EditorNode::get_singleton()->call_deferred(SNAME("connect"), callable_mp(this, &CanvasItemEditor::_update_override_camera_button).bind(true));
+ EditorNode::get_singleton()->call_deferred(SNAME("connect"), "stop_pressed", callable_mp(this, &CanvasItemEditor::_update_override_camera_button).bind(false));
// A fluid container for all toolbars.
HFlowContainer *main_flow = memnew(HFlowContainer);
@@ -5883,9 +5883,6 @@ void CanvasItemEditorViewport::_notification(int p_what) {
}
}
-void CanvasItemEditorViewport::_bind_methods() {
-}
-
CanvasItemEditorViewport::CanvasItemEditorViewport(CanvasItemEditor *p_canvas_item_editor) {
default_texture_node_type = "Sprite2D";
// Node2D
diff --git a/editor/plugins/canvas_item_editor_plugin.h b/editor/plugins/canvas_item_editor_plugin.h
index 0a840d6fd6..b731d3cc7d 100644
--- a/editor/plugins/canvas_item_editor_plugin.h
+++ b/editor/plugins/canvas_item_editor_plugin.h
@@ -618,8 +618,6 @@ class CanvasItemEditorViewport : public Control {
void _show_resource_type_selector();
void _update_theme();
- static void _bind_methods();
-
protected:
void _notification(int p_what);
diff --git a/editor/plugins/debugger_editor_plugin.cpp b/editor/plugins/debugger_editor_plugin.cpp
index 40e7dfead2..dd6187c264 100644
--- a/editor/plugins/debugger_editor_plugin.cpp
+++ b/editor/plugins/debugger_editor_plugin.cpp
@@ -69,7 +69,7 @@ DebuggerEditorPlugin::DebuggerEditorPlugin(PopupMenu *p_debug_menu) {
debug_menu->set_item_tooltip(-1,
TTR("When this option is enabled, using one-click deploy for Android will only export an executable without the project data.\nThe filesystem will be provided from the project by the editor over the network.\nOn Android, deploying will use the USB cable for faster performance. This option speeds up testing for projects with large assets."));
debug_menu->add_separator();
- debug_menu->add_check_shortcut(ED_SHORTCUT("editor/visible_collision_shapes", TTR("Visible Collision Shapes")), RUN_DEBUG_COLLISONS);
+ debug_menu->add_check_shortcut(ED_SHORTCUT("editor/visible_collision_shapes", TTR("Visible Collision Shapes")), RUN_DEBUG_COLLISIONS);
debug_menu->set_item_tooltip(-1,
TTR("When this option is enabled, collision shapes and raycast nodes (for 2D and 3D) will be visible in the running project."));
debug_menu->add_check_shortcut(ED_SHORTCUT("editor/visible_paths", TTR("Visible Paths")), RUN_DEBUG_PATHS);
@@ -150,10 +150,10 @@ void DebuggerEditorPlugin::_menu_option(int p_option) {
EditorSettings::get_singleton()->set_project_metadata("debug_options", "run_deploy_remote_debug", !ischecked);
} break;
- case RUN_DEBUG_COLLISONS: {
- bool ischecked = debug_menu->is_item_checked(debug_menu->get_item_index(RUN_DEBUG_COLLISONS));
- debug_menu->set_item_checked(debug_menu->get_item_index(RUN_DEBUG_COLLISONS), !ischecked);
- EditorSettings::get_singleton()->set_project_metadata("debug_options", "run_debug_collisons", !ischecked);
+ case RUN_DEBUG_COLLISIONS: {
+ bool ischecked = debug_menu->is_item_checked(debug_menu->get_item_index(RUN_DEBUG_COLLISIONS));
+ debug_menu->set_item_checked(debug_menu->get_item_index(RUN_DEBUG_COLLISIONS), !ischecked);
+ EditorSettings::get_singleton()->set_project_metadata("debug_options", "run_debug_collisions", !ischecked);
} break;
case RUN_DEBUG_PATHS: {
@@ -190,7 +190,7 @@ void DebuggerEditorPlugin::_notification(int p_what) {
void DebuggerEditorPlugin::_update_debug_options() {
bool check_deploy_remote = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_deploy_remote_debug", false);
bool check_file_server = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_file_server", false);
- bool check_debug_collisions = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_debug_collisons", false);
+ bool check_debug_collisions = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_debug_collisions", false);
bool check_debug_paths = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_debug_paths", false);
bool check_debug_navigation = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_debug_navigation", false);
bool check_live_debug = EditorSettings::get_singleton()->get_project_metadata("debug_options", "run_live_debug", true);
@@ -204,7 +204,7 @@ void DebuggerEditorPlugin::_update_debug_options() {
_menu_option(RUN_FILE_SERVER);
}
if (check_debug_collisions) {
- _menu_option(RUN_DEBUG_COLLISONS);
+ _menu_option(RUN_DEBUG_COLLISIONS);
}
if (check_debug_paths) {
_menu_option(RUN_DEBUG_PATHS);
diff --git a/editor/plugins/debugger_editor_plugin.h b/editor/plugins/debugger_editor_plugin.h
index d8871128c3..c706acdb5c 100644
--- a/editor/plugins/debugger_editor_plugin.h
+++ b/editor/plugins/debugger_editor_plugin.h
@@ -48,7 +48,7 @@ private:
enum MenuOptions {
RUN_FILE_SERVER,
RUN_LIVE_DEBUG,
- RUN_DEBUG_COLLISONS,
+ RUN_DEBUG_COLLISIONS,
RUN_DEBUG_PATHS,
RUN_DEBUG_NAVIGATION,
RUN_DEPLOY_REMOTE_DEBUG,
diff --git a/editor/plugins/font_config_plugin.cpp b/editor/plugins/font_config_plugin.cpp
index 2df951518e..ba11479714 100644
--- a/editor/plugins/font_config_plugin.cpp
+++ b/editor/plugins/font_config_plugin.cpp
@@ -622,6 +622,16 @@ void EditorPropertyOTFeatures::update_property() {
supported = fd->get_supported_feature_list();
}
+ if (supported.is_empty()) {
+ edit->set_text(vformat(TTR("No supported features")));
+ if (container) {
+ set_bottom_editor(nullptr);
+ memdelete(container);
+ button_add = nullptr;
+ container = nullptr;
+ }
+ return;
+ }
edit->set_text(vformat(TTR("Features (%d of %d set)"), dict.size(), supported.size()));
bool unfolded = get_edited_object()->editor_is_section_unfolded(get_edited_property());
diff --git a/editor/plugins/script_editor_plugin.cpp b/editor/plugins/script_editor_plugin.cpp
index 0a111aeb49..18561fe3a0 100644
--- a/editor/plugins/script_editor_plugin.cpp
+++ b/editor/plugins/script_editor_plugin.cpp
@@ -227,6 +227,7 @@ void ScriptEditorBase::_bind_methods() {
// TODO: This signal is no use for VisualScript.
ADD_SIGNAL(MethodInfo("search_in_files_requested", PropertyInfo(Variant::STRING, "text")));
ADD_SIGNAL(MethodInfo("replace_in_files_requested", PropertyInfo(Variant::STRING, "text")));
+ ADD_SIGNAL(MethodInfo("go_to_method", PropertyInfo(Variant::OBJECT, "script"), PropertyInfo(Variant::STRING, "method")));
}
class EditorScriptCodeCompletionCache : public ScriptCodeCompletionCache {
@@ -2380,6 +2381,7 @@ bool ScriptEditor::edit(const Ref<Resource> &p_resource, int p_line, int p_col,
se->connect("request_save_history", callable_mp(this, &ScriptEditor::_save_history));
se->connect("search_in_files_requested", callable_mp(this, &ScriptEditor::_on_find_in_files_requested));
se->connect("replace_in_files_requested", callable_mp(this, &ScriptEditor::_on_replace_in_files_requested));
+ se->connect("go_to_method", callable_mp(this, &ScriptEditor::script_goto_method));
//test for modification, maybe the script was not edited but was loaded
@@ -2544,7 +2546,7 @@ void ScriptEditor::apply_scripts() const {
}
}
-void ScriptEditor::reload_scripts() {
+void ScriptEditor::reload_scripts(bool p_refresh_only) {
for (int i = 0; i < tab_container->get_tab_count(); i++) {
ScriptEditorBase *se = Object::cast_to<ScriptEditorBase>(tab_container->get_tab_control(i));
if (!se) {
@@ -2557,30 +2559,33 @@ void ScriptEditor::reload_scripts() {
continue; //internal script, who cares
}
- uint64_t last_date = edited_res->get_last_modified_time();
- uint64_t date = FileAccess::get_modified_time(edited_res->get_path());
+ if (!p_refresh_only) {
+ uint64_t last_date = edited_res->get_last_modified_time();
+ uint64_t date = FileAccess::get_modified_time(edited_res->get_path());
- if (last_date == date) {
- continue;
- }
+ if (last_date == date) {
+ continue;
+ }
- Ref<Script> script = edited_res;
- if (script != nullptr) {
- Ref<Script> rel_script = ResourceLoader::load(script->get_path(), script->get_class(), ResourceFormatLoader::CACHE_MODE_IGNORE);
- ERR_CONTINUE(!rel_script.is_valid());
- script->set_source_code(rel_script->get_source_code());
- script->set_last_modified_time(rel_script->get_last_modified_time());
- script->reload(true);
- }
+ Ref<Script> script = edited_res;
+ if (script != nullptr) {
+ Ref<Script> rel_script = ResourceLoader::load(script->get_path(), script->get_class(), ResourceFormatLoader::CACHE_MODE_IGNORE);
+ ERR_CONTINUE(!rel_script.is_valid());
+ script->set_source_code(rel_script->get_source_code());
+ script->set_last_modified_time(rel_script->get_last_modified_time());
+ script->reload(true);
+ }
- Ref<TextFile> text_file = edited_res;
- if (text_file != nullptr) {
- Error err;
- Ref<TextFile> rel_text_file = _load_text_file(text_file->get_path(), &err);
- ERR_CONTINUE(!rel_text_file.is_valid());
- text_file->set_text(rel_text_file->get_text());
- text_file->set_last_modified_time(rel_text_file->get_last_modified_time());
+ Ref<TextFile> text_file = edited_res;
+ if (text_file != nullptr) {
+ Error err;
+ Ref<TextFile> rel_text_file = _load_text_file(text_file->get_path(), &err);
+ ERR_CONTINUE(!rel_text_file.is_valid());
+ text_file->set_text(rel_text_file->get_text());
+ text_file->set_last_modified_time(rel_text_file->get_last_modified_time());
+ }
}
+
se->reload_text();
}
@@ -3059,26 +3064,15 @@ void ScriptEditor::shortcut_input(const Ref<InputEvent> &p_event) {
}
}
-void ScriptEditor::_script_list_gui_input(const Ref<InputEvent> &ev) {
- Ref<InputEventMouseButton> mb = ev;
- if (mb.is_valid() && mb->is_pressed()) {
- switch (mb->get_button_index()) {
- case MouseButton::MIDDLE: {
- // Right-click selects automatically; middle-click does not.
- int idx = script_list->get_item_at_position(mb->get_position(), true);
- if (idx >= 0) {
- script_list->select(idx);
- _script_selected(idx);
- _menu_option(FILE_CLOSE);
- }
- } break;
+void ScriptEditor::_script_list_clicked(int p_item, Vector2 p_local_mouse_pos, MouseButton p_mouse_button_index) {
+ if (p_mouse_button_index == MouseButton::MIDDLE) {
+ script_list->select(p_item);
+ _script_selected(p_item);
+ _menu_option(FILE_CLOSE);
+ }
- case MouseButton::RIGHT: {
- _make_script_list_context_menu();
- } break;
- default:
- break;
- }
+ if (p_mouse_button_index == MouseButton::RIGHT) {
+ _make_script_list_context_menu();
}
}
@@ -3368,10 +3362,12 @@ void ScriptEditor::_update_selected_editor_menu() {
script_search_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/find_previous", TTR("Find Previous"), KeyModifierMask::SHIFT | Key::F3), HELP_SEARCH_FIND_PREVIOUS);
script_search_menu->get_popup()->add_separator();
script_search_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/find_in_files", TTR("Find in Files"), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::SHIFT | Key::F), SEARCH_IN_FILES);
+ script_search_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/replace_in_files", TTR("Replace in Files"), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::SHIFT | Key::R), REPLACE_IN_FILES);
script_search_menu->show();
} else {
if (tab_container->get_tab_count() == 0) {
script_search_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/find_in_files", TTR("Find in Files"), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::SHIFT | Key::F), SEARCH_IN_FILES);
+ script_search_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/replace_in_files", TTR("Replace in Files"), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::SHIFT | Key::R), REPLACE_IN_FILES);
script_search_menu->show();
} else {
script_search_menu->hide();
@@ -3688,7 +3684,7 @@ ScriptEditor::ScriptEditor() {
script_list->set_v_size_flags(SIZE_EXPAND_FILL);
script_split->set_split_offset(70 * EDSCALE);
_sort_list_on_update = true;
- script_list->connect("gui_input", callable_mp(this, &ScriptEditor::_script_list_gui_input), CONNECT_DEFERRED);
+ script_list->connect("item_clicked", callable_mp(this, &ScriptEditor::_script_list_clicked), CONNECT_DEFERRED);
script_list->set_allow_rmb_select(true);
script_list->set_drag_forwarding(this);
diff --git a/editor/plugins/script_editor_plugin.h b/editor/plugins/script_editor_plugin.h
index a8e6cc6868..1e78dc4ec4 100644
--- a/editor/plugins/script_editor_plugin.h
+++ b/editor/plugins/script_editor_plugin.h
@@ -426,7 +426,7 @@ class ScriptEditor : public PanelContainer {
virtual void input(const Ref<InputEvent> &p_event) override;
virtual void shortcut_input(const Ref<InputEvent> &p_event) override;
- void _script_list_gui_input(const Ref<InputEvent> &ev);
+ void _script_list_clicked(int p_item, Vector2 p_local_mouse_pos, MouseButton p_mouse_button_index);
void _make_script_list_context_menu();
void _help_search(String p_text);
@@ -477,7 +477,7 @@ public:
bool toggle_scripts_panel();
bool is_scripts_panel_toggled();
void apply_scripts() const;
- void reload_scripts();
+ void reload_scripts(bool p_refresh_only = false);
void open_script_create_dialog(const String &p_base_name, const String &p_base_path);
void open_text_file_create_dialog(const String &p_base_path, const String &p_base_name = "");
Ref<Resource> open_file(const String &p_file);
diff --git a/editor/plugins/script_text_editor.cpp b/editor/plugins/script_text_editor.cpp
index 42dcfb8b1f..c21b4356f8 100644
--- a/editor/plugins/script_text_editor.cpp
+++ b/editor/plugins/script_text_editor.cpp
@@ -956,10 +956,7 @@ void ScriptTextEditor::_update_connected_methods() {
CodeEdit *text_edit = code_editor->get_text_editor();
text_edit->set_gutter_width(connection_gutter, text_edit->get_line_height());
for (int i = 0; i < text_edit->get_line_count(); i++) {
- if (text_edit->get_line_gutter_metadata(i, connection_gutter) == "") {
- continue;
- }
- text_edit->set_line_gutter_metadata(i, connection_gutter, "");
+ text_edit->set_line_gutter_metadata(i, connection_gutter, Dictionary());
text_edit->set_line_gutter_icon(i, connection_gutter, nullptr);
text_edit->set_line_gutter_clickable(i, connection_gutter, false);
}
@@ -974,6 +971,7 @@ void ScriptTextEditor::_update_connected_methods() {
return;
}
+ // Add connection icons to methods.
Vector<Node *> nodes = _find_all_node_for_script(base, base, script);
HashSet<StringName> methods_found;
for (int i = 0; i < nodes.size(); i++) {
@@ -1002,8 +1000,11 @@ void ScriptTextEditor::_update_connected_methods() {
for (int j = 0; j < functions.size(); j++) {
String name = functions[j].get_slice(":", 0);
if (name == method) {
+ Dictionary line_meta;
+ line_meta["type"] = "connection";
+ line_meta["method"] = method;
line = functions[j].get_slice(":", 1).to_int() - 1;
- text_edit->set_line_gutter_metadata(line, connection_gutter, method);
+ text_edit->set_line_gutter_metadata(line, connection_gutter, line_meta);
text_edit->set_line_gutter_icon(line, connection_gutter, get_parent_control()->get_theme_icon(SNAME("Slot"), SNAME("EditorIcons")));
text_edit->set_line_gutter_clickable(line, connection_gutter, true);
methods_found.insert(method);
@@ -1033,6 +1034,66 @@ void ScriptTextEditor::_update_connected_methods() {
}
}
}
+
+ // Add override icons to methods.
+ methods_found.clear();
+ for (int i = 0; i < functions.size(); i++) {
+ StringName name = StringName(functions[i].get_slice(":", 0));
+ if (methods_found.has(name)) {
+ continue;
+ }
+
+ String found_base_class;
+ StringName base_class = script->get_instance_base_type();
+ Ref<Script> inherited_script = script->get_base_script();
+ while (!inherited_script.is_null()) {
+ if (inherited_script->has_method(name)) {
+ found_base_class = "script:" + inherited_script->get_path();
+ break;
+ }
+
+ base_class = inherited_script->get_instance_base_type();
+ inherited_script = inherited_script->get_base_script();
+ }
+
+ if (found_base_class.is_empty()) {
+ while (base_class) {
+ List<MethodInfo> methods;
+ ClassDB::get_method_list(base_class, &methods, true);
+ for (int j = 0; j < methods.size(); j++) {
+ if (methods[j].name == name) {
+ found_base_class = "builtin:" + base_class;
+ break;
+ }
+ }
+
+ ClassDB::ClassInfo *base_class_ptr = ClassDB::classes.getptr(base_class)->inherits_ptr;
+ if (base_class_ptr == nullptr) {
+ break;
+ }
+ base_class = base_class_ptr->name;
+ }
+ }
+
+ if (!found_base_class.is_empty()) {
+ int line = functions[i].get_slice(":", 1).to_int() - 1;
+
+ Dictionary line_meta = text_edit->get_line_gutter_metadata(line, connection_gutter);
+ if (line_meta.is_empty()) {
+ // Add override icon to gutter.
+ line_meta["type"] = "inherits";
+ line_meta["method"] = name;
+ line_meta["base_class"] = found_base_class;
+ text_edit->set_line_gutter_icon(line, connection_gutter, get_parent_control()->get_theme_icon(SNAME("MethodOverride"), SNAME("EditorIcons")));
+ text_edit->set_line_gutter_clickable(line, connection_gutter, true);
+ } else {
+ // If method is also connected to signal, then merge icons and keep the click behavior of the slot.
+ text_edit->set_line_gutter_icon(line, connection_gutter, get_parent_control()->get_theme_icon(SNAME("MethodOverrideAndSlot"), SNAME("EditorIcons")));
+ }
+
+ methods_found.insert(name);
+ }
+ }
}
void ScriptTextEditor::_update_gutter_indexes() {
@@ -1054,18 +1115,40 @@ void ScriptTextEditor::_gutter_clicked(int p_line, int p_gutter) {
return;
}
- String method = code_editor->get_text_editor()->get_line_gutter_metadata(p_line, p_gutter);
- if (method.is_empty()) {
+ Dictionary meta = code_editor->get_text_editor()->get_line_gutter_metadata(p_line, p_gutter);
+ String type = meta.get("type", "");
+ if (type.is_empty()) {
return;
}
- Node *base = get_tree()->get_edited_scene_root();
- if (!base) {
+ // All types currently need a method name.
+ String method = meta.get("method", "");
+ if (method.is_empty()) {
return;
}
- Vector<Node *> nodes = _find_all_node_for_script(base, base, script);
- connection_info_dialog->popup_connections(method, nodes);
+ if (type == "connection") {
+ Node *base = get_tree()->get_edited_scene_root();
+ if (!base) {
+ return;
+ }
+
+ Vector<Node *> nodes = _find_all_node_for_script(base, base, script);
+ connection_info_dialog->popup_connections(method, nodes);
+ } else if (type == "inherits") {
+ String base_class_raw = meta["base_class"];
+ PackedStringArray base_class_split = base_class_raw.split(":", true, 1);
+
+ if (base_class_split[0] == "script") {
+ // Go to function declaration.
+ Ref<Script> base_script = ResourceLoader::load(base_class_split[1]);
+ ERR_FAIL_COND(!base_script.is_valid());
+ emit_signal(SNAME("go_to_method"), base_script, method);
+ } else if (base_class_split[0] == "builtin") {
+ // Open method documentation.
+ emit_signal(SNAME("go_to_help"), "class_method:" + base_class_split[1] + ":" + method);
+ }
+ }
}
void ScriptTextEditor::_edit_option(int p_op) {
@@ -1102,21 +1185,19 @@ void ScriptTextEditor::_edit_option(int p_op) {
case EDIT_MOVE_LINE_DOWN: {
code_editor->move_lines_down();
} break;
- case EDIT_INDENT_LEFT: {
+ case EDIT_INDENT: {
Ref<Script> scr = script;
if (scr.is_null()) {
return;
}
-
- tx->unindent_lines();
+ tx->indent_lines();
} break;
- case EDIT_INDENT_RIGHT: {
+ case EDIT_UNINDENT: {
Ref<Script> scr = script;
if (scr.is_null()) {
return;
}
-
- tx->indent_lines();
+ tx->unindent_lines();
} break;
case EDIT_DELETE_LINE: {
code_editor->delete_lines();
@@ -1487,16 +1568,17 @@ bool ScriptTextEditor::can_drop_data_fw(const Point2 &p_point, const Variant &p_
}
static Node *_find_script_node(Node *p_edited_scene, Node *p_current_node, const Ref<Script> &script) {
- if (p_edited_scene != p_current_node && p_current_node->get_owner() != p_edited_scene) {
- return nullptr;
- }
-
- Ref<Script> scr = p_current_node->get_script();
-
- if (scr.is_valid() && scr == script) {
- return p_current_node;
+ // Check scripts only for the nodes belonging to the edited scene.
+ if (p_current_node == p_edited_scene || p_current_node->get_owner() == p_edited_scene) {
+ Ref<Script> scr = p_current_node->get_script();
+ if (scr.is_valid() && scr == script) {
+ return p_current_node;
+ }
}
+ // Traverse all children, even the ones not owned by the edited scene as they
+ // can still have child nodes added within the edited scene and thus owned by
+ // it (e.g. nodes added to subscene's root or to its editable children).
for (int i = 0; i < p_current_node->get_child_count(); i++) {
Node *n = _find_script_node(p_edited_scene, p_current_node->get_child(i), script);
if (n) {
@@ -1558,8 +1640,13 @@ void ScriptTextEditor::drop_data_fw(const Point2 &p_point, const Variant &p_data
}
if (d.has("type") && String(d["type"]) == "nodes") {
- Node *sn = _find_script_node(get_tree()->get_edited_scene_root(), get_tree()->get_edited_scene_root(), script);
+ Node *scene_root = get_tree()->get_edited_scene_root();
+ if (!scene_root) {
+ EditorNode::get_singleton()->show_warning(TTR("Can't drop nodes without an open scene."));
+ return;
+ }
+ Node *sn = _find_script_node(scene_root, scene_root, script);
if (!sn) {
EditorNode::get_singleton()->show_warning(vformat(TTR("Can't drop nodes because script '%s' is not used in this scene."), get_name()));
return;
@@ -1786,8 +1873,8 @@ void ScriptTextEditor::_make_context_menu(bool p_selection, bool p_color, bool p
context_menu->add_shortcut(ED_GET_SHORTCUT("ui_text_select_all"), EDIT_SELECT_ALL);
context_menu->add_separator();
- context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent_left"), EDIT_INDENT_LEFT);
- context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent_right"), EDIT_INDENT_RIGHT);
+ context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent"), EDIT_INDENT);
+ context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/unindent"), EDIT_UNINDENT);
context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/toggle_comment"), EDIT_TOGGLE_COMMENT);
context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/toggle_bookmark"), BOOKMARK_TOGGLE);
@@ -1884,6 +1971,7 @@ void ScriptTextEditor::_enable_code_editor() {
search_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/replace"), SEARCH_REPLACE);
search_menu->get_popup()->add_separator();
search_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/find_in_files"), SEARCH_IN_FILES);
+ search_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/replace_in_files"), REPLACE_IN_FILES);
search_menu->get_popup()->add_separator();
search_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/contextual_help"), HELP_CONTEXTUAL);
search_menu->get_popup()->connect("id_pressed", callable_mp(this, &ScriptTextEditor::_edit_option));
@@ -1901,8 +1989,8 @@ void ScriptTextEditor::_enable_code_editor() {
edit_menu->get_popup()->add_separator();
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/move_up"), EDIT_MOVE_LINE_UP);
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/move_down"), EDIT_MOVE_LINE_DOWN);
- edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent_left"), EDIT_INDENT_LEFT);
- edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent_right"), EDIT_INDENT_RIGHT);
+ edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent"), EDIT_INDENT);
+ edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/unindent"), EDIT_UNINDENT);
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/delete_line"), EDIT_DELETE_LINE);
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/toggle_comment"), EDIT_TOGGLE_COMMENT);
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/toggle_fold_line"), EDIT_TOGGLE_FOLD_LINE);
@@ -1932,7 +2020,6 @@ void ScriptTextEditor::_enable_code_editor() {
_load_theme_settings();
- search_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/replace_in_files"), REPLACE_IN_FILES);
edit_hb->add_child(goto_menu);
goto_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/goto_function"), SEARCH_LOCATE_FUNCTION);
goto_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/goto_line"), SEARCH_GOTO_LINE);
@@ -2077,8 +2164,8 @@ void ScriptTextEditor::register_editor() {
// Leave these at zero, same can be accomplished with tab/shift-tab, including selection.
// The next/previous in history shortcut in this case makes a lot more sense.
- ED_SHORTCUT("script_text_editor/indent_left", TTR("Indent Left"), Key::NONE);
- ED_SHORTCUT("script_text_editor/indent_right", TTR("Indent Right"), Key::NONE);
+ ED_SHORTCUT("script_text_editor/indent", TTR("Indent"), Key::NONE);
+ ED_SHORTCUT("script_text_editor/unindent", TTR("Unindent"), KeyModifierMask::SHIFT | Key::TAB);
ED_SHORTCUT("script_text_editor/toggle_comment", TTR("Toggle Comment"), KeyModifierMask::CMD_OR_CTRL | Key::K);
ED_SHORTCUT("script_text_editor/toggle_fold_line", TTR("Fold/Unfold Line"), KeyModifierMask::ALT | Key::F);
ED_SHORTCUT("script_text_editor/fold_all_lines", TTR("Fold All Lines"), Key::NONE);
diff --git a/editor/plugins/script_text_editor.h b/editor/plugins/script_text_editor.h
index 8d2fb98721..99fafb2192 100644
--- a/editor/plugins/script_text_editor.h
+++ b/editor/plugins/script_text_editor.h
@@ -117,8 +117,8 @@ class ScriptTextEditor : public ScriptEditorBase {
EDIT_TOGGLE_COMMENT,
EDIT_MOVE_LINE_UP,
EDIT_MOVE_LINE_DOWN,
- EDIT_INDENT_RIGHT,
- EDIT_INDENT_LEFT,
+ EDIT_INDENT,
+ EDIT_UNINDENT,
EDIT_DELETE_LINE,
EDIT_DUPLICATE_SELECTION,
EDIT_PICK_COLOR,
diff --git a/editor/plugins/shader_editor_plugin.cpp b/editor/plugins/shader_editor_plugin.cpp
index 246bc4b183..2eafa4fc91 100644
--- a/editor/plugins/shader_editor_plugin.cpp
+++ b/editor/plugins/shader_editor_plugin.cpp
@@ -385,13 +385,14 @@ static void _complete_include_paths(List<ScriptLanguage::CodeCompletionOption> *
void ShaderTextEditor::_code_complete_script(const String &p_code, List<ScriptLanguage::CodeCompletionOption> *r_options) {
List<ScriptLanguage::CodeCompletionOption> pp_options;
+ List<ScriptLanguage::CodeCompletionOption> pp_defines;
ShaderPreprocessor preprocessor;
String code;
complete_from_path = (shader.is_valid() ? shader->get_path() : shader_inc->get_path()).get_base_dir();
if (!complete_from_path.ends_with("/")) {
complete_from_path += "/";
}
- preprocessor.preprocess(p_code, "", code, nullptr, nullptr, nullptr, nullptr, &pp_options, _complete_include_paths);
+ preprocessor.preprocess(p_code, "", code, nullptr, nullptr, nullptr, nullptr, &pp_options, &pp_defines, _complete_include_paths);
complete_from_path = String();
if (pp_options.size()) {
for (const ScriptLanguage::CodeCompletionOption &E : pp_options) {
@@ -399,6 +400,9 @@ void ShaderTextEditor::_code_complete_script(const String &p_code, List<ScriptLa
}
return;
}
+ for (const ScriptLanguage::CodeCompletionOption &E : pp_defines) {
+ r_options->push_back(E);
+ }
ShaderLanguage sl;
String calltip;
@@ -645,17 +649,17 @@ void ShaderEditor::_menu_option(int p_option) {
case EDIT_MOVE_LINE_DOWN: {
shader_editor->move_lines_down();
} break;
- case EDIT_INDENT_LEFT: {
+ case EDIT_INDENT: {
if (shader.is_null()) {
return;
}
- shader_editor->get_text_editor()->unindent_lines();
+ shader_editor->get_text_editor()->indent_lines();
} break;
- case EDIT_INDENT_RIGHT: {
+ case EDIT_UNINDENT: {
if (shader.is_null()) {
return;
}
- shader_editor->get_text_editor()->indent_lines();
+ shader_editor->get_text_editor()->unindent_lines();
} break;
case EDIT_DELETE_LINE: {
shader_editor->delete_lines();
@@ -1035,8 +1039,8 @@ void ShaderEditor::_make_context_menu(bool p_selection, Vector2 p_position) {
context_menu->add_shortcut(ED_GET_SHORTCUT("ui_redo"), EDIT_REDO);
context_menu->add_separator();
- context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent_left"), EDIT_INDENT_LEFT);
- context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent_right"), EDIT_INDENT_RIGHT);
+ context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent"), EDIT_INDENT);
+ context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/unindent"), EDIT_UNINDENT);
context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/toggle_comment"), EDIT_TOGGLE_COMMENT);
context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/toggle_bookmark"), BOOKMARK_TOGGLE);
@@ -1097,8 +1101,8 @@ ShaderEditor::ShaderEditor() {
edit_menu->get_popup()->add_separator();
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/move_up"), EDIT_MOVE_LINE_UP);
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/move_down"), EDIT_MOVE_LINE_DOWN);
- edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent_left"), EDIT_INDENT_LEFT);
- edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent_right"), EDIT_INDENT_RIGHT);
+ edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent"), EDIT_INDENT);
+ edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/unindent"), EDIT_UNINDENT);
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/delete_line"), EDIT_DELETE_LINE);
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/toggle_comment"), EDIT_TOGGLE_COMMENT);
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/duplicate_selection"), EDIT_DUPLICATE_SELECTION);
@@ -1366,6 +1370,7 @@ void ShaderEditorPlugin::_shader_selected(int p_index) {
edited_shaders[p_index].shader_editor->validate_script();
}
shader_tabs->set_current_tab(p_index);
+ shader_list->select(p_index);
}
void ShaderEditorPlugin::_shader_list_clicked(int p_item, Vector2 p_local_mouse_pos, MouseButton p_mouse_button_index) {
@@ -1375,11 +1380,10 @@ void ShaderEditorPlugin::_shader_list_clicked(int p_item, Vector2 p_local_mouse_
}
void ShaderEditorPlugin::_close_shader(int p_index) {
- int index = shader_tabs->get_current_tab();
- ERR_FAIL_INDEX(index, shader_tabs->get_tab_count());
- Control *c = shader_tabs->get_tab_control(index);
+ ERR_FAIL_INDEX(p_index, shader_tabs->get_tab_count());
+ Control *c = shader_tabs->get_tab_control(p_index);
memdelete(c);
- edited_shaders.remove_at(index);
+ edited_shaders.remove_at(p_index);
_update_shader_list();
EditorNode::get_singleton()->get_undo_redo()->clear_history(); // To prevent undo on deleted graphs.
}
diff --git a/editor/plugins/shader_editor_plugin.h b/editor/plugins/shader_editor_plugin.h
index f48b2fc70e..5188639bfc 100644
--- a/editor/plugins/shader_editor_plugin.h
+++ b/editor/plugins/shader_editor_plugin.h
@@ -127,8 +127,8 @@ class ShaderEditor : public MarginContainer {
EDIT_SELECT_ALL,
EDIT_MOVE_LINE_UP,
EDIT_MOVE_LINE_DOWN,
- EDIT_INDENT_LEFT,
- EDIT_INDENT_RIGHT,
+ EDIT_INDENT,
+ EDIT_UNINDENT,
EDIT_DELETE_LINE,
EDIT_DUPLICATE_SELECTION,
EDIT_TOGGLE_COMMENT,
diff --git a/editor/plugins/text_editor.cpp b/editor/plugins/text_editor.cpp
index 76332b2d10..20809763d0 100644
--- a/editor/plugins/text_editor.cpp
+++ b/editor/plugins/text_editor.cpp
@@ -325,12 +325,12 @@ void TextEditor::_edit_option(int p_op) {
case EDIT_MOVE_LINE_DOWN: {
code_editor->move_lines_down();
} break;
- case EDIT_INDENT_LEFT: {
- tx->unindent_lines();
- } break;
- case EDIT_INDENT_RIGHT: {
+ case EDIT_INDENT: {
tx->indent_lines();
} break;
+ case EDIT_UNINDENT: {
+ tx->unindent_lines();
+ } break;
case EDIT_DELETE_LINE: {
code_editor->delete_lines();
} break;
@@ -493,8 +493,8 @@ void TextEditor::_make_context_menu(bool p_selection, bool p_can_fold, bool p_is
context_menu->add_shortcut(ED_GET_SHORTCUT("ui_undo"), EDIT_UNDO);
context_menu->add_shortcut(ED_GET_SHORTCUT("ui_redo"), EDIT_REDO);
context_menu->add_separator();
- context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent_left"), EDIT_INDENT_LEFT);
- context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent_right"), EDIT_INDENT_RIGHT);
+ context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent"), EDIT_INDENT);
+ context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/unindent"), EDIT_UNINDENT);
context_menu->add_shortcut(ED_GET_SHORTCUT("script_text_editor/toggle_bookmark"), BOOKMARK_TOGGLE);
if (p_selection) {
@@ -574,8 +574,8 @@ TextEditor::TextEditor() {
edit_menu->get_popup()->add_separator();
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/move_up"), EDIT_MOVE_LINE_UP);
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/move_down"), EDIT_MOVE_LINE_DOWN);
- edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent_left"), EDIT_INDENT_LEFT);
- edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent_right"), EDIT_INDENT_RIGHT);
+ edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/indent"), EDIT_INDENT);
+ edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/unindent"), EDIT_UNINDENT);
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/delete_line"), EDIT_DELETE_LINE);
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/toggle_fold_line"), EDIT_TOGGLE_FOLD_LINE);
edit_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_text_editor/fold_all_lines"), EDIT_FOLD_ALL_LINES);
diff --git a/editor/plugins/text_editor.h b/editor/plugins/text_editor.h
index 15f7c45653..9ee6a39b2e 100644
--- a/editor/plugins/text_editor.h
+++ b/editor/plugins/text_editor.h
@@ -63,8 +63,8 @@ private:
EDIT_CONVERT_INDENT_TO_TABS,
EDIT_MOVE_LINE_UP,
EDIT_MOVE_LINE_DOWN,
- EDIT_INDENT_RIGHT,
- EDIT_INDENT_LEFT,
+ EDIT_INDENT,
+ EDIT_UNINDENT,
EDIT_DELETE_LINE,
EDIT_DUPLICATE_SELECTION,
EDIT_TO_UPPERCASE,
diff --git a/editor/plugins/texture_3d_editor_plugin.cpp b/editor/plugins/texture_3d_editor_plugin.cpp
index 3ea62184c6..4b2f28658a 100644
--- a/editor/plugins/texture_3d_editor_plugin.cpp
+++ b/editor/plugins/texture_3d_editor_plugin.cpp
@@ -138,10 +138,6 @@ void Texture3DEditor::edit(Ref<Texture3D> p_texture) {
}
}
-void Texture3DEditor::_bind_methods() {
- ClassDB::bind_method(D_METHOD("_layer_changed"), &Texture3DEditor::_layer_changed);
-}
-
Texture3DEditor::Texture3DEditor() {
set_texture_repeat(TextureRepeat::TEXTURE_REPEAT_ENABLED);
set_custom_minimum_size(Size2(1, 150));
@@ -173,7 +169,7 @@ Texture3DEditor::Texture3DEditor() {
info->add_theme_constant_override("shadow_offset_y", 2);
setting = false;
- layer->connect("value_changed", Callable(this, "_layer_changed"));
+ layer->connect("value_changed", callable_mp(this, &Texture3DEditor::_layer_changed));
}
Texture3DEditor::~Texture3DEditor() {
diff --git a/editor/plugins/texture_3d_editor_plugin.h b/editor/plugins/texture_3d_editor_plugin.h
index 357bdb0845..7795c83c8a 100644
--- a/editor/plugins/texture_3d_editor_plugin.h
+++ b/editor/plugins/texture_3d_editor_plugin.h
@@ -66,8 +66,6 @@ class Texture3DEditor : public Control {
protected:
void _notification(int p_what);
- static void _bind_methods();
-
public:
void edit(Ref<Texture3D> p_texture);
Texture3DEditor();
diff --git a/editor/plugins/texture_layered_editor_plugin.cpp b/editor/plugins/texture_layered_editor_plugin.cpp
index dd8633360e..b0a174c1bc 100644
--- a/editor/plugins/texture_layered_editor_plugin.cpp
+++ b/editor/plugins/texture_layered_editor_plugin.cpp
@@ -214,10 +214,6 @@ void TextureLayeredEditor::edit(Ref<TextureLayered> p_texture) {
}
}
-void TextureLayeredEditor::_bind_methods() {
- ClassDB::bind_method(D_METHOD("_layer_changed"), &TextureLayeredEditor::_layer_changed);
-}
-
TextureLayeredEditor::TextureLayeredEditor() {
set_texture_repeat(TextureRepeat::TEXTURE_REPEAT_ENABLED);
set_custom_minimum_size(Size2(1, 150));
@@ -249,7 +245,7 @@ TextureLayeredEditor::TextureLayeredEditor() {
info->add_theme_constant_override("shadow_offset_y", 2);
setting = false;
- layer->connect("value_changed", Callable(this, "_layer_changed"));
+ layer->connect("value_changed", callable_mp(this, &TextureLayeredEditor::_layer_changed));
}
TextureLayeredEditor::~TextureLayeredEditor() {
diff --git a/editor/plugins/texture_layered_editor_plugin.h b/editor/plugins/texture_layered_editor_plugin.h
index f49aa83eb2..f4dbc104c8 100644
--- a/editor/plugins/texture_layered_editor_plugin.h
+++ b/editor/plugins/texture_layered_editor_plugin.h
@@ -68,7 +68,6 @@ class TextureLayeredEditor : public Control {
protected:
void _notification(int p_what);
virtual void gui_input(const Ref<InputEvent> &p_event) override;
- static void _bind_methods();
public:
void edit(Ref<TextureLayered> p_texture);
diff --git a/editor/plugins/theme_editor_plugin.cpp b/editor/plugins/theme_editor_plugin.cpp
index 1fb9b42449..e2ed8e44c4 100644
--- a/editor/plugins/theme_editor_plugin.cpp
+++ b/editor/plugins/theme_editor_plugin.cpp
@@ -134,7 +134,7 @@ void ThemeItemImportTree::_update_items_tree() {
data_type_node->set_checked(IMPORT_ITEM_DATA, false);
data_type_node->set_editable(IMPORT_ITEM_DATA, true);
- List<TreeItem *> *item_list;
+ List<TreeItem *> *item_list = nullptr;
switch (dt) {
case Theme::DATA_TYPE_COLOR:
@@ -398,7 +398,7 @@ void ThemeItemImportTree::_restore_selected_item(TreeItem *p_tree_item) {
void ThemeItemImportTree::_update_total_selected(Theme::DataType p_data_type) {
ERR_FAIL_INDEX_MSG(p_data_type, Theme::DATA_TYPE_MAX, "Theme item data type is out of bounds.");
- Label *total_selected_items_label;
+ Label *total_selected_items_label = nullptr;
switch (p_data_type) {
case Theme::DATA_TYPE_COLOR:
total_selected_items_label = total_selected_colors_label;
@@ -562,7 +562,7 @@ void ThemeItemImportTree::_select_all_data_type_pressed(int p_data_type) {
}
Theme::DataType data_type = (Theme::DataType)p_data_type;
- List<TreeItem *> *item_list;
+ List<TreeItem *> *item_list = nullptr;
switch (data_type) {
case Theme::DATA_TYPE_COLOR:
@@ -617,7 +617,7 @@ void ThemeItemImportTree::_select_full_data_type_pressed(int p_data_type) {
}
Theme::DataType data_type = (Theme::DataType)p_data_type;
- List<TreeItem *> *item_list;
+ List<TreeItem *> *item_list = nullptr;
switch (data_type) {
case Theme::DATA_TYPE_COLOR:
@@ -674,7 +674,7 @@ void ThemeItemImportTree::_deselect_all_data_type_pressed(int p_data_type) {
}
Theme::DataType data_type = (Theme::DataType)p_data_type;
- List<TreeItem *> *item_list;
+ List<TreeItem *> *item_list = nullptr;
switch (data_type) {
case Theme::DATA_TYPE_COLOR:
@@ -982,17 +982,17 @@ ThemeItemImportTree::ThemeItemImportTree() {
for (int i = 0; i < Theme::DATA_TYPE_MAX; i++) {
Theme::DataType dt = (Theme::DataType)i;
- TextureRect *select_items_icon;
- Label *select_items_label;
- Button *deselect_all_items_button;
- Button *select_all_items_button;
- Button *select_full_items_button;
- Label *total_selected_items_label;
-
- String items_title = "";
- String select_all_items_tooltip = "";
- String select_full_items_tooltip = "";
- String deselect_all_items_tooltip = "";
+ TextureRect *select_items_icon = nullptr;
+ Label *select_items_label = nullptr;
+ Button *deselect_all_items_button = nullptr;
+ Button *select_all_items_button = nullptr;
+ Button *select_full_items_button = nullptr;
+ Label *total_selected_items_label = nullptr;
+
+ String items_title;
+ String select_all_items_tooltip;
+ String select_full_items_tooltip;
+ String deselect_all_items_tooltip;
switch (dt) {
case Theme::DATA_TYPE_COLOR:
diff --git a/editor/plugins/tiles/tile_atlas_view.cpp b/editor/plugins/tiles/tile_atlas_view.cpp
index d9291503cb..c823487279 100644
--- a/editor/plugins/tiles/tile_atlas_view.cpp
+++ b/editor/plugins/tiles/tile_atlas_view.cpp
@@ -403,6 +403,9 @@ void TileAtlasView::set_atlas_source(TileSet *p_tile_set, TileSetAtlasSource *p_
// Update everything.
_update_zoom_and_panning();
+ base_tiles_drawing_root->set_size(_compute_base_tiles_control_size());
+ alternative_tiles_drawing_root->set_size(_compute_alternative_tiles_control_size());
+
// Update.
base_tiles_draw->queue_redraw();
base_tiles_texture_grid->queue_redraw();
@@ -601,7 +604,6 @@ TileAtlasView::TileAtlasView() {
base_tiles_drawing_root = memnew(Control);
base_tiles_drawing_root->set_mouse_filter(Control::MOUSE_FILTER_IGNORE);
- base_tiles_drawing_root->set_anchors_and_offsets_preset(Control::PRESET_FULL_RECT);
base_tiles_drawing_root->set_texture_filter(TEXTURE_FILTER_NEAREST);
base_tiles_root_control->add_child(base_tiles_drawing_root);
@@ -645,7 +647,6 @@ TileAtlasView::TileAtlasView() {
alternative_tiles_drawing_root = memnew(Control);
alternative_tiles_drawing_root->set_mouse_filter(Control::MOUSE_FILTER_IGNORE);
- alternative_tiles_drawing_root->set_anchors_and_offsets_preset(Control::PRESET_FULL_RECT);
alternative_tiles_drawing_root->set_texture_filter(TEXTURE_FILTER_NEAREST);
alternative_tiles_root_control->add_child(alternative_tiles_drawing_root);
diff --git a/editor/plugins/tiles/tile_map_editor.cpp b/editor/plugins/tiles/tile_map_editor.cpp
index 79230891f1..395c9b0248 100644
--- a/editor/plugins/tiles/tile_map_editor.cpp
+++ b/editor/plugins/tiles/tile_map_editor.cpp
@@ -1735,7 +1735,6 @@ void TileMapEditorTilesPlugin::_tile_atlas_control_mouse_exited() {
hovered_tile.source_id = TileSet::INVALID_SOURCE;
hovered_tile.set_atlas_coords(TileSetSource::INVALID_ATLAS_COORDS);
hovered_tile.alternative_tile = TileSetSource::INVALID_TILE_ALTERNATIVE;
- tile_set_dragging_selection = false;
tile_atlas_control->queue_redraw();
}
@@ -1894,7 +1893,6 @@ void TileMapEditorTilesPlugin::_tile_alternatives_control_mouse_exited() {
hovered_tile.source_id = TileSet::INVALID_SOURCE;
hovered_tile.set_atlas_coords(TileSetSource::INVALID_ATLAS_COORDS);
hovered_tile.alternative_tile = TileSetSource::INVALID_TILE_ALTERNATIVE;
- tile_set_dragging_selection = false;
alternative_tiles_control->queue_redraw();
}
diff --git a/editor/plugins/tiles/tile_set_atlas_source_editor.cpp b/editor/plugins/tiles/tile_set_atlas_source_editor.cpp
index 228e475083..45b2a5eb14 100644
--- a/editor/plugins/tiles/tile_set_atlas_source_editor.cpp
+++ b/editor/plugins/tiles/tile_set_atlas_source_editor.cpp
@@ -401,7 +401,7 @@ void TileSetAtlasSourceEditor::AtlasTileProxyObject::_get_property_list(List<Pro
if (all_alternatve_id_zero) {
p_list->push_back(PropertyInfo(Variant::NIL, "Animation", PROPERTY_HINT_NONE, "animation_", PROPERTY_USAGE_GROUP));
p_list->push_back(PropertyInfo(Variant::INT, "animation_columns", PROPERTY_HINT_NONE, ""));
- p_list->push_back(PropertyInfo(Variant::VECTOR2I, "animation_separation", PROPERTY_HINT_NONE, "suffix:px"));
+ p_list->push_back(PropertyInfo(Variant::VECTOR2I, "animation_separation", PROPERTY_HINT_NONE, ""));
p_list->push_back(PropertyInfo(Variant::FLOAT, "animation_speed", PROPERTY_HINT_NONE, ""));
p_list->push_back(PropertyInfo(Variant::INT, "animation_frames_count", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_EDITOR | PROPERTY_USAGE_ARRAY, "Frames,animation_frame_"));
// Not optimal, but returns value for the first tile. This is similar to what MultiNodeEdit does.
diff --git a/editor/plugins/visual_shader_editor_plugin.cpp b/editor/plugins/visual_shader_editor_plugin.cpp
index ee8148f00a..40993ea168 100644
--- a/editor/plugins/visual_shader_editor_plugin.cpp
+++ b/editor/plugins/visual_shader_editor_plugin.cpp
@@ -1358,7 +1358,7 @@ void VisualShaderEditor::_update_options_menu() {
Color unsupported_color = get_theme_color(SNAME("error_color"), SNAME("Editor"));
Color supported_color = get_theme_color(SNAME("warning_color"), SNAME("Editor"));
- static bool low_driver = ProjectSettings::get_singleton()->get("rendering/driver/driver_name") == "opengl3";
+ static bool low_driver = ProjectSettings::get_singleton()->get("rendering/renderer/rendering_method") == "gl_compatibility";
HashMap<String, TreeItem *> folders;
@@ -5246,6 +5246,9 @@ VisualShaderEditor::VisualShaderEditor() {
add_options.push_back(AddOption("Light", "Input/Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light", "LIGHT"), { "light" }, VisualShaderNode::PORT_TYPE_VECTOR_4D, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM));
add_options.push_back(AddOption("LightColor", "Input/Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_color", "LIGHT_COLOR"), { "light_color" }, VisualShaderNode::PORT_TYPE_VECTOR_4D, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM));
add_options.push_back(AddOption("LightPosition", "Input/Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_position", "LIGHT_POSITION"), { "light_position" }, VisualShaderNode::PORT_TYPE_VECTOR_3D, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM));
+ add_options.push_back(AddOption("LightDirection", "Input/Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_direction", "LIGHT_DIRECTION"), { "light_direction" }, VisualShaderNode::PORT_TYPE_VECTOR_3D, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM));
+ add_options.push_back(AddOption("LightIsDirectional", "Input/Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_is_directional", "LIGHT_IS_DIRECTIONAL"), { "light_is_directional" }, VisualShaderNode::PORT_TYPE_BOOLEAN, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM));
+ add_options.push_back(AddOption("LightEnergy", "Input/Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "light_energy", "LIGHT_ENERGY"), { "light_energy" }, VisualShaderNode::PORT_TYPE_SCALAR, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM));
add_options.push_back(AddOption("LightVertex", "Input/Light", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "light_vertex", "LIGHT_VERTEX"), { "light_vertex" }, VisualShaderNode::PORT_TYPE_VECTOR_3D, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM));
add_options.push_back(AddOption("Normal", "Input/Light", "VisualShaderNodeInput", vformat(input_param_for_light_shader_mode, "normal", "NORMAL"), { "normal" }, VisualShaderNode::PORT_TYPE_VECTOR_3D, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM));
add_options.push_back(AddOption("PointCoord", "Input/Light", "VisualShaderNodeInput", vformat(input_param_for_fragment_and_light_shader_modes, "point_coord", "POINT_COORD"), { "point_coord" }, VisualShaderNode::PORT_TYPE_VECTOR_2D, TYPE_FLAGS_LIGHT, Shader::MODE_CANVAS_ITEM));
diff --git a/editor/project_converter_3_to_4.cpp b/editor/project_converter_3_to_4.cpp
index 39b30b31fb..0c0151d1a5 100644
--- a/editor/project_converter_3_to_4.cpp
+++ b/editor/project_converter_3_to_4.cpp
@@ -38,6 +38,7 @@ const int ERROR_CODE = 77;
#include "modules/regex/regex.h"
+#include "core/io/dir_access.h"
#include "core/os/time.h"
#include "core/templates/hash_map.h"
#include "core/templates/list.h"
@@ -216,6 +217,7 @@ static const char *gdscript_function_renames[][2] = {
{ "_get_configuration_warning", "_get_configuration_warnings" }, // Node
{ "_set_current", "set_current" }, // Camera2D
{ "_set_editor_description", "set_editor_description" }, // Node
+ { "_set_playing", "set_playing" }, // AnimatedSprite3D
{ "_toplevel_raise_self", "_top_level_raise_self" }, // CanvasItem
{ "_update_wrap_at", "_update_wrap_at_column" }, // TextEdit
{ "add_animation", "add_animation_library" }, // AnimationPlayer
@@ -230,6 +232,7 @@ static const char *gdscript_function_renames[][2] = {
{ "add_scene_import_plugin", "add_scene_format_importer_plugin" }, //EditorPlugin
{ "add_stylebox_override", "add_theme_stylebox_override" }, // Control
{ "add_torque", "apply_torque" }, //RigidBody2D
+ { "agent_set_neighbor_dist", "agent_set_neighbor_distance" }, // NavigationServer2D, NavigationServer3D
{ "apply_changes", "_apply_changes" }, // EditorPlugin
{ "body_add_force", "body_apply_force" }, // PhysicsServer2D
{ "body_add_torque", "body_apply_torque" }, // PhysicsServer2D
@@ -280,7 +283,7 @@ static const char *gdscript_function_renames[][2] = {
{ "get_applied_torque", "get_constant_torque" }, //RigidBody2D
{ "get_audio_bus", "get_audio_bus_name" }, // Area3D
{ "get_bound_child_nodes_to_bone", "get_bone_children" }, // Skeleton3D
- { "get_camera", "get_camera_3d" }, // Viewport -> this is also convertable to get_camera_2d, broke GLTFNode
+ { "get_camera", "get_camera_3d" }, // Viewport -> this is also convertible to get_camera_2d, broke GLTFNode
{ "get_cancel", "get_cancel_button" }, // ConfirmationDialog
{ "get_caption", "_get_caption" }, // AnimationNode
{ "get_cast_to", "get_target_position" }, // RayCast2D, RayCast3D
@@ -331,6 +334,7 @@ static const char *gdscript_function_renames[][2] = {
{ "get_metakey", "is_meta_pressed" }, // InputEventWithModifiers
{ "get_mid_height", "get_height" }, // CapsuleMesh
{ "get_motion_remainder", "get_remainder" }, // PhysicsTestMotionResult2D
+ { "get_neighbor_dist", "get_neighbor_distance" }, // NavigationAgent2D, NavigationAgent3D
{ "get_network_connected_peers", "get_peers" }, // Multiplayer API
{ "get_network_master", "get_multiplayer_authority" }, // Node
{ "get_network_peer", "get_multiplayer_peer" }, // Multiplayer API
@@ -418,6 +422,7 @@ static const char *gdscript_function_renames[][2] = {
{ "is_normalmap", "is_normal_map" }, // NoiseTexture
{ "is_refusing_new_network_connections", "is_refusing_new_connections" }, // Multiplayer API
{ "is_region", "is_region_enabled" }, // Sprite2D
+ { "is_rotating", "is_ignoring_rotation" }, // Camera2D
{ "is_scancode_unicode", "is_keycode_unicode" }, // OS
{ "is_selectable_when_hidden", "_is_selectable_when_hidden" }, // EditorNode3DGizmoPlugin
{ "is_set_as_toplevel", "is_set_as_top_level" }, // CanvasItem
@@ -510,6 +515,7 @@ static const char *gdscript_function_renames[][2] = {
{ "set_max_atlas_size", "set_max_texture_size" }, // LightmapGI
{ "set_metakey", "set_meta_pressed" }, // InputEventWithModifiers
{ "set_mid_height", "set_height" }, // CapsuleMesh
+ { "set_neighbor_dist", "set_neighbor_distance" }, // NavigationAgent2D, NavigationAgent3D
{ "set_network_master", "set_multiplayer_authority" }, // Node
{ "set_network_peer", "set_multiplayer_peer" }, // Multiplayer API
{ "set_oneshot", "set_one_shot" }, // AnimatedTexture
@@ -650,6 +656,7 @@ static const char *csharp_function_renames[][2] = {
{ "_GetConfigurationWarning", "_GetConfigurationWarnings" }, // Node
{ "_SetCurrent", "SetCurrent" }, // Camera2D
{ "_SetEditorDescription", "SetEditorDescription" }, // Node
+ { "_SetPlaying", "SetPlaying" }, // AnimatedSprite3D
{ "_ToplevelRaiseSelf", "_TopLevelRaiseSelf" }, // CanvasItem
{ "_UpdateWrapAt", "_UpdateWrapAtColumn" }, // TextEdit
{ "AddAnimation", "AddAnimationLibrary" }, // AnimationPlayer
@@ -664,6 +671,7 @@ static const char *csharp_function_renames[][2] = {
{ "AddSceneImportPlugin", "AddSceneFormatImporterPlugin" }, //EditorPlugin
{ "AddStyleboxOverride", "AddThemeStyleboxOverride" }, // Control
{ "AddTorque", "AddConstantTorque" }, //RigidBody2D
+ { "AgentSetNeighborDist", "AgentSetNeighborDistance" }, // NavigationServer2D, NavigationServer3D
{ "BindChildNodeToBone", "SetBoneChildren" }, // Skeleton3D
{ "BumpmapToNormalmap", "BumpMapToNormalMap" }, // Image
{ "CanBeHidden", "_CanBeHidden" }, // EditorNode3DGizmoPlugin
@@ -708,7 +716,7 @@ static const char *csharp_function_renames[][2] = {
{ "GetAppliedTorque", "GetConstantTorque" }, //RigidBody2D
{ "GetAudioBus", "GetAudioBusName" }, // Area3D
{ "GetBoundChildNodesToBone", "GetBoneChildren" }, // Skeleton3D
- { "GetCamera", "GetCamera3d" }, // Viewport -> this is also convertable to getCamera2d, broke GLTFNode
+ { "GetCamera", "GetCamera3d" }, // Viewport -> this is also convertible to getCamera2d, broke GLTFNode
{ "GetCancel", "GetCancelButton" }, // ConfirmationDialog
{ "GetCaption", "_GetCaption" }, // AnimationNode
{ "GetCastTo", "GetTargetPosition" }, // RayCast2D, RayCast3D
@@ -757,6 +765,7 @@ static const char *csharp_function_renames[][2] = {
{ "GetMetakey", "IsMetaPressed" }, // InputEventWithModifiers
{ "GetMidHeight", "GetHeight" }, // CapsuleMesh
{ "GetMotionRemainder", "GetRemainder" }, // PhysicsTestMotionResult2D
+ { "GetNeighborDist", "GetNeighborDistance" }, // NavigationAgent2D, NavigationAgent3D
{ "GetNetworkConnectedPeers", "GetPeers" }, // Multiplayer API
{ "GetNetworkMaster", "GetMultiplayerAuthority" }, // Node
{ "GetNetworkPeer", "GetMultiplayerPeer" }, // Multiplayer API
@@ -840,6 +849,7 @@ static const char *csharp_function_renames[][2] = {
{ "IsNormalmap", "IsNormalMap" }, // NoiseTexture
{ "IsRefusingNewNetworkConnections", "IsRefusingNewConnections" }, // Multiplayer API
{ "IsRegion", "IsRegionEnabled" }, // Sprite2D
+ { "IsRotating", "IsIgnoringRotation" }, // Camera2D
{ "IsScancodeUnicode", "IsKeycodeUnicode" }, // OS
{ "IsSelectableWhenHidden", "_IsSelectableWhenHidden" }, // EditorNode3DGizmoPlugin
{ "IsSetAsToplevel", "IsSetAsTopLevel" }, // CanvasItem
@@ -926,6 +936,7 @@ static const char *csharp_function_renames[][2] = {
{ "SetMaxAtlasSize", "SetMaxTextureSize" }, // LightmapGI
{ "SetMetakey", "SetMetaPressed" }, // InputEventWithModifiers
{ "SetMidHeight", "SetHeight" }, // CapsuleMesh
+ { "SetNeighborDist", "SetNeighborDistance" }, // NavigationAgent2D, NavigationAgent3D
{ "SetNetworkMaster", "SetMultiplayerAuthority" }, // Node
{ "SetNetworkPeer", "SetMultiplayerPeer" }, // Multiplayer API
{ "SetOneshot", "SetOneShot" }, // AnimatedTexture
@@ -1061,6 +1072,7 @@ static const char *gdscript_properties_renames[][2] = {
{ "focus_neighbour_left", "focus_neighbor_left" }, // Control
{ "focus_neighbour_right", "focus_neighbor_right" }, // Control
{ "focus_neighbour_top", "focus_neighbor_top" }, // Control
+ { "follow_viewport_enable", "follow_viewport_enabled" }, // CanvasItem
{ "file_icon_modulate", "file_icon_color" }, // Theme
{ "files_disabled", "file_disabled_color" }, // Theme
{ "folder_icon_modulate", "folder_icon_color" }, // Theme
@@ -1076,6 +1088,7 @@ static const char *gdscript_properties_renames[][2] = {
{ "margin_right", "offset_right" }, // Control broke NinePatchRect, StyleBox
{ "margin_top", "offset_top" }, // Control broke NinePatchRect, StyleBox
{ "mid_height", "height" }, // CapsuleMesh
+ { "neighbor_dist", "neighbor_distance" }, // NavigationAgent2D, NavigationAgent3D
{ "offset_h", "drag_horizontal_offset" }, // Camera2D
{ "offset_v", "drag_vertical_offset" }, // Camera2D
{ "off", "unchecked" }, // Theme
@@ -1164,6 +1177,7 @@ static const char *csharp_properties_renames[][2] = {
{ "FocusNeighbourLeft", "FocusNeighborLeft" }, // Control
{ "FocusNeighbourRight", "FocusNeighborRight" }, // Control
{ "FocusNeighbourTop", "FocusNeighborTop" }, // Control
+ { "FollowViewportEnable", "FollowViewportEnabled" }, // CanvasItem
{ "GlobalRateScale", "PlaybackSpeedScale" }, // AudioServer
{ "GravityDistanceScale", "GravityPointDistanceScale" }, // Area2D
{ "GravityVec", "GravityDirection" }, // Area2D
@@ -1176,6 +1190,7 @@ static const char *csharp_properties_renames[][2] = {
{ "MarginRight", "OffsetRight" }, // Control broke NinePatchRect, StyleBox
{ "MarginTop", "OffsetTop" }, // Control broke NinePatchRect, StyleBox
{ "MidHeight", "Height" }, // CapsuleMesh
+ { "NeighborDist", "NeighborDistance" }, // NavigationAgent2D, NavigationAgent3D
{ "OffsetH", "DragHorizontalOffset" }, // Camera2D
{ "OffsetV", "DragVerticalOffset" }, // Camera2D
{ "Ofs", "Offset" }, // Theme
@@ -1713,6 +1728,7 @@ public:
RegEx reg_json_to = RegEx("\\bto_json\\b");
RegEx reg_json_parse = RegEx("([\t ]{0,})([^\n]+)parse_json\\(([^\n]+)");
RegEx reg_json_non_new = RegEx("([\t ]{0,})([^\n]+)JSON\\.parse\\(([^\n]+)");
+ RegEx reg_json_print = RegEx("\\bJSON\\b\\.print\\(");
RegEx reg_export = RegEx("export\\(([a-zA-Z0-9_]+)\\)[ ]+var[ ]+([a-zA-Z0-9_]+)");
RegEx reg_export_advanced = RegEx("export\\(([^)^\n]+)\\)[ ]+var[ ]+([a-zA-Z0-9_]+)([^\n]+)");
RegEx reg_setget_setget = RegEx("var[ ]+([a-zA-Z0-9_]+)([^\n]+)setget[ \t]+([a-zA-Z0-9_]+)[ \t]*,[ \t]*([a-zA-Z0-9_]+)");
@@ -2229,22 +2245,23 @@ Vector<String> ProjectConverter3To4::check_for_files() {
Vector<String> directories_to_check = Vector<String>();
directories_to_check.push_back("res://");
- core_bind::Directory dir = core_bind::Directory();
while (!directories_to_check.is_empty()) {
String path = directories_to_check.get(directories_to_check.size() - 1); // Is there any pop_back function?
- directories_to_check.resize(directories_to_check.size() - 1); // Remove last element.
- if (dir.open(path) == OK) {
- dir.set_include_hidden(true);
- dir.list_dir_begin();
- String current_dir = dir.get_current_dir();
- String file_name = dir.get_next();
+ directories_to_check.resize(directories_to_check.size() - 1); // Remove last element
+
+ Ref<DirAccess> dir = DirAccess::open(path);
+ if (dir.is_valid()) {
+ dir->set_include_hidden(true);
+ dir->list_dir_begin();
+ String current_dir = dir->get_current_dir();
+ String file_name = dir->_get_next();
while (file_name != "") {
if (file_name == ".git" || file_name == ".import" || file_name == ".godot") {
- file_name = dir.get_next();
+ file_name = dir->_get_next();
continue;
}
- if (dir.current_is_dir()) {
+ if (dir->current_is_dir()) {
directories_to_check.append(current_dir.path_join(file_name) + "/");
} else {
bool proper_extension = false;
@@ -2255,7 +2272,7 @@ Vector<String> ProjectConverter3To4::check_for_files() {
collected_files.append(current_dir.path_join(file_name));
}
}
- file_name = dir.get_next();
+ file_name = dir->_get_next();
}
} else {
print_verbose("Failed to open " + path);
@@ -2331,12 +2348,13 @@ bool ProjectConverter3To4::test_conversion(RegExContainer &reg_container) {
valid = valid && test_conversion_with_regex("[Master]", "The master and mastersync rpc behavior is not officially supported anymore. Try using another keyword or making custom logic using Multiplayer.GetRemoteSenderId()\n[RPC]", &ProjectConverter3To4::rename_csharp_attributes, "custom rename csharp", reg_container);
valid = valid && test_conversion_with_regex("[MasterSync]", "The master and mastersync rpc behavior is not officially supported anymore. Try using another keyword or making custom logic using Multiplayer.GetRemoteSenderId()\n[RPC(CallLocal = true)]", &ProjectConverter3To4::rename_csharp_attributes, "custom rename csharp", reg_container);
- valid = valid && test_conversion_gdscript_builtin("OS.window_fullscreen = Settings.fullscreen", "ProjectSettings.set(\"display/window/size/fullscreen\", Settings.fullscreen)", &ProjectConverter3To4::rename_gdscript_functions, "custom rename", reg_container, false);
- valid = valid && test_conversion_gdscript_builtin("OS.window_fullscreen = Settings.fullscreen", "ProjectSettings.set(\\\"display/window/size/fullscreen\\\", Settings.fullscreen)", &ProjectConverter3To4::rename_gdscript_functions, "custom rename", reg_container, true);
+ valid = valid && test_conversion_gdscript_builtin("OS.window_fullscreen = Settings.fullscreen", "if Settings.fullscreen:\n\tDisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_FULLSCREEN)\nelse:\n\tDisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_WINDOWED)", &ProjectConverter3To4::rename_gdscript_functions, "custom rename", reg_container, false);
valid = valid && test_conversion_gdscript_builtin("OS.get_window_safe_area()", "DisplayServer.get_display_safe_area()", &ProjectConverter3To4::rename_gdscript_functions, "custom rename", reg_container, false);
valid = valid && test_conversion_gdscript_builtin("\tvar aa = roman(r.move_and_slide( a, b, c, d, e, f )) # Roman", "\tr.set_velocity(a)\n\tr.set_up_direction(b)\n\tr.set_floor_stop_on_slope_enabled(c)\n\tr.set_max_slides(d)\n\tr.set_floor_max_angle(e)\n\t# TODOConverter40 infinite_inertia were removed in Godot 4.0 - previous value `f`\n\tr.move_and_slide()\n\tvar aa = roman(r.velocity) # Roman", &ProjectConverter3To4::rename_gdscript_functions, "custom rename", reg_container, false);
+ valid = valid && test_conversion_gdscript_builtin("\tmove_and_slide( a, b, c, d, e, f ) # Roman", "\tset_velocity(a)\n\tset_up_direction(b)\n\tset_floor_stop_on_slope_enabled(c)\n\tset_max_slides(d)\n\tset_floor_max_angle(e)\n\t# TODOConverter40 infinite_inertia were removed in Godot 4.0 - previous value `f`\n\tmove_and_slide() # Roman", &ProjectConverter3To4::rename_gdscript_functions, "custom rename", reg_container, false);
valid = valid && test_conversion_gdscript_builtin("\tvar aa = roman(r.move_and_slide_with_snap( a, g, b, c, d, e, f )) # Roman", "\tr.set_velocity(a)\n\t# TODOConverter40 looks that snap in Godot 4.0 is float, not vector like in Godot 3 - previous value `g`\n\tr.set_up_direction(b)\n\tr.set_floor_stop_on_slope_enabled(c)\n\tr.set_max_slides(d)\n\tr.set_floor_max_angle(e)\n\t# TODOConverter40 infinite_inertia were removed in Godot 4.0 - previous value `f`\n\tr.move_and_slide()\n\tvar aa = roman(r.velocity) # Roman", &ProjectConverter3To4::rename_gdscript_functions, "custom rename", reg_container, false);
+ valid = valid && test_conversion_gdscript_builtin("\tmove_and_slide_with_snap( a, g, b, c, d, e, f ) # Roman", "\tset_velocity(a)\n\t# TODOConverter40 looks that snap in Godot 4.0 is float, not vector like in Godot 3 - previous value `g`\n\tset_up_direction(b)\n\tset_floor_stop_on_slope_enabled(c)\n\tset_max_slides(d)\n\tset_floor_max_angle(e)\n\t# TODOConverter40 infinite_inertia were removed in Godot 4.0 - previous value `f`\n\tmove_and_slide() # Roman", &ProjectConverter3To4::rename_gdscript_functions, "custom rename", reg_container, false);
valid = valid && test_conversion_gdscript_builtin("list_dir_begin( a , b )", "list_dir_begin() # TODOGODOT4 fill missing arguments https://github.com/godotengine/godot/pull/40547", &ProjectConverter3To4::rename_gdscript_functions, "custom rename", reg_container, false);
valid = valid && test_conversion_gdscript_builtin("list_dir_begin( a )", "list_dir_begin() # TODOGODOT4 fill missing arguments https://github.com/godotengine/godot/pull/40547", &ProjectConverter3To4::rename_gdscript_functions, "custom rename", reg_container, false);
@@ -3043,7 +3061,7 @@ void ProjectConverter3To4::process_gdscript_line(String &line, const RegExContai
// -- \t.func() -> \tsuper.func() Object
if (line.contains("(") && line.contains(".")) {
- line = reg_container.reg_super.sub(line, "$1super.$2", true); // TODO, not sure if possible, but for now this broke String text e.g. "Choosen .gitignore" -> "Choosen super.gitignore"
+ line = reg_container.reg_super.sub(line, "$1super.$2", true); // TODO, not sure if possible, but for now this broke String text e.g. "Chosen .gitignore" -> "Chosen super.gitignore"
}
// -- JSON.parse(a) -> JSON.new().parse(a) etc. JSON
@@ -3059,6 +3077,10 @@ void ProjectConverter3To4::process_gdscript_line(String &line, const RegExContai
if (line.contains("parse_json")) {
line = reg_container.reg_json_parse.sub(line, "$1var test_json_conv = JSON.new()\n$1test_json_conv.parse($3\n$1$2test_json_conv.get_data()", true);
}
+ // -- JSON.print( -> JSON.stringify(
+ if (line.contains("JSON.print(")) {
+ line = reg_container.reg_json_print.sub(line, "JSON.stringify(", true);
+ }
// -- get_node(@ -> get_node( Node
if (line.contains("get_node")) {
@@ -3090,13 +3112,9 @@ void ProjectConverter3To4::process_gdscript_line(String &line, const RegExContai
line = reg_container.reg_setget_get.sub(line, "var $1$2:\n\tget:\n\t\treturn $1 # TODOConverter40 Copy here content of $3 \n\tset(mod_value):\n\t\tmod_value # TODOConverter40 Non existent set function", true);
}
- // OS.window_fullscreen = true -> ProjectSettings.set("display/window/size/fullscreen",true)
+ // OS.window_fullscreen = a -> if a: DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_FULLSCREEN) else: DisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_WINDOWED)
if (line.contains("window_fullscreen")) {
- if (builtin) {
- line = reg_container.reg_os_fullscreen.sub(line, "ProjectSettings.set(\\\"display/window/size/fullscreen\\\", $1)", true);
- } else {
- line = reg_container.reg_os_fullscreen.sub(line, "ProjectSettings.set(\"display/window/size/fullscreen\", $1)", true);
- }
+ line = reg_container.reg_os_fullscreen.sub(line, "if $1:\n\tDisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_FULLSCREEN)\nelse:\n\tDisplayServer.window_set_mode(DisplayServer.WINDOW_MODE_WINDOWED)", true);
}
// Instantiate
@@ -3144,8 +3162,13 @@ void ProjectConverter3To4::process_gdscript_line(String &line, const RegExContai
line_new += starting_space + "# TODOConverter40 infinite_inertia were removed in Godot 4.0 - previous value `" + parts[5] + "`\n";
}
- line_new += starting_space + base_obj + "move_and_slide()\n";
- line = line_new + line.substr(0, start) + "velocity" + line.substr(end + start);
+ line_new += starting_space + base_obj + "move_and_slide()";
+
+ if (!line.begins_with(starting_space + "move_and_slide")) {
+ line = line_new + "\n" + line.substr(0, start) + "velocity" + line.substr(end + start);
+ } else {
+ line = line_new + line.substr(end + start);
+ }
}
}
}
@@ -3195,8 +3218,13 @@ void ProjectConverter3To4::process_gdscript_line(String &line, const RegExContai
line_new += starting_space + "# TODOConverter40 infinite_inertia were removed in Godot 4.0 - previous value `" + parts[6] + "`\n";
}
- line_new += starting_space + base_obj + "move_and_slide()\n";
- line = line_new + line.substr(0, start) + "velocity" + line.substr(end + start); // move_and_slide used to return velocity
+ line_new += starting_space + base_obj + "move_and_slide()";
+
+ if (!line.begins_with(starting_space + "move_and_slide_with_snap")) {
+ line = line_new + "\n" + line.substr(0, start) + "velocity" + line.substr(end + start);
+ } else {
+ line = line_new + line.substr(end + start);
+ }
}
}
}
@@ -3490,6 +3518,20 @@ void ProjectConverter3To4::process_gdscript_line(String &line, const RegExContai
}
}
}
+
+ // set_rotating(true) -> set_ignore_rotation(false)
+ if (line.contains("set_rotating(")) {
+ int start = line.find("set_rotating(");
+ int end = get_end_parenthesis(line.substr(start)) + 1;
+ if (end > -1) {
+ Vector<String> parts = parse_arguments(line.substr(start, end));
+ if (parts.size() == 1) {
+ String opposite = parts[0] == "true" ? "false" : "true";
+ line = line.substr(0, start) + "set_ignore_rotation(" + opposite + ")";
+ }
+ }
+ }
+
// OS.get_window_safe_area() -> DisplayServer.get_display_safe_area()
if (line.contains("OS.get_window_safe_area(")) {
int start = line.find("OS.get_window_safe_area(");
@@ -3537,6 +3579,29 @@ void ProjectConverter3To4::process_gdscript_line(String &line, const RegExContai
}
}
+ // rotating = true -> ignore_rotation = false # reversed "rotating" for Camera2D
+ if (line.contains("rotating")) {
+ int start = line.find("rotating");
+ bool foundNextEqual = false;
+ String line_to_check = line.substr(start + String("rotating").length());
+ String assigned_value;
+ for (int current_index = 0; line_to_check.length() > current_index; current_index++) {
+ char32_t chr = line_to_check.get(current_index);
+ if (chr == '\t' || chr == ' ') {
+ continue;
+ } else if (chr == '=') {
+ foundNextEqual = true;
+ assigned_value = line.right(current_index).strip_edges();
+ assigned_value = assigned_value == "true" ? "false" : "true";
+ } else {
+ break;
+ }
+ }
+ if (foundNextEqual) {
+ line = line.substr(0, start) + "ignore_rotation =" + assigned_value + " # reversed \"rotating\" for Camera2D";
+ }
+ }
+
// OS -> Time functions
if (line.contains("OS.get_ticks_msec")) {
line = line.replace("OS.get_ticks_msec", "Time.get_ticks_msec");
@@ -3547,6 +3612,9 @@ void ProjectConverter3To4::process_gdscript_line(String &line, const RegExContai
if (line.contains("OS.get_unix_time")) {
line = line.replace("OS.get_unix_time", "Time.get_unix_time_from_system");
}
+ if (line.contains("OS.get_datetime")) {
+ line = line.replace("OS.get_datetime", "Time.get_datetime_dict_from_system");
+ }
}
void ProjectConverter3To4::process_csharp_line(String &line, const RegExContainer &reg_container) {
@@ -3950,6 +4018,8 @@ String ProjectConverter3To4::collect_string_from_vector(Vector<String> &vector)
#else // No RegEx.
+ProjectConverter3To4::ProjectConverter3To4(int _p_maximum_file_size_kb, int _p_maximum_line_length) {}
+
int ProjectConverter3To4::convert() {
ERR_FAIL_V_MSG(ERROR_CODE, "Can't run converter for Godot 3.x projects, because RegEx module is disabled.");
}
diff --git a/editor/project_converter_3_to_4.h b/editor/project_converter_3_to_4.h
index 2cecb9da79..d03e645ac7 100644
--- a/editor/project_converter_3_to_4.h
+++ b/editor/project_converter_3_to_4.h
@@ -31,7 +31,6 @@
#ifndef PROJECT_CONVERTER_3_TO_4_H
#define PROJECT_CONVERTER_3_TO_4_H
-#include "core/core_bind.h"
#include "core/io/file_access.h"
#include "core/object/ref_counted.h"
#include "core/string/ustring.h"
diff --git a/editor/project_manager.cpp b/editor/project_manager.cpp
index 69a2670418..673da8872d 100644
--- a/editor/project_manager.cpp
+++ b/editor/project_manager.cpp
@@ -92,9 +92,9 @@ private:
Container *name_container;
Container *path_container;
Container *install_path_container;
- Container *rasterizer_container;
+ Container *renderer_container;
HBoxContainer *default_files_container;
- Ref<ButtonGroup> rasterizer_button_group;
+ Ref<ButtonGroup> renderer_button_group;
Label *msg;
LineEdit *project_path;
LineEdit *project_name;
@@ -473,16 +473,19 @@ private:
}
PackedStringArray project_features = ProjectSettings::get_required_features();
ProjectSettings::CustomMap initial_settings;
+
// Be sure to change this code if/when renderers are changed.
- int renderer_type = rasterizer_button_group->get_pressed_button()->get_meta(SNAME("driver_name"));
- initial_settings["rendering/vulkan/rendering/back_end"] = renderer_type;
- if (renderer_type == 0) {
- project_features.push_back("Vulkan Clustered");
- } else if (renderer_type == 1) {
- project_features.push_back("Vulkan Mobile");
+ String renderer_type = renderer_button_group->get_pressed_button()->get_meta(SNAME("rendering_method"));
+ initial_settings["rendering/renderer/rendering_method"] = renderer_type;
+
+ if (renderer_type == "forward_plus") {
+ project_features.push_back("Forward Plus");
+ } else if (renderer_type == "mobile") {
+ project_features.push_back("Mobile");
} else {
WARN_PRINT("Unknown renderer type. Please report this as a bug on GitHub.");
}
+
project_features.sort();
initial_settings["application/config/features"] = project_features;
initial_settings["application/config/name"] = project_name->get_text().strip_edges();
@@ -684,7 +687,7 @@ public:
msg->hide();
install_path_container->hide();
install_status_rect->hide();
- rasterizer_container->hide();
+ renderer_container->hide();
default_files_container->hide();
get_ok_button()->set_disabled(false);
@@ -735,7 +738,7 @@ public:
set_ok_button_text(TTR("Import & Edit"));
name_container->hide();
install_path_container->hide();
- rasterizer_container->hide();
+ renderer_container->hide();
default_files_container->hide();
project_path->grab_focus();
@@ -744,7 +747,7 @@ public:
set_ok_button_text(TTR("Create & Edit"));
name_container->show();
install_path_container->hide();
- rasterizer_container->show();
+ renderer_container->show();
default_files_container->show();
project_name->call_deferred(SNAME("grab_focus"));
project_name->call_deferred(SNAME("select_all"));
@@ -755,7 +758,7 @@ public:
project_name->set_text(zip_title);
name_container->show();
install_path_container->hide();
- rasterizer_container->hide();
+ renderer_container->hide();
default_files_container->hide();
project_path->grab_focus();
}
@@ -843,23 +846,23 @@ public:
msg->set_horizontal_alignment(HORIZONTAL_ALIGNMENT_CENTER);
vb->add_child(msg);
- // rasterizer selection
- rasterizer_container = memnew(VBoxContainer);
- vb->add_child(rasterizer_container);
+ // Renderer selection.
+ renderer_container = memnew(VBoxContainer);
+ vb->add_child(renderer_container);
l = memnew(Label);
l->set_text(TTR("Renderer:"));
- rasterizer_container->add_child(l);
- Container *rshb = memnew(HBoxContainer);
- rasterizer_container->add_child(rshb);
- rasterizer_button_group.instantiate();
+ renderer_container->add_child(l);
+ HBoxContainer *rshc = memnew(HBoxContainer);
+ renderer_container->add_child(rshc);
+ renderer_button_group.instantiate();
Container *rvb = memnew(VBoxContainer);
rvb->set_h_size_flags(Control::SIZE_EXPAND_FILL);
- rshb->add_child(rvb);
+ rshc->add_child(rvb);
Button *rs_button = memnew(CheckBox);
- rs_button->set_button_group(rasterizer_button_group);
- rs_button->set_text(TTR("Vulkan Clustered"));
- rs_button->set_meta(SNAME("driver_name"), 0); // Vulkan backend "Forward Clustered"
+ rs_button->set_button_group(renderer_button_group);
+ rs_button->set_text(TTR("Forward+"));
+ rs_button->set_meta(SNAME("rendering_method"), "forward_plus");
rs_button->set_pressed(true);
rvb->add_child(rs_button);
l = memnew(Label);
@@ -871,15 +874,15 @@ public:
l->set_modulate(Color(1, 1, 1, 0.7));
rvb->add_child(l);
- rshb->add_child(memnew(VSeparator));
+ rshc->add_child(memnew(VSeparator));
rvb = memnew(VBoxContainer);
rvb->set_h_size_flags(Control::SIZE_EXPAND_FILL);
- rshb->add_child(rvb);
+ rshc->add_child(rvb);
rs_button = memnew(CheckBox);
- rs_button->set_button_group(rasterizer_button_group);
- rs_button->set_text(TTR("Vulkan Mobile"));
- rs_button->set_meta(SNAME("driver_name"), 1); // Vulkan backend "Forward Mobile"
+ rs_button->set_button_group(renderer_button_group);
+ rs_button->set_text(TTR("Mobile"));
+ rs_button->set_meta(SNAME("rendering_method"), "mobile");
rvb->add_child(rs_button);
l = memnew(Label);
l->set_text(
@@ -897,7 +900,7 @@ public:
l->set_horizontal_alignment(HORIZONTAL_ALIGNMENT_CENTER);
l->set_vertical_alignment(VERTICAL_ALIGNMENT_CENTER);
l->set_modulate(Color(1, 1, 1, 0.7));
- rasterizer_container->add_child(l);
+ renderer_container->add_child(l);
default_files_container = memnew(HBoxContainer);
vb->add_child(default_files_container);
diff --git a/editor/scene_create_dialog.cpp b/editor/scene_create_dialog.cpp
index 573e57ca04..4563dbb0f7 100644
--- a/editor/scene_create_dialog.cpp
+++ b/editor/scene_create_dialog.cpp
@@ -133,7 +133,7 @@ void SceneCreateDialog::update_dialog() {
root_name = scene_name.get_file().get_basename();
}
- if (!root_name.is_valid_identifier()) {
+ if (root_name.is_empty() || root_name.validate_node_name().size() != root_name.size()) {
update_error(node_error_label, MSG_ERROR, TTR("Invalid root node name."));
is_valid = false;
}
diff --git a/editor/scene_tree_dock.cpp b/editor/scene_tree_dock.cpp
index a437245c57..d1dc188be9 100644
--- a/editor/scene_tree_dock.cpp
+++ b/editor/scene_tree_dock.cpp
@@ -135,6 +135,8 @@ void SceneTreeDock::shortcut_input(const Ref<InputEvent> &p_event) {
_tool_selected(TOOL_ERASE, true);
} else if (ED_IS_SHORTCUT("scene_tree/copy_node_path", p_event)) {
_tool_selected(TOOL_COPY_NODE_PATH);
+ } else if (ED_IS_SHORTCUT("scene_tree/toggle_unique_name", p_event)) {
+ _tool_selected(TOOL_TOGGLE_SCENE_UNIQUE_NAME);
} else if (ED_IS_SHORTCUT("scene_tree/delete", p_event)) {
_tool_selected(TOOL_ERASE);
} else {
@@ -439,8 +441,8 @@ void SceneTreeDock::_tool_selected(int p_tool, bool p_confirm_override) {
}
}
- bool collapsed = _is_collapsed_recursive(selected_item);
- _set_collapsed_recursive(selected_item, !collapsed);
+ bool collapsed = selected_item->is_any_collapsed();
+ selected_item->set_collapsed_recursive(!collapsed);
tree->ensure_cursor_is_visible();
@@ -916,6 +918,7 @@ void SceneTreeDock::_tool_selected(int p_tool, bool p_confirm_override) {
String existing;
if (extensions.size()) {
String root_name(tocopy->get_name());
+ root_name = EditorNode::adjust_scene_name_casing(root_name);
existing = root_name + "." + extensions.front()->get().to_lower();
}
new_scene_from_dialog->set_current_path(existing);
@@ -1073,6 +1076,14 @@ void SceneTreeDock::_tool_selected(int p_tool, bool p_confirm_override) {
if (first_selected == nullptr) {
return;
}
+ if (first_selected->get() == EditorNode::get_singleton()->get_edited_scene()) {
+ // Exclude Root Node. It should never be unique name in its own scene!
+ editor_selection->remove_node(first_selected->get());
+ first_selected = editor_selection->get_selected_node_list().front();
+ if (first_selected == nullptr) {
+ return;
+ }
+ }
bool enabling = !first_selected->get()->is_unique_name_in_owner();
List<Node *> full_selection = editor_selection->get_full_selected_node_list();
@@ -1212,17 +1223,6 @@ void SceneTreeDock::add_root_node(Node *p_node) {
editor_data->get_undo_redo()->commit_action();
}
-void SceneTreeDock::_node_collapsed(Object *p_obj) {
- TreeItem *ti = Object::cast_to<TreeItem>(p_obj);
- if (!ti) {
- return;
- }
-
- if (Input::get_singleton()->is_key_pressed(Key::SHIFT)) {
- _set_collapsed_recursive(ti, ti->is_collapsed());
- }
-}
-
void SceneTreeDock::_notification(int p_what) {
switch (p_what) {
case NOTIFICATION_READY: {
@@ -1235,14 +1235,14 @@ void SceneTreeDock::_notification(int p_what) {
CanvasItemEditorPlugin *canvas_item_plugin = Object::cast_to<CanvasItemEditorPlugin>(editor_data->get_editor("2D"));
if (canvas_item_plugin) {
- canvas_item_plugin->get_canvas_item_editor()->connect("item_lock_status_changed", Callable(scene_tree, "_update_tree"));
- canvas_item_plugin->get_canvas_item_editor()->connect("item_group_status_changed", Callable(scene_tree, "_update_tree"));
+ canvas_item_plugin->get_canvas_item_editor()->connect("item_lock_status_changed", callable_mp(scene_tree, &SceneTreeEditor::_update_tree));
+ canvas_item_plugin->get_canvas_item_editor()->connect("item_group_status_changed", callable_mp(scene_tree, &SceneTreeEditor::_update_tree));
scene_tree->connect("node_changed", callable_mp((CanvasItem *)canvas_item_plugin->get_canvas_item_editor()->get_viewport_control(), &CanvasItem::queue_redraw));
}
Node3DEditorPlugin *spatial_editor_plugin = Object::cast_to<Node3DEditorPlugin>(editor_data->get_editor("3D"));
- spatial_editor_plugin->get_spatial_editor()->connect("item_lock_status_changed", Callable(scene_tree, "_update_tree"));
- spatial_editor_plugin->get_spatial_editor()->connect("item_group_status_changed", Callable(scene_tree, "_update_tree"));
+ spatial_editor_plugin->get_spatial_editor()->connect("item_lock_status_changed", callable_mp(scene_tree, &SceneTreeEditor::_update_tree));
+ spatial_editor_plugin->get_spatial_editor()->connect("item_group_status_changed", callable_mp(scene_tree, &SceneTreeEditor::_update_tree));
button_add->set_icon(get_theme_icon(SNAME("Add"), SNAME("EditorIcons")));
button_instance->set_icon(get_theme_icon(SNAME("Instance"), SNAME("EditorIcons")));
@@ -1934,48 +1934,6 @@ void SceneTreeDock::_do_reparent(Node *p_new_parent, int p_position_in_parent, V
editor_data->get_undo_redo()->commit_action();
}
-bool SceneTreeDock::_is_collapsed_recursive(TreeItem *p_item) const {
- bool is_branch_collapsed = false;
-
- List<TreeItem *> needs_check;
- needs_check.push_back(p_item);
-
- while (!needs_check.is_empty()) {
- TreeItem *item = needs_check.back()->get();
- needs_check.pop_back();
-
- TreeItem *child = item->get_first_child();
- is_branch_collapsed = item->is_collapsed() && child;
-
- if (is_branch_collapsed) {
- break;
- }
- while (child) {
- needs_check.push_back(child);
- child = child->get_next();
- }
- }
- return is_branch_collapsed;
-}
-
-void SceneTreeDock::_set_collapsed_recursive(TreeItem *p_item, bool p_collapsed) {
- List<TreeItem *> to_collapse;
- to_collapse.push_back(p_item);
-
- while (!to_collapse.is_empty()) {
- TreeItem *item = to_collapse.back()->get();
- to_collapse.pop_back();
-
- item->set_collapsed(p_collapsed);
-
- TreeItem *child = item->get_first_child();
- while (child) {
- to_collapse.push_back(child);
- child = child->get_next();
- }
- }
-}
-
void SceneTreeDock::_script_created(Ref<Script> p_script) {
List<Node *> selected = editor_selection->get_selected_node_list();
@@ -2865,10 +2823,13 @@ void SceneTreeDock::_tree_rmb(const Vector2 &p_menu_pos) {
}
}
if (all_owned) {
- menu->add_separator();
- menu->add_icon_check_item(get_theme_icon(SNAME("SceneUniqueName"), SNAME("EditorIcons")), TTR("Access as Scene Unique Name"), TOOL_TOGGLE_SCENE_UNIQUE_NAME);
- // Checked based on `selection[0]` because `full_selection` has undesired ordering.
- menu->set_item_checked(menu->get_item_index(TOOL_TOGGLE_SCENE_UNIQUE_NAME), selection[0]->is_unique_name_in_owner());
+ // Group "toggle_unique_name" with "copy_node_path", if it is available.
+ if (menu->get_item_index(TOOL_COPY_NODE_PATH) == -1) {
+ menu->add_separator();
+ }
+ Node *node = full_selection[0];
+ menu->add_icon_shortcut(get_theme_icon(SNAME("SceneUniqueName"), SNAME("EditorIcons")), ED_GET_SHORTCUT("scene_tree/toggle_unique_name"), TOOL_TOGGLE_SCENE_UNIQUE_NAME);
+ menu->set_item_text(menu->get_item_index(TOOL_TOGGLE_SCENE_UNIQUE_NAME), node->is_unique_name_in_owner() ? TTR("Revoke Unique Name") : TTR("Access as Unique Name"));
}
}
@@ -3421,6 +3382,7 @@ SceneTreeDock::SceneTreeDock(Node *p_scene_root, EditorSelection *p_editor_selec
ED_SHORTCUT("scene_tree/make_root", TTR("Make Scene Root"));
ED_SHORTCUT("scene_tree/save_branch_as_scene", TTR("Save Branch as Scene"));
ED_SHORTCUT("scene_tree/copy_node_path", TTR("Copy Node Path"), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::SHIFT | Key::C);
+ ED_SHORTCUT("scene_tree/toggle_unique_name", TTR("Toggle Access as Unique Name"));
ED_SHORTCUT("scene_tree/delete_no_confirm", TTR("Delete (No Confirm)"), KeyModifierMask::SHIFT | Key::KEY_DELETE);
ED_SHORTCUT("scene_tree/delete", TTR("Delete"), Key::KEY_DELETE);
@@ -3517,7 +3479,6 @@ SceneTreeDock::SceneTreeDock(Node *p_scene_root, EditorSelection *p_editor_selec
scene_tree->connect("nodes_dragged", callable_mp(this, &SceneTreeDock::_nodes_drag_begin));
scene_tree->get_scene_tree()->connect("item_double_clicked", callable_mp(this, &SceneTreeDock::_focus_node));
- scene_tree->get_scene_tree()->connect("item_collapsed", callable_mp(this, &SceneTreeDock::_node_collapsed));
editor_selection->connect("selection_changed", callable_mp(this, &SceneTreeDock::_selection_changed));
diff --git a/editor/scene_tree_dock.h b/editor/scene_tree_dock.h
index dc228e1c93..e48b518252 100644
--- a/editor/scene_tree_dock.h
+++ b/editor/scene_tree_dock.h
@@ -137,7 +137,6 @@ class SceneTreeDock : public VBoxContainer {
HBoxContainer *tool_hbc = nullptr;
void _tool_selected(int p_tool, bool p_confirm_override = false);
void _property_selected(int p_idx);
- void _node_collapsed(Object *p_obj);
Node *property_drop_node = nullptr;
String resource_drop_path;
@@ -188,9 +187,6 @@ class SceneTreeDock : public VBoxContainer {
void _node_reparent(NodePath p_path, bool p_keep_global_xform);
void _do_reparent(Node *p_new_parent, int p_position_in_parent, Vector<Node *> p_nodes, bool p_keep_global_xform);
- bool _is_collapsed_recursive(TreeItem *p_item) const;
- void _set_collapsed_recursive(TreeItem *p_item, bool p_collapsed);
-
void _set_owners(Node *p_owner, const Array &p_nodes);
enum ReplaceOwnerMode {
@@ -228,8 +224,6 @@ class SceneTreeDock : public VBoxContainer {
virtual void input(const Ref<InputEvent> &p_event) override;
virtual void shortcut_input(const Ref<InputEvent> &p_event) override;
- void _import_subscene();
-
void _new_scene_from(String p_file);
void _set_node_owner_recursive(Node *p_node, Node *p_owner);
@@ -292,7 +286,6 @@ public:
void _focus_node();
- void import_subscene();
void add_root_node(Node *p_node);
void set_edited_scene(Node *p_scene);
void instantiate(const String &p_file);
diff --git a/editor/scene_tree_editor.cpp b/editor/scene_tree_editor.cpp
index 137574640e..7bcc8aa078 100644
--- a/editor/scene_tree_editor.cpp
+++ b/editor/scene_tree_editor.cpp
@@ -30,6 +30,7 @@
#include "scene_tree_editor.h"
+#include "core/config/project_settings.h"
#include "core/object/message_queue.h"
#include "core/string/print_string.h"
#include "editor/editor_file_system.h"
@@ -835,7 +836,7 @@ void SceneTreeEditor::_notification(int p_what) {
get_tree()->connect("tree_process_mode_changed", callable_mp(this, &SceneTreeEditor::_tree_process_mode_changed));
get_tree()->connect("node_removed", callable_mp(this, &SceneTreeEditor::_node_removed));
get_tree()->connect("node_renamed", callable_mp(this, &SceneTreeEditor::_node_renamed));
- get_tree()->connect("node_configuration_warning_changed", callable_mp(this, &SceneTreeEditor::_warning_changed), CONNECT_DEFERRED);
+ get_tree()->connect("node_configuration_warning_changed", callable_mp(this, &SceneTreeEditor::_warning_changed));
tree->connect("item_collapsed", callable_mp(this, &SceneTreeEditor::_cell_collapsed));
@@ -942,14 +943,16 @@ void SceneTreeEditor::_renamed() {
Node *n = get_node(np);
ERR_FAIL_COND(!n);
- // Empty node names are not allowed, so resets it to previous text and show warning
- if (which->get_text(0).strip_edges().is_empty()) {
- which->set_text(0, n->get_name());
- EditorNode::get_singleton()->show_warning(TTR("No name provided."));
- return;
+ String raw_new_name = which->get_text(0);
+ if (raw_new_name.strip_edges().is_empty()) {
+ // If name is empty, fallback to class name.
+ if (GLOBAL_GET("editor/node_naming/name_casing").operator int() != NAME_CASING_PASCAL_CASE) {
+ raw_new_name = Node::adjust_name_casing(n->get_class());
+ } else {
+ raw_new_name = n->get_class();
+ }
}
- String raw_new_name = which->get_text(0);
String new_name = raw_new_name.validate_node_name();
if (new_name != raw_new_name) {
@@ -1332,7 +1335,7 @@ void SceneTreeEditor::set_connecting_signal(bool p_enable) {
}
void SceneTreeEditor::_bind_methods() {
- ClassDB::bind_method(D_METHOD("_update_tree"), &SceneTreeEditor::_update_tree, DEFVAL(false)); // Still used by some connect_compat.
+ ClassDB::bind_method(D_METHOD("_update_tree"), &SceneTreeEditor::_update_tree, DEFVAL(false)); // Still used by UndoRedo.
ClassDB::bind_method("_rename_node", &SceneTreeEditor::_rename_node);
ClassDB::bind_method("_test_update_tree", &SceneTreeEditor::_test_update_tree);
@@ -1434,6 +1437,9 @@ void SceneTreeDialog::_notification(int p_what) {
case NOTIFICATION_VISIBILITY_CHANGED: {
if (is_visible()) {
tree->update_tree();
+
+ // Select the search bar by default.
+ filter->call_deferred(SNAME("grab_focus"));
}
} break;
diff --git a/editor/scene_tree_editor.h b/editor/scene_tree_editor.h
index 28ffa4b11b..8fbc3ab6d6 100644
--- a/editor/scene_tree_editor.h
+++ b/editor/scene_tree_editor.h
@@ -76,7 +76,6 @@ class SceneTreeEditor : public Control {
void _add_nodes(Node *p_node, TreeItem *p_parent);
void _test_update_tree();
- void _update_tree(bool p_scroll_to_selected = false);
bool _update_filter(TreeItem *p_parent = nullptr, bool p_scroll_to_selected = false);
bool _item_matches_all_terms(TreeItem *p_item, PackedStringArray p_terms);
void _tree_changed();
@@ -138,6 +137,9 @@ class SceneTreeEditor : public Control {
Vector<StringName> valid_types;
public:
+ // Public for use with callable_mp.
+ void _update_tree(bool p_scroll_to_selected = false);
+
void set_filter(const String &p_filter);
String get_filter() const;
diff --git a/editor/shader_globals_editor.cpp b/editor/shader_globals_editor.cpp
index eef0f3eae1..473bbd69d9 100644
--- a/editor/shader_globals_editor.cpp
+++ b/editor/shader_globals_editor.cpp
@@ -483,7 +483,7 @@ ShaderGlobalsEditor::ShaderGlobalsEditor() {
inspector->connect("property_deleted", callable_mp(this, &ShaderGlobalsEditor::_variable_deleted), CONNECT_DEFERRED);
interface = memnew(ShaderGlobalsEditorInterface);
- interface->connect("var_changed", Callable(this, "_changed"));
+ interface->connect("var_changed", callable_mp(this, &ShaderGlobalsEditor::_changed));
}
ShaderGlobalsEditor::~ShaderGlobalsEditor() {
diff --git a/editor/translations/bg.po b/editor/translations/bg.po
index 46640b0b55..a6a8b72ea5 100644
--- a/editor/translations/bg.po
+++ b/editor/translations/bg.po
@@ -15,13 +15,15 @@
# Ziv D <wizdavid@gmail.com>, 2020.
# Violin Iliev <violin.developer@gmail.com>, 2021.
# Ivan Gechev <ivan_banov@abv.bg>, 2022.
+# BigHomieDripDrop <bartu.bali@gmail.com>, 2022.
+# xaio <xaio666@gmail.com>, 2022.
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: 2022-04-28 11:11+0000\n"
-"Last-Translator: Любомир Василев <lyubomirv@gmx.com>\n"
+"PO-Revision-Date: 2022-09-22 15:26+0000\n"
+"Last-Translator: xaio <xaio666@gmail.com>\n"
"Language-Team: Bulgarian <https://hosted.weblate.org/projects/godot-engine/"
"godot/bg/>\n"
"Language: bg\n"
@@ -29,67 +31,59 @@ 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.12.1-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
-msgstr ""
+msgstr "Драйвер за таблет"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Clipboard"
-msgstr "Отрязване над"
+msgstr "Клипборд"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Current Screen"
-msgstr "Текущо име на сцената"
+msgstr "Текуща Сцена"
#: core/bind/core_bind.cpp
msgid "Exit Code"
-msgstr ""
+msgstr "Изходен Код"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "V-Sync Enabled"
-msgstr "Включване"
+msgstr "V-Sync Включено"
#: core/bind/core_bind.cpp main/main.cpp
msgid "V-Sync Via Compositor"
-msgstr ""
+msgstr "V-Sync Чрез Композитора"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Delta Smoothing"
-msgstr ""
+msgstr "Делта Изглаждане"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Low Processor Usage Mode"
-msgstr "Режим на преместване"
+msgstr "Режим на Ниско Натоварване на Процесора"
#: core/bind/core_bind.cpp
msgid "Low Processor Usage Mode Sleep (µsec)"
-msgstr ""
+msgstr "Заспиване в Режим на Ниско Натоварване на Процесора (µsec)"
#: core/bind/core_bind.cpp main/main.cpp platform/uwp/os_uwp.cpp
-#, fuzzy
msgid "Keep Screen On"
-msgstr "Дебъгерът да остане отворен"
+msgstr "Дръж Екрана Включен"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Min Window Size"
-msgstr "Размер на контура:"
+msgstr "Минимален Размер на Екрана"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Max Window Size"
-msgstr "Размер на контура:"
+msgstr "Максимален Размер на Екрана"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Screen Orientation"
-msgstr "Отваряне на документацията"
+msgstr "Ориентация на Екрана"
#: core/bind/core_bind.cpp core/project_settings.cpp main/main.cpp
#: platform/uwp/os_uwp.cpp
@@ -102,7 +96,7 @@ msgstr "Без граници"
#: core/bind/core_bind.cpp
msgid "Per Pixel Transparency Enabled"
-msgstr ""
+msgstr "Попикселова Прозрачност Включено"
#: core/bind/core_bind.cpp core/project_settings.cpp
msgid "Fullscreen"
@@ -110,26 +104,24 @@ msgstr "Цял екран"
#: core/bind/core_bind.cpp
msgid "Maximized"
-msgstr ""
+msgstr "Максимизиран"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Minimized"
-msgstr "Инициализиране"
+msgstr "Минимизиран"
#: core/bind/core_bind.cpp core/project_settings.cpp scene/gui/dialogs.cpp
#: scene/gui/graph_node.cpp
msgid "Resizable"
-msgstr ""
+msgstr "Преоразмеряване е Възможно"
#: core/bind/core_bind.cpp core/os/input_event.cpp scene/2d/node_2d.cpp
#: scene/2d/physics_body_2d.cpp scene/2d/remote_transform_2d.cpp
#: scene/3d/physics_body.cpp scene/3d/remote_transform.cpp
#: scene/gui/control.cpp scene/gui/line_edit.cpp
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Position"
-msgstr "Създаване на функция"
+msgstr "Позиция"
#: core/bind/core_bind.cpp core/project_settings.cpp editor/editor_settings.cpp
#: main/main.cpp modules/gridmap/grid_map.cpp
@@ -140,60 +132,52 @@ msgstr "Създаване на функция"
#: scene/resources/primitive_meshes.cpp scene/resources/sky.cpp
#: scene/resources/style_box.cpp scene/resources/texture.cpp
#: scene/resources/visual_shader.cpp servers/visual_server.cpp
-#, fuzzy
msgid "Size"
-msgstr "Размер:"
+msgstr "Размер"
#: core/bind/core_bind.cpp
msgid "Endian Swap"
-msgstr ""
+msgstr "Размяна на Байтова Крайност"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Editor Hint"
-msgstr "Тема на редактора"
+msgstr "Съвет за Редактора"
#: core/bind/core_bind.cpp
msgid "Print Error Messages"
-msgstr "Принирай съобщения за грешки"
+msgstr "Принтирай съобщения за грешки"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Iterations Per Second"
-msgstr "Режим на интерполация"
+msgstr "Итерации в Секунда"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Target FPS"
-msgstr "Принудително изпращане"
+msgstr "Целеви FPS"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Time Scale"
-msgstr "Текстурна област"
+msgstr "Времева Скала"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Physics Jitter Fix"
-msgstr ""
+msgstr "Корекция на Физично Трептене"
#: core/bind/core_bind.cpp editor/plugins/version_control_editor_plugin.cpp
msgid "Error"
msgstr "Грешка"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Error String"
-msgstr "Грешка при запазване"
+msgstr "Низ на Грешката"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Error Line"
-msgstr "Грешка при запазване"
+msgstr "Линия на Грешката"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Result"
-msgstr "Резултати от търсенето"
+msgstr "Резултат"
#: core/command_queue_mt.cpp core/message_queue.cpp main/main.cpp
msgid "Memory"
@@ -208,16 +192,15 @@ msgstr "Памет"
#: modules/webrtc/webrtc_data_channel.h modules/websocket/websocket_macros.h
#: servers/visual_server.cpp
msgid "Limits"
-msgstr ""
+msgstr "Ограничения"
#: core/command_queue_mt.cpp
-#, fuzzy
msgid "Command Queue"
-msgstr "Command: завъртане"
+msgstr "Oпашка от Kоманди"
#: core/command_queue_mt.cpp
msgid "Multithreading Queue Size (KB)"
-msgstr ""
+msgstr "Размер на Многонишковата Опашка (KB)"
#: core/func_ref.cpp modules/visual_script/visual_script_builtin_funcs.cpp
#: modules/visual_script/visual_script_func_nodes.cpp
@@ -236,101 +219,92 @@ msgstr "Данни"
#: modules/gdscript/language_server/gdscript_language_server.cpp
#: modules/webrtc/webrtc_data_channel.h modules/websocket/websocket_macros.h
#: scene/gui/file_dialog.cpp
-#, fuzzy
msgid "Network"
-msgstr "Профилиране на мрежата"
+msgstr "Мрежа"
#: core/io/file_access_network.cpp
msgid "Remote FS"
-msgstr "Отдалечена ФС"
+msgstr "Дистанционна ФС"
#: core/io/file_access_network.cpp
msgid "Page Size"
-msgstr "Размер на страница"
+msgstr "Размер на Страница"
#: core/io/file_access_network.cpp
msgid "Page Read Ahead"
-msgstr ""
+msgstr "Кеширане на Страницата"
#: core/io/http_client.cpp
msgid "Blocking Mode Enabled"
-msgstr ""
+msgstr "Блокиращ Режим Включен"
#: core/io/http_client.cpp
-#, fuzzy
msgid "Connection"
-msgstr "Свързване"
+msgstr "Връзка"
#: core/io/http_client.cpp
msgid "Read Chunk Size"
-msgstr ""
+msgstr "Размер на Прочетеното Парче"
#: core/io/marshalls.cpp
-#, fuzzy
msgid "Object ID"
-msgstr "Изчертани обекти:"
+msgstr "Обект ID"
#: core/io/multiplayer_api.cpp core/io/packet_peer.cpp
-#, fuzzy
msgid "Allow Object Decoding"
-msgstr "Показване на избледняващи кадри"
+msgstr "Разреши Декодирането на Обекта"
#: core/io/multiplayer_api.cpp scene/main/scene_tree.cpp
msgid "Refuse New Network Connections"
msgstr "Отказ на нови мрежови връзки"
#: core/io/multiplayer_api.cpp scene/main/scene_tree.cpp
-#, fuzzy
msgid "Network Peer"
-msgstr "Профилиране на мрежата"
+msgstr "Мрежов Връстник"
#: core/io/multiplayer_api.cpp scene/animation/animation_player.cpp
-#, fuzzy
msgid "Root Node"
-msgstr "Име на коренния обект"
+msgstr "Коренен Връх"
#: core/io/networked_multiplayer_peer.cpp
-#, fuzzy
msgid "Refuse New Connections"
-msgstr "Свързване"
+msgstr "Отказ на нови връзки"
#: core/io/networked_multiplayer_peer.cpp
-#, fuzzy
msgid "Transfer Mode"
-msgstr "Панорамен режим"
+msgstr "Режим на трансфер"
#: core/io/packet_peer.cpp
msgid "Encode Buffer Max Size"
-msgstr ""
+msgstr "Максимален размер на буфера за кодиране"
#: core/io/packet_peer.cpp
msgid "Input Buffer Max Size"
-msgstr ""
+msgstr "Максимален размер на входния буфер"
#: core/io/packet_peer.cpp
msgid "Output Buffer Max Size"
-msgstr ""
+msgstr "Максимален размер на изходния буфер"
#: core/io/packet_peer.cpp
msgid "Stream Peer"
-msgstr ""
+msgstr "Поточен връстник"
#: core/io/stream_peer.cpp
msgid "Big Endian"
-msgstr ""
+msgstr "Биг-Ендиан"
#: core/io/stream_peer.cpp
msgid "Data Array"
-msgstr ""
+msgstr "Масив от Данни"
#: core/io/stream_peer_ssl.cpp
msgid "Blocking Handshake"
-msgstr ""
+msgstr "Блокиращ Handshake"
#: core/io/udp_server.cpp
-#, fuzzy
msgid "Max Pending Connections"
-msgstr "Редактиране на Връзката:"
+msgstr "Максимален брой чакащи връзки"
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/visual_script/visual_script_builtin_funcs.cpp
@@ -350,9 +324,8 @@ msgid "Not enough bytes for decoding bytes, or invalid format."
msgstr "Недостатъчно байтове за разкодиране или неправилен формат."
#: core/math/expression.cpp
-#, fuzzy
msgid "Invalid input %d (not passed) in expression"
-msgstr "Неправилен входен параметър %i (не е подаден) в израза"
+msgstr "Неправилен входен параметър %d (не е подаден) в израза"
#: core/math/expression.cpp
msgid "self can't be used because instance is null (not passed)"
@@ -385,13 +358,12 @@ msgid "Seed"
msgstr ""
#: core/math/random_number_generator.cpp
-#, fuzzy
msgid "State"
-msgstr "Ротация"
+msgstr "Състояние"
#: core/message_queue.cpp
msgid "Message Queue"
-msgstr ""
+msgstr "Опашка на съобщения"
#: core/message_queue.cpp
msgid "Max Size (KB)"
@@ -404,7 +376,7 @@ msgstr "Режим на преместване"
#: core/os/input.cpp
msgid "Use Accumulated Input"
-msgstr ""
+msgstr "Ползвай акумулиран вход"
#: core/os/input_event.cpp editor/project_settings_editor.cpp
#: servers/audio_server.cpp
@@ -432,9 +404,8 @@ msgid "Command"
msgstr "Command"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Physical"
-msgstr "Включване"
+msgstr "Физически"
#: core/os/input_event.cpp scene/2d/touch_screen_button.cpp
#: scene/gui/base_button.cpp scene/gui/texture_button.cpp
@@ -445,19 +416,20 @@ msgstr "Натиснат"
#: core/os/input_event.cpp
#, fuzzy
msgid "Scancode"
-msgstr "Сканиране"
+msgstr "Сканкод"
#: core/os/input_event.cpp
msgid "Physical Scancode"
-msgstr ""
+msgstr "Физически сканкод"
#: core/os/input_event.cpp
msgid "Unicode"
msgstr "Уникод"
#: core/os/input_event.cpp
+#, fuzzy
msgid "Echo"
-msgstr ""
+msgstr "Echo"
#: core/os/input_event.cpp scene/gui/base_button.cpp
#, fuzzy
@@ -485,7 +457,7 @@ msgstr "Двоен клик"
#: core/os/input_event.cpp
msgid "Tilt"
-msgstr ""
+msgstr "Наклон"
#: core/os/input_event.cpp
msgid "Pressure"
@@ -493,11 +465,11 @@ msgstr "Натиск"
#: core/os/input_event.cpp
msgid "Pen Inverted"
-msgstr ""
+msgstr "Писалка обърната"
#: core/os/input_event.cpp
msgid "Relative"
-msgstr ""
+msgstr "Относително"
#: core/os/input_event.cpp scene/2d/camera_2d.cpp scene/2d/cpu_particles_2d.cpp
#: scene/3d/cpu_particles.cpp scene/3d/interpolated_camera.cpp
@@ -632,15 +604,15 @@ msgstr "Заключен елемент"
#: core/project_settings.cpp
msgid "Use Hidden Project Data Directory"
-msgstr ""
+msgstr "Ползвай скрита дата директория на проекта"
#: core/project_settings.cpp
msgid "Use Custom User Dir"
-msgstr ""
+msgstr "Ползвай персоналната директория на потребителя"
#: core/project_settings.cpp
msgid "Custom User Dir Name"
-msgstr ""
+msgstr "Име на персонална потребителска категория"
#: core/project_settings.cpp main/main.cpp
#: platform/javascript/export/export.cpp platform/osx/export/export.cpp
@@ -653,7 +625,7 @@ msgstr "Показване на всичко"
#: modules/opensimplex/noise_texture.cpp scene/2d/line_2d.cpp
#: scene/3d/label_3d.cpp scene/gui/text_edit.cpp scene/resources/texture.cpp
msgid "Width"
-msgstr ""
+msgstr "Широчина"
#: core/project_settings.cpp main/main.cpp modules/csg/csg_shape.cpp
#: modules/gltf/gltf_node.cpp modules/opensimplex/noise_texture.cpp
@@ -662,20 +634,19 @@ msgstr ""
#: scene/resources/font.cpp scene/resources/navigation_mesh.cpp
#: scene/resources/primitive_meshes.cpp scene/resources/texture.cpp
msgid "Height"
-msgstr ""
+msgstr "Височина"
#: core/project_settings.cpp
msgid "Always On Top"
-msgstr ""
+msgstr "Винаги отгоре"
#: core/project_settings.cpp
msgid "Test Width"
-msgstr ""
+msgstr "Тестова широчина"
#: core/project_settings.cpp
-#, fuzzy
msgid "Test Height"
-msgstr "Тестово"
+msgstr "Тестова височина"
#: core/project_settings.cpp editor/animation_track_editor.cpp
#: editor/editor_audio_buses.cpp main/main.cpp servers/audio_server.cpp
@@ -684,14 +655,14 @@ msgstr "Аудио"
#: core/project_settings.cpp
msgid "Default Bus Layout"
-msgstr ""
+msgstr "Bus Layout по подразбиране"
#: core/project_settings.cpp editor/editor_export.cpp
#: editor/editor_file_system.cpp editor/editor_node.cpp
#: editor/editor_settings.cpp editor/script_create_dialog.cpp
#: scene/2d/camera_2d.cpp scene/3d/light.cpp scene/main/node.cpp
msgid "Editor"
-msgstr ""
+msgstr "Редактор"
#: core/project_settings.cpp
msgid "Main Run Args"
@@ -704,11 +675,11 @@ msgstr "Път на сцената:"
#: core/project_settings.cpp
msgid "Search In File Extensions"
-msgstr ""
+msgstr "Търси във файловите окончания"
#: core/project_settings.cpp
msgid "Script Templates Search Path"
-msgstr ""
+msgstr "Път за търсене на скриптови шаблони"
#: core/project_settings.cpp
#, fuzzy
@@ -727,7 +698,7 @@ msgstr "Вход"
#: core/project_settings.cpp
msgid "UI Accept"
-msgstr ""
+msgstr "UI Приемам"
#: core/project_settings.cpp
#, fuzzy
@@ -741,38 +712,35 @@ msgstr "Отказ"
#: core/project_settings.cpp
msgid "UI Focus Next"
-msgstr ""
+msgstr "UI фокус следващ"
#: core/project_settings.cpp
msgid "UI Focus Prev"
-msgstr ""
+msgstr "UI фокус предишен"
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Left"
-msgstr "Горе вляво"
+msgstr "UI наляво"
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Right"
-msgstr "Горе вдясно"
+msgstr "UI надясно"
#: core/project_settings.cpp
msgid "UI Up"
-msgstr ""
+msgstr "UI нагоре"
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Down"
-msgstr "Надолу"
+msgstr "UI надолу"
#: core/project_settings.cpp
msgid "UI Page Up"
-msgstr ""
+msgstr "UI страница нагоре"
#: core/project_settings.cpp
msgid "UI Page Down"
-msgstr ""
+msgstr "UI страница надолу"
#: core/project_settings.cpp
msgid "UI Home"
@@ -792,7 +760,7 @@ msgstr "На края"
#: servers/physics_2d/space_2d_sw.cpp servers/physics_2d_server.cpp
#: servers/physics_server.cpp
msgid "Physics"
-msgstr ""
+msgstr "Физика"
#: core/project_settings.cpp editor/editor_settings.cpp
#: editor/import/resource_importer_layered_texture.cpp
@@ -802,11 +770,11 @@ msgstr ""
#: scene/3d/physics_body.cpp scene/resources/world.cpp
#: servers/physics/space_sw.cpp servers/physics_server.cpp
msgid "3D"
-msgstr ""
+msgstr "3D"
#: core/project_settings.cpp
msgid "Smooth Trimesh Collision"
-msgstr ""
+msgstr "Плавен тримеш сблъсък"
#: core/project_settings.cpp drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles2/rasterizer_scene_gles2.cpp
@@ -818,7 +786,7 @@ msgstr ""
#: scene/main/viewport.cpp servers/visual/visual_server_scene.cpp
#: servers/visual_server.cpp
msgid "Rendering"
-msgstr ""
+msgstr "Рендериране"
#: core/project_settings.cpp drivers/gles2/rasterizer_storage_gles2.cpp
#: drivers/gles3/rasterizer_scene_gles3.cpp
@@ -828,18 +796,17 @@ msgstr ""
#: scene/resources/multimesh.cpp servers/visual/visual_server_scene.cpp
#: servers/visual_server.cpp
msgid "Quality"
-msgstr ""
+msgstr "Качество"
#: core/project_settings.cpp scene/gui/file_dialog.cpp
#: scene/main/scene_tree.cpp scene/resources/navigation_mesh.cpp
#: servers/visual_server.cpp
-#, fuzzy
msgid "Filters"
-msgstr "Филтри:"
+msgstr "Филтри"
#: core/project_settings.cpp scene/main/viewport.cpp
msgid "Sharpen Intensity"
-msgstr ""
+msgstr "Интензивност на изострянето"
#: core/project_settings.cpp editor/editor_export.cpp editor/editor_node.cpp
#: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp
@@ -855,19 +822,18 @@ msgstr "Дебъгване"
#: core/project_settings.cpp main/main.cpp modules/gdscript/gdscript.cpp
#: modules/visual_script/visual_script.cpp scene/resources/dynamic_font.cpp
-#, fuzzy
msgid "Settings"
-msgstr "Настройки:"
+msgstr "Настройки"
#: core/project_settings.cpp editor/script_editor_debugger.cpp main/main.cpp
#: modules/mono/mono_gd/gd_mono.cpp
msgid "Profiler"
-msgstr ""
+msgstr "Профайлър"
#: core/project_settings.cpp
#, fuzzy
msgid "Max Functions"
-msgstr "Преобразуване във функция"
+msgstr "Макс функции"
#: core/project_settings.cpp scene/3d/vehicle_body.cpp
msgid "Compression"
@@ -875,31 +841,31 @@ msgstr "Компресиране"
#: core/project_settings.cpp
msgid "Formats"
-msgstr ""
+msgstr "Формати"
#: core/project_settings.cpp
msgid "Zstd"
-msgstr ""
+msgstr "Zstd"
#: core/project_settings.cpp
msgid "Long Distance Matching"
-msgstr ""
+msgstr "Съвпадение на дълги разстояния"
#: core/project_settings.cpp
msgid "Compression Level"
-msgstr ""
+msgstr "Ниво на компресия"
#: core/project_settings.cpp
msgid "Window Log Size"
-msgstr ""
+msgstr "Размер на лог прозореца"
#: core/project_settings.cpp
msgid "Zlib"
-msgstr ""
+msgstr "Zlib"
#: core/project_settings.cpp
msgid "Gzip"
-msgstr ""
+msgstr "Gzip"
#: core/project_settings.cpp platform/android/export/export.cpp
msgid "Android"
@@ -914,26 +880,24 @@ msgid "TCP"
msgstr "TCP"
#: core/register_core_types.cpp
-#, fuzzy
msgid "Connect Timeout Seconds"
-msgstr "Връзки към метода:"
+msgstr "Време за свързване Секунди"
#: core/register_core_types.cpp
msgid "Packet Peer Stream"
-msgstr ""
+msgstr "Брой пакети на стрийм"
#: core/register_core_types.cpp
msgid "Max Buffer (Power of 2)"
-msgstr ""
+msgstr "Максимален размер на буфера (степен от 2)"
#: core/register_core_types.cpp editor/editor_settings.cpp main/main.cpp
msgid "SSL"
-msgstr ""
+msgstr "SSL"
#: core/register_core_types.cpp main/main.cpp
-#, fuzzy
msgid "Certificates"
-msgstr "Вертекси:"
+msgstr "Сертификати"
#: core/resource.cpp editor/dependency_editor.cpp
#: editor/editor_resource_picker.cpp
@@ -942,9 +906,8 @@ msgid "Resource"
msgstr "Ресурс"
#: core/resource.cpp
-#, fuzzy
msgid "Local To Scene"
-msgstr "Затваряне на сцената"
+msgstr "Локално на сцената"
#: core/resource.cpp editor/dependency_editor.cpp
#: editor/editor_autoload_settings.cpp editor/plugins/path_editor_plugin.cpp
@@ -954,22 +917,20 @@ msgid "Path"
msgstr "Път"
#: core/script_language.cpp
-#, fuzzy
msgid "Source Code"
-msgstr "Източник за полигонна мрежа:"
+msgstr "Изходен код"
#: core/translation.cpp editor/project_settings_editor.cpp
msgid "Locale"
-msgstr ""
+msgstr "Локал"
#: core/translation.cpp
-#, fuzzy
msgid "Test"
-msgstr "Тестово"
+msgstr "Тест"
#: core/translation.cpp scene/resources/font.cpp
msgid "Fallback"
-msgstr ""
+msgstr "Резервен вариант"
#: core/ustring.cpp scene/resources/segment_shape_2d.cpp
msgid "B"
@@ -1005,12 +966,12 @@ msgstr "ЕиБ"
#: drivers/gles3/rasterizer_scene_gles3.cpp
#: drivers/gles3/rasterizer_storage_gles3.cpp modules/gltf/gltf_state.cpp
msgid "Buffers"
-msgstr ""
+msgstr "Буфери"
#: drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles3/rasterizer_canvas_base_gles3.cpp
msgid "Canvas Polygon Buffer Size (KB)"
-msgstr ""
+msgstr "Размер на буфера на полигона на канавата (KB)"
#: drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles3/rasterizer_canvas_base_gles3.cpp
@@ -1027,7 +988,7 @@ msgstr ""
#: servers/physics_2d/space_2d_sw.cpp servers/physics_2d_server.cpp
#: servers/visual_server.cpp
msgid "2D"
-msgstr ""
+msgstr "2D"
#: drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles3/rasterizer_canvas_base_gles3.cpp
@@ -1055,28 +1016,27 @@ msgstr "Изпичане на карти на осветеност"
#: drivers/gles2/rasterizer_storage_gles2.cpp
#: drivers/gles3/rasterizer_storage_gles3.cpp
msgid "Use Bicubic Sampling"
-msgstr ""
+msgstr "Ползвай Bicubic семплиране"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Max Renderable Elements"
-msgstr ""
+msgstr "Макс. рендерируеми елементи"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Max Renderable Lights"
-msgstr ""
+msgstr "Максимум рендерируеми светлини"
#: drivers/gles3/rasterizer_scene_gles3.cpp
-#, fuzzy
msgid "Max Renderable Reflections"
-msgstr "Центриране върху избраното"
+msgstr "Макс рендерируеми отражения"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Max Lights Per Object"
-msgstr ""
+msgstr "Максимум светлини на обект"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Subsurface Scattering"
-msgstr ""
+msgstr "Подповърхностно разсейване"
#: drivers/gles3/rasterizer_scene_gles3.cpp editor/animation_track_editor.cpp
#: editor/import/resource_importer_texture.cpp
@@ -1105,7 +1065,7 @@ msgstr ""
#: drivers/gles3/rasterizer_scene_gles3.cpp scene/resources/environment.cpp
msgid "High Quality"
-msgstr ""
+msgstr "Високо качество"
#: drivers/gles3/rasterizer_storage_gles3.cpp
msgid "Blend Shape Max Buffer Size (KB)"
@@ -1138,7 +1098,7 @@ msgstr "Вмъкване на ключ тук"
#: editor/animation_bezier_editor.cpp
msgid "Duplicate Selected Key(s)"
-msgstr "Копиране на избран(и) ключ(ове)"
+msgstr "Дупликат на избран(и) ключ(ове)"
#: editor/animation_bezier_editor.cpp
msgid "Delete Selected Key(s)"
@@ -1192,7 +1152,7 @@ msgstr "Добавяне на кадър"
#: scene/3d/cpu_particles.cpp scene/3d/particles.cpp
#: scene/resources/particles_material.cpp servers/visual_server.cpp
msgid "Time"
-msgstr ""
+msgstr "Време"
#: editor/animation_track_editor.cpp editor/import/resource_importer_scene.cpp
#: platform/osx/export/export.cpp
@@ -1220,29 +1180,31 @@ msgstr "Добавяне на входящ порт"
#: editor/animation_track_editor.cpp main/main.cpp
#: modules/mono/mono_gd/gd_mono.cpp
msgid "Args"
-msgstr ""
+msgstr "Аргументи"
#: editor/animation_track_editor.cpp editor/editor_settings.cpp
#: editor/script_editor_debugger.cpp modules/gltf/gltf_accessor.cpp
#: modules/gltf/gltf_light.cpp modules/visual_script/visual_script_nodes.cpp
#: scene/3d/physics_body.cpp scene/resources/visual_shader_nodes.cpp
msgid "Type"
-msgstr ""
+msgstr "Тип"
#: editor/animation_track_editor.cpp
+#, fuzzy
msgid "In Handle"
-msgstr ""
+msgstr "In Handle"
#: editor/animation_track_editor.cpp
+#, fuzzy
msgid "Out Handle"
-msgstr ""
+msgstr "Out Handle"
#: editor/animation_track_editor.cpp
#: editor/import/resource_importer_texture.cpp
#: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp
#: scene/audio/audio_stream_player.cpp scene/gui/video_player.cpp
msgid "Stream"
-msgstr ""
+msgstr "Поток"
#: editor/animation_track_editor.cpp
#, fuzzy
@@ -1265,8 +1227,9 @@ msgid "Animation"
msgstr "Анимация"
#: editor/animation_track_editor.cpp
+#, fuzzy
msgid "Easing"
-msgstr ""
+msgstr "Easing"
#: editor/animation_track_editor.cpp
msgid "Anim Multi Change Keyframe Time"
@@ -2126,7 +2089,7 @@ msgstr ""
#: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp
msgid "Signals"
-msgstr ""
+msgstr "Сигнали"
#: editor/connections_dialog.cpp
msgid "Filter signals"
@@ -3730,7 +3693,7 @@ msgstr ""
#: editor/editor_network_profiler.cpp editor/editor_node.cpp
#: scene/main/node.cpp scene/resources/default_theme/default_theme.cpp
msgid "Node"
-msgstr "Обект"
+msgstr "Връх"
#: editor/editor_network_profiler.cpp
msgid "Incoming RPC"
@@ -6950,7 +6913,7 @@ msgstr ""
#: editor/import/resource_importer_layered_texture.cpp
#: editor/import/resource_importer_texture.cpp
msgid "sRGB"
-msgstr ""
+msgstr "sRGB"
#: editor/import/resource_importer_layered_texture.cpp
#, fuzzy
@@ -8206,6 +8169,7 @@ msgstr "Режим на възпроизвеждане:"
#: editor/plugins/animation_tree_editor_plugin.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
+#, fuzzy
msgid "AnimationTree"
msgstr "AnimationTree"
@@ -18769,14 +18733,13 @@ msgid "Code Signing"
msgstr "Сигнал"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid ""
"'apksigner' could not be found. Please check that the command is available "
"in the Android SDK build-tools directory. The resulting %s is unsigned."
msgstr ""
-"Командата „apksigner“ не може да бъде намерена.\n"
-"Проверете дали командата е налична в папката „build-tools“ на Android SDK.\n"
-"Резултатният файл „%s“ не е подписан."
+"Командата „apksigner“ не може да бъде намерена. Проверете дали командата е "
+"налична в папката „build-tools“ на Android SDK. Резултатният файл „%s“ не е "
+"подписан."
#: platform/android/export/export_plugin.cpp
msgid "Signing debug %s..."
@@ -18823,9 +18786,8 @@ msgid "Invalid filename! Android APK requires the *.apk extension."
msgstr "Неправилно име! Android APK изисква разширение *.apk."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Unsupported export format!"
-msgstr "Неподдържан формат за изнасяне!\n"
+msgstr "Неподдържан формат за изнасяне!"
#: platform/android/export/export_plugin.cpp
msgid ""
@@ -18848,10 +18810,8 @@ msgstr ""
"името на проекта"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not export project files to gradle project."
-msgstr ""
-"Файловете на проекта не могат да бъдат изнесени като проект на gradle.\n"
+msgstr "Файловете на проекта не могат да бъдат изнесени като проект на gradle."
#: platform/android/export/export_plugin.cpp
msgid "Could not write expansion package file!"
@@ -18862,15 +18822,13 @@ msgid "Building Android Project (gradle)"
msgstr "Компилиране на проект за Android (gradle)"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid ""
"Building of Android project failed, check output for the error. "
"Alternatively visit docs.godotengine.org for Android build documentation."
msgstr ""
"Компилирането на проекта за Android беше неуспешно. Вижте изхода за "
-"грешката.\n"
-"Може също да разгледате документацията за компилиране за Android на docs."
-"godotengine.org."
+"грешката. Може също да разгледате документацията за компилиране за Android "
+"на docs.godotengine.org."
#: platform/android/export/export_plugin.cpp
msgid "Moving output"
@@ -18894,22 +18852,18 @@ msgid "Creating APK..."
msgstr "Създаване на APK…"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not find template APK to export: \"%s\"."
-msgstr ""
-"Не е намерен шаблонен файл APK за изнасяне:\n"
-"%s"
+msgstr "Не е намерен шаблонен файл APK за изнасяне: %s"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid ""
"Missing libraries in the export template for the selected architectures: %s. "
"Please build a template with all required libraries, or uncheck the missing "
"architectures in the export preset."
msgstr ""
-"В шаблона за изнасяне липсват библиотеки за избраните архитектури: %s.\n"
-"Моля, създайте шаблон с всички необходими библиотеки или махнете отметките "
-"от липсващите архитектури в конфигурацията за изнасяне."
+"В шаблона за изнасяне липсват библиотеки за избраните архитектури: %s. Моля, "
+"създайте шаблон с всички необходими библиотеки или махнете отметките от "
+"липсващите архитектури в конфигурацията за изнасяне."
#: platform/android/export/export_plugin.cpp
msgid "Adding files..."
@@ -19762,10 +19716,8 @@ msgid "ZIP Creation"
msgstr "Проект"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Could not open file to read from path \"%s\"."
-msgstr ""
-"Файловете на проекта не могат да бъдат изнесени като проект на gradle.\n"
+msgstr "Файловете на проекта не могат да бъдат изнесени като проект на gradle."
#: platform/osx/export/export.cpp
msgid "Invalid bundle identifier:"
@@ -25772,16 +25724,15 @@ msgstr "Цветове"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
msgid "Preset BG"
-msgstr "Конфигурация…"
+msgstr "Предварителна настройка BG"
#: scene/resources/default_theme/default_theme.cpp
msgid "Overbright Indicator"
msgstr ""
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Preset FG"
-msgstr "Конфигурация…"
+msgstr "Предварителна настройка FG"
#: scene/resources/default_theme/default_theme.cpp
msgid "Preset BG Icon"
diff --git a/editor/translations/cs.po b/editor/translations/cs.po
index ed04f66e4b..01c28b207e 100644
--- a/editor/translations/cs.po
+++ b/editor/translations/cs.po
@@ -31,13 +31,14 @@
# Petr Voparil <voparil.petr96@gmail.com>, 2022.
# JoeMoos <josephmoose13@gmail.com>, 2022.
# Mirinek <mirek.nozicka77@gmail.com>, 2022.
+# Lubomír Baloun <lubosbaloun@gmail.com>, 2022.
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: 2022-08-30 03:11+0000\n"
-"Last-Translator: Petr Voparil <voparil.petr96@gmail.com>\n"
+"PO-Revision-Date: 2022-09-19 05:22+0000\n"
+"Last-Translator: Lubomír Baloun <lubosbaloun@gmail.com>\n"
"Language-Team: Czech <https://hosted.weblate.org/projects/godot-engine/godot/"
"cs/>\n"
"Language: cs\n"
@@ -45,11 +46,11 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
-"X-Generator: Weblate 4.14.1-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
-msgstr ""
+msgstr "Ovladač Grafického Tabletu"
#: core/bind/core_bind.cpp
msgid "Clipboard"
@@ -70,7 +71,7 @@ msgstr "V-Sync Zapnutý"
#: core/bind/core_bind.cpp main/main.cpp
msgid "V-Sync Via Compositor"
-msgstr ""
+msgstr "V-Sync Pomocí Kompozitoru"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Delta Smoothing"
@@ -28525,9 +28526,8 @@ msgid "Ninepatch Mode"
msgstr "Interpolační režim"
#: servers/visual_server.cpp
-#, fuzzy
msgid "OpenGL"
-msgstr "Otevřít"
+msgstr "OpenGL"
#: servers/visual_server.cpp
msgid "Batching Send Null"
diff --git a/editor/translations/de.po b/editor/translations/de.po
index a34395385c..7244c02cc1 100644
--- a/editor/translations/de.po
+++ b/editor/translations/de.po
@@ -91,8 +91,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: 2022-08-30 03:11+0000\n"
-"Last-Translator: Felix Bitsch <felix.a.bitsch@gmail.com>\n"
+"PO-Revision-Date: 2022-09-11 22:22+0000\n"
+"Last-Translator: So Wieso <sowieso@dukun.de>\n"
"Language-Team: German <https://hosted.weblate.org/projects/godot-engine/"
"godot/de/>\n"
"Language: de\n"
@@ -15364,20 +15364,18 @@ msgid "Make Local"
msgstr "Lokal machen"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Enable Scene Unique Name(s)"
-msgstr "Szenen-eindeutigen Namen aktivieren"
+msgstr "Szenen-eindeutige(n) Namen aktivieren"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Unique names already used by another node in the scene:"
msgstr ""
-"Ein anderes Node nutzt schon diesen einzigartigen Namen in dieser Szene."
+"Einzigartige Namen, die bereits von anderen Nodes dieser Szene verwendet "
+"werden:"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Disable Scene Unique Name(s)"
-msgstr "Szenen-eindeutigen Namen deaktivieren"
+msgstr "Szenen-eindeutige(n) Namen deaktivieren"
#: editor/scene_tree_dock.cpp
msgid "New Scene Root"
@@ -17444,19 +17442,16 @@ msgid "Auto Update Project"
msgstr "Projekt automatisch aktualisieren"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "Assembly Name"
-msgstr "Anzeigename"
+msgstr "Assembly-Name"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "Solution Directory"
-msgstr "Wähle ein Verzeichnis"
+msgstr "Solution-Verzeichnis"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "C# Project Directory"
-msgstr "Wähle ein Verzeichnis"
+msgstr "C#-Projektverzeichnis"
#: modules/mono/mono_gd/gd_mono_utils.cpp
msgid "End of inner exception stack trace"
@@ -19224,9 +19219,8 @@ msgid "Custom BG Color"
msgstr "Eigene Hintergrundfarbe"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Export Icons"
-msgstr "Export-Icon"
+msgstr "Export-Icons"
#: platform/iphone/export/export.cpp platform/javascript/export/export.cpp
#: platform/osx/export/export.cpp
@@ -20062,6 +20056,9 @@ msgid ""
"Godot's Mono version does not support the UWP platform. Use the standard "
"build (no C# support) if you wish to target UWP."
msgstr ""
+"Die von Godot genutzte Mono-Version unterstützt die UWP-Plattform nicht. "
+"Falls UWP-Unterstützung erforderlich ist, muss Standard-Godot (ohne C#-"
+"Unterstützung) verwendet werden."
#: platform/uwp/export/export.cpp
msgid "Invalid package short name."
diff --git a/editor/translations/es.po b/editor/translations/es.po
index 2788483a33..629b36eea7 100644
--- a/editor/translations/es.po
+++ b/editor/translations/es.po
@@ -94,7 +94,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: 2022-09-07 21:02+0000\n"
+"PO-Revision-Date: 2022-09-27 21:37+0000\n"
"Last-Translator: Javier Ocampos <xavier.ocampos@gmail.com>\n"
"Language-Team: Spanish <https://hosted.weblate.org/projects/godot-engine/"
"godot/es/>\n"
@@ -103,7 +103,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.14.1-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -5564,7 +5564,7 @@ msgstr "Ancho del Minimapa"
#: editor/editor_settings.cpp
msgid "Mouse Extra Buttons Navigate History"
-msgstr "Botones Extra del Ratón Navegar por el Historial"
+msgstr "Botones Extra del Mouse para Navegar por el Historial"
#: editor/editor_settings.cpp
msgid "Drag And Drop Selection"
@@ -8638,7 +8638,7 @@ msgstr ""
#: editor/plugins/baked_lightmap_editor_plugin.cpp
msgid "Bake Lightmaps"
-msgstr "Calcular Lightmaps"
+msgstr "Bakear Lightmaps"
#: editor/plugins/baked_lightmap_editor_plugin.cpp
msgid "LightMap Bake"
@@ -9507,7 +9507,7 @@ msgstr "Clic derecho para añadir punto"
#: editor/plugins/gi_probe_editor_plugin.cpp
msgid "Bake GI Probe"
-msgstr "Calcular GI Probe"
+msgstr "Bakear GI Probe"
#: editor/plugins/gradient_editor_plugin.cpp
msgid "Gradient Edited"
@@ -15357,19 +15357,16 @@ msgid "Make Local"
msgstr "Crear Local"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Enable Scene Unique Name(s)"
-msgstr "Activar Nombre Único de Escena"
+msgstr "Activar Nombre(s) Único(s) de Escena"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Unique names already used by another node in the scene:"
-msgstr "Otro nodo ya utiliza este nombre único en la escena."
+msgstr "Nombres únicos ya utilizados por otro nodo en la escena:"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Disable Scene Unique Name(s)"
-msgstr "Desactivar Nombre Único de Escena"
+msgstr "Desactivar Nombre(s) Único(s) de Escena"
#: editor/scene_tree_dock.cpp
msgid "New Scene Root"
@@ -16813,7 +16810,7 @@ msgstr "Color de la Ruta del Nodo"
#: modules/gdscript/gdscript.cpp modules/visual_script/visual_script.cpp
msgid "Max Call Stack"
-msgstr ""
+msgstr "Pila de llamadas Máxima"
#: modules/gdscript/gdscript.cpp
msgid "Treat Warnings As Errors"
@@ -16953,7 +16950,7 @@ msgstr "Longitud de Bytes"
#: modules/gltf/gltf_buffer_view.cpp
msgid "Byte Stride"
-msgstr ""
+msgstr "Cadencia de Byte"
#: modules/gltf/gltf_buffer_view.cpp
msgid "Indices"
@@ -17089,11 +17086,11 @@ msgstr "Factor Specular"
#: modules/gltf/gltf_spec_gloss.cpp
msgid "Spec Gloss Img"
-msgstr ""
+msgstr "Espec. Brillo Img"
#: modules/gltf/gltf_state.cpp
msgid "Json"
-msgstr ""
+msgstr "Json"
#: modules/gltf/gltf_state.cpp
msgid "Major Version"
@@ -17109,7 +17106,7 @@ msgstr "Datos GLB"
#: modules/gltf/gltf_state.cpp
msgid "Use Named Skin Binds"
-msgstr ""
+msgstr "Usar Vínculos de Skins con Nombre"
#: modules/gltf/gltf_state.cpp
msgid "Buffer Views"
@@ -17117,7 +17114,7 @@ msgstr "Vistas del Buffer"
#: modules/gltf/gltf_state.cpp
msgid "Accessors"
-msgstr ""
+msgstr "Accesos"
#: modules/gltf/gltf_state.cpp
msgid "Scene Name"
@@ -17138,7 +17135,7 @@ msgstr "Imágenes"
#: modules/gltf/gltf_state.cpp
msgid "Cameras"
-msgstr ""
+msgstr "Cámaras"
#: modules/gltf/gltf_state.cpp servers/visual_server.cpp
msgid "Lights"
@@ -17178,7 +17175,7 @@ msgstr "Uso en Luz Bakeada"
#: modules/gridmap/grid_map.cpp scene/2d/tile_map.cpp
msgid "Cell"
-msgstr ""
+msgstr "Celda"
#: modules/gridmap/grid_map.cpp
msgid "Octant Size"
@@ -17200,7 +17197,7 @@ msgstr "Centro Z"
#: scene/2d/tile_map.cpp scene/3d/collision_object.cpp scene/3d/soft_body.cpp
#: scene/resources/material.cpp
msgid "Mask"
-msgstr ""
+msgstr "Máscara"
#: modules/gridmap/grid_map.cpp scene/2d/tile_map.cpp
msgid "Bake Navigation"
@@ -17376,19 +17373,19 @@ msgstr "CPU Lightmapper"
#: modules/lightmapper_cpu/register_types.cpp
msgid "Low Quality Ray Count"
-msgstr ""
+msgstr "Conteo de Rayos de Baja Calidad"
#: modules/lightmapper_cpu/register_types.cpp
msgid "Medium Quality Ray Count"
-msgstr ""
+msgstr "Conteo de Rayos de Calidad Media"
#: modules/lightmapper_cpu/register_types.cpp
msgid "High Quality Ray Count"
-msgstr ""
+msgstr "Conteo de Rayos de Calidad Alta"
#: modules/lightmapper_cpu/register_types.cpp
msgid "Ultra Quality Ray Count"
-msgstr ""
+msgstr "Conteo de Rayos de Calidad Ultra"
#: modules/minimp3/audio_stream_mp3.cpp
#: modules/minimp3/resource_importer_mp3.cpp
@@ -17399,11 +17396,11 @@ msgstr "Offset de Bucle"
#: modules/mobile_vr/mobile_vr_interface.cpp
msgid "Eye Height"
-msgstr ""
+msgstr "Altura Ocular"
#: modules/mobile_vr/mobile_vr_interface.cpp
msgid "IOD"
-msgstr ""
+msgstr "IOD"
#: modules/mobile_vr/mobile_vr_interface.cpp
msgid "Display Width"
@@ -17415,15 +17412,15 @@ msgstr "Pantalla a Lente"
#: modules/mobile_vr/mobile_vr_interface.cpp
msgid "Oversample"
-msgstr ""
+msgstr "Sobremuestreo"
#: modules/mobile_vr/mobile_vr_interface.cpp
msgid "K1"
-msgstr ""
+msgstr "K1"
#: modules/mobile_vr/mobile_vr_interface.cpp
msgid "K2"
-msgstr ""
+msgstr "K2"
#: modules/mono/csharp_script.cpp
msgid "Class name can't be a reserved keyword"
@@ -17438,23 +17435,20 @@ msgid "Auto Update Project"
msgstr "Actualización Automática del Proyecto"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "Assembly Name"
-msgstr "Nombre a Mostrar"
+msgstr "Nombre del Conjunto"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "Solution Directory"
-msgstr "Selecciona un directorio"
+msgstr "Directorio de Soluciones"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "C# Project Directory"
-msgstr "Selecciona un directorio"
+msgstr "Directorio de Proyectos C#"
#: modules/mono/mono_gd/gd_mono_utils.cpp
msgid "End of inner exception stack trace"
-msgstr "Fin del reporte de la pila de excepciones"
+msgstr "Fin de la pila de excepciones internas"
#: modules/navigation/navigation_mesh_editor_plugin.cpp
#: scene/3d/navigation_mesh_instance.cpp
@@ -17465,7 +17459,7 @@ msgstr ""
#: modules/navigation/navigation_mesh_editor_plugin.cpp
msgid "Bake NavMesh"
-msgstr "Calcular NavMesh"
+msgstr "Bakear NavMesh"
#: modules/navigation/navigation_mesh_editor_plugin.cpp
msgid "Clear the navigation mesh."
@@ -17525,7 +17519,7 @@ msgstr "¡Hecho!"
#: modules/opensimplex/noise_texture.cpp
msgid "Seamless"
-msgstr ""
+msgstr "Sin costuras"
#: modules/opensimplex/noise_texture.cpp
msgid "As Normal Map"
@@ -17533,11 +17527,11 @@ msgstr "Como Mapa Normal"
#: modules/opensimplex/noise_texture.cpp
msgid "Bump Strength"
-msgstr ""
+msgstr "Fuerza de Choque"
#: modules/opensimplex/noise_texture.cpp
msgid "Noise"
-msgstr ""
+msgstr "Ruido"
#: modules/opensimplex/noise_texture.cpp
msgid "Noise Offset"
@@ -17545,11 +17539,11 @@ msgstr "Offset de Ruido"
#: modules/opensimplex/open_simplex_noise.cpp
msgid "Octaves"
-msgstr ""
+msgstr "Octavas"
#: modules/opensimplex/open_simplex_noise.cpp
msgid "Period"
-msgstr ""
+msgstr "Periodo"
#: modules/opensimplex/open_simplex_noise.cpp
msgid "Persistence"
@@ -17557,11 +17551,11 @@ msgstr "Persistencia"
#: modules/opensimplex/open_simplex_noise.cpp
msgid "Lacunarity"
-msgstr ""
+msgstr "Lacunaridad"
#: modules/regex/regex.cpp
msgid "Subject"
-msgstr ""
+msgstr "Asunto"
#: modules/regex/regex.cpp
msgid "Names"
@@ -17573,15 +17567,15 @@ msgstr "Cadenas"
#: modules/upnp/upnp.cpp
msgid "Discover Multicast If"
-msgstr ""
+msgstr "Descubrir Multicast si"
#: modules/upnp/upnp.cpp
msgid "Discover Local Port"
-msgstr ""
+msgstr "Descubrir Puerto Local"
#: modules/upnp/upnp.cpp
msgid "Discover IPv6"
-msgstr ""
+msgstr "Descubrir IPV6"
#: modules/upnp/upnp_device.cpp
msgid "Description URL"
@@ -17593,7 +17587,7 @@ msgstr "Tipo de Servicio"
#: modules/upnp/upnp_device.cpp
msgid "IGD Control URL"
-msgstr ""
+msgstr "IGD Control URL"
#: modules/upnp/upnp_device.cpp
msgid "IGD Service Type"
@@ -17601,7 +17595,7 @@ msgstr "Tipo de Servicio IGD"
#: modules/upnp/upnp_device.cpp
msgid "IGD Our Addr"
-msgstr ""
+msgstr "Dirección de IGD"
#: modules/upnp/upnp_device.cpp
msgid "IGD Status"
@@ -18261,7 +18255,7 @@ msgstr "SubCall"
#: modules/visual_script/visual_script_nodes.cpp scene/gui/graph_node.cpp
msgid "Title"
-msgstr ""
+msgstr "Título"
#: modules/visual_script/visual_script_nodes.cpp
msgid "Construct %s"
@@ -18329,7 +18323,7 @@ msgstr "Modo de Escritura"
#: modules/webrtc/webrtc_data_channel.h
msgid "WebRTC"
-msgstr ""
+msgstr "WebRTC"
#: modules/webrtc/webrtc_data_channel.h
msgid "Max Channel In Buffer (KB)"
@@ -18337,11 +18331,11 @@ msgstr "Buffer de Canal Máximo (KB)"
#: modules/websocket/websocket_client.cpp
msgid "Verify SSL"
-msgstr ""
+msgstr "Verificar SSL"
#: modules/websocket/websocket_client.cpp
msgid "Trusted SSL Certificate"
-msgstr ""
+msgstr "Certificado SSL de Confianza"
#: modules/websocket/websocket_macros.h
msgid "WebSocket Client"
@@ -18353,7 +18347,7 @@ msgstr "Buffer de Entrada Máximo (KB)"
#: modules/websocket/websocket_macros.h
msgid "Max In Packets"
-msgstr ""
+msgstr "Paquetes Máximos de Entrada"
#: modules/websocket/websocket_macros.h
msgid "Max Out Buffer (KB)"
@@ -18361,7 +18355,7 @@ msgstr "Buffer de Salida Máximo (KB)"
#: modules/websocket/websocket_macros.h
msgid "Max Out Packets"
-msgstr ""
+msgstr "Paquetes Máximos de Salida"
#: modules/websocket/websocket_macros.h
msgid "WebSocket Server"
@@ -18369,7 +18363,7 @@ msgstr "Servidor WebSocket"
#: modules/websocket/websocket_server.cpp
msgid "Bind IP"
-msgstr ""
+msgstr "Vincular IP"
#: modules/websocket/websocket_server.cpp
msgid "Private Key"
@@ -18377,7 +18371,7 @@ msgstr "Clave Privada"
#: modules/websocket/websocket_server.cpp platform/javascript/export/export.cpp
msgid "SSL Certificate"
-msgstr ""
+msgstr "Certificado SSL"
#: modules/websocket/websocket_server.cpp
msgid "CA Chain"
@@ -18401,11 +18395,11 @@ msgstr "Características Opcionales"
#: modules/webxr/webxr_interface.cpp
msgid "Requested Reference Space Types"
-msgstr ""
+msgstr "Tipos de Espacios de Referencia Requeridos"
#: modules/webxr/webxr_interface.cpp
msgid "Reference Space Type"
-msgstr ""
+msgstr "Tipo de Espacio de Referencia"
#: modules/webxr/webxr_interface.cpp
msgid "Visibility State"
@@ -18421,7 +18415,7 @@ msgstr "Mapeo Estándar XR"
#: platform/android/export/export.cpp
msgid "Android SDK Path"
-msgstr ""
+msgstr "Ruta del SDK de Android"
#: platform/android/export/export.cpp
msgid "Debug Keystore"
@@ -18429,35 +18423,35 @@ msgstr "Debug Keystore"
#: platform/android/export/export.cpp
msgid "Debug Keystore User"
-msgstr ""
+msgstr "Usuario Debug Keystore"
#: platform/android/export/export.cpp
msgid "Debug Keystore Pass"
-msgstr ""
+msgstr "Contraseña Debug Keystore"
#: platform/android/export/export.cpp
msgid "Force System User"
-msgstr ""
+msgstr "Forzar Usuario del Sistema"
#: platform/android/export/export.cpp
msgid "Shutdown ADB On Exit"
-msgstr ""
+msgstr "Apagar el ADB al Salir"
#: platform/android/export/export_plugin.cpp
msgid "Launcher Icons"
-msgstr ""
+msgstr "Iconos del Launcher"
#: platform/android/export/export_plugin.cpp
msgid "Main 192 X 192"
-msgstr ""
+msgstr "Principal 192 X 192"
#: platform/android/export/export_plugin.cpp
msgid "Adaptive Foreground 432 X 432"
-msgstr ""
+msgstr "Primer Plano Adaptable 432 X 432"
#: platform/android/export/export_plugin.cpp
msgid "Adaptive Background 432 X 432"
-msgstr ""
+msgstr "Fondo Adaptable 432 X 432"
#: platform/android/export/export_plugin.cpp
msgid "Package name is missing."
@@ -18532,7 +18526,7 @@ msgstr "Contraseña de Release"
#: platform/android/export/export_plugin.cpp
msgid "One Click Deploy"
-msgstr ""
+msgstr "Despliegue con Un Clic"
#: platform/android/export/export_plugin.cpp
msgid "Clear Previous Install"
@@ -18540,7 +18534,7 @@ msgstr "Limpiar Instalación Previa"
#: platform/android/export/export_plugin.cpp
msgid "Code"
-msgstr ""
+msgstr "Código"
#: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp
msgid "Package"
@@ -18560,7 +18554,7 @@ msgstr "Clasificar Como Juego"
#: platform/android/export/export_plugin.cpp
msgid "Retain Data On Uninstall"
-msgstr ""
+msgstr "Conservar Datos al Desinstalar"
#: platform/android/export/export_plugin.cpp
msgid "Exclude From Recents"
@@ -18588,11 +18582,11 @@ msgstr "Seguimiento de Manos"
#: platform/android/export/export_plugin.cpp
msgid "Hand Tracking Frequency"
-msgstr ""
+msgstr "Frecuencia de Seguimiento de la Mano"
#: platform/android/export/export_plugin.cpp
msgid "Passthrough"
-msgstr ""
+msgstr "Pasar por"
#: platform/android/export/export_plugin.cpp
msgid "Immersive Mode"
@@ -18620,7 +18614,7 @@ msgstr "Backup de Datos del Usuario"
#: platform/android/export/export_plugin.cpp
msgid "Allow"
-msgstr ""
+msgstr "Permitir"
#: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp
msgid "Command Line"
@@ -18636,7 +18630,7 @@ msgstr "Expansión del APK"
#: platform/android/export/export_plugin.cpp
msgid "Salt"
-msgstr ""
+msgstr "Sal"
#: platform/android/export/export_plugin.cpp
msgid "Public Key"
@@ -18808,12 +18802,15 @@ msgstr ""
#: platform/android/export/export_plugin.cpp
msgid "\"Min SDK\" should be a valid integer, but got \"%s\" which is invalid."
msgstr ""
+"\"Min SDK\" debería ser un entero válido, pero obtuvo \"%s\" que es inválido."
#: platform/android/export/export_plugin.cpp
msgid ""
"\"Min SDK\" cannot be lower than %d, which is the version needed by the "
"Godot library."
msgstr ""
+"\"Min SDK\" no puede ser inferior a %d, que es la versión que necesita la "
+"librería de Godot."
#: platform/android/export/export_plugin.cpp
msgid ""
@@ -19012,67 +19009,67 @@ msgstr "El carácter '% s' no está permitido en el Identificador."
#: platform/iphone/export/export.cpp
msgid "Landscape Launch Screens"
-msgstr ""
+msgstr "Pantalla de Inicio Landscape"
#: platform/iphone/export/export.cpp
msgid "iPhone 2436 X 1125"
-msgstr ""
+msgstr "iPhone 2436 X 1125"
#: platform/iphone/export/export.cpp
msgid "iPhone 2208 X 1242"
-msgstr ""
+msgstr "iPhone 2208 X 1242"
#: platform/iphone/export/export.cpp
msgid "iPad 1024 X 768"
-msgstr ""
+msgstr "iPad 1024 X 768"
#: platform/iphone/export/export.cpp
msgid "iPad 2048 X 1536"
-msgstr ""
+msgstr "iPad 2048 X 1536"
#: platform/iphone/export/export.cpp
msgid "Portrait Launch Screens"
-msgstr ""
+msgstr "Pantalla de Inicio Portrait"
#: platform/iphone/export/export.cpp
msgid "iPhone 640 X 960"
-msgstr ""
+msgstr "iPhone 640 X 960"
#: platform/iphone/export/export.cpp
msgid "iPhone 640 X 1136"
-msgstr ""
+msgstr "iPhone 640 X 1136"
#: platform/iphone/export/export.cpp
msgid "iPhone 750 X 1334"
-msgstr ""
+msgstr "iPhone 750 X 1334"
#: platform/iphone/export/export.cpp
msgid "iPhone 1125 X 2436"
-msgstr ""
+msgstr "iPhone 1125 X 2436"
#: platform/iphone/export/export.cpp
msgid "iPad 768 X 1024"
-msgstr ""
+msgstr "iPad 768 X 1024"
#: platform/iphone/export/export.cpp
msgid "iPad 1536 X 2048"
-msgstr ""
+msgstr "iPad 1536 X 2048"
#: platform/iphone/export/export.cpp
msgid "iPhone 1242 X 2208"
-msgstr ""
+msgstr "iPhone 1242 X 2208"
#: platform/iphone/export/export.cpp
msgid "App Store Team ID"
-msgstr ""
+msgstr "ID del Equipo de la App Store"
#: platform/iphone/export/export.cpp
msgid "Provisioning Profile UUID Debug"
-msgstr ""
+msgstr "Depuración del Perfil de Aprovisionamiento UUID"
#: platform/iphone/export/export.cpp
msgid "Code Sign Identity Debug"
-msgstr ""
+msgstr "Depuración de la Identidad del Código"
#: platform/iphone/export/export.cpp
msgid "Export Method Debug"
@@ -19080,11 +19077,11 @@ msgstr "Exportar Método de Depuración"
#: platform/iphone/export/export.cpp
msgid "Provisioning Profile UUID Release"
-msgstr ""
+msgstr "Release UUID del Perfil de Aprovisionamiento"
#: platform/iphone/export/export.cpp
msgid "Code Sign Identity Release"
-msgstr ""
+msgstr "Release de Código de Identidad"
#: platform/iphone/export/export.cpp
msgid "Export Method Release"
@@ -19092,11 +19089,11 @@ msgstr "Método de Exportación de Release"
#: platform/iphone/export/export.cpp
msgid "Targeted Device Family"
-msgstr ""
+msgstr "Familia de Dispositivos de Destino"
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
msgid "Info"
-msgstr ""
+msgstr "Información"
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
msgid "Identifier"
@@ -19133,11 +19130,11 @@ msgstr "Datos de Usuario"
#: platform/iphone/export/export.cpp
msgid "Accessible From Files App"
-msgstr ""
+msgstr "Accesible desde la Aplicación de Archivos"
#: platform/iphone/export/export.cpp
msgid "Accessible From iTunes Sharing"
-msgstr ""
+msgstr "Accesible desde iTunes Sharing"
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
msgid "Privacy"
@@ -19157,43 +19154,43 @@ msgstr "Descripción del Uso de la Fotolibrería"
#: platform/iphone/export/export.cpp
msgid "iPhone 120 X 120"
-msgstr ""
+msgstr "iPhone 120 X 120"
#: platform/iphone/export/export.cpp
msgid "iPhone 180 X 180"
-msgstr ""
+msgstr "iPhone 180 X 180"
#: platform/iphone/export/export.cpp
msgid "iPad 76 X 76"
-msgstr ""
+msgstr "iPad 76 X 76"
#: platform/iphone/export/export.cpp
msgid "iPad 152 X 152"
-msgstr ""
+msgstr "iPad 152 X 152"
#: platform/iphone/export/export.cpp
msgid "iPad 167 X 167"
-msgstr ""
+msgstr "iPad 167 X 167"
#: platform/iphone/export/export.cpp
msgid "App Store 1024 X 1024"
-msgstr ""
+msgstr "App Store 1024 X 1024"
#: platform/iphone/export/export.cpp
msgid "Spotlight 40 X 40"
-msgstr ""
+msgstr "Spotlight 40 X 40"
#: platform/iphone/export/export.cpp
msgid "Spotlight 80 X 80"
-msgstr ""
+msgstr "Spotlight 80 X 80"
#: platform/iphone/export/export.cpp
msgid "Storyboard"
-msgstr ""
+msgstr "Storyboard"
#: platform/iphone/export/export.cpp
msgid "Use Launch Screen Storyboard"
-msgstr ""
+msgstr "Usar Storyboard en la Pantalla de Inicio"
#: platform/iphone/export/export.cpp
msgid "Image Scale Mode"
@@ -19216,9 +19213,8 @@ msgid "Custom BG Color"
msgstr "Color de Fondo Personalizado"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Export Icons"
-msgstr "Icono de Exportación"
+msgstr "Iconos de Exportación"
#: platform/iphone/export/export.cpp platform/javascript/export/export.cpp
#: platform/osx/export/export.cpp
@@ -19272,7 +19268,7 @@ msgstr "No se pudo leer el archivo: \"%s\"."
#: platform/javascript/export/export.cpp
msgid "PWA"
-msgstr ""
+msgstr "PWA"
#: platform/javascript/export/export.cpp
msgid "Variant"
@@ -19288,15 +19284,15 @@ msgstr "Compresión de Texturas en la VRAM"
#: platform/javascript/export/export.cpp
msgid "For Desktop"
-msgstr ""
+msgstr "Para Escritorio"
#: platform/javascript/export/export.cpp
msgid "For Mobile"
-msgstr ""
+msgstr "Para Móviles"
#: platform/javascript/export/export.cpp
msgid "HTML"
-msgstr ""
+msgstr "HTML"
#: platform/javascript/export/export.cpp
msgid "Export Icon"
@@ -19308,15 +19304,15 @@ msgstr "HTML Shell Personalizado"
#: platform/javascript/export/export.cpp
msgid "Head Include"
-msgstr ""
+msgstr "Incluyendo Cabecera"
#: platform/javascript/export/export.cpp
msgid "Canvas Resize Policy"
-msgstr ""
+msgstr "Política de Redimensionamiento del Canvas"
#: platform/javascript/export/export.cpp
msgid "Focus Canvas On Start"
-msgstr ""
+msgstr "Enfocar Lienzo Al Inicio"
#: platform/javascript/export/export.cpp
msgid "Experimental Virtual Keyboard"
@@ -19324,23 +19320,23 @@ msgstr "Teclado Virtual Experimental"
#: platform/javascript/export/export.cpp
msgid "Progressive Web App"
-msgstr ""
+msgstr "App Web Progresiva"
#: platform/javascript/export/export.cpp
msgid "Offline Page"
-msgstr ""
+msgstr "Página Offline"
#: platform/javascript/export/export.cpp
msgid "Icon 144 X 144"
-msgstr ""
+msgstr "Icono 144 X 144"
#: platform/javascript/export/export.cpp
msgid "Icon 180 X 180"
-msgstr ""
+msgstr "Icono 180 X 180"
#: platform/javascript/export/export.cpp
msgid "Icon 512 X 512"
-msgstr ""
+msgstr "Icono 512 X 512"
#: platform/javascript/export/export.cpp
msgid "Could not read HTML shell: \"%s\"."
@@ -19356,15 +19352,15 @@ msgstr "Error al iniciar el servidor HTTP: %d."
#: platform/javascript/export/export.cpp
msgid "Web"
-msgstr ""
+msgstr "Web"
#: platform/javascript/export/export.cpp
msgid "HTTP Host"
-msgstr ""
+msgstr "HTTP Host"
#: platform/javascript/export/export.cpp
msgid "HTTP Port"
-msgstr ""
+msgstr "Puerto HTTP"
#: platform/javascript/export/export.cpp
msgid "Use SSL"
@@ -19372,7 +19368,7 @@ msgstr "Usar SSL"
#: platform/javascript/export/export.cpp
msgid "SSL Key"
-msgstr ""
+msgstr "Clave SSL"
#: platform/osx/export/codesign.cpp
msgid "Can't get filesystem access."
@@ -19452,7 +19448,7 @@ msgstr "Categoría De La Aplicación"
#: platform/osx/export/export.cpp
msgid "High Res"
-msgstr ""
+msgstr "Alta Resolución"
#: platform/osx/export/export.cpp
msgid "Location Usage Description"
@@ -19460,7 +19456,7 @@ msgstr "Ubicación de la Descripción de Uso"
#: platform/osx/export/export.cpp
msgid "Address Book Usage Description"
-msgstr ""
+msgstr "Descripción de Uso de la Libreta de Direcciones"
#: platform/osx/export/export.cpp
msgid "Calendar Usage Description"
@@ -19480,15 +19476,15 @@ msgstr "Descripción de Uso de la Carpeta de Documentos"
#: platform/osx/export/export.cpp
msgid "Downloads Folder Usage Description"
-msgstr ""
+msgstr "Descripción de Uso de la Carpeta de Descargas"
#: platform/osx/export/export.cpp
msgid "Network Volumes Usage Description"
-msgstr ""
+msgstr "Descripción de Uso de Volúmenes de Red"
#: platform/osx/export/export.cpp
msgid "Removable Volumes Usage Description"
-msgstr ""
+msgstr "Descripción de Uso de Volúmenes Extraíbles"
#: platform/osx/export/export.cpp platform/windows/export/export.cpp
msgid "Codesign"
@@ -19521,15 +19517,15 @@ msgstr "Archivo Personalizado"
#: platform/osx/export/export.cpp
msgid "Allow JIT Code Execution"
-msgstr ""
+msgstr "Permitir Ejecución de Código JIT"
#: platform/osx/export/export.cpp
msgid "Allow Unsigned Executable Memory"
-msgstr ""
+msgstr "Permitir Memoria Ejecutable Desfasada"
#: platform/osx/export/export.cpp
msgid "Allow Dyld Environment Variables"
-msgstr ""
+msgstr "Permitir Variables de Entorno Dyld"
#: platform/osx/export/export.cpp
msgid "Disable Library Validation"
@@ -19541,11 +19537,11 @@ msgstr "Entrada de Audio"
#: platform/osx/export/export.cpp
msgid "Address Book"
-msgstr ""
+msgstr "Libreta de Direcciones"
#: platform/osx/export/export.cpp
msgid "Calendars"
-msgstr ""
+msgstr "Calendarios"
#: platform/osx/export/export.cpp
msgid "Photos Library"
@@ -19561,7 +19557,7 @@ msgstr "Depuración"
#: platform/osx/export/export.cpp
msgid "App Sandbox"
-msgstr ""
+msgstr "App Sandbox"
#: platform/osx/export/export.cpp
msgid "Network Server"
@@ -19577,7 +19573,7 @@ msgstr "Dispositivo USB"
#: platform/osx/export/export.cpp
msgid "Device Bluetooth"
-msgstr ""
+msgstr "Dispositivo Bluetooth"
#: platform/osx/export/export.cpp
msgid "Files Downloads"
@@ -19605,7 +19601,7 @@ msgstr "Notarización"
#: platform/osx/export/export.cpp
msgid "Apple ID Name"
-msgstr ""
+msgstr "Nombre del ID de Apple"
#: platform/osx/export/export.cpp
msgid "Apple ID Password"
@@ -19613,7 +19609,7 @@ msgstr "Contraseña del ID de Apple"
#: platform/osx/export/export.cpp
msgid "Apple Team ID"
-msgstr ""
+msgstr "ID del Equipo Apple"
#: platform/osx/export/export.cpp
msgid "Could not open icon file \"%s\"."
@@ -19629,7 +19625,7 @@ msgstr "La notarización ha fallado."
#: platform/osx/export/export.cpp
msgid "Notarization request UUID: \"%s\""
-msgstr ""
+msgstr "Solicitud de notarización UUID: \"%s\""
#: platform/osx/export/export.cpp
msgid ""
@@ -19668,11 +19664,11 @@ msgstr ""
#: platform/osx/export/export.cpp
msgid "Built-in CodeSign failed with error \"%s\"."
-msgstr ""
+msgstr "El CodeSign incorporado falló con el error \"%s\"."
#: platform/osx/export/export.cpp
msgid "Built-in CodeSign require regex module."
-msgstr ""
+msgstr "El CodeSign incorporado requiere un módulo regex."
#: platform/osx/export/export.cpp
msgid ""
@@ -20049,6 +20045,8 @@ msgid ""
"Godot's Mono version does not support the UWP platform. Use the standard "
"build (no C# support) if you wish to target UWP."
msgstr ""
+"La versión Mono de Godot no es compatible con la plataforma UWP. Utiliza la "
+"compilación estándar (sin soporte para C#) si deseas enfocarte en UWP."
#: platform/uwp/export/export.cpp
msgid "Invalid package short name."
diff --git a/editor/translations/et.po b/editor/translations/et.po
index 20da09ffc5..0a4ab2fe0b 100644
--- a/editor/translations/et.po
+++ b/editor/translations/et.po
@@ -6,118 +6,111 @@
# Mattias Aabmets <mattias.aabmets@gmail.com>, 2019.
# StReef <streef.gtx@gmail.com>, 2020, 2021.
# René <renepiik@gmail.com>, 2020.
-# Kritzmensch <streef.gtx@gmail.com>, 2021.
+# Kritzmensch <streef.gtx@gmail.com>, 2021, 2022.
+# dogyx <aaronloit@zohomail.eu>, 2022.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2021-07-16 05:47+0000\n"
-"Last-Translator: Kritzmensch <streef.gtx@gmail.com>\n"
+"PO-Revision-Date: 2022-09-16 07:12+0000\n"
+"Last-Translator: dogyx <aaronloit@zohomail.eu>\n"
"Language-Team: Estonian <https://hosted.weblate.org/projects/godot-engine/"
"godot/et/>\n"
"Language: et\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.7.2-dev\n"
+"X-Generator: Weblate 4.14.1-dev\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
-msgstr ""
+msgstr "Graafikatahvli draiver"
#: core/bind/core_bind.cpp
msgid "Clipboard"
-msgstr ""
+msgstr "Lõikelaud"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Current Screen"
-msgstr "Virnakaadrid"
+msgstr "Avatud Ekraan"
#: core/bind/core_bind.cpp
msgid "Exit Code"
-msgstr ""
+msgstr "Lõpukood"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "V-Sync Enabled"
-msgstr "Luba"
+msgstr "V-Sync Sees"
#: core/bind/core_bind.cpp main/main.cpp
msgid "V-Sync Via Compositor"
-msgstr ""
+msgstr "V-sync komposiitori kaudu"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Delta Smoothing"
-msgstr ""
+msgstr "Delta silumine"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Low Processor Usage Mode"
-msgstr "Liigutamisrežiim"
+msgstr "Protsessori madala võimsuse režiim"
#: core/bind/core_bind.cpp
msgid "Low Processor Usage Mode Sleep (µsec)"
-msgstr ""
+msgstr "Protsessori madala võimsuse režiimi puhkeaeg (µsek)"
#: core/bind/core_bind.cpp main/main.cpp platform/uwp/os_uwp.cpp
msgid "Keep Screen On"
-msgstr ""
+msgstr "Hoia ekraan sees"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Min Window Size"
-msgstr "Suurus: "
+msgstr "Minimaalne akna suurus"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Max Window Size"
-msgstr "Suurus: "
+msgstr "Maksimaalne akna suurus"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Screen Orientation"
-msgstr "Ava dokumentatsioon"
+msgstr "Ekraani orientatsioon"
#: core/bind/core_bind.cpp core/project_settings.cpp main/main.cpp
#: platform/uwp/os_uwp.cpp
-#, fuzzy
msgid "Window"
-msgstr "Uus aken"
+msgstr "Aken"
#: core/bind/core_bind.cpp core/project_settings.cpp
msgid "Borderless"
-msgstr ""
+msgstr "Ääriseta"
#: core/bind/core_bind.cpp
msgid "Per Pixel Transparency Enabled"
-msgstr ""
+msgstr "Läbipaistvus piksli kohta lubatud"
#: core/bind/core_bind.cpp core/project_settings.cpp
msgid "Fullscreen"
-msgstr ""
+msgstr "Täisekraan"
#: core/bind/core_bind.cpp
msgid "Maximized"
-msgstr ""
+msgstr "Maksimeeritud"
#: core/bind/core_bind.cpp
msgid "Minimized"
-msgstr ""
+msgstr "Minimeeritud"
#: core/bind/core_bind.cpp core/project_settings.cpp scene/gui/dialogs.cpp
#: scene/gui/graph_node.cpp
msgid "Resizable"
-msgstr ""
+msgstr "Suurust muudetav"
#: core/bind/core_bind.cpp core/os/input_event.cpp scene/2d/node_2d.cpp
#: scene/2d/physics_body_2d.cpp scene/2d/remote_transform_2d.cpp
#: scene/3d/physics_body.cpp scene/3d/remote_transform.cpp
#: scene/gui/control.cpp scene/gui/line_edit.cpp
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Position"
-msgstr "Doki asukoht"
+msgstr "Asend"
#: core/bind/core_bind.cpp core/project_settings.cpp editor/editor_settings.cpp
#: main/main.cpp modules/gridmap/grid_map.cpp
@@ -128,63 +121,56 @@ msgstr "Doki asukoht"
#: scene/resources/primitive_meshes.cpp scene/resources/sky.cpp
#: scene/resources/style_box.cpp scene/resources/texture.cpp
#: scene/resources/visual_shader.cpp servers/visual_server.cpp
-#, fuzzy
msgid "Size"
-msgstr "Suurus: "
+msgstr "Suurus"
#: core/bind/core_bind.cpp
msgid "Endian Swap"
-msgstr ""
+msgstr "Endiani vahetus"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Editor Hint"
-msgstr "Redaktor"
+msgstr "Toimeti vihje"
#: core/bind/core_bind.cpp
msgid "Print Error Messages"
-msgstr ""
+msgstr "Trüki veateated"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Iterations Per Second"
-msgstr "Interpolatsiooni režiim"
+msgstr "Iteratsioone sekundis"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Target FPS"
-msgstr "Ressursi tee"
+msgstr "Kaadrisageduse eesmärk"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Time Scale"
-msgstr "Skaleerimisrežiim"
+msgstr "Ajaskaala"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Physics Jitter Fix"
-msgstr ""
+msgstr "Füüsika värisemise parandus"
#: core/bind/core_bind.cpp editor/plugins/version_control_editor_plugin.cpp
msgid "Error"
-msgstr ""
+msgstr "Viga"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Error String"
-msgstr "Redaktori sätted"
+msgstr "Veasõne"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Error Line"
-msgstr "Viga:"
+msgstr "Vearida"
#: core/bind/core_bind.cpp
msgid "Result"
-msgstr ""
+msgstr "Tulemus"
#: core/command_queue_mt.cpp core/message_queue.cpp main/main.cpp
msgid "Memory"
-msgstr ""
+msgstr "Mälu"
#: core/command_queue_mt.cpp core/message_queue.cpp
#: core/register_core_types.cpp drivers/gles2/rasterizer_canvas_base_gles2.cpp
@@ -195,128 +181,119 @@ msgstr ""
#: modules/webrtc/webrtc_data_channel.h modules/websocket/websocket_macros.h
#: servers/visual_server.cpp
msgid "Limits"
-msgstr ""
+msgstr "Limiidid"
#: core/command_queue_mt.cpp
msgid "Command Queue"
-msgstr ""
+msgstr "Käskude järjekord"
#: core/command_queue_mt.cpp
msgid "Multithreading Queue Size (KB)"
-msgstr ""
+msgstr "Lõimtöötluse järjekorra suurus (KB)"
#: core/func_ref.cpp modules/visual_script/visual_script_builtin_funcs.cpp
#: modules/visual_script/visual_script_func_nodes.cpp
#: modules/visual_script/visual_script_nodes.cpp
#: scene/resources/visual_shader_nodes.cpp
-#, fuzzy
msgid "Function"
-msgstr "Funktsioonid"
+msgstr "Funktsioon"
#: core/image.cpp core/packed_data_container.cpp scene/2d/polygon_2d.cpp
#: scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp
msgid "Data"
-msgstr ""
+msgstr "Andmed"
#: core/io/file_access_network.cpp core/register_core_types.cpp
#: editor/editor_file_dialog.cpp editor/editor_settings.cpp main/main.cpp
#: modules/gdscript/language_server/gdscript_language_server.cpp
#: modules/webrtc/webrtc_data_channel.h modules/websocket/websocket_macros.h
#: scene/gui/file_dialog.cpp
-#, fuzzy
msgid "Network"
-msgstr "Võrgu profileerija"
+msgstr "Võrk"
#: core/io/file_access_network.cpp
-#, fuzzy
msgid "Remote FS"
-msgstr "Eemalda"
+msgstr "Kaugfailisüsteem"
#: core/io/file_access_network.cpp
msgid "Page Size"
-msgstr ""
+msgstr "Lehekülje suurus"
#: core/io/file_access_network.cpp
msgid "Page Read Ahead"
-msgstr ""
+msgstr "Lehekülje ettelaadimine"
#: core/io/http_client.cpp
msgid "Blocking Mode Enabled"
-msgstr ""
+msgstr "Blokeerimisrežiim lubatud"
#: core/io/http_client.cpp
-#, fuzzy
msgid "Connection"
-msgstr "Ühenda"
+msgstr "Ühendus"
#: core/io/http_client.cpp
msgid "Read Chunk Size"
-msgstr ""
+msgstr "Loe tüki suurust"
#: core/io/marshalls.cpp
-#, fuzzy
msgid "Object ID"
-msgstr "Objekte kuvatud"
+msgstr "Objekti ID"
#: core/io/multiplayer_api.cpp core/io/packet_peer.cpp
msgid "Allow Object Decoding"
-msgstr ""
+msgstr "Luba objekti dekodeerimine"
#: core/io/multiplayer_api.cpp scene/main/scene_tree.cpp
msgid "Refuse New Network Connections"
-msgstr ""
+msgstr "Keeldu uutest võrguühendustest"
#: core/io/multiplayer_api.cpp scene/main/scene_tree.cpp
-#, fuzzy
msgid "Network Peer"
-msgstr "Võrgu profileerija"
+msgstr "Võrgukaaslane"
#: core/io/multiplayer_api.cpp scene/animation/animation_player.cpp
-#, fuzzy
msgid "Root Node"
-msgstr "Sõlm"
+msgstr "Juur Node"
#: core/io/networked_multiplayer_peer.cpp
-#, fuzzy
msgid "Refuse New Connections"
-msgstr "Ühenda"
+msgstr "Keeldu uutest ühendustest"
#: core/io/networked_multiplayer_peer.cpp
-#, fuzzy
msgid "Transfer Mode"
-msgstr "Skaleerimisrežiim"
+msgstr "Ülekanderežiim"
#: core/io/packet_peer.cpp
msgid "Encode Buffer Max Size"
-msgstr ""
+msgstr "Kodeerimispuhvri maksimaalne suurus"
#: core/io/packet_peer.cpp
msgid "Input Buffer Max Size"
-msgstr ""
+msgstr "Sisendpuhvri maksimaalne suurus"
#: core/io/packet_peer.cpp
msgid "Output Buffer Max Size"
-msgstr ""
+msgstr "Väljundpuhvri maksimaalne suurus"
#: core/io/packet_peer.cpp
msgid "Stream Peer"
-msgstr ""
+msgstr "Voogedastuskaaslane"
#: core/io/stream_peer.cpp
msgid "Big Endian"
-msgstr ""
+msgstr "Suur Endian"
#: core/io/stream_peer.cpp
msgid "Data Array"
-msgstr ""
+msgstr "Andmemassiiv"
#: core/io/stream_peer_ssl.cpp
msgid "Blocking Handshake"
-msgstr ""
+msgstr "Käepigistuse blokeerimine"
#: core/io/udp_server.cpp
msgid "Max Pending Connections"
-msgstr ""
+msgstr "Maksimaalne ootel ühenduste arv"
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/visual_script/visual_script_builtin_funcs.cpp
@@ -326,7 +303,7 @@ msgstr ""
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
msgid "Expected a string of length 1 (a character)."
-msgstr "Eeldati sõne pikkusega 1 (trükimärk)."
+msgstr "Eeldati sõne pikkusega 1 (tähemärk)."
#: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp
#: modules/mono/glue/gd_glue.cpp
@@ -335,7 +312,6 @@ msgid "Not enough bytes for decoding bytes, or invalid format."
msgstr "Ebapiisav kogus baite nende dekodeerimiseks või kehtetu formaat."
#: core/math/expression.cpp
-#, fuzzy
msgid "Invalid input %d (not passed) in expression"
msgstr "Väljendis on kehtetu sisend %i (mitte edastatud)"
@@ -366,209 +342,193 @@ msgstr "'%' kutsudes:"
#: core/math/random_number_generator.cpp
#: modules/opensimplex/open_simplex_noise.cpp
msgid "Seed"
-msgstr ""
+msgstr "Seeme"
#: core/math/random_number_generator.cpp
-#, fuzzy
msgid "State"
msgstr "Olek"
#: core/message_queue.cpp
msgid "Message Queue"
-msgstr ""
+msgstr "Sõnumijärjekord"
#: core/message_queue.cpp
msgid "Max Size (KB)"
-msgstr ""
+msgstr "Maksimaalne suurus (KB)"
#: core/os/input.cpp
-#, fuzzy
msgid "Mouse Mode"
-msgstr "Liigutamisrežiim"
+msgstr "Hiire režiim"
#: core/os/input.cpp
msgid "Use Accumulated Input"
-msgstr ""
+msgstr "Kasuta akumuleeritud sisendit"
#: core/os/input_event.cpp editor/project_settings_editor.cpp
#: servers/audio_server.cpp
msgid "Device"
-msgstr ""
+msgstr "Seade"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Alt"
-msgstr "Tähelepanu!"
+msgstr "Alt"
#: core/os/input_event.cpp
msgid "Shift"
-msgstr ""
+msgstr "Shift"
#: core/os/input_event.cpp
msgid "Control"
-msgstr ""
+msgstr "Control"
#: core/os/input_event.cpp
msgid "Meta"
-msgstr ""
+msgstr "Meta"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Command"
-msgstr "Kogukond"
+msgstr "Command"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Physical"
-msgstr "Luba"
+msgstr "Füüsiline"
#: core/os/input_event.cpp scene/2d/touch_screen_button.cpp
#: scene/gui/base_button.cpp scene/gui/texture_button.cpp
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Pressed"
-msgstr "Eelseadistus"
+msgstr "Vajutatud"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Scancode"
-msgstr "Otsi"
+msgstr "Klahvikood"
#: core/os/input_event.cpp
msgid "Physical Scancode"
-msgstr ""
+msgstr "Füüsiline klahvikood"
#: core/os/input_event.cpp
msgid "Unicode"
-msgstr ""
+msgstr "Unicode"
#: core/os/input_event.cpp
msgid "Echo"
-msgstr ""
+msgstr "Kaja"
#: core/os/input_event.cpp scene/gui/base_button.cpp
msgid "Button Mask"
-msgstr ""
+msgstr "Nupu mask"
#: core/os/input_event.cpp scene/2d/node_2d.cpp scene/gui/control.cpp
-#, fuzzy
msgid "Global Position"
-msgstr "Konstant"
+msgstr "Globaalne positsioon"
#: core/os/input_event.cpp
msgid "Factor"
-msgstr ""
+msgstr "Faktor"
#: core/os/input_event.cpp
msgid "Button Index"
-msgstr ""
+msgstr "Nupu indeks"
#: core/os/input_event.cpp
msgid "Doubleclick"
-msgstr ""
+msgstr "Topeltklõps"
#: core/os/input_event.cpp
msgid "Tilt"
-msgstr ""
+msgstr "Kallutus"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Pressure"
-msgstr "Eelseadistus"
+msgstr "Surve"
#: core/os/input_event.cpp
msgid "Pen Inverted"
-msgstr ""
+msgstr "Pliiats ümberpööratud"
#: core/os/input_event.cpp
msgid "Relative"
-msgstr ""
+msgstr "Suhteline"
#: core/os/input_event.cpp scene/2d/camera_2d.cpp scene/2d/cpu_particles_2d.cpp
#: scene/3d/cpu_particles.cpp scene/3d/interpolated_camera.cpp
#: scene/animation/animation_player.cpp scene/resources/environment.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Speed"
-msgstr "Skaleerimisrežiim"
+msgstr "Kiirus"
#: core/os/input_event.cpp editor/project_settings_editor.cpp
#: scene/3d/sprite_3d.cpp
msgid "Axis"
-msgstr ""
+msgstr "Telg"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Axis Value"
-msgstr "(väärtus)"
+msgstr "Telje väärtus"
#: core/os/input_event.cpp modules/visual_script/visual_script_func_nodes.cpp
msgid "Index"
-msgstr ""
+msgstr "Indeks"
#: core/os/input_event.cpp editor/project_settings_editor.cpp
#: modules/visual_script/visual_script_nodes.cpp
#: scene/2d/touch_screen_button.cpp
msgid "Action"
-msgstr ""
+msgstr "Tegevus"
#: core/os/input_event.cpp scene/resources/environment.cpp
#: scene/resources/material.cpp
msgid "Strength"
-msgstr ""
+msgstr "Tugevus"
#: core/os/input_event.cpp
msgid "Delta"
-msgstr ""
+msgstr "Delta"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Channel"
-msgstr "Muuda"
+msgstr "Kanal"
#: core/os/input_event.cpp main/main.cpp
-#, fuzzy
msgid "Message"
-msgstr "Kasutus"
+msgstr "Sõnum"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Pitch"
-msgstr "Frontaal"
+msgstr "Helikõrgus"
#: core/os/input_event.cpp scene/2d/cpu_particles_2d.cpp
#: scene/2d/physics_body_2d.cpp scene/3d/cpu_particles.cpp
#: scene/3d/physics_body.cpp scene/resources/particles_material.cpp
msgid "Velocity"
-msgstr ""
+msgstr "Kiirus"
#: core/os/input_event.cpp
msgid "Instrument"
-msgstr ""
+msgstr "Instrument"
#: core/os/input_event.cpp
msgid "Controller Number"
-msgstr ""
+msgstr "Kontrolleri number"
#: core/os/input_event.cpp
msgid "Controller Value"
-msgstr ""
+msgstr "Kontrolleri väärtus"
#: core/project_settings.cpp editor/editor_node.cpp main/main.cpp
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Application"
-msgstr "Animatsioon"
+msgstr "Rakendus"
#: core/project_settings.cpp main/main.cpp
msgid "Config"
-msgstr ""
+msgstr "Konfiig"
#: core/project_settings.cpp
-#, fuzzy
msgid "Project Settings Override"
-msgstr "Projekti sätted..."
+msgstr "Projekti seadete ülekirjutamine"
#: core/project_settings.cpp core/resource.cpp
#: editor/animation_track_editor.cpp editor/editor_autoload_settings.cpp
@@ -599,40 +559,39 @@ msgstr "Käivita"
#: core/project_settings.cpp editor/editor_node.cpp
#: editor/run_settings_dialog.cpp main/main.cpp
msgid "Main Scene"
-msgstr ""
+msgstr "Peamine stseen"
#: core/project_settings.cpp
msgid "Disable stdout"
-msgstr ""
+msgstr "Lülita stdout välja"
#: core/project_settings.cpp
msgid "Disable stderr"
-msgstr ""
+msgstr "Lülita stderr välja"
#: core/project_settings.cpp
msgid "Use Hidden Project Data Directory"
-msgstr ""
+msgstr "Kasuta varjatud projektiandmete kausta"
#: core/project_settings.cpp
msgid "Use Custom User Dir"
-msgstr ""
+msgstr "Kasuta kohandatud kasutaja kausta"
#: core/project_settings.cpp
msgid "Custom User Dir Name"
-msgstr ""
+msgstr "Kohandatud kasutaja kausta nimi"
#: core/project_settings.cpp main/main.cpp
#: platform/javascript/export/export.cpp platform/osx/export/export.cpp
#: platform/uwp/os_uwp.cpp
-#, fuzzy
msgid "Display"
-msgstr "Kuva kõik"
+msgstr "Ekraan"
#: core/project_settings.cpp main/main.cpp modules/csg/csg_shape.cpp
#: modules/opensimplex/noise_texture.cpp scene/2d/line_2d.cpp
#: scene/3d/label_3d.cpp scene/gui/text_edit.cpp scene/resources/texture.cpp
msgid "Width"
-msgstr ""
+msgstr "Laius"
#: core/project_settings.cpp main/main.cpp modules/csg/csg_shape.cpp
#: modules/gltf/gltf_node.cpp modules/opensimplex/noise_texture.cpp
@@ -641,20 +600,19 @@ msgstr ""
#: scene/resources/font.cpp scene/resources/navigation_mesh.cpp
#: scene/resources/primitive_meshes.cpp scene/resources/texture.cpp
msgid "Height"
-msgstr ""
+msgstr "Kõrgus"
#: core/project_settings.cpp
msgid "Always On Top"
-msgstr ""
+msgstr "Alati pealmine"
#: core/project_settings.cpp
msgid "Test Width"
-msgstr ""
+msgstr "Testimise laius"
#: core/project_settings.cpp
-#, fuzzy
msgid "Test Height"
-msgstr "Testimine"
+msgstr "Testimise kõrgus"
#: core/project_settings.cpp editor/animation_track_editor.cpp
#: editor/editor_audio_buses.cpp main/main.cpp servers/audio_server.cpp
@@ -662,9 +620,8 @@ msgid "Audio"
msgstr "Heli"
#: core/project_settings.cpp
-#, fuzzy
msgid "Default Bus Layout"
-msgstr "Lae vaikimise siini paigutus."
+msgstr "Siini vaikepaigutus"
#: core/project_settings.cpp editor/editor_export.cpp
#: editor/editor_file_system.cpp editor/editor_node.cpp
@@ -675,90 +632,84 @@ msgstr "Redaktor"
#: core/project_settings.cpp
msgid "Main Run Args"
-msgstr ""
+msgstr "Peamised jooksuargumendid"
#: core/project_settings.cpp
-#, fuzzy
msgid "Scene Naming"
-msgstr "Stseeni tee:"
+msgstr "Stseeni nimetamine"
#: core/project_settings.cpp
msgid "Search In File Extensions"
-msgstr ""
+msgstr "Otsi faililaienditest"
#: core/project_settings.cpp
msgid "Script Templates Search Path"
-msgstr ""
+msgstr "Skriptimallide otsingutee"
#: core/project_settings.cpp
msgid "Version Control Autoload On Startup"
-msgstr ""
+msgstr "Versioonikontrolli automaatne laadimine käivitamisel"
#: core/project_settings.cpp
msgid "Version Control Plugin Name"
-msgstr ""
+msgstr "Versioonikontrolli plugina nimi"
#: core/project_settings.cpp scene/2d/collision_object_2d.cpp
#: scene/3d/collision_object.cpp scene/gui/control.cpp
msgid "Input"
-msgstr ""
+msgstr "Sisend"
#: core/project_settings.cpp
msgid "UI Accept"
-msgstr ""
+msgstr "UI Aktsepteeri"
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Select"
-msgstr "Vali"
+msgstr "UI Vali"
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Cancel"
-msgstr "Tühista"
+msgstr "UI Tühista"
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Focus Next"
-msgstr "Fookuse tee"
+msgstr "UI Fokusseeri järgmine"
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Focus Prev"
-msgstr "Fookuse tee"
+msgstr "UI fokusseeri eelmine"
#: core/project_settings.cpp
msgid "UI Left"
-msgstr ""
+msgstr "UI Vasakule"
#: core/project_settings.cpp
msgid "UI Right"
-msgstr ""
+msgstr "UI Paremale"
#: core/project_settings.cpp
msgid "UI Up"
-msgstr ""
+msgstr "UI Üles"
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Down"
-msgstr "Alla"
+msgstr "UI Alla"
#: core/project_settings.cpp
msgid "UI Page Up"
-msgstr ""
+msgstr "UI Leht üles"
#: core/project_settings.cpp
msgid "UI Page Down"
-msgstr ""
+msgstr "UI leht alla"
#: core/project_settings.cpp
msgid "UI Home"
-msgstr ""
+msgstr "UI Kodu"
#: core/project_settings.cpp
msgid "UI End"
-msgstr ""
+msgstr "UI Lõpp"
#: core/project_settings.cpp main/main.cpp modules/bullet/register_types.cpp
#: modules/bullet/space_bullet.cpp scene/2d/physics_body_2d.cpp
@@ -769,7 +720,7 @@ msgstr ""
#: servers/physics_2d/space_2d_sw.cpp servers/physics_2d_server.cpp
#: servers/physics_server.cpp
msgid "Physics"
-msgstr ""
+msgstr "Füüsika"
#: core/project_settings.cpp editor/editor_settings.cpp
#: editor/import/resource_importer_layered_texture.cpp
@@ -779,11 +730,11 @@ msgstr ""
#: scene/3d/physics_body.cpp scene/resources/world.cpp
#: servers/physics/space_sw.cpp servers/physics_server.cpp
msgid "3D"
-msgstr ""
+msgstr "3D"
#: core/project_settings.cpp
msgid "Smooth Trimesh Collision"
-msgstr ""
+msgstr "Sujuv Trimeshi kokkupõrge"
#: core/project_settings.cpp drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles2/rasterizer_scene_gles2.cpp
@@ -795,7 +746,7 @@ msgstr ""
#: scene/main/viewport.cpp servers/visual/visual_server_scene.cpp
#: servers/visual_server.cpp
msgid "Rendering"
-msgstr ""
+msgstr "Renderdamine"
#: core/project_settings.cpp drivers/gles2/rasterizer_storage_gles2.cpp
#: drivers/gles3/rasterizer_scene_gles3.cpp
@@ -805,18 +756,17 @@ msgstr ""
#: scene/resources/multimesh.cpp servers/visual/visual_server_scene.cpp
#: servers/visual_server.cpp
msgid "Quality"
-msgstr ""
+msgstr "Kvaliteet"
#: core/project_settings.cpp scene/gui/file_dialog.cpp
#: scene/main/scene_tree.cpp scene/resources/navigation_mesh.cpp
#: servers/visual_server.cpp
-#, fuzzy
msgid "Filters"
-msgstr "Filtreeri sõlmed"
+msgstr "Filtrid"
#: core/project_settings.cpp scene/main/viewport.cpp
msgid "Sharpen Intensity"
-msgstr ""
+msgstr "Teravdamise intensiivsus"
#: core/project_settings.cpp editor/editor_export.cpp editor/editor_node.cpp
#: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp
@@ -832,9 +782,8 @@ msgstr "Silumine"
#: core/project_settings.cpp main/main.cpp modules/gdscript/gdscript.cpp
#: modules/visual_script/visual_script.cpp scene/resources/dynamic_font.cpp
-#, fuzzy
msgid "Settings"
-msgstr "Sätted..."
+msgstr "Seaded"
#: core/project_settings.cpp editor/script_editor_debugger.cpp main/main.cpp
#: modules/mono/mono_gd/gd_mono.cpp
@@ -842,22 +791,20 @@ msgid "Profiler"
msgstr "Profileerija"
#: core/project_settings.cpp
-#, fuzzy
msgid "Max Functions"
-msgstr "Loo funktsioon"
+msgstr "Funktsioone maksimaalselt"
#: core/project_settings.cpp scene/3d/vehicle_body.cpp
msgid "Compression"
-msgstr ""
+msgstr "Kompressioon"
#: core/project_settings.cpp
-#, fuzzy
msgid "Formats"
-msgstr "Formaat"
+msgstr "Formaadid"
#: core/project_settings.cpp
msgid "Zstd"
-msgstr ""
+msgstr "Zstd"
#: core/project_settings.cpp
msgid "Long Distance Matching"
@@ -865,35 +812,36 @@ msgstr ""
#: core/project_settings.cpp
msgid "Compression Level"
-msgstr ""
+msgstr "Kompressiooni tase"
#: core/project_settings.cpp
+#, fuzzy
msgid "Window Log Size"
-msgstr ""
+msgstr "Akna logi suurus"
#: core/project_settings.cpp
msgid "Zlib"
-msgstr ""
+msgstr "Zlib"
#: core/project_settings.cpp
msgid "Gzip"
-msgstr ""
+msgstr "Gzip"
#: core/project_settings.cpp platform/android/export/export.cpp
msgid "Android"
-msgstr ""
+msgstr "Android"
#: core/project_settings.cpp
msgid "Modules"
-msgstr ""
+msgstr "Moodulid"
#: core/register_core_types.cpp
msgid "TCP"
-msgstr ""
+msgstr "TCP"
#: core/register_core_types.cpp
msgid "Connect Timeout Seconds"
-msgstr ""
+msgstr "Ühendamise aegumistähtaeg sekundites"
#: core/register_core_types.cpp
msgid "Packet Peer Stream"
@@ -905,12 +853,11 @@ msgstr ""
#: core/register_core_types.cpp editor/editor_settings.cpp main/main.cpp
msgid "SSL"
-msgstr ""
+msgstr "SSL"
#: core/register_core_types.cpp main/main.cpp
-#, fuzzy
msgid "Certificates"
-msgstr "Tipud"
+msgstr "Sertifikaadid"
#: core/resource.cpp editor/dependency_editor.cpp
#: editor/editor_resource_picker.cpp
@@ -919,9 +866,8 @@ msgid "Resource"
msgstr "Ressurss"
#: core/resource.cpp
-#, fuzzy
msgid "Local To Scene"
-msgstr "Sule stseen"
+msgstr "Kohalik stseenile"
#: core/resource.cpp editor/dependency_editor.cpp
#: editor/editor_autoload_settings.cpp editor/plugins/path_editor_plugin.cpp
@@ -932,20 +878,19 @@ msgstr "Tee"
#: core/script_language.cpp
msgid "Source Code"
-msgstr ""
+msgstr "Lähtekood"
#: core/translation.cpp editor/project_settings_editor.cpp
msgid "Locale"
-msgstr ""
+msgstr "Lokaal"
#: core/translation.cpp
-#, fuzzy
msgid "Test"
-msgstr "Testimine"
+msgstr "Test"
#: core/translation.cpp scene/resources/font.cpp
msgid "Fallback"
-msgstr ""
+msgstr "Varuvariant"
#: core/ustring.cpp scene/resources/segment_shape_2d.cpp
msgid "B"
@@ -981,17 +926,17 @@ msgstr "EiB"
#: drivers/gles3/rasterizer_scene_gles3.cpp
#: drivers/gles3/rasterizer_storage_gles3.cpp modules/gltf/gltf_state.cpp
msgid "Buffers"
-msgstr ""
+msgstr "Puhvrid"
#: drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles3/rasterizer_canvas_base_gles3.cpp
msgid "Canvas Polygon Buffer Size (KB)"
-msgstr ""
+msgstr "Lõuendipolügooni puhvri suurus (KB)"
#: drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles3/rasterizer_canvas_base_gles3.cpp
msgid "Canvas Polygon Index Buffer Size (KB)"
-msgstr ""
+msgstr "Lõuendipolügoonide indekspuhvri suurus (KB)"
#: drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles3/rasterizer_canvas_base_gles3.cpp editor/editor_settings.cpp
@@ -1003,54 +948,52 @@ msgstr ""
#: servers/physics_2d/space_2d_sw.cpp servers/physics_2d_server.cpp
#: servers/visual_server.cpp
msgid "2D"
-msgstr ""
+msgstr "2D"
#: drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles3/rasterizer_canvas_base_gles3.cpp
-#, fuzzy
msgid "Snapping"
-msgstr "Intervall:"
+msgstr "Naksamine"
#: drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles3/rasterizer_canvas_base_gles3.cpp
-#, fuzzy
msgid "Use GPU Pixel Snap"
-msgstr "Kasuta ruudustiku naksamist"
+msgstr "Kasuta GPU piksli naksamist"
#: drivers/gles2/rasterizer_scene_gles2.cpp
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Immediate Buffer Size (KB)"
-msgstr ""
+msgstr "Kohene puhvri suurus (KB)"
#: drivers/gles2/rasterizer_storage_gles2.cpp
#: drivers/gles3/rasterizer_storage_gles3.cpp
msgid "Lightmapping"
-msgstr ""
+msgstr "Valguskaardistamine"
#: drivers/gles2/rasterizer_storage_gles2.cpp
#: drivers/gles3/rasterizer_storage_gles3.cpp
msgid "Use Bicubic Sampling"
-msgstr ""
+msgstr "Kasutage bikuubilist proovivõtmist"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Max Renderable Elements"
-msgstr ""
+msgstr "Max renderdatavaid elemente"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Max Renderable Lights"
-msgstr ""
+msgstr "Max renderdatavaid tulesid"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Max Renderable Reflections"
-msgstr ""
+msgstr "Max renderdatavaid peegeldusi"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Max Lights Per Object"
-msgstr ""
+msgstr "Max tulesid objekti kohta"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Subsurface Scattering"
-msgstr ""
+msgstr "Pinnaalune hajumine"
#: drivers/gles3/rasterizer_scene_gles3.cpp editor/animation_track_editor.cpp
#: editor/import/resource_importer_texture.cpp
@@ -1062,29 +1005,28 @@ msgstr ""
#: scene/animation/animation_blend_tree.cpp scene/gui/control.cpp
#: scene/main/canvas_layer.cpp scene/resources/environment.cpp
#: scene/resources/material.cpp scene/resources/particles_material.cpp
-#, fuzzy
msgid "Scale"
-msgstr "Skaleerimisrežiim"
+msgstr "Skaala"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Follow Surface"
-msgstr ""
+msgstr "Jälgi pinda"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Weight Samples"
-msgstr ""
+msgstr "Kaalu proovid"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Voxel Cone Tracing"
-msgstr ""
+msgstr "Vokseli koonuse jälgimine"
#: drivers/gles3/rasterizer_scene_gles3.cpp scene/resources/environment.cpp
msgid "High Quality"
-msgstr ""
+msgstr "Kõrge kvaliteet"
#: drivers/gles3/rasterizer_storage_gles3.cpp
msgid "Blend Shape Max Buffer Size (KB)"
-msgstr ""
+msgstr "Segu kuju max puhvri suurus (KB)"
#. TRANSLATORS: Adjective, refers to the mode for Bezier handles (Free, Balanced, Mirror).
#: editor/animation_bezier_editor.cpp
@@ -1128,12 +1070,14 @@ msgid "Move Bezier Points"
msgstr "Liiguta Bezieri punkte"
#: editor/animation_bezier_editor.cpp editor/animation_track_editor.cpp
+#, fuzzy
msgid "Anim Duplicate Keys"
-msgstr ""
+msgstr "Anim duplikaatvõtmed"
#: editor/animation_bezier_editor.cpp editor/animation_track_editor.cpp
+#, fuzzy
msgid "Anim Delete Keys"
-msgstr ""
+msgstr "Anim kustuta võtmed"
#: editor/animation_track_editor.cpp
msgid "Anim Change Keyframe Time"
@@ -1158,9 +1102,8 @@ msgstr ""
#: editor/animation_track_editor.cpp scene/2d/animated_sprite.cpp
#: scene/2d/sprite.cpp scene/3d/sprite_3d.cpp
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Frame"
-msgstr "Kaadri %"
+msgstr "Kaader"
#: editor/animation_track_editor.cpp editor/editor_profiler.cpp
#: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp
@@ -1171,16 +1114,14 @@ msgstr "Aeg"
#: editor/animation_track_editor.cpp editor/import/resource_importer_scene.cpp
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Location"
-msgstr "Tõlked"
+msgstr "Asukoht"
#: editor/animation_track_editor.cpp modules/gltf/gltf_node.cpp
#: scene/2d/polygon_2d.cpp scene/2d/remote_transform_2d.cpp
#: scene/3d/remote_transform.cpp scene/3d/spatial.cpp scene/gui/control.cpp
-#, fuzzy
msgid "Rotation"
-msgstr "Pööramisrežiim"
+msgstr "Pööramine"
#: editor/animation_track_editor.cpp editor/script_editor_debugger.cpp
#: modules/visual_script/visual_script_nodes.cpp scene/gui/range.cpp
@@ -1188,14 +1129,13 @@ msgid "Value"
msgstr "Väärtus"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Arg Count"
-msgstr "Sisesta võti siia"
+msgstr "Arg kogus"
#: editor/animation_track_editor.cpp main/main.cpp
#: modules/mono/mono_gd/gd_mono.cpp
msgid "Args"
-msgstr ""
+msgstr "Argumendid"
#: editor/animation_track_editor.cpp editor/editor_settings.cpp
#: editor/script_editor_debugger.cpp modules/gltf/gltf_accessor.cpp
@@ -1206,28 +1146,26 @@ msgstr "Tüüp"
#: editor/animation_track_editor.cpp
msgid "In Handle"
-msgstr ""
+msgstr "Käepidemes"
#: editor/animation_track_editor.cpp
msgid "Out Handle"
-msgstr ""
+msgstr "Väljas käepide"
#: editor/animation_track_editor.cpp
#: editor/import/resource_importer_texture.cpp
#: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp
#: scene/audio/audio_stream_player.cpp scene/gui/video_player.cpp
msgid "Stream"
-msgstr ""
+msgstr "Voog"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Start Offset"
-msgstr "Liigutamisrežiim"
+msgstr "Algnihe"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "End Offset"
-msgstr "Kustuta sõlm(ed)"
+msgstr "Lõpunihe"
#: editor/animation_track_editor.cpp editor/editor_settings.cpp
#: editor/import/resource_importer_scene.cpp
@@ -1241,7 +1179,7 @@ msgstr "Animatsioon"
#: editor/animation_track_editor.cpp
msgid "Easing"
-msgstr ""
+msgstr "Lõdvendamine"
#: editor/animation_track_editor.cpp
msgid "Anim Multi Change Keyframe Time"
@@ -1270,7 +1208,7 @@ msgstr "Muuda animatsiooni pikkust"
#: editor/animation_track_editor.cpp
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Change Animation Loop"
-msgstr "Muuda animatsiooni silmust"
+msgstr "Muuda animatsiooni tsüklit"
#: editor/animation_track_editor.cpp
msgid "Property Track"
@@ -1278,23 +1216,23 @@ msgstr "Atribuudi rada"
#: editor/animation_track_editor.cpp
msgid "3D Transform Track"
-msgstr "3D muundus rada"
+msgstr "3D transformatsiooni rada"
#: editor/animation_track_editor.cpp
msgid "Call Method Track"
-msgstr ""
+msgstr "Meetodi kutsumise rada"
#: editor/animation_track_editor.cpp
msgid "Bezier Curve Track"
-msgstr "Bezieri kurvi rada"
+msgstr "Bezier-kõvera rada"
#: editor/animation_track_editor.cpp
msgid "Audio Playback Track"
-msgstr "Heli taasesituse rada"
+msgstr "Helimängimise rada"
#: editor/animation_track_editor.cpp
msgid "Animation Playback Track"
-msgstr "Animatsiooni taasesituse rada"
+msgstr "Animatsiooni mängimise rada"
#: editor/animation_track_editor.cpp
msgid "Animation length (frames)"
@@ -1335,40 +1273,38 @@ msgstr "Lülita see rada sisse/välja."
#: editor/animation_track_editor.cpp
msgid "Update Mode (How this property is set)"
-msgstr "Uuendusrežiim (kuidas see omadus on seatud)"
+msgstr "Uuendusrežiim (kuidas see atribuut on määratud)"
#: editor/animation_track_editor.cpp scene/resources/gradient.cpp
msgid "Interpolation Mode"
msgstr "Interpolatsiooni režiim"
#: editor/animation_track_editor.cpp
+#, fuzzy
msgid "Loop Wrap Mode (Interpolate end with beginning on loop)"
-msgstr "Korduse mähise režiim (nterpoleeri lõpp silmuse alguses)"
+msgstr "Korduse mähise režiim (interpoleeri lõpp algusega tsükli kordudes)"
#: editor/animation_track_editor.cpp
msgid "Remove this track."
msgstr "Eemalda see rada."
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Time (s):"
-msgstr "Aeg (sek): "
+msgstr "Aeg (s):"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Position:"
-msgstr "Doki asukoht"
+msgstr "Asukoht:"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Rotation:"
-msgstr "Pööramisrežiim"
+msgstr "Pööramine:"
#: editor/animation_track_editor.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "Scale:"
-msgstr ""
+msgstr "Skaala:"
#: editor/animation_track_editor.cpp
#: editor/plugins/resource_preloader_editor_plugin.cpp
@@ -1379,13 +1315,12 @@ msgid "Type:"
msgstr "Tüüp:"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "(Invalid, expected type: %s)"
-msgstr "Vigane nimi."
+msgstr "(Kehtetu, eeldatav tüüp: %s)"
#: editor/animation_track_editor.cpp
msgid "Easing:"
-msgstr ""
+msgstr "Lõdvestumine:"
#: editor/animation_track_editor.cpp
msgid "In-Handle:"
@@ -1401,22 +1336,20 @@ msgid "Stream:"
msgstr "Heli kuulaja"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Start (s):"
-msgstr "Käivita"
+msgstr "Algus (s):"
#: editor/animation_track_editor.cpp
msgid "End (s):"
-msgstr ""
+msgstr "Lõpp (s):"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Animation Clip:"
-msgstr "Animatsiooni klipid:"
+msgstr "Animatsiooni klipp:"
#: editor/animation_track_editor.cpp
msgid "Toggle Track Enabled"
-msgstr "Lülita rada sisse"
+msgstr "Lülita raja seesolekut"
#: editor/animation_track_editor.cpp
msgid "Continuous"
@@ -1496,14 +1429,12 @@ msgstr "Eemalda animatsiooni rada"
#: editor/plugins/tile_map_editor_plugin.cpp editor/scene_tree_dock.cpp
#: editor/spatial_editor_gizmos.cpp modules/csg/csg_gizmos.cpp
#: modules/gridmap/grid_map_editor_plugin.cpp
-#, fuzzy
msgid "Editors"
-msgstr "Redaktor"
+msgstr "Toimetid"
#: editor/animation_track_editor.cpp editor/editor_settings.cpp
-#, fuzzy
msgid "Confirm Insert Track"
-msgstr "Sisesta animatsiooni rada ja võti"
+msgstr "Kinnitage raja lisamine"
#. TRANSLATORS: %s will be replaced by a phrase describing the target of track.
#: editor/animation_track_editor.cpp
@@ -1512,7 +1443,7 @@ msgstr "Loo uus rada %s-le ja sisesta võti?"
#: editor/animation_track_editor.cpp
msgid "Create %d NEW tracks and insert keys?"
-msgstr ""
+msgstr "Kas luua %d UUT rada ja sisestada võtmed?"
#: editor/animation_track_editor.cpp editor/create_dialog.cpp
#: editor/editor_audio_buses.cpp editor/editor_feature_profile.cpp
@@ -1528,6 +1459,7 @@ msgid "Create"
msgstr "Loo"
#: editor/animation_track_editor.cpp
+#, fuzzy
msgid "Anim Insert"
msgstr "Animatsiooni sisestus"
@@ -1698,7 +1630,7 @@ msgstr "Vali AnimationPlayer sõlm, et luua ja redigeerida animatsioone."
#: editor/animation_track_editor.cpp
msgid "Only show tracks from nodes selected in tree."
-msgstr ""
+msgstr "Näita ainult radu puus valitud node'idelt."
#: editor/animation_track_editor.cpp
msgid "Group tracks by node or display them as plain list."
@@ -1884,31 +1816,31 @@ msgstr ""
#: editor/code_editor.cpp
msgid "Go to Line"
-msgstr ""
+msgstr "Mine reale"
#: editor/code_editor.cpp
msgid "Line Number:"
-msgstr ""
+msgstr "Reanumber:"
#: editor/code_editor.cpp
msgid "%d replaced."
-msgstr ""
+msgstr "%d asendatud."
#: editor/code_editor.cpp editor/editor_help.cpp
msgid "%d match."
-msgstr ""
+msgstr "%d vaste."
#: editor/code_editor.cpp editor/editor_help.cpp
msgid "%d matches."
-msgstr ""
+msgstr "%d vastet."
#: editor/code_editor.cpp editor/find_in_files.cpp
msgid "Match Case"
-msgstr ""
+msgstr "Sobita suur- ja väiketähed"
#: editor/code_editor.cpp editor/find_in_files.cpp
msgid "Whole Words"
-msgstr ""
+msgstr "Terved sõnad"
#: editor/code_editor.cpp
msgid "Replace"
@@ -1916,76 +1848,78 @@ msgstr "Asenda"
#: editor/code_editor.cpp
msgid "Replace All"
-msgstr ""
+msgstr "Asenda kõik"
#: editor/code_editor.cpp
msgid "Selection Only"
-msgstr ""
+msgstr "Ainult valik"
#: editor/code_editor.cpp editor/plugins/script_text_editor.cpp
#: editor/plugins/text_editor.cpp
msgid "Standard"
-msgstr ""
+msgstr "Standard"
#: editor/code_editor.cpp editor/plugins/script_editor_plugin.cpp
msgid "Toggle Scripts Panel"
-msgstr ""
+msgstr "Lülita skriptide paneel sisse/välja"
#: editor/code_editor.cpp editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/sprite_frames_editor_plugin.cpp
#: editor/plugins/texture_region_editor_plugin.cpp
#: editor/plugins/tile_set_editor_plugin.cpp scene/gui/graph_edit.cpp
msgid "Zoom In"
-msgstr ""
+msgstr "Suurenda"
#: editor/code_editor.cpp editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/sprite_frames_editor_plugin.cpp
#: editor/plugins/texture_region_editor_plugin.cpp
#: editor/plugins/tile_set_editor_plugin.cpp scene/gui/graph_edit.cpp
msgid "Zoom Out"
-msgstr ""
+msgstr "Vähenda"
#: editor/code_editor.cpp
msgid "Reset Zoom"
-msgstr ""
+msgstr "Lähtesta suum"
#: editor/code_editor.cpp modules/gdscript/gdscript.cpp
msgid "Warnings"
-msgstr ""
+msgstr "Hoiatused"
#: editor/code_editor.cpp
msgid "Line and column numbers."
-msgstr ""
+msgstr "Rea- ja veerunumbrid."
#: editor/connections_dialog.cpp
msgid "Method in target node must be specified."
-msgstr ""
+msgstr "Tuleb täpsustada siht-node'i meetod."
#: editor/connections_dialog.cpp
msgid "Method name must be a valid identifier."
-msgstr ""
+msgstr "Meetodi nimi peab olema kehtiv identifikaator."
#: editor/connections_dialog.cpp
msgid ""
"Target method not found. Specify a valid method or attach a script to the "
"target node."
msgstr ""
+"Sihtmeetodit ei leitud. Määrake kehtiv meetod või lisage siht-node'ile "
+"skript."
#: editor/connections_dialog.cpp
msgid "Connect to Node:"
-msgstr ""
+msgstr "Ühenda node'iga:"
#: editor/connections_dialog.cpp
msgid "Connect to Script:"
-msgstr ""
+msgstr "Ühenda skriptiga:"
#: editor/connections_dialog.cpp
msgid "From Signal:"
-msgstr ""
+msgstr "Signaalilt:"
#: editor/connections_dialog.cpp
msgid "Scene does not contain any script."
-msgstr ""
+msgstr "Stseen ei sisalda skripti."
#: editor/connections_dialog.cpp editor/editor_autoload_settings.cpp
#: editor/groups_editor.cpp
@@ -2007,15 +1941,15 @@ msgstr "Eemalda"
#: editor/connections_dialog.cpp
msgid "Add Extra Call Argument:"
-msgstr ""
+msgstr "Lisa ekstra kutsumisargument:"
#: editor/connections_dialog.cpp
msgid "Extra Call Arguments:"
-msgstr ""
+msgstr "Ekstra kutsumisargumendid:"
#: editor/connections_dialog.cpp
msgid "Receiver Method:"
-msgstr ""
+msgstr "Vastuvõtjameetod:"
#: editor/connections_dialog.cpp scene/3d/room_manager.cpp
#: servers/visual_server.cpp
@@ -2024,12 +1958,14 @@ msgstr "Täpsem"
#: editor/connections_dialog.cpp
msgid "Deferred"
-msgstr ""
+msgstr "Edasi lükatud"
#: editor/connections_dialog.cpp
msgid ""
"Defers the signal, storing it in a queue and only firing it at idle time."
msgstr ""
+"Lükkab signaali edasi, salvestades selle järjekorda ja väljastab seda ainult "
+"tühikäigul."
#: editor/connections_dialog.cpp scene/resources/texture.cpp
msgid "Oneshot"
@@ -2037,11 +1973,11 @@ msgstr "Ainulaadne"
#: editor/connections_dialog.cpp
msgid "Disconnects the signal after its first emission."
-msgstr ""
+msgstr "Ühendab signaali lahti pärast selle esimest väljastamist."
#: editor/connections_dialog.cpp
msgid "Cannot connect signal"
-msgstr ""
+msgstr "Signaali ei saa ühendada"
#: editor/connections_dialog.cpp editor/dependency_editor.cpp
#: editor/export_template_manager.cpp editor/groups_editor.cpp
@@ -2064,19 +2000,19 @@ msgstr "Ühenda"
#: editor/connections_dialog.cpp
msgid "Signal:"
-msgstr ""
+msgstr "Signaal:"
#: editor/connections_dialog.cpp
msgid "Connect '%s' to '%s'"
-msgstr ""
+msgstr "Ühenda '%s' ja '%s'"
#: editor/connections_dialog.cpp
msgid "Disconnect '%s' from '%s'"
-msgstr ""
+msgstr "Ühenda '%s' ja '%s' lahti"
#: editor/connections_dialog.cpp
msgid "Disconnect all from signal: '%s'"
-msgstr ""
+msgstr "Ühenda kõik lahti signaalist: %s"
#: editor/connections_dialog.cpp
msgid "Connect..."
@@ -2089,45 +2025,45 @@ msgstr "Katkesta ühendus"
#: editor/connections_dialog.cpp
msgid "Connect a Signal to a Method"
-msgstr ""
+msgstr "Signaali ühendamine meetodiga"
#: editor/connections_dialog.cpp
msgid "Edit Connection:"
-msgstr ""
+msgstr "Muuda ühendust:"
#: editor/connections_dialog.cpp
msgid "Are you sure you want to remove all connections from the \"%s\" signal?"
msgstr ""
+"Kas olete kindel, et soovite eemaldada kõik ühendused signaalist \"%s\"?"
#: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp
msgid "Signals"
msgstr "Signaalid"
#: editor/connections_dialog.cpp
-#, fuzzy
msgid "Filter signals"
-msgstr "Filtreeri sõlmed"
+msgstr "Filtreeri signaale"
#: editor/connections_dialog.cpp
msgid "Are you sure you want to remove all connections from this signal?"
msgstr ""
+"Kas olete kindel, et soovite sellest signaalist kõik ühendused eemaldada?"
#: editor/connections_dialog.cpp
msgid "Disconnect All"
-msgstr ""
+msgstr "Ühenda kõik lahti"
#: editor/connections_dialog.cpp
msgid "Edit..."
msgstr "Muuda..."
#: editor/connections_dialog.cpp
-#, fuzzy
msgid "Go to Method"
-msgstr "Mine järmisesse kausta."
+msgstr "Mine meetodi juurde"
#: editor/create_dialog.cpp
msgid "Change %s Type"
-msgstr ""
+msgstr "Muuda %s tüüpi"
#: editor/create_dialog.cpp editor/project_settings_editor.cpp
msgid "Change"
@@ -2135,15 +2071,15 @@ msgstr "Muuda"
#: editor/create_dialog.cpp
msgid "Create New %s"
-msgstr ""
+msgstr "Loo uus %s"
#: editor/create_dialog.cpp editor/plugins/asset_library_editor_plugin.cpp
msgid "No results for \"%s\"."
-msgstr ""
+msgstr "Päringule \"%s\" pole tulemusi."
#: editor/create_dialog.cpp editor/property_selector.cpp
msgid "No description available for %s."
-msgstr ""
+msgstr "%s jaoks kirjeldus puudub."
#: editor/create_dialog.cpp editor/editor_file_dialog.cpp
#: editor/filesystem_dock.cpp
@@ -2177,23 +2113,27 @@ msgstr "Kirjeldus:"
#: editor/dependency_editor.cpp
msgid "Search Replacement For:"
-msgstr ""
+msgstr "Otsi asendust järgnevale:"
#: editor/dependency_editor.cpp
msgid "Dependencies For:"
-msgstr ""
+msgstr "Sõltuvused järgneva jaoks:"
#: editor/dependency_editor.cpp
msgid ""
"Scene '%s' is currently being edited.\n"
"Changes will only take effect when reloaded."
msgstr ""
+"Stseeni '%s' redigeeritakse praegu.\n"
+"Muudatused jõustuvad ainult uuesti laadimisel."
#: editor/dependency_editor.cpp
msgid ""
"Resource '%s' is in use.\n"
"Changes will only take effect when reloaded."
msgstr ""
+"Ressurss '%s' on kasutusel.\n"
+"Muudatused jõustuvad ainult uuesti laadimisel."
#: editor/dependency_editor.cpp
#: modules/gdnative/gdnative_library_editor_plugin.cpp
@@ -2206,15 +2146,15 @@ msgstr "Sõltuvused:"
#: editor/dependency_editor.cpp
msgid "Fix Broken"
-msgstr ""
+msgstr "Paranda katkised"
#: editor/dependency_editor.cpp
msgid "Dependency Editor"
-msgstr ""
+msgstr "Sõltuvuste toimeti"
#: editor/dependency_editor.cpp
msgid "Search Replacement Resource:"
-msgstr ""
+msgstr "Otsi asendusressurssi:"
#: editor/dependency_editor.cpp editor/editor_file_dialog.cpp
#: editor/editor_help_search.cpp editor/editor_node.cpp
@@ -2228,7 +2168,7 @@ msgstr "Ava"
#: editor/dependency_editor.cpp
msgid "Owners of: %s (Total: %d)"
-msgstr ""
+msgstr "Omanikud: %s (Kokku: %d)"
#: editor/dependency_editor.cpp
msgid ""
@@ -2236,6 +2176,9 @@ msgid ""
"Depending on your filesystem configuration, the files will either be moved "
"to the system trash or deleted permanently."
msgstr ""
+"Kas eemaldada valitud failid projektist? (Ei saa tagasi võtta.)\n"
+"Sõltuvalt teie failisüsteemi konfiguratsioonist teisaldatakse failid "
+"süsteemi prügikasti või kustutatakse jäädavalt."
#: editor/dependency_editor.cpp
msgid ""
@@ -2245,46 +2188,50 @@ msgid ""
"Depending on your filesystem configuration, the files will either be moved "
"to the system trash or deleted permanently."
msgstr ""
+"Eemaldatavaid faile vajavad toimimiseks muud ressursid.\n"
+"Eemaldage need ikkagi? (Ei saa tagasi võtta.)\n"
+"Sõltuvalt teie failisüsteemi konfiguratsioonist teisaldatakse failid "
+"süsteemi prügikasti või kustutatakse jäädavalt."
#: editor/dependency_editor.cpp
msgid "Cannot remove:"
-msgstr ""
+msgstr "Ei saa eemaldada:"
#: editor/dependency_editor.cpp
msgid "Error loading:"
-msgstr ""
+msgstr "Viga laadimisel:"
#: editor/dependency_editor.cpp
msgid "Load failed due to missing dependencies:"
-msgstr ""
+msgstr "Laadimine ebaõnnestus puuduvate sõltuvuste tõttu:"
#: editor/dependency_editor.cpp editor/editor_node.cpp
msgid "Open Anyway"
-msgstr ""
+msgstr "Ava ikkagi"
#: editor/dependency_editor.cpp
msgid "Which action should be taken?"
-msgstr ""
+msgstr "Mida tuleks teha?"
#: editor/dependency_editor.cpp
msgid "Fix Dependencies"
-msgstr ""
+msgstr "Paranda sõltuvused"
#: editor/dependency_editor.cpp
msgid "Errors loading!"
-msgstr ""
+msgstr "Laadimisel ilmnesid vead!"
#: editor/dependency_editor.cpp
msgid "Permanently delete %d item(s)? (No undo!)"
-msgstr ""
+msgstr "Kas kustutada jäädavalt %d üksus(t)? (Ei saa tagasi võtta!)"
#: editor/dependency_editor.cpp
msgid "Show Dependencies"
-msgstr ""
+msgstr "Näita sõltuvusi"
#: editor/dependency_editor.cpp
msgid "Orphan Resource Explorer"
-msgstr ""
+msgstr "Orbressursside haldur"
#: editor/dependency_editor.cpp editor/editor_audio_buses.cpp
#: editor/editor_file_dialog.cpp editor/editor_node.cpp
@@ -2296,19 +2243,19 @@ msgstr "Kustuta"
#: editor/dependency_editor.cpp
msgid "Owns"
-msgstr ""
+msgstr "Omab"
#: editor/dependency_editor.cpp
msgid "Resources Without Explicit Ownership:"
-msgstr ""
+msgstr "Ressursid ilma selge omandiõiguseta:"
#: editor/dictionary_property_edit.cpp
msgid "Change Dictionary Key"
-msgstr ""
+msgstr "Muuda sõnastiku võtit"
#: editor/dictionary_property_edit.cpp
msgid "Change Dictionary Value"
-msgstr ""
+msgstr "Muuda sõnastiku väärtust"
#: editor/editor_about.cpp
msgid "Thanks from the Godot community!"
@@ -2332,10 +2279,9 @@ msgstr "Juhtiv arendaja"
#. TRANSLATORS: This refers to a job title.
#: editor/editor_about.cpp
-#, fuzzy
msgctxt "Job Title"
msgid "Project Manager"
-msgstr "projektihaldur"
+msgstr "Projekti juht"
#: editor/editor_about.cpp
msgid "Developers"
@@ -2415,35 +2361,35 @@ msgstr "Litsensid"
#: editor/editor_asset_installer.cpp
msgid "Error opening asset file for \"%s\" (not in ZIP format)."
-msgstr ""
+msgstr "Viga varade faili \"%s\" avamisel (pole ZIP-formaadis)."
#: editor/editor_asset_installer.cpp
msgid "%s (already exists)"
-msgstr ""
+msgstr "%s (juba olemas)"
#: editor/editor_asset_installer.cpp
msgid "Contents of asset \"%s\" - %d file(s) conflict with your project:"
-msgstr ""
+msgstr "Vara \"%s\" - %d faili(de) sisu on vastuolus teie projektiga:"
#: editor/editor_asset_installer.cpp
msgid "Contents of asset \"%s\" - No files conflict with your project:"
-msgstr ""
+msgstr "Vara \"%s\" sisu - ükski fail ei ole teie projektiga vastuolus:"
#: editor/editor_asset_installer.cpp
msgid "Uncompressing Assets"
-msgstr ""
+msgstr "Varade lahtipakkimine"
#: editor/editor_asset_installer.cpp
msgid "The following files failed extraction from asset \"%s\":"
-msgstr ""
+msgstr "Järgmised failid ebaõnnestusid varast \"%s\" väljavõtmisel:"
#: editor/editor_asset_installer.cpp
msgid "(and %s more files)"
-msgstr ""
+msgstr "(ja veel %s faili)"
#: editor/editor_asset_installer.cpp
msgid "Asset \"%s\" installed successfully!"
-msgstr ""
+msgstr "Vara \"%s\" paigaldatud edukalt!"
#: editor/editor_asset_installer.cpp
#: editor/plugins/asset_library_editor_plugin.cpp
@@ -2455,9 +2401,8 @@ msgid "Install"
msgstr "Paigalda"
#: editor/editor_asset_installer.cpp
-#, fuzzy
msgid "Asset Installer"
-msgstr "Paigalda"
+msgstr "Varade paigaldaja"
#: editor/editor_audio_buses.cpp
msgid "Speakers"
@@ -2469,19 +2414,19 @@ msgstr "Lisa efekt"
#: editor/editor_audio_buses.cpp
msgid "Rename Audio Bus"
-msgstr ""
+msgstr "Nimeta ümber audiosiin"
#: editor/editor_audio_buses.cpp
msgid "Change Audio Bus Volume"
-msgstr ""
+msgstr "Muuda audiosiini helitugevust"
#: editor/editor_audio_buses.cpp
msgid "Toggle Audio Bus Solo"
-msgstr ""
+msgstr "Lülita audiosiini soolo sisse/välja"
#: editor/editor_audio_buses.cpp
msgid "Toggle Audio Bus Mute"
-msgstr ""
+msgstr "Lülita helisiini vaigistamine sisse/välja"
#: editor/editor_audio_buses.cpp
msgid "Toggle Audio Bus Bypass Effects"
@@ -2505,7 +2450,7 @@ msgstr ""
#: editor/editor_audio_buses.cpp
msgid "Drag & drop to rearrange."
-msgstr ""
+msgstr "Ümberkorraldamiseks lohistage."
#: editor/editor_audio_buses.cpp
msgid "Solo"
@@ -2520,9 +2465,8 @@ msgid "Bypass"
msgstr "Jäta vahele"
#: editor/editor_audio_buses.cpp
-#, fuzzy
msgid "Bus Options"
-msgstr "Klassi valikud"
+msgstr "Siinivalikud"
#: editor/editor_audio_buses.cpp editor/filesystem_dock.cpp
#: editor/project_export.cpp editor/scene_tree_dock.cpp
@@ -2535,23 +2479,23 @@ msgstr "Lähtesta valjus"
#: editor/editor_audio_buses.cpp
msgid "Delete Effect"
-msgstr ""
+msgstr "Kustuta efekt"
#: editor/editor_audio_buses.cpp
msgid "Add Audio Bus"
-msgstr ""
+msgstr "Lisa audiosiin"
#: editor/editor_audio_buses.cpp
msgid "Master bus can't be deleted!"
-msgstr ""
+msgstr "Põhisiini ei saa kustutada!"
#: editor/editor_audio_buses.cpp
msgid "Delete Audio Bus"
-msgstr ""
+msgstr "Kustuta audiosiin"
#: editor/editor_audio_buses.cpp
msgid "Duplicate Audio Bus"
-msgstr ""
+msgstr "Duplikeeri audiosiin"
#: editor/editor_audio_buses.cpp
msgid "Reset Bus Volume"
@@ -2559,15 +2503,15 @@ msgstr "Lähtesta siini valjus"
#: editor/editor_audio_buses.cpp
msgid "Move Audio Bus"
-msgstr ""
+msgstr "Liiguta audiosiin"
#: editor/editor_audio_buses.cpp
msgid "Save Audio Bus Layout As..."
-msgstr ""
+msgstr "Salvesta audiosiini paigutus kui..."
#: editor/editor_audio_buses.cpp
msgid "Location for New Layout..."
-msgstr ""
+msgstr "Uue paigutuse asukoht..."
#: editor/editor_audio_buses.cpp
msgid "Open Audio Bus Layout"
@@ -2578,9 +2522,8 @@ msgid "There is no '%s' file."
msgstr "Faili '%s' ei ole eksisteeri."
#: editor/editor_audio_buses.cpp
-#, fuzzy
msgid "Layout:"
-msgstr "Paigutus"
+msgstr "Paigutus:"
#: editor/editor_audio_buses.cpp
msgid "Invalid file, not an audio bus layout."
@@ -2629,9 +2572,8 @@ msgid "Create a new Bus Layout."
msgstr "Loo uus siini paigutus."
#: editor/editor_audio_buses.cpp
-#, fuzzy
msgid "Audio Bus Layout"
-msgstr "Ava heliliinide paigutus"
+msgstr "Audiosiini paigutus"
#: editor/editor_autoload_settings.cpp
msgid "Invalid name."
@@ -2639,7 +2581,7 @@ msgstr "Vigane nimi."
#: editor/editor_autoload_settings.cpp
msgid "Cannot begin with a digit."
-msgstr ""
+msgstr "Ei saa alata numbriga."
#: editor/editor_autoload_settings.cpp
msgid "Valid characters:"
@@ -2651,11 +2593,11 @@ msgstr "Ei tohi kokkupõrkuda mängumootori juba olemasoleva klassi nimega."
#: editor/editor_autoload_settings.cpp
msgid "Must not collide with an existing built-in type name."
-msgstr ""
+msgstr "Ei tohi põrkuda olemasoleva sisse-ehitatud tüübinimega."
#: editor/editor_autoload_settings.cpp
msgid "Must not collide with an existing global constant name."
-msgstr ""
+msgstr "Ei tohi põrkuda olemasoleva globaalse konstandi nimega."
#: editor/editor_autoload_settings.cpp
msgid "Keyword cannot be used as an autoload name."
@@ -2663,11 +2605,11 @@ msgstr "Võtmesõnu ei saa kasutada automaatsete nimedena."
#: editor/editor_autoload_settings.cpp
msgid "Autoload '%s' already exists!"
-msgstr ""
+msgstr "Automaatlaadimine '%s' on juba olemas!"
#: editor/editor_autoload_settings.cpp
msgid "Rename Autoload"
-msgstr ""
+msgstr "Nimeta automaatlaadimine ümber"
#: editor/editor_autoload_settings.cpp
msgid "Toggle AutoLoad Globals"
@@ -2675,11 +2617,11 @@ msgstr ""
#: editor/editor_autoload_settings.cpp
msgid "Move Autoload"
-msgstr ""
+msgstr "Liiguta automaatlaadimist"
#: editor/editor_autoload_settings.cpp
msgid "Remove Autoload"
-msgstr ""
+msgstr "Eemalda automaatlaadimine"
#: editor/editor_autoload_settings.cpp editor/editor_plugin_settings.cpp
#: modules/gdscript/gdscript.cpp platform/android/export/export_plugin.cpp
@@ -2692,31 +2634,30 @@ msgstr "Luba"
#: editor/editor_autoload_settings.cpp
msgid "Rearrange Autoloads"
-msgstr ""
+msgstr "Paiguta automaatlaadimised ümber"
#: editor/editor_autoload_settings.cpp
msgid "Can't add autoload:"
-msgstr ""
+msgstr "Ei saa lisada automaatlaadimist:"
#: editor/editor_autoload_settings.cpp
-#, fuzzy
msgid "%s is an invalid path. File does not exist."
-msgstr "Faili ei ole olemas."
+msgstr "%s on kehtetu failitee. Faili pole olemas."
#: editor/editor_autoload_settings.cpp
msgid "%s is an invalid path. Not in resource path (res://)."
-msgstr ""
+msgstr "%s on kehtetu failitee. Ei ole ressursiteel (res://)."
#: editor/editor_autoload_settings.cpp
msgid "Add AutoLoad"
-msgstr ""
+msgstr "Lisa automaatlaadimine"
#: 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 "Tee:"
+msgstr "Failitee:"
#: editor/editor_autoload_settings.cpp
msgid "Node Name:"
@@ -2724,7 +2665,7 @@ msgstr "Sõlme nimi:"
#: editor/editor_autoload_settings.cpp
msgid "Global Variable"
-msgstr ""
+msgstr "Globaalne muutuja"
#: editor/editor_data.cpp
msgid "Paste Params"
@@ -2732,11 +2673,11 @@ msgstr "Kleebi parameetrid"
#: editor/editor_data.cpp
msgid "Updating Scene"
-msgstr "Värskendan stseeni"
+msgstr "Stseeni värskendamine"
#: editor/editor_data.cpp
msgid "Storing local changes..."
-msgstr "Salvestan kohalikud muudatused..."
+msgstr "Kohalike muudatuste salvestamine..."
#: editor/editor_data.cpp
msgid "Updating scene..."
@@ -2754,11 +2695,11 @@ msgstr "[salvestamata]"
#: editor/editor_dir_dialog.cpp
msgid "Please select a base directory first."
-msgstr "Palun valige kõigepealt baaskataloog."
+msgstr "Palun valige kõigepealt baaskaust."
#: editor/editor_dir_dialog.cpp
msgid "Choose a Directory"
-msgstr "Vali kataloog"
+msgstr "Valige kaust"
#: editor/editor_dir_dialog.cpp editor/editor_file_dialog.cpp
#: editor/filesystem_dock.cpp editor/project_manager.cpp
@@ -2785,20 +2726,19 @@ msgstr "Vali"
#: editor/editor_export.cpp
msgid "Project export for platform:"
-msgstr ""
+msgstr "Projekti eksportimine platvormi jaoks:"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Completed with warnings."
-msgstr "Kopeeri sõlme tee"
+msgstr "Lõpetas koos hoiatustega."
#: editor/editor_export.cpp
msgid "Completed successfully."
-msgstr ""
+msgstr "Lõpetas edukalt."
#: editor/editor_export.cpp
msgid "Failed."
-msgstr ""
+msgstr "Ebaõnnestus."
#: editor/editor_export.cpp
msgid "Storing File:"
@@ -2813,29 +2753,24 @@ msgid "Packing"
msgstr "Pakin"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Save PCK"
-msgstr "Salvesta kui"
+msgstr "Salvesta PCK"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Cannot create file \"%s\"."
-msgstr "Ei saanud luua kausta."
+msgstr "Ei saa luua faili \"%s\"."
#: editor/editor_export.cpp
-#, fuzzy
msgid "Failed to export project files."
-msgstr "Ei saanud luua kausta."
+msgstr "Projektifailide eksportimine ebaõnnestus."
#: editor/editor_export.cpp
-#, fuzzy
msgid "Can't open file to read from path \"%s\"."
-msgstr "Faili ei saa kirjutamiseks avada:"
+msgstr "Faili ei saa avada lugemiseks teelt \"%s\"."
#: editor/editor_export.cpp
-#, fuzzy
msgid "Save ZIP"
-msgstr "Salvesta kui"
+msgstr "Salvesta ZIP"
#: editor/editor_export.cpp
msgid ""
@@ -2865,22 +2800,20 @@ msgstr ""
"tagasilangemine lubatud”."
#: editor/editor_export.cpp
-#, fuzzy
msgid ""
"Target platform requires 'PVRTC' texture compression for GLES2. Enable "
"'Import Pvrtc' in Project Settings."
msgstr ""
-"Sihtplatvorm nõuab GLES2 jaoks 'ETC' tekstuuri tihendamist. Projekti "
-"seadetes lubage „Impordi ETC”."
+"Sihtplatvorm nõuab GLES2 jaoks 'PVRTC' tekstuuri tihendamist. Projekti "
+"seadetes lubage „Impordi PVRTC”."
#: editor/editor_export.cpp
-#, fuzzy
msgid ""
"Target platform requires 'ETC2' or 'PVRTC' texture compression for GLES3. "
"Enable 'Import Etc 2' or 'Import Pvrtc' in Project Settings."
msgstr ""
-"Sihtplatvorm nõuab GLES3 jaoks 'ETC2' tekstuuri tihendamist. Projekti "
-"seadetes lubage „Impordi ETC2”."
+"Sihtplatvorm nõuab GLES3 jaoks \"ETC2\" või \"PVRTC\" tekstuuri tihendamist. "
+"Lubage projekti seadetes \"Impordi Etc 2\" või \"Impordi Pvrtc\"."
#: editor/editor_export.cpp
#, fuzzy
@@ -2890,103 +2823,100 @@ msgid ""
"Enable 'Import Pvrtc' in Project Settings, or disable 'Driver Fallback "
"Enabled'."
msgstr ""
-"Sihtplatvorm nõuab juhi varundamiseks GLES2-ga 'ETC' tekstuuri tihendamist.\n"
-"Lülitage projekti sätetes sisse „Impordi ETC” või keelake „Draiveri "
-"tagasilangemine lubatud”."
+"Sihtplatvorm nõuab 'PVRTC' tekstuuride tihendamist, et draiver saaks tagasi "
+"pöörduda GLES2-le.\n"
+"Lülitage projekti seadetes sisse 'Import Pvrtc' või lülitage välja 'Driver "
+"Fallback Enabled'."
#: 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
-#, fuzzy
msgid "Custom Template"
-msgstr "Redaktor"
+msgstr "Kohandatud mall"
#: editor/editor_export.cpp editor/project_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 "Release"
-msgstr ""
+msgstr "Avalda"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Binary Format"
-msgstr "Formaat"
+msgstr "Binaarne formaat"
#: editor/editor_export.cpp
msgid "64 Bits"
-msgstr ""
+msgstr "64 bitti"
#: editor/editor_export.cpp
msgid "Embed PCK"
-msgstr ""
+msgstr "Manusta PCK"
#: editor/editor_export.cpp platform/osx/export/export.cpp
-#, fuzzy
msgid "Texture Format"
-msgstr "Pööramisrežiim"
+msgstr "Tekstuuriformaat"
#: editor/editor_export.cpp
msgid "BPTC"
-msgstr ""
+msgstr "BPTC"
#: editor/editor_export.cpp platform/osx/export/export.cpp
msgid "S3TC"
-msgstr ""
+msgstr "S3TC"
#: editor/editor_export.cpp platform/osx/export/export.cpp
msgid "ETC"
-msgstr ""
+msgstr "ETC"
#: editor/editor_export.cpp platform/osx/export/export.cpp
msgid "ETC2"
-msgstr ""
+msgstr "ETC2"
#: editor/editor_export.cpp
msgid "No BPTC Fallbacks"
-msgstr ""
+msgstr "Puuduvad BPTC varuvariandid"
#: 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 "Kohandatud silumismalli ei leitud."
#: 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 "Kohandatud väljalaskemalli ei leitud."
#: editor/editor_export.cpp
msgid "Prepare Template"
-msgstr ""
+msgstr "Malli ettevalmistamine"
#: editor/editor_export.cpp platform/osx/export/export.cpp
msgid "The given export path doesn't exist."
-msgstr ""
+msgstr "Antud eksporditee ei ole olemas."
#: editor/editor_export.cpp platform/javascript/export/export.cpp
-#, fuzzy
msgid "Template file not found: \"%s\"."
-msgstr "Mallifaili ei leitud:"
+msgstr "Mallifaili ei leitud: \"%s\"."
#: editor/editor_export.cpp
msgid "Failed to copy export template."
-msgstr ""
+msgstr "Eksportmalli kopeerimine ebaõnnestus."
#: editor/editor_export.cpp platform/windows/export/export.cpp
#: platform/x11/export/export.cpp
msgid "PCK Embedding"
-msgstr ""
+msgstr "PCK manustamine"
#: editor/editor_export.cpp
msgid "On 32-bit exports the embedded PCK cannot be bigger than 4 GiB."
-msgstr ""
+msgstr "32-bitise ekspordi puhul ei saa manustatud PCK olla suurem kui 4 GiB."
#: editor/editor_export.cpp
msgid "Convert Text Resources To Binary On Export"
-msgstr ""
+msgstr "Teisenda tekstiressursid eksportimisel binaarseks"
#: editor/editor_feature_profile.cpp
msgid "3D Editor"
@@ -3007,20 +2937,19 @@ msgstr "Stseenipuu redigeerimine"
#: editor/editor_feature_profile.cpp
msgid "Node Dock"
-msgstr ""
+msgstr "Node'i dokk"
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "FileSystem Dock"
-msgstr "Failikuvaja"
+msgstr "Failisüsteemi dokk"
#: editor/editor_feature_profile.cpp
msgid "Import Dock"
-msgstr ""
+msgstr "Impordi dokk"
#: editor/editor_feature_profile.cpp
msgid "Allows to view and edit 3D scenes."
-msgstr ""
+msgstr "Võimaldab vaadata ja redigeerida 3D stseene."
#: editor/editor_feature_profile.cpp
msgid "Allows to edit scripts using the integrated script editor."
@@ -3439,7 +3368,7 @@ msgstr "Klass:"
#: editor/editor_help.cpp editor/scene_tree_editor.cpp
#: editor/script_create_dialog.cpp
msgid "Inherits:"
-msgstr "Pärib:"
+msgstr "Pärandub:"
#: editor/editor_help.cpp
msgid "Inherited by:"
@@ -3491,7 +3420,7 @@ msgstr ""
#: editor/editor_help.cpp
msgid "Enumerations"
-msgstr "Loetelu"
+msgstr "Loendused"
#: editor/editor_help.cpp
msgid "Property Descriptions"
@@ -3509,7 +3438,7 @@ msgstr ""
#: editor/editor_help.cpp
msgid "Method Descriptions"
-msgstr "Meetodi kirjeldused"
+msgstr "Meetodite kirjeldused"
#: editor/editor_help.cpp
msgid ""
@@ -10191,7 +10120,7 @@ msgstr ""
#: editor/plugins/polygon_2d_editor_plugin.cpp modules/csg/csg_shape.cpp
#: scene/resources/default_theme/default_theme.cpp
msgid "Snap"
-msgstr ""
+msgstr "Naksamine"
#: editor/plugins/polygon_2d_editor_plugin.cpp
msgid "Enable Snap"
@@ -14700,7 +14629,7 @@ msgstr ""
#: editor/project_settings_editor.cpp
msgid "Input Map"
-msgstr ""
+msgstr "Sisendikaart"
#: editor/project_settings_editor.cpp
msgid "Action:"
@@ -14720,7 +14649,7 @@ msgstr ""
#: editor/project_settings_editor.cpp
msgid "Localization"
-msgstr "Tõlked"
+msgstr "Lokaliseerimine"
#: editor/project_settings_editor.cpp
msgid "Translations"
@@ -15448,7 +15377,7 @@ msgstr ""
#: editor/script_create_dialog.cpp
msgid "File does not exist."
-msgstr "Faili ei ole olemas."
+msgstr "Faili pole olemas."
#: editor/script_create_dialog.cpp
msgid "Invalid extension."
@@ -15492,7 +15421,7 @@ msgstr ""
#: editor/script_create_dialog.cpp
msgid "Invalid path."
-msgstr "Kehtetu tee."
+msgstr "Kehtetu failitee."
#: editor/script_create_dialog.cpp
msgid "Invalid class name."
@@ -24597,9 +24526,8 @@ msgid "Draw 2D Outlines"
msgstr ""
#: scene/main/scene_tree.cpp servers/visual_server.cpp
-#, fuzzy
msgid "Reflections"
-msgstr "Kopeeri valik"
+msgstr "Peegeldused"
#: scene/main/scene_tree.cpp
msgid "Atlas Size"
diff --git a/editor/translations/extract.py b/editor/translations/extract.py
index 07026baee2..cecdb3939d 100755
--- a/editor/translations/extract.py
+++ b/editor/translations/extract.py
@@ -8,6 +8,7 @@ import re
import shutil
import subprocess
import sys
+from typing import Dict, Tuple
class Message:
@@ -42,7 +43,7 @@ class Message:
return "\n".join(lines)
-messages_map = {} # (id, context) -> Message.
+messages_map: Dict[Tuple[str, str], Message] = {} # (id, context) -> Message.
line_nb = False
@@ -51,11 +52,11 @@ for arg in sys.argv[1:]:
print("Enabling line numbers in the context locations.")
line_nb = True
else:
- os.sys.exit("Non supported argument '" + arg + "'. Aborting.")
+ sys.exit("Non supported argument '" + arg + "'. Aborting.")
if not os.path.exists("editor"):
- os.sys.exit("ERROR: This script should be started from the root of the git repo.")
+ sys.exit("ERROR: This script should be started from the root of the git repo.")
matches = []
diff --git a/editor/translations/fa.po b/editor/translations/fa.po
index 186ab7264e..28371fdd50 100644
--- a/editor/translations/fa.po
+++ b/editor/translations/fa.po
@@ -31,13 +31,14 @@
# LordProfo (Nima) <nimaentity30@gmail.com>, 2022.
# John Smith <pkafsharix@gmail.com>, 2022.
# Ali Jafari <ali.jafari.sn@gmail.com>, 2022.
+# Ali Almasi <A710almasi@gmail.com>, 2022.
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: 2022-09-09 12:36+0000\n"
-"Last-Translator: LordProfo (Nima) <nimaentity30@gmail.com>\n"
+"PO-Revision-Date: 2022-09-19 05:22+0000\n"
+"Last-Translator: Ali Jafari <ali.jafari.sn@gmail.com>\n"
"Language-Team: Persian <https://hosted.weblate.org/projects/godot-engine/"
"godot/fa/>\n"
"Language: fa\n"
@@ -45,7 +46,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.14.1-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -246,7 +247,7 @@ msgstr "اندازهٔ صفحه"
#: core/io/file_access_network.cpp
msgid "Page Read Ahead"
-msgstr ""
+msgstr "صفحه پیش‌رو را بخوانید"
#: core/io/http_client.cpp
msgid "Blocking Mode Enabled"
@@ -257,9 +258,8 @@ msgid "Connection"
msgstr "اتصال"
#: core/io/http_client.cpp
-#, fuzzy
msgid "Read Chunk Size"
-msgstr "خواندن اندازه تکه"
+msgstr "اندازه تکه خواندن"
#: core/io/marshalls.cpp
msgid "Object ID"
@@ -524,7 +524,7 @@ msgstr "پیام"
#: core/os/input_event.cpp
msgid "Pitch"
-msgstr ""
+msgstr "پیچ"
#: core/os/input_event.cpp scene/2d/cpu_particles_2d.cpp
#: scene/2d/physics_body_2d.cpp scene/3d/cpu_particles.cpp
@@ -591,14 +591,12 @@ msgid "Main Scene"
msgstr "صحنهٔ اصلی"
#: core/project_settings.cpp
-#, fuzzy
msgid "Disable stdout"
-msgstr "غیرفعال شده"
+msgstr "stdout غیرفعال شده"
#: core/project_settings.cpp
-#, fuzzy
msgid "Disable stderr"
-msgstr "غیرفعال شده"
+msgstr "stderr غیرفعال شده"
#: core/project_settings.cpp
msgid "Use Hidden Project Data Directory"
@@ -827,9 +825,8 @@ msgid "Profiler"
msgstr "پروفایلر"
#: core/project_settings.cpp
-#, fuzzy
msgid "Max Functions"
-msgstr "تغییر نام نقش"
+msgstr "تغییر نام توابع"
#: core/project_settings.cpp scene/3d/vehicle_body.cpp
msgid "Compression"
@@ -841,7 +838,7 @@ msgstr "فرمت‌ها"
#: core/project_settings.cpp
msgid "Zstd"
-msgstr ""
+msgstr "Zstd"
#: core/project_settings.cpp
msgid "Long Distance Matching"
@@ -853,15 +850,15 @@ msgstr "سطح فشرده‌سازی"
#: core/project_settings.cpp
msgid "Window Log Size"
-msgstr ""
+msgstr "اندازهٔ پنجرهٔ ‹گزارش"
#: core/project_settings.cpp
msgid "Zlib"
-msgstr ""
+msgstr "Zlib"
#: core/project_settings.cpp
msgid "Gzip"
-msgstr ""
+msgstr "Gzip"
#: core/project_settings.cpp platform/android/export/export.cpp
msgid "Android"
@@ -873,7 +870,7 @@ msgstr "ماژول‌ها"
#: core/register_core_types.cpp
msgid "TCP"
-msgstr "تی‌سی‌پی"
+msgstr "TCP"
#: core/register_core_types.cpp
msgid "Connect Timeout Seconds"
@@ -892,9 +889,8 @@ msgid "SSL"
msgstr "SSL"
#: core/register_core_types.cpp main/main.cpp
-#, fuzzy
msgid "Certificates"
-msgstr "خصوصیات"
+msgstr "مدارک"
#: core/resource.cpp editor/dependency_editor.cpp
#: editor/editor_resource_picker.cpp
@@ -968,15 +964,13 @@ msgstr "بافرها"
#: drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles3/rasterizer_canvas_base_gles3.cpp
-#, fuzzy
msgid "Canvas Polygon Buffer Size (KB)"
-msgstr "اندازه بافر پرده چندضعلی (کیلوبایت)"
+msgstr "اندازه بافر پرده چندضلعی (کیلوبایت)"
#: drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles3/rasterizer_canvas_base_gles3.cpp
-#, fuzzy
msgid "Canvas Polygon Index Buffer Size (KB)"
-msgstr "اندازه بافر شاخص پرده چندضعلی (کیلوبایت)"
+msgstr "اندازه بافر شاخص پرده چندضلعی (کیلوبایت)"
#: drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles3/rasterizer_canvas_base_gles3.cpp editor/editor_settings.cpp
@@ -992,9 +986,8 @@ msgstr "دو بعدی"
#: drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles3/rasterizer_canvas_base_gles3.cpp
-#, fuzzy
msgid "Snapping"
-msgstr "چفت:"
+msgstr "چفت"
#: drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles3/rasterizer_canvas_base_gles3.cpp
@@ -1188,9 +1181,8 @@ msgid "Type"
msgstr "تایپ"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "In Handle"
-msgstr "دسته داخل"
+msgstr "در دسته"
#: editor/animation_track_editor.cpp
msgid "Out Handle"
@@ -1603,9 +1595,8 @@ msgid "Add Method Track Key"
msgstr "افزودن تابع کلید میسر"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Method not found in object:"
-msgstr "تابع در شئ یافت نشد: "
+msgstr "تابع در آبجکت یافت نشد:"
#: editor/animation_track_editor.cpp
msgid "Anim Move Keys"
@@ -1621,7 +1612,7 @@ msgstr "تبدیل"
#: editor/animation_track_editor.cpp editor/editor_help.cpp
msgid "Methods"
-msgstr "روش ها"
+msgstr "روش‌ها"
#: editor/animation_track_editor.cpp
msgid "Bezier"
@@ -2883,9 +2874,8 @@ msgstr ""
#: 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
-#, fuzzy
msgid "Custom Template"
-msgstr "عضوها"
+msgstr "قالب شخصی"
#: editor/editor_export.cpp editor/project_export.cpp
#: platform/android/export/export_plugin.cpp platform/iphone/export/export.cpp
@@ -2895,9 +2885,8 @@ msgid "Release"
msgstr "انتشار"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Binary Format"
-msgstr "انتقال را در انیمیشن تغییر بده"
+msgstr "باینری فرمت"
#: editor/editor_export.cpp
msgid "64 Bits"
@@ -2950,19 +2939,16 @@ msgid "Prepare Template"
msgstr "مدیریت صدور قالب ها"
#: editor/editor_export.cpp platform/osx/export/export.cpp
-#, fuzzy
msgid "The given export path doesn't exist."
-msgstr "پرونده موجود نیست."
+msgstr "مسیر خروجی وجود ندارد."
#: editor/editor_export.cpp platform/javascript/export/export.cpp
-#, fuzzy
msgid "Template file not found: \"%s\"."
-msgstr "طول انیمیشن (به ثانیه)."
+msgstr "فایل قالب پیدا نشد: \"%s\""
#: editor/editor_export.cpp
-#, fuzzy
msgid "Failed to copy export template."
-msgstr "نام دارایی ایندکس نامعتبر."
+msgstr "خطا در کپی قالب خروجی."
#: editor/editor_export.cpp platform/windows/export/export.cpp
#: platform/x11/export/export.cpp
@@ -3000,9 +2986,8 @@ msgid "Node Dock"
msgstr "لنگرگاه گره:"
#: editor/editor_feature_profile.cpp
-#, fuzzy
msgid "FileSystem Dock"
-msgstr "سامانه پرونده"
+msgstr "قایل‌سیستم داک"
#: editor/editor_feature_profile.cpp
msgid "Import Dock"
@@ -3190,7 +3175,6 @@ msgid "Select Current Folder"
msgstr "برگزیدن پوشه موجود"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
-#, fuzzy
msgid "File exists, overwrite?"
msgstr "فایل وجود دارد، آیا بازنویسی شود؟"
@@ -3278,9 +3262,8 @@ msgid "Mode"
msgstr "حالت"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
-#, fuzzy
msgid "Current Dir"
-msgstr "دایرکتوری کنونی"
+msgstr "مسیر کنونی"
#: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp
msgid "Current File"
@@ -3399,9 +3382,8 @@ msgid "(Re)Importing Assets"
msgstr "(در حال) وارد کردن دوباره عست ها"
#: editor/editor_file_system.cpp
-#, fuzzy
msgid "Reimport Missing Imported Files"
-msgstr "وارد کردن دوباره فایل های وارد شده ناپیدا"
+msgstr "وارد کردن دوباره فایل های وارد شده پیدانشده"
#: editor/editor_help.cpp scene/2d/camera_2d.cpp scene/gui/control.cpp
#: scene/gui/nine_patch_rect.cpp scene/resources/dynamic_font.cpp
@@ -3450,7 +3432,7 @@ msgstr "رنگ‌ها"
#: editor/editor_help.cpp editor/plugins/theme_editor_plugin.cpp
msgid "Constants"
-msgstr "ثابت ها"
+msgstr "ثابت‌ها"
#: editor/editor_help.cpp editor/plugins/theme_editor_plugin.cpp
msgid "Fonts"
@@ -3467,7 +3449,7 @@ msgstr "استایل‌ها"
#: editor/editor_help.cpp
msgid "Enumerations"
-msgstr "شمارش ها"
+msgstr "شمارش‌ها"
#: editor/editor_help.cpp
msgid "Property Descriptions"
@@ -3478,10 +3460,12 @@ msgid "(value)"
msgstr "(مقدار)"
#: editor/editor_help.cpp
+#, fuzzy
msgid ""
"There is currently no description for this property. Please help us by "
"[color=$color][url=$url]contributing one[/url][/color]!"
msgstr ""
+"این ویژگی هیچ تعریفی ندارد. لطفا به ما کمک کنید با [color=$color][url=$url]"
#: editor/editor_help.cpp
msgid "Method Descriptions"
@@ -3492,6 +3476,8 @@ msgid ""
"There is currently no description for this method. Please help us by "
"[color=$color][url=$url]contributing one[/url][/color]!"
msgstr ""
+"در حال حاضر هیچ توضیحی برای این متد وجود ندارد. لطفاً به ما در [color=$color]"
+"[url=$url]مشارکت در یکی[/url][/color] کمک کنید!"
#: editor/editor_help.cpp editor/editor_settings.cpp
#: editor/plugins/script_editor_plugin.cpp
@@ -3764,6 +3750,8 @@ msgid ""
"This resource can't be saved because it does not belong to the edited scene. "
"Make it unique first."
msgstr ""
+"این منبع نمی‌تواند ذخیره شود زیرا به صحنهٔ ویرایش شده تعلق ندارد. ابتدا آن را "
+"منحصر به فرد کنید."
#: editor/editor_node.cpp editor/plugins/animation_player_editor_plugin.cpp
msgid "Save Resource As..."
@@ -3795,7 +3783,7 @@ msgstr "پایان غیر منتظرهٔ فایل '%s'."
#: editor/editor_node.cpp
msgid "Missing '%s' or its dependencies."
-msgstr ""
+msgstr "'%s' ناموجود یا وابستگی‌های مربوط به آن وجود ندارد."
#: editor/editor_node.cpp
msgid "Error while loading '%s'."
@@ -3852,11 +3840,11 @@ msgstr "خطا در ذخیره MeshLibrary!"
#: editor/editor_node.cpp
msgid "Can't load TileSet for merging!"
-msgstr ""
+msgstr "نمی‌توان TileSet را برای ادغام بارگیری کرد!"
#: editor/editor_node.cpp
msgid "Error saving TileSet!"
-msgstr ""
+msgstr "خطا در ذخیرهٔ TileSet!"
#: editor/editor_node.cpp
msgid ""
@@ -4839,12 +4827,12 @@ msgstr "استخراج پرونده های زیر از بسته بندی انج
#: editor/plugins/shader_editor_plugin.cpp
#: scene/resources/default_theme/default_theme.cpp
msgid "Reload"
-msgstr ""
+msgstr "بارگذاری دوباره"
#: editor/editor_node.cpp editor/plugins/script_editor_plugin.cpp
#: editor/plugins/shader_editor_plugin.cpp
msgid "Resave"
-msgstr ""
+msgstr "ذخیره مجدد"
#: editor/editor_node.cpp
msgid "New Inherited"
@@ -4890,7 +4878,7 @@ msgstr ""
#: editor/editor_node.h
msgid "Warning!"
-msgstr ""
+msgstr "هشدار!"
#: editor/editor_path.cpp
#, fuzzy
@@ -4949,7 +4937,7 @@ msgstr "وضعیت:"
#: editor/editor_profiler.cpp
msgid "Measure:"
-msgstr ""
+msgstr "اندازه گیری:"
#: editor/editor_profiler.cpp
#, fuzzy
@@ -4958,7 +4946,7 @@ msgstr "زمان(s): "
#: editor/editor_profiler.cpp
msgid "Average Time (ms)"
-msgstr ""
+msgstr "زمان متوسط (میلی‌ثانیه)"
#: editor/editor_profiler.cpp
msgid "Frame %"
@@ -4974,7 +4962,7 @@ msgstr ""
#: editor/editor_profiler.cpp
msgid "Self"
-msgstr ""
+msgstr "خود"
#: editor/editor_profiler.cpp
msgid ""
@@ -4998,7 +4986,7 @@ msgstr "فراخوانی"
#: editor/editor_profiler.cpp editor/plugins/script_editor_plugin.cpp
#: editor/script_editor_debugger.cpp
msgid "Debugger"
-msgstr ""
+msgstr "دیباگِر"
#: editor/editor_profiler.cpp
msgid "Profiler Frame History Size"
@@ -5017,7 +5005,7 @@ msgstr "عضوها"
#: editor/editor_properties.cpp editor/script_create_dialog.cpp
#: scene/resources/default_theme/default_theme.cpp
msgid "On"
-msgstr ""
+msgstr "روشن"
#: editor/editor_properties.cpp modules/gridmap/grid_map.cpp
#: scene/2d/collision_object_2d.cpp scene/2d/tile_map.cpp
@@ -5032,7 +5020,7 @@ msgstr ""
#: editor/editor_properties.cpp
msgid "[Empty]"
-msgstr ""
+msgstr "[خالی]"
#: editor/editor_properties.cpp editor/plugins/root_motion_editor_plugin.cpp
msgid "Assign..."
@@ -5069,7 +5057,7 @@ msgstr ""
#: editor/plugins/spatial_editor_plugin.cpp
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Size:"
-msgstr ""
+msgstr "اندازه:"
#: editor/editor_properties_array_dict.cpp
msgid "Page:"
@@ -5272,8 +5260,9 @@ msgstr ""
#: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp
#: editor/plugins/theme_editor_plugin.cpp scene/gui/control.cpp
#: scene/register_scene_types.cpp
+#, fuzzy
msgid "Theme"
-msgstr ""
+msgstr "تم"
#: editor/editor_settings.cpp editor/import_dock.cpp
#, fuzzy
@@ -5294,7 +5283,7 @@ msgstr ""
#: editor/editor_settings.cpp scene/resources/environment.cpp
msgid "Contrast"
-msgstr ""
+msgstr "تضاد"
#: editor/editor_settings.cpp
msgid "Relationship Line Opacity"
@@ -5366,7 +5355,7 @@ msgstr ""
#: editor/editor_settings.cpp
msgid "Docks"
-msgstr ""
+msgstr "داک‌ها"
#: editor/editor_settings.cpp
#, fuzzy
@@ -5490,7 +5479,7 @@ msgstr ""
#: editor/editor_settings.cpp
msgid "Appearance"
-msgstr ""
+msgstr "ظاهر"
#: editor/editor_settings.cpp scene/gui/text_edit.cpp
#, fuzzy
@@ -5578,8 +5567,9 @@ msgid "Sort Members Outline Alphabetically"
msgstr ""
#: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp
+#, fuzzy
msgid "Cursor"
-msgstr ""
+msgstr "اشاره‌گر"
#: editor/editor_settings.cpp
msgid "Scroll Past End Of File"
@@ -5713,7 +5703,7 @@ msgstr "برداشتن نقطه"
#: scene/resources/particles_material.cpp servers/physics_2d_server.cpp
#: servers/physics_server.cpp
msgid "Shape"
-msgstr ""
+msgstr "شکل"
#: editor/editor_settings.cpp
msgid "Primary Grid Steps"
@@ -5987,8 +5977,9 @@ msgstr ""
#: editor/editor_settings.cpp scene/2d/back_buffer_copy.cpp scene/2d/sprite.cpp
#: scene/2d/visibility_notifier_2d.cpp scene/3d/sprite_3d.cpp
#: scene/gui/control.cpp
+#, fuzzy
msgid "Rect"
-msgstr ""
+msgstr "مستطیل"
#: editor/editor_settings.cpp
#, fuzzy
@@ -5997,7 +5988,7 @@ msgstr "برداشتن موج"
#: editor/editor_settings.cpp platform/android/export/export_plugin.cpp
msgid "Screen"
-msgstr ""
+msgstr "صفحه"
#: editor/editor_settings.cpp
#, fuzzy
@@ -6035,13 +6026,14 @@ msgstr ""
#: editor/editor_settings.cpp
msgid "Host"
-msgstr ""
+msgstr "میزبان"
#: editor/editor_settings.cpp editor/fileserver/editor_file_server.cpp
#: main/main.cpp modules/mono/mono_gd/gd_mono.cpp
#: scene/resources/default_theme/default_theme.cpp
+#, fuzzy
msgid "Port"
-msgstr ""
+msgstr "پورت"
#. TRANSLATORS: Project Manager here refers to the tool used to create/manage Godot projects.
#: editor/editor_settings.cpp
@@ -6231,7 +6223,7 @@ msgstr "انتخاب گره (ها) برای وارد شدن"
#: editor/editor_sub_scene.cpp editor/project_manager.cpp
msgid "Browse"
-msgstr ""
+msgstr "مرور کردن"
#: editor/editor_sub_scene.cpp
msgid "Scene Path:"
@@ -6409,7 +6401,7 @@ msgstr ""
#: editor/export_template_manager.cpp
msgid "Importing:"
-msgstr ""
+msgstr "وارد کردن:"
#: editor/export_template_manager.cpp
msgid "Remove templates for the version '%s'?"
@@ -6447,7 +6439,7 @@ msgstr ""
#: editor/export_template_manager.cpp
msgid "Uninstall"
-msgstr ""
+msgstr "حذف نصب"
#: editor/export_template_manager.cpp
msgid "Uninstall templates for the current version."
@@ -6535,7 +6527,7 @@ msgstr ""
#: editor/plugins/version_control_editor_plugin.cpp
#: platform/uwp/export/export.cpp platform/windows/export/export.cpp
msgid "Password"
-msgstr ""
+msgstr "گذرواژه"
#: editor/filesystem_dock.cpp
#, fuzzy
@@ -6771,7 +6763,7 @@ msgstr ""
#: editor/filesystem_dock.cpp
msgid "Move"
-msgstr ""
+msgstr "حرکت"
#: editor/filesystem_dock.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
@@ -6893,7 +6885,7 @@ msgstr "حذف گره(ها)"
#: editor/groups_editor.cpp editor/node_dock.cpp
msgid "Groups"
-msgstr "گروه ها"
+msgstr "گروه‌ها"
#: editor/groups_editor.cpp
msgid "Nodes Not in Group"
@@ -6937,7 +6929,7 @@ msgstr "ایجاد پوشه"
#: editor/import/resource_importer_bitmask.cpp
#: servers/audio/effects/audio_effect_compressor.cpp
msgid "Threshold"
-msgstr ""
+msgstr "آستانه"
#: editor/import/resource_importer_csv_translation.cpp
#: editor/import/resource_importer_layered_texture.cpp
@@ -6973,14 +6965,13 @@ msgstr ""
#: editor/import/resource_importer_texture.cpp scene/animation/tween.cpp
#: scene/resources/texture.cpp
msgid "Repeat"
-msgstr ""
+msgstr "تکرار"
#: editor/import/resource_importer_layered_texture.cpp
#: editor/import/resource_importer_texture.cpp scene/2d/light_2d.cpp
#: scene/gui/control.cpp
-#, fuzzy
msgid "Filter"
-msgstr "صافی:"
+msgstr "صافی"
#: editor/import/resource_importer_layered_texture.cpp
#: editor/import/resource_importer_texture.cpp
@@ -6996,7 +6987,7 @@ msgstr ""
#: editor/import/resource_importer_layered_texture.cpp
#: editor/import/resource_importer_texture.cpp
msgid "sRGB"
-msgstr ""
+msgstr "sRGB"
#: editor/import/resource_importer_layered_texture.cpp
#, fuzzy
@@ -7130,7 +7121,7 @@ msgstr "وارد کردن دوباره"
#: editor/import/resource_importer_scene.cpp modules/gltf/gltf_state.cpp
msgid "Meshes"
-msgstr ""
+msgstr "مش‌ها"
#: editor/import/resource_importer_scene.cpp
#, fuzzy
@@ -7147,8 +7138,9 @@ msgid "Lightmap Texel Size"
msgstr ""
#: editor/import/resource_importer_scene.cpp modules/gltf/gltf_state.cpp
+#, fuzzy
msgid "Skins"
-msgstr ""
+msgstr "پوسته‌ها"
#: editor/import/resource_importer_scene.cpp
#, fuzzy
@@ -7229,7 +7221,7 @@ 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..."
@@ -7265,7 +7257,7 @@ msgstr ""
#: editor/import/resource_importer_scene.cpp
msgid "Saving..."
-msgstr ""
+msgstr "در حال ذخیره..."
#: editor/import/resource_importer_texture.cpp
msgid ""
@@ -7373,7 +7365,7 @@ msgstr ""
#: editor/import/resource_importer_wav.cpp scene/2d/physics_body_2d.cpp
msgid "Force"
-msgstr ""
+msgstr "نیرو"
#: editor/import/resource_importer_wav.cpp
msgid "8 Bit"
@@ -7858,7 +7850,7 @@ msgstr ""
#: editor/plugins/animation_blend_space_2d_editor.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Blend:"
-msgstr ""
+msgstr "درآمیختن:"
#: editor/plugins/animation_blend_tree_editor_plugin.cpp
#, fuzzy
@@ -8086,7 +8078,7 @@ msgstr ""
#: editor/plugins/animation_player_editor_plugin.cpp
#: editor/plugins/version_control_editor_plugin.cpp
msgid "New"
-msgstr ""
+msgstr "جدید"
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "Paste As Reference"
@@ -8132,14 +8124,14 @@ msgstr "چسباندن"
#. TRANSLATORS: Opposite of "Past", refers to a direction in animation onion skinning.
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "Future"
-msgstr ""
+msgstr "آینده"
#: editor/plugins/animation_player_editor_plugin.cpp modules/csg/csg_shape.cpp
#: scene/3d/collision_polygon.cpp scene/main/scene_tree.cpp
#: scene/resources/material.cpp scene/resources/primitive_meshes.cpp
#: servers/audio/effects/audio_effect_phaser.cpp
msgid "Depth"
-msgstr ""
+msgstr "عمق"
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "1 step"
@@ -8179,7 +8171,7 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp
#: editor/plugins/sprite_frames_editor_plugin.cpp editor/property_editor.cpp
msgid "Error!"
-msgstr ""
+msgstr "خطا!"
#: editor/plugins/animation_player_editor_plugin.cpp
msgid "Blend Times:"
@@ -8320,7 +8312,7 @@ msgstr ""
#: editor/plugins/animation_tree_player_editor_plugin.cpp
#: scene/resources/style_box.cpp scene/resources/visual_shader.cpp
msgid "Blend"
-msgstr ""
+msgstr "درآمیختن"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Auto Restart:"
@@ -8336,12 +8328,12 @@ msgstr ""
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Start!"
-msgstr ""
+msgstr "شروع!"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "Amount:"
-msgstr ""
+msgstr "مقدار:"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Blend 0:"
@@ -8427,7 +8419,7 @@ msgstr "ویرایش صافی های گره"
#: editor/plugins/animation_tree_player_editor_plugin.cpp
msgid "Filters..."
-msgstr ""
+msgstr "فیلتر‌ها:"
#: editor/plugins/asset_library_editor_plugin.cpp scene/main/http_request.cpp
msgid "Use Threads"
@@ -8442,8 +8434,9 @@ msgid "View Files"
msgstr "نمایش پرونده ها"
#: editor/plugins/asset_library_editor_plugin.cpp
+#, fuzzy
msgid "Download"
-msgstr ""
+msgstr "دانلود"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Connection error, please try again."
@@ -8507,7 +8500,7 @@ msgstr "زمان:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Failed:"
-msgstr ""
+msgstr "ناموفق:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Bad download hash, assuming file has been tampered with."
@@ -8515,11 +8508,11 @@ msgstr ""
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Expected:"
-msgstr ""
+msgstr "انتظار می‌رود:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Got:"
-msgstr ""
+msgstr "گرفته شد:"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Failed SHA-256 hash check"
@@ -8549,8 +8542,9 @@ msgid "Error making request"
msgstr "خطای بارگذاری قلم."
#: editor/plugins/asset_library_editor_plugin.cpp
+#, fuzzy
msgid "Idle"
-msgstr ""
+msgstr "بیکار"
#: editor/plugins/asset_library_editor_plugin.cpp
#, fuzzy
@@ -8559,7 +8553,7 @@ msgstr "نصب کردن"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Retry"
-msgstr ""
+msgstr "تلاش دوباره"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Download Error"
@@ -8646,7 +8640,7 @@ msgstr "وارد کردن"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Plugins..."
-msgstr ""
+msgstr "افزونه‌ها..."
#: editor/plugins/asset_library_editor_plugin.cpp editor/project_manager.cpp
msgid "Sort:"
@@ -8732,7 +8726,7 @@ msgstr "انتخاب پرونده قالب"
#: editor/plugins/camera_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp scene/resources/mesh_library.cpp
msgid "Preview"
-msgstr ""
+msgstr "پیش نمایش"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Configure Snap"
@@ -8752,7 +8746,7 @@ msgstr ""
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "steps"
-msgstr ""
+msgstr "گام‌ها"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Rotation Offset:"
@@ -8904,7 +8898,7 @@ msgstr ""
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Center"
-msgstr ""
+msgstr "مرکز"
#: editor/plugins/canvas_item_editor_plugin.cpp
#, fuzzy
@@ -9249,11 +9243,11 @@ msgstr "پخش سفارشی صحنه"
#: editor/plugins/canvas_item_editor_plugin.cpp
#: editor/plugins/spatial_editor_plugin.cpp
msgid "View"
-msgstr ""
+msgstr "دیدن"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Show"
-msgstr ""
+msgstr "نشان دادن"
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Show When Snapping"
@@ -9261,7 +9255,7 @@ msgstr ""
#: editor/plugins/canvas_item_editor_plugin.cpp
msgid "Hide"
-msgstr ""
+msgstr "مخفی کردن"
#: editor/plugins/canvas_item_editor_plugin.cpp
#, fuzzy
@@ -9496,7 +9490,7 @@ msgstr ""
#: editor/plugins/particles_2d_editor_plugin.cpp
#: editor/plugins/particles_editor_plugin.cpp editor/spatial_editor_gizmos.cpp
msgid "Particles"
-msgstr ""
+msgstr "ذرات"
#: editor/plugins/cpu_particles_2d_editor_plugin.cpp
#: editor/plugins/particles_2d_editor_plugin.cpp
@@ -9554,7 +9548,7 @@ msgstr ""
#: editor/plugins/curve_editor_plugin.cpp
msgid "Flat 1"
-msgstr "تخت 1"
+msgstr "تخت ۱"
#: editor/plugins/curve_editor_plugin.cpp editor/property_editor.cpp
msgid "Ease In"
@@ -9673,7 +9667,7 @@ msgstr ""
#: editor/plugins/item_list_editor_plugin.cpp
msgid "Items"
-msgstr ""
+msgstr "موارد"
#: editor/plugins/item_list_editor_plugin.cpp
msgid "Item List Editor"
@@ -9783,7 +9777,7 @@ msgstr ""
#: scene/resources/multimesh.cpp scene/resources/primitive_meshes.cpp
#: scene/resources/texture.cpp
msgid "Mesh"
-msgstr ""
+msgstr "مِش"
#: editor/plugins/mesh_instance_editor_plugin.cpp
msgid "Create Trimesh Static Body"
@@ -9989,15 +9983,15 @@ msgstr ""
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "X-Axis"
-msgstr ""
+msgstr "محور X"
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "Y-Axis"
-msgstr ""
+msgstr "محور Y"
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "Z-Axis"
-msgstr ""
+msgstr "محور Z"
#: editor/plugins/multimesh_editor_plugin.cpp
msgid "Mesh Up Axis:"
@@ -10090,7 +10084,7 @@ msgstr ""
#: editor/plugins/particles_editor_plugin.cpp scene/gui/video_player.cpp
msgid "Volume"
-msgstr ""
+msgstr "حجم"
#: editor/plugins/particles_editor_plugin.cpp
#, fuzzy
@@ -10688,7 +10682,7 @@ msgstr "زبانه قبلی"
#: editor/plugins/script_editor_plugin.cpp
#: scene/resources/default_theme/default_theme.cpp
msgid "File"
-msgstr "پَروَندِه"
+msgstr "فایل"
#: editor/plugins/script_editor_plugin.cpp
#, fuzzy
@@ -10767,7 +10761,7 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp editor/project_manager.cpp
#: editor/script_editor_debugger.cpp
msgid "Continue"
-msgstr ""
+msgstr "ادامه"
#: editor/plugins/script_editor_plugin.cpp
msgid "Keep Debugger Open"
@@ -10822,7 +10816,7 @@ msgstr ""
#: editor/plugins/script_editor_plugin.cpp
msgid "External"
-msgstr ""
+msgstr "خارجی"
#: editor/plugins/script_editor_plugin.cpp
#, fuzzy
@@ -10937,15 +10931,15 @@ msgstr ""
#: scene/3d/label_3d.cpp scene/gui/label.cpp
#: scene/resources/primitive_meshes.cpp
msgid "Uppercase"
-msgstr ""
+msgstr "حروف بزرگ"
#: editor/plugins/script_text_editor.cpp editor/plugins/text_editor.cpp
msgid "Lowercase"
-msgstr ""
+msgstr "حروف کوچک"
#: editor/plugins/script_text_editor.cpp editor/plugins/text_editor.cpp
msgid "Capitalize"
-msgstr ""
+msgstr "بزرگ کردن حروف"
#: editor/plugins/script_text_editor.cpp editor/plugins/text_editor.cpp
msgid "Syntax Highlighter"
@@ -11100,7 +11094,7 @@ msgstr ""
#: editor/plugins/shader_editor_plugin.cpp scene/resources/material.cpp
msgid "Shader"
-msgstr ""
+msgstr "شیدر"
#: editor/plugins/skeleton_2d_editor_plugin.cpp
msgid "This skeleton has no bones, create some children Bone2D nodes."
@@ -11151,7 +11145,7 @@ msgstr "پخش"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Orthogonal"
-msgstr ""
+msgstr "قائم"
#: editor/plugins/spatial_editor_plugin.cpp modules/gltf/gltf_camera.cpp
msgid "Perspective"
@@ -11209,7 +11203,7 @@ msgstr ""
#. TRANSLATORS: This will be appended to the view name when Auto Orthogonal is enabled.
#: editor/plugins/spatial_editor_plugin.cpp
msgid " [auto]"
-msgstr ""
+msgstr " [خودکار]"
#. TRANSLATORS: This will be appended to the view name when Portal Occulusion is enabled.
#: editor/plugins/spatial_editor_plugin.cpp
@@ -11713,11 +11707,11 @@ msgstr ""
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Pre"
-msgstr ""
+msgstr "پیش"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Post"
-msgstr ""
+msgstr "پس"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Manipulator Gizmo Size"
@@ -11911,7 +11905,7 @@ msgstr "حالت صافی:"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Speed:"
-msgstr ""
+msgstr "سرعت:"
#: editor/plugins/sprite_frames_editor_plugin.cpp
#: modules/gltf/gltf_animation.cpp modules/minimp3/audio_stream_mp3.cpp
@@ -11920,7 +11914,7 @@ msgstr ""
#: modules/stb_vorbis/resource_importer_ogg_vorbis.cpp scene/2d/path_2d.cpp
#: scene/3d/path.cpp scene/resources/animation.cpp scene/resources/material.cpp
msgid "Loop"
-msgstr ""
+msgstr "حلقه"
#: editor/plugins/sprite_frames_editor_plugin.cpp
#, fuzzy
@@ -11988,7 +11982,7 @@ msgstr ""
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "SpriteFrames"
-msgstr ""
+msgstr "فریم های اسپرایت"
#: editor/plugins/texture_region_editor_plugin.cpp
msgid "Set Region Rect"
@@ -12016,7 +12010,7 @@ msgstr ""
#: editor/plugins/texture_region_editor_plugin.cpp
msgid "Step:"
-msgstr "قدم:"
+msgstr "گام:"
#: editor/plugins/texture_region_editor_plugin.cpp
msgid "TextureRegion"
@@ -13241,8 +13235,9 @@ msgstr "تغییر بده"
#: editor/plugins/tile_set_editor_plugin.cpp scene/2d/canvas_item.cpp
#: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp scene/resources/style_box.cpp
+#, fuzzy
msgid "Modulate"
-msgstr ""
+msgstr "تعدیل"
#: editor/plugins/tile_set_editor_plugin.cpp
#, fuzzy
@@ -13354,11 +13349,11 @@ msgstr "انجمن"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Date:"
-msgstr ""
+msgstr "تاریخ:"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Subtitle:"
-msgstr ""
+msgstr "زیرنویس:"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Do you want to remove the %s branch?"
@@ -13397,7 +13392,7 @@ msgstr ""
#: editor/plugins/version_control_editor_plugin.cpp
msgid "SSH Passphrase"
-msgstr ""
+msgstr "عبارت عبور SSH"
#: editor/plugins/version_control_editor_plugin.cpp
#, fuzzy
@@ -13500,7 +13495,7 @@ msgstr ""
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Modified"
-msgstr ""
+msgstr "تغییر کرده"
#: editor/plugins/version_control_editor_plugin.cpp
#, fuzzy
@@ -13519,7 +13514,7 @@ msgstr "تغییر بده"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Unmerged"
-msgstr ""
+msgstr "ترکیب نشده"
#: editor/plugins/version_control_editor_plugin.cpp
#, fuzzy
@@ -13533,7 +13528,7 @@ msgstr "ویرایش منحنی گره"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Unified"
-msgstr ""
+msgstr "متحد شده"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "(GLES3 only)"
@@ -13545,8 +13540,9 @@ msgid "Add Output"
msgstr "خروجی"
#: editor/plugins/visual_shader_editor_plugin.cpp
+#, fuzzy
msgid "Scalar"
-msgstr ""
+msgstr "اسکالر"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "Vector"
@@ -14405,9 +14401,8 @@ msgid "Exporting All"
msgstr "صدور"
#: editor/project_export.cpp
-#, fuzzy
msgid "Export Path"
-msgstr "صدور پروژه"
+msgstr "مسیر خروجی"
#: editor/project_export.cpp
msgid "Presets"
@@ -14941,7 +14936,7 @@ msgstr ""
#: editor/project_settings_editor.cpp
msgid "Key "
-msgstr ""
+msgstr "کلید "
#: editor/project_settings_editor.cpp
msgid "Joy Button"
@@ -14986,7 +14981,7 @@ msgstr "دستگاه"
#: editor/project_settings_editor.cpp
msgid " (Physical)"
-msgstr ""
+msgstr " (فیزیکی)"
#: editor/project_settings_editor.cpp editor/settings_config_dialog.cpp
msgid "Press a Key..."
@@ -15187,8 +15182,9 @@ msgid "Input Map"
msgstr ""
#: editor/project_settings_editor.cpp
+#, fuzzy
msgid "Action:"
-msgstr ""
+msgstr "عمل:"
#: editor/project_settings_editor.cpp scene/gui/scroll_container.cpp
msgid "Deadzone"
@@ -15196,7 +15192,7 @@ msgstr ""
#: editor/project_settings_editor.cpp
msgid "Device:"
-msgstr ""
+msgstr "دستگاه:"
#: editor/project_settings_editor.cpp
msgid "Index:"
@@ -15268,7 +15264,7 @@ msgstr ""
#: editor/property_editor.cpp
msgid "Zero"
-msgstr ""
+msgstr "صفر"
#: editor/property_editor.cpp
msgid "Easing In-Out"
@@ -15328,11 +15324,11 @@ msgstr "تغییر نام"
#: editor/rename_dialog.cpp
msgid "Prefix:"
-msgstr ""
+msgstr "پیشوند:"
#: editor/rename_dialog.cpp
msgid "Suffix:"
-msgstr ""
+msgstr "پسوند:"
#: editor/rename_dialog.cpp
#, fuzzy
@@ -15642,9 +15638,8 @@ msgid "Make Local"
msgstr "محلی"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Enable Scene Unique Name(s)"
-msgstr "نام گره:"
+msgstr ""
#: editor/scene_tree_dock.cpp
#, fuzzy
@@ -15652,9 +15647,8 @@ msgid "Unique names already used by another node in the scene:"
msgstr "نام هم‌اکنون توسط تابع/متغیر/سیگنال استفاده شده است:"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Disable Scene Unique Name(s)"
-msgstr "نام گره:"
+msgstr ""
#: editor/scene_tree_dock.cpp
#, fuzzy
@@ -16004,7 +15998,7 @@ msgstr "خطای بارگذاری قلم."
#: editor/script_create_dialog.cpp
msgid "Overrides"
-msgstr ""
+msgstr "بازنویسی می‌کند"
#: editor/script_create_dialog.cpp
msgid "N/A"
@@ -16105,11 +16099,11 @@ msgstr "برداشتن"
#: editor/script_editor_debugger.cpp
msgid "Bytes:"
-msgstr ""
+msgstr "بایت‌ها:"
#: editor/script_editor_debugger.cpp
msgid "Warning:"
-msgstr ""
+msgstr "هشدار:"
#: editor/script_editor_debugger.cpp
#, fuzzy
@@ -16147,7 +16141,7 @@ msgstr ""
#: editor/script_editor_debugger.cpp
msgid "Errors"
-msgstr ""
+msgstr "خطا‌ها"
#: editor/script_editor_debugger.cpp
#, fuzzy
@@ -16208,11 +16202,11 @@ msgstr "صدور پروژه"
#: editor/script_editor_debugger.cpp
msgid "Monitor"
-msgstr ""
+msgstr "مانیتور"
#: editor/script_editor_debugger.cpp
msgid "Monitors"
-msgstr ""
+msgstr "مانیتور‌ها"
#: editor/script_editor_debugger.cpp
msgid "Pick one or more items from the list to display the graph."
@@ -16224,7 +16218,7 @@ msgstr ""
#: editor/script_editor_debugger.cpp
msgid "Total:"
-msgstr ""
+msgstr "کل:"
#: editor/script_editor_debugger.cpp
#, fuzzy
@@ -16239,15 +16233,15 @@ msgstr ""
#: editor/script_editor_debugger.cpp scene/resources/audio_stream_sample.cpp
#: servers/audio/effects/audio_effect_record.cpp
msgid "Format"
-msgstr ""
+msgstr "قالب"
#: editor/script_editor_debugger.cpp scene/main/viewport.cpp
msgid "Usage"
-msgstr ""
+msgstr "کاربرد:"
#: editor/script_editor_debugger.cpp servers/visual_server.cpp
msgid "Misc"
-msgstr ""
+msgstr "متفرقه"
#: editor/script_editor_debugger.cpp
msgid "Clicked Control:"
@@ -16288,7 +16282,7 @@ msgstr "ویرایشگر ترجیحات"
#: editor/settings_config_dialog.cpp
msgid "Shortcuts"
-msgstr ""
+msgstr "میانبر‌ها"
#: editor/settings_config_dialog.cpp
msgid "Binding"
@@ -16310,7 +16304,7 @@ msgstr ""
#: platform/osx/export/export.cpp
#: scene/resources/default_theme/default_theme.cpp
msgid "Camera"
-msgstr ""
+msgstr "دوربین"
#: editor/spatial_editor_gizmos.cpp
msgid "Change Camera FOV"
@@ -16318,7 +16312,7 @@ msgstr ""
#: editor/spatial_editor_gizmos.cpp
msgid "Change Camera Size"
-msgstr ""
+msgstr "تغییر اندازه دوربین"
#: editor/spatial_editor_gizmos.cpp
msgid "Visibility Notifier"
@@ -16351,7 +16345,7 @@ msgstr ""
#: editor/spatial_editor_gizmos.cpp modules/csg/csg_gizmos.cpp
msgid "Change Sphere Shape Radius"
-msgstr ""
+msgstr "تغییر شعاع شکل کره"
#: editor/spatial_editor_gizmos.cpp modules/csg/csg_gizmos.cpp
msgid "Change Box Shape Extents"
@@ -16359,11 +16353,11 @@ msgstr ""
#: editor/spatial_editor_gizmos.cpp
msgid "Change Capsule Shape Radius"
-msgstr ""
+msgstr "تغییر شعاع شکل کپسول"
#: editor/spatial_editor_gizmos.cpp
msgid "Change Capsule Shape Height"
-msgstr ""
+msgstr "تغییر ارتفاع شکل کپسول"
#: editor/spatial_editor_gizmos.cpp
msgid "Change Cylinder Shape Radius"
@@ -16557,7 +16551,7 @@ msgstr ""
#: main/main.cpp
msgid "Driver"
-msgstr ""
+msgstr "درایور"
#: main/main.cpp
#, fuzzy
@@ -16574,7 +16568,7 @@ msgstr ""
#: main/main.cpp
msgid "DPI"
-msgstr ""
+msgstr "دی‌پی‌آی"
#: main/main.cpp
msgid "Allow hiDPI"
@@ -16582,7 +16576,7 @@ msgstr ""
#: main/main.cpp
msgid "V-Sync"
-msgstr ""
+msgstr "وی-سینک"
#: main/main.cpp
msgid "Use V-Sync"
@@ -16594,7 +16588,7 @@ msgstr ""
#: main/main.cpp
msgid "Allowed"
-msgstr ""
+msgstr "مجاز"
#: main/main.cpp
msgid "Intended Usage"
@@ -16653,7 +16647,7 @@ msgstr ""
#: scene/gui/scroll_container.cpp scene/gui/text_edit.cpp scene/gui/tree.cpp
#: scene/main/viewport.cpp scene/register_scene_types.cpp
msgid "GUI"
-msgstr ""
+msgstr "رابط کاربری گرافیکی"
#: main/main.cpp
msgid "Drop Mouse On GUI Input Disabled"
@@ -16696,7 +16690,7 @@ msgstr ""
#: main/main.cpp
msgid "iOS"
-msgstr ""
+msgstr "آی‌او‌اس"
#: main/main.cpp
msgid "Hide Home Indicator"
@@ -16718,7 +16712,7 @@ msgstr ""
#: main/main.cpp servers/visual_server.cpp
msgid "GLES3"
-msgstr ""
+msgstr "جی‌ال‌ای‌اس‌۳"
#: main/main.cpp servers/visual_server.cpp
#, fuzzy
@@ -16733,7 +16727,7 @@ msgstr ""
#: scene/3d/world_environment.cpp scene/main/scene_tree.cpp
#: scene/resources/world.cpp
msgid "Environment"
-msgstr ""
+msgstr "محیط"
#: main/main.cpp
msgid "Default Clear Color"
@@ -16749,11 +16743,11 @@ msgstr ""
#: main/main.cpp
msgid "Image"
-msgstr ""
+msgstr "عکس"
#: main/main.cpp
msgid "Fullsize"
-msgstr ""
+msgstr "اندازه کامل"
#: main/main.cpp scene/resources/dynamic_font.cpp
#, fuzzy
@@ -16834,8 +16828,9 @@ msgstr "پیدا کردن نوع گره"
#: main/main.cpp scene/gui/texture_progress.cpp
#: scene/gui/viewport_container.cpp
+#, fuzzy
msgid "Stretch"
-msgstr ""
+msgstr "کشیدن"
#: main/main.cpp
msgid "Aspect"
@@ -16843,7 +16838,7 @@ msgstr ""
#: main/main.cpp
msgid "Shrink"
-msgstr ""
+msgstr "کوچک کردن"
#: main/main.cpp scene/main/scene_tree.cpp
msgid "Auto Accept Quit"
@@ -16930,7 +16925,7 @@ msgstr "اتصال به گره:"
#: scene/resources/navigation_mesh.cpp scene/resources/primitive_meshes.cpp
#: scene/resources/sphere_shape.cpp
msgid "Radius"
-msgstr ""
+msgstr "شعاع"
#: modules/csg/csg_shape.cpp scene/resources/primitive_meshes.cpp
msgid "Radial Segments"
@@ -16948,11 +16943,11 @@ msgstr "گام نرم"
#: modules/csg/csg_shape.cpp
msgid "Sides"
-msgstr ""
+msgstr "طرفین"
#: modules/csg/csg_shape.cpp
msgid "Cone"
-msgstr ""
+msgstr "مخروط"
#: modules/csg/csg_shape.cpp
msgid "Inner Radius"
@@ -17116,12 +17111,14 @@ msgid "Double click to create a new entry"
msgstr ""
#: modules/gdnative/gdnative_library_editor_plugin.cpp
+#, fuzzy
msgid "Platform:"
-msgstr ""
+msgstr "سکو:"
#: modules/gdnative/gdnative_library_editor_plugin.cpp
+#, fuzzy
msgid "Platform"
-msgstr ""
+msgstr "سکو"
#: modules/gdnative/gdnative_library_editor_plugin.cpp
#, fuzzy
@@ -17295,7 +17292,7 @@ msgstr "مگابایت"
#: modules/gltf/gltf_accessor.cpp scene/resources/visual_shader_nodes.cpp
msgid "Max"
-msgstr ""
+msgstr "حداکثر"
#: modules/gltf/gltf_accessor.cpp
#, fuzzy
@@ -17324,7 +17321,7 @@ msgstr ""
#: modules/gltf/gltf_buffer_view.cpp
msgid "Buffer"
-msgstr ""
+msgstr "بافر"
#: modules/gltf/gltf_buffer_view.cpp
#, fuzzy
@@ -17422,7 +17419,7 @@ msgstr "برداشتن نقطه"
#: modules/gltf/gltf_skeleton.cpp modules/gltf/gltf_skin.cpp
msgid "Roots"
-msgstr ""
+msgstr "ریشه‌ها"
#: modules/gltf/gltf_skeleton.cpp modules/gltf/gltf_state.cpp
msgid "Unique Names"
@@ -17485,7 +17482,7 @@ msgstr ""
#: modules/gltf/gltf_state.cpp
msgid "Json"
-msgstr ""
+msgstr "جی‌سان"
#: modules/gltf/gltf_state.cpp
#, fuzzy
@@ -17531,15 +17528,15 @@ msgstr "ویژگی‌ها"
#: modules/gltf/gltf_state.cpp platform/uwp/export/export.cpp
msgid "Images"
-msgstr ""
+msgstr "تصاویر"
#: modules/gltf/gltf_state.cpp
msgid "Cameras"
-msgstr ""
+msgstr "دوربین‌ها"
#: modules/gltf/gltf_state.cpp servers/visual_server.cpp
msgid "Lights"
-msgstr ""
+msgstr "نور‌ها"
#: modules/gltf/gltf_state.cpp
#, fuzzy
@@ -17580,7 +17577,7 @@ msgstr ""
#: modules/gridmap/grid_map.cpp scene/2d/tile_map.cpp
msgid "Cell"
-msgstr ""
+msgstr "سلول"
#: modules/gridmap/grid_map.cpp
#, fuzzy
@@ -17606,7 +17603,7 @@ msgstr "ساختن گره"
#: scene/2d/tile_map.cpp scene/3d/collision_object.cpp scene/3d/soft_body.cpp
#: scene/resources/material.cpp
msgid "Mask"
-msgstr ""
+msgstr "ماسک"
#: modules/gridmap/grid_map.cpp scene/2d/tile_map.cpp
#, fuzzy
@@ -17633,7 +17630,7 @@ msgstr "زبانه قبلی"
#: modules/gridmap/grid_map_editor_plugin.cpp
msgid "Plane:"
-msgstr ""
+msgstr "سطح"
#: modules/gridmap/grid_map_editor_plugin.cpp
msgid "Next Floor"
@@ -17866,19 +17863,16 @@ msgid "Auto Update Project"
msgstr "پروژه بی نام"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "Assembly Name"
-msgstr "نشان دادن همه"
+msgstr ""
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "Solution Directory"
-msgstr "یک فهرست انتخاب کنید"
+msgstr ""
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "C# Project Directory"
-msgstr "یک فهرست انتخاب کنید"
+msgstr ""
#: modules/mono/mono_gd/gd_mono_utils.cpp
msgid "End of inner exception stack trace"
@@ -17922,8 +17916,9 @@ msgid "Eroding walkable area..."
msgstr ""
#: modules/navigation/navigation_mesh_generator.cpp
+#, fuzzy
msgid "Partitioning..."
-msgstr ""
+msgstr "تقسیم بندی..."
#: modules/navigation/navigation_mesh_generator.cpp
msgid "Creating contours..."
@@ -17947,11 +17942,11 @@ msgstr ""
#: modules/navigation/navigation_mesh_generator.cpp
msgid "Done!"
-msgstr ""
+msgstr "انجام شد!"
#: modules/opensimplex/noise_texture.cpp
msgid "Seamless"
-msgstr ""
+msgstr "یک‌پارچه"
#: modules/opensimplex/noise_texture.cpp
msgid "As Normal Map"
@@ -17962,8 +17957,9 @@ msgid "Bump Strength"
msgstr ""
#: modules/opensimplex/noise_texture.cpp
+#, fuzzy
msgid "Noise"
-msgstr ""
+msgstr "نویز"
#: modules/opensimplex/noise_texture.cpp
msgid "Noise Offset"
@@ -17975,11 +17971,11 @@ msgstr ""
#: modules/opensimplex/open_simplex_noise.cpp
msgid "Period"
-msgstr ""
+msgstr "دوره"
#: modules/opensimplex/open_simplex_noise.cpp
msgid "Persistence"
-msgstr ""
+msgstr "ماندگاری"
#: modules/opensimplex/open_simplex_noise.cpp
msgid "Lacunarity"
@@ -17987,7 +17983,7 @@ msgstr ""
#: modules/regex/regex.cpp
msgid "Subject"
-msgstr ""
+msgstr "موضوع"
#: modules/regex/regex.cpp
#, fuzzy
@@ -18456,8 +18452,9 @@ msgid "if (cond) is:"
msgstr ""
#: modules/visual_script/visual_script_flow_control.cpp
+#, fuzzy
msgid "While"
-msgstr ""
+msgstr "هنگامی که"
#: modules/visual_script/visual_script_flow_control.cpp
msgid "while (cond):"
@@ -18488,7 +18485,7 @@ msgstr "تکرارگر نامعتبر شد: "
#: modules/visual_script/visual_script_flow_control.cpp
msgid "Sequence"
-msgstr ""
+msgstr "دنباله"
#: modules/visual_script/visual_script_flow_control.cpp
#, fuzzy
@@ -18649,7 +18646,7 @@ msgstr "آرایه را تغییر اندازه بده"
#: modules/visual_script/visual_script_nodes.cpp scene/resources/material.cpp
#: scene/resources/visual_shader_nodes.cpp
msgid "Operator"
-msgstr ""
+msgstr "عملگر"
#: modules/visual_script/visual_script_nodes.cpp
#, fuzzy
@@ -18758,7 +18755,7 @@ msgstr "فراخوانی"
#: modules/visual_script/visual_script_nodes.cpp scene/gui/graph_node.cpp
msgid "Title"
-msgstr ""
+msgstr "عنوان"
#: modules/visual_script/visual_script_nodes.cpp
#, fuzzy
@@ -19056,7 +19053,7 @@ msgstr "زبانه قبلی"
#: platform/android/export/export_plugin.cpp
msgid "Code"
-msgstr ""
+msgstr "کد"
#: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp
#, fuzzy
@@ -19732,9 +19729,8 @@ msgid "Custom BG Color"
msgstr "ساختن گره"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Export Icons"
-msgstr "خروجی"
+msgstr "آیکون‌های خروجی"
#: platform/iphone/export/export.cpp platform/javascript/export/export.cpp
#: platform/osx/export/export.cpp
@@ -19886,8 +19882,9 @@ msgid "Error starting HTTP server: %d."
msgstr "خطا در بارگذاری:"
#: platform/javascript/export/export.cpp
+#, fuzzy
msgid "Web"
-msgstr ""
+msgstr "وب"
#: platform/javascript/export/export.cpp
msgid "HTTP Host"
@@ -20447,7 +20444,7 @@ msgstr ""
#: platform/osx/export/export.cpp
msgid "macOS"
-msgstr ""
+msgstr "مک‌او‌اس"
#: platform/osx/export/export.cpp
msgid "Force Builtin Codesign"
@@ -20881,11 +20878,11 @@ msgstr ""
#: scene/2d/area_2d.cpp scene/3d/area.cpp
msgid "Monitoring"
-msgstr ""
+msgstr "نظارت"
#: scene/2d/area_2d.cpp scene/3d/area.cpp
msgid "Monitorable"
-msgstr ""
+msgstr "قابل نظارت"
#: scene/2d/area_2d.cpp scene/3d/area.cpp
msgid "Physics Overrides"
@@ -20912,7 +20909,7 @@ msgstr "به‌روزرسانی از صحنه"
#: scene/2d/area_2d.cpp scene/2d/cpu_particles_2d.cpp scene/3d/area.cpp
#: scene/3d/cpu_particles.cpp scene/resources/particles_material.cpp
msgid "Gravity"
-msgstr ""
+msgstr "جاذبه"
#: scene/2d/area_2d.cpp scene/3d/area.cpp
#, fuzzy
@@ -20930,7 +20927,7 @@ msgstr "افزودن کانل صوتی"
#: scene/2d/area_2d.cpp scene/3d/area.cpp
msgid "Override"
-msgstr ""
+msgstr "بازنویسی"
#: scene/2d/audio_stream_player_2d.cpp scene/audio/audio_stream_player.cpp
#: scene/gui/video_player.cpp servers/audio/effects/audio_effect_amplify.cpp
@@ -21639,9 +21636,8 @@ msgid "Filter Smooth"
msgstr "حالت صافی:"
#: scene/2d/light_occluder_2d.cpp
-#, fuzzy
msgid "Closed"
-msgstr "بستن"
+msgstr "بسته"
#: scene/2d/light_occluder_2d.cpp scene/resources/material.cpp
#, fuzzy
@@ -22050,7 +22046,7 @@ msgstr ""
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
msgid "Damp"
-msgstr ""
+msgstr "مرطوب"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
msgid "Angular"
@@ -22062,7 +22058,7 @@ msgstr ""
#: scene/2d/physics_body_2d.cpp
msgid "Torque"
-msgstr ""
+msgstr "گشتاور"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
msgid "Safe Margin"
@@ -22089,7 +22085,7 @@ msgstr ""
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
msgid "Remainder"
-msgstr ""
+msgstr "باقی مانده"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
#, fuzzy
@@ -22165,7 +22161,7 @@ msgstr ""
#: scene/2d/ray_cast_2d.cpp scene/3d/camera.cpp scene/3d/ray_cast.cpp
msgid "Areas"
-msgstr ""
+msgstr "مناطق"
#: scene/2d/ray_cast_2d.cpp scene/3d/camera.cpp scene/3d/ray_cast.cpp
msgid "Bodies"
@@ -22430,7 +22426,7 @@ msgstr ""
#: scene/3d/audio_stream_player_3d.cpp
msgid "Degrees"
-msgstr ""
+msgstr "درجه"
#: scene/3d/audio_stream_player_3d.cpp
#, fuzzy
@@ -22490,7 +22486,7 @@ msgstr ""
#: scene/3d/baked_lightmap.cpp
msgid "Done"
-msgstr ""
+msgstr "انجام شد"
#: scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp
#: scene/3d/reflection_probe.cpp scene/resources/box_shape.cpp
@@ -22851,7 +22847,7 @@ msgstr "انتخاب حالت"
#: scene/3d/label_3d.cpp scene/resources/default_theme/default_theme.cpp
#: scene/resources/dynamic_font.cpp scene/resources/primitive_meshes.cpp
msgid "Font"
-msgstr ""
+msgstr "فونت"
#: scene/3d/label_3d.cpp scene/resources/primitive_meshes.cpp
#, fuzzy
@@ -23548,7 +23544,7 @@ msgstr "اشکال یابی"
#: scene/3d/ray_cast.cpp scene/resources/style_box.cpp
msgid "Thickness"
-msgstr ""
+msgstr "ضخامت"
#: scene/3d/reflection_probe.cpp scene/main/viewport.cpp
#, fuzzy
@@ -24250,7 +24246,7 @@ msgstr ""
#: scene/animation/skeleton_ik.cpp
msgid "Magnet"
-msgstr ""
+msgstr "آهن‌ربا"
#: scene/animation/skeleton_ik.cpp
#, fuzzy
@@ -24435,7 +24431,7 @@ msgstr "ثابت"
#: scene/gui/control.cpp scene/resources/visual_shader_nodes.cpp
msgid "Hint"
-msgstr ""
+msgstr "تذکر"
#: scene/gui/control.cpp
#, fuzzy
@@ -24444,7 +24440,7 @@ msgstr "ابزارها"
#: scene/gui/control.cpp scene/resources/default_theme/default_theme.cpp
msgid "Focus"
-msgstr ""
+msgstr "تمرکز"
#: scene/gui/control.cpp
msgid "Neighbour Left"
@@ -24473,7 +24469,7 @@ msgstr "زبانه قبلی"
#: scene/gui/control.cpp
msgid "Mouse"
-msgstr ""
+msgstr "موس"
#: scene/gui/control.cpp
#, fuzzy
@@ -24503,8 +24499,9 @@ msgid "Window Title"
msgstr ""
#: scene/gui/dialogs.cpp
+#, fuzzy
msgid "Dialog"
-msgstr ""
+msgstr "دیالوگ"
#: scene/gui/dialogs.cpp
msgid "Hide On OK"
@@ -24590,7 +24587,7 @@ msgstr ""
#: scene/gui/grid_container.cpp scene/gui/item_list.cpp scene/gui/tree.cpp
msgid "Columns"
-msgstr ""
+msgstr "ستون‌ها"
#: scene/gui/item_list.cpp scene/gui/popup_menu.cpp scene/gui/text_edit.cpp
#: scene/gui/tree.cpp scene/main/viewport.cpp
@@ -24727,15 +24724,15 @@ msgstr "بارگیری به عنوان جانگهدار"
#: scene/gui/line_edit.cpp
msgid "Alpha"
-msgstr ""
+msgstr "آلفا"
#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp
msgid "Caret"
-msgstr ""
+msgstr "کارت"
#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp
msgid "Blink"
-msgstr ""
+msgstr "پلک"
#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp
#, fuzzy
@@ -24744,7 +24741,7 @@ msgstr "پخش صحنه"
#: scene/gui/link_button.cpp
msgid "Underline"
-msgstr ""
+msgstr "زیرخط"
#: scene/gui/menu_button.cpp
#, fuzzy
@@ -24777,12 +24774,13 @@ msgid ""
msgstr ""
#: scene/gui/popup.cpp
+#, fuzzy
msgid "Popup"
-msgstr ""
+msgstr "پاپ‌آپ"
#: scene/gui/popup.cpp
msgid "Exclusive"
-msgstr ""
+msgstr "انحصاری"
#: scene/gui/popup.cpp
#, fuzzy
@@ -24840,7 +24838,7 @@ msgstr "مقدار:"
#: scene/gui/range.cpp
msgid "Page"
-msgstr ""
+msgstr "صفحه"
#: scene/gui/range.cpp
#, fuzzy
@@ -24965,7 +24963,7 @@ msgstr ""
#: scene/gui/slider.cpp
msgid "Scrollable"
-msgstr ""
+msgstr "قابل اسکرول"
#: scene/gui/slider.cpp
msgid "Tick Count"
@@ -24978,7 +24976,7 @@ msgstr "ساختن پوشه"
#: scene/gui/spin_box.cpp
msgid "Prefix"
-msgstr ""
+msgstr "پیشوند"
#: scene/gui/spin_box.cpp
msgid "Suffix"
@@ -25036,7 +25034,7 @@ msgstr ""
#: scene/gui/text_edit.cpp
msgid "Readonly"
-msgstr ""
+msgstr "فقط خواندنی"
#: scene/gui/text_edit.cpp
msgid "Bookmark Gutter"
@@ -25120,11 +25118,11 @@ msgstr ""
#: scene/gui/texture_progress.cpp
msgid "Under"
-msgstr ""
+msgstr "زیر"
#: scene/gui/texture_progress.cpp
msgid "Over"
-msgstr ""
+msgstr "روی"
#: scene/gui/texture_progress.cpp
#, fuzzy
@@ -25141,8 +25139,9 @@ msgid "Fill Mode"
msgstr "حالت صدور:"
#: scene/gui/texture_progress.cpp scene/resources/material.cpp
+#, fuzzy
msgid "Tint"
-msgstr ""
+msgstr "رنگ"
#: scene/gui/texture_progress.cpp
msgid "Radial Fill"
@@ -25350,7 +25349,7 @@ msgstr "صحنه جدید"
#: scene/main/scene_tree.cpp
msgid "Root"
-msgstr ""
+msgstr "ریشه"
#: scene/main/scene_tree.cpp
#, fuzzy
@@ -25360,7 +25359,7 @@ msgstr "تعیین چندگانه:"
#: scene/main/scene_tree.cpp scene/resources/mesh_library.cpp
#: scene/resources/shape_2d.cpp
msgid "Shapes"
-msgstr ""
+msgstr "شکل‌ها"
#: scene/main/scene_tree.cpp
msgid "Shape Color"
@@ -25482,7 +25481,7 @@ msgstr ""
#: scene/main/viewport.cpp scene/resources/world_2d.cpp
msgid "World"
-msgstr ""
+msgstr "جهان"
#: scene/main/viewport.cpp
msgid "World 2D"
@@ -25651,7 +25650,7 @@ msgstr "گره ترکیب"
#: scene/resources/audio_stream_sample.cpp
msgid "Stereo"
-msgstr ""
+msgstr "استریو"
#: scene/resources/concave_polygon_shape_2d.cpp
#, fuzzy
@@ -26487,11 +26486,11 @@ msgstr "اتصال گره‌ها"
#: scene/resources/environment.cpp
msgid "Background"
-msgstr ""
+msgstr "پس‌زمینه"
#: scene/resources/environment.cpp scene/resources/sky.cpp
msgid "Sky"
-msgstr ""
+msgstr "آسمان"
#: scene/resources/environment.cpp
#, fuzzy
@@ -26532,7 +26531,7 @@ msgstr "انیمیشن"
#: scene/resources/environment.cpp
msgid "Fog"
-msgstr ""
+msgstr "مه"
#: scene/resources/environment.cpp
#, fuzzy
@@ -26605,7 +26604,7 @@ msgstr "خروجی"
#: scene/resources/environment.cpp
msgid "White"
-msgstr ""
+msgstr "سفید"
#: scene/resources/environment.cpp
msgid "Auto Exposure"
@@ -26643,8 +26642,9 @@ msgid "Depth Tolerance"
msgstr "بومی"
#: scene/resources/environment.cpp scene/resources/material.cpp
+#, fuzzy
msgid "Roughness"
-msgstr ""
+msgstr "زبری"
#: scene/resources/environment.cpp
msgid "SSAO"
@@ -26695,7 +26695,7 @@ msgstr ""
#: scene/resources/environment.cpp
msgid "Glow"
-msgstr ""
+msgstr "درخشش"
#: scene/resources/environment.cpp
#, fuzzy
@@ -26756,12 +26756,13 @@ msgid "Bicubic Upscale"
msgstr ""
#: scene/resources/environment.cpp
+#, fuzzy
msgid "Adjustments"
-msgstr ""
+msgstr "تنظیمات"
#: scene/resources/environment.cpp
msgid "Brightness"
-msgstr ""
+msgstr "روشنایی"
#: scene/resources/environment.cpp
#, fuzzy
@@ -26789,8 +26790,9 @@ msgid "Raw Data"
msgstr "صادکردن فایل کتابخانه ای"
#: scene/resources/gradient.cpp
+#, fuzzy
msgid "Offsets"
-msgstr ""
+msgstr "انحراف‌ها"
#: scene/resources/height_map_shape.cpp
msgid "Map Width"
@@ -26942,7 +26944,7 @@ msgstr ""
#: scene/resources/material.cpp
msgid "Metallic"
-msgstr ""
+msgstr "فلزی"
#: scene/resources/material.cpp
#, fuzzy
@@ -27026,7 +27028,7 @@ msgstr "شمارش ها:"
#: scene/resources/material.cpp
msgid "Detail"
-msgstr ""
+msgstr "جزئیات"
#: scene/resources/material.cpp
msgid "UV Layer"
@@ -27203,7 +27205,7 @@ msgstr "حذف قالب"
#: scene/resources/occluder_shape.cpp
msgid "Spheres"
-msgstr ""
+msgstr "کره‌ها"
#: scene/resources/occluder_shape.cpp
msgid "OccluderShapeSphere Set Spheres"
@@ -27225,11 +27227,12 @@ msgstr ""
#: scene/resources/particles_material.cpp
msgid "Trail"
-msgstr ""
+msgstr "دنباله"
#: scene/resources/particles_material.cpp
+#, fuzzy
msgid "Divisor"
-msgstr ""
+msgstr "مقسوم علیه"
#: scene/resources/particles_material.cpp
#, fuzzy
@@ -27273,11 +27276,11 @@ msgstr "ویرایش منحنی گره"
#: scene/resources/physics_material.cpp
msgid "Rough"
-msgstr ""
+msgstr "زبری"
#: scene/resources/physics_material.cpp
msgid "Absorbent"
-msgstr ""
+msgstr "جاذب"
#: scene/resources/plane_shape.cpp
#, fuzzy
@@ -27357,7 +27360,7 @@ msgstr ""
#: scene/resources/sky.cpp
msgid "Panorama"
-msgstr ""
+msgstr "پانوراما"
#: scene/resources/sky.cpp
#, fuzzy
@@ -27385,8 +27388,9 @@ msgid "Sun"
msgstr "اجرا"
#: scene/resources/sky.cpp
+#, fuzzy
msgid "Latitude"
-msgstr ""
+msgstr "عرض"
#: scene/resources/sky.cpp
msgid "Longitude"
@@ -27689,21 +27693,21 @@ msgstr ""
#: servers/audio/effects/audio_effect_delay.cpp
#: servers/audio/effects/audio_effect_reverb.cpp
msgid "Dry"
-msgstr ""
+msgstr "خشک"
#: servers/audio/effects/audio_effect_chorus.cpp
#: servers/audio/effects/audio_effect_reverb.cpp
msgid "Wet"
-msgstr ""
+msgstr "مرطوب"
#: servers/audio/effects/audio_effect_chorus.cpp
msgid "Voice"
-msgstr ""
+msgstr "صدا"
#: servers/audio/effects/audio_effect_chorus.cpp
#: servers/audio/effects/audio_effect_delay.cpp
msgid "Delay (ms)"
-msgstr ""
+msgstr "تأخیر (میلی‌ثانیه)"
#: servers/audio/effects/audio_effect_chorus.cpp
#: servers/audio/effects/audio_effect_phaser.cpp
@@ -27718,7 +27722,7 @@ msgstr "بومی"
#: servers/audio/effects/audio_effect_chorus.cpp
#: servers/audio/effects/audio_effect_delay.cpp
msgid "Level dB"
-msgstr ""
+msgstr "سطح دسی‌بل"
#: servers/audio/effects/audio_effect_chorus.cpp
#: servers/audio/effects/audio_effect_delay.cpp
@@ -27742,7 +27746,7 @@ msgstr ""
#: servers/audio/effects/audio_effect_compressor.cpp
msgid "Mix"
-msgstr ""
+msgstr "ترکیب"
#: servers/audio/effects/audio_effect_compressor.cpp
msgid "Sidechain"
@@ -27750,17 +27754,17 @@ msgstr ""
#: servers/audio/effects/audio_effect_delay.cpp
msgid "Tap 1"
-msgstr ""
+msgstr "ضربه ۱"
#: servers/audio/effects/audio_effect_delay.cpp
msgid "Tap 2"
-msgstr ""
+msgstr "ضربه ۲"
#: servers/audio/effects/audio_effect_delay.cpp
#: servers/audio/effects/audio_effect_phaser.cpp
#: servers/audio/effects/audio_effect_reverb.cpp
msgid "Feedback"
-msgstr ""
+msgstr "بازخورد"
#: servers/audio/effects/audio_effect_delay.cpp
#, fuzzy
@@ -28114,7 +28118,7 @@ msgstr ""
#: servers/visual_server.cpp
msgid "Shadows"
-msgstr ""
+msgstr "سایه‌ها"
#: servers/visual_server.cpp
#, fuzzy
@@ -28135,7 +28139,7 @@ msgstr ""
#: servers/visual_server.cpp
msgid "Shading"
-msgstr ""
+msgstr "سایه‌زنی"
#: servers/visual_server.cpp
msgid "Force Vertex Shading"
@@ -28279,7 +28283,7 @@ msgstr ""
#: servers/visual_server.cpp
msgid "Compatibility"
-msgstr ""
+msgstr "سازگاری"
#: servers/visual_server.cpp
msgid "Disable Half Float"
diff --git a/editor/translations/fi.po b/editor/translations/fi.po
index c560e51b01..bb73facb22 100644
--- a/editor/translations/fi.po
+++ b/editor/translations/fi.po
@@ -12,13 +12,14 @@
# Tuomas Lähteenmäki <lahtis@gmail.com>, 2019, 2022.
# Matti Niskanen <matti.t.niskanen@gmail.com>, 2020.
# Severi Vidnäs <severi.vidnas@gmail.com>, 2021.
+# Akseli Pihlajamaa <akselijuhanipihlajamaa@gmail.com>, 2022.
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: 2022-03-17 13:58+0000\n"
-"Last-Translator: Tuomas Lähteenmäki <lahtis@gmail.com>\n"
+"PO-Revision-Date: 2022-09-11 22:22+0000\n"
+"Last-Translator: Akseli Pihlajamaa <akselijuhanipihlajamaa@gmail.com>\n"
"Language-Team: Finnish <https://hosted.weblate.org/projects/godot-engine/"
"godot/fi/>\n"
"Language: fi\n"
@@ -26,30 +27,27 @@ 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.12-dev\n"
+"X-Generator: Weblate 4.14.1-dev\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
msgstr ""
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Clipboard"
-msgstr "Leikepöytä on tyhjä!"
+msgstr "Leikepöytä"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Current Screen"
-msgstr "Nykyinen kohtaus"
+msgstr "Nykyinen näkymä"
#: core/bind/core_bind.cpp
msgid "Exit Code"
-msgstr ""
+msgstr "Poistumiskoodi"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "V-Sync Enabled"
-msgstr "Ota käyttöön"
+msgstr "V-Sync käytössä"
#: core/bind/core_bind.cpp main/main.cpp
msgid "V-Sync Via Compositor"
@@ -60,9 +58,8 @@ msgid "Delta Smoothing"
msgstr ""
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Low Processor Usage Mode"
-msgstr "Siirtotila"
+msgstr "Matala prosessorin käyttötila"
#: core/bind/core_bind.cpp
msgid "Low Processor Usage Mode Sleep (µsec)"
diff --git a/editor/translations/fr.po b/editor/translations/fr.po
index b65ff797d7..e19c856222 100644
--- a/editor/translations/fr.po
+++ b/editor/translations/fr.po
@@ -104,13 +104,14 @@
# Helix Sir <vincentbarkmann@gmail.com>, 2022.
# SCHUTZ Lucas <lucas.schutz0954@gmail.com>, 2022.
# EGuillemot <Elouen.Guillemot@gmail.com>, 2022.
+# Entiz <maxime.salido@gmail.com>, 2022.
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: 2022-09-02 23:49+0000\n"
-"Last-Translator: DinosaurHorseSword <ewenlandry@mailfence.com>\n"
+"PO-Revision-Date: 2022-09-27 21:37+0000\n"
+"Last-Translator: Entiz <maxime.salido@gmail.com>\n"
"Language-Team: French <https://hosted.weblate.org/projects/godot-engine/"
"godot/fr/>\n"
"Language: fr\n"
@@ -118,7 +119,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.14.1-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -150,7 +151,7 @@ msgstr "Lissage de Delta"
#: core/bind/core_bind.cpp
msgid "Low Processor Usage Mode"
-msgstr "Mode d'utilisation faible du processeur"
+msgstr "Mode d'utilisation du processeur bas en ressources"
#: core/bind/core_bind.cpp
msgid "Low Processor Usage Mode Sleep (µsec)"
@@ -244,7 +245,7 @@ msgstr "Cible de FPS"
#: core/bind/core_bind.cpp
msgid "Time Scale"
-msgstr "Echelle de temps"
+msgstr "Échelle de temps"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Physics Jitter Fix"
@@ -5902,8 +5903,9 @@ msgid "Zoom Modifier"
msgstr "Touche de combinaison : Zoom"
#: editor/editor_settings.cpp editor/plugins/spatial_editor_plugin.cpp
+#, fuzzy
msgid "Warped Mouse Panning"
-msgstr ""
+msgstr "Panoramique déformé de la souris"
#: editor/editor_settings.cpp
msgid "Navigation Feel"
@@ -15421,19 +15423,16 @@ msgid "Make Local"
msgstr "Rendre local"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Enable Scene Unique Name(s)"
-msgstr "Activer le nom unique de la scène"
+msgstr "Activer le(s) nom(s) unique(s) de scène"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Unique names already used by another node in the scene:"
-msgstr "Un autre Nœud utilise ce nom unique dans la scène."
+msgstr "Noms uniques déjà utilisés par un autre nœud de la scène :"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Disable Scene Unique Name(s)"
-msgstr "Désactiver le nom unique de la scène"
+msgstr "Désactiver le(s) nom(s) unique(s) de la scène"
#: editor/scene_tree_dock.cpp
msgid "New Scene Root"
@@ -16308,9 +16307,8 @@ msgid "Fallback To GLES2"
msgstr "Se replier sur GLES2"
#: main/main.cpp
-#, fuzzy
msgid "Use Nvidia Rect Flicker Workaround"
-msgstr "Utiliser le contournement Nvidia pour éviter le clignotement"
+msgstr "Utiliser la solution alternative Nvidia pour éviter le clignotement"
#: main/main.cpp
msgid "DPI"
@@ -16357,9 +16355,8 @@ msgid "Thread Model"
msgstr "Modèle de Parallélisme"
#: main/main.cpp
-#, fuzzy
msgid "Thread Safe BVH"
-msgstr "BVH avec Thread Sécurisés"
+msgstr "BVH avec le parallélisme sécurisé"
#: main/main.cpp
msgid "Handheld"
@@ -16598,7 +16595,7 @@ msgstr "Activer le support des SoftBody par le Monde"
#: modules/csg/csg_gizmos.cpp
msgid "CSG"
-msgstr ""
+msgstr "GCS"
#: modules/csg/csg_gizmos.cpp
msgid "Change Cylinder Radius"
@@ -16988,17 +16985,16 @@ msgid "Max"
msgstr "Max"
#: modules/gltf/gltf_accessor.cpp
-#, fuzzy
msgid "Sparse Count"
-msgstr "Instance"
+msgstr "Comptage épars"
#: modules/gltf/gltf_accessor.cpp
msgid "Sparse Indices Buffer View"
-msgstr ""
+msgstr "Affichage tampon des indices épars"
#: modules/gltf/gltf_accessor.cpp
msgid "Sparse Indices Byte Offset"
-msgstr ""
+msgstr "Décalage d'octet des indices épars"
#: modules/gltf/gltf_accessor.cpp
msgid "Sparse Indices Component Type"
@@ -17006,11 +17002,11 @@ msgstr "Type de composant d'indices épars"
#: modules/gltf/gltf_accessor.cpp
msgid "Sparse Values Buffer View"
-msgstr ""
+msgstr "Affichage tampon des valeurs éparses"
#: modules/gltf/gltf_accessor.cpp
msgid "Sparse Values Byte Offset"
-msgstr ""
+msgstr "Décalage d'octet des valeurs éparses"
#: modules/gltf/gltf_buffer_view.cpp
msgid "Buffer"
@@ -17018,11 +17014,11 @@ msgstr "Tampon"
#: modules/gltf/gltf_buffer_view.cpp
msgid "Byte Length"
-msgstr "Longueur de byte"
+msgstr "Longueur d'octet"
#: modules/gltf/gltf_buffer_view.cpp
msgid "Byte Stride"
-msgstr ""
+msgstr "Foulée d'octet"
#: modules/gltf/gltf_buffer_view.cpp
msgid "Indices"
@@ -17157,8 +17153,9 @@ msgid "Specular Factor"
msgstr "Facteur Spéculaire"
#: modules/gltf/gltf_spec_gloss.cpp
+#, fuzzy
msgid "Spec Gloss Img"
-msgstr ""
+msgstr "Img Spéculaire Brillante"
#: modules/gltf/gltf_state.cpp
msgid "Json"
@@ -17242,9 +17239,8 @@ msgid "Physics Material"
msgstr "Matériau physique"
#: modules/gridmap/grid_map.cpp scene/3d/visual_instance.cpp
-#, fuzzy
msgid "Use In Baked Light"
-msgstr "Précalculer les lightmaps"
+msgstr "Utiliser des lumières pré-calculées"
#: modules/gridmap/grid_map.cpp scene/2d/tile_map.cpp
msgid "Cell"
@@ -17441,9 +17437,8 @@ msgid "Plotting lightmaps"
msgstr "Tracer des lightmaps"
#: modules/lightmapper_cpu/register_types.cpp
-#, fuzzy
msgid "CPU Lightmapper"
-msgstr "Précalculer les lightmaps"
+msgstr "Mappeur de lumière processeur"
#: modules/lightmapper_cpu/register_types.cpp
msgid "Low Quality Ray Count"
@@ -17509,19 +17504,16 @@ msgid "Auto Update Project"
msgstr "Mettre à jour le projet automatiquement"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "Assembly Name"
-msgstr "Afficher le nom"
+msgstr "Nom de l'assembly"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "Solution Directory"
-msgstr "Choisir un répertoire"
+msgstr "Choisir un répertoire pour la solution"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "C# Project Directory"
-msgstr "Choisir un répertoire"
+msgstr "Choisir un répertoire pour le projet C#"
#: modules/mono/mono_gd/gd_mono_utils.cpp
msgid "End of inner exception stack trace"
@@ -17644,7 +17636,7 @@ msgstr "Paramètres"
#: modules/upnp/upnp.cpp
msgid "Discover Multicast If"
-msgstr ""
+msgstr "Révéler la multidiffusion si"
#: modules/upnp/upnp.cpp
msgid "Discover Local Port"
@@ -17652,7 +17644,7 @@ msgstr "Révéler le port local"
#: modules/upnp/upnp.cpp
msgid "Discover IPv6"
-msgstr "Découvrir IPv6"
+msgstr "Révéler IPv6"
#: modules/upnp/upnp_device.cpp
msgid "Description URL"
@@ -17672,7 +17664,7 @@ msgstr "Type de service IGD"
#: modules/upnp/upnp_device.cpp
msgid "IGD Our Addr"
-msgstr ""
+msgstr "Notre adresse PGI"
#: modules/upnp/upnp_device.cpp
msgid "IGD Status"
@@ -18049,9 +18041,8 @@ msgid "Return"
msgstr "Retour"
#: modules/visual_script/visual_script_flow_control.cpp
-#, fuzzy
msgid "Return Enabled"
-msgstr "Exécutable"
+msgstr "Retour activé"
#: modules/visual_script/visual_script_flow_control.cpp
msgid "Return Type"
@@ -18473,14 +18464,12 @@ msgid "Optional Features"
msgstr "Fonctionnalités Optionnelles"
#: modules/webxr/webxr_interface.cpp
-#, fuzzy
msgid "Requested Reference Space Types"
-msgstr "Type d'espace référence requis"
+msgstr "Types d'espaces référence requis"
#: modules/webxr/webxr_interface.cpp
-#, fuzzy
msgid "Reference Space Type"
-msgstr "Type d'espace référence"
+msgstr "Type d'espace de référence"
#: modules/webxr/webxr_interface.cpp
msgid "Visibility State"
@@ -18491,9 +18480,8 @@ msgid "Bounds Geometry"
msgstr "Géométrie des limites"
#: modules/webxr/webxr_interface.cpp
-#, fuzzy
msgid "XR Standard Mapping"
-msgstr "Mapping Standard AR/VR"
+msgstr "Mappage Standard XR"
#: platform/android/export/export.cpp
msgid "Android SDK Path"
@@ -18677,24 +18665,20 @@ msgid "Immersive Mode"
msgstr "Mode immersif"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Support Small"
-msgstr "Support"
+msgstr "Supporte les petits écrans"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Support Normal"
-msgstr "Support"
+msgstr "Supporte les écrans normaux"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Support Large"
-msgstr "Support"
+msgstr "Supporte les grands écrans"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Support Xlarge"
-msgstr "Support"
+msgstr "Supporte les très grands écrans"
#: platform/android/export/export_plugin.cpp
msgid "User Data Backup"
@@ -18713,9 +18697,8 @@ msgid "Extra Args"
msgstr "Arguments Supplémentaires"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "APK Expansion"
-msgstr "Expression"
+msgstr "Expansion APK"
#: platform/android/export/export_plugin.cpp
msgid "Salt"
@@ -19107,7 +19090,7 @@ msgstr "Le caractère « %s » n'est pas autorisé dans l'identifiant."
#: platform/iphone/export/export.cpp
msgid "Landscape Launch Screens"
-msgstr ""
+msgstr "Écrans de lancement en mode paysage"
#: platform/iphone/export/export.cpp
msgid "iPhone 2436 X 1125"
@@ -19284,11 +19267,11 @@ msgstr "Projecteur 80 X 80"
#: platform/iphone/export/export.cpp
msgid "Storyboard"
-msgstr ""
+msgstr "Storyboard"
#: platform/iphone/export/export.cpp
msgid "Use Launch Screen Storyboard"
-msgstr ""
+msgstr "Utiliser le storyboard de l'écran de lancement"
#: platform/iphone/export/export.cpp
msgid "Image Scale Mode"
@@ -19311,9 +19294,8 @@ msgid "Custom BG Color"
msgstr "Couleur d'arrière-plan personnalisée"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Export Icons"
-msgstr "Icône d'exportation"
+msgstr "Exporter les icônes"
#: platform/iphone/export/export.cpp platform/javascript/export/export.cpp
#: platform/osx/export/export.cpp
@@ -19366,7 +19348,7 @@ msgstr "Impossible de lire le fichier : «%s »."
#: platform/javascript/export/export.cpp
msgid "PWA"
-msgstr ""
+msgstr "PWA"
#: platform/javascript/export/export.cpp
msgid "Variant"
@@ -19620,7 +19602,6 @@ msgid "Allow JIT Code Execution"
msgstr "Autoriser l'exécution du code JIT"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Allow Unsigned Executable Memory"
msgstr "Autoriser la mémoire exécutable non signée"
@@ -19677,7 +19658,6 @@ msgid "Device Bluetooth"
msgstr "Périphérique Bluetooth"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Files Downloads"
msgstr "Téléchargement de fichiers"
@@ -20154,6 +20134,8 @@ msgid ""
"Godot's Mono version does not support the UWP platform. Use the standard "
"build (no C# support) if you wish to target UWP."
msgstr ""
+"La version Mono de Godot ne supporte pas la plateforme UWP. Utilisé la "
+"version standard (sans le support C#) si vous souhaitez cibler UWP."
#: platform/uwp/export/export.cpp
msgid "Invalid package short name."
@@ -20249,9 +20231,8 @@ msgid "Timestamp Server URL"
msgstr "URL du serveur d'horodatage"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Digest Algorithm"
-msgstr "Débogueur"
+msgstr "Fonction de hachage"
#: platform/windows/export/export.cpp
msgid "Modify Resources"
@@ -20286,14 +20267,12 @@ msgid "Resources Modification"
msgstr "Modification de ressources"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Could not find rcedit executable at \"%s\"."
-msgstr "Impossible de trouver le keystore, impossible d'exporter."
+msgstr "Impossible de trouver rcedit à l'emplacement \"%s\"."
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Could not find wine executable at \"%s\"."
-msgstr "Impossible de trouver le keystore, impossible d'exporter."
+msgstr "Impossible de trouver wine à l'emplacement \"%s\"."
#: platform/windows/export/export.cpp
#, fuzzy
@@ -20371,9 +20350,8 @@ msgid "Windows executables cannot be >= 4 GiB."
msgstr "Les exécutables Windows ne peuvent pas peser >= 4Gio."
#: platform/windows/export/export.cpp platform/x11/export/export.cpp
-#, fuzzy
msgid "Failed to open executable file \"%s\"."
-msgstr "Fichier exécutable invalide."
+msgstr "Fichier exécutable invalide : \"%s\"."
#: platform/windows/export/export.cpp platform/x11/export/export.cpp
msgid "Executable file header corrupted."
@@ -24222,12 +24200,11 @@ msgstr ""
#: scene/gui/popup.cpp
#, fuzzy
msgid "Popup"
-msgstr "Peupler"
+msgstr "Fenêtre contextuelle"
#: scene/gui/popup.cpp
-#, fuzzy
msgid "Exclusive"
-msgstr "Inclusif"
+msgstr "Exclusif"
#: scene/gui/popup.cpp
msgid ""
@@ -24235,34 +24212,31 @@ msgid ""
"functions. Making them visible for editing is fine, but they will hide upon "
"running."
msgstr ""
-"Les pop-ups seront cachées par défaut jusqu'à ce que vous appeliez une "
-"fonction popup() ou une des fonctions popup*(). Les rendre visibles pour "
-"l'édition ne pose pas de problème, mais elles seront cachées lors de "
-"l'exécution."
+"Les fenêtres contextuelles seront cachées par défaut jusqu'à ce que vous "
+"appeliez une fonction popup() ou une des fonctions popup*(). Les rendre "
+"visibles pour l'édition ne pose pas de problème, mais elles seront cachées "
+"lors de l'exécution."
#: scene/gui/popup_menu.cpp
-#, fuzzy
msgid "Hide On Item Selection"
-msgstr "Centrer sur la sélection"
+msgstr "Masquer lors de la sélection de l'élément"
#: scene/gui/popup_menu.cpp
-#, fuzzy
msgid "Hide On Checkable Item Selection"
-msgstr "Suppression de la sélection de GridMap"
+msgstr "Masquer lors de la sélection de l'élément cochable"
#: scene/gui/popup_menu.cpp
-#, fuzzy
msgid "Hide On State Item Selection"
-msgstr "Supprimer la sélection"
+msgstr "Cacher lors de la sélection de l'élément d'état"
#: scene/gui/popup_menu.cpp
+#, fuzzy
msgid "Submenu Popup Delay"
-msgstr ""
+msgstr "Délai du pop-up du sous-menu"
#: scene/gui/popup_menu.cpp
-#, fuzzy
msgid "Allow Search"
-msgstr "Rechercher"
+msgstr "Autoriser la recherche"
#: scene/gui/progress_bar.cpp
msgid "Percent"
@@ -24270,59 +24244,54 @@ msgstr "Pourcentage"
#: scene/gui/range.cpp
msgid "If \"Exp Edit\" is enabled, \"Min Value\" must be greater than 0."
-msgstr "Si « Exp Edit » est vrai, « Min Value » doit être supérieur à 0."
+msgstr ""
+"Si \"Édition Exponentielle\" est activée, \"Valeur Minimale\" doit être "
+"supérieure à 0."
#: scene/gui/range.cpp scene/resources/curve.cpp
-#, fuzzy
msgid "Min Value"
-msgstr "Épingler la valeur"
+msgstr "Valeur minimale"
#: scene/gui/range.cpp scene/resources/curve.cpp
-#, fuzzy
msgid "Max Value"
-msgstr "Valeur"
+msgstr "Valeur maximale"
#: scene/gui/range.cpp
msgid "Page"
msgstr "Page"
#: scene/gui/range.cpp
-#, fuzzy
msgid "Exp Edit"
-msgstr "Édition"
+msgstr "Édition Exponentielle"
#: scene/gui/range.cpp
#, fuzzy
msgid "Rounded"
-msgstr "Groupé"
+msgstr "Arrondir"
#: scene/gui/range.cpp
msgid "Allow Greater"
-msgstr ""
+msgstr "Autoriser supérieur"
#: scene/gui/range.cpp
msgid "Allow Lesser"
-msgstr ""
+msgstr "Autoriser inférieur"
#: scene/gui/reference_rect.cpp
-#, fuzzy
msgid "Border Color"
-msgstr "Renommer l'item de couleur"
+msgstr "Couleur de la bordure"
#: scene/gui/reference_rect.cpp scene/resources/style_box.cpp
-#, fuzzy
msgid "Border Width"
-msgstr "Pixels de bordure"
+msgstr "Largeur de la bordure"
#: scene/gui/rich_text_effect.cpp
-#, fuzzy
msgid "Relative Index"
-msgstr "Récupérer la position"
+msgstr "Position relative"
#: scene/gui/rich_text_effect.cpp
-#, fuzzy
msgid "Absolute Index"
-msgstr "Indentation automatique"
+msgstr "Indice absolu"
#: scene/gui/rich_text_effect.cpp
msgid "Elapsed Time"
@@ -24339,47 +24308,43 @@ msgstr "Caractère"
#: scene/gui/rich_text_label.cpp
msgid "BBCode"
-msgstr ""
+msgstr "BBCode"
#: scene/gui/rich_text_label.cpp
msgid "Meta Underlined"
-msgstr ""
+msgstr "Méta-données soulignées"
#: scene/gui/rich_text_label.cpp
msgid "Tab Size"
msgstr "Taille de tabulation"
#: scene/gui/rich_text_label.cpp
-#, fuzzy
msgid "Fit Content Height"
-msgstr "Peindre les poids de l'os"
+msgstr "Ajuster à la hauteur du conteneur"
#: scene/gui/rich_text_label.cpp
msgid "Scroll Active"
-msgstr ""
+msgstr "Défilement actif"
#: scene/gui/rich_text_label.cpp
msgid "Scroll Following"
-msgstr ""
+msgstr "Suivi du défilement"
#: scene/gui/rich_text_label.cpp
-#, fuzzy
msgid "Selection Enabled"
-msgstr "Sélection uniquement"
+msgstr "Sélection activée"
#: scene/gui/rich_text_label.cpp scene/gui/text_edit.cpp
msgid "Override Selected Font Color"
-msgstr "Remplacer la couleur de police sélectionnée"
+msgstr "Surcharger la couleur de police sélectionnée"
#: scene/gui/rich_text_label.cpp
-#, fuzzy
msgid "Custom Effects"
-msgstr "Déplacer effet de transport"
+msgstr "Effets personnalisés"
#: scene/gui/scroll_bar.cpp
-#, fuzzy
msgid "Custom Step"
-msgstr "Nœud Personnalisé"
+msgstr "Pas personnalisé"
#: scene/gui/scroll_container.cpp
msgid ""
diff --git a/editor/translations/hr.po b/editor/translations/hr.po
index b634136191..21a20978a6 100644
--- a/editor/translations/hr.po
+++ b/editor/translations/hr.po
@@ -5,14 +5,15 @@
# Unlimited Creativity <marinosah1@gmail.com>, 2019.
# Patik <patrikfs5@gmail.com>, 2019.
# Nikola Bunjevac <nikola.bunjevac@gmail.com>, 2019, 2020.
-# LeoClose <leoclose575@gmail.com>, 2020, 2021.
+# LeoClose <leoclose575@gmail.com>, 2020, 2021, 2022.
# Filip <fhomolka@protonmail.com>, 2022.
+# Milo Ivir <mail@milotype.de>, 2022.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine editor\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2022-07-23 03:57+0000\n"
-"Last-Translator: Filip <fhomolka@protonmail.com>\n"
+"PO-Revision-Date: 2022-09-27 21:37+0000\n"
+"Last-Translator: Milo Ivir <mail@milotype.de>\n"
"Language-Team: Croatian <https://hosted.weblate.org/projects/godot-engine/"
"godot/hr/>\n"
"Language: hr\n"
@@ -20,7 +21,7 @@ msgstr ""
"Content-Transfer-Encoding: 8-bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
-"X-Generator: Weblate 4.14-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -28,16 +29,15 @@ msgstr "Upravljački program za Tablet"
#: core/bind/core_bind.cpp
msgid "Clipboard"
-msgstr ""
+msgstr "Međuspremnik"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Current Screen"
-msgstr "Premjesti Okvir"
+msgstr "Trenutni Ekran"
#: core/bind/core_bind.cpp
msgid "Exit Code"
-msgstr ""
+msgstr "Exit Kod"
#: core/bind/core_bind.cpp
msgid "V-Sync Enabled"
@@ -77,38 +77,31 @@ msgstr "Orijentacija zaslona"
#: core/bind/core_bind.cpp core/project_settings.cpp main/main.cpp
#: platform/uwp/os_uwp.cpp
-#, fuzzy
msgid "Window"
msgstr "Prozor"
#: core/bind/core_bind.cpp core/project_settings.cpp
-#, fuzzy
msgid "Borderless"
msgstr "Bez obruba"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Per Pixel Transparency Enabled"
msgstr "Omogućena prozirnost po pikselu"
#: core/bind/core_bind.cpp core/project_settings.cpp
-#, fuzzy
msgid "Fullscreen"
msgstr "Cijeli zaslon"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Maximized"
msgstr "Maksimiziran"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Minimized"
msgstr "Minimiziran"
#: core/bind/core_bind.cpp core/project_settings.cpp scene/gui/dialogs.cpp
#: scene/gui/graph_node.cpp
-#, fuzzy
msgid "Resizable"
msgstr "Mogućnost promjene veličine"
@@ -117,7 +110,6 @@ msgstr "Mogućnost promjene veličine"
#: scene/3d/physics_body.cpp scene/3d/remote_transform.cpp
#: scene/gui/control.cpp scene/gui/line_edit.cpp
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Position"
msgstr "Pozicija"
@@ -130,38 +122,32 @@ msgstr "Pozicija"
#: scene/resources/primitive_meshes.cpp scene/resources/sky.cpp
#: scene/resources/style_box.cpp scene/resources/texture.cpp
#: scene/resources/visual_shader.cpp servers/visual_server.cpp
-#, fuzzy
msgid "Size"
msgstr "Veličina"
#: core/bind/core_bind.cpp
msgid "Endian Swap"
-msgstr ""
+msgstr "Promjena Endian-a"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Editor Hint"
msgstr "Savjet Urednika"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Print Error Messages"
msgstr "Ispis poruka o pogreškama"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Iterations Per Second"
msgstr "Iteracije u sekundi"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Target FPS"
msgstr "Ciljani FPS"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Time Scale"
-msgstr "Vremenska skala"
+msgstr "Skala vremena"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Physics Jitter Fix"
@@ -169,7 +155,7 @@ msgstr ""
#: core/bind/core_bind.cpp editor/plugins/version_control_editor_plugin.cpp
msgid "Error"
-msgstr ""
+msgstr "Greška"
#: core/bind/core_bind.cpp
#, fuzzy
@@ -342,7 +328,7 @@ msgstr "Neispravan unos %i (nije uspio) u izrazu"
#: core/math/expression.cpp
msgid "self can't be used because instance is null (not passed)"
-msgstr "self se ne može koristiti jer instanca je null (nije prosljeđena)"
+msgstr "self se ne može koristiti jer je instanca null (nije prosljeđena)"
#: core/math/expression.cpp
msgid "Invalid operands to operator %s, %s and %s."
@@ -1414,7 +1400,7 @@ msgstr "Okidač"
#: editor/animation_track_editor.cpp scene/3d/baked_lightmap.cpp
msgid "Capture"
-msgstr ""
+msgstr "Snimka"
#: editor/animation_track_editor.cpp
msgid "Nearest"
@@ -24308,9 +24294,8 @@ msgid "Draw 2D Outlines"
msgstr ""
#: scene/main/scene_tree.cpp servers/visual_server.cpp
-#, fuzzy
msgid "Reflections"
-msgstr "Direkcije"
+msgstr "Reflekcija"
#: scene/main/scene_tree.cpp
msgid "Atlas Size"
diff --git a/editor/translations/id.po b/editor/translations/id.po
index 696799d370..ee7e21c0c0 100644
--- a/editor/translations/id.po
+++ b/editor/translations/id.po
@@ -40,13 +40,14 @@
# Rizky Ramadhan <rizkyterm@gmail.com>, 2022.
# Primananda Kurnia <primakurnia71@gmail.com>, 2022.
# FellowMustard <rachmawanng33@gmail.com>, 2022.
+# Muhammad Zainal Abidin <eviepk12@gmail.com>, 2022.
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: 2022-07-31 18:34+0000\n"
-"Last-Translator: ProgrammerIndonesia 44 <elo.jhy@gmail.com>\n"
+"PO-Revision-Date: 2022-09-27 21:37+0000\n"
+"Last-Translator: Muhammad Zainal Abidin <eviepk12@gmail.com>\n"
"Language-Team: Indonesian <https://hosted.weblate.org/projects/godot-engine/"
"godot/id/>\n"
"Language: id\n"
@@ -54,7 +55,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 4.14-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -2800,7 +2801,7 @@ msgstr "Pilih"
#: editor/editor_export.cpp
msgid "Project export for platform:"
-msgstr ""
+msgstr "Proyek ekspor untuk platform:"
#: editor/editor_export.cpp
#, fuzzy
@@ -2849,9 +2850,8 @@ msgid "Can't open file to read from path \"%s\"."
msgstr "Tidak dapat membuka file untuk menulis:"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Save ZIP"
-msgstr "Simpan Sebagai"
+msgstr "Simpan ZIP"
#: editor/editor_export.cpp
msgid ""
@@ -2878,7 +2878,7 @@ msgid ""
msgstr ""
"Platform target membutuhkan kompressi tekstur 'ETC' untuk mengembalikan "
"driver ke GLES2. \n"
-"Aktifkan 'Impor Lainnya' di Pengaturan Proyek, atau matikan 'Driver Fallback "
+"Aktifkan 'Impor Etc' di Pengaturan Proyek, atau matikan 'Driver Fallback "
"Enabled'."
#: editor/editor_export.cpp
@@ -2895,7 +2895,7 @@ msgid ""
"Enable 'Import Etc 2' or 'Import Pvrtc' in Project Settings."
msgstr ""
"Platform target membutuhkan kompresi tekstur 'ETC2' atau 'PVRTC' untuk "
-"GLES3. Aktifkan 'Impor Lainnya 2' atau 'Import Pvrtc' di Pengaturan Proyek."
+"GLES3. Aktifkan 'Impor Etc 2' atau 'Import Pvrtc' di Pengaturan Proyek."
#: editor/editor_export.cpp
msgid ""
@@ -2930,7 +2930,7 @@ msgstr "Operator warna."
#: editor/editor_export.cpp
msgid "64 Bits"
-msgstr ""
+msgstr "64 Bits"
#: editor/editor_export.cpp
msgid "Embed PCK"
diff --git a/editor/translations/it.po b/editor/translations/it.po
index c520b1567d..027f4609f8 100644
--- a/editor/translations/it.po
+++ b/editor/translations/it.po
@@ -72,13 +72,14 @@
# Gico2006 <gradaellig@protonmail.com>, 2022.
# ale piccia <picciatialessio2@gmail.com>, 2022.
# Simone Starace <simone.starace93@gmail.com>, 2022.
+# Daniele Giunta <danielegiunta2007@gmail.com>, 2022.
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: 2022-08-30 03:11+0000\n"
-"Last-Translator: Mirko <miknsop@gmail.com>\n"
+"PO-Revision-Date: 2022-09-27 21:37+0000\n"
+"Last-Translator: Daniele Giunta <danielegiunta2007@gmail.com>\n"
"Language-Team: Italian <https://hosted.weblate.org/projects/godot-engine/"
"godot/it/>\n"
"Language: it\n"
@@ -86,7 +87,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.14.1-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -407,7 +408,7 @@ msgstr "Alla chiamata di '%s':"
#: core/math/random_number_generator.cpp
#: modules/opensimplex/open_simplex_noise.cpp
msgid "Seed"
-msgstr "Seed"
+msgstr "Seme"
#: core/math/random_number_generator.cpp
msgid "State"
@@ -466,13 +467,12 @@ msgid "Pressed"
msgstr "Premuto"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Scancode"
-msgstr "Scancode"
+msgstr "Codice di Scansione"
#: core/os/input_event.cpp
msgid "Physical Scancode"
-msgstr "Scancode Fisico"
+msgstr "Codice di Scansione Fisico"
#: core/os/input_event.cpp
#, fuzzy
@@ -513,7 +513,7 @@ msgstr "Pressione"
#: core/os/input_event.cpp
msgid "Pen Inverted"
-msgstr ""
+msgstr "Penna Invertita"
#: core/os/input_event.cpp
msgid "Relative"
@@ -1353,7 +1353,6 @@ msgid "Remove this track."
msgstr "Rimuovi questa traccia."
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Time (s):"
msgstr "Tempo (s):"
@@ -1388,14 +1387,12 @@ msgid "Easing:"
msgstr "Allentamento:"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "In-Handle:"
-msgstr "Imposta Maniglia"
+msgstr "In Gestione:"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Out-Handle:"
-msgstr "Imposta Maniglia"
+msgstr "Fuori Gestione:"
#: editor/animation_track_editor.cpp
msgid "Stream:"
@@ -1539,7 +1536,6 @@ msgid "animation"
msgstr "animazione"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "AnimationPlayer can't animate itself, only other players."
msgstr "AnimationPlayer non può animare se stesso, solo altri nodi."
@@ -2602,7 +2598,7 @@ msgstr "File \"%s\" assente."
#: editor/editor_audio_buses.cpp
msgid "Layout:"
-msgstr ""
+msgstr "Disposizione:"
#: editor/editor_audio_buses.cpp
msgid "Invalid file, not an audio bus layout."
@@ -2815,12 +2811,10 @@ msgid "Completed with warnings."
msgstr "Completato con avvertimenti."
#: editor/editor_export.cpp
-#, fuzzy
msgid "Completed successfully."
msgstr "Completato con successo."
#: editor/editor_export.cpp
-#, fuzzy
msgid "Failed."
msgstr "Fallito."
@@ -2837,7 +2831,6 @@ msgid "Packing"
msgstr "Impacchettando"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Save PCK"
msgstr "Salva PCK"
@@ -2846,16 +2839,14 @@ msgid "Cannot create file \"%s\"."
msgstr "impossibile creare il file \"%s\"."
#: editor/editor_export.cpp
-#, fuzzy
msgid "Failed to export project files."
-msgstr "Impossibile esportare i file del progetto"
+msgstr "Esportazione dei file di progetto fallita."
#: editor/editor_export.cpp
msgid "Can't open file to read from path \"%s\"."
msgstr "impossibile aprire file da leggere dalla path \"%s\"."
#: editor/editor_export.cpp
-#, fuzzy
msgid "Save ZIP"
msgstr "Salva ZIP"
@@ -2964,7 +2955,7 @@ msgstr "ETC2"
#: editor/editor_export.cpp
#, fuzzy
msgid "No BPTC Fallbacks"
-msgstr "Nessun fallback per la BPTC"
+msgstr "Nessun fallback per BPTC"
#: editor/editor_export.cpp platform/android/export/export_plugin.cpp
#: platform/iphone/export/export.cpp platform/javascript/export/export.cpp
@@ -2981,28 +2972,25 @@ msgstr "Modello di rilascio personalizzato non trovato."
#: editor/editor_export.cpp
#, fuzzy
msgid "Prepare Template"
-msgstr "Gestisci i modelli d'esportazione"
+msgstr "Prepara Modello"
#: editor/editor_export.cpp platform/osx/export/export.cpp
-#, fuzzy
msgid "The given export path doesn't exist."
-msgstr "Il percorso di esportazione specificato non esiste:"
+msgstr "Il percorso di esportazione specificato non esiste."
#: editor/editor_export.cpp platform/javascript/export/export.cpp
-#, fuzzy
msgid "Template file not found: \"%s\"."
-msgstr "File del modello non trovato:"
+msgstr "File modello non trovato: \"%s\"."
#: editor/editor_export.cpp
-#, fuzzy
msgid "Failed to copy export template."
-msgstr "Template di esportazione non valido:"
+msgstr "Copiatura del modello di esportazione fallita."
#: editor/editor_export.cpp platform/windows/export/export.cpp
#: platform/x11/export/export.cpp
#, fuzzy
msgid "PCK Embedding"
-msgstr "Padding"
+msgstr "PCK Incorporazione"
#: editor/editor_export.cpp
msgid "On 32-bit exports the embedded PCK cannot be bigger than 4 GiB."
@@ -4094,7 +4082,7 @@ msgstr "Niente da annullare."
#: editor/editor_node.cpp
msgid "Undo: %s"
-msgstr "Annulla"
+msgstr "Annulla: %s"
#: editor/editor_node.cpp
msgid "Can't redo while mouse buttons are pressed."
@@ -5184,7 +5172,6 @@ msgid "Size:"
msgstr "Dimensione:"
#: editor/editor_properties_array_dict.cpp
-#, fuzzy
msgid "Page:"
msgstr "Pagina:"
@@ -5284,9 +5271,8 @@ msgstr ""
"esistente come eseguibile."
#: editor/editor_run_native.cpp
-#, fuzzy
msgid "Project Run"
-msgstr "Progetto"
+msgstr "Esegui Progetto"
#: editor/editor_run_script.cpp
msgid "Write your logic in the _run() method."
@@ -5570,11 +5556,12 @@ msgstr "Uso dei tasti aggiuntivi del mouse per navigare la cronologia"
#: editor/editor_settings.cpp
#, fuzzy
msgid "Drag And Drop Selection"
-msgstr "Selezione GridMap"
+msgstr "Selezione Drag And Drop"
#: editor/editor_settings.cpp
+#, fuzzy
msgid "Stay In Script Editor On Node Selected"
-msgstr ""
+msgstr "Rimani nell'Editor degli Script quando un Nodo è selezionato"
#: editor/editor_settings.cpp
msgid "Appearance"
@@ -6956,7 +6943,6 @@ msgid "Delimiter"
msgstr "Delimitatore"
#: editor/import/resource_importer_layered_texture.cpp
-#, fuzzy
msgid "ColorCorrect"
msgstr "Correzione Colore"
@@ -7214,9 +7200,8 @@ msgid "Generating Lightmaps"
msgstr "Generando Lightmap"
#: editor/import/resource_importer_scene.cpp
-#, fuzzy
msgid "Generating for Mesh:"
-msgstr "Generazione della Mesh:"
+msgstr "Generando per il Mesh:"
#: editor/import/resource_importer_scene.cpp
msgid "Running Custom Script..."
@@ -7248,12 +7233,17 @@ msgid ""
"%s: Texture detected as used as a normal map in 3D. Enabling red-green "
"texture compression to reduce memory usage (blue channel is discarded)."
msgstr ""
+"%s: Rilevato uso della texture come mappa Normale in 3D. Sarà abilitata la "
+"compressione rosso-verde della texture per ridurre l'uso di memoria (il "
+"canale blu è ignorato)."
#: editor/import/resource_importer_texture.cpp
msgid ""
"%s: Texture detected as used in 3D. Enabling filter, repeat, mipmap "
"generation and VRAM texture compression."
msgstr ""
+"%s: Rilevato uso della texture in 3D. Sarà abilitato filtraggio, "
+"ripetizione, generazione delle mipmap e compressione della texture in VRAM."
#: editor/import/resource_importer_texture.cpp
msgid "2D, Detect 3D"
@@ -9999,9 +9989,8 @@ msgid "Volume"
msgstr "Volume"
#: editor/plugins/particles_editor_plugin.cpp
-#, fuzzy
msgid "Emission Source:"
-msgstr "Sorgente Emissione:"
+msgstr "Sorgente dell' Emissione:"
#: editor/plugins/particles_editor_plugin.cpp
msgid "A processor material of type 'ParticlesMaterial' is required."
@@ -10419,7 +10408,7 @@ msgstr "Ribalta Portale"
#: editor/plugins/room_manager_editor_plugin.cpp
#, fuzzy
msgid "Occluder Set Transform"
-msgstr "Trasformazione dell'Insieme dell'Occlusore"
+msgstr "Imposta Trasformazione dell' Occlusore"
#: editor/plugins/room_manager_editor_plugin.cpp
msgid "Center Node"
@@ -11098,13 +11087,11 @@ msgstr "Trasla"
#. TRANSLATORS: Refers to changing the scale of a node in the 3D editor.
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Scaling:"
-msgstr "Scalatura:"
+msgstr "Scala:"
#. TRANSLATORS: Refers to changing the position of a node in the 3D editor.
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Translating:"
msgstr "Traslazione:"
@@ -11361,7 +11348,6 @@ msgid "Use Snap"
msgstr "Usa Scatto"
#: editor/plugins/spatial_editor_plugin.cpp
-#, fuzzy
msgid "Converts rooms for portal culling."
msgstr "Converte stanze per culling del portale."
@@ -11442,7 +11428,7 @@ msgstr "Aumenta il Campo Visivo"
#: editor/plugins/spatial_editor_plugin.cpp
#, fuzzy
msgid "Reset Field of View to Default"
-msgstr "Ripristina le impostazioni predefinite"
+msgstr "Ripristina il Campo Visivo alle impostazioni predefinite"
#: editor/plugins/spatial_editor_plugin.cpp
msgid "Snap Object to Floor"
@@ -11626,9 +11612,8 @@ msgid "Invalid geometry, can't replace by mesh."
msgstr "Geometria non valida, impossibile sostituirla con una mesh."
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Convert to MeshInstance2D"
-msgstr "Converti in Mesh2D"
+msgstr "Converti in MeshInstance2D"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Invalid geometry, can't create polygon."
@@ -11659,17 +11644,14 @@ msgid "Sprite"
msgstr "Sprite"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Simplification:"
msgstr "Semplificazione:"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Shrink (Pixels):"
msgstr "Rimpicciolisci (Pixels):"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Grow (Pixels):"
msgstr "Ingrandisci (Pixels):"
@@ -11736,7 +11718,7 @@ msgstr "Nuova Animazione"
#: editor/plugins/sprite_frames_editor_plugin.cpp
#, fuzzy
msgid "Filter animations"
-msgstr "Modalità di filtraggio"
+msgstr "Modalità di filtraggio animazioni"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Speed:"
@@ -12031,6 +12013,9 @@ msgid ""
"closing this window.\n"
"Close anyway?"
msgstr ""
+"La scheda \"Importa Oggetti\" ha alcuni elementi selezionati. Chiudendo "
+"questa finestra si perderà la selezione.\n"
+"Chiudere lo stesso?"
#: editor/plugins/theme_editor_plugin.cpp
msgid "Remove Type"
@@ -12539,7 +12524,6 @@ msgid "Palette Min Width"
msgstr "Larghezza Min Paletta"
#: editor/plugins/tile_map_editor_plugin.cpp
-#, fuzzy
msgid "Palette Item H Separation"
msgstr "Separazione Orizzontale Elementi Paletta"
@@ -13003,14 +12987,13 @@ msgid "Selected Collision"
msgstr "Collisione Selezionata"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Selected Collision One Way"
msgstr "Collisione Selezionata Solo Da Una Parte"
#: editor/plugins/tile_set_editor_plugin.cpp
#, fuzzy
msgid "Selected Collision One Way Margin"
-msgstr "Margine di Collisione BVH"
+msgstr "Margine di Collisione Solo Da Una Parte Selezionato"
#: editor/plugins/tile_set_editor_plugin.cpp
msgid "Selected Navigation"
@@ -13048,14 +13031,12 @@ msgid "Commit"
msgstr "Commit"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Staged Changes"
-msgstr "Cambiamenti in Scena"
+msgstr "Cambiamenti Graduali"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Unstaged Changes"
-msgstr "Cambiamenti non in Scena"
+msgstr "Cambiamenti non Graduali"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Commit:"
@@ -13208,9 +13189,8 @@ msgid "Typechange"
msgstr "Cambio di tipo"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Unmerged"
-msgstr "Non mescolato"
+msgstr "Non combinato"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "View:"
@@ -14121,12 +14101,10 @@ msgid "Runnable"
msgstr "Eseguibile"
#: editor/project_export.cpp
-#, fuzzy
msgid "Export the project for all the presets defined."
msgstr "Esporta il progetto per tutti i preset definiti."
#: editor/project_export.cpp
-#, fuzzy
msgid "All presets must have an export path defined for Export All to work."
msgstr ""
"Tutti i preset devono avere un percorso di esportazione definito affinché "
@@ -14251,12 +14229,10 @@ msgid "More Info..."
msgstr "Maggiori Informazioni..."
#: editor/project_export.cpp
-#, fuzzy
msgid "Export PCK/Zip..."
msgstr "Esporta PCK/Zip..."
#: editor/project_export.cpp
-#, fuzzy
msgid "Export Project..."
msgstr "Esporta Progetto..."
@@ -14265,12 +14241,10 @@ msgid "Export All"
msgstr "Esporta Tutto"
#: editor/project_export.cpp
-#, fuzzy
msgid "Choose an export mode:"
-msgstr "Si prega di scegliere una cartella vuota:"
+msgstr "Scegli una modalità di esportazione:"
#: editor/project_export.cpp
-#, fuzzy
msgid "Export All..."
msgstr "Esporta Tutto..."
@@ -14279,18 +14253,16 @@ msgid "ZIP File"
msgstr "File ZIP"
#: editor/project_export.cpp
-#, fuzzy
msgid "Godot Project Pack"
-msgstr "Pacchetto Gioco Godot"
+msgstr "Pacchetto Progetto Godot"
#: editor/project_export.cpp
msgid "Export templates for this platform are missing:"
msgstr "Le export templates per questa piattaforma sono mancanti:"
#: editor/project_export.cpp
-#, fuzzy
msgid "Project Export"
-msgstr "Fondatori del progetto"
+msgstr "Esporta Progetto"
#: editor/project_export.cpp
msgid "Manage Export Templates"
@@ -15171,7 +15143,6 @@ msgid "snake_case to PascalCase"
msgstr "snake_case a PascalCase"
#: editor/rename_dialog.cpp
-#, fuzzy
msgid "Case"
msgstr "Caso"
@@ -15414,7 +15385,7 @@ msgstr "Abilita Nome Unico Scena"
#: editor/scene_tree_dock.cpp
#, fuzzy
msgid "Unique names already used by another node in the scene:"
-msgstr "Un altro nodo sta già usando questo nome unico nella scena."
+msgstr "Nomi unici già usati da un altro nodo nella scena:"
#: editor/scene_tree_dock.cpp
#, fuzzy
@@ -15852,7 +15823,6 @@ msgid "Attach Node Script"
msgstr "Allega Script Nodo"
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Remote %s:"
msgstr "Remoto %s:"
@@ -15934,7 +15904,7 @@ msgstr "Filtra variabili su stack"
#: editor/script_editor_debugger.cpp
msgid "Auto Switch To Remote Scene Tree"
-msgstr ""
+msgstr "Passa automaticamente all'Albero Scena Remota"
#: editor/script_editor_debugger.cpp
msgid "Remote Scene Tree Refresh Interval"
@@ -15942,7 +15912,7 @@ msgstr "Intervallo di Refresh dello Scene Tree Remoto"
#: editor/script_editor_debugger.cpp
msgid "Remote Inspect Refresh Interval"
-msgstr ""
+msgstr "Intervallo Aggiornamento Ispettore Remoto"
#: editor/script_editor_debugger.cpp
msgid "Network Profiler"
@@ -16040,7 +16010,7 @@ msgstr "Cambia Raggio Luce"
#: editor/spatial_editor_gizmos.cpp
msgid "Stream Player 3D"
-msgstr ""
+msgstr "Stream Player 3D"
#: editor/spatial_editor_gizmos.cpp
msgid "Change AudioStreamPlayer3D Emission Angle"
@@ -16133,12 +16103,14 @@ msgid "Navigation Solid Disabled"
msgstr "Solido di Navigazione Disabilitato"
#: editor/spatial_editor_gizmos.cpp
+#, fuzzy
msgid "Joint Body A"
-msgstr ""
+msgstr "Articolazione Corpo A"
#: editor/spatial_editor_gizmos.cpp
+#, fuzzy
msgid "Joint Body B"
-msgstr ""
+msgstr "Articolazione Corpo B"
#: editor/spatial_editor_gizmos.cpp
msgid "Room Edge"
@@ -16169,13 +16141,14 @@ msgid "Set Portal Point Position"
msgstr "Imposta Posizione Punto Portale"
#: editor/spatial_editor_gizmos.cpp
+#, fuzzy
msgid "Portal Front"
-msgstr ""
+msgstr "Davanti del Portale"
#: editor/spatial_editor_gizmos.cpp
#, fuzzy
msgid "Portal Back"
-msgstr "Torna indietro"
+msgstr "Dietro del Portale"
#: editor/spatial_editor_gizmos.cpp scene/2d/light_occluder_2d.cpp
#: scene/2d/tile_map.cpp
@@ -16234,7 +16207,7 @@ msgstr "Server con Multithread"
#: main/main.cpp
msgid "RID Pool Prealloc"
-msgstr ""
+msgstr "Preallocazione pool RID"
#: main/main.cpp
msgid "Debugger stdout"
@@ -16267,7 +16240,7 @@ msgstr "Logging"
#: main/main.cpp
msgid "File Logging"
-msgstr ""
+msgstr "Logging su file"
#: main/main.cpp
msgid "Enable File Logging"
@@ -16295,7 +16268,7 @@ msgstr "Ripiega Su GLES2"
#: main/main.cpp
msgid "Use Nvidia Rect Flicker Workaround"
-msgstr ""
+msgstr "Usa stratagemma contro il flickering rettangoli su NVIDIA"
#: main/main.cpp
msgid "DPI"
@@ -16323,7 +16296,7 @@ msgstr "Permesso"
#: main/main.cpp
msgid "Intended Usage"
-msgstr ""
+msgstr "Uso previsto"
#: main/main.cpp
msgid "Framebuffer Allocation"
@@ -16335,7 +16308,7 @@ msgstr "Risparmio Energia"
#: main/main.cpp
msgid "Threads"
-msgstr ""
+msgstr "Threads"
#: main/main.cpp servers/physics_2d/physics_2d_server_wrap_mt.h
msgid "Thread Model"
@@ -16411,7 +16384,7 @@ msgstr "Modalità Basso Utilizzo Processore"
#: main/main.cpp
msgid "Delta Sync After Draw"
-msgstr ""
+msgstr "Sincronizzazione delta dopo il disegno"
#: main/main.cpp
msgid "iOS"
@@ -16443,9 +16416,8 @@ msgid "Shaders"
msgstr "Shaders"
#: main/main.cpp
-#, fuzzy
msgid "Debug Shader Fallbacks"
-msgstr "Forza fallback dello shader"
+msgstr "Forza Fallback dello Shader"
#: main/main.cpp scene/3d/baked_lightmap.cpp scene/3d/camera.cpp
#: scene/3d/world_environment.cpp scene/main/scene_tree.cpp
@@ -16456,7 +16428,7 @@ msgstr "Ambiente"
#: main/main.cpp
#, fuzzy
msgid "Default Clear Color"
-msgstr "Colore Di Cancellamento Di Default"
+msgstr "Colore Di Sfondo Di Default"
#: main/main.cpp
msgid "Boot Splash"
@@ -16492,7 +16464,7 @@ msgstr "Icona Nativa Di Windows"
#: main/main.cpp
msgid "Buffering"
-msgstr ""
+msgstr "Buffering"
#: main/main.cpp
msgid "Agile Event Flushing"
@@ -16516,7 +16488,7 @@ msgstr "Immagine Personalizzata"
#: main/main.cpp
msgid "Custom Image Hotspot"
-msgstr ""
+msgstr "Punto focale immagine personalizzato"
#: main/main.cpp
msgid "Tooltip Position Offset"
@@ -16540,7 +16512,7 @@ msgstr "Esecuzione"
#: main/main.cpp
msgid "Unhandled Exception Policy"
-msgstr ""
+msgstr "Regola per eccezioni non gestite"
#: main/main.cpp
msgid "Main Loop Type"
diff --git a/editor/translations/ja.po b/editor/translations/ja.po
index f086111ef2..2570cb6288 100644
--- a/editor/translations/ja.po
+++ b/editor/translations/ja.po
@@ -42,13 +42,14 @@
# cacapon <takuma.tsubo@amazingengine.co.jp>, 2022.
# fadhliazhari <m.fadhliazhari@gmail.com>, 2022.
# Chia-Hsiang Cheng <cche0109@student.monash.edu>, 2022.
+# meko <hirono.yoneyama@outlook.com>, 2022.
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: 2022-08-21 06:01+0000\n"
-"Last-Translator: KokiOgawa <mupimupicandy@gmail.com>\n"
+"PO-Revision-Date: 2022-09-27 21:37+0000\n"
+"Last-Translator: nitenook <admin@alterbaum.net>\n"
"Language-Team: Japanese <https://hosted.weblate.org/projects/godot-engine/"
"godot/ja/>\n"
"Language: ja\n"
@@ -56,7 +57,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 4.14-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -185,9 +186,8 @@ msgid "Time Scale"
msgstr "タイムスケール"
#: core/bind/core_bind.cpp main/main.cpp
-#, fuzzy
msgid "Physics Jitter Fix"
-msgstr "物理ジッタ修正"
+msgstr "物理のジッター修正"
#: core/bind/core_bind.cpp editor/plugins/version_control_editor_plugin.cpp
msgid "Error"
@@ -325,9 +325,8 @@ msgid "Data Array"
msgstr "データ配列"
#: core/io/stream_peer_ssl.cpp
-#, fuzzy
msgid "Blocking Handshake"
-msgstr "ハンドシェイクを阻止すること"
+msgstr "ハンドシェイクをブロッキング処理にする"
#: core/io/udp_server.cpp
msgid "Max Pending Connections"
@@ -399,7 +398,7 @@ msgstr "マウスモード"
#: core/os/input.cpp
msgid "Use Accumulated Input"
-msgstr "蓄積入力使用"
+msgstr "蓄積された入力を使用"
#: core/os/input_event.cpp editor/project_settings_editor.cpp
#: servers/audio_server.cpp
@@ -645,10 +644,12 @@ msgid "Always On Top"
msgstr "常に最前面"
#: core/project_settings.cpp
+#, fuzzy
msgid "Test Width"
msgstr "幅テスト"
#: core/project_settings.cpp
+#, fuzzy
msgid "Test Height"
msgstr "高さテスト"
@@ -743,7 +744,7 @@ msgstr "UI ページダウン"
#: core/project_settings.cpp
msgid "UI Home"
-msgstr "ホーム"
+msgstr "UI ホーム"
#: core/project_settings.cpp
msgid "UI End"
@@ -771,9 +772,8 @@ msgid "3D"
msgstr "3D"
#: core/project_settings.cpp
-#, fuzzy
msgid "Smooth Trimesh Collision"
-msgstr "スムーズ三角形メッシュコリジョン"
+msgstr "三角形メッシュ コリジョンをスムーズ化"
#: core/project_settings.cpp drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles2/rasterizer_scene_gles2.cpp
@@ -800,7 +800,6 @@ msgstr "品質"
#: core/project_settings.cpp scene/gui/file_dialog.cpp
#: scene/main/scene_tree.cpp scene/resources/navigation_mesh.cpp
#: servers/visual_server.cpp
-#, fuzzy
msgid "Filters"
msgstr "フィルター"
@@ -831,9 +830,8 @@ msgid "Profiler"
msgstr "プロファイラー"
#: core/project_settings.cpp
-#, fuzzy
msgid "Max Functions"
-msgstr "最大関数"
+msgstr "関数の上限"
#: core/project_settings.cpp scene/3d/vehicle_body.cpp
msgid "Compression"
@@ -856,6 +854,7 @@ msgid "Compression Level"
msgstr "圧縮レベル"
#: core/project_settings.cpp
+#, fuzzy
msgid "Window Log Size"
msgstr "Windowのログサイズ"
@@ -1056,6 +1055,7 @@ msgid "Follow Surface"
msgstr "サーフェスをフォローする"
#: drivers/gles3/rasterizer_scene_gles3.cpp
+#, fuzzy
msgid "Weight Samples"
msgstr "重量サンプル"
@@ -1143,7 +1143,6 @@ msgstr "アニメーション呼び出しの変更"
#: editor/animation_track_editor.cpp scene/2d/animated_sprite.cpp
#: scene/2d/sprite.cpp scene/3d/sprite_3d.cpp
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Frame"
msgstr "フレーム"
@@ -1171,9 +1170,8 @@ msgid "Value"
msgstr "値"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Arg Count"
-msgstr "引数数"
+msgstr "引数の数"
#: editor/animation_track_editor.cpp main/main.cpp
#: modules/mono/mono_gd/gd_mono.cpp
@@ -1205,12 +1203,10 @@ msgid "Stream"
msgstr "ストリーム"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Start Offset"
msgstr "始点オフセット"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "End Offset"
msgstr "終点オフセット"
@@ -1225,9 +1221,8 @@ msgid "Animation"
msgstr "アニメーション"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Easing"
-msgstr "イージング(In-Out)"
+msgstr "イージング"
#: editor/animation_track_editor.cpp
msgid "Anim Multi Change Keyframe Time"
@@ -1336,19 +1331,16 @@ msgid "Remove this track."
msgstr "このトラックを除去する。"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Time (s):"
-msgstr "時間 (秒): "
+msgstr "時間 (秒):"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Position:"
-msgstr "位置"
+msgstr "位置:"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Rotation:"
-msgstr "回転のステップ:"
+msgstr "回転:"
#: editor/animation_track_editor.cpp
#: editor/plugins/animation_tree_player_editor_plugin.cpp
@@ -1365,14 +1357,12 @@ msgid "Type:"
msgstr "型:"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "(Invalid, expected type: %s)"
-msgstr "無効なエクスポート テンプレート:"
+msgstr "(無効, 予期されたタイプ: %s)"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Easing:"
-msgstr "イージング(In-Out)"
+msgstr "イージング:"
#: editor/animation_track_editor.cpp
#, fuzzy
@@ -1385,24 +1375,20 @@ msgid "Out-Handle:"
msgstr "ハンドルを設定する"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Stream:"
-msgstr "ストリーム"
+msgstr "ストリーム:"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Start (s):"
-msgstr "リスタート:"
+msgstr "開始:"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "End (s):"
-msgstr "フェードイン:"
+msgstr "終了:"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Animation Clip:"
-msgstr "アニメーション:"
+msgstr "アニメーションクリップ:"
#: editor/animation_track_editor.cpp
msgid "Toggle Track Enabled"
@@ -1617,9 +1603,8 @@ msgid "Add Method Track Key"
msgstr "メソッドトラックキーの追加"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Method not found in object:"
-msgstr "オブジェクトにメソッドが見つかりません: "
+msgstr "オブジェクト内にメソッドが見つかりません:"
#: editor/animation_track_editor.cpp
msgid "Anim Move Keys"
@@ -2230,9 +2215,8 @@ msgid "Open"
msgstr "開く"
#: editor/dependency_editor.cpp
-#, fuzzy
msgid "Owners of: %s (Total: %d)"
-msgstr "所有者: %s (合計: %d)"
+msgstr "%s のオーナー (合計: %d)"
#: editor/dependency_editor.cpp
msgid ""
@@ -2343,7 +2327,6 @@ msgstr "開発リーダー"
#. TRANSLATORS: This refers to a job title.
#: editor/editor_about.cpp
-#, fuzzy
msgctxt "Job Title"
msgid "Project Manager"
msgstr "プロジェクトマネージャー"
@@ -2587,9 +2570,8 @@ msgid "There is no '%s' file."
msgstr "'%s' ファイルがありません。"
#: editor/editor_audio_buses.cpp
-#, fuzzy
msgid "Layout:"
-msgstr "レイアウト"
+msgstr "レイアウト:"
#: editor/editor_audio_buses.cpp
msgid "Invalid file, not an audio bus layout."
@@ -2667,7 +2649,7 @@ msgstr "既存のグローバル定数名と重複してはいけません。"
#: editor/editor_autoload_settings.cpp
msgid "Keyword cannot be used as an autoload name."
-msgstr "キーワードは自動ロード名として使用できません。"
+msgstr "キーワードは自動読み込みの名前として使用できません。"
#: editor/editor_autoload_settings.cpp
msgid "Autoload '%s' already exists!"
@@ -2788,27 +2770,23 @@ msgstr "フォルダーを作成できませんでした。"
#: editor/editor_dir_dialog.cpp
msgid "Choose"
-msgstr "選ぶ"
+msgstr "選択"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Project export for platform:"
-msgstr "プラットフォーム用のプロジェクトエクスポート:"
+msgstr "次のプラットフォーム向けにプロジェクトをエクスポート:"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Completed with warnings."
-msgstr "ノードのパスをコピー"
+msgstr "完了しましたが、警告があります。"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Completed successfully."
-msgstr "パッケージのインストールに成功しました!"
+msgstr "正常に完了しました。"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Failed."
-msgstr "失敗:"
+msgstr "失敗しました。"
#: editor/editor_export.cpp
msgid "Storing File:"
@@ -2823,29 +2801,24 @@ msgid "Packing"
msgstr "パック中"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Save PCK"
-msgstr "名前を付けて保存"
+msgstr "PCKを保存"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Cannot create file \"%s\"."
-msgstr "フォルダーを作成できませんでした。"
+msgstr "ファイル \"%s\" を作成できませんでした。"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Failed to export project files."
-msgstr "プロジェクトファイルをエクスポートできませんでした"
+msgstr "プロジェクトファイルをエクスポートできませんでした。"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Can't open file to read from path \"%s\"."
-msgstr "書き込むファイルを開けません:"
+msgstr "読み込むファイルをパス \"%s\" から開けません。"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Save ZIP"
-msgstr "名前を付けて保存"
+msgstr "ZIPを保存"
#: editor/editor_export.cpp
msgid ""
@@ -2926,39 +2899,32 @@ msgid "64 Bits"
msgstr "64ビット"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Embed PCK"
msgstr "組み込みPCK"
#: editor/editor_export.cpp platform/osx/export/export.cpp
-#, fuzzy
msgid "Texture Format"
-msgstr "テクスチャ領域"
+msgstr "テクスチャ形式"
#: editor/editor_export.cpp
-#, fuzzy
msgid "BPTC"
msgstr "BPTC"
#: editor/editor_export.cpp platform/osx/export/export.cpp
-#, fuzzy
msgid "S3TC"
msgstr "S3TC"
#: editor/editor_export.cpp platform/osx/export/export.cpp
-#, fuzzy
msgid "ETC"
-msgstr "TCP"
+msgstr "ETC"
#: editor/editor_export.cpp platform/osx/export/export.cpp
-#, fuzzy
msgid "ETC2"
msgstr "ETC2"
#: editor/editor_export.cpp
-#, fuzzy
msgid "No BPTC Fallbacks"
-msgstr "フォールバック"
+msgstr "BPTCにフォールバックしない"
#: editor/editor_export.cpp platform/android/export/export_plugin.cpp
#: platform/iphone/export/export.cpp platform/javascript/export/export.cpp
@@ -2973,30 +2939,25 @@ msgid "Custom release template not found."
msgstr "カスタム リリーステンプレートが見つかりません。"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Prepare Template"
-msgstr "テンプレートの管理"
+msgstr "テンプレートの準備"
#: editor/editor_export.cpp platform/osx/export/export.cpp
-#, fuzzy
msgid "The given export path doesn't exist."
-msgstr "指定されたエクスポートパスが存在しません:"
+msgstr "指定されたエクスポートパスが存在しません。"
#: editor/editor_export.cpp platform/javascript/export/export.cpp
-#, fuzzy
msgid "Template file not found: \"%s\"."
-msgstr "テンプレートファイルが見つかりません:"
+msgstr "テンプレートファイルが見つかりません: \"%s\"。"
#: editor/editor_export.cpp
-#, fuzzy
msgid "Failed to copy export template."
-msgstr "無効なエクスポート テンプレート:"
+msgstr "エクスポートテンプレートのコピーに失敗しました。"
#: editor/editor_export.cpp platform/windows/export/export.cpp
#: platform/x11/export/export.cpp
-#, fuzzy
msgid "PCK Embedding"
-msgstr "パディング"
+msgstr "PCKの組み込み"
#: editor/editor_export.cpp
msgid "On 32-bit exports the embedded PCK cannot be bigger than 4 GiB."
@@ -3416,6 +3377,7 @@ msgid "ScanSources"
msgstr "スキャンソース"
#: editor/editor_file_system.cpp
+#, fuzzy
msgid ""
"There are multiple importers for different types pointing to file %s, import "
"aborted"
@@ -4383,14 +4345,12 @@ msgid "Update Vital Only"
msgstr "マテリアルの変更:"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Localize Settings"
-msgstr "ローカライズ"
+msgstr "ローカライズの設定"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Restore Scenes On Load"
-msgstr "タイムシーク ノード"
+msgstr "ロード時にシーンを復元"
#: editor/editor_node.cpp editor/editor_settings.cpp
msgid "Show Thumbnail On Hover"
@@ -4401,23 +4361,20 @@ msgid "Inspector"
msgstr "インスペクター"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Default Property Name Style"
-msgstr "デフォルトのプロジェクトパス"
+msgstr "デフォルトのプロパティ名のスタイル"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Default Float Step"
-msgstr "デフォルトフロートステップ"
+msgstr "デフォルトの小数点数のステップ"
#: editor/editor_node.cpp scene/gui/tree.cpp
msgid "Disable Folding"
msgstr "折りたたみを無効化"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Auto Unfold Foreign Scenes"
-msgstr "自動展開外来シーン"
+msgstr "外部シーンの自動展開"
#: editor/editor_node.cpp
#, fuzzy
@@ -4434,9 +4391,8 @@ msgid "Open Resources In Current Inspector"
msgstr "リソースを現在のインスペクターで開く"
#: editor/editor_node.cpp
-#, fuzzy
msgid "Resources To Open In New Inspector"
-msgstr "インスペクターで開く"
+msgstr "新規インスペクターで開くリソース"
#: editor/editor_node.cpp
msgid "Default Color Picker Mode"
@@ -5096,14 +5052,12 @@ msgid "Debugger"
msgstr "デバッガー"
#: editor/editor_profiler.cpp
-#, fuzzy
msgid "Profiler Frame History Size"
-msgstr "プロファイラフレーム履歴サイズ"
+msgstr "プロファイラーフレームの履歴サイズ"
#: editor/editor_profiler.cpp
-#, fuzzy
msgid "Profiler Frame Max Functions"
-msgstr "プロファイラフレーム最大関数数"
+msgstr "プロファイラーフレームの関数の上限"
#: editor/editor_properties.cpp
msgid "Edit Text:"
@@ -5131,7 +5085,7 @@ msgstr "[空]"
#: editor/editor_properties.cpp editor/plugins/root_motion_editor_plugin.cpp
msgid "Assign..."
-msgstr "割り当て.."
+msgstr "割り当て..."
#: editor/editor_properties.cpp
msgid "Invalid RID"
@@ -5240,9 +5194,8 @@ msgid "Base Type"
msgstr "基底型を変更"
#: editor/editor_resource_picker.cpp
-#, fuzzy
msgid "Edited Resource"
-msgstr "リソースを追加"
+msgstr "編集したリソース"
#: editor/editor_resource_picker.cpp scene/gui/line_edit.cpp
#: scene/gui/slider.cpp scene/gui/spin_box.cpp
@@ -5272,9 +5225,8 @@ msgstr ""
"行可能にしてください。"
#: editor/editor_run_native.cpp
-#, fuzzy
msgid "Project Run"
-msgstr "プロジェクト"
+msgstr "プロジェクトの実行"
#: editor/editor_run_script.cpp
msgid "Write your logic in the _run() method."
@@ -5360,7 +5312,6 @@ msgid "Separate Distraction Mode"
msgstr "集中モード"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Automatically Open Screenshots"
msgstr "自動的にスクリーンショットを開く"
@@ -5414,9 +5365,8 @@ msgid "Use Graph Node Headers"
msgstr "グラフ ノード ヘッダーを使用する"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Additional Spacing"
-msgstr "アニメーションループ"
+msgstr "追加の間隔"
#: editor/editor_settings.cpp
msgid "Custom Theme"
@@ -5427,14 +5377,12 @@ msgid "Show Script Button"
msgstr "スクリプトボタンを表示"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Directories"
-msgstr "方向"
+msgstr "ディレクトリ"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Autoscan Project Path"
-msgstr "プロジェクトパス:"
+msgstr "自動スキャンするプロジェクトパス"
#: editor/editor_settings.cpp
msgid "Default Project Path"
@@ -5445,9 +5393,8 @@ msgid "On Save"
msgstr "保存時"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Compress Binary Resources"
-msgstr "リソースをコピー"
+msgstr "バイナリリソースの圧縮"
#: editor/editor_settings.cpp
#, fuzzy
@@ -5463,18 +5410,16 @@ msgid "Thumbnail Size"
msgstr "サムネイルのサイズ"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Docks"
-msgstr "Docks"
+msgstr "ドック"
#: editor/editor_settings.cpp
msgid "Scene Tree"
msgstr "シーンツリー"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Start Create Dialog Fully Expanded"
-msgstr "完全に展開された作成ダイアログを開始する"
+msgstr "新規作成ダイアログの開始時にすべてを展開する"
#: editor/editor_settings.cpp
msgid "Always Show Folders"
@@ -5572,14 +5517,12 @@ msgid "Mouse Extra Buttons Navigate History"
msgstr "マウス追加ボタンナビゲート履歴"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Drag And Drop Selection"
-msgstr "GridMap の選択"
+msgstr "選択範囲のドラッグ&ドロップ"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Stay In Script Editor On Node Selected"
-msgstr "ノード選択時にスクリプトエディタにとどまる"
+msgstr "ノード選択時にスクリプトエディターにとどまる"
#: editor/editor_settings.cpp
msgid "Appearance"
@@ -5613,7 +5556,6 @@ msgid "Code Folding"
msgstr "コードの折りたたみ"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Word Wrap"
msgstr "ワードラップ"
@@ -5641,7 +5583,6 @@ msgid "Show Members Overview"
msgstr "メンバー概要を表示"
#: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Files"
msgstr "ファイル"
@@ -5651,7 +5592,7 @@ msgstr "保存時に末尾の空白を取り除く"
#: editor/editor_settings.cpp
msgid "Autosave Interval Secs"
-msgstr "自動保存の間隔秒数"
+msgstr "自動保存する間隔の秒数"
#: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp
msgid "Restore Scripts On Load"
@@ -5679,9 +5620,8 @@ msgid "Cursor"
msgstr "カーソル"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Scroll Past End Of File"
-msgstr "ファイルの終わりを過ぎてスクロールする"
+msgstr "ファイルの末尾を越えたスクロール"
#: editor/editor_settings.cpp
msgid "Block Caret"
@@ -5706,34 +5646,28 @@ msgid "Completion"
msgstr "完了"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Idle Parse Delay"
-msgstr "アイドル解析遅延"
+msgstr "アイドル時の解析の遅延"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Auto Brace Complete"
-msgstr "自動ブレース補完"
+msgstr "波括弧の自動補完"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Code Complete Delay"
-msgstr "コード補完遅延"
+msgstr "コード補完の遅延"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Put Callhint Tooltip Below Current Line"
-msgstr "コールヒントツールチップを現在の行の下に配置"
+msgstr "コード補完ツールチップを現在の行の下に配置"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Callhint Tooltip Offset"
-msgstr "コールヒントツールチップオフセット"
+msgstr "コード補完ツールチップのオフセット"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Complete File Paths"
-msgstr "ノードのパスをコピー"
+msgstr "ファイルパスの補完"
#: editor/editor_settings.cpp modules/gdscript/gdscript_editor.cpp
#, fuzzy
@@ -5802,9 +5736,8 @@ msgstr "インスタンス化済"
#: editor/editor_settings.cpp modules/gltf/gltf_node.cpp
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Joint"
-msgstr "点"
+msgstr "ジョイント"
#: editor/editor_settings.cpp scene/2d/collision_shape_2d.cpp
#: scene/2d/cpu_particles_2d.cpp scene/2d/touch_screen_button.cpp
@@ -5821,39 +5754,32 @@ msgid "Primary Grid Steps"
msgstr "グリッドのステップ:"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Grid Size"
-msgstr "グリッドのステップ:"
+msgstr "グリッドのサイズ"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Grid Division Level Max"
-msgstr "グリッド分割レベル最大"
+msgstr "グリッドの分割の最大レベル"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Grid Division Level Min"
-msgstr "グリッド分割レベル最小"
+msgstr "グリッドの分割の最小レベル"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Grid Division Level Bias"
-msgstr "グリッド分割レベルバイアス"
+msgstr "グリッドの分割レベルのバイアス"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Grid XZ Plane"
-msgstr "GridMap ペイント"
+msgstr "グリッドのXZ平面"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Grid XY Plane"
-msgstr "GridMap ペイント"
+msgstr "グリッドのXY平面"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Grid YZ Plane"
-msgstr "GridMap ペイント"
+msgstr "グリッドのYZ平面"
#: editor/editor_settings.cpp
msgid "Default FOV"
@@ -5872,9 +5798,8 @@ msgid "Lightmap Baking Number Of CPU Threads"
msgstr "ライトマップベイクのCPUスレッド数"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Navigation Scheme"
-msgstr "ナビゲーションモード"
+msgstr "ナビゲーションの方式"
#: editor/editor_settings.cpp
msgid "Invert Y Axis"
@@ -6037,9 +5962,8 @@ msgid "Pan Speed"
msgstr "速度:"
#: editor/editor_settings.cpp editor/plugins/polygon_2d_editor_plugin.cpp
-#, fuzzy
msgid "Poly Editor"
-msgstr "Polygon 2D UV エディター"
+msgstr "ポリゴンエディター"
#: editor/editor_settings.cpp
#, fuzzy
@@ -6052,19 +5976,16 @@ msgid "Show Previous Outline"
msgstr "前の平面"
#: editor/editor_settings.cpp editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Autorename Animation Tracks"
-msgstr "アニメーションの名前を変更"
+msgstr "アニメーションのトラック名を自動変更"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Default Create Bezier Tracks"
-msgstr "デフォルトベジェトラックを作成"
+msgstr "デフォルトでベジェトラックを作成"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Default Create Reset Tracks"
-msgstr "RESETトラックを作成"
+msgstr "デフォルトでRESETトラックを作成"
#: editor/editor_settings.cpp
#, fuzzy
@@ -6086,21 +6007,18 @@ msgid "Minimap Opacity"
msgstr "ミニマップの不透明度"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Window Placement"
msgstr "ウィンドウの配置"
#: editor/editor_settings.cpp scene/2d/back_buffer_copy.cpp scene/2d/sprite.cpp
#: scene/2d/visibility_notifier_2d.cpp scene/3d/sprite_3d.cpp
#: scene/gui/control.cpp
-#, fuzzy
msgid "Rect"
-msgstr "Rect全面"
+msgstr "矩形"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Rect Custom Position"
-msgstr "曲線のOut-Controlの位置を指定"
+msgstr "矩形のカスタム位置"
#: editor/editor_settings.cpp platform/android/export/export_plugin.cpp
msgid "Screen"
@@ -6228,9 +6146,8 @@ msgid "Line Number Color"
msgstr "行番号の色"
#: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Safe Line Number Color"
-msgstr "行番号:"
+msgstr "安全な行番号の色"
#: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp
msgid "Caret Color"
@@ -6314,9 +6231,8 @@ msgid "Flat"
msgstr "フラット"
#: editor/editor_spin_slider.cpp
-#, fuzzy
msgid "Hide Slider"
-msgstr "コリジョンモード"
+msgstr "スライダーを隠す"
#: editor/editor_sub_scene.cpp
msgid "Select Node(s) to Import"
@@ -6994,33 +6910,28 @@ msgstr "フォルダーを作成"
#: editor/import/resource_importer_bitmask.cpp
#: servers/audio/effects/audio_effect_compressor.cpp
-#, fuzzy
msgid "Threshold"
-msgstr "閾"
+msgstr "しきい値"
#: editor/import/resource_importer_csv_translation.cpp
#: editor/import/resource_importer_layered_texture.cpp
#: editor/import/resource_importer_scene.cpp
#: editor/import/resource_importer_texture.cpp
#: editor/import/resource_importer_wav.cpp scene/3d/gi_probe.cpp
-#, fuzzy
msgid "Compress"
-msgstr "コンポーネント"
+msgstr "圧縮"
#: editor/import/resource_importer_csv_translation.cpp
-#, fuzzy
msgid "Delimiter"
msgstr "区切り文字"
#: editor/import/resource_importer_layered_texture.cpp
-#, fuzzy
msgid "ColorCorrect"
-msgstr "Color関数。"
+msgstr "ColorCorrect"
#: editor/import/resource_importer_layered_texture.cpp
-#, fuzzy
msgid "No BPTC If RGB"
-msgstr "RGB使用中の場合はBPTCを使用しない"
+msgstr "RGBの場合はBPTCなしにする"
#: editor/import/resource_importer_layered_texture.cpp
#: editor/import/resource_importer_texture.cpp scene/2d/cpu_particles_2d.cpp
@@ -7033,22 +6944,19 @@ msgstr "フラグ"
#: editor/import/resource_importer_layered_texture.cpp
#: editor/import/resource_importer_texture.cpp scene/animation/tween.cpp
#: scene/resources/texture.cpp
-#, fuzzy
msgid "Repeat"
msgstr "繰り返し"
#: editor/import/resource_importer_layered_texture.cpp
#: editor/import/resource_importer_texture.cpp scene/2d/light_2d.cpp
#: scene/gui/control.cpp
-#, fuzzy
msgid "Filter"
-msgstr "フィルター:"
+msgstr "フィルター"
#: editor/import/resource_importer_layered_texture.cpp
#: editor/import/resource_importer_texture.cpp
-#, fuzzy
msgid "Mipmaps"
-msgstr "シグナル"
+msgstr "ミップマップ"
#: editor/import/resource_importer_layered_texture.cpp
#: editor/import/resource_importer_texture.cpp
@@ -7062,30 +6970,26 @@ msgid "sRGB"
msgstr "sRGB"
#: editor/import/resource_importer_layered_texture.cpp
-#, fuzzy
msgid "Slices"
-msgstr "自動スライス"
+msgstr "スライス"
#: editor/import/resource_importer_layered_texture.cpp
#: scene/gui/aspect_ratio_container.cpp scene/gui/control.cpp
#: scene/gui/nine_patch_rect.cpp scene/gui/scroll_container.cpp
#: scene/resources/style_box.cpp
-#, fuzzy
msgid "Horizontal"
-msgstr "水平:"
+msgstr "水平"
#: editor/import/resource_importer_layered_texture.cpp
#: scene/gui/aspect_ratio_container.cpp scene/gui/control.cpp
#: scene/gui/nine_patch_rect.cpp scene/gui/scroll_container.cpp
#: scene/resources/style_box.cpp
-#, fuzzy
msgid "Vertical"
-msgstr "垂直:"
+msgstr "垂直"
#: editor/import/resource_importer_obj.cpp
-#, fuzzy
msgid "Generate Tangents"
-msgstr "ポイントを生成"
+msgstr "接線を生成"
#: editor/import/resource_importer_obj.cpp
#, fuzzy
@@ -7093,9 +6997,8 @@ msgid "Scale Mesh"
msgstr "スケールモード"
#: editor/import/resource_importer_obj.cpp
-#, fuzzy
msgid "Offset Mesh"
-msgstr "オフセット:"
+msgstr "メッシュのオフセット"
#: editor/import/resource_importer_obj.cpp
#: editor/import/resource_importer_scene.cpp
@@ -7150,24 +7053,20 @@ msgstr "複数のシーン+マテリアルとしてインポート"
#: editor/import/resource_importer_scene.cpp modules/gltf/gltf_state.cpp
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Nodes"
msgstr "ノード"
#: editor/import/resource_importer_scene.cpp
-#, fuzzy
msgid "Root Type"
-msgstr "Return(戻り値)"
+msgstr "ルートの型"
#: editor/import/resource_importer_scene.cpp
-#, fuzzy
msgid "Root Name"
-msgstr "リモート名"
+msgstr "ルートの名前"
#: editor/import/resource_importer_scene.cpp
-#, fuzzy
msgid "Root Scale"
-msgstr "スケール"
+msgstr "ルートのスケール"
#: editor/import/resource_importer_scene.cpp
#, fuzzy
@@ -7175,19 +7074,16 @@ msgid "Custom Script"
msgstr "ノードを切り取る"
#: editor/import/resource_importer_scene.cpp scene/resources/texture.cpp
-#, fuzzy
msgid "Storage"
-msgstr "ファイルの保存:"
+msgstr "ストレージ"
#: editor/import/resource_importer_scene.cpp
-#, fuzzy
msgid "Use Legacy Names"
-msgstr "従来の名前を使用"
+msgstr "レガシーな名前を使用"
#: editor/import/resource_importer_scene.cpp modules/gltf/gltf_state.cpp
-#, fuzzy
msgid "Materials"
-msgstr "マテリアルの変更:"
+msgstr "マテリアル"
#: editor/import/resource_importer_scene.cpp
#, fuzzy
@@ -7195,7 +7091,6 @@ msgid "Keep On Reimport"
msgstr "再インポート"
#: editor/import/resource_importer_scene.cpp modules/gltf/gltf_state.cpp
-#, fuzzy
msgid "Meshes"
msgstr "メッシュ"
@@ -7215,27 +7110,22 @@ msgid "Lightmap Texel Size"
msgstr "ライトマップを焼き込む"
#: editor/import/resource_importer_scene.cpp modules/gltf/gltf_state.cpp
-#, fuzzy
msgid "Skins"
msgstr "スキン"
#: editor/import/resource_importer_scene.cpp
-#, fuzzy
msgid "Use Named Skins"
-msgstr "スケールスナップを使用"
+msgstr "名前付きスキンの使用"
#: editor/import/resource_importer_scene.cpp
-#, fuzzy
msgid "External Files"
-msgstr "外部"
+msgstr "外部ファイル"
#: editor/import/resource_importer_scene.cpp
-#, fuzzy
msgid "Store In Subdir"
msgstr "サブディレクトリに保存"
#: editor/import/resource_importer_scene.cpp
-#, fuzzy
msgid "Filter Script"
msgstr "スクリプトを絞り込む"
@@ -7261,7 +7151,6 @@ msgstr "最適化"
#: scene/3d/sprite_3d.cpp scene/gui/graph_edit.cpp
#: scene/gui/rich_text_label.cpp scene/resources/curve.cpp
#: scene/resources/environment.cpp scene/resources/material.cpp
-#, fuzzy
msgid "Enabled"
msgstr "有効"
@@ -7281,14 +7170,12 @@ msgid "Max Angle"
msgstr "値"
#: editor/import/resource_importer_scene.cpp
-#, fuzzy
msgid "Remove Unused Tracks"
-msgstr "アニメーショントラックを除去"
+msgstr "未使用のトラックを除去"
#: editor/import/resource_importer_scene.cpp
-#, fuzzy
msgid "Clips"
-msgstr "アニメーションクリップ"
+msgstr "クリップ"
#: editor/import/resource_importer_scene.cpp scene/2d/cpu_particles_2d.cpp
#: scene/2d/particles_2d.cpp scene/3d/area.cpp scene/3d/cpu_particles.cpp
@@ -7366,7 +7253,7 @@ msgstr "2D、3D検出"
#: editor/import/resource_importer_texture.cpp
#, fuzzy
msgid "2D Pixel"
-msgstr "凝集ピクセル"
+msgstr "2Dピクセル"
#: editor/import/resource_importer_texture.cpp scene/resources/texture.cpp
#, fuzzy
@@ -7374,9 +7261,8 @@ msgid "Lossy Quality"
msgstr "損失のある品質"
#: editor/import/resource_importer_texture.cpp
-#, fuzzy
msgid "HDR Mode"
-msgstr "選択モード"
+msgstr "HDRモード"
#: editor/import/resource_importer_texture.cpp
msgid "BPTC LDR"
@@ -7386,7 +7272,6 @@ msgstr "BPTC LDR"
#: editor/plugins/tile_set_editor_plugin.cpp scene/2d/cpu_particles_2d.cpp
#: scene/2d/mesh_instance_2d.cpp scene/2d/multimesh_instance_2d.cpp
#: scene/2d/particles_2d.cpp scene/2d/sprite.cpp scene/resources/style_box.cpp
-#, fuzzy
msgid "Normal Map"
msgstr "法線マップ"
@@ -7430,28 +7315,24 @@ msgid "Detect 3D"
msgstr "3Dを検出"
#: editor/import/resource_importer_texture.cpp
-#, fuzzy
msgid "SVG"
-msgstr "CSG"
+msgstr "SVG"
#: editor/import/resource_importer_texture.cpp
-#, fuzzy
msgid ""
"Warning, no suitable PC VRAM compression enabled in Project Settings. This "
"texture will not display correctly on PC."
msgstr ""
-"警告、プロジェクト設定で有効な適切なPC VRAM圧縮がありません。このテクスチャ"
-"は PCで正しく表示されません。"
+"警告、プロジェクト設定で適切なPC VRAM圧縮が有効化されていません。このテクス"
+"チャは PCで正しく表示されません。"
#: editor/import/resource_importer_texture_atlas.cpp
-#, fuzzy
msgid "Atlas File"
-msgstr "アウトラインのサイズ:"
+msgstr "アトラスファイル"
#: editor/import/resource_importer_texture_atlas.cpp
-#, fuzzy
msgid "Import Mode"
-msgstr "エクスポートモード:"
+msgstr "インポートモード"
#: editor/import/resource_importer_texture_atlas.cpp
#, fuzzy
@@ -7469,7 +7350,6 @@ msgid "Force"
msgstr "強制プッシュ"
#: editor/import/resource_importer_wav.cpp
-#, fuzzy
msgid "8 Bit"
msgstr "8ビット"
@@ -7490,32 +7370,27 @@ msgid "Max Rate Hz"
msgstr "ミックス ノード"
#: editor/import/resource_importer_wav.cpp
-#, fuzzy
msgid "Trim"
msgstr "トリム"
#: editor/import/resource_importer_wav.cpp
-#, fuzzy
msgid "Normalize"
-msgstr "フォーマット"
+msgstr "ノーマライズ"
#: editor/import/resource_importer_wav.cpp
#: scene/resources/audio_stream_sample.cpp
-#, fuzzy
msgid "Loop Mode"
-msgstr "移動モード"
+msgstr "ループモード"
#: editor/import/resource_importer_wav.cpp
#: scene/resources/audio_stream_sample.cpp
-#, fuzzy
msgid "Loop Begin"
-msgstr "移動モード"
+msgstr "ループの開始"
#: editor/import/resource_importer_wav.cpp
#: scene/resources/audio_stream_sample.cpp
-#, fuzzy
msgid "Loop End"
-msgstr "移動モード"
+msgstr "ループの終了"
#: editor/import_defaults_editor.cpp
msgid "Select Importer"
@@ -7585,17 +7460,16 @@ msgid ""
"Select a resource file in the filesystem or in the inspector to adjust "
"import settings."
msgstr ""
-"ファイルシステムや Inspector にある Resource ファイルを選択してインポート設定"
-"を調整してください。"
+"ファイルシステムやインスペクターにあるリソースファイルを選択してインポート設"
+"定を調整します。"
#: editor/inspector_dock.cpp
msgid "Failed to load resource."
msgstr "リソースの読み込みに失敗しました。"
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Property Name Style"
-msgstr "プロジェクト名:"
+msgstr "プロパティ名のスタイル"
#: editor/inspector_dock.cpp scene/gui/color_picker.cpp
msgid "Raw"
@@ -7607,14 +7481,12 @@ msgid "Capitalized"
msgstr "単語の先頭文字を大文字に"
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Localized"
-msgstr "ロケール"
+msgstr "ローカライズ済"
#: editor/inspector_dock.cpp
-#, fuzzy
msgid "Localization not available for current language."
-msgstr "現地語化は現在の言語では使用できません。"
+msgstr "ローカライズ化は現在の言語では使用できません。"
#: editor/inspector_dock.cpp
msgid "Copy Properties"
@@ -8347,9 +8219,8 @@ msgid "Set the end animation. This is useful for sub-transitions."
msgstr "終了アニメーションを設定する。これはサブトランジションに便利です。"
#: editor/plugins/animation_state_machine_editor.cpp
-#, fuzzy
msgid "Transition:"
-msgstr "トランジション: "
+msgstr "トランジション:"
#: editor/plugins/animation_state_machine_editor.cpp
msgid "Play Mode:"
@@ -8650,25 +8521,21 @@ msgid "Loading..."
msgstr "読み込み中..."
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgctxt "Pagination"
msgid "First"
msgstr "最初"
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgctxt "Pagination"
msgid "Previous"
msgstr "前"
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgctxt "Pagination"
msgid "Next"
msgstr "次"
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgctxt "Pagination"
msgid "Last"
msgstr "最後"
@@ -8718,9 +8585,8 @@ msgid "Testing"
msgstr "試験的"
#: editor/plugins/asset_library_editor_plugin.cpp
-#, fuzzy
msgid "Failed to get repository configuration."
-msgstr "リポジトリを構成できませんでした。"
+msgstr "リポジトリ構成を取得できませんでした。"
#: editor/plugins/asset_library_editor_plugin.cpp
msgid "Assets ZIP File"
@@ -9657,9 +9523,8 @@ msgid "Swap Gradient Fill Points"
msgstr "Gradient の塗りつぶしポイントを入れ替え"
#: editor/plugins/gradient_texture_2d_editor_plugin.cpp
-#, fuzzy
msgid "Toggle Grid Snap"
-msgstr "グリッドの切り替え"
+msgstr "グリッドスナップの切り替え"
#: editor/plugins/item_list_editor_plugin.cpp editor/project_export.cpp
#: scene/3d/label_3d.cpp scene/gui/button.cpp scene/gui/dialogs.cpp
@@ -9682,9 +9547,8 @@ msgstr "ID"
#: editor/plugins/item_list_editor_plugin.cpp
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Separator"
-msgstr "分離:"
+msgstr "セパレーター"
#: editor/plugins/item_list_editor_plugin.cpp
msgid "Item %d"
@@ -9920,7 +9784,6 @@ msgstr ""
"%s"
#: editor/plugins/mesh_library_editor_plugin.cpp
-#, fuzzy
msgid "MeshLibrary"
msgstr "メッシュライブラリ"
@@ -10855,7 +10718,6 @@ msgid "List Script Names As"
msgstr "スクリプト名:"
#: editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Exec Flags"
msgstr "実行フラグ"
@@ -11738,9 +11600,8 @@ msgid "Invalid geometry, can't replace by mesh."
msgstr "ジオメトリが無効です。メッシュに置き換えることはできません。"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Convert to MeshInstance2D"
-msgstr "Mesh2Dに変換する"
+msgstr "MeshInstance2Dに変換する"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Invalid geometry, can't create polygon."
@@ -11776,14 +11637,12 @@ msgid "Simplification:"
msgstr "簡略化: "
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Shrink (Pixels):"
-msgstr "縮小 (ピクセル): "
+msgstr "縮小 (ピクセル):"
#: editor/plugins/sprite_editor_plugin.cpp
-#, fuzzy
msgid "Grow (Pixels):"
-msgstr "拡大(ピクセル): "
+msgstr "拡大(ピクセル):"
#: editor/plugins/sprite_editor_plugin.cpp
msgid "Update Preview"
@@ -11846,9 +11705,8 @@ msgid "New Animation"
msgstr "新規アニメーション"
#: editor/plugins/sprite_frames_editor_plugin.cpp
-#, fuzzy
msgid "Filter animations"
-msgstr "メソッドを絞り込む"
+msgstr "アニメーションを絞り込む"
#: editor/plugins/sprite_frames_editor_plugin.cpp
msgid "Speed:"
@@ -13043,9 +12901,8 @@ msgstr "スナッピングオプション"
#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp
#: scene/main/canvas_layer.cpp scene/resources/material.cpp
#: scene/resources/particles_material.cpp scene/resources/style_box.cpp
-#, fuzzy
msgid "Offset"
-msgstr "オフセット:"
+msgstr "オフセット"
#: editor/plugins/tile_set_editor_plugin.cpp editor/rename_dialog.cpp
#: scene/gui/range.cpp scene/resources/animation.cpp
@@ -13072,9 +12929,8 @@ msgstr "選択"
#: scene/gui/nine_patch_rect.cpp scene/gui/texture_rect.cpp
#: scene/resources/material.cpp scene/resources/sky.cpp
#: scene/resources/style_box.cpp scene/resources/visual_shader_nodes.cpp
-#, fuzzy
msgid "Texture"
-msgstr "テキスト"
+msgstr "テクスチャ"
#: editor/plugins/tile_set_editor_plugin.cpp
#, fuzzy
@@ -13094,9 +12950,8 @@ msgid "Modulate"
msgstr "データの投入"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Tile Mode"
-msgstr "モード切り替え"
+msgstr "タイルモード"
#: editor/plugins/tile_set_editor_plugin.cpp
#, fuzzy
@@ -13104,24 +12959,20 @@ msgid "Autotile Bitmask Mode"
msgstr "ビットマスクモード"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Subtile Size"
-msgstr "アウトラインのサイズ:"
+msgstr "サブタイルのサイズ"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Subtile Spacing"
-msgstr "行間隔"
+msgstr "サブタイルの間隔"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Occluder Offset"
-msgstr "オクルーダーポリゴンを生成"
+msgstr "オクルーダーのオフセット"
#: editor/plugins/tile_set_editor_plugin.cpp
-#, fuzzy
msgid "Navigation Offset"
-msgstr "ナビゲーションモード"
+msgstr "ナビゲーションのオフセット"
#: editor/plugins/tile_set_editor_plugin.cpp
#, fuzzy
@@ -14357,51 +14208,44 @@ msgid ""
msgstr ""
#: editor/project_export.cpp
-#, fuzzy
msgid "More Info..."
-msgstr "移動..."
+msgstr "詳細情報..."
#: editor/project_export.cpp
-#, fuzzy
msgid "Export PCK/Zip..."
-msgstr "PCK/Zipのエクスポート"
+msgstr "PCK/Zipのエクスポート..."
#: editor/project_export.cpp
-#, fuzzy
msgid "Export Project..."
-msgstr "プロジェクトのエクスポート"
+msgstr "プロジェクトのエクスポート..."
#: editor/project_export.cpp
msgid "Export All"
msgstr "すべてエクスポート"
#: editor/project_export.cpp
-#, fuzzy
msgid "Choose an export mode:"
-msgstr "空のフォルダーを選択してください。"
+msgstr "エクスポートのモードを選択:"
#: editor/project_export.cpp
-#, fuzzy
msgid "Export All..."
-msgstr "すべてエクスポート"
+msgstr "すべてエクスポート..."
#: editor/project_export.cpp editor/project_manager.cpp
msgid "ZIP File"
msgstr "ZIPファイル"
#: editor/project_export.cpp
-#, fuzzy
msgid "Godot Project Pack"
-msgstr "Godotゲームパック"
+msgstr "Godotプロジェクトパック"
#: editor/project_export.cpp
msgid "Export templates for this platform are missing:"
msgstr "このプラットフォームに対するエクスポート テンプレートが見つかりません:"
#: editor/project_export.cpp
-#, fuzzy
msgid "Project Export"
-msgstr "プロジェクト創始者"
+msgstr "プロジェクトのエクスポート"
#: editor/project_export.cpp
msgid "Manage Export Templates"
@@ -14485,7 +14329,7 @@ msgstr "project.godot をプロジェクトパスに生成できませんでし
#: editor/project_manager.cpp
msgid "Error opening package file, not in ZIP format."
-msgstr "パッケージファイルを開けませんでした、zip 形式ではありません。"
+msgstr "パッケージファイルを開けませんでした、ZIP形式ではありません。"
#: editor/project_manager.cpp
msgid "The following files failed extraction from package:"
@@ -14712,7 +14556,6 @@ msgstr ""
#. TRANSLATORS: This refers to the application where users manage their Godot projects.
#: editor/project_manager.cpp
-#, fuzzy
msgctxt "Application"
msgid "Project Manager"
msgstr "プロジェクトマネージャー"
@@ -15805,7 +15648,7 @@ msgstr "無効なノード名。以下の文字は使えません:"
#: editor/scene_tree_editor.cpp
msgid "Another node already uses this unique name in the scene."
-msgstr ""
+msgstr "既にシーン中の他のノードにこの固有名が使われています。"
#: editor/scene_tree_editor.cpp
msgid "Rename Node"
@@ -15956,9 +15799,8 @@ msgid "Attach Node Script"
msgstr "ノードにスクリプトをアタッチする"
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Remote %s:"
-msgstr "リモート "
+msgstr "リモート %s:"
#: editor/script_editor_debugger.cpp
msgid "Bytes:"
@@ -16046,7 +15888,7 @@ msgstr "リモートシーンツリーの更新間隔"
#: editor/script_editor_debugger.cpp
msgid "Remote Inspect Refresh Interval"
-msgstr ""
+msgstr "リモートインスペクトのリフレッシュ間隔"
#: editor/script_editor_debugger.cpp
msgid "Network Profiler"
@@ -16154,7 +15996,7 @@ msgstr "AudioStreamPlayer3Dの放射角度を変更する"
#: platform/osx/export/export.cpp
#: scene/resources/default_theme/default_theme.cpp
msgid "Camera"
-msgstr ""
+msgstr "カメラ"
#: editor/spatial_editor_gizmos.cpp
msgid "Change Camera FOV"
@@ -16238,11 +16080,11 @@ msgstr "ナビゲーションソリッド無効化"
#: editor/spatial_editor_gizmos.cpp
msgid "Joint Body A"
-msgstr ""
+msgstr "ジョイント ボディA"
#: editor/spatial_editor_gizmos.cpp
msgid "Joint Body B"
-msgstr ""
+msgstr "ジョイント ボディB"
#: editor/spatial_editor_gizmos.cpp
msgid "Room Edge"
@@ -16283,9 +16125,8 @@ msgstr "戻る"
#: editor/spatial_editor_gizmos.cpp scene/2d/light_occluder_2d.cpp
#: scene/2d/tile_map.cpp
-#, fuzzy
msgid "Occluder"
-msgstr "オクルージョンモード"
+msgstr "オクルーダー"
#: editor/spatial_editor_gizmos.cpp
msgid "Set Occluder Sphere Radius"
@@ -16369,7 +16210,7 @@ msgstr "1秒あたりの最大警告数"
#: main/main.cpp
msgid "Flush stdout On Print"
-msgstr ""
+msgstr "Print時にstdoutをフラッシュ"
#: main/main.cpp servers/visual_server.cpp
msgid "Logging"
@@ -16454,7 +16295,7 @@ msgstr "スレッドモデル"
#: main/main.cpp
msgid "Thread Safe BVH"
-msgstr ""
+msgstr "スレッドセーフなBVH"
#: main/main.cpp
msgid "Handheld"
@@ -16473,9 +16314,8 @@ msgid "Common"
msgstr "コミュニティ"
#: main/main.cpp
-#, fuzzy
msgid "Physics FPS"
-msgstr "物理フレーム %"
+msgstr "物理FPS"
#: main/main.cpp
#, fuzzy
@@ -16498,28 +16338,25 @@ msgstr ""
#: main/main.cpp
msgid "stdout"
-msgstr ""
+msgstr "stdout"
#: main/main.cpp
msgid "Print FPS"
-msgstr ""
+msgstr "FPSを表示する"
#: main/main.cpp
msgid "Verbose stdout"
-msgstr ""
+msgstr "冗長なstdout"
#: main/main.cpp scene/main/scene_tree.cpp scene/resources/multimesh.cpp
-#, fuzzy
msgid "Physics Interpolation"
-msgstr "補間モード"
+msgstr "物理補間"
#: main/main.cpp
-#, fuzzy
msgid "Enable Warnings"
-msgstr "フィルタリングを有効化"
+msgstr "警告を有効化"
#: main/main.cpp
-#, fuzzy
msgid "Frame Delay Msec"
msgstr "フレーム遅延 (ミリ秒)"
@@ -16567,9 +16404,8 @@ msgstr "シェーダーフォールバックを強制"
#: main/main.cpp scene/3d/baked_lightmap.cpp scene/3d/camera.cpp
#: scene/3d/world_environment.cpp scene/main/scene_tree.cpp
#: scene/resources/world.cpp
-#, fuzzy
msgid "Environment"
-msgstr "環境を表示"
+msgstr "環境"
#: main/main.cpp
msgid "Default Clear Color"
@@ -16890,22 +16726,19 @@ msgstr "DTLSを使用"
#: modules/fbx/editor_scene_importer_fbx.cpp
msgid "FBX"
-msgstr ""
+msgstr "FBX"
#: modules/fbx/editor_scene_importer_fbx.cpp
-#, fuzzy
msgid "Use FBX"
-msgstr "BVHを使用"
+msgstr "FBXを使用"
#: modules/gdnative/gdnative.cpp
-#, fuzzy
msgid "Config File"
-msgstr "ファイルの保存:"
+msgstr "構成ファイル"
#: modules/gdnative/gdnative.cpp
-#, fuzzy
msgid "Load Once"
-msgstr "リソースを読み込む"
+msgstr "一度だけ読み込む"
#: modules/gdnative/gdnative.cpp
#: modules/visual_script/visual_script_func_nodes.cpp
@@ -16913,14 +16746,12 @@ msgid "Singleton"
msgstr "シングルトン"
#: modules/gdnative/gdnative.cpp
-#, fuzzy
msgid "Symbol Prefix"
-msgstr "接頭辞:"
+msgstr "シンボルの接頭辞"
#: modules/gdnative/gdnative.cpp
-#, fuzzy
msgid "Reloadable"
-msgstr "再読み込み"
+msgstr "再読み込み可能"
#: modules/gdnative/gdnative.cpp
#: modules/gdnative/gdnative_library_singleton_editor.cpp
@@ -16973,9 +16804,8 @@ msgid "Disabled GDNative Singleton"
msgstr "無効なGDNativeシングルトン"
#: modules/gdnative/gdnative_library_singleton_editor.cpp
-#, fuzzy
msgid "Libraries:"
-msgstr "ライブラリ: "
+msgstr "ライブラリ:"
#: modules/gdnative/nativescript/nativescript.cpp
msgid "Class Name"
@@ -17016,11 +16846,11 @@ msgstr "警告をエラーとして扱う"
#: modules/gdscript/gdscript.cpp
msgid "Exclude Addons"
-msgstr ""
+msgstr "アドオンを除外"
#: modules/gdscript/gdscript.cpp
msgid "Autocomplete Setters And Getters"
-msgstr ""
+msgstr "セッターとゲッターを自動補完"
#: modules/gdscript/gdscript_functions.cpp
msgid "Step argument is zero!"
@@ -17063,9 +16893,8 @@ msgid "Language Server"
msgstr "言語サーバー"
#: modules/gdscript/language_server/gdscript_language_server.cpp
-#, fuzzy
msgid "Enable Smart Resolve"
-msgstr "解決できません"
+msgstr "Smart Resolveを有効化"
#: modules/gdscript/language_server/gdscript_language_server.cpp
msgid "Show Native Symbols In Editor"
@@ -17162,18 +16991,16 @@ msgid "Indices"
msgstr "すべてのデバイス"
#: modules/gltf/gltf_camera.cpp
-#, fuzzy
msgid "FOV Size"
-msgstr "サイズ:"
+msgstr "FOVサイズ"
#: modules/gltf/gltf_camera.cpp
msgid "Zfar"
-msgstr ""
+msgstr "Zfar"
#: modules/gltf/gltf_camera.cpp
-#, fuzzy
msgid "Znear"
-msgstr "リニア"
+msgstr "Znear"
#: modules/gltf/gltf_light.cpp scene/2d/canvas_modulate.cpp
#: scene/2d/cpu_particles_2d.cpp scene/2d/light_2d.cpp scene/2d/polygon_2d.cpp
@@ -17225,7 +17052,7 @@ msgstr "プラットフォーム"
#: modules/gltf/gltf_node.cpp scene/3d/mesh_instance.cpp
msgid "Skin"
-msgstr ""
+msgstr "スキン"
#: modules/gltf/gltf_node.cpp scene/3d/spatial.cpp
#, fuzzy
@@ -17238,9 +17065,8 @@ msgid "Children"
msgstr "編集可能な子"
#: modules/gltf/gltf_skeleton.cpp modules/gltf/gltf_skin.cpp
-#, fuzzy
msgid "Joints"
-msgstr "点"
+msgstr "ジョイント"
#: modules/gltf/gltf_skeleton.cpp modules/gltf/gltf_skin.cpp
msgid "Roots"
@@ -17256,9 +17082,8 @@ msgid "Godot Bone Node"
msgstr "タイムシーク ノード"
#: modules/gltf/gltf_skin.cpp
-#, fuzzy
msgid "Skin Root"
-msgstr "新しいシーンのルート"
+msgstr "スキンのルート"
#: modules/gltf/gltf_skin.cpp
#, fuzzy
@@ -17342,15 +17167,13 @@ msgid "Scene Name"
msgstr "シーンのパス:"
#: modules/gltf/gltf_state.cpp
-#, fuzzy
msgid "Root Nodes"
-msgstr "ルートノード名"
+msgstr "ルートノード"
#: modules/gltf/gltf_state.cpp scene/2d/particles_2d.cpp
#: scene/gui/texture_button.cpp scene/gui/texture_progress.cpp
-#, fuzzy
msgid "Textures"
-msgstr "機能"
+msgstr "テクスチャ"
#: modules/gltf/gltf_state.cpp platform/uwp/export/export.cpp
msgid "Images"
@@ -17358,10 +17181,9 @@ msgstr ""
#: modules/gltf/gltf_state.cpp
msgid "Cameras"
-msgstr ""
+msgstr "カメラ"
#: modules/gltf/gltf_state.cpp servers/visual_server.cpp
-#, fuzzy
msgid "Lights"
msgstr "ライト"
@@ -17371,7 +17193,6 @@ msgid "Unique Animation Names"
msgstr "新規アニメーション名:"
#: modules/gltf/gltf_state.cpp
-#, fuzzy
msgid "Skeletons"
msgstr "スケルトン"
@@ -17381,9 +17202,8 @@ msgid "Skeleton To Node"
msgstr "ノードを選択"
#: modules/gltf/gltf_state.cpp
-#, fuzzy
msgid "Animations"
-msgstr "アニメーション:"
+msgstr "アニメーション"
#: modules/gltf/gltf_texture.cpp
#, fuzzy
@@ -17395,9 +17215,8 @@ msgid "Mesh Library"
msgstr "メッシュライブラリ"
#: modules/gridmap/grid_map.cpp
-#, fuzzy
msgid "Physics Material"
-msgstr "物理フレーム %"
+msgstr "物理マテリアル"
#: modules/gridmap/grid_map.cpp scene/3d/visual_instance.cpp
#, fuzzy
@@ -17432,7 +17251,7 @@ msgstr "中央"
#: scene/2d/tile_map.cpp scene/3d/collision_object.cpp scene/3d/soft_body.cpp
#: scene/resources/material.cpp
msgid "Mask"
-msgstr ""
+msgstr "マスク"
#: modules/gridmap/grid_map.cpp scene/2d/tile_map.cpp
#, fuzzy
@@ -17629,9 +17448,8 @@ msgstr ""
#: modules/minimp3/resource_importer_mp3.cpp
#: modules/stb_vorbis/audio_stream_ogg_vorbis.cpp
#: modules/stb_vorbis/resource_importer_ogg_vorbis.cpp
-#, fuzzy
msgid "Loop Offset"
-msgstr "オフセット:"
+msgstr "ループのオフセット"
#: modules/mobile_vr/mobile_vr_interface.cpp
msgid "Eye Height"
@@ -17657,11 +17475,11 @@ msgstr ""
#: modules/mobile_vr/mobile_vr_interface.cpp
msgid "K1"
-msgstr ""
+msgstr "K1"
#: modules/mobile_vr/mobile_vr_interface.cpp
msgid "K2"
-msgstr ""
+msgstr "K2"
#: modules/mono/csharp_script.cpp
msgid "Class name can't be a reserved keyword"
@@ -17677,19 +17495,16 @@ msgid "Auto Update Project"
msgstr "名無しのプロジェクト"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "Assembly Name"
-msgstr "表示スケール"
+msgstr "アセンブリ名"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "Solution Directory"
-msgstr "ディレクトリを選択"
+msgstr "ソリューションのディレクトリ"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "C# Project Directory"
-msgstr "ディレクトリを選択"
+msgstr "C#プロジェクトのディレクトリ"
#: modules/mono/mono_gd/gd_mono_utils.cpp
msgid "End of inner exception stack trace"
@@ -17785,11 +17600,11 @@ msgstr "ノイズのオフセット"
#: modules/opensimplex/open_simplex_noise.cpp
msgid "Octaves"
-msgstr ""
+msgstr "オクターブ"
#: modules/opensimplex/open_simplex_noise.cpp
msgid "Period"
-msgstr ""
+msgstr "周期"
#: modules/opensimplex/open_simplex_noise.cpp
#, fuzzy
@@ -17812,7 +17627,6 @@ msgid "Names"
msgstr "名前"
#: modules/regex/regex.cpp
-#, fuzzy
msgid "Strings"
msgstr "文字列"
@@ -18227,7 +18041,7 @@ msgstr "メンバーを編集"
#: modules/visual_script/visual_script_expression.cpp
#: scene/resources/visual_shader.cpp
msgid "Expression"
-msgstr ""
+msgstr "式"
#: modules/visual_script/visual_script_flow_control.cpp
msgid "Return"
@@ -18245,9 +18059,8 @@ msgstr "Return(戻り値)"
#: modules/visual_script/visual_script_flow_control.cpp
#: scene/resources/visual_shader_nodes.cpp
-#, fuzzy
msgid "Condition"
-msgstr "コンディション"
+msgstr "条件"
#: modules/visual_script/visual_script_flow_control.cpp
msgid "if (cond) is:"
@@ -18447,14 +18260,12 @@ msgid "Operator"
msgstr "イテレータ"
#: modules/visual_script/visual_script_nodes.cpp
-#, fuzzy
msgid "Invalid argument of type:"
-msgstr ":無効な引数 引数の型: "
+msgstr "無効な引数の型:"
#: modules/visual_script/visual_script_nodes.cpp
-#, fuzzy
msgid "Invalid arguments:"
-msgstr ": 無効な引数: "
+msgstr "無効な引数:"
#: modules/visual_script/visual_script_nodes.cpp
msgid "a if cond, else b"
@@ -18617,18 +18428,16 @@ msgid "WaitInstanceSignal"
msgstr "インスタンス"
#: modules/webrtc/webrtc_data_channel.cpp
-#, fuzzy
msgid "Write Mode"
-msgstr "優先順位モード"
+msgstr "書き込みモード"
#: modules/webrtc/webrtc_data_channel.h
msgid "WebRTC"
-msgstr ""
+msgstr "WebRTC"
#: modules/webrtc/webrtc_data_channel.h
-#, fuzzy
msgid "Max Channel In Buffer (KB)"
-msgstr "キャンバスのポリゴンインデックスのバッファサイズ (KB)"
+msgstr "チャンネルの入力バッファの上限 (KB)"
#: modules/websocket/websocket_client.cpp
msgid "Verify SSL"
@@ -18639,32 +18448,28 @@ msgid "Trusted SSL Certificate"
msgstr "信頼済みSSL証明書"
#: modules/websocket/websocket_macros.h
-#, fuzzy
msgid "WebSocket Client"
-msgstr "ネットワーク ピア"
+msgstr "WebSocketクライアント"
#: modules/websocket/websocket_macros.h
-#, fuzzy
msgid "Max In Buffer (KB)"
-msgstr "最大サイズ (KB)"
+msgstr "入力バッファの上限 (KB)"
#: modules/websocket/websocket_macros.h
msgid "Max In Packets"
-msgstr ""
+msgstr "入力パケットの上限"
#: modules/websocket/websocket_macros.h
-#, fuzzy
msgid "Max Out Buffer (KB)"
-msgstr "最大サイズ (KB)"
+msgstr "出力バッファの上限 (KB)"
#: modules/websocket/websocket_macros.h
msgid "Max Out Packets"
-msgstr ""
+msgstr "出力パケットの上限"
#: modules/websocket/websocket_macros.h
-#, fuzzy
msgid "WebSocket Server"
-msgstr "ネットワーク ピア"
+msgstr "WebSocketサーバー"
#: modules/websocket/websocket_server.cpp
msgid "Bind IP"
@@ -18683,9 +18488,8 @@ msgid "CA Chain"
msgstr "CAチェーン"
#: modules/websocket/websocket_server.cpp
-#, fuzzy
msgid "Handshake Timeout"
-msgstr "タイムアウト。"
+msgstr "ハンドシェイクのタイムアウト"
#: modules/webxr/webxr_interface.cpp
msgid "Session Mode"
@@ -18796,9 +18600,8 @@ msgid "Use Custom Build"
msgstr ""
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Export Format"
-msgstr "エクスポート先のパス"
+msgstr "エクスポート形式"
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -18850,22 +18653,19 @@ msgstr "前のインスタンスを調べる"
#: platform/android/export/export_plugin.cpp
msgid "Code"
-msgstr ""
+msgstr "コード"
#: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp
-#, fuzzy
msgid "Package"
-msgstr "パック中"
+msgstr "パッケージ"
#: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp
-#, fuzzy
msgid "Unique Name"
-msgstr "ノード名:"
+msgstr "ユニーク名"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Signed"
-msgstr "シグナル"
+msgstr "署名付き"
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -18897,22 +18697,20 @@ msgid "XR Features"
msgstr "機能"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "XR Mode"
-msgstr "パンモード"
+msgstr "XRモード"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Hand Tracking"
-msgstr "トラッキング"
+msgstr "ハンドトラッキング"
#: platform/android/export/export_plugin.cpp
msgid "Hand Tracking Frequency"
-msgstr ""
+msgstr "ハンドトラッキングの周期"
#: platform/android/export/export_plugin.cpp
msgid "Passthrough"
-msgstr ""
+msgstr "パススルー"
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -18950,37 +18748,32 @@ msgid "Allow"
msgstr "hiDPIを許可"
#: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp
-#, fuzzy
msgid "Command Line"
-msgstr "Command"
+msgstr "コマンドライン"
#: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp
-#, fuzzy
msgid "Extra Args"
-msgstr "追加の呼び出し引数:"
+msgstr "追加の引数"
#: platform/android/export/export_plugin.cpp
msgid "APK Expansion"
-msgstr ""
+msgstr "APK拡張"
#: platform/android/export/export_plugin.cpp
msgid "Salt"
-msgstr ""
+msgstr "ソルト"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Public Key"
-msgstr "SSH 公開鍵パス"
+msgstr "公開鍵"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Permissions"
-msgstr "放出マスク"
+msgstr "権限"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Custom Permissions"
-msgstr "カスタムシーンを実行"
+msgstr "カスタムの権限"
#: platform/android/export/export_plugin.cpp
msgid "Select device from the list"
@@ -19108,9 +18901,8 @@ msgstr ""
"\"OpenXR\" の場合にのみ有効です。"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "\"Passthrough\" is only valid when \"XR Mode\" is \"OpenXR\"."
-msgstr "\"Passthrough\" は \"Xr Mode\" が \"OpenXR\" の場合にのみ有効です。"
+msgstr "\"パススルー\" は \"XR Mode\" が \"OpenXR\" の場合にのみ有効です。"
#: platform/android/export/export_plugin.cpp
msgid "\"Export AAB\" is only valid when \"Use Custom Build\" is enabled."
@@ -19160,20 +18952,16 @@ msgstr ""
#: platform/android/export/export_plugin.cpp platform/osx/export/export.cpp
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Code Signing"
-msgstr "DMGをコード署名中"
+msgstr "コード署名"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid ""
"'apksigner' could not be found. Please check that the command is available "
"in the Android SDK build-tools directory. The resulting %s is unsigned."
msgstr ""
-"'apksigner' が見つかりませんでした。\n"
-"このコマンドが Android SDK build-tools ディレクトリにあるか確認してくださ"
-"い。\n"
-"%s は署名されませんでした。"
+"'apksigner' が見つかりませんでした。このコマンドが Android SDK build-tools "
+"ディレクトリにあるか確認してください。%s は署名されませんでした。"
#: platform/android/export/export_plugin.cpp
msgid "Signing debug %s..."
@@ -19188,9 +18976,8 @@ msgid "Could not find keystore, unable to export."
msgstr "キーストアが見つからないため、エクスポートできません。"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not start apksigner executable."
-msgstr "サブプロセスを開始できませんでした!"
+msgstr "apksigner実行ファイルを開始できませんでした。"
#: platform/android/export/export_plugin.cpp
msgid "'apksigner' returned with error #%d"
@@ -19221,9 +19008,8 @@ msgid "Invalid filename! Android APK requires the *.apk extension."
msgstr "無効なファイル名です! Android APKには拡張子 *.apk が必要です。"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Unsupported export format!"
-msgstr "サポートされていないエクスポートフォーマットです!\n"
+msgstr "サポートされていないエクスポート形式です!"
#: platform/android/export/export_plugin.cpp
msgid ""
@@ -19289,9 +19075,8 @@ msgstr ""
"gradleのプロジェクトディレクトリを確認してください。"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Package not found: \"%s\"."
-msgstr "見つからないパッケージ: %s"
+msgstr "パッケージが見つかりません: \"%s\"。"
#: platform/android/export/export_plugin.cpp
msgid "Creating APK..."
@@ -19321,9 +19106,8 @@ msgid "Adding files..."
msgstr "ファイルを追加中..."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not export project files."
-msgstr "プロジェクトファイルをエクスポートできませんでした"
+msgstr "プロジェクトファイルをエクスポートできませんでした。"
#: platform/android/export/export_plugin.cpp
msgid "Aligning APK..."
@@ -19347,19 +19131,19 @@ msgstr ""
#: platform/iphone/export/export.cpp
msgid "iPhone 2436 X 1125"
-msgstr ""
+msgstr "iPhone 2436 x 1125"
#: platform/iphone/export/export.cpp
msgid "iPhone 2208 X 1242"
-msgstr ""
+msgstr "iPhone 2208 x 1242"
#: platform/iphone/export/export.cpp
msgid "iPad 1024 X 768"
-msgstr ""
+msgstr "iPad 1024 x 768"
#: platform/iphone/export/export.cpp
msgid "iPad 2048 X 1536"
-msgstr ""
+msgstr "iPad 2048 x 1536"
#: platform/iphone/export/export.cpp
msgid "Portrait Launch Screens"
@@ -19367,35 +19151,35 @@ msgstr ""
#: platform/iphone/export/export.cpp
msgid "iPhone 640 X 960"
-msgstr ""
+msgstr "iPhone 640 x 960"
#: platform/iphone/export/export.cpp
msgid "iPhone 640 X 1136"
-msgstr ""
+msgstr "iPhone 640 x 1136"
#: platform/iphone/export/export.cpp
msgid "iPhone 750 X 1334"
-msgstr ""
+msgstr "iPhone 750 x 1334"
#: platform/iphone/export/export.cpp
msgid "iPhone 1125 X 2436"
-msgstr ""
+msgstr "iPhone 1125 x 2436"
#: platform/iphone/export/export.cpp
msgid "iPad 768 X 1024"
-msgstr ""
+msgstr "iPad 768 x 1024"
#: platform/iphone/export/export.cpp
msgid "iPad 1536 X 2048"
-msgstr ""
+msgstr "iPad 1536 x 2048"
#: platform/iphone/export/export.cpp
msgid "iPhone 1242 X 2208"
-msgstr ""
+msgstr "iPhone 1242 x 2208"
#: platform/iphone/export/export.cpp
msgid "App Store Team ID"
-msgstr ""
+msgstr "App Store Team ID"
#: platform/iphone/export/export.cpp
msgid "Provisioning Profile UUID Debug"
@@ -19429,7 +19213,7 @@ msgstr ""
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
msgid "Info"
-msgstr ""
+msgstr "情報"
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
#, fuzzy
@@ -19501,35 +19285,35 @@ msgstr "プロパティの説明"
#: platform/iphone/export/export.cpp
msgid "iPhone 120 X 120"
-msgstr ""
+msgstr "iPhone 120 x 120"
#: platform/iphone/export/export.cpp
msgid "iPhone 180 X 180"
-msgstr ""
+msgstr "iPhone 180 x 180"
#: platform/iphone/export/export.cpp
msgid "iPad 76 X 76"
-msgstr ""
+msgstr "iPad 76 x 76"
#: platform/iphone/export/export.cpp
msgid "iPad 152 X 152"
-msgstr ""
+msgstr "iPad 152 x 152"
#: platform/iphone/export/export.cpp
msgid "iPad 167 X 167"
-msgstr ""
+msgstr "iPad 167 x 167"
#: platform/iphone/export/export.cpp
msgid "App Store 1024 X 1024"
-msgstr ""
+msgstr "App Store 1024 x 1024"
#: platform/iphone/export/export.cpp
msgid "Spotlight 40 X 40"
-msgstr ""
+msgstr "Spotlight 40 x 40"
#: platform/iphone/export/export.cpp
msgid "Spotlight 80 X 80"
-msgstr ""
+msgstr "Spotlight 80 x 80"
#: platform/iphone/export/export.cpp
msgid "Storyboard"
@@ -19606,14 +19390,12 @@ msgid "Could not open template for export: \"%s\"."
msgstr "エクスポート用のテンプレートを開けませんでした:"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Invalid export template: \"%s\"."
-msgstr "無効なエクスポート テンプレート:"
+msgstr "無効なエクスポートテンプレート: \"%s\"。"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not write file: \"%s\"."
-msgstr "ファイルを書き込めませんでした:"
+msgstr "ファイルを書き込めませんでした: \"%s\"。"
#: platform/javascript/export/export.cpp platform/osx/export/export.cpp
#, fuzzy
@@ -19621,13 +19403,12 @@ msgid "Icon Creation"
msgstr "マージンを設定する"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not read file: \"%s\"."
-msgstr "ファイルを読み込めませんでした:"
+msgstr "ファイルを読み込めませんでした: \"%s\"。"
#: platform/javascript/export/export.cpp
msgid "PWA"
-msgstr ""
+msgstr "PWA"
#: platform/javascript/export/export.cpp
#, fuzzy
@@ -19640,21 +19421,20 @@ msgid "Export Type"
msgstr "エクスポート"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "VRAM Texture Compression"
-msgstr "VRAM圧縮"
+msgstr "VRAMテクスチャ圧縮"
#: platform/javascript/export/export.cpp
msgid "For Desktop"
-msgstr ""
+msgstr "デスクトップ向け"
#: platform/javascript/export/export.cpp
msgid "For Mobile"
-msgstr ""
+msgstr "モバイル向け"
#: platform/javascript/export/export.cpp
msgid "HTML"
-msgstr ""
+msgstr "HTML"
#: platform/javascript/export/export.cpp
#, fuzzy
@@ -19704,31 +19484,28 @@ msgid "Icon 512 X 512"
msgstr ""
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not read HTML shell: \"%s\"."
-msgstr "HTMLシェルを読み込めませんでした:"
+msgstr "HTMLシェルを読み込めませんでした: \"%s\"。"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not create HTTP server directory: %s."
-msgstr "HTTPサーバーのディレクトリの作成に失敗:"
+msgstr "HTTPサーバーのディレクトリの作成に失敗しました: %s。"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Error starting HTTP server: %d."
-msgstr "HTTPサーバーの開始に失敗:"
+msgstr "HTTPサーバーの開始に失敗しました: %d。"
#: platform/javascript/export/export.cpp
msgid "Web"
-msgstr ""
+msgstr "Web"
#: platform/javascript/export/export.cpp
msgid "HTTP Host"
-msgstr ""
+msgstr "HTTPホスト"
#: platform/javascript/export/export.cpp
msgid "HTTP Port"
-msgstr ""
+msgstr "HTTPポート"
#: platform/javascript/export/export.cpp
msgid "Use SSL"
@@ -19865,9 +19642,8 @@ msgid "Removable Volumes Usage Description"
msgstr ""
#: platform/osx/export/export.cpp platform/windows/export/export.cpp
-#, fuzzy
msgid "Codesign"
-msgstr "DMGをコード署名中"
+msgstr "コード署名"
#: platform/osx/export/export.cpp platform/uwp/export/export.cpp
#: platform/windows/export/export.cpp
@@ -19881,9 +19657,8 @@ msgid "Timestamp"
msgstr "時間"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Hardened Runtime"
-msgstr "ランタイム"
+msgstr "Hardened Runtime"
#: platform/osx/export/export.cpp
#, fuzzy
@@ -19994,9 +19769,8 @@ msgid "Custom Options"
msgstr "バス オプション"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Notarization"
-msgstr "ローカライズ"
+msgstr "公証"
#: platform/osx/export/export.cpp
msgid "Apple ID Name"
@@ -20012,29 +19786,28 @@ msgid "Apple Team ID"
msgstr ""
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Could not open icon file \"%s\"."
-msgstr "プロジェクトファイルをエクスポートできませんでした"
+msgstr "アイコンファイルを開けませんでした: \"%s\"。"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Could not start xcrun executable."
-msgstr "サブプロセスを開始できませんでした!"
+msgstr "xcrun実行ファイルを開始できませんでした。"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Notarization failed."
-msgstr "ローカライズ"
+msgstr "公証に失敗しました。"
#: platform/osx/export/export.cpp
msgid "Notarization request UUID: \"%s\""
-msgstr ""
+msgstr "公証の要求UUID: \"%s\""
#: platform/osx/export/export.cpp
msgid ""
"The notarization process generally takes less than an hour. When the process "
"is completed, you'll receive an email."
msgstr ""
+"公証の手続きは通常1時間以内に終了します。手続きが完了するとEメールが届きま"
+"す。"
#: platform/osx/export/export.cpp
msgid ""
@@ -20047,6 +19820,8 @@ msgid ""
"Run the following command to staple the notarization ticket to the exported "
"application (optional):"
msgstr ""
+"次のコマンドを実行して、公証のチケットをエクスポートしたアプリケーションに紐"
+"付けします(オプション):"
#: platform/osx/export/export.cpp
msgid "Timestamping is not compatible with ad-hoc signature, and was disabled!"
@@ -20114,9 +19889,8 @@ msgid "Could not find template app to export: \"%s\"."
msgstr "エクスポートするテンプレートAPKが見つかりませんでした:"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Invalid export format."
-msgstr "無効なエクスポート テンプレート:"
+msgstr "無効なエクスポート形式です。"
#: platform/osx/export/export.cpp
msgid ""
@@ -20161,10 +19935,12 @@ msgid ""
"Notarization requires the app to be archived first, select the DMG or ZIP "
"export format instead."
msgstr ""
+"公証にはまずアプリをアーカイブする必要があります。DMGまたはZIPのエクスポート"
+"形式のものを選択してください。"
#: platform/osx/export/export.cpp
msgid "Sending archive for notarization"
-msgstr ""
+msgstr "公証をするためにアーカイブを送信中"
#: platform/osx/export/export.cpp
#, fuzzy
@@ -20195,36 +19971,35 @@ msgstr ""
#: platform/osx/export/export.cpp
msgid "Notarization: Notarization with an ad-hoc signature is not supported."
-msgstr ""
+msgstr "公証: アドホック署名による公証はサポートされていません。"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Notarization: Code signing is required for notarization."
-msgstr "Notarization: コード署名が必要です。"
+msgstr "公証: 公証にはコード署名が必要です。"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Notarization: Hardened runtime is required for notarization."
-msgstr "Notarization: hardened runtime が必要です。"
+msgstr "公証: 公証にはHardened runtimeが必要です。"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Notarization: Timestamp runtime is required for notarization."
-msgstr "Notarization: hardened runtime が必要です。"
+msgstr "公証: 公証にはTimestamp runtimeが必要です。"
#: platform/osx/export/export.cpp
msgid "Notarization: Apple ID name not specified."
-msgstr "Notarization: Apple ID 名が指定されていません。"
+msgstr "公証: Apple ID名が指定されていません。"
#: platform/osx/export/export.cpp
msgid "Notarization: Apple ID password not specified."
-msgstr "Notarization: Apple ID パスワードが指定されていません。"
+msgstr "公証: Apple ID パスワードが指定されていません。"
#: platform/osx/export/export.cpp
msgid ""
"Warning: Notarization is disabled. The exported project will be blocked by "
"Gatekeeper if it's downloaded from an unknown source."
msgstr ""
+"警告: 公証が無効化されています。エクスポートしたプロジェクトは、不明なソース"
+"からダウンロードされた場合Gatekeeperによってブロックされます。"
#: platform/osx/export/export.cpp
msgid ""
@@ -20248,6 +20023,9 @@ msgid ""
"Warning: Notarization is not supported from this OS. The exported project "
"will be blocked by Gatekeeper if it's downloaded from an unknown source."
msgstr ""
+"警告: このOSによる公証はサポートされていません。エクスポートしたプロジェクト"
+"は、不明なソースからダウンロードされた場合Gatekeeperによってブロックされま"
+"す。"
#: platform/osx/export/export.cpp
msgid ""
@@ -20292,9 +20070,8 @@ msgid "Force Builtin Codesign"
msgstr ""
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Architecture"
-msgstr "アーキテクチャエントリを追加する"
+msgstr "アーキテクチャ"
#: platform/uwp/export/export.cpp
#, fuzzy
@@ -20326,37 +20103,32 @@ msgid "Publisher GUID"
msgstr "ガイドをクリアする"
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Signing"
-msgstr "スキニング"
+msgstr "署名"
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Certificate"
msgstr "証明書"
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Algorithm"
-msgstr "デバッガー"
+msgstr "アルゴリズム"
#: platform/uwp/export/export.cpp
msgid "Major"
-msgstr ""
+msgstr "メジャー"
#: platform/uwp/export/export.cpp
msgid "Minor"
-msgstr ""
+msgstr "マイナー"
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Build"
-msgstr "定規モード"
+msgstr "ビルド"
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Revision"
-msgstr "バージョン"
+msgstr "リビジョン"
#: platform/uwp/export/export.cpp
msgid "Landscape"
@@ -20529,29 +20301,24 @@ msgid "Modify Resources"
msgstr "リソースをコピー"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "File Version"
-msgstr "バージョン"
+msgstr "ファイルバージョン"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Product Version"
-msgstr "無効な製品バージョン:"
+msgstr "製品バージョン"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Company Name"
-msgstr "ノード名:"
+msgstr "会社名"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Product Name"
-msgstr "プロジェクト名:"
+msgstr "製品名"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "File Description"
-msgstr "説明"
+msgstr "ファイルの説明"
#: platform/windows/export/export.cpp
msgid "Trademarks"
@@ -20674,13 +20441,12 @@ msgstr "Wine"
#: platform/x11/export/export.cpp
msgid "32-bit executables cannot have embedded data >= 4 GiB."
-msgstr ""
+msgstr "32bitの実行ファイルは4GiB以上の組み込みデータを持つことができません。"
#: scene/2d/animated_sprite.cpp scene/3d/sprite_3d.cpp
#: scene/resources/texture.cpp
-#, fuzzy
msgid "Frames"
-msgstr "フレーム %"
+msgstr "フレーム"
#: scene/2d/animated_sprite.cpp
msgid ""
@@ -20711,12 +20477,12 @@ msgstr "中央"
#: scene/2d/animated_sprite.cpp scene/2d/sprite.cpp scene/3d/sprite_3d.cpp
#: scene/gui/texture_button.cpp scene/gui/texture_rect.cpp
msgid "Flip H"
-msgstr ""
+msgstr "水平反転"
#: scene/2d/animated_sprite.cpp scene/2d/sprite.cpp scene/3d/sprite_3d.cpp
#: scene/gui/texture_button.cpp scene/gui/texture_rect.cpp
msgid "Flip V"
-msgstr ""
+msgstr "垂直反転"
#: scene/2d/area_2d.cpp scene/3d/area.cpp
#, fuzzy
@@ -20729,9 +20495,8 @@ msgid "Monitorable"
msgstr "モニター"
#: scene/2d/area_2d.cpp scene/3d/area.cpp
-#, fuzzy
msgid "Physics Overrides"
-msgstr "上書き"
+msgstr "物理のオーバーライド"
#: scene/2d/area_2d.cpp scene/3d/area.cpp
#, fuzzy
@@ -20811,9 +20576,8 @@ msgstr "アニメーション"
#: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp
#: scene/audio/audio_stream_player.cpp scene/gui/video_player.cpp
-#, fuzzy
msgid "Bus"
-msgstr "バスを追加"
+msgstr "バス"
#: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp
msgid "Area Mask"
@@ -20856,26 +20620,23 @@ msgstr "処理モード"
#: scene/2d/camera_2d.cpp
msgid "Limit"
-msgstr ""
+msgstr "制限"
#: scene/2d/camera_2d.cpp scene/gui/control.cpp scene/gui/nine_patch_rect.cpp
#: scene/resources/style_box.cpp scene/resources/texture.cpp
-#, fuzzy
msgid "Left"
-msgstr "左上"
+msgstr "左"
#: scene/2d/camera_2d.cpp scene/gui/control.cpp scene/gui/nine_patch_rect.cpp
#: scene/resources/style_box.cpp scene/resources/texture.cpp
-#, fuzzy
msgid "Right"
-msgstr "ライト"
+msgstr "右"
#: scene/2d/camera_2d.cpp scene/gui/control.cpp scene/gui/nine_patch_rect.cpp
#: scene/resources/dynamic_font.cpp scene/resources/style_box.cpp
#: scene/resources/texture.cpp
-#, fuzzy
msgid "Bottom"
-msgstr "左下"
+msgstr "下"
#: scene/2d/camera_2d.cpp
#, fuzzy
@@ -20904,12 +20665,11 @@ msgstr "スムーズステップ"
#: scene/2d/camera_2d.cpp
msgid "H"
-msgstr ""
+msgstr "水平"
#: scene/2d/camera_2d.cpp
-#, fuzzy
msgid "V"
-msgstr "UV"
+msgstr "垂直"
#: scene/2d/camera_2d.cpp
#, fuzzy
@@ -21048,9 +20808,8 @@ msgid ""
msgstr ""
#: scene/2d/collision_polygon_2d.cpp
-#, fuzzy
msgid "Build Mode"
-msgstr "定規モード"
+msgstr "ビルドモード"
#: scene/2d/collision_polygon_2d.cpp scene/2d/collision_shape_2d.cpp
#: scene/3d/collision_polygon.cpp scene/3d/collision_shape.cpp
@@ -21424,7 +21183,7 @@ msgstr ""
#: scene/2d/joints_2d.cpp scene/resources/animation.cpp
#: scene/resources/ray_shape.cpp scene/resources/segment_shape_2d.cpp
msgid "Length"
-msgstr ""
+msgstr "長さ"
#: scene/2d/joints_2d.cpp
#, fuzzy
@@ -21447,9 +21206,8 @@ msgstr ""
"光の形状を持つテクスチャは\"Texture\"プロパティに指定する必要があります。"
#: scene/2d/light_2d.cpp scene/3d/light.cpp scene/gui/reference_rect.cpp
-#, fuzzy
msgid "Editor Only"
-msgstr "エディター"
+msgstr "エディターのみ"
#: scene/2d/light_2d.cpp
#, fuzzy
@@ -21485,9 +21243,8 @@ msgid "Item Cull Mask"
msgstr ""
#: scene/2d/light_2d.cpp scene/3d/light.cpp scene/resources/style_box.cpp
-#, fuzzy
msgid "Shadow"
-msgstr "シェーダー"
+msgstr "シャドウ"
#: scene/2d/light_2d.cpp
#, fuzzy
@@ -21751,7 +21508,7 @@ msgstr "終りに"
#: scene/2d/parallax_background.cpp
msgid "Ignore Camera Zoom"
-msgstr ""
+msgstr "カメラのズームを無視"
#: scene/2d/parallax_layer.cpp
msgid ""
@@ -21840,14 +21597,12 @@ msgid "Unit Offset"
msgstr "グリッドのオフセット:"
#: scene/2d/path_2d.cpp scene/3d/camera.cpp scene/3d/path.cpp
-#, fuzzy
msgid "H Offset"
-msgstr "オフセット:"
+msgstr "水平オフセット"
#: scene/2d/path_2d.cpp scene/3d/camera.cpp scene/3d/path.cpp
-#, fuzzy
msgid "V Offset"
-msgstr "オフセット:"
+msgstr "垂直オフセット"
#: scene/2d/path_2d.cpp scene/3d/path.cpp
msgid "Cubic Interp"
@@ -21858,7 +21613,6 @@ msgid "Lookahead"
msgstr ""
#: scene/2d/physics_body_2d.cpp scene/3d/visual_instance.cpp
-#, fuzzy
msgid "Layers"
msgstr "レイヤー"
@@ -21874,9 +21628,8 @@ msgstr "初期化"
#: scene/2d/physics_body_2d.cpp scene/2d/tile_map.cpp scene/3d/physics_body.cpp
#: scene/resources/physics_material.cpp
-#, fuzzy
msgid "Friction"
-msgstr "関数"
+msgstr "摩擦"
#: scene/2d/physics_body_2d.cpp scene/2d/tile_map.cpp scene/3d/physics_body.cpp
#: scene/resources/physics_material.cpp
@@ -21885,7 +21638,7 @@ msgstr ""
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
msgid "Physics Material Override"
-msgstr ""
+msgstr "物理マテリアルのオーバーライド"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
#: scene/resources/world.cpp scene/resources/world_2d.cpp
@@ -21905,17 +21658,15 @@ msgstr ""
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
msgid "Mass"
-msgstr ""
+msgstr "質量"
#: scene/2d/physics_body_2d.cpp
-#, fuzzy
msgid "Inertia"
-msgstr "垂直:"
+msgstr "慣性"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
-#, fuzzy
msgid "Weight"
-msgstr "ライト"
+msgstr "重量"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
msgid "Gravity Scale"
@@ -21965,14 +21716,12 @@ msgid "Torque"
msgstr "トルク"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
-#, fuzzy
msgid "Safe Margin"
-msgstr "マージンを設定する"
+msgstr "セーフマージン"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
-#, fuzzy
msgid "Sync To Physics"
-msgstr "(物理的)同期"
+msgstr "物理との同期"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
#, fuzzy
@@ -22150,7 +21899,6 @@ msgstr ""
"使用してください。"
#: scene/2d/tile_map.cpp
-#, fuzzy
msgid "Tile Set"
msgstr "タイルセット"
@@ -22170,9 +21918,8 @@ msgid "Half Offset"
msgstr "初期化"
#: scene/2d/tile_map.cpp
-#, fuzzy
msgid "Tile Origin"
-msgstr "原点を表示"
+msgstr "タイルの原点"
#: scene/2d/tile_map.cpp
#, fuzzy
@@ -22259,7 +22006,7 @@ msgstr "優先順位を有効化"
#: scene/2d/visibility_notifier_2d.cpp
msgid "Physics Process Parent"
-msgstr ""
+msgstr "親の物理処理"
#: scene/3d/area.cpp
msgid "Reverb Bus"
@@ -22876,9 +22623,8 @@ msgid "Omni"
msgstr ""
#: scene/3d/light.cpp
-#, fuzzy
msgid "Shadow Mode"
-msgstr "シェーダー"
+msgstr "シャドウモード"
#: scene/3d/light.cpp
#, fuzzy
@@ -23527,9 +23273,8 @@ msgid "Box Projection"
msgstr "プロジェクト"
#: scene/3d/reflection_probe.cpp
-#, fuzzy
msgid "Enable Shadows"
-msgstr "スナップを有効にする"
+msgstr "シャドウを有効化"
#: scene/3d/reflection_probe.cpp
#, fuzzy
@@ -23777,9 +23522,8 @@ msgid "Spatial Attachment Path"
msgstr ""
#: scene/3d/soft_body.cpp
-#, fuzzy
msgid "Physics Enabled"
-msgstr "物理フレーム %"
+msgstr "物理を有効化"
#: scene/3d/soft_body.cpp
#, fuzzy
@@ -23851,9 +23595,8 @@ msgid "Gizmo"
msgstr "ギズモ"
#: scene/3d/spatial_velocity_tracker.cpp
-#, fuzzy
msgid "Track Physics Step"
-msgstr "物理フレーム %"
+msgstr "物理ステップの追跡"
#: scene/3d/spring_arm.cpp
msgid "Spring Length"
@@ -25340,9 +25083,8 @@ msgid "Pause Mode"
msgstr "パンモード"
#: scene/main/node.cpp
-#, fuzzy
msgid "Physics Interpolation Mode"
-msgstr "補間モード"
+msgstr "物理補間モード"
#: scene/main/node.cpp
#, fuzzy
@@ -25622,9 +25364,8 @@ msgid "Disable Input"
msgstr "アイテムを無効にする"
#: scene/main/viewport.cpp servers/visual_server.cpp
-#, fuzzy
msgid "Shadow Atlas"
-msgstr "新しいアトラス"
+msgstr "シャドウアトラス"
#: scene/main/viewport.cpp
msgid "Quad 0"
@@ -25677,14 +25418,12 @@ msgid "3D Render"
msgstr "レンダリング"
#: scene/register_scene_types.cpp
-#, fuzzy
msgid "2D Physics"
-msgstr " (物理的)"
+msgstr "2D物理"
#: scene/register_scene_types.cpp
-#, fuzzy
msgid "3D Physics"
-msgstr " (物理的)"
+msgstr "3D物理"
#: scene/register_scene_types.cpp
#, fuzzy
@@ -25854,14 +25593,12 @@ msgid "Font Outline Modulate"
msgstr "白色調整"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Shadow Offset X"
-msgstr "グリッドのオフセット X:"
+msgstr "シャドウのオフセットX"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Shadow Offset Y"
-msgstr "グリッドのオフセット Y:"
+msgstr "シャドウのオフセットY"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -26617,9 +26354,8 @@ msgid "Sky Contribution"
msgstr ""
#: scene/resources/environment.cpp
-#, fuzzy
msgid "Fog"
-msgstr "Fog(霧)"
+msgstr "フォグ"
#: scene/resources/environment.cpp
#, fuzzy
@@ -26872,19 +26608,16 @@ msgid "Ascent"
msgstr "最近:"
#: scene/resources/font.cpp
-#, fuzzy
msgid "Distance Field"
-msgstr "集中モード"
+msgstr "距離フィールド"
#: scene/resources/gradient.cpp
-#, fuzzy
msgid "Raw Data"
-msgstr "Depth(深度/奥行)"
+msgstr "生データ"
#: scene/resources/gradient.cpp
-#, fuzzy
msgid "Offsets"
-msgstr "オフセット:"
+msgstr "オフセット"
#: scene/resources/height_map_shape.cpp
msgid "Map Width"
@@ -26914,14 +26647,12 @@ msgid "Use Shadow To Opacity"
msgstr ""
#: scene/resources/material.cpp
-#, fuzzy
msgid "Unshaded"
-msgstr "シェーディングなしで表示"
+msgstr "シェーディングなしで"
#: scene/resources/material.cpp
-#, fuzzy
msgid "Vertex Lighting"
-msgstr "直接光"
+msgstr "頂点ライティング"
#: scene/resources/material.cpp
#, fuzzy
@@ -26938,7 +26669,7 @@ msgstr ""
#: scene/resources/material.cpp
msgid "Do Not Receive Shadows"
-msgstr ""
+msgstr "シャドウを受け取らない"
#: scene/resources/material.cpp
#, fuzzy
@@ -26968,9 +26699,8 @@ msgid "Is sRGB"
msgstr ""
#: scene/resources/material.cpp servers/visual_server.cpp
-#, fuzzy
msgid "Parameters"
-msgstr "パラメーターが変更されました:"
+msgstr "パラメーター"
#: scene/resources/material.cpp
#, fuzzy
@@ -27083,9 +26813,8 @@ msgid "Flowmap"
msgstr ""
#: scene/resources/material.cpp
-#, fuzzy
msgid "Ambient Occlusion"
-msgstr "オクルージョン"
+msgstr "アンビエントオクルージョン"
#: scene/resources/material.cpp
msgid "Deep Parallax"
@@ -27470,7 +27199,7 @@ msgstr "アウトラインのサイズ:"
#: scene/resources/sky.cpp
msgid "Panorama"
-msgstr ""
+msgstr "パノラマ"
#: scene/resources/sky.cpp
#, fuzzy
@@ -27483,9 +27212,8 @@ msgid "Horizon Color"
msgstr "ファイルの保存:"
#: scene/resources/sky.cpp
-#, fuzzy
msgid "Ground"
-msgstr "グループ化済み"
+msgstr "地面"
#: scene/resources/sky.cpp
#, fuzzy
@@ -27493,18 +27221,16 @@ msgid "Bottom Color"
msgstr "ブックマーク"
#: scene/resources/sky.cpp
-#, fuzzy
msgid "Sun"
-msgstr "実行"
+msgstr "太陽"
#: scene/resources/sky.cpp
-#, fuzzy
msgid "Latitude"
-msgstr "代替"
+msgstr "緯度"
#: scene/resources/sky.cpp
msgid "Longitude"
-msgstr ""
+msgstr "経度"
#: scene/resources/sky.cpp
msgid "Angle Min"
@@ -27848,9 +27574,8 @@ msgstr ""
#: servers/audio/effects/audio_effect_chorus.cpp
#: servers/audio/effects/audio_effect_delay.cpp
#: servers/audio/effects/audio_effect_panner.cpp
-#, fuzzy
msgid "Pan"
-msgstr "平面:"
+msgstr "パン"
#: servers/audio/effects/audio_effect_compressor.cpp
#: servers/audio/effects/audio_effect_filter.cpp
@@ -27859,12 +27584,11 @@ msgstr ""
#: servers/audio/effects/audio_effect_compressor.cpp
msgid "Attack (µs)"
-msgstr ""
+msgstr "アタック (マイクロ秒)"
#: servers/audio/effects/audio_effect_compressor.cpp
-#, fuzzy
msgid "Release (ms)"
-msgstr "リリース"
+msgstr "リリース (ミリ秒)"
#: servers/audio/effects/audio_effect_compressor.cpp
msgid "Mix"
@@ -27885,14 +27609,12 @@ msgstr ""
#: servers/audio/effects/audio_effect_delay.cpp
#: servers/audio/effects/audio_effect_phaser.cpp
#: servers/audio/effects/audio_effect_reverb.cpp
-#, fuzzy
msgid "Feedback"
-msgstr "ドキュメントのフィードバックを送る"
+msgstr "フィードバック"
#: servers/audio/effects/audio_effect_delay.cpp
-#, fuzzy
msgid "Low-pass"
-msgstr "バイパス"
+msgstr "ローパス"
#: servers/audio/effects/audio_effect_distortion.cpp
msgid "Pre Gain"
@@ -27978,7 +27700,7 @@ msgstr "タイムアウト。"
#: servers/audio/effects/audio_effect_stereo_enhance.cpp
msgid "Surround"
-msgstr ""
+msgstr "サラウンド"
#: servers/audio_server.cpp
msgid "Enable Audio Input"
@@ -28120,9 +27842,8 @@ msgid "Collision Unsafe Fraction"
msgstr "コリジョンモード"
#: servers/physics_2d_server.cpp servers/physics_server.cpp
-#, fuzzy
msgid "Physics Engine"
-msgstr "物理フレーム %"
+msgstr "物理エンジン"
#: servers/physics_server.cpp
msgid "Center Of Mass"
@@ -28238,9 +27959,8 @@ msgid "Quadrant 3 Subdiv"
msgstr ""
#: servers/visual_server.cpp
-#, fuzzy
msgid "Shadows"
-msgstr "シェーダー"
+msgstr "シャドウ"
#: servers/visual_server.cpp
msgid "Filter Mode"
@@ -28291,7 +28011,7 @@ msgstr ""
#: servers/visual_server.cpp
msgid "Depth Prepass"
-msgstr ""
+msgstr "深度プレパス"
#: servers/visual_server.cpp
msgid "Disable For Vendors"
@@ -28322,14 +28042,12 @@ msgid "Use Software Skinning"
msgstr "ソフトウェアスキニングを使用"
#: servers/visual_server.cpp
-#, fuzzy
msgid "Ninepatch Mode"
-msgstr "補間モード"
+msgstr "Ninepatchモード"
#: servers/visual_server.cpp
-#, fuzzy
msgid "OpenGL"
-msgstr "開く"
+msgstr "OpenGL"
#: servers/visual_server.cpp
msgid "Batching Send Null"
@@ -28402,7 +28120,7 @@ msgstr "フレームを貼り付け"
#: servers/visual_server.cpp
msgid "GLES2"
-msgstr ""
+msgstr "GLES2"
#: servers/visual_server.cpp
msgid "Compatibility"
diff --git a/editor/translations/ko.po b/editor/translations/ko.po
index e3edb07ce4..e1940d698c 100644
--- a/editor/translations/ko.po
+++ b/editor/translations/ko.po
@@ -38,13 +38,14 @@
# 김태우 <ogosengi3@gmail.com>, 2022.
# 박민규 <80dots@gmail.com>, 2022.
# 이지민 <jiminaleejung@gmail.com>, 2022.
+# nulltable <un5450@naver.com>, 2022.
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: 2022-09-07 06:16+0000\n"
-"Last-Translator: 이지민 <jiminaleejung@gmail.com>\n"
+"PO-Revision-Date: 2022-09-23 04:16+0000\n"
+"Last-Translator: nulltable <un5450@naver.com>\n"
"Language-Team: Korean <https://hosted.weblate.org/projects/godot-engine/"
"godot/ko/>\n"
"Language: ko\n"
@@ -52,7 +53,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 4.14.1-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -313,7 +314,7 @@ msgstr "스트림 피어"
#: core/io/stream_peer.cpp
msgid "Big Endian"
-msgstr "Big Endian"
+msgstr "빅 엔디안"
#: core/io/stream_peer.cpp
msgid "Data Array"
@@ -869,7 +870,7 @@ msgstr "모듈"
#: core/register_core_types.cpp
msgid "TCP"
-msgstr "TCP (전송 제어 프로토콜)"
+msgstr "TCP"
#: core/register_core_types.cpp
msgid "Connect Timeout Seconds"
@@ -1013,7 +1014,7 @@ msgstr "최대 렌더 요소 수"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Max Renderable Lights"
-msgstr "최대 렌더 광원 수"
+msgstr "최대 렌더 조명 수"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Max Renderable Reflections"
@@ -1021,7 +1022,7 @@ msgstr "최대 렌더 반사 수"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Max Lights Per Object"
-msgstr "오브젝트당 최대 광원 수"
+msgstr "오브젝트당 최대 조명 수"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Subsurface Scattering"
@@ -2784,7 +2785,7 @@ msgstr "패킹 중"
#: editor/editor_export.cpp
msgid "Save PCK"
-msgstr "PCK를 저장합니다."
+msgstr "PCK 저장"
#: editor/editor_export.cpp
msgid "Cannot create file \"%s\"."
@@ -2930,12 +2931,11 @@ msgstr "Export하려고 했으나 해당 경로가 존재하지 않습니다."
#: editor/editor_export.cpp platform/javascript/export/export.cpp
msgid "Template file not found: \"%s\"."
-msgstr "템플릿 파일을 찾을 수 없습니다: \"%s\""
+msgstr "템플릿 파일을 찾을 수 없습니다: \"%s\"."
#: editor/editor_export.cpp
-#, fuzzy
msgid "Failed to copy export template."
-msgstr "잘못된 내보내기 템플릿:"
+msgstr "내보내기 템플릿을 복사하지 못했습니다."
#: editor/editor_export.cpp platform/windows/export/export.cpp
#: platform/x11/export/export.cpp
@@ -6010,9 +6010,8 @@ msgstr "프로젝트 매니저"
#. TRANSLATORS: Project Manager here refers to the tool used to create/manage Godot projects.
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Sorting Order"
-msgstr "폴더 이름 바꾸기:"
+msgstr "정렬 순서"
#: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp
msgid "Symbol Color"
@@ -6044,21 +6043,18 @@ msgid "Comment Color"
msgstr ""
#: editor/editor_settings.cpp
-#, fuzzy
msgid "String Color"
-msgstr "저장하려는 파일:"
+msgstr "문자열 색"
#: editor/editor_settings.cpp platform/javascript/export/export.cpp
#: platform/uwp/export/export.cpp
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Background Color"
-msgstr "잘못된 배경 색상."
+msgstr "배경 색"
#: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Completion Background Color"
-msgstr "잘못된 배경 색상."
+msgstr "완성 배경 색"
#: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -6083,9 +6079,8 @@ msgid "Text Color"
msgstr "다음 층"
#: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Line Number Color"
-msgstr "행 번호:"
+msgstr "행 번호의 색"
#: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -6900,9 +6895,8 @@ msgstr ""
#: editor/import/resource_importer_layered_texture.cpp
#: editor/import/resource_importer_texture.cpp scene/2d/light_2d.cpp
#: scene/gui/control.cpp
-#, fuzzy
msgid "Filter"
-msgstr "필터:"
+msgstr "필터"
#: editor/import/resource_importer_layered_texture.cpp
#: editor/import/resource_importer_texture.cpp
@@ -6929,17 +6923,15 @@ msgstr "자동 자르기"
#: scene/gui/aspect_ratio_container.cpp scene/gui/control.cpp
#: scene/gui/nine_patch_rect.cpp scene/gui/scroll_container.cpp
#: scene/resources/style_box.cpp
-#, fuzzy
msgid "Horizontal"
-msgstr "수평:"
+msgstr "수평"
#: editor/import/resource_importer_layered_texture.cpp
#: scene/gui/aspect_ratio_container.cpp scene/gui/control.cpp
#: scene/gui/nine_patch_rect.cpp scene/gui/scroll_container.cpp
#: scene/resources/style_box.cpp
-#, fuzzy
msgid "Vertical"
-msgstr "수직:"
+msgstr "수직"
#: editor/import/resource_importer_obj.cpp
#, fuzzy
@@ -6952,9 +6944,8 @@ msgid "Scale Mesh"
msgstr "스케일 모드"
#: editor/import/resource_importer_obj.cpp
-#, fuzzy
msgid "Offset Mesh"
-msgstr "오프셋:"
+msgstr "오프셋 메시"
#: editor/import/resource_importer_obj.cpp
#: editor/import/resource_importer_scene.cpp
@@ -6963,9 +6954,8 @@ msgid "Octahedral Compression"
msgstr "표현식 설정"
#: editor/import/resource_importer_obj.cpp
-#, fuzzy
msgid "Optimize Mesh Flags"
-msgstr "크기: "
+msgstr "메시 플래그 최적화"
#: editor/import/resource_importer_scene.cpp
msgid "Import as Single Scene"
@@ -7043,9 +7033,8 @@ msgid "Use Legacy Names"
msgstr ""
#: editor/import/resource_importer_scene.cpp modules/gltf/gltf_state.cpp
-#, fuzzy
msgid "Materials"
-msgstr "머티리얼 바꾸기:"
+msgstr "머티리얼"
#: editor/import/resource_importer_scene.cpp
#, fuzzy
@@ -7122,14 +7111,12 @@ msgid "Enabled"
msgstr "활성화"
#: editor/import/resource_importer_scene.cpp
-#, fuzzy
msgid "Max Linear Error"
-msgstr "최대 선형 오류:"
+msgstr "최대 선형 오류"
#: editor/import/resource_importer_scene.cpp
-#, fuzzy
msgid "Max Angular Error"
-msgstr "최대 각도 오류:"
+msgstr "최대 각도 오류"
#: editor/import/resource_importer_scene.cpp
#, fuzzy
@@ -7149,9 +7136,8 @@ msgstr "애니메이션 클립"
#: editor/import/resource_importer_scene.cpp scene/2d/cpu_particles_2d.cpp
#: scene/2d/particles_2d.cpp scene/3d/area.cpp scene/3d/cpu_particles.cpp
#: scene/3d/particles.cpp scene/resources/environment.cpp
-#, fuzzy
msgid "Amount"
-msgstr "양:"
+msgstr "양"
#: editor/import/resource_importer_scene.cpp
#: editor/plugins/mesh_library_editor_plugin.cpp
@@ -7167,9 +7153,8 @@ msgid "Generating Lightmaps"
msgstr "라이트맵 생성 중"
#: editor/import/resource_importer_scene.cpp
-#, fuzzy
msgid "Generating for Mesh:"
-msgstr "메시 용으로 생성 중: "
+msgstr "메시 용으로 생성 중:"
#: editor/import/resource_importer_scene.cpp
msgid "Running Custom Script..."
@@ -7260,14 +7245,12 @@ msgid "Invert Color"
msgstr "꼭짓점"
#: editor/import/resource_importer_texture.cpp
-#, fuzzy
msgid "Normal Map Invert Y"
-msgstr "무작위 스케일:"
+msgstr "노멀 맵 Y축 반전"
#: editor/import/resource_importer_texture.cpp
-#, fuzzy
msgid "Size Limit"
-msgstr "크기: "
+msgstr "크기 제한"
#: editor/import/resource_importer_texture.cpp
msgid "Detect 3D"
@@ -7285,14 +7268,12 @@ msgid ""
msgstr ""
#: editor/import/resource_importer_texture_atlas.cpp
-#, fuzzy
msgid "Atlas File"
-msgstr "윤곽선 크기:"
+msgstr "아틀라스 파일"
#: editor/import/resource_importer_texture_atlas.cpp
-#, fuzzy
msgid "Import Mode"
-msgstr "내보내기 모드:"
+msgstr "가져오기 모드"
#: editor/import/resource_importer_texture_atlas.cpp
#, fuzzy
@@ -8184,9 +8165,8 @@ msgid "Set the end animation. This is useful for sub-transitions."
msgstr "끝 애니메이션을 설정합니다. 이것은 하위 전환에 유용합니다."
#: editor/plugins/animation_state_machine_editor.cpp
-#, fuzzy
msgid "Transition:"
-msgstr "전환: "
+msgstr "전환:"
#: editor/plugins/animation_state_machine_editor.cpp
msgid "Play Mode:"
@@ -9950,9 +9930,8 @@ msgid "Volume"
msgstr "볼륨"
#: editor/plugins/particles_editor_plugin.cpp
-#, fuzzy
msgid "Emission Source:"
-msgstr "방출 소스: "
+msgstr "방출 소스:"
#: editor/plugins/particles_editor_plugin.cpp
msgid "A processor material of type 'ParticlesMaterial' is required."
@@ -10668,9 +10647,8 @@ msgid "Script Temperature History Size"
msgstr ""
#: editor/plugins/script_editor_plugin.cpp
-#, fuzzy
msgid "Current Script Background Color"
-msgstr "잘못된 배경 색상."
+msgstr "현재 스크립트 배경 색"
#: editor/plugins/script_editor_plugin.cpp
#, fuzzy
@@ -12870,9 +12848,8 @@ msgstr "스냅 설정"
#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp
#: scene/main/canvas_layer.cpp scene/resources/material.cpp
#: scene/resources/particles_material.cpp scene/resources/style_box.cpp
-#, fuzzy
msgid "Offset"
-msgstr "오프셋:"
+msgstr "오프셋"
#: editor/plugins/tile_set_editor_plugin.cpp editor/rename_dialog.cpp
#: scene/gui/range.cpp scene/resources/animation.cpp
@@ -12911,9 +12888,8 @@ msgstr "격자 오프셋:"
#: editor/plugins/tile_set_editor_plugin.cpp modules/csg/csg_shape.cpp
#: scene/2d/canvas_item.cpp scene/2d/particles_2d.cpp
#: scene/3d/mesh_instance.cpp scene/resources/primitive_meshes.cpp
-#, fuzzy
msgid "Material"
-msgstr "머티리얼 바꾸기:"
+msgstr "머티리얼"
#: editor/plugins/tile_set_editor_plugin.cpp scene/2d/canvas_item.cpp
#: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp scene/resources/style_box.cpp
@@ -13025,9 +13001,8 @@ msgid "Unstaged Changes"
msgstr "셰이더 바꾸기:"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Commit:"
-msgstr "커밋"
+msgstr "커밋:"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Date:"
@@ -13061,92 +13036,80 @@ msgid "Initialize"
msgstr "초기화"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Remote Login"
-msgstr "점 제거"
+msgstr "원격 로그인"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Select SSH public key path"
-msgstr ""
+msgstr "SSH 공개키의 경로를 선택하세요"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Select SSH private key path"
-msgstr ""
+msgstr "SSH 비밀키의 경로를 선택하세요"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "SSH Passphrase"
-msgstr "SSH Passphrase"
+msgstr "SSH 암호"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Detect new changes"
msgstr "새 변경사항 감지"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Discard all changes"
-msgstr "변경사항을 저장하고 닫을까요?"
+msgstr "모든 변경사항 버리기"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Stage all changes"
-msgstr "로컬 변경사항을 저장하는 중..."
+msgstr "모든 변경사항 스테이징"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Unstage all changes"
-msgstr "머티리얼 바꾸기:"
+msgstr "모든 변경사항 스테이징 취소"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Commit Message"
-msgstr "커밋 변경사항"
+msgstr "커밋 메세지"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Commit Changes"
msgstr "커밋 변경사항"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Commit List"
-msgstr "커밋"
+msgstr "커밋 목록"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Commit list size"
-msgstr ""
+msgstr "커밋 목록 크기"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Branches"
-msgstr "일치함:"
+msgstr "브랜치"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Create New Branch"
-msgstr "새 프로젝트 만들기"
+msgstr "새 브랜치 생성"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Remove Branch"
-msgstr "애니메이션 트랙 제거"
+msgstr "브랜치 삭제"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Branch Name"
-msgstr ""
+msgstr "브랜치 이름"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Remotes"
msgstr "원격"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Create New Remote"
-msgstr "새 프로젝트 만들기"
+msgstr "새 원격 추가"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Remove Remote"
-msgstr "항목 제거"
+msgstr "원격 제거"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Remote Name"
@@ -13158,20 +13121,19 @@ msgstr "원격 URL"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Fetch"
-msgstr ""
+msgstr "페치"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Pull"
-msgstr ""
+msgstr "풀"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Push"
-msgstr ""
+msgstr "푸시"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Force Push"
-msgstr "원본 메시:"
+msgstr "강제 푸시"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Modified"
@@ -13191,22 +13153,19 @@ msgstr "타입체인지"
#: editor/plugins/version_control_editor_plugin.cpp
msgid "Unmerged"
-msgstr ""
+msgstr "미병합"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "View:"
-msgstr "보기"
+msgstr "보기:"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Split"
-msgstr "경로 가르기"
+msgstr "분할"
#: editor/plugins/version_control_editor_plugin.cpp
-#, fuzzy
msgid "Unified"
-msgstr "수정됨"
+msgstr "통합됨"
#: editor/plugins/visual_shader_editor_plugin.cpp
msgid "(GLES3 only)"
@@ -14200,28 +14159,24 @@ msgid "More Info..."
msgstr "여기로 이동..."
#: editor/project_export.cpp
-#, fuzzy
msgid "Export PCK/Zip..."
-msgstr "PCK/Zip 내보내기"
+msgstr "PCK/Zip 내보내기..."
#: editor/project_export.cpp
-#, fuzzy
msgid "Export Project..."
-msgstr "프로젝트 내보내기"
+msgstr "프로젝트 내보내기..."
#: editor/project_export.cpp
msgid "Export All"
msgstr "모두 내보내기"
#: editor/project_export.cpp
-#, fuzzy
msgid "Choose an export mode:"
-msgstr "비어있는 폴더를 선택해주세요."
+msgstr "내보내기 모드를 선택하세요:"
#: editor/project_export.cpp
-#, fuzzy
msgid "Export All..."
-msgstr "모두 내보내기"
+msgstr "모두 내보내기..."
#: editor/project_export.cpp editor/project_manager.cpp
msgid "ZIP File"
@@ -15332,9 +15287,8 @@ msgid "Make Local"
msgstr "로컬로 만들기"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Enable Scene Unique Name(s)"
-msgstr "노드 이름:"
+msgstr "씬 고유 이름 활성화"
#: editor/scene_tree_dock.cpp
#, fuzzy
@@ -15342,9 +15296,8 @@ msgid "Unique names already used by another node in the scene:"
msgstr "이미 다른 함수/변수/시그널로 사용된 이름:"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Disable Scene Unique Name(s)"
-msgstr "노드 이름:"
+msgstr "씬 고유 이름 비활성화"
#: editor/scene_tree_dock.cpp
msgid "New Scene Root"
@@ -15542,9 +15495,8 @@ msgid "Button Group"
msgstr "버튼 그룹"
#: editor/scene_tree_editor.cpp
-#, fuzzy
msgid "Disable Scene Unique Name"
-msgstr "노드 이름:"
+msgstr "씬 고유 이름 비활성화"
#: editor/scene_tree_editor.cpp
msgid "(Connecting From)"
@@ -15774,9 +15726,8 @@ msgid "Attach Node Script"
msgstr "노드 스크립트 붙이기"
#: editor/script_editor_debugger.cpp
-#, fuzzy
msgid "Remote %s:"
-msgstr "원격 "
+msgstr "원격 %s:"
#: editor/script_editor_debugger.cpp
msgid "Bytes:"
@@ -16010,9 +15961,8 @@ msgid "GI Probe"
msgstr "GI 프로브 굽기"
#: editor/spatial_editor_gizmos.cpp
-#, fuzzy
msgid "Baked Indirect Light"
-msgstr "간접 조명"
+msgstr "구운 간접 조명"
#: editor/spatial_editor_gizmos.cpp modules/csg/csg_gizmos.cpp
msgid "Change Sphere Shape Radius"
@@ -16228,9 +16178,8 @@ msgid "Driver"
msgstr ""
#: main/main.cpp
-#, fuzzy
msgid "Driver Name"
-msgstr "스크립트 이름:"
+msgstr "드라이버 이름"
#: main/main.cpp
msgid "Fallback To GLES2"
@@ -16315,9 +16264,8 @@ msgid "Physics FPS"
msgstr "물리 프레임 %"
#: main/main.cpp
-#, fuzzy
msgid "Force FPS"
-msgstr "원본 메시:"
+msgstr "FPS 강제"
#: main/main.cpp
msgid "Enable Pause Aware Picking"
@@ -16432,9 +16380,8 @@ msgid "Fullsize"
msgstr ""
#: main/main.cpp scene/resources/dynamic_font.cpp
-#, fuzzy
msgid "Use Filter"
-msgstr "필터:"
+msgstr "필터 사용"
#: main/main.cpp scene/resources/style_box.cpp
#, fuzzy
@@ -16481,9 +16428,8 @@ msgid "Custom Image Hotspot"
msgstr ""
#: main/main.cpp
-#, fuzzy
msgid "Tooltip Position Offset"
-msgstr "회전 오프셋:"
+msgstr "툴팁 위치 오프셋"
#: main/main.cpp modules/mono/mono_gd/gd_mono.cpp
#, fuzzy
@@ -16496,9 +16442,8 @@ msgid "Wait For Debugger"
msgstr "디버거"
#: main/main.cpp modules/mono/mono_gd/gd_mono.cpp
-#, fuzzy
msgid "Wait Timeout"
-msgstr "시간 초과."
+msgstr "대기 타임아웃"
#: main/main.cpp
msgid "Runtime"
@@ -16612,9 +16557,8 @@ msgstr "대소문자 변환"
#: scene/resources/cylinder_shape.cpp scene/resources/environment.cpp
#: scene/resources/navigation_mesh.cpp scene/resources/primitive_meshes.cpp
#: scene/resources/sphere_shape.cpp
-#, fuzzy
msgid "Radius"
-msgstr "반지름:"
+msgstr "반지름"
#: modules/csg/csg_shape.cpp scene/resources/primitive_meshes.cpp
#, fuzzy
@@ -16758,9 +16702,8 @@ msgid "Use FBX"
msgstr ""
#: modules/gdnative/gdnative.cpp
-#, fuzzy
msgid "Config File"
-msgstr "저장하려는 파일:"
+msgstr "설정 파일"
#: modules/gdnative/gdnative.cpp
#, fuzzy
@@ -16834,19 +16777,16 @@ msgid "Disabled GDNative Singleton"
msgstr "비활성화된 GDNative 싱글톤"
#: modules/gdnative/gdnative_library_singleton_editor.cpp
-#, fuzzy
msgid "Libraries:"
-msgstr "라이브러리: "
+msgstr "라이브러리:"
#: modules/gdnative/nativescript/nativescript.cpp
-#, fuzzy
msgid "Class Name"
-msgstr "클래스 이름:"
+msgstr "클래스 이름"
#: modules/gdnative/nativescript/nativescript.cpp
-#, fuzzy
msgid "Script Class"
-msgstr "스크립트 이름:"
+msgstr "스크립트 클래스"
#: modules/gdnative/nativescript/nativescript.cpp
#, fuzzy
@@ -16925,9 +16865,8 @@ msgid "Object can't provide a length."
msgstr "오브젝트는 길이를 제공할 수 없습니다."
#: modules/gdscript/language_server/gdscript_language_server.cpp
-#, fuzzy
msgid "Language Server"
-msgstr "언어:"
+msgstr "언어 서버"
#: modules/gdscript/language_server/gdscript_language_server.cpp
#, fuzzy
@@ -16956,9 +16895,8 @@ msgid "Buffer View"
msgstr "후면 뷰"
#: modules/gltf/gltf_accessor.cpp modules/gltf/gltf_buffer_view.cpp
-#, fuzzy
msgid "Byte Offset"
-msgstr "격자 오프셋:"
+msgstr "바이트 오프셋"
#: modules/gltf/gltf_accessor.cpp
#, fuzzy
@@ -16971,9 +16909,8 @@ msgid "Normalized"
msgstr "형식"
#: modules/gltf/gltf_accessor.cpp
-#, fuzzy
msgid "Count"
-msgstr "양:"
+msgstr "양"
#: modules/gltf/gltf_accessor.cpp scene/resources/visual_shader_nodes.cpp
#, fuzzy
@@ -17211,9 +17148,8 @@ msgid "Accessors"
msgstr ""
#: modules/gltf/gltf_state.cpp
-#, fuzzy
msgid "Scene Name"
-msgstr "씬 경로:"
+msgstr "씬 이름"
#: modules/gltf/gltf_state.cpp
#, fuzzy
@@ -17652,9 +17588,8 @@ msgid "Noise"
msgstr ""
#: modules/opensimplex/noise_texture.cpp
-#, fuzzy
msgid "Noise Offset"
-msgstr "격자 오프셋:"
+msgstr "노이즈 오프셋"
#: modules/opensimplex/open_simplex_noise.cpp
msgid "Octaves"
@@ -17683,9 +17618,8 @@ msgid "Names"
msgstr "이름"
#: modules/regex/regex.cpp
-#, fuzzy
msgid "Strings"
-msgstr "설정:"
+msgstr "문자열"
#: modules/upnp/upnp.cpp
msgid "Discover Multicast If"
@@ -17751,9 +17685,8 @@ msgstr ""
"쳐주세요."
#: modules/visual_script/visual_script.cpp
-#, fuzzy
msgid "Node returned an invalid sequence output:"
-msgstr "잘못된 시퀀스 출력을 반환한 노드: "
+msgstr "잘못된 시퀀스 출력을 반환한 노드:"
#: modules/visual_script/visual_script.cpp
msgid "Found sequence bit but not the node in the stack, report bug!"
@@ -18313,9 +18246,8 @@ msgstr "배열 크기 바꾸기"
#: modules/visual_script/visual_script_nodes.cpp scene/resources/material.cpp
#: scene/resources/visual_shader_nodes.cpp
-#, fuzzy
msgid "Operator"
-msgstr "오버레이 연산자."
+msgstr "연산자"
#: modules/visual_script/visual_script_nodes.cpp
#, fuzzy
@@ -18563,9 +18495,8 @@ msgid "CA Chain"
msgstr "IK 체인 지우기"
#: modules/websocket/websocket_server.cpp
-#, fuzzy
msgid "Handshake Timeout"
-msgstr "시간 초과."
+msgstr "핸드쉐이크 타임아웃"
#: modules/webxr/webxr_interface.cpp
#, fuzzy
@@ -18573,14 +18504,12 @@ msgid "Session Mode"
msgstr "영역 모드"
#: modules/webxr/webxr_interface.cpp
-#, fuzzy
msgid "Required Features"
-msgstr "주요 기능:"
+msgstr "필수적 기능"
#: modules/webxr/webxr_interface.cpp
-#, fuzzy
msgid "Optional Features"
-msgstr "주요 기능:"
+msgstr "선택적 기능"
#: modules/webxr/webxr_interface.cpp
msgid "Requested Reference Space Types"
@@ -18742,9 +18671,8 @@ msgid "Package"
msgstr "패킹 중"
#: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp
-#, fuzzy
msgid "Unique Name"
-msgstr "노드 이름:"
+msgstr "고유 이름"
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -18752,9 +18680,8 @@ msgid "Signed"
msgstr "시그널"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Classify As Game"
-msgstr "클래스 이름:"
+msgstr "게임으로 분류"
#: platform/android/export/export_plugin.cpp
msgid "Retain Data On Uninstall"
@@ -18766,9 +18693,8 @@ msgid "Exclude From Recents"
msgstr "노드 삭제"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Graphics"
-msgstr "격자 오프셋:"
+msgstr "그래픽"
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -18838,9 +18764,8 @@ msgid "Command Line"
msgstr "커뮤니티"
#: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp
-#, fuzzy
msgid "Extra Args"
-msgstr "별도의 호출 인수:"
+msgstr "추가적인 인수"
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -19041,14 +18966,12 @@ msgid "Code Signing"
msgstr "시그널"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid ""
"'apksigner' could not be found. Please check that the command is available "
"in the Android SDK build-tools directory. The resulting %s is unsigned."
msgstr ""
-"'apksigner'를 찾을 수 없었습니다.\n"
-"명령이 Android SDK build-tools 디렉토리에서 사용 가능한지 확인해주세요.\n"
-"결과 %s는 서명되지 않습니다."
+"'apksigner'를 찾을 수 없습니다. 명령이 Android SDK build-tools 디렉토리에서 "
+"사용 가능한지 확인해주세요. 결과물 %s는 서명되지 않았습니다."
#: platform/android/export/export_plugin.cpp
msgid "Signing debug %s..."
@@ -19063,9 +18986,8 @@ msgid "Could not find keystore, unable to export."
msgstr "keystore를 찾을 수 없어, 내보낼 수 없었습니다."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not start apksigner executable."
-msgstr "하위 프로세스를 시작할 수 없습니다!"
+msgstr "apksigner 실행 파일을 시작할 수 없습니다."
#: platform/android/export/export_plugin.cpp
msgid "'apksigner' returned with error #%d"
@@ -19096,9 +19018,8 @@ msgid "Invalid filename! Android APK requires the *.apk extension."
msgstr "잘못된 파일이름입니다! Android APK는 *.apk 확장자가 필요합니다."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Unsupported export format!"
-msgstr "지원되지 않는 내보내기 형식입니다!\n"
+msgstr "지원되지 않는 내보내기 형식입니다!"
#: platform/android/export/export_plugin.cpp
msgid ""
@@ -19109,27 +19030,22 @@ msgstr ""
"(Project)' 메뉴에서 다시 설치해주세요."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid ""
"Android build version mismatch: Template installed: %s, Godot version: %s. "
"Please reinstall Android build template from 'Project' menu."
msgstr ""
-"Android 빌드 버전이 맞지 않음:\n"
-" 설치된 템플릿: %s\n"
-" Godot 버전: %s\n"
-"'프로젝트' 메뉴에서 Android 빌드 템플릿을 다시 설치해주세요."
+"Android 빌드 버전이 맞지 않음: 설치된 템플릿: %s, Godot 버전: %s. '프로젝트' "
+"메뉴에서 Android 빌드 템플릿을 다시 설치해주세요."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid ""
"Unable to overwrite res://android/build/res/*.xml files with project name."
msgstr ""
-"res://android/build/res/*.xml 파일을 프로젝트 이름으로 덮어쓸 수 없습니다"
+"res://android/build/res/*.xml 파일을 프로젝트 이름으로 덮어쓸 수 없습니다."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not export project files to gradle project."
-msgstr "프로젝트 파일을 gradle 프로젝트로 내보낼 수 없었습니다\n"
+msgstr "프로젝트 파일을 gradle 프로젝트로 내보낼 수 없습니다."
#: platform/android/export/export_plugin.cpp
msgid "Could not write expansion package file!"
@@ -19140,13 +19056,12 @@ msgid "Building Android Project (gradle)"
msgstr "Android 프로젝트 빌드 중 (gradle)"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid ""
"Building of Android project failed, check output for the error. "
"Alternatively visit docs.godotengine.org for Android build documentation."
msgstr ""
-"Android 프로젝트의 빌드에 실패했습니다, 출력된 오류를 확인하세요.\n"
-"또는 docs.godotengine.org에서 Android 빌드 문서를 찾아보세요."
+"Android 프로젝트의 빌드에 실패했습니다, 출력된 오류를 확인하세요. 또는 docs."
+"godotengine.org에서 Android 빌드 문서를 찾아보세요."
#: platform/android/export/export_plugin.cpp
msgid "Moving output"
@@ -19161,20 +19076,16 @@ msgstr ""
"트 디렉토리를 확인하세요."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Package not found: \"%s\"."
-msgstr "패키지를 찾을 수 없음: %s"
+msgstr "패키지를 찾을 수 없음: \"%s\"."
#: platform/android/export/export_plugin.cpp
msgid "Creating APK..."
msgstr "APK를 만드는 중..."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not find template APK to export: \"%s\"."
-msgstr ""
-"내보낼 템플릿 APK를 찾을 수 없음:\n"
-"%s"
+msgstr "내보낼 템플릿 APK를 찾을 수 없음: \"%s\"."
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -19193,9 +19104,8 @@ msgid "Adding files..."
msgstr "파일을 추가하는 중..."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not export project files."
-msgstr "프로젝트 파일을 내보낼 수 없었습니다"
+msgstr "프로젝트 파일을 내보낼 수 없습니다."
#: platform/android/export/export_plugin.cpp
msgid "Aligning APK..."
@@ -19291,9 +19201,8 @@ msgid "Code Sign Identity Release"
msgstr ""
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Export Method Release"
-msgstr "내보내기 모드:"
+msgstr "내보내기 모드 출시"
#: platform/iphone/export/export.cpp
msgid "Targeted Device Family"
@@ -19304,9 +19213,8 @@ msgid "Info"
msgstr ""
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
-#, fuzzy
msgid "Identifier"
-msgstr "잘못된 식별자:"
+msgstr "식별자"
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
#, fuzzy
@@ -19330,14 +19238,12 @@ msgid "Capabilities"
msgstr "속성 붙여넣기"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Access Wi-Fi"
-msgstr "성공!"
+msgstr "Wi-Fi 연결"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Push Notifications"
-msgstr "무작위 회전:"
+msgstr "푸시 알림"
#: platform/iphone/export/export.cpp
#, fuzzy
@@ -19474,19 +19380,16 @@ msgid "Run exported HTML in the system's default browser."
msgstr "내보낸 HTML을 시스템의 기본 브라우저를 사용하여 실행합니다."
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not open template for export: \"%s\"."
-msgstr "내보내기 템플릿을 열 수 없음:"
+msgstr "내보내기 템플릿을 열 수 없음: \"%s\"."
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Invalid export template: \"%s\"."
-msgstr "잘못된 내보내기 템플릿:"
+msgstr "잘못된 내보내기 템플릿: \"%s\"."
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not write file: \"%s\"."
-msgstr "파일에 쓸 수 없음:"
+msgstr "파일에 쓸 수 없음: \"%s\"."
#: platform/javascript/export/export.cpp platform/osx/export/export.cpp
#, fuzzy
@@ -19494,18 +19397,16 @@ msgid "Icon Creation"
msgstr "여백 설정"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not read file: \"%s\"."
-msgstr "파일을 읽을 수 없음:"
+msgstr "파일을 읽을 수 없음: \"%s\"."
#: platform/javascript/export/export.cpp
msgid "PWA"
msgstr ""
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Variant"
-msgstr "간격:"
+msgstr "변종"
#: platform/javascript/export/export.cpp
#, fuzzy
@@ -19577,19 +19478,16 @@ msgid "Icon 512 X 512"
msgstr ""
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not read HTML shell: \"%s\"."
-msgstr "HTML shell을 읽을 수 없음:"
+msgstr "HTML shell을 읽을 수 없음: \"%s\"."
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not create HTTP server directory: %s."
-msgstr "HTTP 서버 디렉토리를 만들 수 없음:"
+msgstr "HTTP 서버 디렉토리를 만들 수 없음: %s."
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Error starting HTTP server: %d."
-msgstr "HTTP 서버를 시작하는 중 오류:"
+msgstr "HTTP 서버를 시작하는 중 오류: %d."
#: platform/javascript/export/export.cpp
msgid "Web"
@@ -19693,9 +19591,8 @@ msgid "Unknown object type."
msgstr ""
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "App Category"
-msgstr "카테고리:"
+msgstr "앱 카테고리"
#: platform/osx/export/export.cpp
msgid "High Res"
@@ -19888,14 +19785,12 @@ msgid "Apple Team ID"
msgstr ""
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Could not open icon file \"%s\"."
-msgstr "프로젝트 파일을 내보낼 수 없었습니다"
+msgstr "아이콘 파일 \"%s\"를 열 수 없습니다."
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Could not start xcrun executable."
-msgstr "하위 프로세스를 시작할 수 없습니다!"
+msgstr "xcrun 실행 파일을 시작하지 못했습니다."
#: platform/osx/export/export.cpp
#, fuzzy
@@ -19953,9 +19848,8 @@ msgid "No identity found."
msgstr "아이콘을 찾을 수 없습니다."
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Cannot sign file %s."
-msgstr "파일 저장 중 오류: %s"
+msgstr "파일 %s를 서명할 수 없습니다."
#: platform/osx/export/export.cpp
msgid "Relative symlinks are not supported, exported \"%s\" might be broken!"
@@ -20374,9 +20268,8 @@ msgid "Debug Algorithm"
msgstr "디버거"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Failed to rename temporary file \"%s\"."
-msgstr "임시 파일을 제거할 수 없음:"
+msgstr "임시 파일 \"%s\"의 이름을 바꾸지 못했습니다."
#: platform/windows/export/export.cpp
msgid "Identity Type"
@@ -20402,19 +20295,16 @@ msgid "File Version"
msgstr "버전"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Product Version"
-msgstr "잘못된 제품 GUID."
+msgstr "제품 버전"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Company Name"
-msgstr "노드 이름:"
+msgstr "회사 이름"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Product Name"
-msgstr "프로젝트 이름:"
+msgstr "제품 이름"
#: platform/windows/export/export.cpp
#, fuzzy
@@ -20426,9 +20316,8 @@ msgid "Trademarks"
msgstr ""
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Resources Modification"
-msgstr "무작위 회전:"
+msgstr "리소스 변경"
#: platform/windows/export/export.cpp
#, fuzzy
@@ -20463,9 +20352,8 @@ msgid "Could not find osslsigncode executable at \"%s\"."
msgstr "keystore를 찾을 수 없어, 내보낼 수 없었습니다."
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Invalid identity type."
-msgstr "잘못된 식별자:"
+msgstr "잘못된 식별자 타입입니다."
#: platform/windows/export/export.cpp
#, fuzzy
@@ -20485,9 +20373,8 @@ msgid "Signtool failed to sign executable: %s."
msgstr "잘못된 확장자."
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Failed to remove temporary file \"%s\"."
-msgstr "임시 파일을 제거할 수 없음:"
+msgstr "임시 파일 \"%s\"를 제거하지 못했습니다."
#: platform/windows/export/export.cpp
msgid ""
@@ -20496,19 +20383,16 @@ msgid ""
msgstr ""
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Invalid icon path:"
-msgstr "잘못된 경로."
+msgstr "잘못된 아이콘 경로:"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Invalid file version:"
-msgstr "잘못된 확장자."
+msgstr "잘못된 파일 버전:"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Invalid product version:"
-msgstr "잘못된 제품 GUID."
+msgstr "잘못된 제품 버전:"
#: platform/windows/export/export.cpp
msgid "Windows executables cannot be >= 4 GiB."
@@ -20674,9 +20558,8 @@ msgstr ""
#: scene/3d/light.cpp scene/3d/reflection_probe.cpp
#: scene/3d/visibility_notifier.cpp scene/3d/visual_instance.cpp
#: scene/resources/material.cpp
-#, fuzzy
msgid "Max Distance"
-msgstr "거리 선택:"
+msgstr "최대 거리"
#: scene/2d/audio_stream_player_2d.cpp scene/3d/light.cpp
#, fuzzy
@@ -20710,9 +20593,8 @@ msgstr "회전 단계:"
#: scene/2d/camera_2d.cpp scene/2d/listener_2d.cpp scene/3d/camera.cpp
#: scene/3d/listener.cpp scene/animation/animation_blend_tree.cpp
-#, fuzzy
msgid "Current"
-msgstr "현재:"
+msgstr "현재"
#: scene/2d/camera_2d.cpp scene/gui/graph_edit.cpp
#, fuzzy
@@ -21009,9 +20891,8 @@ msgstr ""
#: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp
#: scene/3d/cpu_particles.cpp scene/3d/particles.cpp
-#, fuzzy
msgid "Randomness"
-msgstr "임의 재시작 (초):"
+msgstr "무작위성"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
@@ -21502,9 +21383,8 @@ msgid "Target Desired Distance"
msgstr ""
#: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp
-#, fuzzy
msgid "Path Max Distance"
-msgstr "거리 선택:"
+msgstr "경로 최대 거리"
#: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp
#, fuzzy
@@ -21530,9 +21410,8 @@ msgid "Time Horizon"
msgstr "수평으로 뒤집기"
#: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp
-#, fuzzy
msgid "Max Speed"
-msgstr "속도:"
+msgstr "최대 속도"
#: scene/2d/navigation_agent_2d.cpp
msgid ""
@@ -21574,9 +21453,8 @@ msgstr "진행"
#: scene/2d/node_2d.cpp scene/2d/polygon_2d.cpp scene/3d/spatial.cpp
#: scene/main/canvas_layer.cpp
-#, fuzzy
msgid "Rotation Degrees"
-msgstr "%s도로 회전."
+msgstr "회전 각도"
#: scene/2d/node_2d.cpp scene/3d/spatial.cpp
#, fuzzy
@@ -21584,14 +21462,12 @@ msgid "Global Rotation"
msgstr "상수"
#: scene/2d/node_2d.cpp
-#, fuzzy
msgid "Global Rotation Degrees"
-msgstr "%s도로 회전."
+msgstr "전역 회전 각도"
#: scene/2d/node_2d.cpp
-#, fuzzy
msgid "Global Scale"
-msgstr "무작위 스케일:"
+msgstr "전역 스케일"
#: scene/2d/node_2d.cpp scene/3d/spatial.cpp
#, fuzzy
@@ -21609,9 +21485,8 @@ msgid "Scroll"
msgstr ""
#: scene/2d/parallax_background.cpp
-#, fuzzy
msgid "Base Offset"
-msgstr "오프셋:"
+msgstr "기본 오프셋"
#: scene/2d/parallax_background.cpp
#, fuzzy
@@ -21705,19 +21580,16 @@ msgid "PathFollow2D only works when set as a child of a Path2D node."
msgstr "PathFollow2D는 Path2D 노드의 자식 노드로 있을 때만 작동합니다."
#: scene/2d/path_2d.cpp scene/3d/path.cpp
-#, fuzzy
msgid "Unit Offset"
-msgstr "격자 오프셋:"
+msgstr "단위 오프셋"
#: scene/2d/path_2d.cpp scene/3d/camera.cpp scene/3d/path.cpp
-#, fuzzy
msgid "H Offset"
-msgstr "오프셋:"
+msgstr "가로 오프셋"
#: scene/2d/path_2d.cpp scene/3d/camera.cpp scene/3d/path.cpp
-#, fuzzy
msgid "V Offset"
-msgstr "오프셋:"
+msgstr "세로 오프셋"
#: scene/2d/path_2d.cpp scene/3d/path.cpp
msgid "Cubic Interp"
@@ -21778,9 +21650,8 @@ msgid "Mass"
msgstr ""
#: scene/2d/physics_body_2d.cpp
-#, fuzzy
msgid "Inertia"
-msgstr "수직:"
+msgstr "관성"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
#, fuzzy
@@ -21817,9 +21688,8 @@ msgid "Sleeping"
msgstr "스마트 스냅"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
-#, fuzzy
msgid "Can Sleep"
-msgstr "속도:"
+msgstr "슬립 가능"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
msgid "Damp"
@@ -21843,9 +21713,8 @@ msgid "Safe Margin"
msgstr "여백 설정"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
-#, fuzzy
msgid "Sync To Physics"
-msgstr " (물리)"
+msgstr "물리에 연동"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
#, fuzzy
@@ -21865,9 +21734,8 @@ msgid "Normal"
msgstr "형식"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
-#, fuzzy
msgid "Remainder"
-msgstr "렌더러:"
+msgstr "나머지"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
#, fuzzy
@@ -21917,14 +21785,12 @@ msgid "Invert"
msgstr ""
#: scene/2d/polygon_2d.cpp
-#, fuzzy
msgid "Vertex Colors"
-msgstr "꼭짓점"
+msgstr "꼭짓점 색"
#: scene/2d/polygon_2d.cpp
-#, fuzzy
msgid "Internal Vertex Count"
-msgstr "내부 꼭짓점 만들기"
+msgstr "내부 꼭짓점 개수"
#: scene/2d/position_2d.cpp
#, fuzzy
@@ -22184,9 +22050,8 @@ msgid "ARVROrigin requires an ARVRCamera child node."
msgstr "ARVROrigin은 자식으로 ARVRCamera 노드가 필요합니다."
#: scene/3d/arvr_nodes.cpp servers/arvr_server.cpp
-#, fuzzy
msgid "World Scale"
-msgstr "무작위 스케일:"
+msgstr "세계 크기"
#: scene/3d/audio_stream_player_3d.cpp
#, fuzzy
@@ -22215,9 +22080,8 @@ msgid "Emission Angle"
msgstr "방출 색상"
#: scene/3d/audio_stream_player_3d.cpp
-#, fuzzy
msgid "Degrees"
-msgstr "%s도로 회전."
+msgstr "각도"
#: scene/3d/audio_stream_player_3d.cpp
#, fuzzy
@@ -22236,9 +22100,8 @@ msgstr ""
#: scene/3d/audio_stream_player_3d.cpp
#: servers/audio/effects/audio_effect_filter.cpp
-#, fuzzy
msgid "dB"
-msgstr "B"
+msgstr "dB"
#: scene/3d/audio_stream_player_3d.cpp
#, fuzzy
@@ -22299,9 +22162,8 @@ msgid "Bounce Indirect Energy"
msgstr ""
#: scene/3d/baked_lightmap.cpp
-#, fuzzy
msgid "Use Denoiser"
-msgstr "필터:"
+msgstr "노이즈 감소 사용"
#: scene/3d/baked_lightmap.cpp scene/resources/texture.cpp
msgid "Use HDR"
@@ -22328,9 +22190,8 @@ msgid "Generate"
msgstr "일반"
#: scene/3d/baked_lightmap.cpp
-#, fuzzy
msgid "Max Size"
-msgstr "크기:"
+msgstr "최대 크기"
#: scene/3d/baked_lightmap.cpp
#, fuzzy
@@ -25901,9 +25762,8 @@ msgid "Title Height"
msgstr "테스트"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Close Highlight"
-msgstr "직접 조명"
+msgstr "강조 닫기"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -26162,9 +26022,8 @@ msgid "Menu"
msgstr ""
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Menu Highlight"
-msgstr "직접 조명"
+msgstr "메뉴 강조"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -26779,9 +26638,8 @@ msgid "Unshaded"
msgstr "셰이더 없음 표시"
#: scene/resources/material.cpp
-#, fuzzy
msgid "Vertex Lighting"
-msgstr "직접 조명"
+msgstr "꼭짓점 조명"
#: scene/resources/material.cpp
#, fuzzy
@@ -26815,9 +26673,8 @@ msgid "Albedo Tex MSDF"
msgstr ""
#: scene/resources/material.cpp
-#, fuzzy
msgid "Vertex Color"
-msgstr "꼭짓점"
+msgstr "꼭짓점 색"
#: scene/resources/material.cpp
msgid "Use As Albedo"
diff --git a/editor/translations/nl.po b/editor/translations/nl.po
index 9410069ae4..2b09ed5abc 100644
--- a/editor/translations/nl.po
+++ b/editor/translations/nl.po
@@ -65,7 +65,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: 2022-08-30 03:11+0000\n"
+"PO-Revision-Date: 2022-09-23 04:16+0000\n"
"Last-Translator: Nnn <irri2020@outlook.com>\n"
"Language-Team: Dutch <https://hosted.weblate.org/projects/godot-engine/godot/"
"nl/>\n"
@@ -74,7 +74,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.14.1-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -249,9 +249,8 @@ msgstr ""
#: modules/visual_script/visual_script_func_nodes.cpp
#: modules/visual_script/visual_script_nodes.cpp
#: scene/resources/visual_shader_nodes.cpp
-#, fuzzy
msgid "Function"
-msgstr "Functies"
+msgstr "Functie"
#: core/image.cpp core/packed_data_container.cpp scene/2d/polygon_2d.cpp
#: scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp
@@ -263,14 +262,12 @@ msgstr ""
#: modules/gdscript/language_server/gdscript_language_server.cpp
#: modules/webrtc/webrtc_data_channel.h modules/websocket/websocket_macros.h
#: scene/gui/file_dialog.cpp
-#, fuzzy
msgid "Network"
-msgstr "Netwerk Profiler"
+msgstr "Netwerk"
#: core/io/file_access_network.cpp
-#, fuzzy
msgid "Remote FS"
-msgstr "Remote "
+msgstr "Remote"
#: core/io/file_access_network.cpp
msgid "Page Size"
@@ -293,14 +290,12 @@ msgid "Read Chunk Size"
msgstr ""
#: core/io/marshalls.cpp
-#, fuzzy
msgid "Object ID"
-msgstr "Objecten Getekend"
+msgstr "Object ID"
#: core/io/multiplayer_api.cpp core/io/packet_peer.cpp
-#, fuzzy
msgid "Allow Object Decoding"
-msgstr "\"Onion Skinning\" Inschakelen"
+msgstr "Object Decoding Toestaan"
#: core/io/multiplayer_api.cpp scene/main/scene_tree.cpp
msgid "Refuse New Network Connections"
@@ -317,9 +312,8 @@ msgid "Root Node"
msgstr "Wortelknoopnaam"
#: core/io/networked_multiplayer_peer.cpp
-#, fuzzy
msgid "Refuse New Connections"
-msgstr "Verbinden"
+msgstr "Nieuwe Verbindingen Weigeren"
#: core/io/networked_multiplayer_peer.cpp
#, fuzzy
@@ -411,7 +405,6 @@ msgid "Seed"
msgstr ""
#: core/math/random_number_generator.cpp
-#, fuzzy
msgid "State"
msgstr "Status"
@@ -424,9 +417,8 @@ msgid "Max Size (KB)"
msgstr ""
#: core/os/input.cpp
-#, fuzzy
msgid "Mouse Mode"
-msgstr "Verplaatsingsmodus"
+msgstr "Muismodus"
#: core/os/input.cpp
#, fuzzy
@@ -457,21 +449,18 @@ msgid "Meta"
msgstr ""
#: core/os/input_event.cpp
-#, fuzzy
msgid "Command"
-msgstr "Gemeenschap"
+msgstr "Commando"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Physical"
-msgstr "Physics Frame %"
+msgstr "Fysiek"
#: core/os/input_event.cpp scene/2d/touch_screen_button.cpp
#: scene/gui/base_button.cpp scene/gui/texture_button.cpp
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Pressed"
-msgstr "Voorinstellingen"
+msgstr "Gedrukt"
#: core/os/input_event.cpp
msgid "Scancode"
@@ -490,24 +479,20 @@ msgid "Echo"
msgstr ""
#: core/os/input_event.cpp scene/gui/base_button.cpp
-#, fuzzy
msgid "Button Mask"
-msgstr "Button (Knop)"
+msgstr "Knop Masker"
#: core/os/input_event.cpp scene/2d/node_2d.cpp scene/gui/control.cpp
-#, fuzzy
msgid "Global Position"
-msgstr "Constante"
+msgstr "Globale Positie"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Factor"
-msgstr "Vector"
+msgstr "Factor"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Button Index"
-msgstr "Muis Knop Index:"
+msgstr "Knop Index"
#: core/os/input_event.cpp
msgid "Doubleclick"
@@ -518,26 +503,23 @@ msgid "Tilt"
msgstr ""
#: core/os/input_event.cpp
-#, fuzzy
msgid "Pressure"
-msgstr "Voorinstellingen"
+msgstr "Druk"
#: core/os/input_event.cpp
msgid "Pen Inverted"
msgstr ""
#: core/os/input_event.cpp
-#, fuzzy
msgid "Relative"
-msgstr "Relatief kleven"
+msgstr "Relatief"
#: core/os/input_event.cpp scene/2d/camera_2d.cpp scene/2d/cpu_particles_2d.cpp
#: scene/3d/cpu_particles.cpp scene/3d/interpolated_camera.cpp
#: scene/animation/animation_player.cpp scene/resources/environment.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Speed"
-msgstr "Snelheid:"
+msgstr "Snelheid"
#: core/os/input_event.cpp editor/project_settings_editor.cpp
#: scene/3d/sprite_3d.cpp
@@ -545,14 +527,12 @@ msgid "Axis"
msgstr "As"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Axis Value"
-msgstr "Waarde vastzetten"
+msgstr "As Waarde"
#: core/os/input_event.cpp modules/visual_script/visual_script_func_nodes.cpp
-#, fuzzy
msgid "Index"
-msgstr "Index:"
+msgstr "Index"
#: core/os/input_event.cpp editor/project_settings_editor.cpp
#: modules/visual_script/visual_script_nodes.cpp
@@ -570,14 +550,12 @@ msgid "Delta"
msgstr ""
#: core/os/input_event.cpp
-#, fuzzy
msgid "Channel"
-msgstr "Wijzig"
+msgstr "Kanaal"
#: core/os/input_event.cpp main/main.cpp
-#, fuzzy
msgid "Message"
-msgstr "Commit veranderingen"
+msgstr "Bericht"
#: core/os/input_event.cpp
#, fuzzy
@@ -587,18 +565,16 @@ msgstr "Pitch"
#: core/os/input_event.cpp scene/2d/cpu_particles_2d.cpp
#: scene/2d/physics_body_2d.cpp scene/3d/cpu_particles.cpp
#: scene/3d/physics_body.cpp scene/resources/particles_material.cpp
-#, fuzzy
msgid "Velocity"
-msgstr "Initialiseren"
+msgstr "Versnelling"
#: core/os/input_event.cpp
msgid "Instrument"
msgstr ""
#: core/os/input_event.cpp
-#, fuzzy
msgid "Controller Number"
-msgstr "Regelnummer:"
+msgstr "Controller Nummer"
#: core/os/input_event.cpp
msgid "Controller Value"
@@ -607,14 +583,12 @@ msgstr ""
#: core/project_settings.cpp editor/editor_node.cpp main/main.cpp
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Application"
-msgstr "Actie"
+msgstr "Applicatie"
#: core/project_settings.cpp main/main.cpp
-#, fuzzy
msgid "Config"
-msgstr "Kleven instellen"
+msgstr "Configuratie"
#: core/project_settings.cpp
#, fuzzy
@@ -653,14 +627,12 @@ msgid "Main Scene"
msgstr "Startscène"
#: core/project_settings.cpp
-#, fuzzy
msgid "Disable stdout"
-msgstr "Autotile uitschakelen"
+msgstr "Stdout Uitschakelen"
#: core/project_settings.cpp
-#, fuzzy
msgid "Disable stderr"
-msgstr "Item Uitschakelen"
+msgstr "Stderr Uitschakelen"
#: core/project_settings.cpp
msgid "Use Hidden Project Data Directory"
@@ -677,9 +649,8 @@ msgstr ""
#: core/project_settings.cpp main/main.cpp
#: platform/javascript/export/export.cpp platform/osx/export/export.cpp
#: platform/uwp/os_uwp.cpp
-#, fuzzy
msgid "Display"
-msgstr "Alles tonen"
+msgstr "Tonen"
#: core/project_settings.cpp main/main.cpp modules/csg/csg_shape.cpp
#: modules/opensimplex/noise_texture.cpp scene/2d/line_2d.cpp
@@ -693,23 +664,20 @@ msgstr ""
#: scene/resources/capsule_shape_2d.cpp scene/resources/cylinder_shape.cpp
#: scene/resources/font.cpp scene/resources/navigation_mesh.cpp
#: scene/resources/primitive_meshes.cpp scene/resources/texture.cpp
-#, fuzzy
msgid "Height"
-msgstr "Licht"
+msgstr "Hoogte"
#: core/project_settings.cpp
msgid "Always On Top"
msgstr ""
#: core/project_settings.cpp
-#, fuzzy
msgid "Test Width"
-msgstr "Linkerbreedte"
+msgstr "Test Breedte"
#: core/project_settings.cpp
-#, fuzzy
msgid "Test Height"
-msgstr "Testen"
+msgstr "Test Hoogte"
#: core/project_settings.cpp editor/animation_track_editor.cpp
#: editor/editor_audio_buses.cpp main/main.cpp servers/audio_server.cpp
@@ -752,58 +720,49 @@ msgid "Version Control Autoload On Startup"
msgstr "Versiebeheersysteem"
#: core/project_settings.cpp
-#, fuzzy
msgid "Version Control Plugin Name"
-msgstr "Versiebeheer"
+msgstr "Versiebeheer Controle Plugin Naam"
#: core/project_settings.cpp scene/2d/collision_object_2d.cpp
#: scene/3d/collision_object.cpp scene/gui/control.cpp
-#, fuzzy
msgid "Input"
-msgstr "Voeg invoer toe"
+msgstr "Invoer"
#: core/project_settings.cpp
msgid "UI Accept"
msgstr ""
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Select"
-msgstr "Selecteer"
+msgstr "UI Selecteer"
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Cancel"
-msgstr "Annuleer"
+msgstr "UI Annuleer"
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Focus Next"
-msgstr "Focus Pad"
+msgstr "UI Focus Volgende"
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Focus Prev"
-msgstr "Focus Pad"
+msgstr "UI Focus Vorige"
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Left"
-msgstr "Linksboven"
+msgstr "UI Links"
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Right"
-msgstr "Rechtsboves"
+msgstr "UI Rechts"
#: core/project_settings.cpp
msgid "UI Up"
msgstr ""
#: core/project_settings.cpp
-#, fuzzy
msgid "UI Down"
-msgstr "Omlaag"
+msgstr "UI Omlaag"
#: core/project_settings.cpp
#, fuzzy
diff --git a/editor/translations/pt.po b/editor/translations/pt.po
index 271dcc1e8b..3052fff9bb 100644
--- a/editor/translations/pt.po
+++ b/editor/translations/pt.po
@@ -28,13 +28,14 @@
# Zé Beato Página Oficial <zebeato@gmail.com>, 2022.
# Rafael Testa <rafael1testa@gmail.com>, 2022.
# Baiterson <baiter160@gmail.com>, 2022.
+# Tuily <brizolla.tuily@gmail.com>, 2022.
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: 2022-08-25 13:04+0000\n"
-"Last-Translator: Baiterson <baiter160@gmail.com>\n"
+"PO-Revision-Date: 2022-09-19 05:22+0000\n"
+"Last-Translator: Tuily <brizolla.tuily@gmail.com>\n"
"Language-Team: Portuguese <https://hosted.weblate.org/projects/godot-engine/"
"godot/pt/>\n"
"Language: pt\n"
@@ -42,7 +43,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.14-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -5662,9 +5663,8 @@ msgid "Pick Distance"
msgstr "Escolher Distância"
#: editor/editor_settings.cpp editor/plugins/tile_map_editor_plugin.cpp
-#, fuzzy
msgid "Preview Size"
-msgstr "Pré-visualização"
+msgstr "Tamanho de Pré-visualização"
#: editor/editor_settings.cpp
msgid "Primary Grid Color"
diff --git a/editor/translations/pt_BR.po b/editor/translations/pt_BR.po
index 4541da85ee..30ad718462 100644
--- a/editor/translations/pt_BR.po
+++ b/editor/translations/pt_BR.po
@@ -151,13 +151,15 @@
# Avery <jarreed0@gmail.com>, 2022.
# TheJC <the-green-green.0rvdk@simplelogin.fr>, 2022.
# Mauricio Mazur <mauricio.mazur12@gmail.com>, 2022.
+# ! Zyll <emanueljunior756@gmail.com>, 2022.
+# Kirrby <kirrby.gaming@gmail.com>, 2022.
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: 2022-09-05 11:17+0000\n"
-"Last-Translator: TheJC <the-green-green.0rvdk@simplelogin.fr>\n"
+"PO-Revision-Date: 2022-09-27 21:37+0000\n"
+"Last-Translator: Kirrby <kirrby.gaming@gmail.com>\n"
"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/"
"godot-engine/godot/pt_BR/>\n"
"Language: pt_BR\n"
@@ -165,7 +167,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.14.1-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -1128,7 +1130,7 @@ msgstr "Máximo de luzes renderizáveis"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Max Renderable Reflections"
-msgstr "Máximo de Reflexos renderizáveis"
+msgstr "Max. Reflexões Renderizaveis"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Max Lights Per Object"
@@ -3383,7 +3385,7 @@ msgstr "Mostrar Arquivos Ocultos"
#: editor/editor_file_dialog.cpp
msgid "Disable Overwrite Warning"
-msgstr "Desativar Aviso de Substituição"
+msgstr "Desativar aviso de substituição"
#: editor/editor_file_dialog.cpp
msgid "Go Back"
@@ -3486,7 +3488,7 @@ msgstr "(Re)Importando Assets"
#: editor/editor_file_system.cpp
msgid "Reimport Missing Imported Files"
-msgstr "Reimportar Arquivos Importados Ausentes"
+msgstr "Reimportar arquivos importados perdidos"
#: editor/editor_help.cpp scene/2d/camera_2d.cpp scene/gui/control.cpp
#: scene/gui/nine_patch_rect.cpp scene/resources/dynamic_font.cpp
@@ -3597,7 +3599,7 @@ msgstr "Ajuda"
#: editor/editor_help.cpp
msgid "Sort Functions Alphabetically"
-msgstr "Classificar Funções em Ordem Alfabética"
+msgstr "Ordenar funções alfabéticamente"
#: editor/editor_help_search.cpp editor/editor_node.cpp
#: editor/plugins/script_editor_plugin.cpp
@@ -4402,7 +4404,7 @@ msgstr "Redimensionar se Houver Muitas Guias"
#: editor/editor_node.cpp editor/editor_settings.cpp
msgid "Minimum Width"
-msgstr "Largura Mínima"
+msgstr "Largura mínima"
#: editor/editor_node.cpp editor/editor_settings.cpp
msgid "Output"
@@ -4410,7 +4412,7 @@ msgstr "Saída"
#: editor/editor_node.cpp editor/editor_settings.cpp
msgid "Always Clear Output On Play"
-msgstr "Sempre limpar saída ao jogar"
+msgstr "Sempre Limpar Output no modo Play"
#: editor/editor_node.cpp editor/editor_settings.cpp
msgid "Always Open Output On Play"
@@ -15375,19 +15377,16 @@ msgid "Make Local"
msgstr "Tornar Local"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Enable Scene Unique Name(s)"
-msgstr "Habilitar Nome Único de Cena"
+msgstr "Habilitar Nome(s) Único(s) de Cena"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Unique names already used by another node in the scene:"
-msgstr "Outro nó já está usando este nome único na cena atual."
+msgstr "Nomes únicos já estão sendo usados por outro nó na cena:"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Disable Scene Unique Name(s)"
-msgstr "Desabilitar Nome Único de Cena"
+msgstr "Desabilitar Nome(s) Único(s) de Cena"
#: editor/scene_tree_dock.cpp
msgid "New Scene Root"
@@ -17483,14 +17482,12 @@ msgid "Assembly Name"
msgstr "Nome de Exibição"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "Solution Directory"
-msgstr "Escolha um Diretório"
+msgstr "Diretório da Solução"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "C# Project Directory"
-msgstr "Escolha um Diretório"
+msgstr "Diretório do Projeto C#"
#: modules/mono/mono_gd/gd_mono_utils.cpp
msgid "End of inner exception stack trace"
@@ -17572,8 +17569,9 @@ msgid "As Normal Map"
msgstr "Como Mapa Normal"
#: modules/opensimplex/noise_texture.cpp
+#, fuzzy
msgid "Bump Strength"
-msgstr ""
+msgstr "Força da colisão"
#: modules/opensimplex/noise_texture.cpp
msgid "Noise"
@@ -18454,12 +18452,14 @@ msgid "Optional Features"
msgstr "Funcionalidades Opcionais"
#: modules/webxr/webxr_interface.cpp
+#, fuzzy
msgid "Requested Reference Space Types"
-msgstr ""
+msgstr "Tipos de Espaço de Referência Solicitados"
#: modules/webxr/webxr_interface.cpp
+#, fuzzy
msgid "Reference Space Type"
-msgstr ""
+msgstr "Tipo de Espaço de Referência"
#: modules/webxr/webxr_interface.cpp
msgid "Visibility State"
@@ -18493,8 +18493,9 @@ msgid "Debug Keystore Pass"
msgstr ""
#: platform/android/export/export.cpp
+#, fuzzy
msgid "Force System User"
-msgstr ""
+msgstr "Forçar Usuário do Sistema"
#: platform/android/export/export.cpp
msgid "Shutdown ADB On Exit"
@@ -19090,8 +19091,9 @@ msgid "The character '%s' is not allowed in Identifier."
msgstr "O caractere '%s' não é permitido no identificador."
#: platform/iphone/export/export.cpp
+#, fuzzy
msgid "Landscape Launch Screens"
-msgstr ""
+msgstr "Telas de Inicialização de Paisagem"
#: platform/iphone/export/export.cpp
msgid "iPhone 2436 X 1125"
@@ -19299,9 +19301,8 @@ msgid "Custom BG Color"
msgstr "Cor Personalizada de Fundo"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Export Icons"
-msgstr "Exportar Ícone"
+msgstr "Exportar Ícones"
#: platform/iphone/export/export.cpp platform/javascript/export/export.cpp
#: platform/osx/export/export.cpp
@@ -19520,8 +19521,9 @@ msgid "Invalid executable file."
msgstr "Arquivo executável inválido."
#: platform/osx/export/codesign.cpp
+#, fuzzy
msgid "Can't resize signature load command."
-msgstr ""
+msgstr "Não é possível redimensionar o comando de carregamento da assinatura."
#: platform/osx/export/codesign.cpp
msgid "Failed to create fat binary."
@@ -20124,6 +20126,8 @@ msgid ""
"Godot's Mono version does not support the UWP platform. Use the standard "
"build (no C# support) if you wish to target UWP."
msgstr ""
+"A versão Mono do Godot não suporta a plataforma UWP. Use a build padrão (sem "
+"suporte a C#) se deseja exportar para UWP."
#: platform/uwp/export/export.cpp
msgid "Invalid package short name."
diff --git a/editor/translations/ro.po b/editor/translations/ro.po
index 0dc49c7dba..e01815b513 100644
--- a/editor/translations/ro.po
+++ b/editor/translations/ro.po
@@ -18,13 +18,14 @@
# FlooferLand <yunaflarf@gmail.com>, 2021, 2022.
# N3mEee <n3mebusiness@gmail.com>, 2021.
# Psynt <nichita@cadvegra.com>, 2022.
+# Ilie Adrian Avramescu <himark1977@protonmail.com>, 2022.
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: 2022-05-15 09:38+0000\n"
-"Last-Translator: Psynt <nichita@cadvegra.com>\n"
+"PO-Revision-Date: 2022-09-27 21:37+0000\n"
+"Last-Translator: Ilie Adrian Avramescu <himark1977@protonmail.com>\n"
"Language-Team: Romanian <https://hosted.weblate.org/projects/godot-engine/"
"godot/ro/>\n"
"Language: ro\n"
@@ -33,11 +34,11 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
"20)) ? 1 : 2;\n"
-"X-Generator: Weblate 4.13-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
-msgstr ""
+msgstr "Driver de tableta"
#: core/bind/core_bind.cpp
msgid "Clipboard"
@@ -61,7 +62,7 @@ msgstr "V-Sync Prin Compozitor"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Delta Smoothing"
-msgstr ""
+msgstr "Netezirea Delta"
#: core/bind/core_bind.cpp
#, fuzzy
@@ -70,11 +71,11 @@ msgstr "Mod Mutare"
#: core/bind/core_bind.cpp
msgid "Low Processor Usage Mode Sleep (µsec)"
-msgstr ""
+msgstr "Timp de utilizare scăzut al procesorului (μsec)"
#: core/bind/core_bind.cpp main/main.cpp platform/uwp/os_uwp.cpp
msgid "Keep Screen On"
-msgstr ""
+msgstr "Păstrați ecranul pornit"
#: core/bind/core_bind.cpp
msgid "Min Window Size"
@@ -116,7 +117,7 @@ msgstr "Minimizat"
#: core/bind/core_bind.cpp core/project_settings.cpp scene/gui/dialogs.cpp
#: scene/gui/graph_node.cpp
msgid "Resizable"
-msgstr ""
+msgstr "Redimensionabil"
#: core/bind/core_bind.cpp core/os/input_event.cpp scene/2d/node_2d.cpp
#: scene/2d/physics_body_2d.cpp scene/2d/remote_transform_2d.cpp
@@ -148,7 +149,7 @@ msgstr "Indiciu Editor"
#: core/bind/core_bind.cpp
msgid "Print Error Messages"
-msgstr ""
+msgstr "Imprimare mesaje de eroare"
#: core/bind/core_bind.cpp
msgid "Iterations Per Second"
@@ -159,9 +160,8 @@ msgid "Target FPS"
msgstr "Frecvență Țintă"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Time Scale"
-msgstr "Nod DimensiuneTimp"
+msgstr "Scară de timp"
#: core/bind/core_bind.cpp main/main.cpp
#, fuzzy
@@ -173,22 +173,20 @@ msgid "Error"
msgstr "Eroare"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Error String"
-msgstr "Eroare La Salvarea"
+msgstr "Eroare string"
#: core/bind/core_bind.cpp
msgid "Error Line"
msgstr "Linia Erorii"
#: core/bind/core_bind.cpp
-#, fuzzy
msgid "Result"
-msgstr "Căutați în Ajutor"
+msgstr "Rezultat"
#: core/command_queue_mt.cpp core/message_queue.cpp main/main.cpp
msgid "Memory"
-msgstr ""
+msgstr "Memorie"
#: core/command_queue_mt.cpp core/message_queue.cpp
#: core/register_core_types.cpp drivers/gles2/rasterizer_canvas_base_gles2.cpp
@@ -208,7 +206,7 @@ msgstr "Trage: Rotire"
#: core/command_queue_mt.cpp
msgid "Multithreading Queue Size (KB)"
-msgstr ""
+msgstr "Mărimea cozii de așteptare pentru mai multe fire (KB)"
#: core/func_ref.cpp modules/visual_script/visual_script_builtin_funcs.cpp
#: modules/visual_script/visual_script_func_nodes.cpp
@@ -220,7 +218,7 @@ msgstr "Funcție"
#: core/image.cpp core/packed_data_container.cpp scene/2d/polygon_2d.cpp
#: scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp
msgid "Data"
-msgstr ""
+msgstr "Date"
#: core/io/file_access_network.cpp core/register_core_types.cpp
#: editor/editor_file_dialog.cpp editor/editor_settings.cpp main/main.cpp
@@ -242,11 +240,11 @@ msgstr "Marime Pagina"
#: core/io/file_access_network.cpp
msgid "Page Read Ahead"
-msgstr ""
+msgstr "Pagina Citește înainte"
#: core/io/http_client.cpp
msgid "Blocking Mode Enabled"
-msgstr ""
+msgstr "Mod de blocare Activat"
#: core/io/http_client.cpp
msgid "Connection"
@@ -300,7 +298,7 @@ msgstr ""
#: core/io/packet_peer.cpp
msgid "Stream Peer"
-msgstr ""
+msgstr "Fluxul Peer"
#: core/io/stream_peer.cpp
msgid "Big Endian"
@@ -312,7 +310,7 @@ msgstr ""
#: core/io/stream_peer_ssl.cpp
msgid "Blocking Handshake"
-msgstr ""
+msgstr "Blocare Handshake"
#: core/io/udp_server.cpp
#, fuzzy
@@ -367,7 +365,7 @@ msgstr "În apelarea lui '%s':"
#: core/math/random_number_generator.cpp
#: modules/opensimplex/open_simplex_noise.cpp
msgid "Seed"
-msgstr ""
+msgstr "Semințe"
#: core/math/random_number_generator.cpp
#, fuzzy
@@ -376,7 +374,7 @@ msgstr "Mod Rotație"
#: core/message_queue.cpp
msgid "Message Queue"
-msgstr ""
+msgstr "Coada de mesaje"
#: core/message_queue.cpp
msgid "Max Size (KB)"
@@ -411,7 +409,7 @@ msgstr "Control"
#: core/os/input_event.cpp
msgid "Meta"
-msgstr ""
+msgstr "Meta"
#: core/os/input_event.cpp
#, fuzzy
@@ -444,7 +442,7 @@ msgstr "Unicode"
#: core/os/input_event.cpp
msgid "Echo"
-msgstr ""
+msgstr "Ecou"
#: core/os/input_event.cpp scene/gui/base_button.cpp
#, fuzzy
@@ -478,7 +476,7 @@ msgstr "Presiune"
#: core/os/input_event.cpp
msgid "Pen Inverted"
-msgstr ""
+msgstr "Stilou inversat"
#: core/os/input_event.cpp
msgid "Relative"
@@ -552,7 +550,7 @@ msgstr "Linia Numărul:"
#: core/os/input_event.cpp
msgid "Controller Value"
-msgstr ""
+msgstr "Valoarea controlerului"
#: core/project_settings.cpp editor/editor_node.cpp main/main.cpp
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
@@ -679,7 +677,7 @@ msgstr "Editor"
#: core/project_settings.cpp
msgid "Main Run Args"
-msgstr ""
+msgstr "Argumente principale ale rulării"
#: core/project_settings.cpp
#, fuzzy
@@ -688,7 +686,7 @@ msgstr "Calea Scenei:"
#: core/project_settings.cpp
msgid "Search In File Extensions"
-msgstr ""
+msgstr "Căutare în extensii de fișiere"
#: core/project_settings.cpp
msgid "Script Templates Search Path"
@@ -721,7 +719,7 @@ msgstr "Selectează"
#: core/project_settings.cpp
msgid "UI Cancel"
-msgstr ""
+msgstr "Anulare interfață utilizator"
#: core/project_settings.cpp
#, fuzzy
@@ -754,7 +752,7 @@ msgstr "Descarcă"
#: core/project_settings.cpp
msgid "UI Page Up"
-msgstr ""
+msgstr "Pagina UI în sus"
#: core/project_settings.cpp
msgid "UI Page Down"
@@ -762,11 +760,11 @@ msgstr ""
#: core/project_settings.cpp
msgid "UI Home"
-msgstr ""
+msgstr "UI Acasă"
#: core/project_settings.cpp
msgid "UI End"
-msgstr ""
+msgstr "Sfârșitul interfeței de utilizator"
#: core/project_settings.cpp main/main.cpp modules/bullet/register_types.cpp
#: modules/bullet/space_bullet.cpp scene/2d/physics_body_2d.cpp
@@ -815,7 +813,7 @@ msgstr ""
#: scene/resources/multimesh.cpp servers/visual/visual_server_scene.cpp
#: servers/visual_server.cpp
msgid "Quality"
-msgstr ""
+msgstr "Calitate"
#: core/project_settings.cpp scene/gui/file_dialog.cpp
#: scene/main/scene_tree.cpp scene/resources/navigation_mesh.cpp
@@ -826,7 +824,7 @@ msgstr "Filtre:"
#: core/project_settings.cpp scene/main/viewport.cpp
msgid "Sharpen Intensity"
-msgstr ""
+msgstr "Intensitate Sharpen"
#: core/project_settings.cpp editor/editor_export.cpp editor/editor_node.cpp
#: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp
@@ -849,7 +847,7 @@ msgstr "Setări:"
#: core/project_settings.cpp editor/script_editor_debugger.cpp main/main.cpp
#: modules/mono/mono_gd/gd_mono.cpp
msgid "Profiler"
-msgstr ""
+msgstr "Profiler"
#: core/project_settings.cpp
#, fuzzy
@@ -871,35 +869,35 @@ msgstr ""
#: core/project_settings.cpp
msgid "Long Distance Matching"
-msgstr ""
+msgstr "Potrivire la distanță"
#: core/project_settings.cpp
msgid "Compression Level"
-msgstr ""
+msgstr "Nivelul de compresie"
#: core/project_settings.cpp
msgid "Window Log Size"
-msgstr ""
+msgstr "Dimensiunea jurnalului de fereastră"
#: core/project_settings.cpp
msgid "Zlib"
-msgstr ""
+msgstr "Zlib"
#: core/project_settings.cpp
msgid "Gzip"
-msgstr ""
+msgstr "Gzip"
#: core/project_settings.cpp platform/android/export/export.cpp
msgid "Android"
-msgstr ""
+msgstr "Android"
#: core/project_settings.cpp
msgid "Modules"
-msgstr ""
+msgstr "Module"
#: core/register_core_types.cpp
msgid "TCP"
-msgstr ""
+msgstr "TCP"
#: core/register_core_types.cpp
#, fuzzy
@@ -908,7 +906,7 @@ msgstr "Conectați la Nod:"
#: core/register_core_types.cpp
msgid "Packet Peer Stream"
-msgstr ""
+msgstr "Pachet Peer Stream"
#: core/register_core_types.cpp
msgid "Max Buffer (Power of 2)"
@@ -957,7 +955,7 @@ msgstr "Se Testează"
#: core/translation.cpp scene/resources/font.cpp
msgid "Fallback"
-msgstr ""
+msgstr "Fallback"
#: core/ustring.cpp scene/resources/segment_shape_2d.cpp
msgid "B"
@@ -1015,7 +1013,7 @@ msgstr ""
#: servers/physics_2d/space_2d_sw.cpp servers/physics_2d_server.cpp
#: servers/visual_server.cpp
msgid "2D"
-msgstr ""
+msgstr "2D"
#: drivers/gles2/rasterizer_canvas_base_gles2.cpp
#: drivers/gles3/rasterizer_canvas_base_gles3.cpp
@@ -1032,7 +1030,7 @@ msgstr "Utilizează Pixel Snap"
#: drivers/gles2/rasterizer_scene_gles2.cpp
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Immediate Buffer Size (KB)"
-msgstr ""
+msgstr "Dimensiunea imediată a bufferului (KB)"
#: drivers/gles2/rasterizer_storage_gles2.cpp
#: drivers/gles3/rasterizer_storage_gles3.cpp
@@ -1043,7 +1041,7 @@ msgstr "Procesează Lightmaps"
#: drivers/gles2/rasterizer_storage_gles2.cpp
#: drivers/gles3/rasterizer_storage_gles3.cpp
msgid "Use Bicubic Sampling"
-msgstr ""
+msgstr "Utilizarea eșantionării bicubice"
#: drivers/gles3/rasterizer_scene_gles3.cpp
msgid "Max Renderable Elements"
@@ -16758,7 +16756,7 @@ msgstr ""
#: main/main.cpp
msgid "iOS"
-msgstr ""
+msgstr "iOS"
#: main/main.cpp
msgid "Hide Home Indicator"
@@ -19934,7 +19932,7 @@ msgstr "Eroare la scrierea TextFile:"
#: platform/javascript/export/export.cpp
msgid "Web"
-msgstr ""
+msgstr "Web"
#: platform/javascript/export/export.cpp
msgid "HTTP Host"
@@ -20861,9 +20859,8 @@ msgid "Executable \"pck\" section not found."
msgstr ""
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Windows"
-msgstr "Fereastră Nouă"
+msgstr "Windows"
#: platform/windows/export/export.cpp
msgid "Rcedit"
diff --git a/editor/translations/ru.po b/editor/translations/ru.po
index b79923abf1..0432de4da5 100644
--- a/editor/translations/ru.po
+++ b/editor/translations/ru.po
@@ -124,13 +124,15 @@
# Gulpy <yak.aryslan.1999@gmail.com>, 2022.
# Sergey Karmanov <ppoocpel8888@gmail.com>, 2022.
# Дмитрий <Dimega@inbox.ru>, 2022.
+# Vladimir Kirillovskiy <vladimir.kirillovskiy@gmail.com>, 2022.
+# Evgeniy Khramov <thejenjagamertjg@gmail.com>, 2022.
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: 2022-09-01 15:11+0000\n"
-"Last-Translator: Дмитрий <Dimega@inbox.ru>\n"
+"PO-Revision-Date: 2022-09-27 21:37+0000\n"
+"Last-Translator: Evgeniy Khramov <thejenjagamertjg@gmail.com>\n"
"Language-Team: Russian <https://hosted.weblate.org/projects/godot-engine/"
"godot/ru/>\n"
"Language: ru\n"
@@ -139,7 +141,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
-"X-Generator: Weblate 4.14.1-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -1263,12 +1265,10 @@ msgid "Type"
msgstr "Тип"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "In Handle"
msgstr "Задать обработчик"
#: editor/animation_track_editor.cpp
-#, fuzzy
msgid "Out Handle"
msgstr "Задать обработчик"
@@ -14207,14 +14207,12 @@ msgid "More Info..."
msgstr "Подробнее..."
#: editor/project_export.cpp
-#, fuzzy
msgid "Export PCK/Zip..."
-msgstr "Экспортировать PCK/Zip"
+msgstr "Экспортировать PCK/Zip..."
#: editor/project_export.cpp
-#, fuzzy
msgid "Export Project..."
-msgstr "Экспортировать проект"
+msgstr "Экспортировать проект..."
#: editor/project_export.cpp
msgid "Export All"
@@ -14226,7 +14224,7 @@ msgstr "Пожалуйста, выберите режим экспорта:"
#: editor/project_export.cpp
msgid "Export All..."
-msgstr "Экспортировать всё"
+msgstr "Экспортировать всё..."
#: editor/project_export.cpp editor/project_manager.cpp
msgid "ZIP File"
@@ -14242,9 +14240,8 @@ msgid "Export templates for this platform are missing:"
msgstr "Шаблоны экспорта для этой платформы отсутствуют:"
#: editor/project_export.cpp
-#, fuzzy
msgid "Project Export"
-msgstr "Основатели проекта"
+msgstr "Экспорт проекта"
#: editor/project_export.cpp
msgid "Manage Export Templates"
@@ -15364,9 +15361,8 @@ msgid "Enable Scene Unique Name(s)"
msgstr "Добавить уникальное имя сцене"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Unique names already used by another node in the scene:"
-msgstr "Данное уникальное имя уже использовано у другого узла в сцене."
+msgstr "Данное уникальное имя уже использовано у другого узла в сцене:"
#: editor/scene_tree_dock.cpp
#, fuzzy
@@ -17195,19 +17191,16 @@ msgid "Octant Size"
msgstr "Размер октанта"
#: modules/gridmap/grid_map.cpp
-#, fuzzy
msgid "Center X"
-msgstr "По центру"
+msgstr "По центру X"
#: modules/gridmap/grid_map.cpp
-#, fuzzy
msgid "Center Y"
-msgstr "По центру"
+msgstr "По центру Y"
#: modules/gridmap/grid_map.cpp
-#, fuzzy
msgid "Center Z"
-msgstr "По центру"
+msgstr "По центру Z"
#: modules/gridmap/grid_map.cpp scene/2d/collision_object_2d.cpp
#: scene/2d/tile_map.cpp scene/3d/collision_object.cpp scene/3d/soft_body.cpp
@@ -17224,9 +17217,8 @@ msgstr "Навигация"
#: scene/2d/navigation_agent_2d.cpp scene/2d/navigation_polygon.cpp
#: scene/2d/tile_map.cpp scene/3d/navigation.cpp scene/3d/navigation_agent.cpp
#: scene/3d/navigation_mesh_instance.cpp
-#, fuzzy
msgid "Navigation Layers"
-msgstr "Чувствительность навигации"
+msgstr "Слои навигации"
#: modules/gridmap/grid_map_editor_plugin.cpp
msgid "Next Plane"
@@ -17466,9 +17458,8 @@ msgid "Solution Directory"
msgstr "Выбрать каталог"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "C# Project Directory"
-msgstr "Выбрать каталог"
+msgstr "Каталог C# проекта"
#: modules/mono/mono_gd/gd_mono_utils.cpp
msgid "End of inner exception stack trace"
@@ -17624,9 +17615,8 @@ msgid "IGD Our Addr"
msgstr "IGD Наш Адр"
#: modules/upnp/upnp_device.cpp
-#, fuzzy
msgid "IGD Status"
-msgstr "Статус"
+msgstr "IGD Статус"
#: modules/visual_script/visual_script.cpp
msgid ""
@@ -18441,9 +18431,8 @@ msgid "Visibility State"
msgstr "Видимость"
#: modules/webxr/webxr_interface.cpp
-#, fuzzy
msgid "Bounds Geometry"
-msgstr "Повторить"
+msgstr "Геометрия границ"
#: modules/webxr/webxr_interface.cpp
msgid "XR Standard Mapping"
@@ -18545,14 +18534,12 @@ msgid "Keystore"
msgstr "Хранилище ключей"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Debug User"
-msgstr "Отладчик"
+msgstr "Пользователь отладчика"
#: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp
-#, fuzzy
msgid "Debug Password"
-msgstr "Пароль"
+msgstr "Пароль отладчика"
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -18589,18 +18576,16 @@ msgid "Signed"
msgstr "Подписано"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Classify As Game"
-msgstr "Имя класса"
+msgstr "Классифицировать как игру"
#: platform/android/export/export_plugin.cpp
msgid "Retain Data On Uninstall"
-msgstr ""
+msgstr "Сохранить данные при удалении программы"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Exclude From Recents"
-msgstr "Удалить узлы"
+msgstr "Исключить из недавнего"
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -18660,9 +18645,8 @@ msgid "Support Xlarge"
msgstr "Поддержка"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "User Data Backup"
-msgstr "Пользовательский интерфейс"
+msgstr "Резервное копирование пользовательских данных"
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -18670,32 +18654,28 @@ msgid "Allow"
msgstr "Разрешено"
#: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp
-#, fuzzy
msgid "Command Line"
-msgstr "Command"
+msgstr "Командная строка"
#: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp
msgid "Extra Args"
msgstr "Дополнительные аргументы"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "APK Expansion"
-msgstr "Выражение"
+msgstr "APK расширение"
#: platform/android/export/export_plugin.cpp
msgid "Salt"
msgstr ""
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Public Key"
-msgstr "Путь к открытому ключу SSH"
+msgstr "Открытый ключ"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Permissions"
-msgstr "Маска излучения"
+msgstr "Разрешения"
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -18857,12 +18837,16 @@ msgstr ""
#: platform/android/export/export_plugin.cpp
msgid "\"Min SDK\" should be a valid integer, but got \"%s\" which is invalid."
msgstr ""
+"\"Min SDK\" должно быть валидным целым числом, полученное \"%s\" - не "
+"валидно."
#: platform/android/export/export_plugin.cpp
msgid ""
"\"Min SDK\" cannot be lower than %d, which is the version needed by the "
"Godot library."
msgstr ""
+"\"Min SDK\" не может быть меньше чем %d - это версия требуемая Godot "
+"библиотекой."
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -18876,12 +18860,16 @@ msgstr ""
msgid ""
"\"Target SDK\" should be a valid integer, but got \"%s\" which is invalid."
msgstr ""
+"\"Target SDK\" должно быть валидным целым числом, полученное \"%s\" - не "
+"валидно."
#: platform/android/export/export_plugin.cpp
msgid ""
"\"Target SDK\" %d is higher than the default version %d. This may work, but "
"wasn't tested and may be unstable."
msgstr ""
+"\"Target SDK\" %d выше чем версия по умолчанию %d. Это может сработать, но "
+"не тестировано и может быть не стабильным."
#: platform/android/export/export_plugin.cpp
#, fuzzy
@@ -18890,9 +18878,8 @@ msgstr "Версия «Target Sdk» должна быть больше или р
#: platform/android/export/export_plugin.cpp platform/osx/export/export.cpp
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Code Signing"
-msgstr "Подпись кода DMG"
+msgstr "Подпись кода"
#: platform/android/export/export_plugin.cpp
msgid ""
@@ -18969,7 +18956,8 @@ msgstr ""
#: platform/android/export/export_plugin.cpp
msgid ""
"Unable to overwrite res://android/build/res/*.xml files with project name."
-msgstr "Невозможно перезаписать res://android/build/res/*.xml с именем проекта"
+msgstr ""
+"Невозможно перезаписать res://android/build/res/*.xml с именем проекта."
#: platform/android/export/export_plugin.cpp
msgid "Could not export project files to gradle project."
@@ -19144,9 +19132,8 @@ msgid "Identifier"
msgstr "Индетификатор"
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
-#, fuzzy
msgid "Signature"
-msgstr "Сигнал"
+msgstr "Подпись"
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
#, fuzzy
@@ -19155,14 +19142,12 @@ msgstr "Старшая версия"
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Copyright"
-msgstr "Справа вверху"
+msgstr "Авторские права"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Capabilities"
-msgstr "Капитализировать свойства"
+msgstr "Возможности"
#: platform/iphone/export/export.cpp
msgid "Access Wi-Fi"
@@ -19173,37 +19158,32 @@ msgid "Push Notifications"
msgstr "Всплывающее уведомление"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "User Data"
-msgstr "Пользовательский интерфейс"
+msgstr "Пользовательские данные"
#: platform/iphone/export/export.cpp
msgid "Accessible From Files App"
-msgstr ""
+msgstr "Доступно из приложения Files"
#: platform/iphone/export/export.cpp
msgid "Accessible From iTunes Sharing"
-msgstr ""
+msgstr "Доступно из iTunes Sharing"
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
-#, fuzzy
msgid "Privacy"
-msgstr "Закрытый ключ"
+msgstr "Конфиденциальность"
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
-#, fuzzy
msgid "Camera Usage Description"
-msgstr "Описание"
+msgstr "Описание использования камеры"
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
-#, fuzzy
msgid "Microphone Usage Description"
-msgstr "Описания свойств"
+msgstr "Описание использования микрофона"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Photolibrary Usage Description"
-msgstr "Описания свойств"
+msgstr "Описание использования фото-библиотеки"
#: platform/iphone/export/export.cpp
msgid "iPhone 120 X 120"
@@ -19246,40 +19226,33 @@ msgid "Use Launch Screen Storyboard"
msgstr ""
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Image Scale Mode"
-msgstr "Режим масштабирования"
+msgstr "Режим масштабирования изображения"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Custom Image @2x"
-msgstr "Пользовательское изображение"
+msgstr "Пользовательское изображение @2x"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Custom Image @3x"
-msgstr "Пользовательское изображение"
+msgstr "Пользовательское изображение @3x"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Use Custom BG Color"
-msgstr "Пользовательский цвет"
+msgstr "Использовать пользовательский цвет фона"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Custom BG Color"
-msgstr "Пользовательский цвет"
+msgstr "Пользовательский цвет фона"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Export Icons"
-msgstr "Развернуть все"
+msgstr "Экспортировать иконки"
#: platform/iphone/export/export.cpp platform/javascript/export/export.cpp
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Prepare Templates"
-msgstr "Управление шаблонами"
+msgstr "Подготовить шаблоны"
#: platform/iphone/export/export.cpp platform/osx/export/export.cpp
#, fuzzy
@@ -19319,9 +19292,8 @@ msgid "Could not write file: \"%s\"."
msgstr "Не удалось записать файл: \"%s\"."
#: platform/javascript/export/export.cpp platform/osx/export/export.cpp
-#, fuzzy
msgid "Icon Creation"
-msgstr "Задать отступ"
+msgstr "Создание иконки"
#: platform/javascript/export/export.cpp
msgid "Could not read file: \"%s\"."
@@ -19337,14 +19309,12 @@ msgid "Variant"
msgstr "Вариация оттенка"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Export Type"
-msgstr "Экспорт"
+msgstr "Тип экспорта"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "VRAM Texture Compression"
-msgstr "Выражение"
+msgstr "VRAM компрессия текстуры"
#: platform/javascript/export/export.cpp
msgid "For Desktop"
@@ -19359,9 +19329,8 @@ msgid "HTML"
msgstr ""
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Export Icon"
-msgstr "Развернуть все"
+msgstr "Экспортировать иконку"
#: platform/javascript/export/export.cpp
#, fuzzy
@@ -19374,36 +19343,35 @@ msgstr ""
#: platform/javascript/export/export.cpp
msgid "Canvas Resize Policy"
-msgstr ""
+msgstr "Политика изменения размера холста"
#: platform/javascript/export/export.cpp
msgid "Focus Canvas On Start"
msgstr ""
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Experimental Virtual Keyboard"
-msgstr "Фильтр сигналов"
+msgstr "Экспериментальная виртуальная клавиатура"
#: platform/javascript/export/export.cpp
msgid "Progressive Web App"
-msgstr ""
+msgstr "Прогрессивное веб-приложение"
#: platform/javascript/export/export.cpp
msgid "Offline Page"
-msgstr ""
+msgstr "Офлайн-страница"
#: platform/javascript/export/export.cpp
msgid "Icon 144 X 144"
-msgstr ""
+msgstr "Иконка 144 X 144"
#: platform/javascript/export/export.cpp
msgid "Icon 180 X 180"
-msgstr ""
+msgstr "Иконка 180 X 180"
#: platform/javascript/export/export.cpp
msgid "Icon 512 X 512"
-msgstr ""
+msgstr "Иконка 512 X 512"
#: platform/javascript/export/export.cpp
msgid "Could not read HTML shell: \"%s\"."
@@ -19414,9 +19382,8 @@ msgid "Could not create HTTP server directory: %s."
msgstr "Не удалось создать каталог HTTP-сервера: %s."
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Error starting HTTP server: %d."
-msgstr "Ошибка запуска HTTP-сервера:"
+msgstr "Ошибка запуска HTTP-сервера: %d."
#: platform/javascript/export/export.cpp
msgid "Web"
@@ -19525,31 +19492,27 @@ msgstr "Описание"
#: platform/osx/export/export.cpp
msgid "Address Book Usage Description"
-msgstr ""
+msgstr "Описание использования адресной книги"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Calendar Usage Description"
-msgstr "Описание"
+msgstr "Описание использования календаря"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Photos Library Usage Description"
-msgstr "Описания свойств"
+msgstr "Описание использования Фото библиотеки"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Desktop Folder Usage Description"
-msgstr "Описания методов"
+msgstr "Описание использования папки рабочего стола"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Documents Folder Usage Description"
-msgstr "Описания методов"
+msgstr "Описание использования папки Документов"
#: platform/osx/export/export.cpp
msgid "Downloads Folder Usage Description"
-msgstr ""
+msgstr "Описание использования папки загрузок"
#: platform/osx/export/export.cpp
msgid "Network Volumes Usage Description"
@@ -19591,49 +19554,44 @@ msgid "Entitlements"
msgstr "Гизмо"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Custom File"
-msgstr "Пользовательский шрифт"
+msgstr "Пользовательский файл"
#: platform/osx/export/export.cpp
msgid "Allow JIT Code Execution"
-msgstr ""
+msgstr "Разрешить выполнение JIT-кода"
#: platform/osx/export/export.cpp
msgid "Allow Unsigned Executable Memory"
-msgstr ""
+msgstr "Разрешить неподписанную исполняемую память"
#: platform/osx/export/export.cpp
msgid "Allow Dyld Environment Variables"
-msgstr ""
+msgstr "Разрешить переменные среды Dyld"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Disable Library Validation"
-msgstr "Заблокированная кнопка"
+msgstr "Отключить валидацию библиотеки"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Audio Input"
-msgstr "Добавить вход"
+msgstr "Аудио вход"
#: platform/osx/export/export.cpp
msgid "Address Book"
-msgstr ""
+msgstr "Адресная книга"
#: platform/osx/export/export.cpp
msgid "Calendars"
-msgstr ""
+msgstr "Календари"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Photos Library"
-msgstr "Экспортировать библиотеку"
+msgstr "Библиотека фотографий"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Apple Events"
-msgstr "Добавить событие"
+msgstr "Apple события"
#: platform/osx/export/export.cpp
#, fuzzy
@@ -19642,51 +19600,43 @@ msgstr "Отладка"
#: platform/osx/export/export.cpp
msgid "App Sandbox"
-msgstr ""
+msgstr "Приложение \"песочница\""
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Network Server"
-msgstr "Сетевой узел"
+msgstr "Сетевой сервер"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Network Client"
-msgstr "Сетевой узел"
+msgstr "Сетевой клиент"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Device USB"
-msgstr "Устройство"
+msgstr "Устройство USB"
#: platform/osx/export/export.cpp
msgid "Device Bluetooth"
-msgstr ""
+msgstr "Устройство Bluetooth"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Files Downloads"
-msgstr "Загрузка"
+msgstr "Файлы загрузок"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Files Pictures"
-msgstr "Возможности"
+msgstr "Файлы картинок"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Files Music"
-msgstr "Файлы"
+msgstr "Файлы музыки"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Files Movies"
-msgstr "Фильтр тайлов"
+msgstr "Файлы фильмов"
#: platform/osx/export/export.cpp platform/windows/export/export.cpp
-#, fuzzy
msgid "Custom Options"
-msgstr "Параметры шины"
+msgstr "Пользовательские параметры"
#: platform/osx/export/export.cpp
#, fuzzy
@@ -19698,27 +19648,24 @@ msgid "Apple ID Name"
msgstr ""
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Apple ID Password"
-msgstr "Пароль"
+msgstr "Пароль Apple ID"
#: platform/osx/export/export.cpp
msgid "Apple Team ID"
msgstr ""
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Could not open icon file \"%s\"."
-msgstr "Не удалось экспортировать файлы проекта"
+msgstr "Не получилось открыть файлы иконок \"%s\"."
#: platform/osx/export/export.cpp
msgid "Could not start xcrun executable."
msgstr "Не удаётся запустить исполняемый файл xcrun."
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Notarization failed."
-msgstr "Локализация"
+msgstr "Нотаризация не удалась."
#: platform/osx/export/export.cpp
msgid "Notarization request UUID: \"%s\""
@@ -19774,15 +19721,16 @@ msgid ""
"Could not start codesign executable, make sure Xcode command line tools are "
"installed."
msgstr ""
+"Не удалось запустить исполняемый файл codesign, убедитесь, что инструменты "
+"командной строки Xcode установлены."
#: platform/osx/export/export.cpp platform/windows/export/export.cpp
msgid "No identity found."
msgstr "Identity не найдена."
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Cannot sign file %s."
-msgstr "Ошибка при сохранении файла: %s"
+msgstr "Не удалось подписать файл %s."
#: platform/osx/export/export.cpp
#, fuzzy
@@ -19802,25 +19750,23 @@ msgstr "Не удаётся запустить исполняемый файл h
#: platform/osx/export/export.cpp
msgid "`hdiutil create` failed - file exists."
-msgstr ""
+msgstr "Не удалось выполнить `hdiutil create` - файл уже существует."
#: platform/osx/export/export.cpp
msgid "`hdiutil create` failed."
-msgstr ""
+msgstr "Не удалось выполнить `hdiutil create`."
#: platform/osx/export/export.cpp
msgid "Creating app bundle"
msgstr "Создание пакета приложения"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Could not find template app to export: \"%s\"."
-msgstr "Не удалось найти шаблон приложения для экспорта:"
+msgstr "Не удалось найти шаблон приложения для экспорта: \"%s\"."
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Invalid export format."
-msgstr "Неверный шаблон экспорта:"
+msgstr "Неверный формат экспорта."
#: platform/osx/export/export.cpp
msgid ""
@@ -19880,9 +19826,8 @@ msgid "Sending archive for notarization"
msgstr "Отправка архива для подтверждения"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "ZIP Creation"
-msgstr "Проекция"
+msgstr "Создание ZIP"
#: platform/osx/export/export.cpp
msgid "Could not open file to read from path \"%s\"."
@@ -20028,9 +19973,8 @@ msgid "Force Builtin Codesign"
msgstr ""
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Architecture"
-msgstr "Добавить поле архитектуры"
+msgstr "Архитектура"
#: platform/uwp/export/export.cpp
#, fuzzy
@@ -20043,7 +19987,7 @@ msgstr "Короткое имя"
#: platform/uwp/export/export.cpp
msgid "Publisher"
-msgstr ""
+msgstr "Издатель"
#: platform/uwp/export/export.cpp
msgid "Publisher Display Name"
@@ -20054,9 +19998,8 @@ msgid "Product GUID"
msgstr "GUID Продукта"
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Publisher GUID"
-msgstr "Очистить направляющие"
+msgstr "Издатель GUID"
#: platform/uwp/export/export.cpp
#, fuzzy
@@ -20064,14 +20007,12 @@ msgid "Signing"
msgstr "Сигнал"
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Certificate"
-msgstr "Сертификаты"
+msgstr "Сертификат"
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Algorithm"
-msgstr "Отладчик"
+msgstr "Алгоритм"
#: platform/uwp/export/export.cpp
msgid "Major"
@@ -20082,9 +20023,8 @@ msgid "Minor"
msgstr ""
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Build"
-msgstr "Режим измерения"
+msgstr "Сборка"
#: platform/uwp/export/export.cpp
#, fuzzy
@@ -20096,9 +20036,8 @@ msgid "Landscape"
msgstr ""
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Portrait"
-msgstr "Порт"
+msgstr "Портрет"
#: platform/uwp/export/export.cpp
msgid "Landscape Flipped"
@@ -20115,23 +20054,23 @@ msgstr "Режим масштабирования"
#: platform/uwp/export/export.cpp
msgid "Square 44 X 44 Logo"
-msgstr ""
+msgstr "Квадратный логотип 44 X 44"
#: platform/uwp/export/export.cpp
msgid "Square 71 X 71 Logo"
-msgstr ""
+msgstr "Квадратный логотип 71 X 71"
#: platform/uwp/export/export.cpp
msgid "Square 150 X 150 Logo"
-msgstr ""
+msgstr "Квадратный логотип 150 X 150"
#: platform/uwp/export/export.cpp
msgid "Square 310 X 310 Logo"
-msgstr ""
+msgstr "Квадратный логотип 310 X 310"
#: platform/uwp/export/export.cpp
msgid "Wide 310 X 150 Logo"
-msgstr ""
+msgstr "Широкий логотип 310 X 150"
#: platform/uwp/export/export.cpp
#, fuzzy
@@ -20139,13 +20078,12 @@ msgid "Splash Screen"
msgstr "Рисовать экран"
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Tiles"
-msgstr "Файлы"
+msgstr "Тайлы"
#: platform/uwp/export/export.cpp
msgid "Show Name On Square 150 X 150"
-msgstr ""
+msgstr "Показать имя на квадрате 150 X 150"
#: platform/uwp/export/export.cpp
msgid "Show Name On Wide 310 X 150"
@@ -20218,23 +20156,20 @@ msgid "UWP"
msgstr "UWP"
#: platform/uwp/export/export.cpp platform/windows/export/export.cpp
-#, fuzzy
msgid "Signtool"
-msgstr "Сигнал"
+msgstr "Инструмент подписи"
#: platform/uwp/export/export.cpp
msgid "Debug Certificate"
msgstr "Сертификат отладки"
#: platform/uwp/export/export.cpp
-#, fuzzy
msgid "Debug Algorithm"
-msgstr "Отладчик"
+msgstr "Алгоритм отладчика"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Failed to rename temporary file \"%s\"."
-msgstr "Невозможно удалить временный файл:"
+msgstr "Невозможно удалить временный файл \"%s\"."
#: platform/windows/export/export.cpp
msgid "Identity Type"
@@ -20250,41 +20185,36 @@ msgid "Digest Algorithm"
msgstr "Отладчик"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Modify Resources"
-msgstr "Копировать параметры"
+msgstr "Изменить ресурсы"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "File Version"
-msgstr "Версия"
+msgstr "Версия файла"
#: platform/windows/export/export.cpp
msgid "Product Version"
msgstr "Версия продукта"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Company Name"
-msgstr "Имя кости"
+msgstr "Имя компании"
#: platform/windows/export/export.cpp
msgid "Product Name"
msgstr "Название продукта"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "File Description"
-msgstr "Описание"
+msgstr "Описание файла"
#: platform/windows/export/export.cpp
msgid "Trademarks"
-msgstr ""
+msgstr "Торговые марки"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Resources Modification"
-msgstr "Всплывающее уведомление"
+msgstr "Изменение ресурсов"
#: platform/windows/export/export.cpp
#, fuzzy
@@ -20307,9 +20237,8 @@ msgstr ""
"Windows > Rcedit) для изменения значка или информационных данных приложения."
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "rcedit failed to modify executable: %s."
-msgstr "Недопустимый исполняемый файл."
+msgstr "rcedit не смог изменить исполняемый файл: %s."
#: platform/windows/export/export.cpp
#, fuzzy
@@ -20322,14 +20251,12 @@ msgid "Could not find osslsigncode executable at \"%s\"."
msgstr "Не удалось найти хранилище ключей, невозможно экспортировать."
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Invalid identity type."
-msgstr "Неверный идентификатор:"
+msgstr "Неверный идентификатор."
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Invalid timestamp server."
-msgstr "Недопустимое имя."
+msgstr "Неверный сервер метки времени."
#: platform/windows/export/export.cpp
#, fuzzy
@@ -20342,14 +20269,12 @@ msgstr ""
"Windows > Rcedit) для изменения значка или информационных данных приложения."
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Signtool failed to sign executable: %s."
-msgstr "Недопустимый исполняемый файл."
+msgstr "Signtool не смог подписать исполняемый файл: %s."
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Failed to remove temporary file \"%s\"."
-msgstr "Невозможно удалить временный файл:"
+msgstr "Невозможно удалить временный файл \"%s\"."
#: platform/windows/export/export.cpp
msgid ""
@@ -20376,9 +20301,8 @@ msgid "Windows executables cannot be >= 4 GiB."
msgstr ""
#: platform/windows/export/export.cpp platform/x11/export/export.cpp
-#, fuzzy
msgid "Failed to open executable file \"%s\"."
-msgstr "Недопустимый исполняемый файл."
+msgstr "Не удалось открыть исполняемый файл \"%s\"."
#: platform/windows/export/export.cpp platform/x11/export/export.cpp
msgid "Executable file header corrupted."
@@ -20447,39 +20371,32 @@ msgid "Flip V"
msgstr ""
#: scene/2d/area_2d.cpp scene/3d/area.cpp
-#, fuzzy
msgid "Monitoring"
-msgstr "Параметр"
+msgstr "Наблюдение"
#: scene/2d/area_2d.cpp scene/3d/area.cpp
-#, fuzzy
msgid "Monitorable"
-msgstr "Параметр"
+msgstr "Наблюдаемый"
#: scene/2d/area_2d.cpp scene/3d/area.cpp
-#, fuzzy
msgid "Physics Overrides"
-msgstr "Переопределить"
+msgstr "Переопределение физики"
#: scene/2d/area_2d.cpp scene/3d/area.cpp
-#, fuzzy
msgid "Space Override"
-msgstr "Переопределить"
+msgstr "Переопределение пространства"
#: scene/2d/area_2d.cpp scene/3d/area.cpp
-#, fuzzy
msgid "Gravity Point"
-msgstr "Генерировать точки"
+msgstr "Точка гравитации"
#: scene/2d/area_2d.cpp scene/3d/area.cpp
-#, fuzzy
msgid "Gravity Distance Scale"
-msgstr "Ждать сигнал объекта"
+msgstr "Масштаб гравитационной дистанции"
#: scene/2d/area_2d.cpp scene/3d/area.cpp
-#, fuzzy
msgid "Gravity Vec"
-msgstr "Превью по умолчанию"
+msgstr "Вектор Гравитации"
#: scene/2d/area_2d.cpp scene/2d/cpu_particles_2d.cpp scene/3d/area.cpp
#: scene/3d/cpu_particles.cpp scene/resources/particles_material.cpp
@@ -20496,9 +20413,8 @@ msgid "Angular Damp"
msgstr ""
#: scene/2d/area_2d.cpp scene/3d/area.cpp
-#, fuzzy
msgid "Audio Bus"
-msgstr "Добавить аудио шину"
+msgstr "Аудио шина"
#: scene/2d/area_2d.cpp scene/3d/area.cpp
#, fuzzy
@@ -20507,9 +20423,8 @@ msgstr "Переопределить"
#: scene/2d/audio_stream_player_2d.cpp scene/audio/audio_stream_player.cpp
#: scene/gui/video_player.cpp servers/audio/effects/audio_effect_amplify.cpp
-#, fuzzy
msgid "Volume dB"
-msgstr "Объём"
+msgstr "Громкость dB"
#: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp
#: scene/audio/audio_stream_player.cpp
@@ -20520,9 +20435,8 @@ msgstr "Масштабировать"
#: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp
#: scene/audio/audio_stream_player.cpp scene/gui/video_player.cpp
-#, fuzzy
msgid "Autoplay"
-msgstr "Переключить автовоспроизведение"
+msgstr "Автовоспроизведение"
#: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp
#: scene/audio/audio_stream_player.cpp
@@ -20537,9 +20451,8 @@ msgid "Max Distance"
msgstr "Максимальное расстояние"
#: scene/2d/audio_stream_player_2d.cpp scene/3d/light.cpp
-#, fuzzy
msgid "Attenuation"
-msgstr "Анимация"
+msgstr "Затухание"
#: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp
#: scene/audio/audio_stream_player.cpp scene/gui/video_player.cpp
@@ -20559,9 +20472,8 @@ msgid "Anchor Mode"
msgstr "Режим якорей"
#: scene/2d/camera_2d.cpp
-#, fuzzy
msgid "Rotating"
-msgstr "Вращающийся"
+msgstr "Вращение"
#: scene/2d/camera_2d.cpp scene/2d/listener_2d.cpp scene/3d/camera.cpp
#: scene/3d/listener.cpp scene/animation/animation_blend_tree.cpp
@@ -20574,9 +20486,8 @@ msgid "Zoom"
msgstr "Приблизить"
#: scene/2d/camera_2d.cpp scene/main/canvas_layer.cpp
-#, fuzzy
msgid "Custom Viewport"
-msgstr "1 Окно"
+msgstr "Пользовательское окно просмотра"
#: scene/2d/camera_2d.cpp scene/3d/camera.cpp scene/3d/interpolated_camera.cpp
#: scene/animation/animation_player.cpp scene/animation/animation_tree.cpp
@@ -20591,22 +20502,19 @@ msgstr "Лимит"
#: scene/2d/camera_2d.cpp scene/gui/control.cpp scene/gui/nine_patch_rect.cpp
#: scene/resources/style_box.cpp scene/resources/texture.cpp
-#, fuzzy
msgid "Left"
-msgstr "UI Влево"
+msgstr "Лево"
#: scene/2d/camera_2d.cpp scene/gui/control.cpp scene/gui/nine_patch_rect.cpp
#: scene/resources/style_box.cpp scene/resources/texture.cpp
-#, fuzzy
msgid "Right"
-msgstr "Свет"
+msgstr "Право"
#: scene/2d/camera_2d.cpp scene/gui/control.cpp scene/gui/nine_patch_rect.cpp
#: scene/resources/dynamic_font.cpp scene/resources/style_box.cpp
#: scene/resources/texture.cpp
-#, fuzzy
msgid "Bottom"
-msgstr "Слева внизу"
+msgstr "Внизу"
#: scene/2d/camera_2d.cpp
#, fuzzy
@@ -20663,9 +20571,8 @@ msgstr "Задать отступ"
#: scene/2d/canvas_item.cpp scene/resources/environment.cpp
#: scene/resources/material.cpp
-#, fuzzy
msgid "Blend Mode"
-msgstr "Blend2 узел"
+msgstr "Режим смешивания"
#: scene/2d/canvas_item.cpp
#, fuzzy
@@ -20673,9 +20580,8 @@ msgid "Light Mode"
msgstr "Справа по всей высоте"
#: scene/2d/canvas_item.cpp
-#, fuzzy
msgid "Particles Animation"
-msgstr "Частицы"
+msgstr "Анимация частиц"
#: scene/2d/canvas_item.cpp
msgid "Particles Anim H Frames"
@@ -20686,9 +20592,8 @@ msgid "Particles Anim V Frames"
msgstr ""
#: scene/2d/canvas_item.cpp
-#, fuzzy
msgid "Particles Anim Loop"
-msgstr "Частицы"
+msgstr "Цикл анимации частиц"
#: scene/2d/canvas_item.cpp scene/3d/spatial.cpp
msgid "Visibility"
@@ -20709,9 +20614,8 @@ msgid "Show Behind Parent"
msgstr ""
#: scene/2d/canvas_item.cpp
-#, fuzzy
msgid "Show On Top"
-msgstr "Отображать центр"
+msgstr "Отображать поверх"
#: scene/2d/canvas_item.cpp scene/2d/light_occluder_2d.cpp
#: scene/2d/tile_map.cpp
@@ -20776,9 +20680,8 @@ msgid ""
msgstr ""
#: scene/2d/collision_polygon_2d.cpp
-#, fuzzy
msgid "Build Mode"
-msgstr "Режим измерения"
+msgstr "Режим сборки"
#: scene/2d/collision_polygon_2d.cpp scene/2d/collision_shape_2d.cpp
#: scene/3d/collision_polygon.cpp scene/3d/collision_shape.cpp
@@ -20792,9 +20695,8 @@ msgid "One Way Collision"
msgstr "Одностороннее столкновение"
#: scene/2d/collision_polygon_2d.cpp scene/2d/collision_shape_2d.cpp
-#, fuzzy
msgid "One Way Collision Margin"
-msgstr "Создать полигон столкновений"
+msgstr "Отступ одностороннего полигона столкновений"
#: scene/2d/collision_shape_2d.cpp
msgid ""
@@ -20869,9 +20771,8 @@ msgstr ""
#: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp
#: scene/3d/cpu_particles.cpp scene/3d/particles.cpp
-#, fuzzy
msgid "Fixed FPS"
-msgstr "Показывать FPS"
+msgstr "Фиксированный FPS"
#: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp
#: scene/3d/cpu_particles.cpp scene/3d/particles.cpp
@@ -20885,9 +20786,8 @@ msgstr ""
#: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp
#: scene/3d/cpu_particles.cpp scene/3d/particles.cpp
-#, fuzzy
msgid "Local Coords"
-msgstr "Локальные проекты"
+msgstr "Локальные координаты"
#: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp
#: scene/3d/cpu_particles.cpp scene/3d/particles.cpp
@@ -20910,15 +20810,13 @@ msgid "Rect Extents"
msgstr "Гизмо"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
-#, fuzzy
msgid "Normals"
-msgstr "Формат"
+msgstr "Нормали"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Align Y"
-msgstr "Оператор присваивания"
+msgstr "Выравнивать по Y"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
@@ -20938,9 +20836,8 @@ msgstr "Начальная скорость"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Velocity Random"
-msgstr "Скорость"
+msgstr "Случайная скорость"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp servers/physics_2d_server.cpp
@@ -20950,9 +20847,8 @@ msgstr "Угловая скорость"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Velocity Curve"
-msgstr "Скорость"
+msgstr "Кривая скорости"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
@@ -20966,20 +20862,18 @@ msgstr "Линейное ускорение"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Accel"
-msgstr "Доступ"
+msgstr "Ускорение"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
msgid "Accel Random"
-msgstr ""
+msgstr "Случайное ускорение"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Accel Curve"
-msgstr "Разделить кривую"
+msgstr "Кривая ускорения"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
@@ -21006,9 +20900,8 @@ msgstr ""
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Damping Curve"
-msgstr "Разделить кривую"
+msgstr "Кривая затухания"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp scene/3d/light.cpp
#: scene/resources/particles_material.cpp
@@ -21022,23 +20915,20 @@ msgstr ""
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Angle Curve"
-msgstr "Сомкнуть кривую"
+msgstr "Кривая угла"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
-#, fuzzy
msgid "Scale Amount"
-msgstr "Количество солнц"
+msgstr "Масштаб"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
msgid "Scale Amount Random"
msgstr ""
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
-#, fuzzy
msgid "Scale Amount Curve"
-msgstr "Масштабировать от курсора"
+msgstr "Кривая масштаба"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
@@ -21058,45 +20948,38 @@ msgstr "Вариация оттенка"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Variation"
-msgstr "Вариация оттенка"
+msgstr "Вариация"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Variation Random"
-msgstr "Вариация оттенка"
+msgstr "Случайная вариация"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Variation Curve"
-msgstr "Вариация оттенка"
+msgstr "Кривая вариации"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Speed Random"
-msgstr "Масштаб скорости"
+msgstr "Случайная скорость"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Speed Curve"
-msgstr "Разделить кривую"
+msgstr "Кривая скорости"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Offset Random"
-msgstr "Смещение"
+msgstr "Случайное смещение"
#: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Offset Curve"
-msgstr "Сомкнуть кривую"
+msgstr "Кривая смещения"
#: scene/2d/joints_2d.cpp
msgid "Node A and Node B must be PhysicsBody2Ds"
@@ -21122,14 +21005,12 @@ msgstr ""
"Узел А и Узел B должны быть различными экземплярами класса PhysicsBody2D"
#: scene/2d/joints_2d.cpp scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Node A"
-msgstr "Узел"
+msgstr "Узел А"
#: scene/2d/joints_2d.cpp scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Node B"
-msgstr "Узел"
+msgstr "Узел B"
#: scene/2d/joints_2d.cpp scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp
#: scene/3d/light.cpp scene/3d/physics_body.cpp scene/3d/physics_joint.cpp
@@ -21138,9 +21019,8 @@ msgid "Bias"
msgstr ""
#: scene/2d/joints_2d.cpp
-#, fuzzy
msgid "Disable Collision"
-msgstr "Заблокированная кнопка"
+msgstr "Отключить столкновения"
#: scene/2d/joints_2d.cpp scene/3d/physics_body.cpp scene/3d/physics_joint.cpp
msgid "Softness"
@@ -21152,9 +21032,8 @@ msgid "Length"
msgstr "Длина"
#: scene/2d/joints_2d.cpp
-#, fuzzy
msgid "Initial Offset"
-msgstr "Инициализировать"
+msgstr "Начальное смещение"
#: scene/2d/joints_2d.cpp scene/3d/vehicle_body.cpp
msgid "Rest Length"
@@ -21176,9 +21055,8 @@ msgid "Editor Only"
msgstr "Редактор"
#: scene/2d/light_2d.cpp
-#, fuzzy
msgid "Texture Scale"
-msgstr "Область текстуры"
+msgstr "Масштаб текстуры"
#: scene/2d/light_2d.cpp scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp
#: scene/3d/light.cpp scene/resources/environment.cpp
@@ -21195,14 +21073,12 @@ msgid "Z Max"
msgstr ""
#: scene/2d/light_2d.cpp
-#, fuzzy
msgid "Layer Min"
-msgstr "Изменить размер камеры"
+msgstr "Слой Min"
#: scene/2d/light_2d.cpp
-#, fuzzy
msgid "Layer Max"
-msgstr "Слой"
+msgstr "Слой Max"
#: scene/2d/light_2d.cpp
msgid "Item Cull Mask"
@@ -21217,14 +21093,12 @@ msgid "Buffer Size"
msgstr "Размер буфера"
#: scene/2d/light_2d.cpp
-#, fuzzy
msgid "Gradient Length"
-msgstr "Градиент отредактирован"
+msgstr "Длина градиента"
#: scene/2d/light_2d.cpp
-#, fuzzy
msgid "Filter Smooth"
-msgstr "Фильтр методов"
+msgstr "Фильтровать сглаживание"
#: scene/2d/light_occluder_2d.cpp
msgid "Closed"
@@ -21346,14 +21220,12 @@ msgid "Path Max Distance"
msgstr "Максимальное расстояние пути"
#: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp
-#, fuzzy
msgid "Avoidance"
-msgstr "Дополнительно"
+msgstr "Уклонение"
#: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp
-#, fuzzy
msgid "Avoidance Enabled"
-msgstr "Включить"
+msgstr "Включить уклонение"
#: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp
msgid "Neighbor Dist"
@@ -21568,14 +21440,12 @@ msgid "Layers"
msgstr "Слои"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
-#, fuzzy
msgid "Constant Linear Velocity"
-msgstr "Инициализировать"
+msgstr "Постоянная линейная скорость"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
-#, fuzzy
msgid "Constant Angular Velocity"
-msgstr "Инициализировать"
+msgstr "Постоянная угловая скорость"
#: scene/2d/physics_body_2d.cpp scene/2d/tile_map.cpp scene/3d/physics_body.cpp
#: scene/resources/physics_material.cpp
@@ -21712,26 +21582,22 @@ msgstr "ID коллайдера"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
#: servers/physics_2d_server.cpp servers/physics_server.cpp
-#, fuzzy
msgid "Collider RID"
-msgstr "Неверный RID"
+msgstr "Коллайдер RID"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
#: servers/physics_2d_server.cpp servers/physics_server.cpp
-#, fuzzy
msgid "Collider Shape"
-msgstr "Режим столкновения"
+msgstr "Форма коллайдера"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
-#, fuzzy
msgid "Collider Shape Index"
-msgstr "Режим столкновения"
+msgstr "Индекс формы коллайдера"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
#: servers/physics_2d_server.cpp servers/physics_server.cpp
-#, fuzzy
msgid "Collider Velocity"
-msgstr "Вид с орбиты вправо"
+msgstr "Скорость коллайдера"
#: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp
msgid "Collider Metadata"
@@ -21742,14 +21608,12 @@ msgid "Invert"
msgstr ""
#: scene/2d/polygon_2d.cpp
-#, fuzzy
msgid "Vertex Colors"
-msgstr "Вершины"
+msgstr "Цвета вершин"
#: scene/2d/polygon_2d.cpp
-#, fuzzy
msgid "Internal Vertex Count"
-msgstr "Создать внутреннюю вершину"
+msgstr "Внутренний счет вершин"
#: scene/2d/position_2d.cpp
#, fuzzy
@@ -21761,9 +21625,8 @@ msgid "Exclude Parent"
msgstr ""
#: scene/2d/ray_cast_2d.cpp scene/3d/ray_cast.cpp
-#, fuzzy
msgid "Cast To"
-msgstr "Создать Шейдерный узел"
+msgstr "Отбрасывать на"
#: scene/2d/ray_cast_2d.cpp scene/3d/ray_cast.cpp
msgid "Collide With"
@@ -21784,14 +21647,12 @@ msgstr ""
"Node2D."
#: scene/2d/remote_transform_2d.cpp scene/3d/remote_transform.cpp
-#, fuzzy
msgid "Remote Path"
-msgstr "Удалить точку"
+msgstr "Удаленный путь"
#: scene/2d/remote_transform_2d.cpp scene/3d/remote_transform.cpp
-#, fuzzy
msgid "Use Global Coordinates"
-msgstr "Следующая координата"
+msgstr "Использовать глобальные координаты"
#: scene/2d/skeleton_2d.cpp scene/3d/skeleton.cpp
#, fuzzy
@@ -21799,9 +21660,8 @@ msgid "Rest"
msgstr "Перезапустить"
#: scene/2d/skeleton_2d.cpp
-#, fuzzy
msgid "Default Length"
-msgstr "Тема по умолчанию"
+msgstr "Длина по умолчанию"
#: scene/2d/skeleton_2d.cpp
msgid "This Bone2D chain should end at a Skeleton2D node."
@@ -21852,9 +21712,8 @@ msgid "Tile Set"
msgstr "Набор тайлов"
#: scene/2d/tile_map.cpp
-#, fuzzy
msgid "Quadrant Size"
-msgstr "Изменить размер камеры"
+msgstr "Размер квадранта"
#: scene/2d/tile_map.cpp
#, fuzzy
@@ -21877,14 +21736,12 @@ msgid "Y Sort"
msgstr "Сортировать"
#: scene/2d/tile_map.cpp
-#, fuzzy
msgid "Show Collision"
-msgstr "Столкновение"
+msgstr "Показывать столкновение"
#: scene/2d/tile_map.cpp
-#, fuzzy
msgid "Compatibility Mode"
-msgstr "Режим приоритета"
+msgstr "Режим совместимости"
#: scene/2d/tile_map.cpp
msgid "Centered Textures"
@@ -21895,9 +21752,8 @@ msgid "Cell Clip UV"
msgstr ""
#: scene/2d/tile_map.cpp
-#, fuzzy
msgid "Use Parent"
-msgstr "Режим столкновения"
+msgstr "Использовать родитель"
#: scene/2d/tile_map.cpp
msgid "Use Kinematic"
@@ -21909,9 +21765,8 @@ msgid "Shape Centered"
msgstr "Привязка к центру узла"
#: scene/2d/touch_screen_button.cpp
-#, fuzzy
msgid "Shape Visible"
-msgstr "Переключить видимость"
+msgstr "Видимость формы"
#: scene/2d/touch_screen_button.cpp
msgid "Passby Press"
@@ -21930,29 +21785,24 @@ msgstr ""
"является его прямым родителем."
#: scene/2d/visibility_notifier_2d.cpp scene/3d/visibility_notifier.cpp
-#, fuzzy
msgid "Pause Animations"
-msgstr "Вставить анимацию"
+msgstr "Приостановить анимации"
#: scene/2d/visibility_notifier_2d.cpp scene/3d/visibility_notifier.cpp
-#, fuzzy
msgid "Freeze Bodies"
-msgstr "Тела"
+msgstr "Заморозить тела"
#: scene/2d/visibility_notifier_2d.cpp
-#, fuzzy
msgid "Pause Particles"
-msgstr "Частицы"
+msgstr "Приостановить частицы"
#: scene/2d/visibility_notifier_2d.cpp
-#, fuzzy
msgid "Pause Animated Sprites"
-msgstr "Вставить анимацию"
+msgstr "Приостановить анимационные спрайты"
#: scene/2d/visibility_notifier_2d.cpp
-#, fuzzy
msgid "Process Parent"
-msgstr "Включить приоритет"
+msgstr "Родитель процесса"
#: scene/2d/visibility_notifier_2d.cpp
msgid "Physics Process Parent"
@@ -21992,9 +21842,8 @@ msgstr ""
"будет привязан к фактическому контроллеру."
#: scene/3d/arvr_nodes.cpp
-#, fuzzy
msgid "Anchor ID"
-msgstr "Только якоря"
+msgstr "ID якоря"
#: scene/3d/arvr_nodes.cpp
msgid "ARVRAnchor must have an ARVROrigin node as its parent."
@@ -22018,9 +21867,8 @@ msgid "World Scale"
msgstr "Мировой масштаб"
#: scene/3d/audio_stream_player_3d.cpp
-#, fuzzy
msgid "Attenuation Model"
-msgstr "Animation узел"
+msgstr "Модель затухания"
#: scene/3d/audio_stream_player_3d.cpp
msgid "Unit dB"
@@ -22039,9 +21887,8 @@ msgid "Out Of Range Mode"
msgstr "Режим Вне Зоны Действия"
#: scene/3d/audio_stream_player_3d.cpp
-#, fuzzy
msgid "Emission Angle"
-msgstr "Цвета излучения"
+msgstr "Угол излучения"
#: scene/3d/audio_stream_player_3d.cpp
msgid "Degrees"
@@ -22176,18 +22023,16 @@ msgid "Min Light"
msgstr "Минимальный Свет"
#: scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp
-#, fuzzy
msgid "Propagation"
-msgstr "Навигация"
+msgstr "Распространение"
#: scene/3d/baked_lightmap.cpp
msgid "Image Path"
msgstr "Путь к изображению"
#: scene/3d/baked_lightmap.cpp
-#, fuzzy
msgid "Light Data"
-msgstr "С данными"
+msgstr "Данные света"
#: scene/3d/bone_attachment.cpp scene/3d/physics_body.cpp
msgid "Bone Name"
@@ -22337,28 +22182,24 @@ msgid "Ring Axis"
msgstr "Ось Кольца"
#: scene/3d/cpu_particles.cpp scene/resources/particles_material.cpp
-#, fuzzy
msgid "Rotate Y"
-msgstr "Повернуть"
+msgstr "Повернуть по Y"
#: scene/3d/cpu_particles.cpp scene/resources/particles_material.cpp
-#, fuzzy
msgid "Disable Z"
-msgstr "Отключить 3D"
+msgstr "Отключить Z"
#: scene/3d/cpu_particles.cpp scene/resources/particles_material.cpp
msgid "Flatness"
msgstr "Плоскостность"
#: scene/3d/cull_instance.cpp servers/visual_server.cpp
-#, fuzzy
msgid "Portals"
-msgstr "Перевернуть порталы"
+msgstr "Порталы"
#: scene/3d/cull_instance.cpp
-#, fuzzy
msgid "Portal Mode"
-msgstr "Режим приоритета"
+msgstr "Режим портала"
#: scene/3d/cull_instance.cpp
msgid "Include In Bound"
@@ -22404,9 +22245,8 @@ msgid "Subdiv"
msgstr ""
#: scene/3d/gi_probe.cpp
-#, fuzzy
msgid "Dynamic Range"
-msgstr "Динамическая библиотека"
+msgstr "Динамический диапазон"
#: scene/3d/gi_probe.cpp scene/3d/light.cpp
msgid "Normal Bias"
@@ -22414,23 +22254,20 @@ msgstr ""
#: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp
#: scene/resources/primitive_meshes.cpp
-#, fuzzy
msgid "Pixel Size"
-msgstr "Попиксельная привязка"
+msgstr "Размер пикселя"
#: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp
msgid "Billboard"
msgstr ""
#: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp
-#, fuzzy
msgid "Shaded"
-msgstr "Шейдер"
+msgstr "Затененный"
#: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp
-#, fuzzy
msgid "Double Sided"
-msgstr "Двойной щелчок"
+msgstr "Двухсторонний"
#: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp scene/resources/material.cpp
msgid "No Depth Test"
@@ -22454,9 +22291,8 @@ msgid "Render Priority"
msgstr "Приоритет рендеринга"
#: scene/3d/label_3d.cpp
-#, fuzzy
msgid "Outline Render Priority"
-msgstr "Приоритет рендеринга"
+msgstr "Выделить приоритет рендеринга"
#: scene/3d/label_3d.cpp
#, fuzzy
@@ -22469,14 +22305,12 @@ msgid "Font"
msgstr "Шрифт"
#: scene/3d/label_3d.cpp scene/resources/primitive_meshes.cpp
-#, fuzzy
msgid "Horizontal Alignment"
-msgstr "Горизонтальная включена"
+msgstr "Горизонтальное выравнивание"
#: scene/3d/label_3d.cpp
-#, fuzzy
msgid "Vertical Alignment"
-msgstr "Выравнивание"
+msgstr "Вертикальное выравнивание"
#: scene/3d/label_3d.cpp scene/gui/dialogs.cpp scene/gui/label.cpp
msgid "Autowrap"
@@ -22488,25 +22322,21 @@ msgid "Indirect Energy"
msgstr "Цвета излучения"
#: scene/3d/light.cpp
-#, fuzzy
msgid "Negative"
-msgstr "GDNative"
+msgstr "Негатив"
#: scene/3d/light.cpp scene/resources/material.cpp
#: scene/resources/visual_shader.cpp
-#, fuzzy
msgid "Specular"
-msgstr "Режим измерения"
+msgstr ""
#: scene/3d/light.cpp
-#, fuzzy
msgid "Bake Mode"
-msgstr "Режим битовой маски"
+msgstr "Режим запекания"
#: scene/3d/light.cpp
-#, fuzzy
msgid "Contact"
-msgstr "Контраст"
+msgstr "Контакт"
#: scene/3d/light.cpp
#, fuzzy
@@ -22514,24 +22344,20 @@ msgid "Reverse Cull Face"
msgstr "Сбросить громкость шины"
#: scene/3d/light.cpp servers/visual_server.cpp
-#, fuzzy
msgid "Directional Shadow"
-msgstr "Направления"
+msgstr "Направленные тени"
#: scene/3d/light.cpp
-#, fuzzy
msgid "Split 1"
-msgstr "Раздельный"
+msgstr "Раздельный 1"
#: scene/3d/light.cpp
-#, fuzzy
msgid "Split 2"
-msgstr "Раздельный"
+msgstr "Раздельный 2"
#: scene/3d/light.cpp
-#, fuzzy
msgid "Split 3"
-msgstr "Раздельный"
+msgstr "Раздельный 3"
#: scene/3d/light.cpp
#, fuzzy
@@ -22544,23 +22370,20 @@ msgid "Bias Split Scale"
msgstr "Базовый масштаб"
#: scene/3d/light.cpp
-#, fuzzy
msgid "Depth Range"
-msgstr "Глубина"
+msgstr "Диапазон глубины"
#: scene/3d/light.cpp
msgid "Omni"
msgstr ""
#: scene/3d/light.cpp
-#, fuzzy
msgid "Shadow Mode"
-msgstr "Шейдер"
+msgstr "Режим тени"
#: scene/3d/light.cpp
-#, fuzzy
msgid "Shadow Detail"
-msgstr "Показать по умолчанию"
+msgstr "Детали тени"
#: scene/3d/light.cpp
msgid "A SpotLight with an angle wider than 90 degrees cannot cast shadows."
@@ -22571,9 +22394,8 @@ msgid "Spot"
msgstr ""
#: scene/3d/light.cpp
-#, fuzzy
msgid "Angle Attenuation"
-msgstr "Анимация"
+msgstr "Угол угасания"
#: scene/3d/mesh_instance.cpp
msgid "Software Skinning"
@@ -22592,23 +22414,20 @@ msgid ""
msgstr ""
#: scene/3d/navigation.cpp scene/resources/curve.cpp
-#, fuzzy
msgid "Up Vector"
-msgstr "Вектор"
+msgstr "Вектор вверх"
#: scene/3d/navigation.cpp
-#, fuzzy
msgid "Cell Height"
-msgstr "Тестируемые"
+msgstr "Высота клетки"
#: scene/3d/navigation_agent.cpp
msgid "Agent Height Offset"
msgstr ""
#: scene/3d/navigation_agent.cpp
-#, fuzzy
msgid "Ignore Y"
-msgstr "[Игнорировать]"
+msgstr "Игнорировать Y"
#: scene/3d/navigation_agent.cpp
#, fuzzy
@@ -22677,9 +22496,8 @@ msgstr ""
"Mode установлено в «Particle Billboard»."
#: scene/3d/particles.cpp
-#, fuzzy
msgid "Visibility AABB"
-msgstr "Переключить видимость"
+msgstr "Видимость AABB"
#: scene/3d/particles.cpp
#, fuzzy
@@ -22719,59 +22537,48 @@ msgstr ""
"Измените размер дочерней формы коллизии."
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Axis Lock"
-msgstr "Ось"
+msgstr "Заблокировать ось"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Linear X"
-msgstr "Линейный"
+msgstr "Линейный X"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Linear Y"
-msgstr "Линейный"
+msgstr "Линейный Y"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Linear Z"
-msgstr "Линейный"
+msgstr "Линейный Z"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Angular X"
-msgstr "Угловая скорость"
+msgstr "Угловая скорость X"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Angular Y"
-msgstr "Угловая скорость"
+msgstr "Угловая скорость Y"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Angular Z"
-msgstr "Угловая скорость"
+msgstr "Угловая скорость Z"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Motion X"
-msgstr "Движение"
+msgstr "Движение X"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Motion Y"
-msgstr "Движение"
+msgstr "Движение Y"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Motion Z"
-msgstr "Движение"
+msgstr "Движение Z"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Joint Constraints"
-msgstr "Константы"
+msgstr "Ограничения соединений"
#: scene/3d/physics_body.cpp scene/3d/physics_joint.cpp
msgid "Impulse Clamp"
@@ -22798,24 +22605,20 @@ msgid "Angular Limit Enabled"
msgstr "Фильтр сигналов"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Angular Limit Upper"
-msgstr "Линейный"
+msgstr "Верхний лимит угловой скорости"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Angular Limit Lower"
-msgstr "Угловая скорость"
+msgstr "Нижний лимит угловой скорости"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Angular Limit Bias"
-msgstr "Линейный"
+msgstr "Смещение лимита угловой скорости"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Angular Limit Softness"
-msgstr "Угловая скорость"
+msgstr "Мягкость лимита угловой скорости"
#: scene/3d/physics_body.cpp
#, fuzzy
@@ -22823,14 +22626,12 @@ msgid "Angular Limit Relaxation"
msgstr "Угловая скорость"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Linear Limit Upper"
-msgstr "Линейный"
+msgstr "Линейный лимит верхний"
#: scene/3d/physics_body.cpp
-#, fuzzy
msgid "Linear Limit Lower"
-msgstr "Линейный"
+msgstr "Линейный лимит нижний"
#: scene/3d/physics_body.cpp
#, fuzzy
@@ -22979,14 +22780,12 @@ msgid "Angular Limit"
msgstr "Угловой Предел"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Upper"
-msgstr "ВЕРХНИЙ РЕГИСТР"
+msgstr "Верхний"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Lower"
-msgstr "нижний регистр"
+msgstr "Нижний"
#: scene/3d/physics_joint.cpp
msgid "Motor"
@@ -23003,14 +22802,12 @@ msgid "Max Impulse"
msgstr "Макс скорость"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Linear Limit"
-msgstr "Линейный"
+msgstr "Линейный лимит"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Upper Distance"
-msgstr "Расстояние образца"
+msgstr "Верхняя дистанция"
#: scene/3d/physics_joint.cpp
#, fuzzy
@@ -23023,29 +22820,24 @@ msgid "Restitution"
msgstr "Описание"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Linear Motion"
-msgstr "Инициализировать"
+msgstr "Линейное движение"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Linear Ortho"
-msgstr "Задний ортогональный"
+msgstr "Линейный ортогональный"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Upper Angle"
-msgstr "ВЕРХНИЙ РЕГИСТР"
+msgstr "Верхний Угол"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Lower Angle"
-msgstr "нижний регистр"
+msgstr "Нижний угол"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Angular Motion"
-msgstr "Угловая скорость"
+msgstr "Угловое движение"
#: scene/3d/physics_joint.cpp
#, fuzzy
@@ -23053,19 +22845,16 @@ msgid "Angular Ortho"
msgstr "Угловая прямость"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Linear Limit X"
-msgstr "Линейный"
+msgstr "Линейный лимит X"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Linear Motor X"
-msgstr "Инициализировать"
+msgstr "Линейный мотор X"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Force Limit"
-msgstr "Рисовать лимиты"
+msgstr "Форсировать лимиты"
#: scene/3d/physics_joint.cpp
#, fuzzy
@@ -23090,14 +22879,12 @@ msgid "Angular Spring X"
msgstr "X Угловой Пружины"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Linear Limit Y"
-msgstr "Линейный"
+msgstr "Линейный лимит Y"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Linear Motor Y"
-msgstr "Инициализировать"
+msgstr "Линейный мотор Y"
#: scene/3d/physics_joint.cpp
#, fuzzy
@@ -23118,14 +22905,12 @@ msgid "Angular Spring Y"
msgstr "Y Угловой Пружины"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Linear Limit Z"
-msgstr "Линейный"
+msgstr "Линейный лимит Z"
#: scene/3d/physics_joint.cpp
-#, fuzzy
msgid "Linear Motor Z"
-msgstr "Инициализировать"
+msgstr "Линейный мотор Z"
#: scene/3d/physics_joint.cpp
#, fuzzy
@@ -23170,14 +22955,12 @@ msgid "Linked Room"
msgstr "Связанная комната"
#: scene/3d/portal.cpp
-#, fuzzy
msgid "Use Default Margin"
-msgstr "По умолчанию"
+msgstr "Использовать отступы по умолчанию"
#: scene/3d/proximity_group.cpp
-#, fuzzy
msgid "Group Name"
-msgstr "Сгруппирован"
+msgstr "Имя группы"
#: scene/3d/proximity_group.cpp
msgid "Dispatch Mode"
@@ -23188,18 +22971,16 @@ msgid "Grid Radius"
msgstr "Радиус сетки"
#: scene/3d/ray_cast.cpp
-#, fuzzy
msgid "Debug Shape"
-msgstr "Отладчик"
+msgstr "Форма отладчика"
#: scene/3d/ray_cast.cpp scene/resources/style_box.cpp
msgid "Thickness"
msgstr ""
#: scene/3d/reflection_probe.cpp scene/main/viewport.cpp
-#, fuzzy
msgid "Update Mode"
-msgstr "Режим вращения"
+msgstr "Режим обновления"
#: scene/3d/reflection_probe.cpp
#, fuzzy
@@ -23212,14 +22993,12 @@ msgid "Box Projection"
msgstr "Проект"
#: scene/3d/reflection_probe.cpp
-#, fuzzy
msgid "Enable Shadows"
-msgstr "Включить привязку"
+msgstr "Включить тени"
#: scene/3d/reflection_probe.cpp
-#, fuzzy
msgid "Ambient Color"
-msgstr "Выбрать цвет"
+msgstr "Ambient цвет"
#: scene/3d/reflection_probe.cpp
#, fuzzy
@@ -23227,9 +23006,8 @@ msgid "Ambient Energy"
msgstr "Цвета излучения"
#: scene/3d/reflection_probe.cpp
-#, fuzzy
msgid "Ambient Contrib"
-msgstr "Отступ вправо"
+msgstr "Ambient влияние"
#: scene/3d/remote_transform.cpp
msgid ""
@@ -23273,9 +23051,8 @@ msgid "Bound"
msgstr "Граница"
#: scene/3d/room_group.cpp
-#, fuzzy
msgid "Roomgroup Priority"
-msgstr "Приоритет"
+msgstr "Roomgroup приоритет"
#: scene/3d/room_group.cpp
msgid "The RoomManager should not be placed inside a RoomGroup."
@@ -23309,28 +23086,24 @@ msgstr "Главная"
#: scene/animation/animation_player.cpp scene/animation/animation_tree.cpp
#: scene/animation/animation_tree_player.cpp
#: servers/audio/effects/audio_effect_delay.cpp
-#, fuzzy
msgid "Active"
-msgstr "Действие"
+msgstr "Активный"
#: scene/3d/room_manager.cpp
msgid "Roomlist"
msgstr "Список комнат"
#: scene/3d/room_manager.cpp servers/visual_server.cpp
-#, fuzzy
msgid "PVS"
-msgstr "FPS"
+msgstr ""
#: scene/3d/room_manager.cpp
-#, fuzzy
msgid "PVS Mode"
-msgstr "Режим осмотра"
+msgstr "PVS режим"
#: scene/3d/room_manager.cpp
-#, fuzzy
msgid "PVS Filename"
-msgstr "ZIP-файл"
+msgstr "PVS имя файла"
#: scene/3d/room_manager.cpp servers/visual_server.cpp
msgid "Gameplay"
@@ -23342,42 +23115,36 @@ msgid "Gameplay Monitor"
msgstr "Геймплей"
#: scene/3d/room_manager.cpp
-#, fuzzy
msgid "Use Secondary PVS"
-msgstr "Использовать привязку масштабирования"
+msgstr "Использовать вторичный PVS"
#: scene/3d/room_manager.cpp
-#, fuzzy
msgid "Merge Meshes"
-msgstr "Меши"
+msgstr "Соединить меши"
#: scene/3d/room_manager.cpp
-#, fuzzy
msgid "Show Margins"
-msgstr "Отображать центр"
+msgstr "Показать отступы"
#: scene/3d/room_manager.cpp
-#, fuzzy
msgid "Debug Sprawl"
-msgstr "Отладка"
+msgstr "Отладка Sprawl"
#: scene/3d/room_manager.cpp
msgid "Overlap Warning Threshold"
msgstr ""
#: scene/3d/room_manager.cpp
-#, fuzzy
msgid "Preview Camera"
-msgstr "Размер превью"
+msgstr "Камера предпросмотра"
#: scene/3d/room_manager.cpp
msgid "Portal Depth Limit"
msgstr ""
#: scene/3d/room_manager.cpp
-#, fuzzy
msgid "Default Portal Margin"
-msgstr "Отступ портала"
+msgstr "Отступ портала по умолчанию"
#: scene/3d/room_manager.cpp
#, fuzzy
@@ -23435,43 +23202,36 @@ msgstr ""
"Убедитесь, что все комнаты содержат геометрию или границы заданы вручную."
#: scene/3d/skeleton.cpp scene/resources/skin.cpp
-#, fuzzy
msgid "Pose"
-msgstr "Копировать позу"
+msgstr "Поза"
#: scene/3d/skeleton.cpp
-#, fuzzy
msgid "Bound Children"
-msgstr "Дети"
+msgstr "Связать детей"
#: scene/3d/soft_body.cpp
-#, fuzzy
msgid "Pinned Points"
-msgstr "Закреплено %s"
+msgstr "Закрепленные точки"
#: scene/3d/soft_body.cpp
-#, fuzzy
msgid "Attachments"
-msgstr "Гизмо"
+msgstr "Приложения"
#: scene/3d/soft_body.cpp
-#, fuzzy
msgid "Point Index"
-msgstr "Получить индекс"
+msgstr "Индекс точки"
#: scene/3d/soft_body.cpp
msgid "Spatial Attachment Path"
msgstr ""
#: scene/3d/soft_body.cpp
-#, fuzzy
msgid "Physics Enabled"
-msgstr "Кадр физики %"
+msgstr "Физика включена"
#: scene/3d/soft_body.cpp
-#, fuzzy
msgid "Parent Collision Ignore"
-msgstr "Создать полигон столкновений"
+msgstr "Игнорировать родительские столкновения"
#: scene/3d/soft_body.cpp
msgid "Simulation Precision"
@@ -23552,9 +23312,8 @@ msgid "Opacity"
msgstr ""
#: scene/3d/sprite_3d.cpp scene/resources/material.cpp
-#, fuzzy
msgid "Transparent"
-msgstr "Транспонировать"
+msgstr "Прозрачный"
#: scene/3d/sprite_3d.cpp
msgid ""
@@ -23578,9 +23337,8 @@ msgid "Per-Wheel Motion"
msgstr "Колёсико вниз"
#: scene/3d/vehicle_body.cpp
-#, fuzzy
msgid "Engine Force"
-msgstr "Онлайн документация"
+msgstr "Сила движка"
#: scene/3d/vehicle_body.cpp
msgid "Brake"
@@ -23617,28 +23375,24 @@ msgid "Friction Slip"
msgstr "Функция"
#: scene/3d/vehicle_body.cpp
-#, fuzzy
msgid "Suspension"
-msgstr "Выражение"
+msgstr "Подвеска"
#: scene/3d/vehicle_body.cpp
-#, fuzzy
msgid "Max Force"
-msgstr "Ошибка"
+msgstr "Макс Сила"
#: scene/3d/visibility_notifier.cpp
msgid "AABB"
msgstr ""
#: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp
-#, fuzzy
msgid "Geometry"
-msgstr "Повторить"
+msgstr "Геометрия"
#: scene/3d/visual_instance.cpp
-#, fuzzy
msgid "Material Override"
-msgstr "Переопределить"
+msgstr "Переопределить материалы"
#: scene/3d/visual_instance.cpp
#, fuzzy
@@ -23646,9 +23400,8 @@ msgid "Material Overlay"
msgstr "Наложение материала"
#: scene/3d/visual_instance.cpp
-#, fuzzy
msgid "Cast Shadow"
-msgstr "Создать Шейдерный узел"
+msgstr "Отбрасывать тень"
#: scene/3d/visual_instance.cpp
#, fuzzy
@@ -23666,9 +23419,8 @@ msgid "Generate Lightmap"
msgstr "Создание карт освещения"
#: scene/3d/visual_instance.cpp
-#, fuzzy
msgid "Lightmap Scale"
-msgstr "Запекание LightMap"
+msgstr "Масштаб карты освещения"
#: scene/3d/visual_instance.cpp
msgid "LOD"
@@ -23719,9 +23471,8 @@ msgid "Animation not found: '%s'"
msgstr "Анимация не найдена: %s"
#: scene/animation/animation_blend_tree.cpp
-#, fuzzy
msgid "Mix Mode"
-msgstr "Mix узел"
+msgstr "Mix режим"
#: scene/animation/animation_blend_tree.cpp
msgid "Fadein Time"
@@ -23742,24 +23493,20 @@ msgid "Autorestart"
msgstr "Автоперезапуск"
#: scene/animation/animation_blend_tree.cpp
-#, fuzzy
msgid "Delay"
-msgstr "Задержка (мс)"
+msgstr "Задержка"
#: scene/animation/animation_blend_tree.cpp
-#, fuzzy
msgid "Random Delay"
-msgstr "Случайная задержка автоперезапуска"
+msgstr "Случайная задержка"
#: scene/animation/animation_blend_tree.cpp
-#, fuzzy
msgid "Add Amount"
-msgstr "Количество"
+msgstr "Добавить количество"
#: scene/animation/animation_blend_tree.cpp
-#, fuzzy
msgid "Blend Amount"
-msgstr "Количество солнц"
+msgstr "Количество смешивания"
#: scene/animation/animation_blend_tree.cpp
#, fuzzy
@@ -23773,19 +23520,16 @@ msgstr "Добавить входной порт"
#: scene/animation/animation_blend_tree.cpp
#: scene/animation/animation_node_state_machine.cpp
-#, fuzzy
msgid "Xfade Time"
-msgstr "Время затухания"
+msgstr "Время Xfade"
#: scene/animation/animation_node_state_machine.cpp
-#, fuzzy
msgid "Switch Mode"
-msgstr "Множественный выбор"
+msgstr "Режим переключения"
#: scene/animation/animation_node_state_machine.cpp
-#, fuzzy
msgid "Auto Advance"
-msgstr "Автоматическая установка"
+msgstr "Автоматическое продвижение"
#: scene/animation/animation_node_state_machine.cpp
#, fuzzy
@@ -23797,28 +23541,24 @@ msgid "Anim Apply Reset"
msgstr "Анимация - Применить сброс"
#: scene/animation/animation_player.cpp
-#, fuzzy
msgid "Current Animation"
-msgstr "Задать анимацию"
+msgstr "Текущая анимация"
#: scene/animation/animation_player.cpp
-#, fuzzy
msgid "Assigned Animation"
-msgstr "Добавить анимацию"
+msgstr "Привязанная анимация"
#: scene/animation/animation_player.cpp
msgid "Reset On Save"
msgstr ""
#: scene/animation/animation_player.cpp
-#, fuzzy
msgid "Current Animation Length"
-msgstr "Изменить длину анимации"
+msgstr "Длина текущей анимации"
#: scene/animation/animation_player.cpp
-#, fuzzy
msgid "Current Animation Position"
-msgstr "Добавить точку анимации"
+msgstr "Позиция текущей анимации"
#: scene/animation/animation_player.cpp
#, fuzzy
@@ -23826,9 +23566,8 @@ msgid "Playback Options"
msgstr "Параметры воспроизведения"
#: scene/animation/animation_player.cpp
-#, fuzzy
msgid "Default Blend Time"
-msgstr "Тема по умолчанию"
+msgstr "Время смешения по умолчанию"
#: scene/animation/animation_player.cpp
msgid "Method Call Mode"
@@ -23867,32 +23606,28 @@ msgid "Tree Root"
msgstr "Корень дерева"
#: scene/animation/animation_tree.cpp
-#, fuzzy
msgid "Anim Player"
-msgstr "Закрепить анимацию игрока"
+msgstr "Анимация игрока"
#: scene/animation/animation_tree.cpp
msgid "Root Motion"
msgstr ""
#: scene/animation/animation_tree.cpp
-#, fuzzy
msgid "Track"
-msgstr "Добавить трек"
+msgstr "Дорожка"
#: scene/animation/animation_tree_player.cpp
msgid "This node has been deprecated. Use AnimationTree instead."
msgstr "Этот узел был удален. Вместо этого используйте AnimationTree."
#: scene/animation/animation_tree_player.cpp
-#, fuzzy
msgid "Playback"
-msgstr "Запустить"
+msgstr "Воспроизведение"
#: scene/animation/animation_tree_player.cpp
-#, fuzzy
msgid "Master Player"
-msgstr "Вставить параметры"
+msgstr "Главный Игрок"
#: scene/animation/animation_tree_player.cpp
#, fuzzy
@@ -23900,29 +23635,24 @@ msgid "Base Path"
msgstr "Путь экспорта"
#: scene/animation/root_motion_view.cpp
-#, fuzzy
msgid "Animation Path"
-msgstr "Анимация"
+msgstr "Путь анимации"
#: scene/animation/root_motion_view.cpp
-#, fuzzy
msgid "Zero Y"
-msgstr "Ноль"
+msgstr "Ноль Y"
#: scene/animation/skeleton_ik.cpp
-#, fuzzy
msgid "Root Bone"
-msgstr "Имя корневого узла"
+msgstr "Корневая кость"
#: scene/animation/skeleton_ik.cpp
-#, fuzzy
msgid "Tip Bone"
-msgstr "Кости"
+msgstr "Конечная кость"
#: scene/animation/skeleton_ik.cpp
-#, fuzzy
msgid "Interpolation"
-msgstr "Режим интерполяции"
+msgstr "Интерполяция"
#: scene/animation/skeleton_ik.cpp
#, fuzzy
@@ -23938,40 +23668,34 @@ msgid "Magnet"
msgstr "Магнит"
#: scene/animation/skeleton_ik.cpp
-#, fuzzy
msgid "Target Node"
-msgstr "Переподчинить узел"
+msgstr "Целевой узел"
#: scene/animation/skeleton_ik.cpp
-#, fuzzy
msgid "Max Iterations"
-msgstr "Сделать функцию"
+msgstr "Макс повторений"
#: scene/animation/tween.cpp
msgid "Playback Process Mode"
msgstr ""
#: scene/animation/tween.cpp
-#, fuzzy
msgid "Playback Speed"
-msgstr "Запустить сцену"
+msgstr "Скорость воспроизведения"
#: scene/audio/audio_stream_player.cpp
-#, fuzzy
msgid "Mix Target"
-msgstr "Цель"
+msgstr "Смешанная цель"
#: scene/gui/aspect_ratio_container.cpp scene/gui/range.cpp
#: servers/audio/effects/audio_effect_compressor.cpp
-#, fuzzy
msgid "Ratio"
-msgstr "Сохранять пропорции"
+msgstr "Пропорции"
#: scene/gui/aspect_ratio_container.cpp scene/gui/texture_button.cpp
#: scene/gui/texture_rect.cpp
-#, fuzzy
msgid "Stretch Mode"
-msgstr "Режим выделения"
+msgstr "Режим растяжения"
#: scene/gui/aspect_ratio_container.cpp scene/gui/box_container.cpp
msgid "Alignment"
@@ -23983,9 +23707,8 @@ msgid "Shortcut In Tooltip"
msgstr "Отображать центр"
#: scene/gui/base_button.cpp
-#, fuzzy
msgid "Action Mode"
-msgstr "Режим иконки"
+msgstr "Режим действия"
#: scene/gui/base_button.cpp
msgid "Enabled Focus Mode"
@@ -24018,9 +23741,8 @@ msgid "Icon Align"
msgstr ""
#: scene/gui/button.cpp
-#, fuzzy
msgid "Expand Icon"
-msgstr "Развернуть все"
+msgstr "Расширить иконку"
#: scene/gui/center_container.cpp
#, fuzzy
@@ -24043,24 +23765,20 @@ msgid "Edit Alpha"
msgstr "Редактировать полигон"
#: scene/gui/color_picker.cpp
-#, fuzzy
msgid "HSV Mode"
-msgstr "Режим выделения"
+msgstr "HSV режим"
#: scene/gui/color_picker.cpp
-#, fuzzy
msgid "Raw Mode"
-msgstr "Режим осмотра"
+msgstr "Режим Raw"
#: scene/gui/color_picker.cpp
-#, fuzzy
msgid "Deferred Mode"
-msgstr "Отложенное"
+msgstr "Отложенный режим"
#: scene/gui/color_picker.cpp
-#, fuzzy
msgid "Presets Enabled"
-msgstr "Предустановки"
+msgstr "Пресеты включены"
#: scene/gui/color_picker.cpp
msgid "Presets Visible"
@@ -24108,14 +23826,12 @@ msgstr ""
"положение «Stop» или «Pass»."
#: scene/gui/control.cpp
-#, fuzzy
msgid "Anchor"
-msgstr "Только якоря"
+msgstr "Якорь"
#: scene/gui/control.cpp
-#, fuzzy
msgid "Grow Direction"
-msgstr "Направления"
+msgstr "Направление роста"
#: scene/gui/control.cpp scene/resources/navigation_mesh.cpp
msgid "Min Size"
@@ -24136,14 +23852,12 @@ msgid "Hint"
msgstr ""
#: scene/gui/control.cpp
-#, fuzzy
msgid "Tooltip"
-msgstr "Инструменты"
+msgstr "Подсказка"
#: scene/gui/control.cpp scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Focus"
-msgstr "Переместить фокус на строку пути"
+msgstr "Фокус"
#: scene/gui/control.cpp
msgid "Neighbour Left"
@@ -24158,9 +23872,8 @@ msgid "Neighbour Right"
msgstr ""
#: scene/gui/control.cpp
-#, fuzzy
msgid "Neighbour Bottom"
-msgstr "Внизу посередине"
+msgstr "Сосед снизу"
#: scene/gui/control.cpp
msgid "Next"
@@ -24187,9 +23900,8 @@ msgid "Size Flags"
msgstr "Флаги размера"
#: scene/gui/control.cpp
-#, fuzzy
msgid "Stretch Ratio"
-msgstr "Режим выделения"
+msgstr "Коэффициент растяжения"
#: scene/gui/control.cpp
#, fuzzy
@@ -24239,19 +23951,16 @@ msgid "Snap Distance"
msgstr "Расстояние привязки"
#: scene/gui/graph_edit.cpp
-#, fuzzy
msgid "Zoom Min"
-msgstr "Приблизить"
+msgstr "Приблизить Min"
#: scene/gui/graph_edit.cpp
-#, fuzzy
msgid "Zoom Max"
-msgstr "Приблизить"
+msgstr "Приблизить Max"
#: scene/gui/graph_edit.cpp
-#, fuzzy
msgid "Zoom Step"
-msgstr "Отдалить"
+msgstr "Приблизить шаг"
#: scene/gui/graph_edit.cpp
#, fuzzy
@@ -24274,9 +23983,8 @@ msgstr "Показать кости"
#: scene/gui/graph_node.cpp scene/gui/option_button.cpp
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Selected"
-msgstr "Выделение"
+msgstr "Выделено"
#: scene/gui/graph_node.cpp scene/resources/default_theme/default_theme.cpp
msgid "Comment"
@@ -24300,23 +24008,20 @@ msgid "Incremental Search Max Interval Msec"
msgstr ""
#: scene/gui/item_list.cpp scene/gui/tree.cpp
-#, fuzzy
msgid "Allow Reselect"
-msgstr "Применить сброс"
+msgstr "Разрешить перевыбор"
#: scene/gui/item_list.cpp scene/gui/tree.cpp
-#, fuzzy
msgid "Allow RMB Select"
-msgstr "Заполнить выбранное"
+msgstr "Разрешить выбор ПКМ"
#: scene/gui/item_list.cpp
msgid "Max Text Lines"
msgstr ""
#: scene/gui/item_list.cpp
-#, fuzzy
msgid "Auto Height"
-msgstr "Тестируемые"
+msgstr "Авто высота"
#: scene/gui/item_list.cpp
msgid "Max Columns"
@@ -24339,18 +24044,16 @@ msgid "Fixed Icon Size"
msgstr "Фиксированный размер иконки"
#: scene/gui/label.cpp
-#, fuzzy
msgid "V Align"
-msgstr "Оператор присваивания"
+msgstr "Вертикальное выравнивание"
#: scene/gui/label.cpp scene/gui/rich_text_label.cpp
msgid "Visible Characters"
msgstr "Видимые символы"
#: scene/gui/label.cpp scene/gui/rich_text_label.cpp
-#, fuzzy
msgid "Percent Visible"
-msgstr "Переключить видимость"
+msgstr "Процент видимости"
#: scene/gui/label.cpp
msgid "Lines Skipped"
@@ -24378,34 +24081,28 @@ msgid "Expand To Text Length"
msgstr ""
#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp
-#, fuzzy
msgid "Context Menu Enabled"
-msgstr "Контекстная справка"
+msgstr "Включить контекстное меню"
#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp
-#, fuzzy
msgid "Virtual Keyboard Enabled"
-msgstr "Фильтр сигналов"
+msgstr "Включить виртуальную клавиатуру"
#: scene/gui/line_edit.cpp
-#, fuzzy
msgid "Clear Button Enabled"
-msgstr "Фильтр сигналов"
+msgstr "Включить кнопку очистки"
#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp
-#, fuzzy
msgid "Shortcut Keys Enabled"
-msgstr "Горячие клавиши"
+msgstr "Включить горячие клавиши"
#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp
-#, fuzzy
msgid "Middle Mouse Paste Enabled"
-msgstr "Фильтр сигналов"
+msgstr "Включить вставку средней кнопкой мыши"
#: scene/gui/line_edit.cpp scene/gui/text_edit.cpp
-#, fuzzy
msgid "Selecting Enabled"
-msgstr "Только выделенное"
+msgstr "Включить выделение"
#: scene/gui/line_edit.cpp scene/gui/rich_text_label.cpp
#: scene/gui/text_edit.cpp
@@ -24413,14 +24110,12 @@ msgid "Deselect On Focus Loss Enabled"
msgstr ""
#: scene/gui/line_edit.cpp
-#, fuzzy
msgid "Right Icon"
-msgstr "Правая кнопка мыши"
+msgstr "Правая иконка"
#: scene/gui/line_edit.cpp
-#, fuzzy
msgid "Placeholder"
-msgstr "Загрузить как заполнитель"
+msgstr "Заполнитель"
#: scene/gui/line_edit.cpp
msgid "Alpha"
@@ -24443,9 +24138,8 @@ msgid "Underline"
msgstr ""
#: scene/gui/menu_button.cpp
-#, fuzzy
msgid "Switch On Hover"
-msgstr "Множественный выбор"
+msgstr "Переключить при наведении"
#: scene/gui/nine_patch_rect.cpp scene/resources/style_box.cpp
#, fuzzy
@@ -24453,9 +24147,8 @@ msgid "Draw Center"
msgstr "По центру"
#: scene/gui/nine_patch_rect.cpp scene/resources/style_box.cpp
-#, fuzzy
msgid "Region Rect"
-msgstr "Задать регион"
+msgstr "Прямоугольный регион"
#: scene/gui/nine_patch_rect.cpp
#, fuzzy
@@ -24479,9 +24172,8 @@ msgstr ""
"работать как Stretch."
#: scene/gui/popup.cpp
-#, fuzzy
msgid "Popup"
-msgstr "Заполнить"
+msgstr "Всплывающее окно"
#: scene/gui/popup.cpp
#, fuzzy
@@ -24499,9 +24191,8 @@ msgstr ""
"но они будут скрыты при запуске."
#: scene/gui/popup_menu.cpp
-#, fuzzy
msgid "Hide On Item Selection"
-msgstr "Центрировать выбранное"
+msgstr "Спрятать при выделении предмета"
#: scene/gui/popup_menu.cpp
#, fuzzy
@@ -24518,9 +24209,8 @@ msgid "Submenu Popup Delay"
msgstr ""
#: scene/gui/popup_menu.cpp
-#, fuzzy
msgid "Allow Search"
-msgstr "Поиск"
+msgstr "Разрешить поиск"
#: scene/gui/progress_bar.cpp
msgid "Percent"
@@ -24548,9 +24238,8 @@ msgid "Exp Edit"
msgstr "Редактировать"
#: scene/gui/range.cpp
-#, fuzzy
msgid "Rounded"
-msgstr "Сгруппирован"
+msgstr "Округлённый"
#: scene/gui/range.cpp
msgid "Allow Greater"
@@ -24569,14 +24258,12 @@ msgid "Border Width"
msgstr "Ширина границы"
#: scene/gui/rich_text_effect.cpp
-#, fuzzy
msgid "Relative Index"
-msgstr "Получить индекс"
+msgstr "Относительный индекс"
#: scene/gui/rich_text_effect.cpp
-#, fuzzy
msgid "Absolute Index"
-msgstr "Автоотступ"
+msgstr "Абсолютный индекс"
#: scene/gui/rich_text_effect.cpp
#, fuzzy
@@ -24584,9 +24271,8 @@ msgid "Elapsed Time"
msgstr "Прошедшее время"
#: scene/gui/rich_text_effect.cpp
-#, fuzzy
msgid "Env"
-msgstr "Конец"
+msgstr "Среда"
#: scene/gui/rich_text_effect.cpp
msgid "Character"
@@ -24605,9 +24291,8 @@ msgid "Tab Size"
msgstr "Размер табов"
#: scene/gui/rich_text_label.cpp
-#, fuzzy
msgid "Fit Content Height"
-msgstr "Изменить вес костей"
+msgstr "Вместить по высоте контента"
#: scene/gui/rich_text_label.cpp
msgid "Scroll Active"
@@ -24618,9 +24303,8 @@ msgid "Scroll Following"
msgstr ""
#: scene/gui/rich_text_label.cpp
-#, fuzzy
msgid "Selection Enabled"
-msgstr "Только выделенное"
+msgstr "Включить выделение"
#: scene/gui/rich_text_label.cpp scene/gui/text_edit.cpp
#, fuzzy
@@ -24628,14 +24312,12 @@ msgid "Override Selected Font Color"
msgstr "Переопределить выбранный цвет шрифта"
#: scene/gui/rich_text_label.cpp
-#, fuzzy
msgid "Custom Effects"
-msgstr "Передвинуть эффект шины"
+msgstr "Пользовательские эффекты"
#: scene/gui/scroll_bar.cpp
-#, fuzzy
msgid "Custom Step"
-msgstr "Пользовательский узел"
+msgstr "Пользовательский шаг"
#: scene/gui/scroll_container.cpp
msgid ""
@@ -24671,9 +24353,8 @@ msgid "Scrollable"
msgstr ""
#: scene/gui/slider.cpp
-#, fuzzy
msgid "Tick Count"
-msgstr "Выбрать цвет"
+msgstr "Счетчик галочек"
#: scene/gui/slider.cpp
#, fuzzy
@@ -24694,9 +24375,8 @@ msgid "Split Offset"
msgstr "Смещение разделения"
#: scene/gui/split_container.cpp scene/gui/tree.cpp
-#, fuzzy
msgid "Collapsed"
-msgstr "Свернуть все"
+msgstr "Свернуто"
#: scene/gui/split_container.cpp
#, fuzzy
@@ -24782,9 +24462,8 @@ msgid "Draw"
msgstr "Рисовать"
#: scene/gui/text_edit.cpp
-#, fuzzy
msgid "Block Mode"
-msgstr "Разблокировать узел"
+msgstr "Режим блокировки"
#: scene/gui/text_edit.cpp
msgid "Moving By Right Click"
@@ -24803,9 +24482,8 @@ msgid "Hover"
msgstr ""
#: scene/gui/texture_button.cpp
-#, fuzzy
msgid "Focused"
-msgstr "Переместить фокус на строку пути"
+msgstr "Сфокусировано"
#: scene/gui/texture_button.cpp
#, fuzzy
@@ -24814,9 +24492,8 @@ msgstr "Режим столкновения"
#: scene/gui/texture_button.cpp scene/gui/texture_rect.cpp
#: scene/gui/video_player.cpp
-#, fuzzy
msgid "Expand"
-msgstr "Развернуть все"
+msgstr "Развернуть"
#: scene/gui/texture_progress.cpp
msgid "Under"
@@ -24828,9 +24505,8 @@ msgid "Over"
msgstr "Перезаписать"
#: scene/gui/texture_progress.cpp
-#, fuzzy
msgid "Progress"
-msgstr "Свойства темы"
+msgstr "Прогресс"
#: scene/gui/texture_progress.cpp
msgid "Progress Offset"
@@ -24849,9 +24525,8 @@ msgid "Radial Fill"
msgstr ""
#: scene/gui/texture_progress.cpp
-#, fuzzy
msgid "Initial Angle"
-msgstr "Инициализировать"
+msgstr "Начальный угол"
#: scene/gui/texture_progress.cpp
#, fuzzy
@@ -24868,24 +24543,20 @@ msgid "Nine Patch Stretch"
msgstr "Режим интерполяции"
#: scene/gui/texture_progress.cpp
-#, fuzzy
msgid "Stretch Margin Left"
-msgstr "Задать отступ"
+msgstr "Растянуть отступ лево"
#: scene/gui/texture_progress.cpp
-#, fuzzy
msgid "Stretch Margin Top"
-msgstr "Задать отступ"
+msgstr "Растянуть отступ вверх"
#: scene/gui/texture_progress.cpp
-#, fuzzy
msgid "Stretch Margin Right"
-msgstr "Задать отступ"
+msgstr "Растянуть отступ право"
#: scene/gui/texture_progress.cpp
-#, fuzzy
msgid "Stretch Margin Bottom"
-msgstr "Режим выделения"
+msgstr "Растянуть отступ низ"
#: scene/gui/tree.cpp
msgid "Custom Minimum Height"
@@ -24896,9 +24567,8 @@ msgid "(Other)"
msgstr "(Другие)"
#: scene/gui/tree.cpp
-#, fuzzy
msgid "Column Titles Visible"
-msgstr "Переключить видимость"
+msgstr "Видимость заголовков столбцов"
#: scene/gui/tree.cpp
#, fuzzy
@@ -24922,9 +24592,8 @@ msgid "Paused"
msgstr "Остановлен"
#: scene/gui/video_player.cpp
-#, fuzzy
msgid "Buffering Msec"
-msgstr "Буферизация"
+msgstr "Буферизация Msec"
#: scene/gui/video_player.cpp
#, fuzzy
@@ -24932,9 +24601,8 @@ msgid "Stream Position"
msgstr "Установить позицию входа кривой"
#: scene/gui/viewport_container.cpp
-#, fuzzy
msgid "Stretch Shrink"
-msgstr "Извлечь"
+msgstr "Растянуть сжать"
#: scene/main/canvas_layer.cpp
#, fuzzy
@@ -24946,9 +24614,8 @@ msgid "Download File"
msgstr "Загрузить файл"
#: scene/main/http_request.cpp
-#, fuzzy
msgid "Download Chunk Size"
-msgstr "Загрузка"
+msgstr "Размер куска скачивания"
#: scene/main/http_request.cpp
msgid "Body Size Limit"
@@ -24978,38 +24645,32 @@ msgid "Name Casing"
msgstr ""
#: scene/main/node.cpp
-#, fuzzy
msgid "Editor Description"
-msgstr "Описание"
+msgstr "Редактировать описание"
#: scene/main/node.cpp
-#, fuzzy
msgid "Pause Mode"
-msgstr "Режим осмотра"
+msgstr "Режим паузы"
#: scene/main/node.cpp
-#, fuzzy
msgid "Physics Interpolation Mode"
-msgstr "физическая интерполяции"
+msgstr "Режим физической интерполяции"
#: scene/main/node.cpp
-#, fuzzy
msgid "Display Folded"
-msgstr "Режим без теней"
+msgstr "Показать сложённым"
#: scene/main/node.cpp
-#, fuzzy
msgid "Filename"
-msgstr "Переименовать"
+msgstr "Имя файла"
#: scene/main/node.cpp
msgid "Owner"
msgstr "Владелец"
#: scene/main/node.cpp scene/main/scene_tree.cpp
-#, fuzzy
msgid "Multiplayer"
-msgstr "Умножить %s"
+msgstr "Мультиплеер"
#: scene/main/node.cpp
#, fuzzy
@@ -25022,9 +24683,8 @@ msgid "Process Priority"
msgstr "Включить приоритет"
#: scene/main/scene_tree.cpp scene/main/timer.cpp
-#, fuzzy
msgid "Time Left"
-msgstr "Слева вверху"
+msgstr "Осталось времени"
#: scene/main/scene_tree.cpp
#, fuzzy
@@ -25032,18 +24692,16 @@ msgid "Debug Collisions Hint"
msgstr "Режим столкновения"
#: scene/main/scene_tree.cpp
-#, fuzzy
msgid "Debug Navigation Hint"
-msgstr "Режим навигации"
+msgstr "Подсказка режима навигации"
#: scene/main/scene_tree.cpp
msgid "Use Font Oversampling"
msgstr ""
#: scene/main/scene_tree.cpp
-#, fuzzy
msgid "Edited Scene Root"
-msgstr "Новый корень сцены"
+msgstr "Редактировать корень сцены"
#: scene/main/scene_tree.cpp
msgid "Root"
@@ -25064,9 +24722,8 @@ msgid "Shape Color"
msgstr ""
#: scene/main/scene_tree.cpp
-#, fuzzy
msgid "Contact Color"
-msgstr "Выбрать цвет"
+msgstr "Цвет контакта"
#: scene/main/scene_tree.cpp
msgid "Geometry Color"
@@ -25082,9 +24739,8 @@ msgid "Max Contacts Displayed"
msgstr ""
#: scene/main/scene_tree.cpp scene/resources/shape_2d.cpp
-#, fuzzy
msgid "Draw 2D Outlines"
-msgstr "Создать контур"
+msgstr "Создать 2D контур"
#: scene/main/scene_tree.cpp servers/visual_server.cpp
msgid "Reflections"
@@ -25119,9 +24775,8 @@ msgid "Use 32 BPC Depth"
msgstr ""
#: scene/main/scene_tree.cpp
-#, fuzzy
msgid "Default Environment"
-msgstr "Окружение"
+msgstr "Окружение по умолчанию"
#: scene/main/scene_tree.cpp
msgid ""
@@ -25154,9 +24809,8 @@ msgid "Autostart"
msgstr "Автозапуск"
#: scene/main/viewport.cpp
-#, fuzzy
msgid "Viewport Path"
-msgstr "Путь экспорта"
+msgstr "Путь окна предпросмотра"
#: scene/main/viewport.cpp
msgid ""
@@ -25197,14 +24851,12 @@ msgid "World 2D"
msgstr "Мир 2D"
#: scene/main/viewport.cpp
-#, fuzzy
msgid "Transparent BG"
-msgstr "Транспонировать"
+msgstr "Прозрачный фон"
#: scene/main/viewport.cpp
-#, fuzzy
msgid "Handle Input Locally"
-msgstr "Изменить входное значение"
+msgstr "Обрабатывать ввод локально"
#: scene/main/viewport.cpp
msgid "FXAA"
@@ -25229,9 +24881,8 @@ msgid "Render Direct To Screen"
msgstr ""
#: scene/main/viewport.cpp
-#, fuzzy
msgid "Debug Draw"
-msgstr "Отладка"
+msgstr "Отладка рисовки"
#: scene/main/viewport.cpp
#, fuzzy
@@ -25243,9 +24894,8 @@ msgid "V Flip"
msgstr ""
#: scene/main/viewport.cpp
-#, fuzzy
msgid "Clear Mode"
-msgstr "Режим измерения"
+msgstr "Режим очистки"
#: scene/main/viewport.cpp
msgid "Enable 2D"
@@ -25284,58 +24934,48 @@ msgid "Quad 3"
msgstr ""
#: scene/main/viewport.cpp
-#, fuzzy
msgid "Canvas Transform"
-msgstr "Очистить преобразование"
+msgstr "Преобразование полотна"
#: scene/main/viewport.cpp
-#, fuzzy
msgid "Global Canvas Transform"
-msgstr "Сохранить глобальные преобразования"
+msgstr "Глобальное преобразование полотна"
#: scene/main/viewport.cpp
msgid "Tooltip Delay (sec)"
msgstr ""
#: scene/register_scene_types.cpp
-#, fuzzy
msgid "Swap OK Cancel"
-msgstr "UI Отменить"
+msgstr "Поменять местами OK Cancel"
#: scene/register_scene_types.cpp
-#, fuzzy
msgid "Layer Names"
-msgstr "Имя переменной"
+msgstr "Имена слоя"
#: scene/register_scene_types.cpp
-#, fuzzy
msgid "2D Render"
-msgstr "Рендеринг"
+msgstr "2D Рендеринг"
#: scene/register_scene_types.cpp
-#, fuzzy
msgid "3D Render"
-msgstr "Рендеринг"
+msgstr "3D Рендеринг"
#: scene/register_scene_types.cpp
-#, fuzzy
msgid "2D Physics"
-msgstr "Физика"
+msgstr "2D Физика"
#: scene/register_scene_types.cpp
-#, fuzzy
msgid "3D Physics"
-msgstr "Физика"
+msgstr "3D Физика"
#: scene/register_scene_types.cpp
-#, fuzzy
msgid "2D Navigation"
-msgstr "Навигация"
+msgstr "2D Навигация"
#: scene/register_scene_types.cpp
-#, fuzzy
msgid "3D Navigation"
-msgstr "Навигация"
+msgstr "3D Навигация"
#: scene/register_scene_types.cpp
msgid "Use hiDPI"
@@ -25364,9 +25004,8 @@ msgid "Segments"
msgstr "Сегменты"
#: scene/resources/curve.cpp
-#, fuzzy
msgid "Bake Resolution"
-msgstr "Половинное разрешение"
+msgstr "Запечь разрешение"
#: scene/resources/curve.cpp
msgid "Bake Interval"
@@ -25377,34 +25016,28 @@ msgid "Panel"
msgstr ""
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Font Color"
-msgstr "Цвет комментария"
+msgstr "Цвет шрифта"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Font Color Pressed"
-msgstr "Цвет кости 1"
+msgstr "Цвет нажатого шрифта"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Font Color Hover"
-msgstr "Цвет кости 1"
+msgstr "Цвет наведенного шрифта"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Font Color Focus"
-msgstr "Следовать за фокусом"
+msgstr "Цвет шрифта в фокусе"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Font Color Disabled"
-msgstr "Отключить обрезку"
+msgstr "Цвет отключенного шрифта"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "H Separation"
-msgstr "H Разделение"
+msgstr "Горизонтальное разделение"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -25482,9 +25115,8 @@ msgid "Off Disabled"
msgstr "Отключённый"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Font Color Shadow"
-msgstr "Цвет кости 1"
+msgstr "Цвет тени шрифта"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -25502,43 +25134,36 @@ msgid "Shadow Offset Y"
msgstr "Отступ тени по Y"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Shadow As Outline"
-msgstr "Показывать предыдущий контур"
+msgstr "Тень как контур"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Font Color Selected"
-msgstr "Разблокировать выделенное"
+msgstr "Цвет шрифта выделенного"
#: scene/resources/default_theme/default_theme.cpp
msgid "Font Color Uneditable"
msgstr ""
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Cursor Color"
-msgstr "Пользовательский цвет"
+msgstr "Цвет курсора"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Clear Button Color"
-msgstr "Фильтр сигналов"
+msgstr "Цвет кнопки Очистить"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Clear Button Color Pressed"
-msgstr "Фильтр сигналов"
+msgstr "Цвет нажатой кнопки Очистить"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Minimum Spaces"
-msgstr "Главная сцена"
+msgstr "Минимальные расстояния"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "BG"
-msgstr "Б"
+msgstr "Задний фон"
#: scene/resources/default_theme/default_theme.cpp
msgid "FG"
@@ -25552,9 +25177,8 @@ msgstr "Вкладка 1"
#: scene/resources/default_theme/default_theme.cpp
#: scene/resources/dynamic_font.cpp scene/resources/world.cpp
#: scene/resources/world_2d.cpp
-#, fuzzy
msgid "Space"
-msgstr "Главная сцена"
+msgstr "Пространство"
#: scene/resources/default_theme/default_theme.cpp
msgid "Folded"
@@ -25630,9 +25254,8 @@ msgid "Decrement Pressed"
msgstr ""
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Slider"
-msgstr "Коллайдер"
+msgstr "Слайдер"
#: scene/resources/default_theme/default_theme.cpp
msgid "Grabber Area"
@@ -25661,19 +25284,16 @@ msgid "Scaleborder Size"
msgstr "Размер границы"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Title Font"
-msgstr "Размер шрифта заголовков справки"
+msgstr "Шрифт заголовка"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Title Color"
-msgstr "Цвет текста"
+msgstr "Цвет заголовка"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Title Height"
-msgstr "Тестовая высота"
+msgstr "Высота заголовка"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -25691,9 +25311,8 @@ msgid "Close V Offset"
msgstr "Смещение шума"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Parent Folder"
-msgstr "Создать папку"
+msgstr "Родительская папка"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -25716,9 +25335,8 @@ msgid "Labeled Separator Right"
msgstr "Именованный разделитель"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Font Separator"
-msgstr "Разделитель цветов шрифта"
+msgstr "Разделитель шрифта"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -25740,14 +25358,12 @@ msgid "Selected Frame"
msgstr "Выбрать кадры"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Default Frame"
-msgstr "Z Far по умолчанию"
+msgstr "Кадр по умолчанию"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Default Focus"
-msgstr "Шрифт по умолчанию"
+msgstr "Фокус по умолчанию"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -25755,9 +25371,8 @@ msgid "Comment Focus"
msgstr "Комментарий"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Breakpoint"
-msgstr "Точки останова"
+msgstr "Точка остановки"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -25775,9 +25390,8 @@ msgid "Resizer Color"
msgstr "Использовать цвет"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Title Offset"
-msgstr "Смещение байтов"
+msgstr "Смещение заголовка"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -25804,9 +25418,8 @@ msgid "Cursor Unfocused"
msgstr ""
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Button Pressed"
-msgstr "Нажато"
+msgstr "Нажатая кнопка"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -25824,19 +25437,16 @@ msgid "Title Button Hover"
msgstr "Кнопка-переключатель"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Custom Button"
-msgstr "Пользовательский шрифт"
+msgstr "Пользовательская кнопка"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Custom Button Pressed"
-msgstr "Параметры шины"
+msgstr "Пользовательская кнопка нажата"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Custom Button Hover"
-msgstr "Пользовательский цвет"
+msgstr "Пользовательская кнопка наведена"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -25878,14 +25488,12 @@ msgid "Custom Button Font Highlight"
msgstr ""
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Item Margin"
-msgstr "Задать отступ"
+msgstr "Отступ предмета"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Button Margin"
-msgstr "Маска кнопок"
+msgstr "Отступ кнопки"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -25898,19 +25506,16 @@ msgid "Draw Guides"
msgstr "Отображение направляющих"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Scroll Border"
-msgstr "Вертикальная прокрутка"
+msgstr "Граница прокрутки"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Scroll Speed"
-msgstr "Скорость вертикальной прокрутки"
+msgstr "Скорость прокрутки"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Icon Margin"
-msgstr "Задать отступ"
+msgstr "Отступ иконки"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -25970,9 +25575,8 @@ msgid "Label V Align BG"
msgstr ""
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Large"
-msgstr "Цель"
+msgstr "Крупный"
#: scene/resources/default_theme/default_theme.cpp
msgid "Folder"
@@ -26024,9 +25628,8 @@ msgid "Add Preset"
msgstr "Загрузить пресет"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Color Hue"
-msgstr "Тема редактора"
+msgstr "Оттенок цвета"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -26054,28 +25657,24 @@ msgid "Preset BG Icon"
msgstr "Пресет"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Normal Font"
-msgstr "Передняя часть портала"
+msgstr "Обычный шрифт"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Bold Font"
-msgstr "Шрифт кода"
+msgstr "Жирный шрифт"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Italics Font"
-msgstr "Основной шрифт"
+msgstr "Курсивный шрифт"
#: scene/resources/default_theme/default_theme.cpp
msgid "Bold Italics Font"
msgstr ""
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Mono Font"
-msgstr "Основной шрифт"
+msgstr "Моноширинный шрифт"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -26088,29 +25687,24 @@ msgid "Table V Separation"
msgstr "Разделение таблицы V"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Margin Left"
-msgstr "Задать отступ"
+msgstr "Отступ слева"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Margin Top"
-msgstr "Отступ"
+msgstr "Отступ сверху"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Margin Right"
-msgstr "Отступ вправо"
+msgstr "Отступ справа"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Margin Bottom"
-msgstr "Режим выделения"
+msgstr "Отступ снизу"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Autohide"
-msgstr "Автоматически"
+msgstr "Скрывать автоматически"
#: scene/resources/default_theme/default_theme.cpp
msgid "Minus"
@@ -26131,9 +25725,8 @@ msgid "Grid Major"
msgstr "Сеточная карта"
#: scene/resources/default_theme/default_theme.cpp
-#, fuzzy
msgid "Selection Fill"
-msgstr "Только выделенное"
+msgstr "Заполнение выделенного"
#: scene/resources/default_theme/default_theme.cpp
#, fuzzy
@@ -26183,9 +25776,8 @@ msgid "Outline Size"
msgstr "Размер контура"
#: scene/resources/dynamic_font.cpp
-#, fuzzy
msgid "Outline Color"
-msgstr "Функция"
+msgstr "Цвет контура"
#: scene/resources/dynamic_font.cpp
#, fuzzy
@@ -26215,9 +25807,8 @@ msgid "Sky"
msgstr "Небо"
#: scene/resources/environment.cpp
-#, fuzzy
msgid "Sky Custom FOV"
-msgstr "Пользовательский узел"
+msgstr "Пользовательский угол обзора неба"
#: scene/resources/environment.cpp
msgid "Sky Orientation"
@@ -26262,24 +25853,20 @@ msgid "Sun Amount"
msgstr "Количество солнц"
#: scene/resources/environment.cpp
-#, fuzzy
msgid "Depth Enabled"
-msgstr "Глубина"
+msgstr "Глубина включена"
#: scene/resources/environment.cpp
-#, fuzzy
msgid "Depth Begin"
-msgstr "Глубина"
+msgstr "Глубина начало"
#: scene/resources/environment.cpp
-#, fuzzy
msgid "Depth End"
-msgstr "Глубина"
+msgstr "Глубина конец"
#: scene/resources/environment.cpp
-#, fuzzy
msgid "Depth Curve"
-msgstr "Разделить кривую"
+msgstr "Кривая глубины"
#: scene/resources/environment.cpp
#, fuzzy
@@ -26292,9 +25879,8 @@ msgid "Transmit Curve"
msgstr "Разделить кривую"
#: scene/resources/environment.cpp
-#, fuzzy
msgid "Height Enabled"
-msgstr "Фильтр сигналов"
+msgstr "Высота включена"
#: scene/resources/environment.cpp
msgid "Height Min"
@@ -26305,9 +25891,8 @@ msgid "Height Max"
msgstr "Макс высота"
#: scene/resources/environment.cpp
-#, fuzzy
msgid "Height Curve"
-msgstr "Разделить кривую"
+msgstr "Кривая высоты"
#: scene/resources/environment.cpp
#, fuzzy
@@ -26341,9 +25926,8 @@ msgid "SS Reflections"
msgstr "Масштабировать выбранное"
#: scene/resources/environment.cpp
-#, fuzzy
msgid "Max Steps"
-msgstr "Шаг"
+msgstr "Макс шагов"
#: scene/resources/environment.cpp
#, fuzzy
@@ -26431,9 +26015,8 @@ msgstr ""
#: scene/resources/environment.cpp
#: servers/audio/effects/audio_effect_chorus.cpp
-#, fuzzy
msgid "3"
-msgstr "3D"
+msgstr "3"
#: scene/resources/environment.cpp
#: servers/audio/effects/audio_effect_chorus.cpp
@@ -26465,9 +26048,8 @@ msgid "HDR Luminance Cap"
msgstr ""
#: scene/resources/environment.cpp
-#, fuzzy
msgid "HDR Scale"
-msgstr "Масштабировать"
+msgstr "HDR маcштаб"
#: scene/resources/environment.cpp
msgid "Bicubic Upscale"
@@ -26478,9 +26060,8 @@ msgid "Adjustments"
msgstr "Adjustments (настройки)"
#: scene/resources/environment.cpp
-#, fuzzy
msgid "Brightness"
-msgstr "Свет"
+msgstr "Яркость"
#: scene/resources/environment.cpp
#, fuzzy
@@ -26502,9 +26083,8 @@ msgid "Distance Field"
msgstr "Режим без отвлечения"
#: scene/resources/gradient.cpp
-#, fuzzy
msgid "Raw Data"
-msgstr "Данные карты"
+msgstr "Необработанные данные"
#: scene/resources/gradient.cpp
#, fuzzy
@@ -26562,9 +26142,8 @@ msgid "Do Not Receive Shadows"
msgstr ""
#: scene/resources/material.cpp
-#, fuzzy
msgid "Disable Ambient Light"
-msgstr "Отступ вправо"
+msgstr "Отключить окружающие освещение"
#: scene/resources/material.cpp
#, fuzzy
@@ -26576,9 +26155,8 @@ msgid "Albedo Tex MSDF"
msgstr ""
#: scene/resources/material.cpp
-#, fuzzy
msgid "Vertex Color"
-msgstr "Вершины"
+msgstr "Цвет вершин"
#: scene/resources/material.cpp
msgid "Use As Albedo"
@@ -26593,9 +26171,8 @@ msgid "Parameters"
msgstr "Параметры"
#: scene/resources/material.cpp
-#, fuzzy
msgid "Diffuse Mode"
-msgstr "Режим осмотра"
+msgstr "Режим смешения"
#: scene/resources/material.cpp
#, fuzzy
@@ -26639,9 +26216,8 @@ msgid "Use Alpha Scissor"
msgstr ""
#: scene/resources/material.cpp
-#, fuzzy
msgid "Particles Anim"
-msgstr "Частицы"
+msgstr "Анимация частиц"
#: scene/resources/material.cpp
#, fuzzy
@@ -26667,9 +26243,8 @@ msgid "Texture Channel"
msgstr "Область текстуры"
#: scene/resources/material.cpp
-#, fuzzy
msgid "Emission"
-msgstr "Маска излучения"
+msgstr "Излучение"
#: scene/resources/material.cpp
msgid "On UV2"
@@ -26744,14 +26319,12 @@ msgid "Detail"
msgstr "Деталь"
#: scene/resources/material.cpp
-#, fuzzy
msgid "UV Layer"
-msgstr "Слой"
+msgstr "UV Слой"
#: scene/resources/material.cpp
-#, fuzzy
msgid "UV1"
-msgstr "UV"
+msgstr "UV1"
#: scene/resources/material.cpp
msgid "Triplanar"
@@ -26762,9 +26335,8 @@ msgid "Triplanar Sharpness"
msgstr ""
#: scene/resources/material.cpp
-#, fuzzy
msgid "UV2"
-msgstr "UV"
+msgstr "UV2"
#: scene/resources/material.cpp
#, fuzzy
@@ -26776,9 +26348,8 @@ msgid "Distance Fade"
msgstr ""
#: scene/resources/material.cpp
-#, fuzzy
msgid "Async Mode"
-msgstr "Режим осмотра"
+msgstr "Асинхронный режим"
#: scene/resources/mesh.cpp
#, fuzzy
@@ -26790,14 +26361,12 @@ msgid "Custom AABB"
msgstr ""
#: scene/resources/mesh_library.cpp
-#, fuzzy
msgid "Mesh Transform"
-msgstr "Преобразование"
+msgstr "Преобразование меша"
#: scene/resources/mesh_library.cpp
-#, fuzzy
msgid "NavMesh Transform"
-msgstr "Очистить преобразование"
+msgstr "NavMesh преобразование"
#: scene/resources/multimesh.cpp
#, fuzzy
@@ -26823,9 +26392,8 @@ msgid "Visible Instance Count"
msgstr ""
#: scene/resources/navigation_mesh.cpp
-#, fuzzy
msgid "Sampling"
-msgstr "Масштаб:"
+msgstr "Семплирование"
#: scene/resources/navigation_mesh.cpp
#, fuzzy
@@ -26846,9 +26414,8 @@ msgid "Source Group Name"
msgstr "Название группы-источника"
#: scene/resources/navigation_mesh.cpp
-#, fuzzy
msgid "Cells"
-msgstr "Ячейка"
+msgstr "Ячейки"
#: scene/resources/navigation_mesh.cpp
#, fuzzy
@@ -26864,33 +26431,28 @@ msgid "Max Slope"
msgstr ""
#: scene/resources/navigation_mesh.cpp
-#, fuzzy
msgid "Regions"
-msgstr "Регион"
+msgstr "Регионы"
#: scene/resources/navigation_mesh.cpp
-#, fuzzy
msgid "Merge Size"
-msgstr "Слияние из Сцены"
+msgstr "Размер слияния"
#: scene/resources/navigation_mesh.cpp
-#, fuzzy
msgid "Edges"
-msgstr "Край"
+msgstr "Края"
#: scene/resources/navigation_mesh.cpp
-#, fuzzy
msgid "Max Error"
-msgstr "Ошибка"
+msgstr "Max Ошибка"
#: scene/resources/navigation_mesh.cpp
msgid "Verts Per Poly"
msgstr ""
#: scene/resources/navigation_mesh.cpp
-#, fuzzy
msgid "Details"
-msgstr "Деталь"
+msgstr "Детали"
#: scene/resources/navigation_mesh.cpp
#, fuzzy
@@ -26915,14 +26477,12 @@ msgid "Walkable Low Height Spans"
msgstr ""
#: scene/resources/navigation_mesh.cpp
-#, fuzzy
msgid "Baking AABB"
-msgstr "Генерация AABB"
+msgstr "Запекание AABB"
#: scene/resources/navigation_mesh.cpp
-#, fuzzy
msgid "Baking AABB Offset"
-msgstr "Базовое смещение"
+msgstr "Смещение запекания AABB"
#: scene/resources/occluder_shape.cpp
msgid "Spheres"
@@ -26933,9 +26493,8 @@ msgid "OccluderShapeSphere Set Spheres"
msgstr "OccluderShapeSphere Задать сферы"
#: scene/resources/occluder_shape_polygon.cpp
-#, fuzzy
msgid "Polygon Points"
-msgstr "Полигоны"
+msgstr "Точки полигонов"
#: scene/resources/occluder_shape_polygon.cpp
#, fuzzy
@@ -26951,19 +26510,16 @@ msgid "Trail"
msgstr "След"
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Divisor"
-msgstr "Разделить %s"
+msgstr "Разделитель"
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Size Modifier"
-msgstr "Модификатор скорости свободного вида"
+msgstr "Модификатор скорости"
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Color Modifier"
-msgstr "Модификатор замедления свободного вида"
+msgstr "Модификатор цвета"
#: scene/resources/particles_material.cpp
#, fuzzy
@@ -26987,9 +26543,8 @@ msgid "Scale Random"
msgstr "Случайный Масштаб"
#: scene/resources/particles_material.cpp
-#, fuzzy
msgid "Scale Curve"
-msgstr "Сомкнуть кривую"
+msgstr "Кривая масштаба"
#: scene/resources/physics_material.cpp
msgid "Rough"
@@ -27030,23 +26585,20 @@ msgid "Top Radius"
msgstr "Верхний радиус"
#: scene/resources/primitive_meshes.cpp
-#, fuzzy
msgid "Bottom Radius"
-msgstr "Справа внизу"
+msgstr "Нижний радиус"
#: scene/resources/primitive_meshes.cpp
-#, fuzzy
msgid "Left To Right"
-msgstr "Справа вверху"
+msgstr "Слева на право"
#: scene/resources/primitive_meshes.cpp
msgid "Is Hemisphere"
msgstr ""
#: scene/resources/primitive_meshes.cpp
-#, fuzzy
msgid "Curve Step"
-msgstr "Кривая"
+msgstr "Шаг кривой"
#: scene/resources/ray_shape.cpp scene/resources/segment_shape_2d.cpp
msgid "Slips On Slope"
@@ -27071,9 +26623,8 @@ msgid "Bind"
msgstr "Привязка"
#: scene/resources/skin.cpp
-#, fuzzy
msgid "Bone"
-msgstr "Кости"
+msgstr "Кость"
#: scene/resources/sky.cpp
#, fuzzy
@@ -27135,9 +26686,8 @@ msgid "Skew"
msgstr ""
#: scene/resources/style_box.cpp
-#, fuzzy
msgid "Corner Radius"
-msgstr "Изменение внутреннего радиуса полукруга"
+msgstr "Радиус угла"
#: scene/resources/style_box.cpp
msgid "Corner Detail"
@@ -27156,9 +26706,8 @@ msgid "Grow End"
msgstr ""
#: scene/resources/texture.cpp
-#, fuzzy
msgid "Load Path"
-msgstr "Загрузить пресет"
+msgstr "Загрузить путь"
#: scene/resources/texture.cpp
msgid "Base Texture"
@@ -27169,9 +26718,8 @@ msgid "Image Size"
msgstr "Размер изображения"
#: scene/resources/texture.cpp
-#, fuzzy
msgid "Side"
-msgstr "Стороны"
+msgstr "Сторона"
#: scene/resources/texture.cpp
#, fuzzy
@@ -27184,24 +26732,20 @@ msgid "Back"
msgstr "Назад"
#: scene/resources/texture.cpp
-#, fuzzy
msgid "Storage Mode"
-msgstr "Режим масштабирования"
+msgstr "Режим хранения"
#: scene/resources/texture.cpp
-#, fuzzy
msgid "Lossy Storage Quality"
-msgstr "Захват"
+msgstr "Качество сжатого хранилища"
#: scene/resources/texture.cpp
-#, fuzzy
msgid "From"
-msgstr "Заполнить от"
+msgstr "От"
#: scene/resources/texture.cpp
-#, fuzzy
msgid "To"
-msgstr "Верх"
+msgstr "До"
#: scene/resources/texture.cpp
#, fuzzy
@@ -27248,14 +26792,12 @@ msgid "Diffuse"
msgstr "Режим осмотра"
#: scene/resources/visual_shader.cpp
-#, fuzzy
msgid "Async"
-msgstr "Режим осмотра"
+msgstr "Асинхронный"
#: scene/resources/visual_shader.cpp
-#, fuzzy
msgid "Modes"
-msgstr "Режим"
+msgstr "Режимы"
#: scene/resources/visual_shader.cpp
msgid "Input Name"
@@ -27317,9 +26859,8 @@ msgid "Scenario"
msgstr "Сцена"
#: scene/resources/world.cpp scene/resources/world_2d.cpp
-#, fuzzy
msgid "Navigation Map"
-msgstr "Навигация"
+msgstr "Карта навигации"
#: scene/resources/world.cpp scene/resources/world_2d.cpp
msgid "Direct Space State"
@@ -27344,14 +26885,12 @@ msgid "Default Map Up"
msgstr "Шаг по умолчанию плавающих чисел"
#: scene/resources/world.cpp scene/resources/world_2d.cpp
-#, fuzzy
msgid "Default Cell Size"
-msgstr "Размер ячейки"
+msgstr "Размер ячейки по умолчанию"
#: scene/resources/world.cpp scene/resources/world_2d.cpp
-#, fuzzy
msgid "Default Cell Height"
-msgstr "Тестируемые"
+msgstr "Высота клетки по умолчанию"
#: scene/resources/world.cpp scene/resources/world_2d.cpp
#, fuzzy
@@ -27427,9 +26966,8 @@ msgid "Rate Hz"
msgstr ""
#: servers/audio/effects/audio_effect_chorus.cpp
-#, fuzzy
msgid "Depth (ms)"
-msgstr "Глубина"
+msgstr "Глубина (мс)"
#: servers/audio/effects/audio_effect_chorus.cpp
#: servers/audio/effects/audio_effect_delay.cpp
@@ -27453,9 +26991,8 @@ msgid "Attack (µs)"
msgstr ""
#: servers/audio/effects/audio_effect_compressor.cpp
-#, fuzzy
msgid "Release (ms)"
-msgstr "Релиз"
+msgstr "Релиз (мс)"
#: servers/audio/effects/audio_effect_compressor.cpp
msgid "Mix"
@@ -27476,9 +27013,8 @@ msgstr ""
#: servers/audio/effects/audio_effect_delay.cpp
#: servers/audio/effects/audio_effect_phaser.cpp
#: servers/audio/effects/audio_effect_reverb.cpp
-#, fuzzy
msgid "Feedback"
-msgstr "Отправить отзыв о документации"
+msgstr "Отзыв"
#: servers/audio/effects/audio_effect_delay.cpp
#, fuzzy
@@ -27706,9 +27242,8 @@ msgid "Collision Unsafe Fraction"
msgstr "Режим столкновения"
#: servers/physics_2d_server.cpp servers/physics_server.cpp
-#, fuzzy
msgid "Physics Engine"
-msgstr "Кадр физики %"
+msgstr "Физический движек"
#: servers/physics_server.cpp
msgid "Center Of Mass"
@@ -27758,23 +27293,20 @@ msgid "Spatial Partitioning"
msgstr "Пространственное разбиение"
#: servers/visual_server.cpp
-#, fuzzy
msgid "Render Loop Enabled"
-msgstr "Фильтр сигналов"
+msgstr "Включить цикл рендера"
#: servers/visual_server.cpp
msgid "VRAM Compression"
msgstr "Сжатие VRAM"
#: servers/visual_server.cpp
-#, fuzzy
msgid "Import BPTC"
-msgstr "Импорт"
+msgstr "Импорт BPTC"
#: servers/visual_server.cpp
-#, fuzzy
msgid "Import S3TC"
-msgstr "Импорт"
+msgstr "Импорт S3TC"
#: servers/visual_server.cpp
msgid "Import ETC"
@@ -27785,9 +27317,8 @@ msgid "Import ETC2"
msgstr "Импортировать ETC2"
#: servers/visual_server.cpp
-#, fuzzy
msgid "Import PVRTC"
-msgstr "Импортировать тему"
+msgstr "Импорт PVRTC"
#: servers/visual_server.cpp
msgid "Lossless Compression"
diff --git a/editor/translations/tr.po b/editor/translations/tr.po
index e115c4d368..8cbf35a18b 100644
--- a/editor/translations/tr.po
+++ b/editor/translations/tr.po
@@ -84,13 +84,14 @@
# Volkan Gezer <volkangezer@gmail.com>, 2022.
# bsr <bsndrn16@gmail.com>, 2022.
# Ramazan SANCAR <ramazansancar4545@gmail.com>, 2022.
+# Burak Orcun OZKABLAN <borcunozkablan@gmail.com>, 2022.
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: 2022-08-30 03:11+0000\n"
-"Last-Translator: Ramazan SANCAR <ramazansancar4545@gmail.com>\n"
+"PO-Revision-Date: 2022-09-11 22:22+0000\n"
+"Last-Translator: Burak Orcun OZKABLAN <borcunozkablan@gmail.com>\n"
"Language-Team: Turkish <https://hosted.weblate.org/projects/godot-engine/"
"godot/tr/>\n"
"Language: tr\n"
@@ -263,9 +264,8 @@ msgid "Limits"
msgstr "Limitler"
#: core/command_queue_mt.cpp
-#, fuzzy
msgid "Command Queue"
-msgstr "Komut Sırası"
+msgstr "Komut Kuyruğu"
#: core/command_queue_mt.cpp
msgid "Multithreading Queue Size (KB)"
@@ -1153,9 +1153,8 @@ msgid "Anim Duplicate Keys"
msgstr "Animasyon Anahtarları Çoğalt"
#: editor/animation_bezier_editor.cpp editor/animation_track_editor.cpp
-#, fuzzy
msgid "Anim Delete Keys"
-msgstr "Animasyon Anahtarları Sil"
+msgstr "Animasyon Silme Tuşları"
#: editor/animation_track_editor.cpp
#, fuzzy
diff --git a/editor/translations/uk.po b/editor/translations/uk.po
index fe0bc96c04..07cfe5b6b1 100644
--- a/editor/translations/uk.po
+++ b/editor/translations/uk.po
@@ -24,13 +24,14 @@
# Гліб Соколов <ramithes@i.ua>, 2022.
# Max Donchenko <maxx.donchenko@gmail.com>, 2022.
# Artem <artem@molotov.work>, 2022.
+# Teashrock <kajitsu22@gmail.com>, 2022.
msgid ""
msgstr ""
"Project-Id-Version: Ukrainian (Godot Engine)\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: \n"
-"PO-Revision-Date: 2022-08-25 13:04+0000\n"
-"Last-Translator: Artem <artem@molotov.work>\n"
+"PO-Revision-Date: 2022-09-27 21:37+0000\n"
+"Last-Translator: Teashrock <kajitsu22@gmail.com>\n"
"Language-Team: Ukrainian <https://hosted.weblate.org/projects/godot-engine/"
"godot/uk/>\n"
"Language: uk\n"
@@ -39,7 +40,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
-"X-Generator: Weblate 4.14-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -466,7 +467,6 @@ msgid "Pressure"
msgstr "Тиск"
#: core/os/input_event.cpp
-#, fuzzy
msgid "Pen Inverted"
msgstr "Перо перевернуте"
@@ -5498,10 +5498,9 @@ msgstr "Додаткові кнопки миші для навігації жу
#: editor/editor_settings.cpp
#, fuzzy
msgid "Drag And Drop Selection"
-msgstr "Перетягніть виділення"
+msgstr "Перетягніть виділене"
#: editor/editor_settings.cpp
-#, fuzzy
msgid "Stay In Script Editor On Node Selected"
msgstr "Залишитися в редакторі скриптів на вибраному вузлі"
@@ -6377,7 +6376,7 @@ msgstr "Поточна версія:"
#: editor/export_template_manager.cpp
msgid "Export templates are missing. Download them or install from a file."
msgstr ""
-"Не вистачає шаблонів експортування. Отримайте їх або встановіть з файла."
+"Не вистачає шаблонів експортування. Отримайте їх або встановіть із файлу."
#: editor/export_template_manager.cpp
msgid "Export templates are installed and ready to be used."
@@ -14159,7 +14158,7 @@ msgstr "Експортування проєкту"
#: editor/project_export.cpp
msgid "Manage Export Templates"
-msgstr "Управління шаблонами експорту"
+msgstr "Керування шаблонами експорту"
#: editor/project_export.cpp
msgid "Export With Debug"
@@ -15189,7 +15188,7 @@ msgstr "Вилучити вузол «%s»?"
msgid ""
"Saving the branch as a scene requires having a scene open in the editor."
msgstr ""
-"Щоб можна було зберегти гілку як сцену, сцену має бути відкрито у редакторі."
+"Щоб можна було зберегти гілку як сцену, сцена має бути відкрита у редакторі."
#: editor/scene_tree_dock.cpp
msgid ""
@@ -15276,9 +15275,8 @@ msgid "Enable Scene Unique Name(s)"
msgstr "Увімкнути унікальну назву сцени"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Unique names already used by another node in the scene:"
-msgstr "Цю унікальну назву у сцені вже використано іншим вузлом."
+msgstr "Цю унікальну назву у сцені вже використано іншим вузлом:"
#: editor/scene_tree_dock.cpp
#, fuzzy
@@ -16966,7 +16964,6 @@ msgid "Joints Original"
msgstr "Початок з'єднання"
#: modules/gltf/gltf_skin.cpp
-#, fuzzy
msgid "Inverse Binds"
msgstr "Зворотні зв'язки"
@@ -18771,10 +18768,8 @@ msgid ""
"'apksigner' could not be found. Please check that the command is available "
"in the Android SDK build-tools directory. The resulting %s is unsigned."
msgstr ""
-"Не вдалося знайти «apksigner».\n"
-"Будь ласка, перевірте, чи є програма доступною у каталозі build-tools набору "
-"засобів для розробки Android.\n"
-"Отриманий у результаті %s не підписано."
+"Не вдалося знайти «apksigner». Будь ласка, перевірте, чи є команда доступною "
+"у каталозі build-tools Android SDK. Отриманий результат %s не підписано."
#: platform/android/export/export_plugin.cpp
msgid "Signing debug %s..."
@@ -18791,7 +18786,7 @@ msgstr "Не вдалося знайти сховище ключів. Немож
#: platform/android/export/export_plugin.cpp
#, fuzzy
msgid "Could not start apksigner executable."
-msgstr "Не вдалося запустити підпроцес!"
+msgstr "Не вдалося запустити виконуваний файл apksigner."
#: platform/android/export/export_plugin.cpp
msgid "'apksigner' returned with error #%d"
@@ -18825,9 +18820,8 @@ msgstr ""
"Некоректна назва файла! Пакунок Android APK повинен мати суфікс назви *.apk."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Unsupported export format!"
-msgstr "Непідтримуваний формат експортування!\n"
+msgstr "Непідтримуваний формат експортування!"
#: platform/android/export/export_plugin.cpp
msgid ""
@@ -18839,28 +18833,24 @@ msgstr ""
"допомогою меню «Проєкт»."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid ""
"Android build version mismatch: Template installed: %s, Godot version: %s. "
"Please reinstall Android build template from 'Project' menu."
msgstr ""
-"Невідповідність версія для збирання для Android:\n"
-" Встановлений шаблон: %s\n"
-" Версія Godot: %s\n"
-"Будь ласка, повторно встановіть шаблон для збирання для Android за допомогою "
-"меню «Проєкт»."
+"Невідповідність версія для збирання під Android: Встановлений шаблон: %s, "
+"Версія Godot: %s. Будь ласка, повторно встановіть шаблон для збирання під "
+"Android за допомогою меню «Проєкт»."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid ""
"Unable to overwrite res://android/build/res/*.xml files with project name."
msgstr ""
-"Не вдалося перезаписати файли res://android/build/res/*.xml із назвою проєкту"
+"Не вдалося перезаписати файли res://android/build/res/*.xml із назвою "
+"проєкту."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not export project files to gradle project."
-msgstr "Не вдалося експортувати файли проєкту до проєкту gradle\n"
+msgstr "Не вдалося експортувати файли проєкту до проєкту gradle."
#: platform/android/export/export_plugin.cpp
msgid "Could not write expansion package file!"
@@ -18871,15 +18861,13 @@ msgid "Building Android Project (gradle)"
msgstr "Збирання проєкту Android (gradle)"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid ""
"Building of Android project failed, check output for the error. "
"Alternatively visit docs.godotengine.org for Android build documentation."
msgstr ""
-"Не вдалося виконати збирання проєкту Android. Ознайомтеся із виведеними "
-"даними, щоб визначити причину помилки.\n"
-"Крім того, можете відвідати docs.godotengine.org і ознайомитися із "
-"документацією щодо збирання для Android."
+"Не вдалося виконати збирання проєкту для Android. Ознайомтеся із виведеними "
+"даними, щоб визначити причину помилки. Крім того, можете відвідати docs."
+"godotengine.org і ознайомитися із документацією щодо збирання для Android."
#: platform/android/export/export_plugin.cpp
msgid "Moving output"
@@ -18894,29 +18882,24 @@ msgstr ""
"дані можна знайти у каталозі проєкту gradle."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Package not found: \"%s\"."
-msgstr "Пакунок не знайдено: %s"
+msgstr "Пакунок не знайдено: \"%s\"."
#: platform/android/export/export_plugin.cpp
msgid "Creating APK..."
msgstr "Створення APK…"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not find template APK to export: \"%s\"."
-msgstr ""
-"Не вдалося знайти шаблон APK для експортування:\n"
-"%s"
+msgstr "Не вдалося знайти шаблон APK для експортування: %s."
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid ""
"Missing libraries in the export template for the selected architectures: %s. "
"Please build a template with all required libraries, or uncheck the missing "
"architectures in the export preset."
msgstr ""
-"Не вистачає бібліотек у шаблоні експортування для вибраних архітектур: %s.\n"
+"Не вистачає бібліотек у шаблоні експортування для вибраних архітектур: %s. "
"Будь ласка, створіть шаблон з усіма необхідними бібліотеками або зніміть "
"позначку з архітектур із пропущеними бібліотеками у стилі експортування."
@@ -18925,9 +18908,8 @@ msgid "Adding files..."
msgstr "Додавання файлів…"
#: platform/android/export/export_plugin.cpp
-#, fuzzy
msgid "Could not export project files."
-msgstr "Не вдалося експортувати файли проєкту"
+msgstr "Не вдалося експортувати файли проєкту."
#: platform/android/export/export_plugin.cpp
msgid "Aligning APK..."
@@ -19199,19 +19181,16 @@ msgid "Run exported HTML in the system's default browser."
msgstr "Виконати експортований HTML у браузері за умовчанням системи."
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not open template for export: \"%s\"."
-msgstr "Не вдалося відкрити шаблон для експорту:"
+msgstr "Не вдалося відкрити шаблон для експорту: \"%s\"."
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Invalid export template: \"%s\"."
-msgstr "Неправильний шаблон експорту:"
+msgstr "Неправильний шаблон експорту: \"%s\"."
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not write file: \"%s\"."
-msgstr "Не вдалося записати файл:"
+msgstr "Не вдалося записати файл: \"%s\"."
#: platform/javascript/export/export.cpp platform/osx/export/export.cpp
#, fuzzy
@@ -19219,9 +19198,8 @@ msgid "Icon Creation"
msgstr "Поле піктограми"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not read file: \"%s\"."
-msgstr "Не вдалося прочитати файл:"
+msgstr "Не вдалося прочитати файл: \"%s\"."
#: platform/javascript/export/export.cpp
msgid "PWA"
@@ -19296,19 +19274,17 @@ msgid "Icon 512 X 512"
msgstr "Піктограма 512⨯12"
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Could not read HTML shell: \"%s\"."
-msgstr "Не вдалося прочитати оболонку HTML:"
+msgstr "Не вдалося прочитати оболонку HTML: \"%s\"."
#: platform/javascript/export/export.cpp
#, fuzzy
msgid "Could not create HTTP server directory: %s."
-msgstr "Не вдалося створити каталог на сервері HTTP:"
+msgstr "Не вдалося створити каталог для сервера HTTP: %s."
#: platform/javascript/export/export.cpp
-#, fuzzy
msgid "Error starting HTTP server: %d."
-msgstr "Помилка під час спроби запуску сервера HTTP:"
+msgstr "Помилка під час спроби запуску сервера HTTP: %d."
#: platform/javascript/export/export.cpp
msgid "Web"
@@ -19574,17 +19550,17 @@ msgstr ""
#: platform/osx/export/export.cpp
#, fuzzy
msgid "Could not open icon file \"%s\"."
-msgstr "Не вдалося експортувати файли проєкту"
+msgstr "Не вдалося відкрити файл іконки \"%s\"."
#: platform/osx/export/export.cpp
#, fuzzy
msgid "Could not start xcrun executable."
-msgstr "Не вдалося запустити підпроцес!"
+msgstr "Не вдалося запустити виконуваний файл xcrun."
#: platform/osx/export/export.cpp
#, fuzzy
msgid "Notarization failed."
-msgstr "Засвідчення"
+msgstr "Нотаріальне засвідчення не відбулося."
#: platform/osx/export/export.cpp
msgid "Notarization request UUID: \"%s\""
@@ -19649,9 +19625,8 @@ msgid "No identity found."
msgstr "Не знайдено профілю."
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Cannot sign file %s."
-msgstr "Помилка під час збереження файла: %s"
+msgstr "Не вдається підписати файл %s."
#: platform/osx/export/export.cpp
#, fuzzy
@@ -19668,7 +19643,7 @@ msgstr "Напрямок"
#: platform/osx/export/export.cpp
#, fuzzy
msgid "Could not start hdiutil executable."
-msgstr "Не вдалося запустити підпроцес!"
+msgstr "Не вдалося запустити виконуваний файл hdiutil."
#: platform/osx/export/export.cpp
msgid "`hdiutil create` failed - file exists."
@@ -19683,14 +19658,12 @@ msgid "Creating app bundle"
msgstr "Створюємо комплект програми"
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Could not find template app to export: \"%s\"."
-msgstr "Не вдалося знайти програму-шаблон для експортування:"
+msgstr "Не вдалося знайти шаблон програми для експортування: \"%s\"."
#: platform/osx/export/export.cpp
-#, fuzzy
msgid "Invalid export format."
-msgstr "Неправильний шаблон експорту:"
+msgstr "Неправильний формат експорту."
#: platform/osx/export/export.cpp
msgid ""
@@ -19757,7 +19730,7 @@ msgstr "Проєкція"
#: platform/osx/export/export.cpp
#, fuzzy
msgid "Could not open file to read from path \"%s\"."
-msgstr "Не вдалося експортувати файли проєкту до проєкту gradle\n"
+msgstr "Не вдалося відкрити файл для читання з шляху \"%s\"."
#: platform/osx/export/export.cpp
msgid "Invalid bundle identifier:"
@@ -20102,9 +20075,8 @@ msgid "Debug Algorithm"
msgstr "Алгоритм діагностики"
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Failed to rename temporary file \"%s\"."
-msgstr "Не вдалося вилучити тимчасовий файл:"
+msgstr "Не вдалося перейменувати тимчасовий файл \"%s\"."
#: platform/windows/export/export.cpp
msgid "Identity Type"
@@ -20190,7 +20162,7 @@ msgstr "Не вдалося знайти сховище ключів. Немож
#: platform/windows/export/export.cpp
#, fuzzy
msgid "Invalid identity type."
-msgstr "Тип профілю"
+msgstr "Невірний тип профілю."
#: platform/windows/export/export.cpp
#, fuzzy
@@ -20214,9 +20186,8 @@ msgid "Signtool failed to sign executable: %s."
msgstr "Некоректний виконуваний файл."
#: platform/windows/export/export.cpp
-#, fuzzy
msgid "Failed to remove temporary file \"%s\"."
-msgstr "Не вдалося вилучити тимчасовий файл:"
+msgstr "Не вдалося вилучити тимчасовий файл \"%s\"."
#: platform/windows/export/export.cpp
msgid ""
@@ -26126,7 +26097,7 @@ msgstr ""
#: scene/resources/navigation_mesh.cpp
#, fuzzy
msgid "Sampling"
-msgstr "Масштаб:"
+msgstr "Масштаб"
#: scene/resources/navigation_mesh.cpp
#, fuzzy
diff --git a/editor/translations/zh_CN.po b/editor/translations/zh_CN.po
index 86a37e167f..1aeaea7087 100644
--- a/editor/translations/zh_CN.po
+++ b/editor/translations/zh_CN.po
@@ -89,7 +89,7 @@ msgstr ""
"Project-Id-Version: Chinese (Simplified) (Godot Engine)\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"POT-Creation-Date: 2018-01-20 12:15+0200\n"
-"PO-Revision-Date: 2022-08-25 13:04+0000\n"
+"PO-Revision-Date: 2022-09-22 15:26+0000\n"
"Last-Translator: Haoyu Qiu <timothyqiu32@gmail.com>\n"
"Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/"
"godot-engine/godot/zh_Hans/>\n"
@@ -98,7 +98,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 4.14-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -15022,17 +15022,14 @@ msgid "Make Local"
msgstr "转为本地"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Enable Scene Unique Name(s)"
msgstr "启用场景唯一名称"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Unique names already used by another node in the scene:"
-msgstr "该场景中已有使用该唯一名称的节点。"
+msgstr "唯一名称已被该场景中的其他节点使用:"
#: editor/scene_tree_dock.cpp
-#, fuzzy
msgid "Disable Scene Unique Name(s)"
msgstr "禁用场景唯一名称"
@@ -17086,19 +17083,16 @@ msgid "Auto Update Project"
msgstr "自动更新项目"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "Assembly Name"
-msgstr "显示名称"
+msgstr "程序集名称"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "Solution Directory"
-msgstr "选择目录"
+msgstr "解决方案目录"
#: modules/mono/godotsharp_dirs.cpp
-#, fuzzy
msgid "C# Project Directory"
-msgstr "选择目录"
+msgstr "C# 项目目录"
#: modules/mono/mono_gd/gd_mono_utils.cpp
msgid "End of inner exception stack trace"
@@ -18801,7 +18795,6 @@ msgid "Custom BG Color"
msgstr "自定义背景色"
#: platform/iphone/export/export.cpp
-#, fuzzy
msgid "Export Icons"
msgstr "导出图标"
@@ -19593,6 +19586,8 @@ msgid ""
"Godot's Mono version does not support the UWP platform. Use the standard "
"build (no C# support) if you wish to target UWP."
msgstr ""
+"Godot 的 Mono 版本不支持 UWP 平台。如果想要以 UWP 为目标,请使用标准构建(不"
+"支持 C#)。"
#: platform/uwp/export/export.cpp
msgid "Invalid package short name."
@@ -20647,7 +20642,7 @@ msgid ""
"instead."
msgstr ""
"“Navigation2D”节点和“Navigation2D.get_simple_path()”已废弃,会在将来的版本中"
-"移除。请用“Navigation2DServer.map_get_path()”替代。"
+"移除。 请用“Navigation2DServer.map_get_path()”替代。"
#: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp
msgid "Pathfinding"
@@ -21788,7 +21783,7 @@ msgid ""
"instead."
msgstr ""
"“Navigation”节点和“Navigation.get_simple_path()”已废弃,会在将来的版本中移"
-"除。请用“NavigationServer.map_get_path()”替代。"
+"除。 请用“NavigationServer.map_get_path()”替代。"
#: scene/3d/navigation.cpp scene/resources/curve.cpp
msgid "Up Vector"
@@ -24227,7 +24222,7 @@ msgstr "自定义"
#: scene/register_scene_types.cpp
msgid "Custom Font"
-msgstr "自定字体"
+msgstr "自定义字体"
#: scene/resources/audio_stream_sample.cpp
#: servers/audio/effects/audio_stream_generator.cpp servers/audio_server.cpp
diff --git a/editor/translations/zh_TW.po b/editor/translations/zh_TW.po
index 994c49156e..4cd08539e4 100644
--- a/editor/translations/zh_TW.po
+++ b/editor/translations/zh_TW.po
@@ -37,13 +37,14 @@
# marktwtn <marktwtn@gmail.com>, 2022.
# Shi-Xun Hong <jimmy3421@gmail.com>, 2022.
# Hugel <qihu@nfschina.com>, 2022.
+# nitenook <admin@alterbaum.net>, 2022.
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: 2022-09-07 06:16+0000\n"
-"Last-Translator: Chia-Hsiang Cheng <cche0109@student.monash.edu>\n"
+"PO-Revision-Date: 2022-09-27 21:37+0000\n"
+"Last-Translator: nitenook <admin@alterbaum.net>\n"
"Language-Team: Chinese (Traditional) <https://hosted.weblate.org/projects/"
"godot-engine/godot/zh_Hant/>\n"
"Language: zh_TW\n"
@@ -51,7 +52,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Weblate 4.14.1-dev\n"
+"X-Generator: Weblate 4.14.1\n"
#: core/bind/core_bind.cpp main/main.cpp
msgid "Tablet Driver"
@@ -10679,6 +10680,7 @@ msgid "Create Rest Pose from Bones"
msgstr "自骨骼建立靜止姿勢"
#: editor/plugins/skeleton_2d_editor_plugin.cpp
+#, fuzzy
msgid "Skeleton2D"
msgstr "Sekeleton2D"