diff options
author | Rémi Verschelde <remi@verschelde.fr> | 2023-05-12 15:08:03 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-12 15:08:03 +0200 |
commit | 2ac4e3bb30517998916bb6b81b7b76788276038c (patch) | |
tree | 245bf4614ff38f3b0fcac813c1dde8c39b57732d /editor | |
parent | fdf66b3472e5ca254a4f90c32f26c4702d46828b (diff) | |
parent | fa8b32cbd4503e73a840bd1a1dd32d2a88cc3f45 (diff) |
Merge pull request #76998 from akien-mga/4.0-cherrypicks
Cherry-picks for the 4.0 branch (future 4.0.3) - 4th batch
Diffstat (limited to 'editor')
62 files changed, 16371 insertions, 1312 deletions
diff --git a/editor/debugger/script_editor_debugger.cpp b/editor/debugger/script_editor_debugger.cpp index 9f69b5dc2a..bb8eafb7a2 100644 --- a/editor/debugger/script_editor_debugger.cpp +++ b/editor/debugger/script_editor_debugger.cpp @@ -1717,7 +1717,7 @@ ScriptEditorDebugger::ScriptEditorDebugger() { { //debugger VBoxContainer *vbc = memnew(VBoxContainer); - vbc->set_name(TTR("Debugger")); + vbc->set_name(TTR("Stack Trace")); Control *dbg = vbc; HBoxContainer *hbc = memnew(HBoxContainer); diff --git a/editor/editor_command_palette.cpp b/editor/editor_command_palette.cpp index 1c598277dd..eb35eddeb1 100644 --- a/editor/editor_command_palette.cpp +++ b/editor/editor_command_palette.cpp @@ -75,9 +75,15 @@ void EditorCommandPalette::_update_command_search(const String &search_text) { r.shortcut_text = E.value.shortcut; r.last_used = E.value.last_used; - if (search_text.is_subsequence_ofn(r.display_name)) { + bool is_subsequence_of_key_name = search_text.is_subsequence_ofn(r.key_name); + bool is_subsequence_of_display_name = search_text.is_subsequence_ofn(r.display_name); + + if (is_subsequence_of_key_name || is_subsequence_of_display_name) { if (!search_text.is_empty()) { - r.score = _score_path(search_text, r.display_name.to_lower()); + float key_name_score = is_subsequence_of_key_name ? _score_path(search_text, r.key_name.to_lower()) : .0f; + float display_name_score = is_subsequence_of_display_name ? _score_path(search_text, r.display_name.to_lower()) : .0f; + + r.score = MAX(key_name_score, display_name_score); } entries.push_back(r); diff --git a/editor/editor_data.cpp b/editor/editor_data.cpp index 9bdd39f684..7eb539333b 100644 --- a/editor/editor_data.cpp +++ b/editor/editor_data.cpp @@ -595,7 +595,7 @@ void EditorData::remove_scene(int p_idx) { } if (!edited_scene[p_idx].path.is_empty()) { - ScriptEditor::get_singleton()->close_builtin_scripts_from_scene(edited_scene[p_idx].path); + EditorNode::get_singleton()->emit_signal("scene_closed", edited_scene[p_idx].path); } undo_redo_manager->discard_history(edited_scene[p_idx].history_id); diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp index 87ca642be5..54494b63df 100644 --- a/editor/editor_node.cpp +++ b/editor/editor_node.cpp @@ -6617,6 +6617,7 @@ void EditorNode::_bind_methods() { ADD_SIGNAL(MethodInfo("scene_saved", PropertyInfo(Variant::STRING, "path"))); ADD_SIGNAL(MethodInfo("project_settings_changed")); ADD_SIGNAL(MethodInfo("scene_changed")); + ADD_SIGNAL(MethodInfo("scene_closed", PropertyInfo(Variant::STRING, "path"))); } static Node *_resource_get_edited_scene() { diff --git a/editor/editor_properties.cpp b/editor/editor_properties.cpp index 01a574def6..348e1ead4a 100644 --- a/editor/editor_properties.cpp +++ b/editor/editor_properties.cpp @@ -3998,7 +3998,6 @@ void EditorPropertyResource::_viewport_selected(const NodePath &p_path) { Ref<ViewportTexture> vt; vt.instantiate(); vt->set_viewport_path_in_scene(get_tree()->get_edited_scene_root()->get_path_to(to_node)); - vt->setup_local_to_scene(); emit_changed(get_edited_property(), vt); update_property(); diff --git a/editor/editor_properties_array_dict.cpp b/editor/editor_properties_array_dict.cpp index 80ebd32295..e684698e01 100644 --- a/editor/editor_properties_array_dict.cpp +++ b/editor/editor_properties_array_dict.cpp @@ -222,7 +222,7 @@ void EditorPropertyArray::update_property() { String array_type_name = Variant::get_type_name(array_type); if (array_type == Variant::ARRAY && subtype != Variant::NIL) { String type_name; - if (subtype == Variant::OBJECT && subtype_hint == PROPERTY_HINT_RESOURCE_TYPE) { + if (subtype == Variant::OBJECT && (subtype_hint == PROPERTY_HINT_RESOURCE_TYPE || subtype_hint == PROPERTY_HINT_NODE_TYPE)) { type_name = subtype_hint_string; } else { type_name = Variant::get_type_name(subtype); diff --git a/editor/export/project_export.cpp b/editor/export/project_export.cpp index a7ac95bd5b..0407f77e9b 100644 --- a/editor/export/project_export.cpp +++ b/editor/export/project_export.cpp @@ -244,6 +244,7 @@ void ProjectExportDialog::_edit_preset(int p_index) { export_filter->select(current->get_export_filter()); include_filters->set_text(current->get_include_filter()); + include_label->set_text(current->get_export_filter() == EditorExportPreset::EXCLUDE_SELECTED_RESOURCES ? TTR("Resources to exclude:") : TTR("Resources to export:")); exclude_filters->set_text(current->get_exclude_filter()); server_strip_message->set_visible(current->get_export_filter() == EditorExportPreset::EXPORT_CUSTOMIZED); @@ -704,6 +705,7 @@ void ProjectExportDialog::_export_type_changed(int p_which) { if (filter_type == EditorExportPreset::EXPORT_CUSTOMIZED && current->get_customized_files_count() == 0) { current->set_file_export_mode("res://", EditorExportPreset::MODE_FILE_STRIP); } + include_label->set_text(current->get_export_filter() == EditorExportPreset::EXCLUDE_SELECTED_RESOURCES ? TTR("Resources to exclude:") : TTR("Resources to export:")); updating = true; _fill_resource_tree(); diff --git a/editor/import/collada.cpp b/editor/import/collada.cpp index a8d746fde6..a499fc4feb 100644 --- a/editor/import/collada.cpp +++ b/editor/import/collada.cpp @@ -44,10 +44,10 @@ /* HELPERS */ -String Collada::Effect::get_texture_path(const String &p_source, Collada &state) const { +String Collada::Effect::get_texture_path(const String &p_source, Collada &p_state) const { const String &image = p_source; - ERR_FAIL_COND_V(!state.state.image_map.has(image), ""); - return state.state.image_map[image].path; + ERR_FAIL_COND_V(!p_state.state.image_map.has(image), ""); + return p_state.state.image_map[image].path; } Transform3D Collada::get_root_transform() const { @@ -58,9 +58,9 @@ Transform3D Collada::get_root_transform() const { return unit_scale_transform; } -void Collada::Vertex::fix_unit_scale(const Collada &state) { +void Collada::Vertex::fix_unit_scale(const Collada &p_state) { #ifdef COLLADA_IMPORT_SCALE_SCENE - vertex *= state.state.unit_scale; + vertex *= p_state.state.unit_scale; #endif } @@ -102,27 +102,27 @@ Transform3D Collada::fix_transform(const Transform3D &p_transform) { //return state.matrix_fix * p_transform; } -static Transform3D _read_transform_from_array(const Vector<float> &array, int ofs = 0) { +static Transform3D _read_transform_from_array(const Vector<float> &p_array, int p_ofs = 0) { Transform3D tr; // i wonder why collada matrices are transposed, given that's opposed to opengl.. - tr.basis.rows[0][0] = array[0 + ofs]; - tr.basis.rows[0][1] = array[1 + ofs]; - tr.basis.rows[0][2] = array[2 + ofs]; - tr.basis.rows[1][0] = array[4 + ofs]; - tr.basis.rows[1][1] = array[5 + ofs]; - tr.basis.rows[1][2] = array[6 + ofs]; - tr.basis.rows[2][0] = array[8 + ofs]; - tr.basis.rows[2][1] = array[9 + ofs]; - tr.basis.rows[2][2] = array[10 + ofs]; - tr.origin.x = array[3 + ofs]; - tr.origin.y = array[7 + ofs]; - tr.origin.z = array[11 + ofs]; + tr.basis.rows[0][0] = p_array[0 + p_ofs]; + tr.basis.rows[0][1] = p_array[1 + p_ofs]; + tr.basis.rows[0][2] = p_array[2 + p_ofs]; + tr.basis.rows[1][0] = p_array[4 + p_ofs]; + tr.basis.rows[1][1] = p_array[5 + p_ofs]; + tr.basis.rows[1][2] = p_array[6 + p_ofs]; + tr.basis.rows[2][0] = p_array[8 + p_ofs]; + tr.basis.rows[2][1] = p_array[9 + p_ofs]; + tr.basis.rows[2][2] = p_array[10 + p_ofs]; + tr.origin.x = p_array[3 + p_ofs]; + tr.origin.y = p_array[7 + p_ofs]; + tr.origin.z = p_array[11 + p_ofs]; return tr; } /* STRUCTURES */ -Transform3D Collada::Node::compute_transform(const Collada &state) const { +Transform3D Collada::Node::compute_transform(const Collada &p_state) const { Transform3D xform; for (int i = 0; i < xform_list.size(); i++) { @@ -160,7 +160,7 @@ Transform3D Collada::Node::compute_transform(const Collada &state) const { } #ifdef COLLADA_IMPORT_SCALE_SCENE - xform.origin *= state.state.unit_scale; + xform.origin *= p_state.state.unit_scale; #endif return xform; } @@ -243,41 +243,41 @@ Vector<float> Collada::AnimationTrack::get_value_at_time(float p_time) const { ERR_FAIL_V(Vector<float>()); } -void Collada::_parse_asset(XMLParser &parser) { - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String name = parser.get_node_name(); +void Collada::_parse_asset(XMLParser &p_parser) { + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String name = p_parser.get_node_name(); if (name == "up_axis") { - parser.read(); - if (parser.get_node_data() == "X_UP") { + p_parser.read(); + if (p_parser.get_node_data() == "X_UP") { state.up_axis = Vector3::AXIS_X; } - if (parser.get_node_data() == "Y_UP") { + if (p_parser.get_node_data() == "Y_UP") { state.up_axis = Vector3::AXIS_Y; } - if (parser.get_node_data() == "Z_UP") { + if (p_parser.get_node_data() == "Z_UP") { state.up_axis = Vector3::AXIS_Z; } - COLLADA_PRINT("up axis: " + parser.get_node_data()); + COLLADA_PRINT("up axis: " + p_parser.get_node_data()); } else if (name == "unit") { - state.unit_scale = parser.get_named_attribute_value("meter").to_float(); + state.unit_scale = p_parser.get_named_attribute_value("meter").to_float(); COLLADA_PRINT("unit scale: " + rtos(state.unit_scale)); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "asset") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "asset") { break; //end of <asset> } } } -void Collada::_parse_image(XMLParser &parser) { - String id = parser.get_named_attribute_value("id"); +void Collada::_parse_image(XMLParser &p_parser) { + String id = p_parser.get_named_attribute_value("id"); if (!(state.import_flags & IMPORT_FLAG_SCENE)) { - if (!parser.is_empty()) { - parser.skip_section(); + if (!p_parser.is_empty()) { + p_parser.skip_section(); } return; } @@ -286,19 +286,19 @@ void Collada::_parse_image(XMLParser &parser) { if (state.version < State::Version(1, 4, 0)) { /* <1.4 */ - String path = parser.get_named_attribute_value("source").strip_edges(); + String path = p_parser.get_named_attribute_value("source").strip_edges(); if (!path.contains("://") && path.is_relative_path()) { // path is relative to file being loaded, so convert to a resource path image.path = ProjectSettings::get_singleton()->localize_path(state.local_path.get_base_dir().path_join(path.uri_decode())); } } else { - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String name = parser.get_node_name(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String name = p_parser.get_node_name(); if (name == "init_from") { - parser.read(); - String path = parser.get_node_data().strip_edges().uri_decode(); + p_parser.read(); + String path = p_parser.get_node_data().strip_edges().uri_decode(); if (!path.contains("://") && path.is_relative_path()) { // path is relative to file being loaded, so convert to a resource path @@ -314,11 +314,11 @@ void Collada::_parse_image(XMLParser &parser) { } else if (name == "data") { ERR_PRINT("COLLADA Embedded image data not supported!"); - } else if (name == "extra" && !parser.is_empty()) { - parser.skip_section(); + } else if (name == "extra" && !p_parser.is_empty()) { + p_parser.skip_section(); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "image") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "image") { break; //end of <asset> } } @@ -327,29 +327,29 @@ void Collada::_parse_image(XMLParser &parser) { state.image_map[id] = image; } -void Collada::_parse_material(XMLParser &parser) { +void Collada::_parse_material(XMLParser &p_parser) { if (!(state.import_flags & IMPORT_FLAG_SCENE)) { - if (!parser.is_empty()) { - parser.skip_section(); + if (!p_parser.is_empty()) { + p_parser.skip_section(); } return; } Material material; - String id = parser.get_named_attribute_value("id"); - if (parser.has_attribute("name")) { - material.name = parser.get_named_attribute_value("name"); + String id = p_parser.get_named_attribute_value("id"); + if (p_parser.has_attribute("name")) { + material.name = p_parser.get_named_attribute_value("name"); } if (state.version < State::Version(1, 4, 0)) { /* <1.4 */ ERR_PRINT("Collada Materials < 1.4 are not supported (yet)"); } else { - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT && parser.get_node_name() == "instance_effect") { - material.instance_effect = _uri_to_id(parser.get_named_attribute_value("url")); - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "material") { + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT && p_parser.get_node_name() == "instance_effect") { + material.instance_effect = _uri_to_id(p_parser.get_named_attribute_value("url")); + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "material") { break; //end of <asset> } } @@ -359,8 +359,8 @@ void Collada::_parse_material(XMLParser &parser) { } //! reads floats from inside of xml element until end of xml element -Vector<float> Collada::_read_float_array(XMLParser &parser) { - if (parser.is_empty()) { +Vector<float> Collada::_read_float_array(XMLParser &p_parser) { + if (p_parser.is_empty()) { return Vector<float>(); } @@ -371,16 +371,16 @@ Vector<float> Collada::_read_float_array(XMLParser &parser) { splitters.push_back("\t"); Vector<float> array; - while (parser.read() == OK) { + while (p_parser.read() == OK) { // TODO: check for comments inside the element // and ignore them. - if (parser.get_node_type() == XMLParser::NODE_TEXT) { + if (p_parser.get_node_type() == XMLParser::NODE_TEXT) { // parse float data - String str = parser.get_node_data(); + String str = p_parser.get_node_data(); array = str.split_floats_mk(splitters, false); //array=str.split_floats(" ",false); - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END) { break; // end parsing text } } @@ -388,21 +388,21 @@ Vector<float> Collada::_read_float_array(XMLParser &parser) { return array; } -Vector<String> Collada::_read_string_array(XMLParser &parser) { - if (parser.is_empty()) { +Vector<String> Collada::_read_string_array(XMLParser &p_parser) { + if (p_parser.is_empty()) { return Vector<String>(); } Vector<String> array; - while (parser.read() == OK) { + while (p_parser.read() == OK) { // TODO: check for comments inside the element // and ignore them. - if (parser.get_node_type() == XMLParser::NODE_TEXT) { + if (p_parser.get_node_type() == XMLParser::NODE_TEXT) { // parse String data - String str = parser.get_node_data(); + String str = p_parser.get_node_data(); array = str.split_spaces(); - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END) { break; // end parsing text } } @@ -410,21 +410,21 @@ Vector<String> Collada::_read_string_array(XMLParser &parser) { return array; } -Transform3D Collada::_read_transform(XMLParser &parser) { - if (parser.is_empty()) { +Transform3D Collada::_read_transform(XMLParser &p_parser) { + if (p_parser.is_empty()) { return Transform3D(); } Vector<String> array; - while (parser.read() == OK) { + while (p_parser.read() == OK) { // TODO: check for comments inside the element // and ignore them. - if (parser.get_node_type() == XMLParser::NODE_TEXT) { + if (p_parser.get_node_type() == XMLParser::NODE_TEXT) { // parse float data - String str = parser.get_node_data(); + String str = p_parser.get_node_data(); array = str.split_spaces(); - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END) { break; // end parsing text } } @@ -439,332 +439,332 @@ Transform3D Collada::_read_transform(XMLParser &parser) { return _read_transform_from_array(farr); } -String Collada::_read_empty_draw_type(XMLParser &parser) { +String Collada::_read_empty_draw_type(XMLParser &p_parser) { String empty_draw_type = ""; - if (parser.is_empty()) { + if (p_parser.is_empty()) { return empty_draw_type; } - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_TEXT) { - empty_draw_type = parser.get_node_data(); - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END) { + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_TEXT) { + empty_draw_type = p_parser.get_node_data(); + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END) { break; // end parsing text } } return empty_draw_type; } -Variant Collada::_parse_param(XMLParser &parser) { - if (parser.is_empty()) { +Variant Collada::_parse_param(XMLParser &p_parser) { + if (p_parser.is_empty()) { return Variant(); } - String from = parser.get_node_name(); + String from = p_parser.get_node_name(); Variant data; - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - if (parser.get_node_name() == "float") { - parser.read(); - if (parser.get_node_type() == XMLParser::NODE_TEXT) { - data = parser.get_node_data().to_float(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + if (p_parser.get_node_name() == "float") { + p_parser.read(); + if (p_parser.get_node_type() == XMLParser::NODE_TEXT) { + data = p_parser.get_node_data().to_float(); } - } else if (parser.get_node_name() == "float2") { - Vector<float> v2 = _read_float_array(parser); + } else if (p_parser.get_node_name() == "float2") { + Vector<float> v2 = _read_float_array(p_parser); if (v2.size() >= 2) { data = Vector2(v2[0], v2[1]); } - } else if (parser.get_node_name() == "float3") { - Vector<float> v3 = _read_float_array(parser); + } else if (p_parser.get_node_name() == "float3") { + Vector<float> v3 = _read_float_array(p_parser); if (v3.size() >= 3) { data = Vector3(v3[0], v3[1], v3[2]); } - } else if (parser.get_node_name() == "float4") { - Vector<float> v4 = _read_float_array(parser); + } else if (p_parser.get_node_name() == "float4") { + Vector<float> v4 = _read_float_array(p_parser); if (v4.size() >= 4) { data = Color(v4[0], v4[1], v4[2], v4[3]); } - } else if (parser.get_node_name() == "sampler2D") { - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - if (parser.get_node_name() == "source") { - parser.read(); + } else if (p_parser.get_node_name() == "sampler2D") { + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + if (p_parser.get_node_name() == "source") { + p_parser.read(); - if (parser.get_node_type() == XMLParser::NODE_TEXT) { - data = parser.get_node_data(); + if (p_parser.get_node_type() == XMLParser::NODE_TEXT) { + data = p_parser.get_node_data(); } } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "sampler2D") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "sampler2D") { break; } } - } else if (parser.get_node_name() == "surface") { - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - if (parser.get_node_name() == "init_from") { - parser.read(); + } else if (p_parser.get_node_name() == "surface") { + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + if (p_parser.get_node_name() == "init_from") { + p_parser.read(); - if (parser.get_node_type() == XMLParser::NODE_TEXT) { - data = parser.get_node_data(); + if (p_parser.get_node_type() == XMLParser::NODE_TEXT) { + data = p_parser.get_node_data(); } } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "surface") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "surface") { break; } } } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == from) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == from) { break; } } - COLLADA_PRINT("newparam ending " + parser.get_node_name()); + COLLADA_PRINT("newparam ending " + p_parser.get_node_name()); return data; } -void Collada::_parse_effect_material(XMLParser &parser, Effect &effect, String &id) { +void Collada::_parse_effect_material(XMLParser &p_parser, Effect &p_effect, String &p_id) { if (!(state.import_flags & IMPORT_FLAG_SCENE)) { - if (!parser.is_empty()) { - parser.skip_section(); + if (!p_parser.is_empty()) { + p_parser.skip_section(); } return; } - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { // first come the tags we descend, but ignore the top-levels - COLLADA_PRINT("node name: " + parser.get_node_name()); + COLLADA_PRINT("node name: " + p_parser.get_node_name()); - if (!parser.is_empty() && - (parser.get_node_name() == "profile_COMMON" || - parser.get_node_name() == "technique" || - parser.get_node_name() == "extra")) { - _parse_effect_material(parser, effect, id); // try again + if (!p_parser.is_empty() && + (p_parser.get_node_name() == "profile_COMMON" || + p_parser.get_node_name() == "technique" || + p_parser.get_node_name() == "extra")) { + _parse_effect_material(p_parser, p_effect, p_id); // try again - } else if (parser.get_node_name() == "newparam") { - String name = parser.get_named_attribute_value("sid"); - Variant value = _parse_param(parser); - effect.params[name] = value; + } else if (p_parser.get_node_name() == "newparam") { + String name = p_parser.get_named_attribute_value("sid"); + Variant value = _parse_param(p_parser); + p_effect.params[name] = value; COLLADA_PRINT("param: " + name + " value:" + String(value)); - } else if (parser.get_node_name() == "constant" || - parser.get_node_name() == "lambert" || - parser.get_node_name() == "phong" || - parser.get_node_name() == "blinn") { - COLLADA_PRINT("shade model: " + parser.get_node_name()); - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String what = parser.get_node_name(); + } else if (p_parser.get_node_name() == "constant" || + p_parser.get_node_name() == "lambert" || + p_parser.get_node_name() == "phong" || + p_parser.get_node_name() == "blinn") { + COLLADA_PRINT("shade model: " + p_parser.get_node_name()); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String what = p_parser.get_node_name(); if (what == "emission" || what == "diffuse" || what == "specular" || what == "reflective") { // color or texture types - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - if (parser.get_node_name() == "color") { - Vector<float> colorarr = _read_float_array(parser); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + if (p_parser.get_node_name() == "color") { + Vector<float> colorarr = _read_float_array(p_parser); COLLADA_PRINT("colorarr size: " + rtos(colorarr.size())); if (colorarr.size() >= 3) { // alpha strangely not alright? maybe it needs to be multiplied by value as a channel intensity Color color(colorarr[0], colorarr[1], colorarr[2], 1.0); if (what == "diffuse") { - effect.diffuse.color = color; + p_effect.diffuse.color = color; } if (what == "specular") { - effect.specular.color = color; + p_effect.specular.color = color; } if (what == "emission") { - effect.emission.color = color; + p_effect.emission.color = color; } COLLADA_PRINT(what + " color: " + color); } - } else if (parser.get_node_name() == "texture") { - String sampler = parser.get_named_attribute_value("texture"); - if (!effect.params.has(sampler)) { - ERR_PRINT(String("Couldn't find sampler: " + sampler + " in material:" + id).utf8().get_data()); + } else if (p_parser.get_node_name() == "texture") { + String sampler = p_parser.get_named_attribute_value("texture"); + if (!p_effect.params.has(sampler)) { + ERR_PRINT(String("Couldn't find sampler: " + sampler + " in material:" + p_id).utf8().get_data()); } else { - String surface = effect.params[sampler]; + String surface = p_effect.params[sampler]; - if (!effect.params.has(surface)) { - ERR_PRINT(String("Couldn't find surface: " + surface + " in material:" + id).utf8().get_data()); + if (!p_effect.params.has(surface)) { + ERR_PRINT(String("Couldn't find surface: " + surface + " in material:" + p_id).utf8().get_data()); } else { - String uri = effect.params[surface]; + String uri = p_effect.params[surface]; if (what == "diffuse") { - effect.diffuse.texture = uri; + p_effect.diffuse.texture = uri; } else if (what == "specular") { - effect.specular.texture = uri; + p_effect.specular.texture = uri; } else if (what == "emission") { - effect.emission.texture = uri; + p_effect.emission.texture = uri; } else if (what == "bump") { - if (parser.has_attribute("bumptype") && parser.get_named_attribute_value("bumptype") != "NORMALMAP") { + if (p_parser.has_attribute("bumptype") && p_parser.get_named_attribute_value("bumptype") != "NORMALMAP") { WARN_PRINT("'bump' texture type is not NORMALMAP, only NORMALMAP is supported."); } - effect.bump.texture = uri; + p_effect.bump.texture = uri; } COLLADA_PRINT(what + " texture: " + uri); } } - } else if (!parser.is_empty()) { - parser.skip_section(); + } else if (!p_parser.is_empty()) { + p_parser.skip_section(); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == what) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == what) { break; } } } else if (what == "shininess") { - effect.shininess = _parse_param(parser); + p_effect.shininess = _parse_param(p_parser); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && - (parser.get_node_name() == "constant" || - parser.get_node_name() == "lambert" || - parser.get_node_name() == "phong" || - parser.get_node_name() == "blinn")) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && + (p_parser.get_node_name() == "constant" || + p_parser.get_node_name() == "lambert" || + p_parser.get_node_name() == "phong" || + p_parser.get_node_name() == "blinn")) { break; } } - } else if (parser.get_node_name() == "double_sided" || parser.get_node_name() == "show_double_sided") { // colladamax / google earth + } else if (p_parser.get_node_name() == "double_sided" || p_parser.get_node_name() == "show_double_sided") { // colladamax / google earth // 3DS Max / Google Earth double sided extension - parser.read(); - effect.found_double_sided = true; - effect.double_sided = parser.get_node_data().to_int(); - COLLADA_PRINT("double sided: " + itos(parser.get_node_data().to_int())); - } else if (parser.get_node_name() == "unshaded") { - parser.read(); - effect.unshaded = parser.get_node_data().to_int(); - } else if (parser.get_node_name() == "bump") { + p_parser.read(); + p_effect.found_double_sided = true; + p_effect.double_sided = p_parser.get_node_data().to_int(); + COLLADA_PRINT("double sided: " + itos(p_parser.get_node_data().to_int())); + } else if (p_parser.get_node_name() == "unshaded") { + p_parser.read(); + p_effect.unshaded = p_parser.get_node_data().to_int(); + } else if (p_parser.get_node_name() == "bump") { // color or texture types - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - if (parser.get_node_name() == "texture") { - String sampler = parser.get_named_attribute_value("texture"); - if (!effect.params.has(sampler)) { - ERR_PRINT(String("Couldn't find sampler: " + sampler + " in material:" + id).utf8().get_data()); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + if (p_parser.get_node_name() == "texture") { + String sampler = p_parser.get_named_attribute_value("texture"); + if (!p_effect.params.has(sampler)) { + ERR_PRINT(String("Couldn't find sampler: " + sampler + " in material:" + p_id).utf8().get_data()); } else { - String surface = effect.params[sampler]; + String surface = p_effect.params[sampler]; - if (!effect.params.has(surface)) { - ERR_PRINT(String("Couldn't find surface: " + surface + " in material:" + id).utf8().get_data()); + if (!p_effect.params.has(surface)) { + ERR_PRINT(String("Couldn't find surface: " + surface + " in material:" + p_id).utf8().get_data()); } else { - String uri = effect.params[surface]; + String uri = p_effect.params[surface]; - if (parser.has_attribute("bumptype") && parser.get_named_attribute_value("bumptype") != "NORMALMAP") { + if (p_parser.has_attribute("bumptype") && p_parser.get_named_attribute_value("bumptype") != "NORMALMAP") { WARN_PRINT("'bump' texture type is not NORMALMAP, only NORMALMAP is supported."); } - effect.bump.texture = uri; + p_effect.bump.texture = uri; COLLADA_PRINT(" bump: " + uri); } } - } else if (!parser.is_empty()) { - parser.skip_section(); + } else if (!p_parser.is_empty()) { + p_parser.skip_section(); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "bump") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "bump") { break; } } - } else if (!parser.is_empty()) { - parser.skip_section(); + } else if (!p_parser.is_empty()) { + p_parser.skip_section(); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && - (parser.get_node_name() == "effect" || - parser.get_node_name() == "profile_COMMON" || - parser.get_node_name() == "technique" || - parser.get_node_name() == "extra")) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && + (p_parser.get_node_name() == "effect" || + p_parser.get_node_name() == "profile_COMMON" || + p_parser.get_node_name() == "technique" || + p_parser.get_node_name() == "extra")) { break; } } } -void Collada::_parse_effect(XMLParser &parser) { +void Collada::_parse_effect(XMLParser &p_parser) { if (!(state.import_flags & IMPORT_FLAG_SCENE)) { - if (!parser.is_empty()) { - parser.skip_section(); + if (!p_parser.is_empty()) { + p_parser.skip_section(); } return; } - String id = parser.get_named_attribute_value("id"); + String id = p_parser.get_named_attribute_value("id"); Effect effect; - if (parser.has_attribute("name")) { - effect.name = parser.get_named_attribute_value("name"); + if (p_parser.has_attribute("name")) { + effect.name = p_parser.get_named_attribute_value("name"); } - _parse_effect_material(parser, effect, id); + _parse_effect_material(p_parser, effect, id); state.effect_map[id] = effect; COLLADA_PRINT("Effect ID:" + id); } -void Collada::_parse_camera(XMLParser &parser) { +void Collada::_parse_camera(XMLParser &p_parser) { if (!(state.import_flags & IMPORT_FLAG_SCENE)) { - if (!parser.is_empty()) { - parser.skip_section(); + if (!p_parser.is_empty()) { + p_parser.skip_section(); } return; } - String id = parser.get_named_attribute_value("id"); + String id = p_parser.get_named_attribute_value("id"); state.camera_data_map[id] = CameraData(); CameraData &camera = state.camera_data_map[id]; - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String name = parser.get_node_name(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String name = p_parser.get_node_name(); if (name == "perspective") { camera.mode = CameraData::MODE_PERSPECTIVE; } else if (name == "orthographic") { camera.mode = CameraData::MODE_ORTHOGONAL; } else if (name == "xfov") { - parser.read(); - camera.perspective.x_fov = parser.get_node_data().to_float(); + p_parser.read(); + camera.perspective.x_fov = p_parser.get_node_data().to_float(); } else if (name == "yfov") { - parser.read(); - camera.perspective.y_fov = parser.get_node_data().to_float(); + p_parser.read(); + camera.perspective.y_fov = p_parser.get_node_data().to_float(); } else if (name == "xmag") { - parser.read(); - camera.orthogonal.x_mag = parser.get_node_data().to_float(); + p_parser.read(); + camera.orthogonal.x_mag = p_parser.get_node_data().to_float(); } else if (name == "ymag") { - parser.read(); - camera.orthogonal.y_mag = parser.get_node_data().to_float(); + p_parser.read(); + camera.orthogonal.y_mag = p_parser.get_node_data().to_float(); } else if (name == "aspect_ratio") { - parser.read(); - camera.aspect = parser.get_node_data().to_float(); + p_parser.read(); + camera.aspect = p_parser.get_node_data().to_float(); } else if (name == "znear") { - parser.read(); - camera.z_near = parser.get_node_data().to_float(); + p_parser.read(); + camera.z_near = p_parser.get_node_data().to_float(); } else if (name == "zfar") { - parser.read(); - camera.z_far = parser.get_node_data().to_float(); + p_parser.read(); + camera.z_far = p_parser.get_node_data().to_float(); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "camera") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "camera") { break; //end of <asset> } } @@ -772,22 +772,22 @@ void Collada::_parse_camera(XMLParser &parser) { COLLADA_PRINT("Camera ID:" + id); } -void Collada::_parse_light(XMLParser &parser) { +void Collada::_parse_light(XMLParser &p_parser) { if (!(state.import_flags & IMPORT_FLAG_SCENE)) { - if (!parser.is_empty()) { - parser.skip_section(); + if (!p_parser.is_empty()) { + p_parser.skip_section(); } return; } - String id = parser.get_named_attribute_value("id"); + String id = p_parser.get_named_attribute_value("id"); state.light_data_map[id] = LightData(); LightData &light = state.light_data_map[id]; - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String name = parser.get_node_name(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String name = p_parser.get_node_name(); if (name == "ambient") { light.mode = LightData::MODE_AMBIENT; @@ -798,8 +798,8 @@ void Collada::_parse_light(XMLParser &parser) { } else if (name == "spot") { light.mode = LightData::MODE_SPOT; } else if (name == "color") { - parser.read(); - Vector<float> colorarr = _read_float_array(parser); + p_parser.read(); + Vector<float> colorarr = _read_float_array(p_parser); COLLADA_PRINT("colorarr size: " + rtos(colorarr.size())); if (colorarr.size() >= 4) { @@ -809,24 +809,24 @@ void Collada::_parse_light(XMLParser &parser) { } } else if (name == "constant_attenuation") { - parser.read(); - light.constant_att = parser.get_node_data().to_float(); + p_parser.read(); + light.constant_att = p_parser.get_node_data().to_float(); } else if (name == "linear_attenuation") { - parser.read(); - light.linear_att = parser.get_node_data().to_float(); + p_parser.read(); + light.linear_att = p_parser.get_node_data().to_float(); } else if (name == "quadratic_attenuation") { - parser.read(); - light.quad_att = parser.get_node_data().to_float(); + p_parser.read(); + light.quad_att = p_parser.get_node_data().to_float(); } else if (name == "falloff_angle") { - parser.read(); - light.spot_angle = parser.get_node_data().to_float(); + p_parser.read(); + light.spot_angle = p_parser.get_node_data().to_float(); } else if (name == "falloff_exponent") { - parser.read(); - light.spot_exp = parser.get_node_data().to_float(); + p_parser.read(); + light.spot_exp = p_parser.get_node_data().to_float(); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "light") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "light") { break; //end of <asset> } } @@ -834,10 +834,10 @@ void Collada::_parse_light(XMLParser &parser) { COLLADA_PRINT("Light ID:" + id); } -void Collada::_parse_curve_geometry(XMLParser &parser, String p_id, String p_name) { +void Collada::_parse_curve_geometry(XMLParser &p_parser, String p_id, String p_name) { if (!(state.import_flags & IMPORT_FLAG_SCENE)) { - if (!parser.is_empty()) { - parser.skip_section(); + if (!p_parser.is_empty()) { + p_parser.skip_section(); } return; } @@ -848,7 +848,7 @@ void Collada::_parse_curve_geometry(XMLParser &parser, String p_id, String p_nam CurveData &curvedata = state.curve_data_map[p_id]; curvedata.name = p_name; - String closed = parser.get_named_attribute_value_safe("closed").to_lower(); + String closed = p_parser.get_named_attribute_value_safe("closed").to_lower(); curvedata.closed = closed == "true" || closed == "1"; COLLADA_PRINT("curve name: " + p_name); @@ -856,16 +856,16 @@ void Collada::_parse_curve_geometry(XMLParser &parser, String p_id, String p_nam String current_source; // handles geometry node and the curve children in this loop // read sources with arrays and accessor for each curve - if (parser.is_empty()) { + if (p_parser.is_empty()) { return; } - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String section = parser.get_node_name(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String section = p_parser.get_node_name(); if (section == "source") { - String id = parser.get_named_attribute_value("id"); + String id = p_parser.get_named_attribute_value("id"); curvedata.sources[id] = CurveData::Source(); current_source = id; COLLADA_PRINT("source data: " + id); @@ -873,13 +873,13 @@ void Collada::_parse_curve_geometry(XMLParser &parser, String p_id, String p_nam } else if (section == "float_array" || section == "array") { // create a new array and read it. if (curvedata.sources.has(current_source)) { - curvedata.sources[current_source].array = _read_float_array(parser); + curvedata.sources[current_source].array = _read_float_array(p_parser); COLLADA_PRINT("section: " + current_source + " read " + itos(curvedata.sources[current_source].array.size()) + " values."); } } else if (section == "Name_array") { // create a new array and read it. if (curvedata.sources.has(current_source)) { - curvedata.sources[current_source].sarray = _read_string_array(parser); + curvedata.sources[current_source].sarray = _read_string_array(p_parser); COLLADA_PRINT("section: " + current_source + " read " + itos(curvedata.sources[current_source].array.size()) + " values."); } @@ -888,38 +888,38 @@ void Collada::_parse_curve_geometry(XMLParser &parser, String p_id, String p_nam } else if (section == "accessor") { // child of source (below a technique tag) if (curvedata.sources.has(current_source)) { - curvedata.sources[current_source].stride = parser.get_named_attribute_value("stride").to_int(); + curvedata.sources[current_source].stride = p_parser.get_named_attribute_value("stride").to_int(); COLLADA_PRINT("section: " + current_source + " stride " + itos(curvedata.sources[current_source].stride)); } } else if (section == "control_vertices") { - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - if (parser.get_node_name() == "input") { - String semantic = parser.get_named_attribute_value("semantic"); - String source = _uri_to_id(parser.get_named_attribute_value("source")); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + if (p_parser.get_node_name() == "input") { + String semantic = p_parser.get_named_attribute_value("semantic"); + String source = _uri_to_id(p_parser.get_named_attribute_value("source")); curvedata.control_vertices[semantic] = source; COLLADA_PRINT(section + " input semantic: " + semantic + " source: " + source); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == section) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == section) { break; } } - } else if (!parser.is_empty()) { - parser.skip_section(); + } else if (!p_parser.is_empty()) { + p_parser.skip_section(); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "spline") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "spline") { break; } } } -void Collada::_parse_mesh_geometry(XMLParser &parser, String p_id, String p_name) { +void Collada::_parse_mesh_geometry(XMLParser &p_parser, String p_id, String p_name) { if (!(state.import_flags & IMPORT_FLAG_SCENE)) { - if (!parser.is_empty()) { - parser.skip_section(); + if (!p_parser.is_empty()) { + p_parser.skip_section(); } return; } @@ -936,16 +936,16 @@ void Collada::_parse_mesh_geometry(XMLParser &parser, String p_id, String p_name String current_source; // handles geometry node and the mesh children in this loop // read sources with arrays and accessor for each mesh - if (parser.is_empty()) { + if (p_parser.is_empty()) { return; } - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String section = parser.get_node_name(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String section = p_parser.get_node_name(); if (section == "source") { - String id = parser.get_named_attribute_value("id"); + String id = p_parser.get_named_attribute_value("id"); meshdata.sources[id] = MeshData::Source(); current_source = id; COLLADA_PRINT("source data: " + id); @@ -953,7 +953,7 @@ void Collada::_parse_mesh_geometry(XMLParser &parser, String p_id, String p_name } else if (section == "float_array" || section == "array") { // create a new array and read it. if (meshdata.sources.has(current_source)) { - meshdata.sources[current_source].array = _read_float_array(parser); + meshdata.sources[current_source].array = _read_float_array(p_parser); COLLADA_PRINT("section: " + current_source + " read " + itos(meshdata.sources[current_source].array.size()) + " values."); } } else if (section == "technique_common") { @@ -961,19 +961,19 @@ void Collada::_parse_mesh_geometry(XMLParser &parser, String p_id, String p_name } else if (section == "accessor") { // child of source (below a technique tag) if (meshdata.sources.has(current_source)) { - meshdata.sources[current_source].stride = parser.get_named_attribute_value("stride").to_int(); + meshdata.sources[current_source].stride = p_parser.get_named_attribute_value("stride").to_int(); COLLADA_PRINT("section: " + current_source + " stride " + itos(meshdata.sources[current_source].stride)); } } else if (section == "vertices") { MeshData::Vertices vert; - String id = parser.get_named_attribute_value("id"); + String id = p_parser.get_named_attribute_value("id"); int last_ref = 0; - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - if (parser.get_node_name() == "input") { - String semantic = parser.get_named_attribute_value("semantic"); - String source = _uri_to_id(parser.get_named_attribute_value("source")); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + if (p_parser.get_node_name() == "input") { + String semantic = p_parser.get_named_attribute_value("semantic"); + String source = _uri_to_id(p_parser.get_named_attribute_value("source")); if (semantic == "TEXCOORD") { semantic = "TEXCOORD" + itos(last_ref++); @@ -983,7 +983,7 @@ void Collada::_parse_mesh_geometry(XMLParser &parser, String p_id, String p_name COLLADA_PRINT(section + " input semantic: " + semantic + " source: " + source); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == section) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == section) { break; } } @@ -997,23 +997,23 @@ void Collada::_parse_mesh_geometry(XMLParser &parser, String p_id, String p_name } MeshData::Primitives prim; - if (parser.has_attribute("material")) { - prim.material = parser.get_named_attribute_value("material"); + if (p_parser.has_attribute("material")) { + prim.material = p_parser.get_named_attribute_value("material"); } - prim.count = parser.get_named_attribute_value("count").to_int(); + prim.count = p_parser.get_named_attribute_value("count").to_int(); prim.vertex_size = 0; int last_ref = 0; - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - if (parser.get_node_name() == "input") { - String semantic = parser.get_named_attribute_value("semantic"); - String source = _uri_to_id(parser.get_named_attribute_value("source")); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + if (p_parser.get_node_name() == "input") { + String semantic = p_parser.get_named_attribute_value("semantic"); + String source = _uri_to_id(p_parser.get_named_attribute_value("source")); if (semantic == "TEXCOORD") { semantic = "TEXCOORD" + itos(last_ref++); } - int offset = parser.get_named_attribute_value("offset").to_int(); + int offset = p_parser.get_named_attribute_value("offset").to_int(); MeshData::Primitives::SourceRef sref; sref.source = source; @@ -1023,9 +1023,9 @@ void Collada::_parse_mesh_geometry(XMLParser &parser, String p_id, String p_name COLLADA_PRINT(section + " input semantic: " + semantic + " source: " + source + " offset: " + itos(offset)); - } else if (parser.get_node_name() == "p") { //indices + } else if (p_parser.get_node_name() == "p") { //indices - Vector<float> values = _read_float_array(parser); + Vector<float> values = _read_float_array(p_parser); if (polygons) { ERR_CONTINUE(prim.vertex_size == 0); prim.polygons.push_back(values.size() / prim.vertex_size); @@ -1041,49 +1041,49 @@ void Collada::_parse_mesh_geometry(XMLParser &parser, String p_id, String p_name COLLADA_PRINT("read " + itos(values.size()) + " index values"); - } else if (parser.get_node_name() == "vcount") { // primitive + } else if (p_parser.get_node_name() == "vcount") { // primitive - Vector<float> values = _read_float_array(parser); + Vector<float> values = _read_float_array(p_parser); prim.polygons = values; COLLADA_PRINT("read " + itos(values.size()) + " polygon values"); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == section) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == section) { break; } } meshdata.primitives.push_back(prim); - } else if (parser.get_node_name() == "double_sided") { - parser.read(); + } else if (p_parser.get_node_name() == "double_sided") { + p_parser.read(); meshdata.found_double_sided = true; - meshdata.double_sided = parser.get_node_data().to_int(); + meshdata.double_sided = p_parser.get_node_data().to_int(); - } else if (parser.get_node_name() == "polygons") { + } else if (p_parser.get_node_name() == "polygons") { ERR_PRINT("Primitive type \"polygons\" not supported, re-export using \"polylist\" or \"triangles\"."); - } else if (!parser.is_empty()) { - parser.skip_section(); + } else if (!p_parser.is_empty()) { + p_parser.skip_section(); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "mesh") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "mesh") { break; } } } -void Collada::_parse_skin_controller(XMLParser &parser, String p_id) { +void Collada::_parse_skin_controller(XMLParser &p_parser, String p_id) { state.skin_controller_data_map[p_id] = SkinControllerData(); SkinControllerData &skindata = state.skin_controller_data_map[p_id]; - skindata.base = _uri_to_id(parser.get_named_attribute_value("source")); + skindata.base = _uri_to_id(p_parser.get_named_attribute_value("source")); String current_source; - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String section = parser.get_node_name(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String section = p_parser.get_node_name(); if (section == "bind_shape_matrix") { - skindata.bind_shape = _read_transform(parser); + skindata.bind_shape = _read_transform(p_parser); #ifdef COLLADA_IMPORT_SCALE_SCENE skindata.bind_shape.origin *= state.unit_scale; @@ -1091,7 +1091,7 @@ void Collada::_parse_skin_controller(XMLParser &parser, String p_id) { COLLADA_PRINT("skeleton bind shape transform: " + skindata.bind_shape); } else if (section == "source") { - String id = parser.get_named_attribute_value("id"); + String id = p_parser.get_named_attribute_value("id"); skindata.sources[id] = SkinControllerData::Source(); current_source = id; COLLADA_PRINT("source data: " + id); @@ -1099,7 +1099,7 @@ void Collada::_parse_skin_controller(XMLParser &parser, String p_id) { } else if (section == "float_array" || section == "array") { // create a new array and read it. if (skindata.sources.has(current_source)) { - skindata.sources[current_source].array = _read_float_array(parser); + skindata.sources[current_source].array = _read_float_array(p_parser); COLLADA_PRINT("section: " + current_source + " read " + itos(skindata.sources[current_source].array.size()) + " values."); } } else if (section == "Name_array" || section == "IDREF_array") { @@ -1109,7 +1109,7 @@ void Collada::_parse_skin_controller(XMLParser &parser, String p_id) { skindata.use_idrefs = true; } if (skindata.sources.has(current_source)) { - skindata.sources[current_source].sarray = _read_string_array(parser); + skindata.sources[current_source].sarray = _read_string_array(p_parser); if (section == "IDREF_array") { Vector<String> sa = skindata.sources[current_source].sarray; for (int i = 0; i < sa.size(); i++) { @@ -1124,8 +1124,8 @@ void Collada::_parse_skin_controller(XMLParser &parser, String p_id) { if (skindata.sources.has(current_source)) { int stride = 1; - if (parser.has_attribute("stride")) { - stride = parser.get_named_attribute_value("stride").to_int(); + if (p_parser.has_attribute("stride")) { + stride = p_parser.get_named_attribute_value("stride").to_int(); } skindata.sources[current_source].stride = stride; @@ -1135,17 +1135,17 @@ void Collada::_parse_skin_controller(XMLParser &parser, String p_id) { } else if (section == "joints") { SkinControllerData::Joints joint; - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - if (parser.get_node_name() == "input") { - String semantic = parser.get_named_attribute_value("semantic"); - String source = _uri_to_id(parser.get_named_attribute_value("source")); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + if (p_parser.get_node_name() == "input") { + String semantic = p_parser.get_named_attribute_value("semantic"); + String source = _uri_to_id(p_parser.get_named_attribute_value("source")); joint.sources[semantic] = source; COLLADA_PRINT(section + " input semantic: " + semantic + " source: " + source); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == section) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == section) { break; } } @@ -1155,15 +1155,15 @@ void Collada::_parse_skin_controller(XMLParser &parser, String p_id) { } else if (section == "vertex_weights") { SkinControllerData::Weights weights; - weights.count = parser.get_named_attribute_value("count").to_int(); + weights.count = p_parser.get_named_attribute_value("count").to_int(); - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - if (parser.get_node_name() == "input") { - String semantic = parser.get_named_attribute_value("semantic"); - String source = _uri_to_id(parser.get_named_attribute_value("source")); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + if (p_parser.get_node_name() == "input") { + String semantic = p_parser.get_named_attribute_value("semantic"); + String source = _uri_to_id(p_parser.get_named_attribute_value("source")); - int offset = parser.get_named_attribute_value("offset").to_int(); + int offset = p_parser.get_named_attribute_value("offset").to_int(); SkinControllerData::Weights::SourceRef sref; sref.source = source; @@ -1172,26 +1172,26 @@ void Collada::_parse_skin_controller(XMLParser &parser, String p_id) { COLLADA_PRINT(section + " input semantic: " + semantic + " source: " + source + " offset: " + itos(offset)); - } else if (parser.get_node_name() == "v") { //indices + } else if (p_parser.get_node_name() == "v") { //indices - Vector<float> values = _read_float_array(parser); + Vector<float> values = _read_float_array(p_parser); weights.indices = values; COLLADA_PRINT("read " + itos(values.size()) + " index values"); - } else if (parser.get_node_name() == "vcount") { // weightsitive + } else if (p_parser.get_node_name() == "vcount") { // weightsitive - Vector<float> values = _read_float_array(parser); + Vector<float> values = _read_float_array(p_parser); weights.sets = values; COLLADA_PRINT("read " + itos(values.size()) + " polygon values"); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == section) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == section) { break; } } skindata.weights = weights; } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "skin") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "skin") { break; } } @@ -1224,20 +1224,20 @@ void Collada::_parse_skin_controller(XMLParser &parser, String p_id) { } } -void Collada::_parse_morph_controller(XMLParser &parser, String p_id) { +void Collada::_parse_morph_controller(XMLParser &p_parser, String p_id) { state.morph_controller_data_map[p_id] = MorphControllerData(); MorphControllerData &morphdata = state.morph_controller_data_map[p_id]; - morphdata.mesh = _uri_to_id(parser.get_named_attribute_value("source")); - morphdata.mode = parser.get_named_attribute_value("method"); + morphdata.mesh = _uri_to_id(p_parser.get_named_attribute_value("source")); + morphdata.mode = p_parser.get_named_attribute_value("method"); String current_source; - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String section = parser.get_node_name(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String section = p_parser.get_node_name(); if (section == "source") { - String id = parser.get_named_attribute_value("id"); + String id = p_parser.get_named_attribute_value("id"); morphdata.sources[id] = MorphControllerData::Source(); current_source = id; COLLADA_PRINT("source data: " + id); @@ -1245,13 +1245,13 @@ void Collada::_parse_morph_controller(XMLParser &parser, String p_id) { } else if (section == "float_array" || section == "array") { // create a new array and read it. if (morphdata.sources.has(current_source)) { - morphdata.sources[current_source].array = _read_float_array(parser); + morphdata.sources[current_source].array = _read_float_array(p_parser); COLLADA_PRINT("section: " + current_source + " read " + itos(morphdata.sources[current_source].array.size()) + " values."); } } else if (section == "Name_array" || section == "IDREF_array") { // create a new array and read it. if (morphdata.sources.has(current_source)) { - morphdata.sources[current_source].sarray = _read_string_array(parser); + morphdata.sources[current_source].sarray = _read_string_array(p_parser); COLLADA_PRINT("section: " + current_source + " read " + itos(morphdata.sources[current_source].array.size()) + " values."); } } else if (section == "technique_common") { @@ -1260,8 +1260,8 @@ void Collada::_parse_morph_controller(XMLParser &parser, String p_id) { if (morphdata.sources.has(current_source)) { int stride = 1; - if (parser.has_attribute("stride")) { - stride = parser.get_named_attribute_value("stride").to_int(); + if (p_parser.has_attribute("stride")) { + stride = p_parser.get_named_attribute_value("stride").to_int(); } morphdata.sources[current_source].stride = stride; @@ -1269,22 +1269,22 @@ void Collada::_parse_morph_controller(XMLParser &parser, String p_id) { } } else if (section == "targets") { - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - if (parser.get_node_name() == "input") { - String semantic = parser.get_named_attribute_value("semantic"); - String source = _uri_to_id(parser.get_named_attribute_value("source")); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + if (p_parser.get_node_name() == "input") { + String semantic = p_parser.get_named_attribute_value("semantic"); + String source = _uri_to_id(p_parser.get_named_attribute_value("source")); morphdata.targets[semantic] = source; COLLADA_PRINT(section + " input semantic: " + semantic + " source: " + source); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == section) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == section) { break; } } } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "morph") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "morph") { break; } } @@ -1294,57 +1294,57 @@ void Collada::_parse_morph_controller(XMLParser &parser, String p_id) { } } -void Collada::_parse_controller(XMLParser &parser) { - String id = parser.get_named_attribute_value("id"); +void Collada::_parse_controller(XMLParser &p_parser) { + String id = p_parser.get_named_attribute_value("id"); - if (parser.is_empty()) { + if (p_parser.is_empty()) { return; } - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String section = parser.get_node_name(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String section = p_parser.get_node_name(); if (section == "skin") { - _parse_skin_controller(parser, id); + _parse_skin_controller(p_parser, id); } else if (section == "morph") { - _parse_morph_controller(parser, id); + _parse_morph_controller(p_parser, id); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "controller") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "controller") { break; } } } -Collada::Node *Collada::_parse_visual_instance_geometry(XMLParser &parser) { - String type = parser.get_node_name(); +Collada::Node *Collada::_parse_visual_instance_geometry(XMLParser &p_parser) { + String type = p_parser.get_node_name(); NodeGeometry *geom = memnew(NodeGeometry); geom->controller = type == "instance_controller"; - geom->source = _uri_to_id(parser.get_named_attribute_value_safe("url")); + geom->source = _uri_to_id(p_parser.get_named_attribute_value_safe("url")); - if (parser.is_empty()) { //nothing else to parse... + if (p_parser.is_empty()) { //nothing else to parse... return geom; } // try to find also many materials and skeletons! - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - if (parser.get_node_name() == "instance_material") { - String symbol = parser.get_named_attribute_value("symbol"); - String target = _uri_to_id(parser.get_named_attribute_value("target")); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + if (p_parser.get_node_name() == "instance_material") { + String symbol = p_parser.get_named_attribute_value("symbol"); + String target = _uri_to_id(p_parser.get_named_attribute_value("target")); NodeGeometry::Material mat; mat.target = target; geom->material_map[symbol] = mat; COLLADA_PRINT("uses material: '" + target + "' on primitive'" + symbol + "'"); - } else if (parser.get_node_name() == "skeleton") { - parser.read(); - String uri = _uri_to_id(parser.get_node_data()); + } else if (p_parser.get_node_name() == "skeleton") { + p_parser.read(); + String uri = _uri_to_id(p_parser.get_node_data()); if (!uri.is_empty()) { geom->skeletons.push_back(uri); } } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == type) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == type) { break; } } @@ -1368,20 +1368,20 @@ Collada::Node *Collada::_parse_visual_instance_geometry(XMLParser &parser) { return geom; } -Collada::Node *Collada::_parse_visual_instance_camera(XMLParser &parser) { +Collada::Node *Collada::_parse_visual_instance_camera(XMLParser &p_parser) { NodeCamera *cam = memnew(NodeCamera); - cam->camera = _uri_to_id(parser.get_named_attribute_value_safe("url")); + cam->camera = _uri_to_id(p_parser.get_named_attribute_value_safe("url")); if (state.up_axis == Vector3::AXIS_Z) { //collada weirdness cam->post_transform.basis.rotate(Vector3(1, 0, 0), -Math_PI * 0.5); } - if (parser.is_empty()) { //nothing else to parse... + if (p_parser.is_empty()) { //nothing else to parse... return cam; } - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "instance_camera") { + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "instance_camera") { break; } } @@ -1389,20 +1389,20 @@ Collada::Node *Collada::_parse_visual_instance_camera(XMLParser &parser) { return cam; } -Collada::Node *Collada::_parse_visual_instance_light(XMLParser &parser) { +Collada::Node *Collada::_parse_visual_instance_light(XMLParser &p_parser) { NodeLight *cam = memnew(NodeLight); - cam->light = _uri_to_id(parser.get_named_attribute_value_safe("url")); + cam->light = _uri_to_id(p_parser.get_named_attribute_value_safe("url")); if (state.up_axis == Vector3::AXIS_Z) { //collada weirdness cam->post_transform.basis.rotate(Vector3(1, 0, 0), -Math_PI * 0.5); } - if (parser.is_empty()) { //nothing else to parse... + if (p_parser.is_empty()) { //nothing else to parse... return cam; } - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "instance_light") { + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "instance_light") { break; } } @@ -1410,23 +1410,23 @@ Collada::Node *Collada::_parse_visual_instance_light(XMLParser &parser) { return cam; } -Collada::Node *Collada::_parse_visual_node_instance_data(XMLParser &parser) { - String instance_type = parser.get_node_name(); +Collada::Node *Collada::_parse_visual_node_instance_data(XMLParser &p_parser) { + String instance_type = p_parser.get_node_name(); if (instance_type == "instance_geometry" || instance_type == "instance_controller") { - return _parse_visual_instance_geometry(parser); + return _parse_visual_instance_geometry(p_parser); } else if (instance_type == "instance_camera") { - return _parse_visual_instance_camera(parser); + return _parse_visual_instance_camera(p_parser); } else if (instance_type == "instance_light") { - return _parse_visual_instance_light(parser); + return _parse_visual_instance_light(p_parser); } - if (parser.is_empty()) { //nothing else to parse... + if (p_parser.is_empty()) { //nothing else to parse... return nullptr; } - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == instance_type) { + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == instance_type) { break; } } @@ -1434,10 +1434,10 @@ Collada::Node *Collada::_parse_visual_node_instance_data(XMLParser &parser) { return nullptr; } -Collada::Node *Collada::_parse_visual_scene_node(XMLParser &parser) { +Collada::Node *Collada::_parse_visual_scene_node(XMLParser &p_parser) { String name; - String id = parser.get_named_attribute_value_safe("id"); + String id = p_parser.get_named_attribute_value_safe("id"); bool found_name = false; @@ -1455,25 +1455,25 @@ Collada::Node *Collada::_parse_visual_scene_node(XMLParser &parser) { Node *node = nullptr; - name = parser.has_attribute("name") ? parser.get_named_attribute_value_safe("name") : parser.get_named_attribute_value_safe("id"); + name = p_parser.has_attribute("name") ? p_parser.get_named_attribute_value_safe("name") : p_parser.get_named_attribute_value_safe("id"); if (name.is_empty()) { name = id; } else { found_name = true; } - if ((parser.has_attribute("type") && parser.get_named_attribute_value("type") == "JOINT") || state.idref_joints.has(name)) { + if ((p_parser.has_attribute("type") && p_parser.get_named_attribute_value("type") == "JOINT") || state.idref_joints.has(name)) { // handle a bone NodeJoint *joint = memnew(NodeJoint); - if (parser.has_attribute("sid")) { //bones may not have sid - joint->sid = parser.get_named_attribute_value("sid"); + if (p_parser.has_attribute("sid")) { //bones may not have sid + joint->sid = p_parser.get_named_attribute_value("sid"); //state.bone_map[joint->sid]=joint; } else if (state.idref_joints.has(name)) { joint->sid = name; //kind of a cheat but.. - } else if (parser.has_attribute("name")) { - joint->sid = parser.get_named_attribute_value_safe("name"); + } else if (p_parser.has_attribute("name")) { + joint->sid = p_parser.get_named_attribute_value_safe("name"); } if (!joint->sid.is_empty()) { @@ -1483,42 +1483,42 @@ Collada::Node *Collada::_parse_visual_scene_node(XMLParser &parser) { node = joint; } - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String section = parser.get_node_name(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String section = p_parser.get_node_name(); if (section == "translate") { Node::XForm xf; - if (parser.has_attribute("sid")) { - xf.id = parser.get_named_attribute_value("sid"); + if (p_parser.has_attribute("sid")) { + xf.id = p_parser.get_named_attribute_value("sid"); } xf.op = Node::XForm::OP_TRANSLATE; - Vector<float> xlt = _read_float_array(parser); + Vector<float> xlt = _read_float_array(p_parser); xf.data = xlt; xform_list.push_back(xf); } else if (section == "rotate") { Node::XForm xf; - if (parser.has_attribute("sid")) { - xf.id = parser.get_named_attribute_value("sid"); + if (p_parser.has_attribute("sid")) { + xf.id = p_parser.get_named_attribute_value("sid"); } xf.op = Node::XForm::OP_ROTATE; - Vector<float> rot = _read_float_array(parser); + Vector<float> rot = _read_float_array(p_parser); xf.data = rot; xform_list.push_back(xf); } else if (section == "scale") { Node::XForm xf; - if (parser.has_attribute("sid")) { - xf.id = parser.get_named_attribute_value("sid"); + if (p_parser.has_attribute("sid")) { + xf.id = p_parser.get_named_attribute_value("sid"); } xf.op = Node::XForm::OP_SCALE; - Vector<float> scale = _read_float_array(parser); + Vector<float> scale = _read_float_array(p_parser); xf.data = scale; @@ -1526,12 +1526,12 @@ Collada::Node *Collada::_parse_visual_scene_node(XMLParser &parser) { } else if (section == "matrix") { Node::XForm xf; - if (parser.has_attribute("sid")) { - xf.id = parser.get_named_attribute_value("sid"); + if (p_parser.has_attribute("sid")) { + xf.id = p_parser.get_named_attribute_value("sid"); } xf.op = Node::XForm::OP_MATRIX; - Vector<float> matrix = _read_float_array(parser); + Vector<float> matrix = _read_float_array(p_parser); xf.data = matrix; String mtx; @@ -1543,25 +1543,25 @@ Collada::Node *Collada::_parse_visual_scene_node(XMLParser &parser) { } else if (section == "visibility") { Node::XForm xf; - if (parser.has_attribute("sid")) { - xf.id = parser.get_named_attribute_value("sid"); + if (p_parser.has_attribute("sid")) { + xf.id = p_parser.get_named_attribute_value("sid"); } xf.op = Node::XForm::OP_VISIBILITY; - Vector<float> visible = _read_float_array(parser); + Vector<float> visible = _read_float_array(p_parser); xf.data = visible; xform_list.push_back(xf); } else if (section == "empty_draw_type") { - empty_draw_type = _read_empty_draw_type(parser); + empty_draw_type = _read_empty_draw_type(p_parser); } else if (section == "technique" || section == "extra") { } else if (section != "node") { //usually what defines the type of node if (section.begins_with("instance_")) { if (!node) { - node = _parse_visual_node_instance_data(parser); + node = _parse_visual_node_instance_data(p_parser); } else { ERR_PRINT("Multiple instance_* not supported."); @@ -1571,11 +1571,11 @@ Collada::Node *Collada::_parse_visual_scene_node(XMLParser &parser) { } else { /* Found a child node!! what to do..*/ - Node *child = _parse_visual_scene_node(parser); + Node *child = _parse_visual_scene_node(p_parser); children.push_back(child); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "node") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "node") { break; } } @@ -1608,29 +1608,29 @@ Collada::Node *Collada::_parse_visual_scene_node(XMLParser &parser) { return node; } -void Collada::_parse_visual_scene(XMLParser &parser) { - String id = parser.get_named_attribute_value("id"); +void Collada::_parse_visual_scene(XMLParser &p_parser) { + String id = p_parser.get_named_attribute_value("id"); - if (parser.is_empty()) { + if (p_parser.is_empty()) { return; } state.visual_scene_map[id] = VisualScene(); VisualScene &vscene = state.visual_scene_map[id]; - if (parser.has_attribute("name")) { - vscene.name = parser.get_named_attribute_value("name"); + if (p_parser.has_attribute("name")) { + vscene.name = p_parser.get_named_attribute_value("name"); } - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String section = parser.get_node_name(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String section = p_parser.get_node_name(); if (section == "node") { - vscene.root_nodes.push_back(_parse_visual_scene_node(parser)); + vscene.root_nodes.push_back(_parse_visual_scene_node(p_parser)); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "visual_scene") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "visual_scene") { break; } } @@ -1638,10 +1638,10 @@ void Collada::_parse_visual_scene(XMLParser &parser) { COLLADA_PRINT("Scene ID:" + id); } -void Collada::_parse_animation(XMLParser &parser) { +void Collada::_parse_animation(XMLParser &p_parser) { if (!(state.import_flags & IMPORT_FLAG_ANIMATION)) { - if (!parser.is_empty()) { - parser.skip_section(); + if (!p_parser.is_empty()) { + p_parser.skip_section(); } return; @@ -1655,8 +1655,8 @@ void Collada::_parse_animation(XMLParser &parser) { HashMap<String, Vector<String>> source_param_types; String id = ""; - if (parser.has_attribute("id")) { - id = parser.get_named_attribute_value("id"); + if (p_parser.has_attribute("id")) { + id = p_parser.get_named_attribute_value("id"); } String current_source; @@ -1664,54 +1664,54 @@ void Collada::_parse_animation(XMLParser &parser) { Vector<String> channel_sources; Vector<String> channel_targets; - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String name = parser.get_node_name(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String name = p_parser.get_node_name(); if (name == "source") { - current_source = parser.get_named_attribute_value("id"); + current_source = p_parser.get_named_attribute_value("id"); source_param_names[current_source] = Vector<String>(); source_param_types[current_source] = Vector<String>(); } else if (name == "float_array") { if (!current_source.is_empty()) { - float_sources[current_source] = _read_float_array(parser); + float_sources[current_source] = _read_float_array(p_parser); } } else if (name == "Name_array") { if (!current_source.is_empty()) { - string_sources[current_source] = _read_string_array(parser); + string_sources[current_source] = _read_string_array(p_parser); } } else if (name == "accessor") { - if (!current_source.is_empty() && parser.has_attribute("stride")) { - source_strides[current_source] = parser.get_named_attribute_value("stride").to_int(); + if (!current_source.is_empty() && p_parser.has_attribute("stride")) { + source_strides[current_source] = p_parser.get_named_attribute_value("stride").to_int(); } } else if (name == "sampler") { - current_sampler = parser.get_named_attribute_value("id"); + current_sampler = p_parser.get_named_attribute_value("id"); samplers[current_sampler] = HashMap<String, String>(); } else if (name == "param") { - if (parser.has_attribute("name")) { - source_param_names[current_source].push_back(parser.get_named_attribute_value("name")); + if (p_parser.has_attribute("name")) { + source_param_names[current_source].push_back(p_parser.get_named_attribute_value("name")); } else { source_param_names[current_source].push_back(""); } - if (parser.has_attribute("type")) { - source_param_types[current_source].push_back(parser.get_named_attribute_value("type")); + if (p_parser.has_attribute("type")) { + source_param_types[current_source].push_back(p_parser.get_named_attribute_value("type")); } else { source_param_types[current_source].push_back(""); } } else if (name == "input") { if (!current_sampler.is_empty()) { - samplers[current_sampler][parser.get_named_attribute_value("semantic")] = parser.get_named_attribute_value("source"); + samplers[current_sampler][p_parser.get_named_attribute_value("semantic")] = p_parser.get_named_attribute_value("source"); } } else if (name == "channel") { - channel_sources.push_back(parser.get_named_attribute_value("source")); - channel_targets.push_back(parser.get_named_attribute_value("target")); + channel_sources.push_back(p_parser.get_named_attribute_value("source")); + channel_targets.push_back(p_parser.get_named_attribute_value("target")); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "animation") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "animation") { break; //end of <asset> } } @@ -1845,10 +1845,10 @@ void Collada::_parse_animation(XMLParser &parser) { } } -void Collada::_parse_animation_clip(XMLParser &parser) { +void Collada::_parse_animation_clip(XMLParser &p_parser) { if (!(state.import_flags & IMPORT_FLAG_ANIMATION)) { - if (!parser.is_empty()) { - parser.skip_section(); + if (!p_parser.is_empty()) { + p_parser.skip_section(); } return; @@ -1856,27 +1856,27 @@ void Collada::_parse_animation_clip(XMLParser &parser) { AnimationClip clip; - if (parser.has_attribute("name")) { - clip.name = parser.get_named_attribute_value("name"); - } else if (parser.has_attribute("id")) { - clip.name = parser.get_named_attribute_value("id"); + if (p_parser.has_attribute("name")) { + clip.name = p_parser.get_named_attribute_value("name"); + } else if (p_parser.has_attribute("id")) { + clip.name = p_parser.get_named_attribute_value("id"); } - if (parser.has_attribute("start")) { - clip.begin = parser.get_named_attribute_value("start").to_float(); + if (p_parser.has_attribute("start")) { + clip.begin = p_parser.get_named_attribute_value("start").to_float(); } - if (parser.has_attribute("end")) { - clip.end = parser.get_named_attribute_value("end").to_float(); + if (p_parser.has_attribute("end")) { + clip.end = p_parser.get_named_attribute_value("end").to_float(); } - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String name = parser.get_node_name(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String name = p_parser.get_node_name(); if (name == "instance_animation") { - String url = _uri_to_id(parser.get_named_attribute_value("url")); + String url = _uri_to_id(p_parser.get_named_attribute_value("url")); clip.tracks.push_back(url); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "animation_clip") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "animation_clip") { break; //end of <asset> } } @@ -1884,79 +1884,79 @@ void Collada::_parse_animation_clip(XMLParser &parser) { state.animation_clips.push_back(clip); } -void Collada::_parse_scene(XMLParser &parser) { - if (parser.is_empty()) { +void Collada::_parse_scene(XMLParser &p_parser) { + if (p_parser.is_empty()) { return; } - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String name = parser.get_node_name(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String name = p_parser.get_node_name(); if (name == "instance_visual_scene") { - state.root_visual_scene = _uri_to_id(parser.get_named_attribute_value("url")); + state.root_visual_scene = _uri_to_id(p_parser.get_named_attribute_value("url")); } else if (name == "instance_physics_scene") { - state.root_physics_scene = _uri_to_id(parser.get_named_attribute_value("url")); + state.root_physics_scene = _uri_to_id(p_parser.get_named_attribute_value("url")); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "scene") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "scene") { break; //end of <asset> } } } -void Collada::_parse_library(XMLParser &parser) { - if (parser.is_empty()) { +void Collada::_parse_library(XMLParser &p_parser) { + if (p_parser.is_empty()) { return; } - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - String name = parser.get_node_name(); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + String name = p_parser.get_node_name(); COLLADA_PRINT("library name is: " + name); if (name == "image") { - _parse_image(parser); + _parse_image(p_parser); } else if (name == "material") { - _parse_material(parser); + _parse_material(p_parser); } else if (name == "effect") { - _parse_effect(parser); + _parse_effect(p_parser); } else if (name == "camera") { - _parse_camera(parser); + _parse_camera(p_parser); } else if (name == "light") { - _parse_light(parser); + _parse_light(p_parser); } else if (name == "geometry") { - String id = parser.get_named_attribute_value("id"); - String name2 = parser.get_named_attribute_value_safe("name"); - while (parser.read() == OK) { - if (parser.get_node_type() == XMLParser::NODE_ELEMENT) { - if (parser.get_node_name() == "mesh") { + String id = p_parser.get_named_attribute_value("id"); + String name2 = p_parser.get_named_attribute_value_safe("name"); + while (p_parser.read() == OK) { + if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT) { + if (p_parser.get_node_name() == "mesh") { state.mesh_name_map[id] = (!name2.is_empty()) ? name2 : id; - _parse_mesh_geometry(parser, id, name2); - } else if (parser.get_node_name() == "spline") { + _parse_mesh_geometry(p_parser, id, name2); + } else if (p_parser.get_node_name() == "spline") { state.mesh_name_map[id] = (!name2.is_empty()) ? name2 : id; - _parse_curve_geometry(parser, id, name2); - } else if (!parser.is_empty()) { - parser.skip_section(); + _parse_curve_geometry(p_parser, id, name2); + } else if (!p_parser.is_empty()) { + p_parser.skip_section(); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name() == "geometry") { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name() == "geometry") { break; } } } else if (name == "controller") { - _parse_controller(parser); + _parse_controller(p_parser); } else if (name == "animation") { - _parse_animation(parser); + _parse_animation(p_parser); } else if (name == "animation_clip") { - _parse_animation_clip(parser); + _parse_animation_clip(p_parser); } else if (name == "visual_scene") { COLLADA_PRINT("visual scene"); - _parse_visual_scene(parser); - } else if (!parser.is_empty()) { - parser.skip_section(); + _parse_visual_scene(p_parser); + } else if (!p_parser.is_empty()) { + p_parser.skip_section(); } - } else if (parser.get_node_type() == XMLParser::NODE_ELEMENT_END && parser.get_node_name().begins_with("library_")) { + } else if (p_parser.get_node_type() == XMLParser::NODE_ELEMENT_END && p_parser.get_node_name().begins_with("library_")) { break; //end of <asset> } } diff --git a/editor/import/collada.h b/editor/import/collada.h index 12b32f982d..7877b1e86d 100644 --- a/editor/import/collada.h +++ b/editor/import/collada.h @@ -69,7 +69,7 @@ public: bool double_sided = true; bool unshaded = false; - String get_texture_path(const String &p_source, Collada &state) const; + String get_texture_path(const String &p_source, Collada &p_state) const; Effect() { diffuse.color = Color(1, 1, 1, 1); @@ -266,7 +266,7 @@ public: } } - void fix_unit_scale(const Collada &state); + void fix_unit_scale(const Collada &p_state); bool operator<(const Vertex &p_vert) const { if (uid == p_vert.uid) { @@ -348,7 +348,7 @@ public: Node *parent = nullptr; - Transform3D compute_transform(const Collada &state) const; + Transform3D compute_transform(const Collada &p_state) const; Transform3D get_global_transform() const; Transform3D get_transform() const; @@ -526,39 +526,39 @@ public: private: // private stuff HashMap<String, int> channel_map; - void _parse_asset(XMLParser &parser); - void _parse_image(XMLParser &parser); - void _parse_material(XMLParser &parser); - void _parse_effect_material(XMLParser &parser, Effect &effect, String &id); - void _parse_effect(XMLParser &parser); - void _parse_camera(XMLParser &parser); - void _parse_light(XMLParser &parser); - void _parse_animation_clip(XMLParser &parser); - - void _parse_mesh_geometry(XMLParser &parser, String p_id, String p_name); - void _parse_curve_geometry(XMLParser &parser, String p_id, String p_name); - - void _parse_skin_controller(XMLParser &parser, String p_id); - void _parse_morph_controller(XMLParser &parser, String p_id); - void _parse_controller(XMLParser &parser); - - Node *_parse_visual_instance_geometry(XMLParser &parser); - Node *_parse_visual_instance_camera(XMLParser &parser); - Node *_parse_visual_instance_light(XMLParser &parser); - - Node *_parse_visual_node_instance_data(XMLParser &parser); - Node *_parse_visual_scene_node(XMLParser &parser); - void _parse_visual_scene(XMLParser &parser); - - void _parse_animation(XMLParser &parser); - void _parse_scene(XMLParser &parser); - void _parse_library(XMLParser &parser); - - Variant _parse_param(XMLParser &parser); - Vector<float> _read_float_array(XMLParser &parser); - Vector<String> _read_string_array(XMLParser &parser); - Transform3D _read_transform(XMLParser &parser); - String _read_empty_draw_type(XMLParser &parser); + void _parse_asset(XMLParser &p_parser); + void _parse_image(XMLParser &p_parser); + void _parse_material(XMLParser &p_parser); + void _parse_effect_material(XMLParser &p_parser, Effect &p_effect, String &p_id); + void _parse_effect(XMLParser &p_parser); + void _parse_camera(XMLParser &p_parser); + void _parse_light(XMLParser &p_parser); + void _parse_animation_clip(XMLParser &p_parser); + + void _parse_mesh_geometry(XMLParser &p_parser, String p_id, String p_name); + void _parse_curve_geometry(XMLParser &p_parser, String p_id, String p_name); + + void _parse_skin_controller(XMLParser &p_parser, String p_id); + void _parse_morph_controller(XMLParser &p_parser, String p_id); + void _parse_controller(XMLParser &p_parser); + + Node *_parse_visual_instance_geometry(XMLParser &p_parser); + Node *_parse_visual_instance_camera(XMLParser &p_parser); + Node *_parse_visual_instance_light(XMLParser &p_parser); + + Node *_parse_visual_node_instance_data(XMLParser &p_parser); + Node *_parse_visual_scene_node(XMLParser &p_parser); + void _parse_visual_scene(XMLParser &p_parser); + + void _parse_animation(XMLParser &p_parser); + void _parse_scene(XMLParser &p_parser); + void _parse_library(XMLParser &p_parser); + + Variant _parse_param(XMLParser &p_parser); + Vector<float> _read_float_array(XMLParser &p_parser); + Vector<String> _read_string_array(XMLParser &p_parser); + Transform3D _read_transform(XMLParser &p_parser); + String _read_empty_draw_type(XMLParser &p_parser); void _joint_set_owner(Collada::Node *p_node, NodeSkeleton *p_owner); void _create_skeletons(Collada::Node **p_node, NodeSkeleton *p_skeleton = nullptr); diff --git a/editor/import/post_import_plugin_skeleton_rest_fixer.cpp b/editor/import/post_import_plugin_skeleton_rest_fixer.cpp index e105135c11..6214a2b70d 100644 --- a/editor/import/post_import_plugin_skeleton_rest_fixer.cpp +++ b/editor/import/post_import_plugin_skeleton_rest_fixer.cpp @@ -669,7 +669,7 @@ void PostImportPluginSkeletonRestFixer::internal_process(InternalImportCategory StringName bn = skin->get_bind_name(i); int bone_idx = src_skeleton->find_bone(bn); if (bone_idx >= 0) { - Transform3D new_rest = silhouette_diff[i] * src_skeleton->get_bone_global_rest(bone_idx); + Transform3D new_rest = silhouette_diff[bone_idx] * src_skeleton->get_bone_global_rest(bone_idx); skin->set_bind_pose(i, new_rest.inverse() * ibm_diff[bone_idx]); } } diff --git a/editor/plugins/collision_shape_2d_editor_plugin.cpp b/editor/plugins/collision_shape_2d_editor_plugin.cpp index 0aef364c2d..204d783df1 100644 --- a/editor/plugins/collision_shape_2d_editor_plugin.cpp +++ b/editor/plugins/collision_shape_2d_editor_plugin.cpp @@ -436,7 +436,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla switch (shape_type) { case CAPSULE_SHAPE: { - Ref<CapsuleShape2D> shape = node->get_shape(); + Ref<CapsuleShape2D> shape = current_shape; handles.resize(2); float radius = shape->get_radius(); @@ -451,7 +451,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla } break; case CIRCLE_SHAPE: { - Ref<CircleShape2D> shape = node->get_shape(); + Ref<CircleShape2D> shape = current_shape; handles.resize(1); handles.write[0] = Point2(shape->get_radius(), 0); @@ -467,7 +467,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla } break; case WORLD_BOUNDARY_SHAPE: { - Ref<WorldBoundaryShape2D> shape = node->get_shape(); + Ref<WorldBoundaryShape2D> shape = current_shape; handles.resize(2); handles.write[0] = shape->get_normal() * shape->get_distance(); @@ -479,7 +479,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla } break; case SEPARATION_RAY_SHAPE: { - Ref<SeparationRayShape2D> shape = node->get_shape(); + Ref<SeparationRayShape2D> shape = current_shape; handles.resize(1); handles.write[0] = Point2(0, shape->get_length()); @@ -489,7 +489,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla } break; case RECTANGLE_SHAPE: { - Ref<RectangleShape2D> shape = node->get_shape(); + Ref<RectangleShape2D> shape = current_shape; handles.resize(8); Vector2 ext = shape->get_size() / 2; @@ -501,7 +501,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla } break; case SEGMENT_SHAPE: { - Ref<SegmentShape2D> shape = node->get_shape(); + Ref<SegmentShape2D> shape = current_shape; handles.resize(2); handles.write[0] = shape->get_a(); diff --git a/editor/plugins/material_editor_plugin.cpp b/editor/plugins/material_editor_plugin.cpp index 36c143ca8d..32d237e411 100644 --- a/editor/plugins/material_editor_plugin.cpp +++ b/editor/plugins/material_editor_plugin.cpp @@ -157,9 +157,19 @@ void MaterialEditor::_button_pressed(Node *p_button) { MaterialEditor::MaterialEditor() { // canvas item + vc_2d = memnew(SubViewportContainer); + vc_2d->set_stretch(true); + add_child(vc_2d); + vc_2d->set_anchors_and_offsets_preset(PRESET_FULL_RECT); + + viewport_2d = memnew(SubViewport); + vc_2d->add_child(viewport_2d); + viewport_2d->set_disable_input(true); + viewport_2d->set_transparent_background(true); + layout_2d = memnew(HBoxContainer); layout_2d->set_alignment(BoxContainer::ALIGNMENT_CENTER); - add_child(layout_2d); + viewport_2d->add_child(layout_2d); layout_2d->set_anchors_and_offsets_preset(PRESET_FULL_RECT); rect_instance = memnew(ColorRect); diff --git a/editor/plugins/material_editor_plugin.h b/editor/plugins/material_editor_plugin.h index 63ee053b1d..7a610d860c 100644 --- a/editor/plugins/material_editor_plugin.h +++ b/editor/plugins/material_editor_plugin.h @@ -50,6 +50,8 @@ class MaterialEditor : public Control { Vector2 rot; + SubViewportContainer *vc_2d = nullptr; + SubViewport *viewport_2d = nullptr; HBoxContainer *layout_2d = nullptr; ColorRect *rect_instance = nullptr; diff --git a/editor/plugins/node_3d_editor_plugin.cpp b/editor/plugins/node_3d_editor_plugin.cpp index e110e52454..d3e0c7e64c 100644 --- a/editor/plugins/node_3d_editor_plugin.cpp +++ b/editor/plugins/node_3d_editor_plugin.cpp @@ -8340,8 +8340,6 @@ Node3DEditor::Node3DEditor() { snap_scale->set_select_all_on_focus(true); snap_dialog_vbc->add_margin_child(TTR("Scale Snap (%):"), snap_scale); - _snap_update(); - /* SETTINGS DIALOG */ settings_dialog = memnew(ConfirmationDialog); @@ -8545,9 +8543,11 @@ void fragment() { sun_color->get_popup()->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker).bind(sun_color->get_picker())); sun_energy = memnew(EditorSpinSlider); + sun_energy->set_max(64.0); + sun_energy->set_min(0); + sun_energy->set_step(0.05); sun_vb->add_margin_child(TTR("Sun Energy"), sun_energy); sun_energy->connect("value_changed", callable_mp(this, &Node3DEditor::_preview_settings_changed).unbind(1)); - sun_energy->set_max(64.0); sun_max_distance = memnew(EditorSpinSlider); sun_vb->add_margin_child(TTR("Shadow Max Distance"), sun_max_distance); @@ -8596,8 +8596,10 @@ void fragment() { environ_ground_color->get_popup()->connect("about_to_popup", callable_mp(EditorNode::get_singleton(), &EditorNode::setup_color_picker).bind(environ_ground_color->get_picker())); environ_vb->add_margin_child(TTR("Ground Color"), environ_ground_color); environ_energy = memnew(EditorSpinSlider); - environ_energy->connect("value_changed", callable_mp(this, &Node3DEditor::_preview_settings_changed).unbind(1)); environ_energy->set_max(8.0); + environ_energy->set_min(0); + environ_energy->set_step(0.05); + environ_energy->connect("value_changed", callable_mp(this, &Node3DEditor::_preview_settings_changed).unbind(1)); environ_vb->add_margin_child(TTR("Sky Energy"), environ_energy); HBoxContainer *fx_vb = memnew(HBoxContainer); fx_vb->set_h_size_flags(SIZE_EXPAND_FILL); @@ -8657,7 +8659,7 @@ void fragment() { _load_default_preview_settings(); _preview_settings_changed(); } - clear(); // Make sure values are initialized. + clear(); // Make sure values are initialized. Will call _snap_update() for us. } Node3DEditor::~Node3DEditor() { memdelete(preview_node); diff --git a/editor/plugins/node_3d_editor_plugin.h b/editor/plugins/node_3d_editor_plugin.h index c4193f0420..2e898ff326 100644 --- a/editor/plugins/node_3d_editor_plugin.h +++ b/editor/plugins/node_3d_editor_plugin.h @@ -402,8 +402,8 @@ private: Camera3D *previewing = nullptr; Camera3D *preview = nullptr; - bool previewing_camera; - bool previewing_cinema; + bool previewing_camera = false; + bool previewing_cinema = false; bool _is_node_locked(const Node *p_node); void _preview_exited_scene(); void _toggle_camera_preview(bool); @@ -580,8 +580,8 @@ private: bool origin_enabled = false; RID grid[3]; RID grid_instance[3]; - bool grid_visible[3]; //currently visible - bool grid_enable[3]; //should be always visible if true + bool grid_visible[3] = { false, false, false }; //currently visible + bool grid_enable[3] = { false, false, false }; //should be always visible if true bool grid_enabled = false; bool grid_init_draw = false; Camera3D::ProjectionType grid_camera_last_update_perspective = Camera3D::PROJECTION_PERSPECTIVE; diff --git a/editor/plugins/physical_bone_3d_editor_plugin.cpp b/editor/plugins/physical_bone_3d_editor_plugin.cpp index b716cee3ff..a8d3ab948f 100644 --- a/editor/plugins/physical_bone_3d_editor_plugin.cpp +++ b/editor/plugins/physical_bone_3d_editor_plugin.cpp @@ -96,8 +96,9 @@ void PhysicalBone3DEditorPlugin::make_visible(bool p_visible) { } void PhysicalBone3DEditorPlugin::edit(Object *p_node) { - selected = static_cast<PhysicalBone3D *>(p_node); // Trust it - ERR_FAIL_COND(!selected); - - physical_bone_editor.set_selected(selected); + PhysicalBone3D *bone = Object::cast_to<PhysicalBone3D>(p_node); + if (bone) { + selected = bone; + physical_bone_editor.set_selected(selected); + } } diff --git a/editor/plugins/script_editor_plugin.cpp b/editor/plugins/script_editor_plugin.cpp index 46218869b3..d0d4c87c1c 100644 --- a/editor/plugins/script_editor_plugin.cpp +++ b/editor/plugins/script_editor_plugin.cpp @@ -1643,6 +1643,7 @@ void ScriptEditor::_notification(int p_what) { get_tree()->connect("tree_changed", callable_mp(this, &ScriptEditor::_tree_changed)); InspectorDock::get_singleton()->connect("request_help", callable_mp(this, &ScriptEditor::_help_class_open)); EditorNode::get_singleton()->connect("request_help_search", callable_mp(this, &ScriptEditor::_help_search)); + EditorNode::get_singleton()->connect("scene_closed", callable_mp(this, &ScriptEditor::_close_builtin_scripts_from_scene)); } break; case NOTIFICATION_EXIT_TREE: { @@ -1677,7 +1678,7 @@ bool ScriptEditor::can_take_away_focus() const { } } -void ScriptEditor::close_builtin_scripts_from_scene(const String &p_scene) { +void ScriptEditor::_close_builtin_scripts_from_scene(const String &p_scene) { for (int i = 0; i < tab_container->get_tab_count(); i++) { ScriptEditorBase *se = Object::cast_to<ScriptEditorBase>(tab_container->get_tab_control(i)); @@ -1687,7 +1688,7 @@ void ScriptEditor::close_builtin_scripts_from_scene(const String &p_scene) { continue; } - if (scr->is_built_in() && scr->get_path().begins_with(p_scene)) { //is an internal script and belongs to scene being closed + if (scr->is_built_in() && scr->get_path().begins_with(p_scene)) { // Is an internal script and belongs to scene being closed. _close_tab(i, false); i--; } diff --git a/editor/plugins/script_editor_plugin.h b/editor/plugins/script_editor_plugin.h index 7d2f5ad22a..10dfe0f199 100644 --- a/editor/plugins/script_editor_plugin.h +++ b/editor/plugins/script_editor_plugin.h @@ -482,6 +482,7 @@ class ScriptEditor : public PanelContainer { void _on_find_in_files_modified_files(PackedStringArray paths); static void _open_script_request(const String &p_path); + void _close_builtin_scripts_from_scene(const String &p_scene); static ScriptEditor *script_editor; @@ -523,8 +524,6 @@ public: void notify_script_close(const Ref<Script> &p_script); void notify_script_changed(const Ref<Script> &p_script); - void close_builtin_scripts_from_scene(const String &p_scene); - void goto_help(const String &p_desc) { _help_class_goto(p_desc); } void update_doc(const String &p_name); void clear_docs_from_script(const Ref<Script> &p_script); diff --git a/editor/plugins/script_text_editor.cpp b/editor/plugins/script_text_editor.cpp index c1a5283662..7ff3d3e634 100644 --- a/editor/plugins/script_text_editor.cpp +++ b/editor/plugins/script_text_editor.cpp @@ -1800,20 +1800,26 @@ void ScriptTextEditor::_text_edit_gui_input(const Ref<InputEvent> &ev) { int col = pos.x; tx->set_move_caret_on_right_click_enabled(EDITOR_GET("text_editor/behavior/navigation/move_caret_on_right_click")); + int caret_clicked = -1; if (tx->is_move_caret_on_right_click_enabled()) { - tx->remove_secondary_carets(); if (tx->has_selection()) { - int from_line = tx->get_selection_from_line(); - int to_line = tx->get_selection_to_line(); - int from_column = tx->get_selection_from_column(); - int to_column = tx->get_selection_to_column(); - - if (row < from_line || row > to_line || (row == from_line && col < from_column) || (row == to_line && col > to_column)) { - // Right click is outside the selected text - tx->deselect(); + for (int i = 0; i < tx->get_caret_count(); i++) { + int from_line = tx->get_selection_from_line(i); + int to_line = tx->get_selection_to_line(i); + int from_column = tx->get_selection_from_column(i); + int to_column = tx->get_selection_to_column(i); + + if (row >= from_line && row <= to_line && (row != from_line || col >= from_column) && (row != to_line || col <= to_column)) { + // Right click in one of the selected text + caret_clicked = i; + break; + } } } - if (!tx->has_selection()) { + if (caret_clicked < 0) { + tx->deselect(); + tx->remove_secondary_carets(); + caret_clicked = 0; tx->set_caret_line(row, false, false); tx->set_caret_column(col); } @@ -1821,10 +1827,10 @@ void ScriptTextEditor::_text_edit_gui_input(const Ref<InputEvent> &ev) { String word_at_pos = tx->get_word_at_pos(local_pos); if (word_at_pos.is_empty()) { - word_at_pos = tx->get_word_under_caret(0); + word_at_pos = tx->get_word_under_caret(caret_clicked); } if (word_at_pos.is_empty()) { - word_at_pos = tx->get_selected_text(0); + word_at_pos = tx->get_selected_text(caret_clicked); } bool has_color = (word_at_pos == "Color"); diff --git a/editor/plugins/shader_editor_plugin.cpp b/editor/plugins/shader_editor_plugin.cpp index 7861c8d354..6bc0f1580d 100644 --- a/editor/plugins/shader_editor_plugin.cpp +++ b/editor/plugins/shader_editor_plugin.cpp @@ -236,6 +236,26 @@ void ShaderEditorPlugin::_close_shader(int p_index) { EditorUndoRedoManager::get_singleton()->clear_history(); // To prevent undo on deleted graphs. } +void ShaderEditorPlugin::_close_builtin_shaders_from_scene(const String &p_scene) { + for (uint32_t i = 0; i < edited_shaders.size();) { + Ref<Shader> &shader = edited_shaders[i].shader; + if (shader.is_valid()) { + if (shader->is_built_in() && shader->get_path().begins_with(p_scene)) { + _close_shader(i); + continue; + } + } + Ref<ShaderInclude> &include = edited_shaders[i].shader_inc; + if (include.is_valid()) { + if (include->is_built_in() && include->get_path().begins_with(p_scene)) { + _close_shader(i); + continue; + } + } + i++; + } +} + void ShaderEditorPlugin::_resource_saved(Object *obj) { // May have been renamed on save. for (EditedShader &edited_shader : edited_shaders) { @@ -422,6 +442,14 @@ void ShaderEditorPlugin::drop_data_fw(const Point2 &p_point, const Variant &p_da } } +void ShaderEditorPlugin::_notification(int p_what) { + switch (p_what) { + case NOTIFICATION_READY: { + EditorNode::get_singleton()->connect("scene_closed", callable_mp(this, &ShaderEditorPlugin::_close_builtin_shaders_from_scene)); + } break; + } +} + ShaderEditorPlugin::ShaderEditorPlugin() { main_split = memnew(HSplitContainer); diff --git a/editor/plugins/shader_editor_plugin.h b/editor/plugins/shader_editor_plugin.h index 408d08ade0..299d5975d2 100644 --- a/editor/plugins/shader_editor_plugin.h +++ b/editor/plugins/shader_editor_plugin.h @@ -82,6 +82,7 @@ class ShaderEditorPlugin : public EditorPlugin { void _menu_item_pressed(int p_index); void _resource_saved(Object *obj); void _close_shader(int p_index); + void _close_builtin_shaders_from_scene(const String &p_scene); void _shader_created(Ref<Shader> p_shader); void _shader_include_created(Ref<ShaderInclude> p_shader_inc); @@ -92,6 +93,9 @@ class ShaderEditorPlugin : public EditorPlugin { bool can_drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) const; void drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from); +protected: + void _notification(int p_what); + public: virtual String get_name() const override { return "Shader"; } virtual void edit(Object *p_object) override; diff --git a/editor/plugins/skeleton_3d_editor_plugin.cpp b/editor/plugins/skeleton_3d_editor_plugin.cpp index 120cfbdefb..285d2e77b2 100644 --- a/editor/plugins/skeleton_3d_editor_plugin.cpp +++ b/editor/plugins/skeleton_3d_editor_plugin.cpp @@ -831,8 +831,8 @@ void Skeleton3DEditor::create_editors() { void Skeleton3DEditor::_notification(int p_what) { switch (p_what) { case NOTIFICATION_ENTER_TREE: { + create_editors(); update_joint_tree(); - update_editors(); joint_tree->connect("item_selected", callable_mp(this, &Skeleton3DEditor::_joint_tree_selection_changed)); joint_tree->connect("item_mouse_selected", callable_mp(this, &Skeleton3DEditor::_joint_tree_rmb_select)); @@ -945,8 +945,6 @@ void fragment() { handles_mesh_instance->set_cast_shadows_setting(GeometryInstance3D::SHADOW_CASTING_SETTING_OFF); handles_mesh.instantiate(); handles_mesh_instance->set_mesh(handles_mesh); - - create_editors(); } void Skeleton3DEditor::update_bone_original() { diff --git a/editor/plugins/tiles/tile_map_editor.cpp b/editor/plugins/tiles/tile_map_editor.cpp index 55b5abf983..0a8ccdba1a 100644 --- a/editor/plugins/tiles/tile_map_editor.cpp +++ b/editor/plugins/tiles/tile_map_editor.cpp @@ -938,6 +938,20 @@ void TileMapEditorTilesPlugin::forward_canvas_draw_over_viewport(Control *p_over } } } + + Ref<Font> font = p_overlay->get_theme_font(SNAME("font"), SNAME("Label")); + int font_size = p_overlay->get_theme_font_size(SNAME("font_size"), SNAME("Label")); + Point2 msgpos = Point2(20 * EDSCALE, p_overlay->get_size().y - 20 * EDSCALE); + + String text = tile_map->local_to_map(tile_map->get_local_mouse_position()); + if (drag_type == DRAG_TYPE_RECT) { + Vector2i size = tile_map->local_to_map(tile_map->get_local_mouse_position()) - tile_map->local_to_map(drag_start_mouse_pos); + text += vformat(" %s (%dx%d)", TTR("Drawing Rect:"), ABS(size.x) + 1, ABS(size.y) + 1); + } + + p_overlay->draw_string(font, msgpos + Point2(1, 1), text, HORIZONTAL_ALIGNMENT_LEFT, -1, font_size, Color(0, 0, 0, 0.8)); + p_overlay->draw_string(font, msgpos + Point2(-1, -1), text, HORIZONTAL_ALIGNMENT_LEFT, -1, font_size, Color(0, 0, 0, 0.8)); + p_overlay->draw_string(font, msgpos, text, HORIZONTAL_ALIGNMENT_LEFT, -1, font_size, Color(1, 1, 1, 1)); } } diff --git a/editor/scene_tree_dock.cpp b/editor/scene_tree_dock.cpp index d8f1d92e44..f1e1136c83 100644 --- a/editor/scene_tree_dock.cpp +++ b/editor/scene_tree_dock.cpp @@ -275,6 +275,8 @@ void SceneTreeDock::_replace_with_branch_scene(const String &p_file, Node *base) return; } + instantiated_scene->set_unique_name_in_owner(base->is_unique_name_in_owner()); + EditorUndoRedoManager *undo_redo = EditorUndoRedoManager::get_singleton(); undo_redo->create_action(TTR("Replace with Branch Scene")); diff --git a/editor/translations/editor/ar.po b/editor/translations/editor/ar.po index 160fea6bfb..afb4360975 100644 --- a/editor/translations/editor/ar.po +++ b/editor/translations/editor/ar.po @@ -78,12 +78,13 @@ # Hamed Mohammed Almuslhi <wbk7777@hotmail.com>, 2023. # KhalilBenGaied <grozz1@yahoo.com>, 2023. # بسام العوفي <co-able@hotmail.com>, 2023. +# Abdulkarim <abwkhaldalhwsawy@gmail.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-15 13:04+0000\n" +"PO-Revision-Date: 2023-05-11 05:49+0000\n" "Last-Translator: بسام العوفي <co-able@hotmail.com>\n" "Language-Team: Arabic <https://hosted.weblate.org/projects/godot-engine/" "godot/ar/>\n" @@ -93,7 +94,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " "&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n" -"X-Generator: Weblate 4.17-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Unset" msgstr "غير محدد" @@ -416,7 +417,7 @@ msgid "Select Word Under Caret" msgstr "حدد كلمة تحت علامة الإقحام" msgid "Add Selection for Next Occurrence" -msgstr "أضف التحديد للتكرار التالي" +msgstr "أضف اختيار للتكرار التالي" msgid "Clear Carets and Selection" msgstr "مسح التحديد و علامات الإقحام" @@ -740,6 +741,12 @@ msgstr "النوع:" msgid "(Invalid, expected type: %s)" msgstr "(غير صحيح، النوع المُتوقع: %s)" +msgid "Easing:" +msgstr "التسهيل:" + +msgid "In-Handle:" +msgstr "حدد المعامل:" + msgid "Handle mode: Free\n" msgstr "وضع المقبض: حر\n" @@ -758,6 +765,12 @@ msgstr "تدفق:" msgid "Start (s):" msgstr "البداية (ثواني):" +msgid "End (s):" +msgstr "النهاية (ثواني):" + +msgid "Animation Clip:" +msgstr "مقطع التحريك:" + msgid "Toggle Track Enabled" msgstr "ترجيح المسار المُفعل" @@ -782,6 +795,9 @@ msgstr "خطي" msgid "Cubic" msgstr "مكعبي" +msgid "Linear Angle" +msgstr "الزاوية الخطية" + msgid "Cubic Angle" msgstr "زاوية مكعبة" @@ -812,6 +828,9 @@ msgstr "تغيير وضع التفسير (Interpolation) للرسم المتحر msgid "Change Animation Loop Mode" msgstr "تغيير طريقة تكرار عرض التحريك" +msgid "Change Animation Use Blend" +msgstr "تغيير التحريك باستعمال الدمج" + msgid "" "Compressed tracks can't be edited or removed. Re-import the animation with " "compression disabled in order to edit." @@ -828,8 +847,11 @@ msgstr "أنشئ %d مسارات جديدة و مفاتيح الإدخال؟" msgid "Create" msgstr "أنشئ" +msgid "Animation Insert Key" +msgstr "أضف مفتاح تحريك" + msgid "node '%s'" -msgstr "الوحدة '%s'" +msgstr "العقدة '%s'" msgid "animation" msgstr "رسم متحرك" @@ -873,6 +895,18 @@ msgstr "إضافة مسار لمنحنى بيزر" msgid "Track path is invalid, so can't add a key." msgstr "مسار المقطع غير صالح, إذن لا يمكن إضافة مفتاح." +msgid "Track is not of type Node3D, can't insert key" +msgstr "الأثر ليس عقدة ثلاثية الأبعاد, لا يمكن إضافة مفتاح." + +msgid "Add Position Key" +msgstr "إضافة مفتاح الموقع" + +msgid "Add Rotation Key" +msgstr "إضافة مفتاح زاوية الدوران" + +msgid "Add Scale Key" +msgstr "إضافة مفتاح الحجم" + msgid "Add Track Key" msgstr "أضفْ مفتاح المقطع" @@ -885,9 +919,15 @@ msgstr "أضْف مفتاح لمقطع الدالة (Method Track)" msgid "Method not found in object:" msgstr "دالة لم توجد في الكائن:" +msgid "Animation Move Keys" +msgstr "مفاتيح التحريك" + msgid "Position" msgstr "موقع" +msgid "Rotation" +msgstr "التدوير" + msgid "Scale" msgstr "المقياس" @@ -909,6 +949,9 @@ msgstr "الحافظة فارغة!" msgid "Paste Tracks" msgstr "لصق المقاطع" +msgid "Animation Scale Keys" +msgstr "مفاتيح حجم التحريك" + msgid "Make Easing Keys" msgstr "جعل مفاتيح التيسير" @@ -965,7 +1008,7 @@ msgid "Duplicate Transposed" msgstr "نقل مكرر" msgid "Delete Selection" -msgstr "إحدف المحدد (المجموعة المختارة)" +msgstr "احذف المختار" msgid "Go to Next Step" msgstr "إذهب إلى الخطوة التالية" @@ -976,6 +1019,9 @@ msgstr "إذهب إلى الخطوة السابقة" msgid "Apply Reset" msgstr "إعادة تعيين" +msgid "Pick a node to animate:" +msgstr "اخترْ غُقدة لتحريكها:" + msgid "Use Bezier Curves" msgstr "إستعمل منحنيات بيزر" @@ -1076,7 +1122,7 @@ msgid "" "Target method not found. Specify a valid method or attach a script to the " "target node." msgstr "" -"لم يتم العثور على الدالة المستهدفة. حدّد دالة سليمة أو أرفق نص برمجي للعقدة " +"الدالة المستهدفة غير موجودة. حدّد دالة سليمة أو ألحق نصا برمجيا للعقدة " "المستهدفة." msgid "Connect to Node:" @@ -1246,10 +1292,10 @@ msgid "ms" msgstr "ms" msgid "Monitors" -msgstr "المراقبون Monitors" +msgstr "المراقبة" msgid "Monitor" -msgstr "المراقب Monitor" +msgstr "المراقب" msgid "Value" msgstr "قيمة" @@ -1270,10 +1316,10 @@ msgid "Measure:" msgstr "قياس:" msgid "Frame Time (ms)" -msgstr "وقت الإطار (مللي ثانية)" +msgstr "وقت الإطار (جزء ثانية)" msgid "Average Time (ms)" -msgstr "متوسط الوقت (مللي ثانية)" +msgstr "متوسط الوقت (جزء ثانية)" msgid "Frame %" msgstr "نسبة الإطار %" @@ -1360,7 +1406,7 @@ msgid "Break" msgstr "توقف" msgid "Continue" -msgstr "يكمل" +msgstr "إكمال" msgid "Stack Frames" msgstr "حزم الإطارات Stack Frames" @@ -1377,6 +1423,9 @@ msgstr "طوي الكل" msgid "Profiler" msgstr "المحلل" +msgid "Visual Profiler" +msgstr "المُحلل البصري" + msgid "List of Video Memory Usage by Resource:" msgstr "قائمة باستخدام ذاكرة الفيديو لكل من الموارد:" @@ -1500,7 +1549,7 @@ msgid "Load failed due to missing dependencies:" msgstr "فشل في تحميل المشهد بسبب وجود تبعيات مفقودة يعتمد المشهد عليها:" msgid "Open Anyway" -msgstr "إفتح علي أية حال" +msgstr "افتح على أية حال" msgid "Which action should be taken?" msgstr "ماذا الأجراء الذي يجب أن يُتخذ؟" @@ -1667,7 +1716,7 @@ msgid "Delete Bus Effect" msgstr "مسح تأثير مسار الصوت" msgid "Drag & drop to rearrange." -msgstr "إسحب وأسقط لإعادة الترتيب." +msgstr "اسحبْ وأسقط لإعادة الترتيب." msgid "Solo" msgstr "فردي" @@ -1787,7 +1836,7 @@ msgid "Enable" msgstr "تفعيل" msgid "Rearrange Autoloads" -msgstr "اعادة ترتيب التحميلات التلقائية" +msgstr "إعادة ترتيب التحميلات التلقائية" msgid "%s is an invalid path. File does not exist." msgstr "%s مسار غير صالح. الملف غير موجود." @@ -1802,7 +1851,7 @@ msgid "Set path or press \"%s\" to create a script." msgstr "حدد المسار أو اضغط على \"s%\" لإنشاء برنامج نصي." msgid "Node Name:" -msgstr "إسم العقدة:" +msgstr "اسم العقدة:" msgid "Global Variable" msgstr "مُتغيّر عام (Global Variable)" @@ -1925,7 +1974,7 @@ msgid "Configure Engine Build Profile:" msgstr "عدّل مُرتسم بناء المحرك:" msgid "Please Confirm:" -msgstr "أكد من فضلك:" +msgstr "أكّد من فضلك:" msgid "Engine Build Profile" msgstr "مُرتسم بناء المحرك" @@ -2009,7 +2058,7 @@ msgid "Provides built-in access to the Asset Library." msgstr "يؤمن وصول لمكتبة الملحقات من داخل المحرر." msgid "Allows editing the node hierarchy in the Scene dock." -msgstr "يسمح بتحرير تراتبية العقد عن طريق رصيف المشهد." +msgstr "يسمح بتحرير رُتَب العقد في رصيف المشهد." msgid "" "Allows to work with signals and groups of the node selected in the Scene " @@ -2057,7 +2106,7 @@ msgid "Class Options:" msgstr "إعدادات الصف (Class):" msgid "Enable Contextual Editor" -msgstr "مكّن المحرر السياقي Contextual" +msgstr "مكّن المحرر السياقي" msgid "Class Properties:" msgstr "خصائص الفئة (Class):" @@ -2165,10 +2214,10 @@ msgid "Open File(s)" msgstr "إفتح ملف(ات)" msgid "Open a Directory" -msgstr "إفتح وجهة" +msgstr "افتح مجلدا" msgid "Open a File or Directory" -msgstr "إفتح ملف أو وجهة" +msgstr "افتح ملفا أو مجلدا" msgid "Save a File" msgstr "حفظ ملف" @@ -2228,7 +2277,7 @@ msgid "View items as a list." msgstr "أظهر العناصر كقائمة." msgid "Directories & Files:" -msgstr "الوجهات والملفات:" +msgstr "المجلدات والملفات:" msgid "Preview:" msgstr "إستعراض:" @@ -2236,6 +2285,9 @@ msgstr "إستعراض:" msgid "File:" msgstr "الملف:" +msgid "Some extensions need the editor to restart to take effect." +msgstr "تحتاج بعض الامتدادات أو الإضافات إلى استئناف المحرر حتى تعمل جيدا." + msgid "Restart" msgstr "إعادة التشغيل" @@ -2328,6 +2380,9 @@ msgstr "يتجاوز %s:" msgid "default:" msgstr "الافتراضي:" +msgid "Constructors" +msgstr "المنشئون" + msgid "Operators" msgstr "العمليات" @@ -2528,6 +2583,9 @@ msgstr "تعديل المُرشحات" msgid "Language:" msgstr "اللغة:" +msgid "Filter Messages" +msgstr "تصفية الرسائل" + msgid "Clear Output" msgstr "مسح المُخرجات" @@ -2556,11 +2614,10 @@ msgid "" "disable it." msgstr "" "يدور عندما يعاد رسم نافذة المحرر.\n" -"التحديث المستمر ممكن، الأمر الذي يعني استهلاك أكبر للطاقة. اضغط لإزالة " -"التمكين." +"التحديث المستمر ممكن، والذي يعني استهلاك أكبر للطاقة. اضغط لتعطيله." msgid "Spins when the editor window redraws." -msgstr "قم بالتدوير أثناء إعادة رسم نافذة المحرّر." +msgstr "يدور عند إعادة رسم نافذة المحرّر." msgid "Imported resources can't be saved." msgstr "لا يمكن حفظ الموارد المستوردة." @@ -2737,21 +2794,21 @@ msgid "" "The current scene has no root node, but %d modified external resource(s) " "were saved anyway." msgstr "" -"المشهد الحالي لا يملك عقدة رئيسة، ولكن %d عدّل المصدر(مصادر) خارجياً وتم الحفظ " -"عموما." +"المشهد الحالي لا يملك عقدة رئيسة، ولكن %d المصدر الخارجي المعدل قد حُفظ على " +"أية حال." msgid "" "A root node is required to save the scene. You can add a root node using the " "Scene tree dock." msgstr "" -"يتطلب حفظ المشهد توافر وحدة رئيسة. يمكنك إضافة وحدة رئيسية من خلال رصيف شجرة " +"مطلوب عقدة الأصل لحفظ المشهد. يمكنك إضافة عقدة أصل باستعمال رصيف تسلسل " "المشهد." msgid "Save Scene As..." msgstr "حفظ المشهد ك…" msgid "Current scene not saved. Open anyway?" -msgstr "لم يتم حفظ المشهد الحالي. إفتحه علي أية حال؟" +msgstr "المشهد الحالي لم يُحفظ. افتحه على أية حال؟" msgid "Can't undo while mouse buttons are pressed." msgstr "لا يمكن التراجع أثناء ضغط أزار الفأرة." @@ -2932,6 +2989,9 @@ msgstr "إظهار شامل" msgid "Dock Position" msgstr "مكان الرصيف" +msgid "Make Floating" +msgstr "اجعلها عائمة" + msgid "Add a new scene." msgstr "إضافة مشهد جديد." @@ -3232,10 +3292,10 @@ msgid "Open Asset Library" msgstr "فتح مكتبة المُلحقات" msgid "Open the next Editor" -msgstr "فتح في المُحرر التالي" +msgstr "افتح المُحرر التالي" msgid "Open the previous Editor" -msgstr "إفتح المُحرر السابق" +msgstr "افتح المُحرر السابق" msgid "Ok" msgstr "حسناً" @@ -3391,7 +3451,13 @@ msgid "Common" msgstr "شائع" msgid "Editor Settings" -msgstr "إعدادات المُعدل" +msgstr "إعدادات المُحرر" + +msgid "General" +msgstr "عام" + +msgid "Filter Settings" +msgstr "تصفية الإعدادات" msgid "The editor must be restarted for changes to take effect." msgstr "لكي يظهر تأثير التغييرات ينبغي إعادة تشغيل المُحرر." @@ -3417,6 +3483,12 @@ msgstr "صنّف حسب الحدث..." msgid "Project export for platform:" msgstr "تصدير المشروع لمنصة:" +msgid "Completed with warnings." +msgstr "اكتمل مع التحذيرات." + +msgid "Failed." +msgstr "فشل." + msgid "Storing File:" msgstr "تخزين الملف:" @@ -3429,12 +3501,27 @@ msgstr "تعذر فتح الملف للقراءة من المسار \"%s\"." msgid "Packing" msgstr "يَحزم\"ينتج الملف المضغوط\"" +msgid "Failed to export project files." +msgstr "فشل تصدير ملفات المشروع." + +msgid "Can't open file to read from path \"%s\"." +msgstr "لا يمكن فتح الملف للقراءة من المسار \"%s\"." + msgid "Custom debug template not found." msgstr "نمودج تصحيح الأخطاء غير موجود." msgid "Custom release template not found." msgstr "قالب الإصدار المخصص ليس موجود." +msgid "The given export path doesn't exist." +msgstr "مسار التصدير المُدخَل غير موجود." + +msgid "Template file not found: \"%s\"." +msgstr "ملف القالب غير موجود: \"%s\"." + +msgid "Failed to copy export template." +msgstr "فشل نسخ قالب التصدير." + msgid "On 32-bit exports the embedded PCK cannot be bigger than 4 GiB." msgstr "لا يمكن لمُصدرات 32-bit التي تتضمن PCK أن تكون أكبر من 4 GiB." @@ -3554,7 +3641,7 @@ msgid "Importing:" msgstr "يستورد:" msgid "Remove templates for the version '%s'?" -msgstr "ازالة القوالب للنسخة '%s'؟" +msgstr "إزالة القوالب للنسخة '%s'؟" msgid "Uncompressing Android Build Sources" msgstr "يتم تفكيك مصادر بناء أندرويد Android" @@ -3575,13 +3662,13 @@ msgid "Open Folder" msgstr "افتح المجلد" msgid "Open the folder containing installed templates for the current version." -msgstr "افتح المجلد الحاوي على القوالب المنصبة بالنسبة للإصدار الحالي." +msgstr "افتح مجلد القوالب المنصبة للإصدار الحالي." msgid "Uninstall" msgstr "إلغاء التثبيت" msgid "Uninstall templates for the current version." -msgstr "إلغاء تثبيت القوالب للنسخة الحالية." +msgstr "إزالة قوالب النسخة الحالية." msgid "Download from:" msgstr "التحميل من:" @@ -3622,18 +3709,21 @@ msgid "Select Template File" msgstr "حدد ملف القالب" msgid "Godot Export Templates" -msgstr "إدارة قوالب التصدير لغودوت" +msgstr "إدارة قوالب التصدير لجَوْدتْ" msgid "" "The templates will continue to download.\n" "You may experience a short editor freeze when they finish." msgstr "" "ستستمر القوالب بالتحميل.\n" -"ربما تلاحظ تجمداً بسيطاً بالمحرر عندما ينتهي تحميلهم." +"ربما تلاحظ تعليقا خفيفا في المحرر عند انتهائها." msgid "Runnable" msgstr "قابل للتشغيل" +msgid "Resources to export:" +msgstr "الموارد المُعدّة للتصدير:" + msgid "Delete preset '%s'?" msgstr "حذف المُعد مُسبقاً '%s'؟" @@ -3680,9 +3770,6 @@ msgstr "تصدير الموارد المُختارة (وتبعياتها)" msgid "Export Mode:" msgstr "وضع التصدير:" -msgid "Resources to export:" -msgstr "الموارد المُعدّة للتصدير:" - msgid "Keep" msgstr "احتفظ" @@ -3709,9 +3796,18 @@ msgstr "مُخصص (مفصول بفاصلة):" msgid "Feature List:" msgstr "قائمة المزايا:" +msgid "Export Project..." +msgstr "تصدير المشروع..." + msgid "Export All" msgstr "تصدير الكُل" +msgid "Choose an export mode:" +msgstr "اختر طريقة التصدير:" + +msgid "Export All..." +msgstr "تصدير الكُل..." + msgid "ZIP File" msgstr "الملف المضغوط ZIP File" @@ -3762,7 +3858,7 @@ msgid "" "editor anymore." msgstr "" "لم يتعرف المحرر على امتداد الملف.\n" -"إذا تريد إعادة تسميتهُ على أي حال, فأستخدم مدير ملفات نظام التشغيل الخاص بك.\n" +"إذا تريد إعادة تسميتهُ على أي حال, فاستخدمْ مدير ملفات نظامك الخاص .\n" "بعْدَ إعادة تسميتهُ إلى امتداد غير معرف, الملف لن يظهر في المحرر بعد الآن." msgid "A file or folder with this name already exists." @@ -3824,6 +3920,9 @@ msgstr "فتح النص البرمجي..." msgid "New Resource..." msgstr "مصدر جديد..." +msgid "Sort Files" +msgstr "ترتيب الملفات" + msgid "Sort by Name (Ascending)" msgstr "صنف وفقا للاسم (تصاعدياً)" @@ -3854,6 +3953,9 @@ msgstr "إعادة فحص نظام الملفات" msgid "Toggle Split Mode" msgstr "تعيين وضعية الإنقسام" +msgid "Filter Files" +msgstr "تصفية الملفات" + msgid "" "Scanning Files,\n" "Please Wait..." @@ -3946,6 +4048,11 @@ msgstr "إعادة الاستيراد" msgid "Offset:" msgstr "المُعادل:" +msgid "" +"Warning: Multiple configurations have identical settings. Duplicates will be " +"ignored." +msgstr "تحذير: تهيئات عديدة لديها نفس الإعدادات. النسخ المتكررة ستُهمل." + msgid "Importing Scene..." msgstr "حاري إستيراد المشهد..." @@ -3980,6 +4087,12 @@ msgstr "ثنائي الأبعاد" msgid "3D" msgstr "ثلاثي الأبعاد 3D" +msgid "Warning: File exists" +msgstr "تحذير: الملف موجود" + +msgid "Materials" +msgstr "المواد" + msgid "Select Importer" msgstr "حدد المستورد" @@ -4019,7 +4132,7 @@ msgid "Save Scenes, Re-Import, and Restart" msgstr "احفظ المشاهد، إعادة-الإستيراد، وإعادة التشغيل" msgid "Changing the type of an imported file requires editor restart." -msgstr "يتطلب تعديل نوع الملفات المستوردة إعادة تشغيل المحرر." +msgstr "يتطلب تعديل نوع الملفات المستوردة استئناف المحرر." msgid "" "WARNING: Assets exist that use this resource, they may stop loading properly." @@ -4028,7 +4141,10 @@ msgstr "تحذير: هناك مُلحقات تستخدم هذا المورد، msgid "" "Select a resource file in the filesystem or in the inspector to adjust " "import settings." -msgstr "إختر ملف مورد في نظام الملفات أو في المُتفحص لضبط إعدادت الاستيراد." +msgstr "اختر ملفا من نظام الملفات أو من الفاحص لضبط إعدادت الاستيراد." + +msgid "Manual Selection" +msgstr "اختيار يدوي" msgid "Device:" msgstr "الجهاز:" @@ -4036,6 +4152,9 @@ msgstr "الجهاز:" msgid "Failed to load resource." msgstr "فشل تحميل المورد." +msgid "Property Name Style" +msgstr "شكل اسم الخاصية" + msgid "Raw" msgstr "خام" @@ -4124,7 +4243,7 @@ msgid "Locale" msgstr "محلي" msgid "Select a single node to edit its signals and groups." -msgstr "حدد عقدة لكي تُعدل إشاراتها ومجموعاتها." +msgstr "حدد عقدة منفردة لكي تُعدل إشاراتها ومجموعاتها." msgid "Edit a Plugin" msgstr "تعديل إضافة" @@ -4198,9 +4317,11 @@ msgstr "تحريك نقطة العقدة" msgid "Change BlendSpace1D Labels" msgstr "تغيير ملصقات BlendSpace1D" +msgid "This type of node can't be used. Only animation nodes are allowed." +msgstr "هذا النوع من العُقد لا يمكن استعماله. فقط عُقد التحريك مسموحة." + msgid "This type of node can't be used. Only root nodes are allowed." -msgstr "" -"لا يمكن استخدام هذا النوع من العُقد. فقط العُقد الرئيسة root nodes مسموحة." +msgstr "هذا النوع من العُقد لا يمكن استخدامه . فقط عُقد الأصل مسموحة." msgid "Add Node Point" msgstr "إضافة نقطة العقدة" @@ -4218,9 +4339,8 @@ msgid "" "AnimationTree is inactive.\n" "Activate to enable playback, check node warnings if activation fails." msgstr "" -"شجرة الرسومات المتحركة غير فعالة.\n" -"فعلها لتتمكن من التشغيل playback، تفقد تنبيهات/تحذيرات التي تصدرها الوحدة " -"إذا فشل التفعيل." +"سلسلة-التحريك خاملة.\n" +"فعلها لتتمكن من التشغيل، وتفقد تنبيهات العُقدة إذا فشل التفعيل." msgid "Set the blending position within the space" msgstr "حدد مكان الخلط blending position ضمن الفراغ" @@ -4238,10 +4358,10 @@ msgid "Point" msgstr "نقطة" msgid "Open Editor" -msgstr "فتح المُحرر ثنائي الأبعاد 2D" +msgstr "فتح المُحرر" msgid "Open Animation Node" -msgstr "فتح عُقدة الرسم المتحرك Animation" +msgstr "فتح عُقدة التحريك" msgid "Triangle already exists." msgstr "المثلثات موجودة سلفاً." @@ -4362,6 +4482,9 @@ msgstr "تم لصق الرسوم المتحركة" msgid "Open in Inspector" msgstr "افتح في المُتصفح" +msgid "Storage" +msgstr "التخزين" + msgid "Toggle Autoplay" msgstr "إلغاء/تفعيل التشغيل التلقائي" @@ -4459,7 +4582,7 @@ msgid "Force White Modulate" msgstr "الاجبار على التعديل الابيض" msgid "Include Gizmos (3D)" -msgstr "تضمين جيزموس (3D)" +msgstr "تضمين الأدوات (3D)" msgid "Pin AnimationPlayer" msgstr "تثبيت مُشغّل الرسوميات المتحركة" @@ -4656,6 +4779,12 @@ msgstr "جاري التحميل..." msgid "All" msgstr "الكل" +msgid "Search Templates, Projects, and Demos" +msgstr "البحث في القوالب والمشاريع والأمثلة" + +msgid "Search Assets (Excluding Templates, Projects, and Demos)" +msgstr "البحث في الملحقات (عدا القوالب، والمشاريع، والأمثلة)" + msgid "Import..." msgstr "استيراد..." @@ -4663,7 +4792,7 @@ msgid "Plugins..." msgstr "إضافات..." msgid "Sort:" -msgstr "ترتيب:" +msgstr "الترتيب:" msgid "Category:" msgstr "الفئة:" @@ -4932,9 +5061,15 @@ msgstr "حاذي إلى العقد الأخرى" msgid "Snap to Guides" msgstr "حاذي إلى الموجهات" +msgid "Lock selected node, preventing selection and movement." +msgstr "قفل العُقدة المختارة، ومنع الحركة والاختيار." + msgid "Lock Selected Node(s)" msgstr "إقفال الوحدة(الوحدات) المحددة" +msgid "Unlock selected node, allowing selection and movement." +msgstr "فتح العُقدة المختارة، وتجويز الحركة والاختيار." + msgid "Unlock Selected Node(s)" msgstr "إلغاء فقل الوحدة(الوحدات) المحددة" @@ -4980,11 +5115,14 @@ msgstr "أظهر الشاشة" msgid "Show Group And Lock Icons" msgstr "إظهار أيقونات المجوعة والقفل" +msgid "Show Transformation Gizmos" +msgstr "عرض أدوات التحول" + msgid "Center Selection" -msgstr "نصف المُحدد" +msgstr "تنصيف المختار" msgid "Frame Selection" -msgstr "تحديد الإطار" +msgstr "اختيار الإطار" msgid "Preview Canvas Scale" msgstr "إظهار تحجيم اللوحة Canvas" @@ -5198,20 +5336,6 @@ msgstr "" msgid "Small Deploy with Network Filesystem" msgstr "نشر صغير مع نظام ملفات الشبكة" -msgid "" -"When this option is enabled, using one-click deploy for Android will only " -"export an executable without the project data.\n" -"The filesystem will be provided from the project by the editor over the " -"network.\n" -"On Android, deploying will use the USB cable for faster performance. This " -"option speeds up testing for projects with large assets." -msgstr "" -"حينما يتم تفعيل هذا الإعداد، التصدير أو النشر سوف ينتج ملف تشغيل بالحد " -"الأدنى (مبسط).\n" -"نظام الملفات سوف يتم توفيره بواسطة المُعدل من خلال الشبكة.\n" -"على الأندرويد، النشر سوف يستخدم وصلة اليو إس بي من أجل أداء أسرع. هذا " -"الإعداد يسرّع إختبار الألعاب ذو الحجم الكبير." - msgid "Visible Collision Shapes" msgstr "أشكال إصطدام ظاهرة" @@ -5260,17 +5384,27 @@ msgstr "" "حينما يتم إستخدامه عن بُعد على جهاز، سيكون أكثر كفاءتاً عند تفعيل إعداد نظام " "ملفات الشبكة." +msgid "Keep Debug Server Open" +msgstr "إبقاء خادوم التنقيح مفتوحًا" + +msgid "" +"When this option is enabled, the editor debug server will stay open and " +"listen for new sessions started outside of the editor itself." +msgstr "" +"عند تفعيل هذا الخيار، فإن \"محرر خادوم التنقيح\" سيبقى مفتوحا وسيستمع " +"للجلسات الجديدة من خارج المحرر نفسه." + msgid "Convert to CPUParticles2D" msgstr "حولْ إلى جسيمات-ثنائية-البُعد-لوحدة-المعالجة-المركزية (CPUParticles2D)" msgid "Generate Visibility Rect" -msgstr "توليد Rect الرؤية" +msgstr "توليد مستطيل مرئي" msgid "Clear Emission Mask" msgstr "امسح قناع الانبعاث" msgid "Generation Time (sec):" -msgstr "وقت التوليد (تانية):" +msgstr "وقت التوليد (ثانية):" msgid "The geometry's faces don't contain any area." msgstr "الوجوه الهندسية لا تتضمن أي منطقة." @@ -5321,6 +5455,12 @@ msgstr "" msgid "Failed creating lightmap images, make sure path is writable." msgstr "لا يمكن انشاء خرائط الضوء, تاكد من ان المسار صحيح و قابل للكتابه." +msgid "No editor scene root found." +msgstr "لا يوجد جذر أو أصل لمشهد المحرر." + +msgid "Lightmap data is not local to the scene." +msgstr "خريطة الإضاءة غير مرتبطة بهذا المشهد." + msgid "Bake Lightmaps" msgstr "طبخ (إعداد) خرائط الضوء" @@ -5480,10 +5620,10 @@ msgid "Update from Scene" msgstr "تحديث من المشهد" msgid "No mesh source specified (and no MultiMesh set in node)." -msgstr "لا مصدر ميش تم تحديده (و لا ميش متعدد تم تحديده في العقدة)." +msgstr "لا يوجد مجسّم محدد (ولا المجسمات-المتعددة مفعلة في العُقدة)." msgid "No mesh source specified (and MultiMesh contains no Mesh)." -msgstr "لا مصدر ميش تم تحديده (و ميش المتعدد لا يحتوي علي ميش)." +msgstr "لا يوجد مجسّم محدد (والمجسمات-المتعددة لا تحوي مجسّما)." msgid "Mesh source is invalid (invalid path)." msgstr "مصدر الميش خاطئ (المسار خاطئ)." @@ -5513,7 +5653,7 @@ msgid "Populate Surface" msgstr "تزويد السطح" msgid "Populate MultiMesh" -msgstr "تزويد الميش المتعدد" +msgstr "تعبئة المجسمات-العديدة" msgid "Target Surface:" msgstr "السطح المستهدف:" @@ -5552,7 +5692,7 @@ msgid "Create Navigation Polygon" msgstr "إنشاء مُضلع التنقل" msgid "Unnamed Gizmo" -msgstr "اداة غير مسمى" +msgstr "أداة بدون اسم" msgid "Change Light Radius" msgstr "تغيير نصف قطر الإنارة" @@ -5651,6 +5791,15 @@ msgstr "تم تعطيل تعيين المفاتيح (لم يتم إدخال أي msgid "Animation Key Inserted." msgstr "أُدخل مفتاح الرسوم المتحركة." +msgid "CPU Time: %s ms" +msgstr "وقت المعالِج: %s جزء ثانية" + +msgid "GPU Time: %s ms" +msgstr "وقت بطاقة الشاشة: %s جزء ثانية" + +msgid "FPS: %d" +msgstr "ط ث : %d" + msgid "Top View." msgstr "الواجهة العلوية." @@ -5714,15 +5863,21 @@ msgstr "عرض من غير ظلال" msgid "Shadow Atlas" msgstr "أطلس الظل" +msgid "Directional Shadow Map" +msgstr "خريطة الظل المتوجه" + msgid "View Environment" msgstr "عرض البيئة" msgid "View Gizmos" -msgstr "إظهار الأدوات Gizmos" +msgstr "عرض الأدوات" msgid "View Information" msgstr "إظهار المعلومات" +msgid "View Frame Time" +msgstr "عرض وقت الإطار" + msgid "Half Resolution" msgstr "نصف دقة الشاشة" @@ -5795,7 +5950,7 @@ msgid "Snap Nodes to Floor" msgstr "محاذاة الوحدات إلى الأرضية" msgid "Couldn't find a solid floor to snap the selection to." -msgstr "لم يتم إيجاد أرضية صُلبة لمحاذاة ما تم اختياره إليها." +msgstr "لا يوجد أرضية صلبة لمحاذاة المختار إليها." msgid "Use Local Space" msgstr "استخدام الحيّز المحلي" @@ -5888,7 +6043,7 @@ msgid "4 Viewports" msgstr "4 ساحات للرؤية" msgid "Gizmos" -msgstr "الأدوات Gizmos" +msgstr "الأدوات" msgid "View Origin" msgstr "إظهار الأصل (المصدر)" @@ -5944,6 +6099,12 @@ msgstr "سابق" msgid "Post" msgstr "لاحق" +msgid "Sun Direction" +msgstr "اتجاه الشمس" + +msgid "Sun Color" +msgstr "لون الشمس" + msgid "Tonemap" msgstr "خريطة تناغم الألوان" @@ -6273,8 +6434,8 @@ msgstr "أخفق تحميل النص البرمجي، تفقد الأخطاء ف msgid "" "To run this script, it must inherit EditorScript and be set to tool mode." msgstr "" -"ليتم تشغيل النص البرمجي، ينبغي أن يرث النص البرمجي للمحرر EditorScript وأن " -"يُضع في وضعية الأداة." +"لتشغيل النص البرمجي، يجب أن يرث النص البرمجي للمحرر (EditorScript) وأن يُجعل " +"في وضعية الأداة." msgid "Import Theme" msgstr "استيراد الموضوع Theme" @@ -6288,6 +6449,9 @@ msgstr "خطأ في الحفظ" msgid "Save Theme As..." msgstr "حفظ الموضوع Theme ك..." +msgid "Unsaved file." +msgstr "الملف غير محفوظ." + msgid "%s Class Reference" msgstr "%s مرجعية الصف Class" @@ -6297,6 +6461,9 @@ msgstr "إيجاد التالي" msgid "Find Previous" msgstr "إيجاد السابق" +msgid "Filter Scripts" +msgstr "تصفية النصوص البرمجية" + msgid "Toggle alphabetical sorting of the method list." msgstr "تفعيل الترتيب الألفبائي لقائمة الدوال." @@ -6513,6 +6680,9 @@ msgstr "الذهاب إلى نقطة التكسّر التالية" msgid "Go to Previous Breakpoint" msgstr "الذهاب إلى نقطة التكسّر السابقة" +msgid "Shader Editor" +msgstr "محرر التلوين" + msgid "This skeleton has no bones, create some children Bone2D nodes." msgstr "لا يملك هذا الهكيل أيّة عظام، أنشئ بعض عُقد العظام ثنائية البُعد كأبناء." @@ -6662,6 +6832,9 @@ msgstr "إنشاء الإطارات من ورقة الرسومية Sprite Sheet" msgid "SpriteFrames" msgstr "إطارات الرسوميات SpriteFrames" +msgid "Warnings should be fixed to prevent errors." +msgstr "يجب إصلاح التحذيرات لمنع الأخطاء." + msgid "Set Region Rect" msgstr "تحديد مستطيل المنطقة" @@ -6683,6 +6856,9 @@ msgstr "الاقتطاع التلقائي" msgid "Step:" msgstr "الخطوة:" +msgid "Region Editor" +msgstr "محرر المناطق" + msgid "Styleboxes" msgstr "مربعات الشكل" @@ -6918,7 +7094,7 @@ msgid "Default Theme" msgstr "المظهر الكلي الاساسي" msgid "Editor Theme" -msgstr "مظهر المحرر/برنامج-جودوه" +msgstr "محرر النمط" msgid "Select Another Theme Resource:" msgstr "إختر مورد مظهر كلي أخر:" @@ -7091,12 +7267,72 @@ msgstr "القلب أفقياً" msgid "Flip Vertically" msgstr "القلب عموديًا" +msgid "Picker" +msgstr "ملقاط" + +msgid "No terrains" +msgstr "لا تضاريس" + +msgid "Painting Terrain" +msgstr "رسم التضاريس" + +msgid "Add TileSet pattern" +msgstr "إضافة عينة طقم-البلاط" + +msgid "Remove TileSet patterns" +msgstr "إزالة عينات طقم-البلاط" + +msgid "Change selection" +msgstr "تغيير الاختيار" + +msgid "Selection" +msgstr "الاختيار" + +msgid "Shift+Ctrl: Draw rectangle." +msgstr "Shift+Ctrl: ترسم مستطيل" + +msgid "Rect" +msgstr "مستطيل" + +msgid "Bucket" +msgstr "سطل" + +msgid "Eraser" +msgstr "مسّاحة" + msgid "Tiles" msgstr "البلاط" +msgid "Patterns" +msgstr "العينات" + +msgid "Drag and drop or paste a TileMap selection here to store a pattern." +msgstr "اسحب وألقِ أو ألصق خريطة-البلاط التي تريد لتخزينها عينة." + +msgid "Paint terrain" +msgstr "تلوين التضاريس" + +msgid "Terrains" +msgstr "التضاريس" + +msgid "TileMap Layers" +msgstr "طبقات خريطة-البلاط" + +msgid "Toggle grid visibility." +msgstr "رؤية الشبكة." + msgid "Yes" msgstr "نعم" +msgid "Add new patterns in the TileMap editing mode." +msgstr "أضف عينات جديدة من خريطة-البلاط." + +msgid "TileSet" +msgstr "طقم-البلاط" + +msgid "TileMap" +msgstr "خريطة-البلاط" + msgid "Error" msgstr "خطأ" @@ -7107,6 +7343,9 @@ msgstr "الإعدادت عن بُعد فارغة. يمكن أنْ لا تعمل msgid "Commit" msgstr "ارتكاب" +msgid "Open in editor" +msgstr "افتح في المُحرر" + msgid "Commit:" msgstr "تسجيل/تجهيز:" @@ -7766,6 +8005,9 @@ msgstr "إنها لفكرة جيدة أن تقوم بتسمية مشروعك." msgid "Invalid project path (changed anything?)." msgstr "مسار مشروع غير صالح (أعدلت شيء؟)." +msgid "Warning: This folder is not empty" +msgstr "تحذير: هذا المجلد ليس فارغا" + msgid "Couldn't create project.godot in project path." msgstr "لا قدرة على إنشاء project.godot في مسار المشروع." @@ -7785,7 +8027,7 @@ msgid "Import Existing Project" msgstr "استيراد مشروع موجود" msgid "Import & Edit" -msgstr "إستيراد و تعديل" +msgstr "استيراد و تعديل" msgid "Create New Project" msgstr "إنشاء مشروع جديد" @@ -7820,10 +8062,50 @@ msgstr "خطأ: المشروع مفقود في نظام الملفات." msgid "Local" msgstr "محلي" +msgid "Local Projects" +msgstr "المشاريع الخاصة" + +msgid "Asset Library Projects" +msgstr "مكتبة المُلحقات" + msgid "Can't open project at '%s'." msgstr "لا يمكن فتح المشروع في '%s'." msgid "" +"Warning: This project uses C#, but this build of Godot does not have\n" +"the Mono module. If you proceed you will not be able to use any C# scripts.\n" +"\n" +msgstr "" +"تحذير: هذا المشروع يستعمل لغة #C ، لكن بنية جَوْدَتْ هذه لا تحوي \n" +"وحدة \"مونو\". إذا أصريت على الإكمال لن تكون قادرا على استعمال لغة #C.\n" +"\n" + +msgid "" +"Warning: This project was built in Godot %s.\n" +"Opening will upgrade or downgrade the project to Godot %s.\n" +"\n" +msgstr "" +"تحذير: هذا المشروع كان قد بُنِيَ بإصدار جوْدَتْ %s.\n" +"فتح المشروع سوف يُرقيه أو ينزله إلى إصدار جوْدَت %s.\n" +"\n" + +msgid "" +"Warning: This project uses the following features not supported by this " +"build of Godot:\n" +"\n" +"%s\n" +"\n" +msgstr "" +"تحذير: هذا المشروع يستعمل هذه المزايا المذكورة، وهي ليست مدعومة في هذه " +"البنية أو الإصدار من جوْدَت:\n" +"\n" +"%s\n" +"\n" + +msgid "Open anyway? Project will be modified." +msgstr "الفتح على أي حال؟ المشروع سوف يتغير." + +msgid "" "Can't run project: no main scene defined.\n" "Please edit the project and set the main scene in the Project Settings under " "the \"Application\" category." @@ -7858,8 +8140,8 @@ msgid "" "Language changed.\n" "The interface will update after restarting the editor or project manager." msgstr "" -"تم تغيير اللُغة.\n" -"ستتحدث الواجهة بعد إعادة تشغيل المُحرر أو مُدير المشاريع." +"اللغة قد تغيرتْ.\n" +"ستتحدث الواجهة بعد استئناف المُحرر أو مُدير المشروع." msgid "" "Are you sure to scan %s folders for existing Godot projects?\n" @@ -7868,17 +8150,49 @@ msgstr "" "هل أنت متأكد من فحص %s من المجلدات بحثاً عن مشاريع غودوت متوافرة؟\n" "قد يستغرق وقتاً." +msgctxt "Application" +msgid "Project Manager" +msgstr "مدير المشروع" + +msgid "Filter Projects" +msgstr "تصفية المشاريع" + +msgid "" +"This field filters projects by name and last path component.\n" +"To filter projects by name and full path, the query must contain at least " +"one `/` character." +msgstr "" +"هذا البحث ينتقي لك المشاريع بأسمائها أو باسم آخر شعبة من تشعباتها في مسارها " +"في جهازك.\n" +"لتنقية المشاريع باسمها أو بمسارها، لابد أن يشتمل البحث على علامة جدار مائل `/" +"` واحدة على الأقل." + +msgid "Last Edited" +msgstr "المعدل آخِرا" + msgid "New Project" msgstr "مشروع جديد" +msgid "Import Project" +msgstr "استيراد مشروع" + msgid "Scan" msgstr "فحص" +msgid "Scan Projects" +msgstr "البحث في المشاريع" + +msgid "Edit Project" +msgstr "تعديل المشروع" + +msgid "Remove Project" +msgstr "حذف المشروع" + msgid "Remove Missing" msgstr "إزالة المفقود" msgid "About" -msgstr "حول هذا المستند" +msgstr "التعريف بنا" msgid "Restart Now" msgstr "إعادة التشغيل الآن" @@ -7917,6 +8231,15 @@ msgstr "مسح إجراء الإدخال" msgid "Project Settings (project.godot)" msgstr "إعدادات المشروع (project.godot)" +msgid "Advanced Settings" +msgstr "إعدادات مُتقدمة" + +msgid "Select a Setting or Type its Name" +msgstr "اختر إعدادا أو اكتبْ اسمه" + +msgid "Changed settings will be applied to the editor after restarting." +msgstr "الإعدادات المُغيّرة ستعمل في المحرر بعد استئناف المُحرر." + msgid "Input Map" msgstr "خريطة الإدخال" @@ -8139,6 +8462,12 @@ msgstr "" msgid "Make Local" msgstr "اجعله محلياً" +msgid "Enable Scene Unique Name(s)" +msgstr "تفعيل اسم المشهد الفريد" + +msgid "Disable Scene Unique Name(s)" +msgstr "تعطيل اسم المشهد الفريد" + msgid "New Scene Root" msgstr "مشهد رئيس (جذر) جديد" @@ -8262,9 +8591,9 @@ msgid "" "every time it updates.\n" "Switch back to the Local scene tree dock to improve performance." msgstr "" -"إذا تم تحديده ، فسيؤدي شجرة المشهد البعيده (Remote) إلى توقف المشروع في كل " -"مرة يتم تحديث المشروع.\n" -"قمْ بالتبديل مرة أخرى إلى رصيف شجرة المشهد المحلي لتحسين الأداء." +"إذا حُدد، فإن رصيف سلسلة المشهد البعيد سيؤدي إلى تلعثم (تقطيع) المشروع عند كل " +"تحديث.\n" +"بدلْ أو عُد إلى رصيف سلسلة المشهد القريب لتحسين الأداء." msgid "Clear Inheritance? (No Undo!)" msgstr "مسح الموروث؟ (لا تراجع!)" @@ -8411,15 +8740,15 @@ msgid "" "Note: Built-in scripts have some limitations and can't be edited using an " "external editor." msgstr "" -"ملاحظة: النصوص البرمجية المبنية ضمناً تملك مقيدة ولها إمكانيات محددة ولا يمكن " -"تعديلها باستخدام مُحرر خارجي." +"ملاحظة: النصوص البرمجية المبنية ضمناً محدودة ببعض الحدود ولا يمكن تعديلها " +"باستخدام مُحرر خارجي." msgid "" "Warning: Having the script name be the same as a built-in type is usually " "not desired." msgstr "" -"تحذير: من غير المستحسن امتلاك النص البرمجي اسماً مماثلاً للأنواع المشابهة " -"المدمجة بالمحرر." +"تحذير: لا يحسن إعطاء النص البرمجي اسماً مماثلاً للأنواع المشابهة المدمجة " +"بالمحرر." msgid "Class Name:" msgstr "اسم الفئة:" @@ -8436,6 +8765,9 @@ msgstr "مسار غير صالح." msgid "Wrong extension chosen." msgstr "لاحقة مُختارة غير مناسبة." +msgid "Note: Built-in shaders can't be edited using an external editor." +msgstr "ملاحظة: التلوينات والظلال المدمجة لا يمكن تعديلها بمحرر خارجي." + msgid "Change Cylinder Radius" msgstr "تغيير نصف قطر الاسطوانة" @@ -8475,6 +8807,9 @@ msgstr "نموذج الشكل القاموسي غير صالح ( النص الب msgid "Invalid instance dictionary (invalid subclasses)" msgstr "نموذج القاموس غير صالح (أصناف فرعية غير صالحة)" +msgid "Disabling '.blend' file import requires restarting the editor." +msgstr "تعطيل توريد ملف '.blind' يتطلب استئناف المحرر." + msgid "Next Plane" msgstr "التبويب التالي" @@ -8570,6 +8905,9 @@ msgstr "لا يمكن أن يكون اسم الصف كلمة محجوزة" msgid "Not enough bytes for decoding bytes, or invalid format." msgstr "ليس هنالك بايتات كافية من أجل فك البايتات، أو الصيغة غير صحيحة." +msgid "Failed to load .NET runtime" +msgstr "فشل تشغيل .NET" + msgid "%s/s" msgstr "%s/s" @@ -8582,11 +8920,14 @@ msgstr "نداء الإجراء البعيد RPC صادر" msgid "Config" msgstr "إعداد" +msgid "Count" +msgstr "العدد" + msgid "Size" msgstr "الحجم" msgid "Network Profiler" -msgstr "ملف تعريف الشبكة Network Profiler" +msgstr "المُحلل الشبكي" msgid "A NavigationMesh resource must be set or created for this node to work." msgstr "" @@ -8686,7 +9027,7 @@ msgstr "" msgid "Debug keystore not configured in the Editor Settings nor in the preset." msgstr "" -"مُنقح أخطاء مفتاح المتجر keystore غير مُهيئ في إعدادت المُحرر أو في الإعدادات " +"مُنقح \"الخازن\" (keystore) غير مُهيأ في إعدادت المُحرر أو في الإعدادات " "الموضوعة سلفاً." msgid "" @@ -8699,12 +9040,21 @@ msgstr "" msgid "Release keystore incorrectly configured in the export preset." msgstr "تحرر مخزن المفاتيح غير مُهيئ بشكل صحيح في إعدادت المسبقة للتصدير." +msgid "A valid Android SDK path is required in Editor Settings." +msgstr "مطلوب مسار حزمة أندرويد (SDK) صحيح في إعدادات المُحرر." + +msgid "Invalid Android SDK path in Editor Settings." +msgstr "مسار حزمة أندرويد (SDK) غير صحيح في إعدادات المُحرر." + msgid "Missing 'platform-tools' directory!" msgstr "المجلد 'أدوات-المنصة (platform-tools)' مفقود!" msgid "Unable to find Android SDK platform-tools' adb command." msgstr "تعذر العثور على أمر adb الخاص بأدوات النظام الأساسي لـ Android SDK." +msgid "Please check in the Android SDK directory specified in Editor Settings." +msgstr "تأكد من مسار حزمة أندرويد (SDK) المحدد في إعدادات المُحرر." + msgid "Missing 'build-tools' directory!" msgstr "مجلد 'أدوات البناء' (build-tools) مفقود!" @@ -8792,6 +9142,9 @@ msgid "" "outputs." msgstr "تعذر نسخ وإعادة تسمية الملف المصدر، تفقد ملف مشروع gradle للمخرجات." +msgid "Package not found: \"%s\"." +msgstr "لم نجد الحزمة: \"%s\"." + msgid "Could not find template APK to export: \"%s\"." msgstr "لم يتم إيجاد قالب APK للتصدير: \"%s\"." @@ -8804,6 +9157,9 @@ msgstr "" "التصدير متضمناً جميع المكتبات الضرورية، أو أزال اختيار المعماريات الناقصة من " "خيارات التصدير المعدّة مسبقاً." +msgid "Could not export project files." +msgstr "لا يُمكن تصدير ملفات المشروع." + msgid "Aligning APK..." msgstr "محاذاة ملف APK..." @@ -8824,15 +9180,57 @@ msgstr "المُحدد مفقود." msgid "The character '%s' is not allowed in Identifier." msgstr "إن الحرف '%s' غير مسموح في المُحدد Identifier." +msgid "Could not open icon file \"%s\"." +msgstr "لا يُمكن فتح أيقونة الملف \"%s\"." + +msgid "The notarization process generally takes less than an hour." +msgstr "عملية التوثيق تأخذ أقل من ساعة غالبا." + +msgid "" +"Both Apple ID name and App Store Connect issuer ID name are specified, only " +"one should be set at the same time." +msgstr "" +"معرٍّف أبل(Apple ID) و معرف الأبستُر(AppStore ID) كلاهما قد حُددا، يجب تحديد " +"واحد منهما فقط." + msgid "Could not start xcrun executable." msgstr "تعذر بدء تشغيل xcrun." +msgid "" +"The notarization process generally takes less than an hour. When the process " +"is completed, you'll receive an email." +msgstr "" +"عملية التوثيق تأخذ أقل من ساعة غالبا، إذا اكتملت العملية، ستأتيك رسالة بريد." + +msgid "Cannot sign file %s." +msgstr "خطأ في تسجيل الملف %s." + msgid "Could not start hdiutil executable." msgstr "تعذر بدء الملف التنفيذي hdiutil." +msgid "Could not find template app to export: \"%s\"." +msgstr "لا يُوجد \"تطبيق القالب\" لتصديره: \"%s\"." + +msgid "Invalid export format." +msgstr "صيغة التصدير لا تصلح" + +msgid "" +"Notarization: Both Apple ID name and App Store Connect issuer ID name are " +"specified, only one should be set at the same time." +msgstr "" +"التوثيق: معرٍّف أبل(Apple ID) و معرف الأبستُر(AppStore ID) كلاهما قد حُددا، يجب " +"تحديد واحد منهما فقط." + msgid "Notarization: Apple ID password not specified." msgstr "التوثيق: لم يتم تحديد كلمة مرور Apple ID." +msgid "" +"Warning: Notarization is disabled. The exported project will be blocked by " +"Gatekeeper if it's downloaded from an unknown source." +msgstr "" +"تحذير: التوثيق معطل. وهذا يعني أن الحارس سيحجب المشروع المُصدَّر إذا كان قد حُمّل " +"من مصدر مجهول." + msgid "Invalid package short name." msgstr "اسم الرُزمة القصير غير صالح." @@ -8872,6 +9270,27 @@ msgstr "أبعاد صورة الشعار المربع 310x150 غير صالحة msgid "Invalid splash screen image dimensions (should be 620x300)." msgstr "أبعاد شاشة البداية غير صالحة (ينبغي أن تكون 620×300)." +msgid "Could not open template for export: \"%s\"." +msgstr "لا يمكن فتح القالب للتصدير: \"%s\"." + +msgid "Invalid export template: \"%s\"." +msgstr "قالب التصدير لا يصح : \"%s\"." + +msgid "Could not write file: \"%s\"." +msgstr "لا يمكن كتابة الملف: \"%s\"." + +msgid "Could not read file: \"%s\"." +msgstr "لا يمكن قراءة الملف: \"%s\"." + +msgid "Could not read HTML shell: \"%s\"." +msgstr "ملف HTML لا يمكن قراءته : \"%s\"." + +msgid "Could not create HTTP server directory: %s." +msgstr "خادوم الـHTTP لا يمكن إنشاء مجلده: %s." + +msgid "Error starting HTTP server: %d." +msgstr "خادوم الـHTTP خطأ في تشغيله :%d ." + msgid "Stop HTTP Server" msgstr "إيقاف مُخدم HTTP" @@ -8881,6 +9300,18 @@ msgstr "تشغيل في المتصفح" msgid "Run exported HTML in the system's default browser." msgstr "شغل ملف HTML المُصدر في المتصفح الإفتراضي للنظام." +msgid "Resources Modification" +msgstr "تعديل المصادر" + +msgid "Failed to rename temporary file \"%s\"." +msgstr "فشل تسمية الملف المؤقت \"%s\"." + +msgid "Invalid identity type." +msgstr "نوع الهوية أو المعرِّف غير صالح." + +msgid "Failed to remove temporary file \"%s\"." +msgstr "فشل حذف الملف المؤقت \"%s\"." + msgid "Invalid icon path:" msgstr "مسار الأيقونة غير صالح:" @@ -9069,6 +9500,12 @@ msgstr "" msgid "The AnimationPlayer root node is not a valid node." msgstr "العُقدة الرئيسة لمُشغل الرسومات المتحركة ليست عُقدة صالحة." +msgid "Select a picker shape." +msgstr "اختر شكل الملقاط." + +msgid "Select a picker mode." +msgstr "اختر حالة الملقاط." + msgid "Switch between hexadecimal and code values." msgstr "بدّل بين القيم البرمجية والسداسية العشرية." @@ -9147,6 +9584,9 @@ msgstr "التعين للإنتظام." msgid "Constants cannot be modified." msgstr "لا يمكن تعديل الثوابت." +msgid "Empty statement. Remove ';' to fix this warning." +msgstr "بيان فارغ. احذف علامة الفاصلة المنقوطة ';' لتجاوز هذا التحذير." + msgid "The local variable '%s' is declared but never used." msgstr "تم فرض المُتغير المحلي '%s' ولكن لم يستعمل." diff --git a/editor/translations/editor/bg.po b/editor/translations/editor/bg.po index 997a698683..defeefaec8 100644 --- a/editor/translations/editor/bg.po +++ b/editor/translations/editor/bg.po @@ -2169,6 +2169,9 @@ msgstr "Избор на шаблонен файл" msgid "Godot Export Templates" msgstr "Шаблони за изнасяне на Godot" +msgid "Resources to export:" +msgstr "Ресурси за изнасяне:" + msgid "Exporting All" msgstr "Изнасяне на всичко" @@ -2193,9 +2196,6 @@ msgstr "Изнасяне на избраните ресурси (включит msgid "Export Mode:" msgstr "Режим на изнасяне:" -msgid "Resources to export:" -msgstr "Ресурси за изнасяне:" - msgid "Keep" msgstr "Запазване" diff --git a/editor/translations/editor/ca.po b/editor/translations/editor/ca.po index 6175dd6260..38225c682d 100644 --- a/editor/translations/editor/ca.po +++ b/editor/translations/editor/ca.po @@ -3128,6 +3128,9 @@ msgstr "" msgid "Runnable" msgstr "Executable" +msgid "Resources to export:" +msgstr "Recursos per exportar:" + msgid "Delete preset '%s'?" msgstr "Esborrar la configuració '%s' ?" @@ -3161,9 +3164,6 @@ msgstr "Exporta els Recursos seleccionats (dependències incloses)" msgid "Export Mode:" msgstr "Mode d'Exportació:" -msgid "Resources to export:" -msgstr "Recursos per exportar:" - msgid "" "Filters to export non-resource files/folders\n" "(comma-separated, e.g: *.json, *.txt, docs/*)" diff --git a/editor/translations/editor/cs.po b/editor/translations/editor/cs.po index 47fdeacdc3..8a11d23d32 100644 --- a/editor/translations/editor/cs.po +++ b/editor/translations/editor/cs.po @@ -24,9 +24,9 @@ # VladimirBlazek <vblazek042@gmail.com>, 2020. # kubajz22 <til.jakubesko@seznam.cz>, 2020. # Václav Blažej <vaclavblazej@seznam.cz>, 2020, 2021. -# ProfJack <profjackcz@gmail.com>, 2021. +# ProfJack <profjackcz@gmail.com>, 2021, 2023. # swifterik <blaha.j502@gmail.com>, 2021. -# Daniel <dan@ger.cz>, 2021. +# Daniel <dan@ger.cz>, 2021, 2023. # Jakub Janšta <jansta.ja@gmail.com>, 2021, 2023. # Petr Voparil <voparil.petr96@gmail.com>, 2022. # JoeMoos <josephmoose13@gmail.com>, 2022. @@ -43,8 +43,8 @@ msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-17 06:03+0000\n" -"Last-Translator: Erik Mičulek <erikmiculek@gmail.com>\n" +"PO-Revision-Date: 2023-05-11 05:49+0000\n" +"Last-Translator: ProfJack <profjackcz@gmail.com>\n" "Language-Team: Czech <https://hosted.weblate.org/projects/godot-engine/godot/" "cs/>\n" "Language: cs\n" @@ -52,7 +52,7 @@ 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.17-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Unset" msgstr "Nenastaveno" @@ -129,6 +129,9 @@ msgstr "Joystick 4 Osa Y" msgid "Unknown Joypad Axis" msgstr "Neznámá Osa Gamepadu" +msgid "Joypad Motion on Axis %d (%s) with Value %.2f" +msgstr "Pohyb Joypadu na ose %d (%s) s hodnotou %.2f" + msgid "Bottom Action, Sony Cross, Xbox A, Nintendo B" msgstr "Spodní Akce, Sony Kříž, Xbox A, Nintendo B" @@ -192,6 +195,28 @@ msgstr "Xbox Pádlo 4" msgid "PS4/5 Touchpad" msgstr "PS4/5 Dotykový panel" +msgid "touched" +msgstr "stisknutý" + +msgid "Screen %s at (%s) with %s touch points" +msgstr "Obrazovka %s v (%s) s %s dotykovými body" + +msgid "" +"Screen dragged with %s touch points at position (%s) with velocity of (%s)" +msgstr "Obrazovka tažená %s dotykovými body na pozici (%s) rychlostí (%s)" + +msgid "Magnify Gesture at (%s) with factor %s" +msgstr "Gesto přiblížení na (%s) s faktorem %s" + +msgid "Pan Gesture at (%s) with delta (%s)" +msgstr "Gesto přesouvání na (%s) se změnou (%s)" + +msgid "MIDI Input on Channel=%s Message=%s" +msgstr "Vstup MIDI na Kanále=%s Zpráva=%s" + +msgid "Input Event with Shortcut=%s" +msgstr "Vstupní událost se zkratkou=%s" + msgid "Accept" msgstr "Potvrdit" @@ -285,15 +310,30 @@ msgstr "Caret Slovo vlevo" msgid "Caret Right" msgstr "Caret vpravo" +msgid "Caret Page Down" +msgstr "Kurzor o stránku níž" + +msgid "Caret Add Above" +msgstr "Přidat kurzor výš" + msgid "Select All" msgstr "Vybrat vše" +msgid "Select Word Under Caret" +msgstr "Označit slovo pod kurzorem" + +msgid "Add Selection for Next Occurrence" +msgstr "Přidat další výskyt do označení" + msgid "Duplicate Nodes" msgstr "Duplikovat uzly" msgid "Delete Nodes" msgstr "Smazat uzly" +msgid "Go Up One Level" +msgstr "Přejít o úroveň výš" + msgid "Refresh" msgstr "Obnovit" @@ -342,6 +382,15 @@ msgstr "PiB" msgid "EiB" msgstr "EiB" +msgid "Example: %s" +msgstr "Příklad: %s" + +msgid "%d item" +msgid_plural "%d items" +msgstr[0] "%d položka" +msgstr[1] "%d položky" +msgstr[2] "%d položek" + msgid "" "Invalid action name. It cannot be empty nor contain '/', ':', '=', '\\' or " "'\"'" @@ -352,6 +401,9 @@ msgstr "" msgid "An action with the name '%s' already exists." msgstr "Akce s názvem \"%s\" již existuje." +msgid "Cannot Revert - Action is same as initial" +msgstr "Není možný návrat - akce je shodná s původní" + msgid "Add Event" msgstr "Přidat událost" @@ -370,6 +422,9 @@ msgstr "Odstranit událost" msgid "Add" msgstr "Přidat" +msgid "Show Built-in Actions" +msgstr "Zobrazit vestavěné akce" + msgid "Action" msgstr "Akce" @@ -391,6 +446,21 @@ msgstr "Duplikovat vybrané klíč(e)" msgid "Delete Selected Key(s)" msgstr "Smazat vybrané klíč(e)" +msgid "Make Handles Linear" +msgstr "Udělat úchyty lineárními" + +msgid "Make Handles Balanced" +msgstr "Udělat úchyty vyvážené" + +msgid "Make Handles Mirrored" +msgstr "Udělat úchyty zrcadlené" + +msgid "Make Handles Balanced (Auto Tangent)" +msgstr "Udělat úchyty vyvážené (automatická tečna)" + +msgid "Make Handles Mirrored (Auto Tangent)" +msgstr "Udělat úchyty zrcadlené (automatická tečna)" + msgid "Add Bezier Point" msgstr "Přidat bod Bézierovy křivky" @@ -403,9 +473,18 @@ msgstr "Změnit délku animace" msgid "Change Animation Loop" msgstr "Změnit smyčku animace" +msgid "Can't change loop mode on animation instanced from imported scene." +msgstr "Nelze změnit režim smyčky na instanci animace z importované scény." + +msgid "Can't change loop mode on animation embedded in another scene." +msgstr "Nelze změnit režim smyčky na animaci vložené do jiné scény." + msgid "Property Track" msgstr "Stopa vlastnosti" +msgid "Blend Shape Track" +msgstr "Stopa prolínání tvarů" + msgid "Call Method Track" msgstr "Stopa volání metody" @@ -466,6 +545,21 @@ msgstr "Zvětšení:" msgid "Type:" msgstr "Typ:" +msgid "Handle mode: Free\n" +msgstr "Režim úchytu: Volný\n" + +msgid "Handle mode: Linear\n" +msgstr "Režim úchytu: Lineární\n" + +msgid "Handle mode: Balanced\n" +msgstr "Režim úchytu: Vyvážený\n" + +msgid "Handle mode: Mirrored\n" +msgstr "Režim úchytu: Zrcadlený\n" + +msgid "Don't Use Blend" +msgstr "Nepoužívat prolínání" + msgid "Continuous" msgstr "Spojité" @@ -508,6 +602,13 @@ msgstr "Změnit režim interpolace animace" msgid "Change Animation Loop Mode" msgstr "Změnit mód smyčky animace" +msgid "" +"Compressed tracks can't be edited or removed. Re-import the animation with " +"compression disabled in order to edit." +msgstr "" +"Komprimované stopy nelze upravit ani odstranit. Pro úpravu přeimportuj " +"animaci bez povolené komprese." + msgid "Remove Anim Track" msgstr "Odstranit stopu animace" @@ -582,6 +683,9 @@ msgstr "Měřítko" msgid "Methods" msgstr "Metody" +msgid "Bezier" +msgstr "Bézier" + msgid "Audio" msgstr "Zvuk" @@ -591,6 +695,9 @@ msgstr "Schránka je prázdná!" msgid "Paste Tracks" msgstr "Vložit stopy" +msgid "Make Easing Keys" +msgstr "Vytvoř klíče pro dynamiku" + msgid "" "This option does not work for Bezier editing, as it's only a single track." msgstr "" @@ -604,6 +711,9 @@ msgid "Select an AnimationPlayer node to create and edit animations." msgstr "" "Pro přidání a úpravu animací vyberte ze stromu scény uzel AnimationPlayer." +msgid "Toggle between the bezier curve editor and track editor." +msgstr "Přepnout mezi editorem bézierovy křivky a editorem stopy." + msgid "Only show tracks from nodes selected in tree." msgstr "Zobrazit pouze stopy vybraných uzlů." @@ -682,6 +792,9 @@ msgstr "Pročistit" msgid "Scale Ratio:" msgstr "Poměr zvětšení:" +msgid "Select Transition and Easing" +msgstr "Vybrat přechod a dynamiku" + msgid "Select Tracks to Copy" msgstr "Vybrat stopy ke kopírování" @@ -782,6 +895,9 @@ msgstr "Scéna neobsahuje žádný skript." msgid "Select Method" msgstr "Vybrat metodu" +msgid "No method found matching given filters." +msgstr "Daným filtrům neodpovídá žádná metoda." + msgid "Remove" msgstr "Odebrat" @@ -3002,6 +3118,9 @@ msgstr "" msgid "Runnable" msgstr "Spustitelný" +msgid "Resources to export:" +msgstr "Zdroje k exportu:" + msgid "Delete preset '%s'?" msgstr "Odstranit předvolbu '%s'?" @@ -3048,9 +3167,6 @@ msgstr "Exportovat vybrané zdroje (a závislosti)" msgid "Export Mode:" msgstr "Expertní režim:" -msgid "Resources to export:" -msgstr "Zdroje k exportu:" - msgid "Keep" msgstr "Zachovat" @@ -4551,7 +4667,7 @@ msgstr "" "Nemusíte ji povolovat abyste mohli použít lokální ladění GDScriptu." msgid "Small Deploy with Network Filesystem" -msgstr "Tenké nasazení pomocí síťového souborového sistému" +msgstr "Tenké nasazení pomocí síťového souborového systému" msgid "" "When this option is enabled, using one-click deploy for Android will only " diff --git a/editor/translations/editor/de.po b/editor/translations/editor/de.po index 9cc2e9e97e..9998c5ed86 100644 --- a/editor/translations/editor/de.po +++ b/editor/translations/editor/de.po @@ -104,8 +104,8 @@ msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-13 17:34+0000\n" -"Last-Translator: Janosch Lion <janorico@posteo.de>\n" +"PO-Revision-Date: 2023-05-11 05:49+0000\n" +"Last-Translator: <artism90@googlemail.com>\n" "Language-Team: German <https://hosted.weblate.org/projects/godot-engine/" "godot/de/>\n" "Language: de\n" @@ -113,7 +113,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.17-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Unset" msgstr "Nicht gesetzt" @@ -4566,6 +4566,9 @@ msgstr "" "Alle Exportvorlagen müssen einen Export-Pfad festlegen damit „Alle " "exportieren“ funktioniert." +msgid "Resources to export:" +msgstr "Zu exportierende Ressourcen:" + msgid "Delete preset '%s'?" msgstr "Vorlage ‚%s‘ löschen?" @@ -4622,9 +4625,6 @@ msgstr "Als dedizierten Server exportieren" msgid "Export Mode:" msgstr "Export-Modus:" -msgid "Resources to export:" -msgstr "Zu exportierende Ressourcen:" - msgid "" "\"Strip Visuals\" will replace the following resources with placeholders:" msgstr "" @@ -12159,9 +12159,9 @@ msgid "" "\n" "Are you sure you wish to continue?" msgstr "" -"Es wurde ausgewählt ein neues Godot-Projekt in einem nicht-leeren Ordner zu " -"erstellen.\n" -"Demnach werden alle Inhalte des Ordners als Projekt-Ressourcen importiert!\n" +"Die aktuelle Konfiguration legt ein neues Godot-Projekt in einem nicht-" +"leeren Ordner an.\n" +"Dabei werden alle Inhalte des Ordners als Projekt-Ressourcen importiert!\n" "\n" "Soll entsprechend fortgefahren werden?" diff --git a/editor/translations/editor/el.po b/editor/translations/editor/el.po index e3b1a49d20..bb99c6c495 100644 --- a/editor/translations/editor/el.po +++ b/editor/translations/editor/el.po @@ -2700,6 +2700,9 @@ msgstr "Προτύπων Εξαγωγής Godot" msgid "Runnable" msgstr "Εκτελέσιμο" +msgid "Resources to export:" +msgstr "Πόροι για εξαγωγή:" + msgid "Delete preset '%s'?" msgstr "Διαγραφή διαμόρφωσης '%s';" @@ -2747,9 +2750,6 @@ msgstr "Εξαγωγή επιλεγμένων πόρων (και εξαρτήσ msgid "Export Mode:" msgstr "Λειτουργία εξαγωγής:" -msgid "Resources to export:" -msgstr "Πόροι για εξαγωγή:" - msgid "Keep" msgstr "Διατήρηση" diff --git a/editor/translations/editor/es.po b/editor/translations/editor/es.po index 4fdc449de8..5abbd48cd0 100644 --- a/editor/translations/editor/es.po +++ b/editor/translations/editor/es.po @@ -103,13 +103,14 @@ # Federico Sebastián Florentin <federicoflorentin6@gmail.com>, 2023. # Joinner Medina <devjoi2018@gmail.com>, 2023. # Pedro Torcatt <pedrotorcattsoto@gmail.com>, 2023. +# Pedro Zebenzui Ortega Diaz <pipo.tf@gmail.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-17 17:39+0000\n" -"Last-Translator: Luis Ortiz <luisortiz66@hotmail.com>\n" +"PO-Revision-Date: 2023-05-11 05:49+0000\n" +"Last-Translator: Javier Ocampos <xavier.ocampos@gmail.com>\n" "Language-Team: Spanish <https://hosted.weblate.org/projects/godot-engine/" "godot/es/>\n" "Language: es\n" @@ -117,7 +118,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.17\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Unset" msgstr "Desactivar" @@ -4560,6 +4561,9 @@ msgstr "" "Todos los presets deben tener una ruta de exportación definida para que " "Exportar Todo funcione." +msgid "Resources to export:" +msgstr "Recursos a exportar:" + msgid "Delete preset '%s'?" msgstr "¿Eliminar preajuste '%s'?" @@ -4617,9 +4621,6 @@ msgstr "Exportar como servidor dedicado" msgid "Export Mode:" msgstr "Modo de Exportación:" -msgid "Resources to export:" -msgstr "Recursos a exportar:" - msgid "" "\"Strip Visuals\" will replace the following resources with placeholders:" msgstr "" @@ -7507,6 +7508,15 @@ msgstr "Tamaño de RAM de video: %s MB (%s)" msgid "Bake SDF" msgstr "Bakear SDF" +msgid "" +"No faces detected during GPUParticlesCollisionSDF3D bake.\n" +"Check whether there are visible meshes matching the bake mask within its " +"extents." +msgstr "" +"No se han detectado caras durante el bakeado de GPUParticlesCollisionSDF3D.\n" +"Comprueba si hay mallas visibles que coincidan con la máscara de bakeado " +"dentro de sus extensiones." + msgid "Select path for SDF Texture" msgstr "Seleccione la ruta para la textura SDF" @@ -8070,9 +8080,15 @@ msgstr "Alinear la Transformación con la Vista" msgid "Align Rotation with View" msgstr "Alinear la Rotación con la Vista" +msgid "Set Surface %d Override Material" +msgstr "Establecer Reemplazo de Material de Superficie %d" + msgid "Set Material Override" msgstr "Establecer Anulación de Material" +msgid "Cannot drag and drop into multiple selected nodes." +msgstr "No se puede arrastrar y soltar en varios nodos seleccionados." + msgid "None" msgstr "Ninguno" @@ -8133,6 +8149,9 @@ msgstr "Albedo de VoxelGI" msgid "VoxelGI Emission" msgstr "Emisión de VoxelGI" +msgid "SDFGI Cascades" +msgstr "Cascadas SDFGI" + msgid "SDFGI Probes" msgstr "Sondas SDFGI" @@ -8142,11 +8161,26 @@ msgstr "Iluminación de Escena" msgid "SSAO" msgstr "SSAO" +msgid "SSIL" +msgstr "SSIL" + +msgid "VoxelGI/SDFGI Buffer" +msgstr "Búfer de VoxelGI/SDFGI" + msgid "Disable Mesh LOD" msgstr "Desactivar LOD de Mesh" +msgid "OmniLight3D Cluster" +msgstr "Grupo de OmniLight3D" + +msgid "SpotLight3D Cluster" +msgstr "Grupo de SpotLight3D" + +msgid "Decal Cluster" +msgstr "Grupo de Calcomanías" + msgid "ReflectionProbe Cluster" -msgstr "Clúster ReflectionProbe" +msgstr "Grupo de ReflectionProbe" msgid "Occlusion Culling Buffer" msgstr "Búfer de Occlusion Culling" @@ -8208,6 +8242,21 @@ msgstr "Modificador de Velocidad de Vista Libre" msgid "Freelook Slow Modifier" msgstr "Modificador de Velocidad de Vista Libre" +msgid "Lock Transformation to X axis" +msgstr "Bloquear Transformación al eje X" + +msgid "Lock Transformation to Y axis" +msgstr "Bloquear Transformación al eje Y" + +msgid "Lock Transformation to Z axis" +msgstr "Bloquear Transformación al eje Z" + +msgid "Lock Transformation to YZ plane" +msgstr "Bloquear Transformación al plano YZ" + +msgid "Lock Transformation to XZ plane" +msgstr "Bloquear Transformación al plano XZ" + msgid "Lock Transformation to XY plane" msgstr "Bloquear Transformación al plano XY" @@ -8287,12 +8336,24 @@ msgstr "" msgid "Preview disabled." msgstr "Vista previa desactivada." +msgid "" +"Scene contains\n" +"WorldEnvironment.\n" +"Preview disabled." +msgstr "" +"Contenidos de la Escena.\n" +"Entorno Mundial.\n" +"Vista Previa Desactivada." + msgid "Use Local Space" msgstr "Usar Espacio Local" msgid "Use Snap" msgstr "Usar Snap" +msgid "Edit Sun and Environment settings." +msgstr "Editar Sol y Configuraciones del Entorno." + msgid "Bottom View" msgstr "Vista Inferior" @@ -9434,6 +9495,11 @@ msgstr[1] "{num} constantes" msgid "No constants found." msgstr "No se encontraron constants." +msgid "1 font" +msgid_plural "{num} fonts" +msgstr[0] "1 Fuente" +msgstr[1] "{num} Fuentes" + msgid "No fonts found." msgstr "No se han encontrado fonts." @@ -9445,6 +9511,11 @@ msgstr[1] "{num} tamaño de fuentes" msgid "No font sizes found." msgstr "No se han encontrado tamaños de fuente." +msgid "1 icon" +msgid_plural "{num} icons" +msgstr[0] "1 icono" +msgstr[1] "{num} iconos" + msgid "No icons found." msgstr "No se han encontrado icons." @@ -9798,9 +9869,15 @@ msgstr "Establecer Elemento de Color en el Theme" msgid "Set Constant Item in Theme" msgstr "Establecer Elemento Constante en el Theme" +msgid "Set Font Size Item in Theme" +msgstr "Establecer Tamaño de la Fuente en el Objeto del Tema" + msgid "Set Font Item in Theme" msgstr "Establecer Elemento de Fuente en el Theme" +msgid "Set Icon Item in Theme" +msgstr "Establecer Icono en el Tema" + msgid "Set Stylebox Item in Theme" msgstr "Establecer Elemento Stylebox en el Theme" @@ -9952,6 +10029,12 @@ msgstr "Archivo inválido, no es un recurso PackedScene." msgid "Reload the scene to reflect its most actual state." msgstr "Recargar la escena para reflejar su estado actual." +msgid "Merge TileSetAtlasSource" +msgstr "Combinar TileSetAtlasSource" + +msgid "%s (ID: %d)" +msgstr "%s (ID: %d)" + msgid "Atlas Merging" msgstr "Combinar Atlas" @@ -13174,17 +13257,43 @@ msgid "Not possible to add a new property to synchronize without a root." msgstr "" "No es posible añadir una nueva propiedad para sincronizar sin una raíz." +msgid "Add from path" +msgstr "Añadir desde ruta" + +msgid "Please select a MultiplayerSynchronizer first." +msgstr "Por favor, selecciona primero un MultiplayerSynchronizer." + +msgid "Set spawn property" +msgstr "Establecer propiedad de spawn" + +msgid "Set sync property" +msgstr "Establecer propiedad de sincronización" + msgid "Delete Property?" msgstr "¿Eliminar Propiedad?" msgid "Remove Property" msgstr "Eliminar Propiedad" +msgid "" +"A valid NodePath must be set in the \"Spawn Path\" property in order for " +"MultiplayerSpawner to be able to spawn Nodes." +msgstr "" +"Se debe establecer una ruta de nodo válida en la propiedad \"Spawn Path\" " +"para que MultiplayerSpawner pueda generar nodos." + msgid "A NavigationMesh resource must be set or created for this node to work." msgstr "" "Se debe crear o establecer un recurso NavigationMesh para que este nodo " "funcione." +msgid "" +"Cannot generate navigation mesh because it does not belong to the edited " +"scene. Make it unique first." +msgstr "" +"No se puede generar una malla de navegación porque no pertenece a la escena " +"editada. Hazla única primero." + msgid "Bake NavMesh" msgstr "Bakear NavMesh" @@ -13230,12 +13339,69 @@ msgstr "Analizando geometría..." msgid "Done!" msgstr "¡Hecho!" +msgid "Rename Action" +msgstr "Renombrar Acción" + +msgid "Rename Actions Localized name" +msgstr "Renombrar nombre Localizado de las Acciones" + +msgid "Change Action Type" +msgstr "Cambiar Tipo de Acción" + +msgid "Remove action" +msgstr "Eliminar acción" + +msgid "Add action set" +msgstr "Añadir conjunto de acciones" + +msgid "Remove action set" +msgstr "Eliminar conjunto de acciones" + +msgid "Add interaction profile" +msgstr "Añadir perfil de interacción" + +msgid "Error saving file %s: %s" +msgstr "Error al guardar el archivo %s: %s" + msgid "Error loading %s: %s." msgstr "Error al cargar %s: %s." +msgid "OpenXR Action map:" +msgstr "Mapa de acción de OpenXR:" + +msgid "Remove interaction profile" +msgstr "Eliminar perfil de interacción" + +msgid "Action Map" +msgstr "Mapa de Acción" + +msgid "Add Action Set" +msgstr "Añadir Conjunto de Acciones" + msgid "Add an action set." msgstr "Añadir un conjunto de acciones." +msgid "Add profile" +msgstr "Añadir perfil" + +msgid "Add an interaction profile." +msgstr "Añadir un perfil de interacción." + +msgid "Action Sets" +msgstr "Conjunto de Acciones" + +msgid "Rename Action Set" +msgstr "Renombrar Conjunto de Acciones" + +msgid "Change Action Sets priority" +msgstr "Cambiar prioridad de los Conjuntos de Acciones" + +msgid "Add action" +msgstr "Añadir acción" + +msgid "Delete action" +msgstr "Eliminar acción" + msgid "Pose" msgstr "Pose" diff --git a/editor/translations/editor/es_AR.po b/editor/translations/editor/es_AR.po index d1054d5d4d..0b96b09666 100644 --- a/editor/translations/editor/es_AR.po +++ b/editor/translations/editor/es_AR.po @@ -2768,6 +2768,9 @@ msgstr "" msgid "Runnable" msgstr "Ejecutable" +msgid "Resources to export:" +msgstr "Recursos a exportar:" + msgid "Delete preset '%s'?" msgstr "Eliminar preset '%s'?" @@ -2815,9 +2818,6 @@ msgstr "Exportar recursos seleccionados (y dependencias)" msgid "Export Mode:" msgstr "Modo de Exportación:" -msgid "Resources to export:" -msgstr "Recursos a exportar:" - msgid "Keep" msgstr "Conservar" diff --git a/editor/translations/editor/fa.po b/editor/translations/editor/fa.po new file mode 100644 index 0000000000..4a7b635d8d --- /dev/null +++ b/editor/translations/editor/fa.po @@ -0,0 +1,3564 @@ +# Persian translation of the Godot Engine editor interface. +# Copyright (c) 2014-present Godot Engine contributors. +# Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. +# This file is distributed under the same license as the Godot source code. +# alabd14313 <alabd14313@yahoo.com>, 2016. +# Dante Marshal <Marshal.Devilhunter@gmail.com>, 2018. +# hamed nasib <cghamed752@chmail.ir>, 2016. +# Hasan Hejdari Nasab <hsn6@openmailbox.org>, 2017. +# rezapouya <r.pouya@chmail.ir>, 2016. +# sayyed hamed nasib <cghamed752@chmail.ir>, 2017. +# Behrooz Kashani <bkashani@gmail.com>, 2018. +# Mahdi <sadisticwarlock@gmail.com>, 2018. +# hpn33 <hamed.hpn332@gmail.com>, 2019, 2020. +# Focus <saeeddashticlash@gmail.com>, 2019, 2020. +# mohamad por <mohamad24xx@gmail.com>, 2020. +# Tetra Homer <tetrahomer@gmail.com>, 2020. +# Farshad Faemiyi <ffaemiyi@gmail.com>, 2020. +# Pikhosh <pikhosh@gmail.com>, 2020. +# MSKF <walkingdeadstudio@outlook.com>, 2020. +# Ahmad Maftoun <CarCedo.Pro@gmail.com>, 2020. +# ItzMiad44909858f5774b6d <maidggg@gmail.com>, 2020. +# YASAN <yasandev@gmail.com>, 2021. +# duniyal ras <duniyalr@gmail.com>, 2021. +# عبدالرئوف عابدی <abdolraoofabedi@gmail.com>, 2021. +# Alireza Khodabande <alirezakhodabande74@gmail.com>, 2021. +# Seyed Fazel Alavi <fazel8195@gmail.com>, 2022. +# Giga hertz <gigahertzyt@gmail.com>, 2022. +# Aryan Azadeh <aryan@azadeh.email>, 2022. +# Mitsuha Miamizu <mitsuha.miamizu4444@gmail.com>, 2022. +# LordProfo <nimaentity30@gmail.com>, 2022. +# LordProfo (Nima) <nimaentity30@gmail.com>, 2022, 2023. +# John Smith <pkafsharix@gmail.com>, 2022. +# Ali Jafari <ali.jafari.sn@gmail.com>, 2022. +# Ali Almasi <A710almasi@gmail.com>, 2022. +# 2g.2d.2t <2g.2d.2t@gmail.com>, 2022. +# "LordProfo (Nima)" <nimaentity30@gmail.com>, 2023. +# behrooz bozorg chami <behroozbc@outlook.com>, 2023. +# mary karaby <karabymary@gmail.com>, 2023. +# M <bafandehmajid@gmail.com>, 2023. +msgid "" +msgstr "" +"Project-Id-Version: Godot Engine editor interface\n" +"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" +"POT-Creation-Date: \n" +"PO-Revision-Date: 2023-05-12 10:53+0000\n" +"Last-Translator: M <bafandehmajid@gmail.com>\n" +"Language-Team: Persian <https://hosted.weblate.org/projects/godot-engine/" +"godot/fa/>\n" +"Language: fa\n" +"MIME-Version: 1.0\n" +"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.18-dev\n" + +msgid "Unset" +msgstr "تنظیم نشده" + +msgid "Physical" +msgstr "فیزیکی" + +msgid "Left Mouse Button" +msgstr "دکمهٔ چپ ماوس" + +msgid "Right Mouse Button" +msgstr "دکمهٔ راست ماوس" + +msgid "Middle Mouse Button" +msgstr "دکمهٔ میانی ماوس" + +msgid "Mouse Wheel Up" +msgstr "غلطاندن به بالا ماوس" + +msgid "Mouse Wheel Down" +msgstr "غلطاندن به پایین ماوس" + +msgid "Button" +msgstr "دکمه" + +msgid "Double Click" +msgstr "دابل کلیک" + +msgid "Pressure:" +msgstr "فشار:" + +msgid "touched" +msgstr "لمس شده" + +msgid "released" +msgstr "رها شده" + +msgid "Accept" +msgstr "پذیرش" + +msgid "Select" +msgstr "انتخاب" + +msgid "Cancel" +msgstr "لغو" + +msgid "Left" +msgstr "چپ" + +msgid "Right" +msgstr "راست" + +msgid "Up" +msgstr "بالا" + +msgid "Down" +msgstr "پایین" + +msgid "Page Up" +msgstr "Page Up" + +msgid "Page Down" +msgstr "Page Down" + +msgid "Home" +msgstr "خانه" + +msgid "End" +msgstr "پایان" + +msgid "Cut" +msgstr "برش" + +msgid "Copy" +msgstr "کپی" + +msgid "Paste" +msgstr "چسباندن" + +msgid "Undo" +msgstr "عقبگرد" + +msgid "Redo" +msgstr "جلوگرد" + +msgid "New Line" +msgstr "خط جدید" + +msgid "New Blank Line" +msgstr "خط خالی جدید" + +msgid "Indent" +msgstr "تورفتگی" + +msgid "Delete" +msgstr "پاک" + +msgid "Delete Word" +msgstr "حذف کلمه" + +msgid "Scroll Up" +msgstr "اسکرول به بالا" + +msgid "Scroll Down" +msgstr "اسکرول به پایین" + +msgid "Select All" +msgstr "انتخاب همه" + +msgid "Duplicate Nodes" +msgstr "گرههای تکراری" + +msgid "Delete Nodes" +msgstr "حذف گرهها" + +msgid "Refresh" +msgstr "تازهسازی" + +msgid "Invalid input %d (not passed) in expression" +msgstr "ورودی نامعتبر %d (تایید نشده) در عبارت" + +msgid "self can't be used because instance is null (not passed)" +msgstr "از self نمیتوان استفاده کرد زیرا نمونه null است (مقدار نگرفته است)" + +msgid "Invalid operands to operator %s, %s and %s." +msgstr "عملوند های نامعتبر به عملگر %s, %s , %s." + +msgid "Invalid index of type %s for base type %s" +msgstr "نوع ایندکس %s برای نوع اصلی %s نامعتبر است" + +msgid "Invalid named index '%s' for base type %s" +msgstr "ایندکس اسمی '%s' برای نوع اصلی %s نامعتبر است" + +msgid "Invalid arguments to construct '%s'" +msgstr "آرگومان های نامعتبر برای ساخت '%s'" + +msgid "On call to '%s':" +msgstr "به هنگام فراخوان تابع '%s':" + +msgid "B" +msgstr "بایت" + +msgid "KiB" +msgstr "کیلوبایت" + +msgid "MiB" +msgstr "مگابایت" + +msgid "GiB" +msgstr "گیگابایت" + +msgid "TiB" +msgstr "ترابایت" + +msgid "PiB" +msgstr "پتابایت" + +msgid "EiB" +msgstr "اگزابایت" + +msgid "Example: %s" +msgstr "مثال: %s" + +msgid "%d item" +msgid_plural "%d items" +msgstr[0] "%d مورد" +msgstr[1] "%d مورد" + +msgid "Add Event" +msgstr "افزودن رویداد" + +msgid "Add" +msgstr "افزودن" + +msgid "Action" +msgstr "عمل" + +msgid "Time:" +msgstr "زمان:" + +msgid "Value:" +msgstr "مقدار:" + +msgid "Insert Key Here" +msgstr "کلید را اینجا وارد کنید" + +msgid "Duplicate Selected Key(s)" +msgstr "تکرار کلید(های) منتخب" + +msgid "Delete Selected Key(s)" +msgstr "حذف کلید(های) منتخب" + +msgid "Add Bezier Point" +msgstr "افزودن نقطه بِزیِر" + +msgid "Move Bezier Points" +msgstr "انتقال نقاط بِزیِر" + +msgid "Focus" +msgstr "تمرکز" + +msgid "Change Animation Length" +msgstr "تغییر طول انیمیشن" + +msgid "Change Animation Loop" +msgstr "تغییر حلقه(loop) انیمیشن" + +msgid "Property Track" +msgstr "ویژگی مسیر" + +msgid "Call Method Track" +msgstr "فراخوان تابع مسیر" + +msgid "Bezier Curve Track" +msgstr "مسیر منحنی Bezier" + +msgid "Audio Playback Track" +msgstr "مسیر Audio Playback" + +msgid "Animation Playback Track" +msgstr "مسیر پخش انیمیشن" + +msgid "Animation length (frames)" +msgstr "طول انیمیشن (فریم)" + +msgid "Animation length (seconds)" +msgstr "طول انیمیشن (ثانیه)" + +msgid "Add Track" +msgstr "افزودن ترک" + +msgid "Animation Looping" +msgstr "تکرار انیمیشن" + +msgid "Functions:" +msgstr "وظایف:" + +msgid "Audio Clips:" +msgstr "کلیپهای صوتی:" + +msgid "Change Track Path" +msgstr "تغییرمسیر ترک" + +msgid "Toggle this track on/off." +msgstr "دِگرحالتِ روشن/خاموش این قطعه." + +msgid "Update Mode (How this property is set)" +msgstr "حالت بهروزرسانی (نحوه تنظیم این ویژگی)" + +msgid "Interpolation Mode" +msgstr "حالت درونیابی" + +msgid "Loop Wrap Mode (Interpolate end with beginning on loop)" +msgstr "حالت بسته بندی حلقه (انتهای درون قطبی با شروع در حلقه)" + +msgid "Remove this track." +msgstr "این ترک را حذف کن." + +msgid "Time (s):" +msgstr "زمان:" + +msgid "Position:" +msgstr "موقعیت:" + +msgid "Rotation:" +msgstr "چرخش:" + +msgid "Scale:" +msgstr "مقیاس:" + +msgid "Type:" +msgstr "نوع:" + +msgid "(Invalid, expected type: %s)" +msgstr "(نامعتبر, نوع مورد انتظار: %s)" + +msgid "Easing:" +msgstr "تسهیل:" + +msgid "Stream:" +msgstr "استریم" + +msgid "Start (s):" +msgstr "شروع:" + +msgid "End (s):" +msgstr "پایان(ها):" + +msgid "Animation Clip:" +msgstr "کلیپ انیمیشن:" + +msgid "Toggle Track Enabled" +msgstr "ضامن ترک فعال است" + +msgid "Continuous" +msgstr "مستمر" + +msgid "Discrete" +msgstr "گسسته" + +msgid "Capture" +msgstr "گرفتن" + +msgid "Nearest" +msgstr "نزدیکترین" + +msgid "Linear" +msgstr "خطی" + +msgid "Cubic" +msgstr "مکعب" + +msgid "Clamp Loop Interp" +msgstr "رابط گره حلقه(Loop)" + +msgid "Wrap Loop Interp" +msgstr "رابط پوشش حلقه" + +msgid "Insert Key" +msgstr "درج کلید" + +msgid "Duplicate Key(s)" +msgstr "تکرار کلید(ها)" + +msgid "Add RESET Value(s)" +msgstr "اضافه کردن مقدار(های) ریست" + +msgid "Delete Key(s)" +msgstr "حذف کلید(ها)" + +msgid "Change Animation Update Mode" +msgstr "تغییر حالت بروزرسانی انیمیشن" + +msgid "Change Animation Interpolation Mode" +msgstr "تغییر حالت درون یابی (Interpolation) انیمیشن" + +msgid "Change Animation Loop Mode" +msgstr "تغییر حالت تکرار (Loop) انیمیشن" + +msgid "Remove Anim Track" +msgstr "حذف ترک انیمشین" + +msgid "Create" +msgstr "ایجاد کردن" + +msgid "node '%s'" +msgstr "گره '%s'" + +msgid "animation" +msgstr "انیمیشن" + +msgid "AnimationPlayer can't animate itself, only other players." +msgstr "انیمیشن پلیر نمی تواند خود را انیمیت کند. فقط پلیر دیگر." + +msgid "property '%s'" +msgstr "ویژگی '%s'" + +msgid "Change Animation Step" +msgstr "تغییر گام(Step)انیمیشن" + +msgid "Rearrange Tracks" +msgstr "تنظیم مجدد مسیر" + +msgid "" +"Audio tracks can only point to nodes of type:\n" +"-AudioStreamPlayer\n" +"-AudioStreamPlayer2D\n" +"-AudioStreamPlayer3D" +msgstr "" +"آهنگهای صوتی فقط میتوانند به گرههای نوع (nodes) اشاره کنند:\n" +"-AudioStreamPlayer\n" +"-AudioStreamPlayer2D\n" +"-AudioStreamPlayer3D" + +msgid "Animation tracks can only point to AnimationPlayer nodes." +msgstr "آهنگهای انیمیشن فقط میتوانند به گرههای انیمیشن پلیر اشاره کنند." + +msgid "Not possible to add a new track without a root" +msgstr "بدون ریشه اضافه کردن مسیر امکان پذیر نیست" + +msgid "Invalid track for Bezier (no suitable sub-properties)" +msgstr "مسیر نامعتبر برای Bezier ( زیر-خواص نامناسب)" + +msgid "Add Bezier Track" +msgstr "افزودن مسیر Bezier" + +msgid "Track path is invalid, so can't add a key." +msgstr "مسیر قطعه نامعتبر، پس نمیتوان یک کلید به آن افزود." + +msgid "Add Track Key" +msgstr "افزودن کلید ترک" + +msgid "Track path is invalid, so can't add a method key." +msgstr "مسیر نامعتبر است ، بنابراین نمی توانید یک کلید روش اضافه کنید." + +msgid "Add Method Track Key" +msgstr "افزودن تابع کلید میسر" + +msgid "Method not found in object:" +msgstr "تابع در آبجکت یافت نشد:" + +msgid "Position" +msgstr "موقعیت" + +msgid "Rotation" +msgstr "چرخش" + +msgid "Scale" +msgstr "مقیاس" + +msgid "Methods" +msgstr "روشها" + +msgid "Bezier" +msgstr "بزیه" + +msgid "Audio" +msgstr "صدا" + +msgid "Clipboard is empty!" +msgstr "حافظه پنهان خالی است!" + +msgid "Paste Tracks" +msgstr "جاگذاری مسیر ها" + +msgid "" +"This option does not work for Bezier editing, as it's only a single track." +msgstr "این گزینه برای اصلاح بِزیِر کار نمی کند, چون تنها یک مسیر واحد است." + +msgid "Warning: Editing imported animation" +msgstr "هشدار: در حال ویرایش انیمیشن وارد شده" + +msgid "Select an AnimationPlayer node to create and edit animations." +msgstr "یک گره AnimationPlayer را برای ایجاد و ویرایش انیمیشن ها برگزینید." + +msgid "Only show tracks from nodes selected in tree." +msgstr "فقط مسیرهای از گره های انتخاب شده در درخت نشان داده شود." + +msgid "Group tracks by node or display them as plain list." +msgstr "" +"مسیرها را بر اساس گره گروهبندی کنید یا آنها را به عنوان لیست ساده نمایش دهید." + +msgid "Snap:" +msgstr "چفت:" + +msgid "Animation step value." +msgstr "مقدار مرحله انیمیشن." + +msgid "Seconds" +msgstr "ثانیه ها" + +msgid "FPS" +msgstr "لحظه بر ثانیه" + +msgid "Edit" +msgstr "ویرایش" + +msgid "Animation properties." +msgstr "خصوصیات انیمیشن." + +msgid "Copy Tracks" +msgstr "کپی میسر ها" + +msgid "Scale Selection" +msgstr "انتخاب شده را تغییر مقیاس بده" + +msgid "Scale From Cursor" +msgstr "از مکاننما تغییر مقیاس بده" + +msgid "Duplicate Selection" +msgstr "تکثیر برگزیده" + +msgid "Duplicate Transposed" +msgstr "تکثیر جابجایی" + +msgid "Delete Selection" +msgstr "حذف برگزیده" + +msgid "Go to Next Step" +msgstr "برو به گام بعد" + +msgid "Go to Previous Step" +msgstr "برو به گام پیشین" + +msgid "Apply Reset" +msgstr "بازنشانی را اعمال کنید" + +msgid "Use Bezier Curves" +msgstr "بکارگیری منحنی بِزیِر" + +msgid "Create RESET Track(s)" +msgstr "ایجاد آهنگ (های) بازنشانی" + +msgid "Optimize" +msgstr "بهینهسازی کن" + +msgid "Remove invalid keys" +msgstr "کلیدهای نامعتبر را حذف کن" + +msgid "Remove unresolved and empty tracks" +msgstr "ترکهای حل نشده و خالی را حذف کن" + +msgid "Clean-up all animations" +msgstr "تمام انیمیشنها را پاکسازی کن" + +msgid "Clean-Up Animation(s) (NO UNDO!)" +msgstr "انیمیشن(ها) را پاکسازی کن (نه UNDO !)" + +msgid "Clean-Up" +msgstr "پاکسازی" + +msgid "Scale Ratio:" +msgstr "نسبت تغییر مقیاس:" + +msgid "Select Tracks to Copy" +msgstr "انتخاب میسرها جهت تکثیر" + +msgid "Select All/None" +msgstr "انتخاب همه/هیچ" + +msgid "Add Audio Track Clip" +msgstr "افزودن کلیپ آهنگ صوتی" + +msgid "Change Audio Track Clip Start Offset" +msgstr "تغییر افکت شروع کلیپ آهنگ صوتی" + +msgid "Change Audio Track Clip End Offset" +msgstr "تغییر افست انتهای کلیپ آهنگ صوتی" + +msgid "Go to Line" +msgstr "برو به خط" + +msgid "Line Number:" +msgstr "شماره خط:" + +msgid "%d replaced." +msgstr "%d جایگزین شده." + +msgid "Match Case" +msgstr "بین حروف کوچک و بزرگ لاتین تمایز قائل شو" + +msgid "Whole Words" +msgstr "عین کلمات (بدون هیچ کم و کاستی)" + +msgid "Replace" +msgstr "جایگزینی" + +msgid "Replace All" +msgstr "جایگزینی همه" + +msgid "Selection Only" +msgstr "تنها در قسمت انتخاب شده" + +msgid "Toggle Scripts Panel" +msgstr "تغییر پانل اسکریپت ها" + +msgid "Zoom In" +msgstr "بزرگنمایی" + +msgid "Zoom Out" +msgstr "کوچکنمایی" + +msgid "Reset Zoom" +msgstr "بازنشانی مقیاس" + +msgid "Errors" +msgstr "خطاها" + +msgid "Warnings" +msgstr "هشدارها" + +msgid "Line and column numbers." +msgstr "شماره های خط و ستون." + +msgid "Method in target node must be specified." +msgstr "تابع در گره مقصد باید مشخص شده باشد." + +msgid "Method name must be a valid identifier." +msgstr "اسم تابع باید یک شناسهی معتبر باشد." + +msgid "" +"Target method not found. Specify a valid method or attach a script to the " +"target node." +msgstr "" +"متد هدف پیدا نشد. یک تابع معتبر تعیین کنید یا یک اسکریپت به گره هدف وصل کنید." + +msgid "Connect to Node:" +msgstr "اتصال به گره:" + +msgid "Connect to Script:" +msgstr "اتصال به اسکریپت:" + +msgid "From Signal:" +msgstr "از سیگنال:" + +msgid "Scene does not contain any script." +msgstr "صحنه شامل هیچ فیلم نامه ای نیست." + +msgid "Select Method" +msgstr "حالت انتخاب" + +msgid "Remove" +msgstr "برداشتن" + +msgid "Add Extra Call Argument:" +msgstr "آرگومان اضافی فراخوانی را اضافه کن:" + +msgid "Extra Call Arguments:" +msgstr "آرگومانهای اضافی فراخوانی:" + +msgid "Receiver Method:" +msgstr "روش گیرنده:" + +msgid "Advanced" +msgstr "پیشرفته" + +msgid "Deferred" +msgstr "به تعویق افتاده" + +msgid "" +"Defers the signal, storing it in a queue and only firing it at idle time." +msgstr "" +"سیگنال را تعویض می کند ، آن را در یک صف ذخیره می کند و فقط در زمان بیکاری " +"شلیک می کند." + +msgid "Disconnects the signal after its first emission." +msgstr "سیگنال را پس از اولین انتشار آن قطع می کند." + +msgid "Cannot connect signal" +msgstr "نمی توان سیگنال را متصل کرد" + +msgid "Close" +msgstr "بستن" + +msgid "Connect" +msgstr "اتصال" + +msgid "Signal:" +msgstr "سیگنال:" + +msgid "Connect '%s' to '%s'" +msgstr "'%s' را به '%s' متصل کن" + +msgid "Disconnect '%s' from '%s'" +msgstr "'%s' را از '%s' جدا کن" + +msgid "Disconnect all from signal: '%s'" +msgstr "جدا کردن همه از سیگنال: '%s'" + +msgid "Connect..." +msgstr "در حال اتصال..." + +msgid "Disconnect" +msgstr "عدم اتصال" + +msgid "Connect a Signal to a Method" +msgstr "وصل یک سیگنال به یک تابع" + +msgid "Are you sure you want to remove all connections from the \"%s\" signal?" +msgstr "" +"آیا مطمئن هستید که می خواهید همه اتصالات را از سیگنال \"٪ s\" حذف کنید؟" + +msgid "Signals" +msgstr "سیگنال ها" + +msgid "Are you sure you want to remove all connections from this signal?" +msgstr "آیا مطمئن هستید که می خواهید همه اتصالات را از این سیگنال حذف کنید؟" + +msgid "Disconnect All" +msgstr "جدا کردن همه" + +msgid "Edit..." +msgstr "ویرایش..." + +msgid "Change" +msgstr "تغییر بده" + +msgid "Create New %s" +msgstr "ساختن %s جدید" + +msgid "No results for \"%s\"." +msgstr "هیچ نتیجه ای برای \"%s\" وجود ندارد." + +msgid "No description available for %s." +msgstr "توضیحی برای٪ s در دسترس نیست." + +msgid "Favorites:" +msgstr "برگزیدهها:" + +msgid "Recent:" +msgstr "اخیر:" + +msgid "Search:" +msgstr "جستجو:" + +msgid "Matches:" +msgstr "تطبیقها:" + +msgid "Description:" +msgstr "توضیح:" + +msgid "Debugger" +msgstr "دیباگِر" + +msgid "Debug" +msgstr "اشکال یابی" + +msgid "Save Branch as Scene" +msgstr "ذخیرهٔ شاخه به عنوان صحنه" + +msgid "Copy Node Path" +msgstr "کپی کردن مسیر node" + +msgid "Monitors" +msgstr "مانیتورها" + +msgid "Monitor" +msgstr "مانیتور" + +msgid "Value" +msgstr "مقدار" + +msgid "Stop" +msgstr "توقف" + +msgid "Start" +msgstr "شروع" + +msgid "Clear" +msgstr "پاک کردن" + +msgid "Measure:" +msgstr "اندازه گیری:" + +msgid "Average Time (ms)" +msgstr "زمان متوسط (میلیثانیه)" + +msgid "Frame %" +msgstr "فریم %" + +msgid "Self" +msgstr "خود" + +msgid "Frame #:" +msgstr "فریم #:" + +msgid "Name" +msgstr "نام" + +msgid "Time" +msgstr "زمان" + +msgid "Bytes:" +msgstr "بایتها:" + +msgid "Warning:" +msgstr "هشدار:" + +msgid "Copy Error" +msgstr "خطای کپی" + +msgid "Continue" +msgstr "ادامه" + +msgid "Collapse All" +msgstr "بستن همه" + +msgid "Profiler" +msgstr "پروفایلر" + +msgid "Total:" +msgstr "کل:" + +msgid "Type" +msgstr "تایپ" + +msgid "Format" +msgstr "قالب" + +msgid "Usage" +msgstr "کاربرد:" + +msgid "Misc" +msgstr "متفرقه" + +msgid "Search Replacement For:" +msgstr "جستجوی جایگزین برای:" + +msgid "Dependencies For:" +msgstr "بستگیها برای:" + +msgid "" +"Scene '%s' is currently being edited.\n" +"Changes will only take effect when reloaded." +msgstr "" +"ویرایش صحنه '%s' شروع شده است.\n" +"تغییرات تنها وقتی جلوه گرند که از نو بارگیری شوند." + +msgid "" +"Resource '%s' is in use.\n" +"Changes will only take effect when reloaded." +msgstr "" +"منابع '%s' بکار رفتهاند.\n" +"تغییرات تنها وقتی جلوه گرند که از نو بارگیری شوند." + +msgid "Dependencies" +msgstr "بستگیها" + +msgid "Resource" +msgstr "منبع" + +msgid "Path" +msgstr "آدرس" + +msgid "Dependencies:" +msgstr "بستگیها:" + +msgid "Fix Broken" +msgstr "(بستگی) معیوب را تعمیر کن" + +msgid "Dependency Editor" +msgstr "ویرایشگر بستگی" + +msgid "Search Replacement Resource:" +msgstr "منبع جایگزینی را جستجو کن:" + +msgid "Open Scene" +msgstr "باز کردن صحنه" + +msgid "Open Scenes" +msgstr "باز کردن صحنهها" + +msgid "" +"Remove the selected files from the project? (Cannot be undone.)\n" +"Depending on your filesystem configuration, the files will either be moved " +"to the system trash or deleted permanently." +msgstr "" +"فایلهای انتخابی از پروژه حذف شوند؟ (قابل برگشت نیست.)\n" +"بسته به پیکربندی سیستم فایل شما ، فایل ها یا به سطل زباله سیستم منتقل می " +"شوند و یا برای همیشه حذف می شوند." + +msgid "" +"The files being removed are required by other resources in order for them to " +"work.\n" +"Remove them anyway? (Cannot be undone.)\n" +"Depending on your filesystem configuration, the files will either be moved " +"to the system trash or deleted permanently." +msgstr "" +"فایل های در حال حذف توسط منابع دیگر مورد نیاز است تا بتوانند کار کنند.\n" +"به هر حال آنها را حذف کنم؟ (قابل واگرد نیست.)\n" +"بسته به پیکربندی سیستم فایل شما ، فایل ها یا به سطل زباله سیستم منتقل می " +"شوند و یا برای همیشه حذف می شوند." + +msgid "Cannot remove:" +msgstr "امکان حذف وجود ندارد :" + +msgid "Error loading:" +msgstr "خطا در بارگذاری:" + +msgid "Load failed due to missing dependencies:" +msgstr "به دلیل مفقود شدن وابستگیها بارگیری انجام نشد:" + +msgid "Open Anyway" +msgstr "در هر صورت باز کن" + +msgid "Which action should be taken?" +msgstr "کدام عمل باید اجرا شود؟" + +msgid "Fix Dependencies" +msgstr "بستگیها را تعمیر کن" + +msgid "Errors loading!" +msgstr "خطا در بارگذاری!" + +msgid "Permanently delete %d item(s)? (No undo!)" +msgstr "به طور دائمی تعداد '%d' آیتم را حذف کند؟ (بدون undo !)" + +msgid "Show Dependencies" +msgstr "نمایش وابستگیها" + +msgid "Orphan Resource Explorer" +msgstr "پویندهی منبع جدا افتاده" + +msgid "Owns" +msgstr "اموال" + +msgid "Resources Without Explicit Ownership:" +msgstr "منابع بدون مالکیت صریح:" + +msgid "Thanks from the Godot community!" +msgstr "با تشکر از سوی جامعهی Godot!" + +msgid "Click to copy." +msgstr "برای کپی کردن کلیک کنید." + +msgid "Godot Engine contributors" +msgstr "شرکتکنندگان در ساخت موتور Godot" + +msgid "Project Founders" +msgstr "بنیانگذاران پروژه" + +msgid "Lead Developer" +msgstr "توسعهدهندهی اصلی" + +msgid "Developers" +msgstr "توسعه دهندگان" + +msgid "Authors" +msgstr "مؤلفان" + +msgid "Platinum Sponsors" +msgstr "حامیان سطح platinum" + +msgid "Gold Sponsors" +msgstr "حامیان طلایی (درجه ۲)" + +msgid "Silver Sponsors" +msgstr "حامیان نقره ای" + +msgid "Bronze Sponsors" +msgstr "اهداکنندگان برنزیحامیان مالی" + +msgid "Mini Sponsors" +msgstr "حامیان سطح Mini" + +msgid "Gold Donors" +msgstr "اهداکنندگان طلایی" + +msgid "Silver Donors" +msgstr "اهداکنندگان نقرهای" + +msgid "Bronze Donors" +msgstr "اهداکنندگان برنزی" + +msgid "Donors" +msgstr "اهدا کنندگان" + +msgid "License" +msgstr "مجوز" + +msgid "Third-party Licenses" +msgstr "مجوز های شخص-ثالث" + +msgid "" +"Godot Engine relies on a number of third-party free and open source " +"libraries, all compatible with the terms of its MIT license. The following " +"is an exhaustive list of all such third-party components with their " +"respective copyright statements and license terms." +msgstr "" +"Godot Engine به تعدادی از کتابخانه های منبع باز و شخص-ثالث رایگان متکی است " +"که همگی با شرایط مجوز MIT سازگار هستند. در زیر لیستی جامع از کلیه مؤلفه های " +"شخص ثالث با بیانیه های حق کپی برداری مربوطه و شرایط مجوز آنها قرار دارد." + +msgid "All Components" +msgstr "همه اجزا" + +msgid "Components" +msgstr "اجزا" + +msgid "Licenses" +msgstr "گواهینامه" + +msgid "Error opening asset file for \"%s\" (not in ZIP format)." +msgstr "خطا در بازکردن فایل برای \"%s\" (فرمت ZIP نمیباشد)." + +msgid "%s (already exists)" +msgstr "\"%s\" (در حال حاضر موجود است)" + +msgid "Contents of asset \"%s\" - %d file(s) conflict with your project:" +msgstr "محتوای دارایی \"%s\" - %d فایل(ها) با پروژه شما تضاد دارد:" + +msgid "Contents of asset \"%s\" - No files conflict with your project:" +msgstr "محتویات دارایی \"%s\" - هیچ فایلی با پروژه شما مغایرت ندارد:" + +msgid "Uncompressing Assets" +msgstr "فشرده نشدن اَسِت ها" + +msgid "The following files failed extraction from asset \"%s\":" +msgstr "فایلهای زیر از دارایی \"%s\" استخراج نشدند:" + +msgid "(and %s more files)" +msgstr "(و %s دیگر فایل ها)" + +msgid "Asset \"%s\" installed successfully!" +msgstr "دارایی \"%s\" با موفقیت نصب شد!" + +msgid "Success!" +msgstr "موفقیت!" + +msgid "Install" +msgstr "نصب کردن" + +msgid "Asset Installer" +msgstr "نصب کننده دارایی" + +msgid "Speakers" +msgstr "بلندگوها" + +msgid "Add Effect" +msgstr "افزودن جلوه" + +msgid "Rename Audio Bus" +msgstr "تغییر نام صوت گذرا" + +msgid "Change Audio Bus Volume" +msgstr "تغییر مقدار صدای خطی" + +msgid "Toggle Audio Bus Solo" +msgstr "دِگرحالتِ صدای تکی خطی" + +msgid "Toggle Audio Bus Mute" +msgstr "دِگرحالتِ صدای سکوت خطی" + +msgid "Toggle Audio Bus Bypass Effects" +msgstr "دِگرحالتِ صدای جلوه های میان بر خطی" + +msgid "Select Audio Bus Send" +msgstr "انتخاب صدای ارسال گذرا" + +msgid "Add Audio Bus Effect" +msgstr "افزودن صدای جلوه خطی" + +msgid "Move Bus Effect" +msgstr "انتقال جلوه خطی" + +msgid "Delete Bus Effect" +msgstr "حذف جلوه خطی" + +msgid "Drag & drop to rearrange." +msgstr "برای چینش مجدد، بکشید و رها کنید." + +msgid "Solo" +msgstr "انفرادی" + +msgid "Mute" +msgstr "بدون صدا" + +msgid "Bypass" +msgstr "گذرگاه فرعی" + +msgid "Bus Options" +msgstr "گزینه های اتوبوس" + +msgid "Reset Volume" +msgstr "بازنشانی حجم" + +msgid "Delete Effect" +msgstr "حذف جلوه" + +msgid "Add Audio Bus" +msgstr "افزودن کانل صوتی" + +msgid "Master bus can't be deleted!" +msgstr "گذرگاه اصلی قابل حذف نیست!" + +msgid "Delete Audio Bus" +msgstr "حذف صدای خطی" + +msgid "Duplicate Audio Bus" +msgstr "تکثیر صدای خطی" + +msgid "Reset Bus Volume" +msgstr "بازنشانی مقدار خطی" + +msgid "Move Audio Bus" +msgstr "انتقال صدای خطی" + +msgid "Save Audio Bus Layout As..." +msgstr "ذخیره طرح اتوبوس صوتی به عنوان ..." + +msgid "Location for New Layout..." +msgstr "مکان برای طرح جدید ..." + +msgid "Open Audio Bus Layout" +msgstr "چیدمان اتوبوس صوتی را باز کنید" + +msgid "There is no '%s' file." +msgstr "پرونده '٪ s' وجود ندارد." + +msgid "Invalid file, not an audio bus layout." +msgstr "پرونده نامعتبر است ، نه طرح اتوبوس صوتی." + +msgid "Error saving file: %s" +msgstr "خطای ذخیره کردن پرونده: %s" + +msgid "Add Bus" +msgstr "اتوبوس اضافه کنید" + +msgid "Add a new Audio Bus to this layout." +msgstr "یک Audio Bus جدید به این طرح اضافه کنید." + +msgid "Load" +msgstr "بارگیری" + +msgid "Load an existing Bus Layout." +msgstr "چیدمان اتوبوس موجود را بارگیری کنید." + +msgid "Save As" +msgstr "ذخیره در" + +msgid "Save this Bus Layout to a file." +msgstr "این طرح Bus را در یک پرونده ذخیره کنید." + +msgid "Load Default" +msgstr "بارگیری پیش فرض" + +msgid "Load the default Bus Layout." +msgstr "طرح پیش فرض اتوبوس را بارگیری کنید." + +msgid "Create a new Bus Layout." +msgstr "طرح جدید اتوبوس ایجاد کنید." + +msgid "Invalid name." +msgstr "نام نامعتبر." + +msgid "Cannot begin with a digit." +msgstr "نمی توان با یک رقم شروع کرد." + +msgid "Valid characters:" +msgstr "کاراکترهای معتبر:" + +msgid "Must not collide with an existing engine class name." +msgstr "نباید با یک نام کلاس موتور موجود برخورد کند." + +msgid "Must not collide with an existing built-in type name." +msgstr "نباید با یک نام نوع درون-ساز موجود برخورد کند." + +msgid "Must not collide with an existing global constant name." +msgstr "نباید با نام یک ثابت سراسری موجود برخوردی کند." + +msgid "Autoload '%s' already exists!" +msgstr "بارگذاری خودکار '%s' هم اکنون موجود است!" + +msgid "Rename Autoload" +msgstr "بارگذاری خودکار را تغییر نام بده" + +msgid "Move Autoload" +msgstr "بارگیری خودکار را انجام دهید" + +msgid "Remove Autoload" +msgstr "بارگیری خودکار را حذف کنید" + +msgid "Enable" +msgstr "روشن" + +msgid "Rearrange Autoloads" +msgstr "تنظیم مجدد بارهای خودکار" + +msgid "%s is an invalid path. File does not exist." +msgstr "%s یک مسیر نامعتبر است. فایل موجود نمیباشد." + +msgid "%s is an invalid path. Not in resource path (res://)." +msgstr "%s یک مسیر نامعتبر است. در مسیر منبع نیست (//:res)." + +msgid "Path:" +msgstr "مسیر:" + +msgid "Node Name:" +msgstr "نام گره:" + +msgid "Global Variable" +msgstr "متغیر عمومی" + +msgid "Navigation" +msgstr "جهتیابی" + +msgid "Vulkan" +msgstr "Vulkan" + +msgid "Nodes and Classes:" +msgstr "نودها (Nodes) و کلاسها:" + +msgid "File '%s' format is invalid, import aborted." +msgstr "فرمت فایل '%s' نامعتبر است، وارد کردن متوقف شد." + +msgid "Error saving profile to path: '%s'." +msgstr "خطای ذخیره نمایه در مسیر: '%s'." + +msgid "New" +msgstr "جدید" + +msgid "Save" +msgstr "ذخیره" + +msgid "Export Profile" +msgstr "صادر کردن نمایه" + +msgid "Paste Params" +msgstr "چسباندن پارام ها" + +msgid "Updating Scene" +msgstr "صحنه به روز می شود" + +msgid "Storing local changes..." +msgstr "ذخیره تغییرات محلی ..." + +msgid "Updating scene..." +msgstr "صحنه به روز می شود ..." + +msgid "[empty]" +msgstr "[پوچ]" + +msgid "[unsaved]" +msgstr "[ذخیره نشده]" + +msgid "Please select a base directory first." +msgstr "لطفاً ابتدا دایرکتوری پایه را انتخاب کنید." + +msgid "Choose a Directory" +msgstr "یک فهرست انتخاب کنید" + +msgid "Create Folder" +msgstr "ایجاد پوشه" + +msgid "Name:" +msgstr "نام:" + +msgid "Could not create folder." +msgstr "ناتوان در ساختن پوشه." + +msgid "Choose" +msgstr "انتخاب کنید" + +msgid "3D Editor" +msgstr "ویرایشگر ۳بعدی" + +msgid "Script Editor" +msgstr "ویرایشگر اسکریپت" + +msgid "Asset Library" +msgstr "کتابخانه دارایی" + +msgid "Scene Tree Editing" +msgstr "ویرایش درخت صحنه" + +msgid "Node Dock" +msgstr "لنگرگاه گره:" + +msgid "FileSystem Dock" +msgstr "قایلسیستم داک" + +msgid "Import Dock" +msgstr "وارد کردن لنگرگاه" + +msgid "Allows to view and edit 3D scenes." +msgstr "اجازه دیدن و ویرایش صحنه های ۳ بعدی را میدهد." + +msgid "Allows to edit scripts using the integrated script editor." +msgstr "اجازهٔ ویرایش اسکریپتها با استفاده از ویرایشگر اسکریپت داخلی را میدهد." + +msgid "Provides built-in access to the Asset Library." +msgstr "دسترسی داخلی به کتابخانهٔ دارایی را فراهم میکند." + +msgid "" +"Allows to work with signals and groups of the node selected in the Scene " +"dock." +msgstr "" +"به کار کردن با سیگنال ها و گروه ها ی گره انتخاب شده از داک صحنه اجازه میدهد." + +msgid "Allows to browse the local file system via a dedicated dock." +msgstr "به مرور سیستم فایل محلی از طریق یک داک اختصاصی اجازه می دهد." + +msgid "" +"Allows to configure import settings for individual assets. Requires the " +"FileSystem dock to function." +msgstr "" +"به پیکربندی تنظیمات Import برای دارایی های فردی اجازه می دهد. برای عملکرد به " +"داک FileSystem نیاز دارد." + +msgid "(current)" +msgstr "(کنونی)" + +msgid "(none)" +msgstr "(هیچ)" + +msgid "Remove currently selected profile, '%s'? Cannot be undone." +msgstr "نمایه انتخابی فعلی، '%s' حذف شود؟ قابل واگرد نیست." + +msgid "Profile must be a valid filename and must not contain '.'" +msgstr "پروفایل باید یک نام فایل معتبر باشد و نباید حاوی «.» باشد" + +msgid "Profile with this name already exists." +msgstr "نمایه با این نام در حال حاضر وجود دارد." + +msgid "(Editor Disabled, Properties Disabled)" +msgstr "(ویرایشگر غیرفعال است، ویژگیها غیرفعال است)" + +msgid "(Properties Disabled)" +msgstr "(خصوصیات غیرفعال شده)" + +msgid "(Editor Disabled)" +msgstr "(ویرایشگر غیرفعال شده)" + +msgid "Class Options:" +msgstr "گزینههای کلاس:" + +msgid "Enable Contextual Editor" +msgstr "فعال کردن ویرایشگر متنی" + +msgid "Class Properties:" +msgstr "داراییهای کلاس:" + +msgid "Main Features:" +msgstr "ویژگیهای اصلی:" + +msgid "" +"Profile '%s' already exists. Remove it first before importing, import " +"aborted." +msgstr "" +"پروفایل '%s' از قبل وجود دارد. قبل از وارد کردن، ابتدا آن را حذف کنید، وارد " +"کردن متوقف شد." + +msgid "Reset to Default" +msgstr "بازنشانی به پیشفرض" + +msgid "Current Profile:" +msgstr "نمایه موجود:" + +msgid "Create Profile" +msgstr "ایجاد پروفایل" + +msgid "Remove Profile" +msgstr "حذف پروفایل" + +msgid "Available Profiles:" +msgstr "نمایههای موجود:" + +msgid "Make Current" +msgstr "ساختن جریان" + +msgid "Import" +msgstr "وارد کردن" + +msgid "Export" +msgstr "خروجی" + +msgid "Configure Selected Profile:" +msgstr "پیکربندی پروفایل انتخاب شده:" + +msgid "Extra Options:" +msgstr "گزینههای اضافی:" + +msgid "Create or import a profile to edit available classes and properties." +msgstr "یک پروفایل برای ویرایش کلاسها و ویژگیهای موجود ایجاد یا وارد کنید." + +msgid "New profile name:" +msgstr "نام نمایه جدید:" + +msgid "Godot Feature Profile" +msgstr "ویژگی نمایه Godot" + +msgid "Import Profile(s)" +msgstr "وارد کردن نمایه(ها)" + +msgid "Manage Editor Feature Profiles" +msgstr "مدیریت ویژگی نمایههای ویرایشگر" + +msgid "Network" +msgstr "شبکه" + +msgid "Open" +msgstr "باز کن" + +msgid "Select Current Folder" +msgstr "برگزیدن پوشه موجود" + +msgid "Select This Folder" +msgstr "برگزیدن این پوشه" + +msgid "Copy Path" +msgstr "کپی کردن مسیر" + +msgid "Open in File Manager" +msgstr "گشودن در مدیر پرونده" + +msgid "Show in File Manager" +msgstr "نمایش فایل داخلی مرجع" + +msgid "New Folder..." +msgstr "ساختن پوشه..." + +msgid "All Recognized" +msgstr "همه ی موارد شناخته شده اند" + +msgid "All Files (*)" +msgstr "همهٔ پروندهها (*)" + +msgid "Open a File" +msgstr "یک پرونده را باز کن" + +msgid "Open File(s)" +msgstr "پرونده(ها) را باز کن" + +msgid "Open a Directory" +msgstr "یک دیکشنری را باز کن" + +msgid "Open a File or Directory" +msgstr "یک پرونده یا پوشه را باز کن" + +msgid "Save a File" +msgstr "یک پرونده را ذخیره کن" + +msgid "Go Back" +msgstr "به عقب بازگردید" + +msgid "Go Forward" +msgstr "جلو بروید" + +msgid "Go Up" +msgstr "بالا بروید" + +msgid "Toggle Hidden Files" +msgstr "تغییر فایلهای پنهان" + +msgid "Toggle Favorite" +msgstr "تغییر موارد دلخواه" + +msgid "Toggle Mode" +msgstr "تغییر حالت" + +msgid "Focus Path" +msgstr "مسیر تمرکز" + +msgid "Move Favorite Up" +msgstr "انتقال موارد دلخواه به بالا" + +msgid "Move Favorite Down" +msgstr "انتقال موارد دلخواه به پایین" + +msgid "Go to previous folder." +msgstr "برو به پوشه پیشین." + +msgid "Go to next folder." +msgstr "برو به پوشه بعد." + +msgid "Go to parent folder." +msgstr "برو به پوشه والد." + +msgid "Refresh files." +msgstr "نوسازی پروندهها." + +msgid "(Un)favorite current folder." +msgstr "پوشه موجود (غیر)محبوب." + +msgid "Toggle the visibility of hidden files." +msgstr "تغییر پدیدار بودن فایلهای مخفی شده." + +msgid "View items as a grid of thumbnails." +msgstr "دیدن موارد به صورت جدولی از پیشنمایشها." + +msgid "View items as a list." +msgstr "مشاهده موارد به عنوان فهرست." + +msgid "Directories & Files:" +msgstr "پوشهها و پروندهها:" + +msgid "Preview:" +msgstr "پیشنمایش:" + +msgid "File:" +msgstr "پرونده:" + +msgid "Restart" +msgstr "راهاندازی مجدد" + +msgid "Save & Restart" +msgstr "ذخیره و راهاندازی مجدد" + +msgid "ScanSources" +msgstr "منابعاسکن" + +msgid "" +"There are multiple importers for different types pointing to file %s, import " +"aborted" +msgstr "" +"چندین واردکننده برای انواع مختلف وجود دارد که به فایل %s اشاره میکنند، وارد " +"کردن لغو شد" + +msgid "(Re)Importing Assets" +msgstr "(در حال) وارد کردن دوباره عست ها" + +msgid "Top" +msgstr "بالا" + +msgid "Class:" +msgstr "کلاس:" + +msgid "Inherits:" +msgstr "ارث میبرد از:" + +msgid "Inherited by:" +msgstr "به ارث رسیده به وسیله:" + +msgid "Description" +msgstr "تعریف" + +msgid "Online Tutorials" +msgstr "آموزشهای آنلاین" + +msgid "Properties" +msgstr "خصوصیات" + +msgid "overrides %s:" +msgstr "%s را لغو می کند:" + +msgid "default:" +msgstr "پیش فرض:" + +msgid "Operators" +msgstr "عملگر ها" + +msgid "Theme Properties" +msgstr "خصوصیات زمینه" + +msgid "Colors" +msgstr "رنگها" + +msgid "Constants" +msgstr "ثابتها" + +msgid "Fonts" +msgstr "فونتها" + +msgid "Icons" +msgstr "آیکونها" + +msgid "Styles" +msgstr "استایلها" + +msgid "Enumerations" +msgstr "شمارشها" + +msgid "Property Descriptions" +msgstr "توضیحات خصیصه" + +msgid "(value)" +msgstr "(مقدار)" + +msgid "Method Descriptions" +msgstr "توضیحات تابع" + +msgid "%d match." +msgstr "%d منطبق." + +msgid "%d matches." +msgstr "%d همخوانی." + +msgid "Search Help" +msgstr "جستجوی راهنما" + +msgid "Case Sensitive" +msgstr "حساس به حروف کوچک و بزرگ" + +msgid "Show Hierarchy" +msgstr "نمایش سلسلهمراتب" + +msgid "Display All" +msgstr "نشان دادن همه" + +msgid "Classes Only" +msgstr "تنها کلاسها" + +msgid "Methods Only" +msgstr "تنها روشها" + +msgid "Signals Only" +msgstr "تنها سیگنالها" + +msgid "Constants Only" +msgstr "تنها ثوابت" + +msgid "Properties Only" +msgstr "تنها خصوصیات" + +msgid "Theme Properties Only" +msgstr "تنها خصوصیات زمینه" + +msgid "Member Type" +msgstr "نوع عضو" + +msgid "Class" +msgstr "کلاس" + +msgid "Method" +msgstr "روش" + +msgid "Signal" +msgstr "سیگنال" + +msgid "Constant" +msgstr "ثابت" + +msgid "Property" +msgstr "خصیصه" + +msgid "Theme Property" +msgstr "ویژگی زمینه" + +msgid "Property:" +msgstr "ویژگی:" + +msgid "" +"Pinning a value forces it to be saved even if it's equal to the default." +msgstr "" +"پین کردن یک مقدار آن را مجبور می کند حتی اگر برابر با مقدار پیش فرض باشد " +"ذخیره شود." + +msgid "Open Documentation" +msgstr "باز کردن مستندات" + +msgid "Resize Array" +msgstr "آرایه را تغییر اندازه بده" + +msgid "Set %s" +msgstr "تنظیم %s" + +msgid "Set Multiple:" +msgstr "تعیین چندگانه:" + +msgid "Pinned %s" +msgstr "%s سنجاق شد" + +msgid "Unpinned %s" +msgstr "سنجاق %s برداشته شد" + +msgid "Copy Property Path" +msgstr "کپی کردن مسیر دارایی" + +msgid "Changed Locale Filter Mode" +msgstr "حالت صافی بومیسازی تغییر کرد" + +msgid "Edit Filters" +msgstr "ویرایش صافی ها" + +msgid "Language:" +msgstr "زبان:" + +msgid "Clear Output" +msgstr "پاک کردن خروجی" + +msgid "Copy Selection" +msgstr "کپی انتخاب" + +msgid "New Window" +msgstr "چارچوب جدید" + +msgid "Unnamed Project" +msgstr "پروژه بی نام" + +msgid "Spins when the editor window redraws." +msgstr "هنگامی که پنجره ویرایشگر دوباره ترسیم می شود می چرخد." + +msgid "Imported resources can't be saved." +msgstr "منابع وارد شده را نمیتوان ذخیره کرد." + +msgid "OK" +msgstr "قبول" + +msgid "Error saving resource!" +msgstr "خطای ذخیره سازی منبع!" + +msgid "" +"This resource can't be saved because it does not belong to the edited scene. " +"Make it unique first." +msgstr "" +"این منبع نمیتواند ذخیره شود زیرا به صحنهٔ ویرایش شده تعلق ندارد. ابتدا آن را " +"منحصر به فرد کنید." + +msgid "Save Resource As..." +msgstr "ذخیره منبع از ..." + +msgid "Can't open file for writing:" +msgstr "نمیتوان فایل را برای نوشتن باز کرد:" + +msgid "Requested file format unknown:" +msgstr "فرمت فایل درخواست شده ناشناخته است:" + +msgid "Error while saving." +msgstr "خطا در هنگام ذخیرهسازی." + +msgid "Saving Scene" +msgstr "ذخیره سازی صحنه" + +msgid "Analyzing" +msgstr "در حال پردازش" + +msgid "Creating Thumbnail" +msgstr "ایجاد بند انگشتی" + +msgid "This operation can't be done without a tree root." +msgstr "این عمل را نمیتوان بدون tree root انجام داد." + +msgid "" +"Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " +"be satisfied." +msgstr "" +"صحنه ذخیره نشد. وابستگیهای احتمالی (نمونهها یا وراثت) را نمیتوان راضی کرد." + +msgid "Could not save one or more scenes!" +msgstr "نمیتوان یک یا چند صحنه را ذخیره کرد!" + +msgid "Save All Scenes" +msgstr "ذخیره صحنه" + +msgid "Can't overwrite scene that is still open!" +msgstr "نمیتوان صحنهای که هنوز باز است را بازنویسی کرد!" + +msgid "Can't load MeshLibrary for merging!" +msgstr "نمیتوان MeshLibrary را برای ادغام بارگیری کرد!" + +msgid "Error saving MeshLibrary!" +msgstr "خطا در ذخیره MeshLibrary!" + +msgid "" +"An error occurred while trying to save the editor layout.\n" +"Make sure the editor's user data path is writable." +msgstr "" +"هنگام تلاش برای ذخیرهٔ چیدمان ویرایشگر خطایی روی داد.\n" +" مطمئن شوید که مسیر داده کاربر در ویرایشگر قابل نوشتن است." + +msgid "Layout name not found!" +msgstr "نام چیدمان پیدا نشد!" + +msgid "Restored the Default layout to its base settings." +msgstr "طرحبندی پیشفرض را به تنظیمات پایه آن بازگرداند." + +msgid "" +"This resource belongs to a scene that was imported, so it's not editable.\n" +"Please read the documentation relevant to importing scenes to better " +"understand this workflow." +msgstr "" +"این منبع متعلق به صحنهای است که ایمپورت شده است، بنابراین قابل ویرایش نیست.\n" +" لطفاً اسناد مربوط به وارد کردن صحنهها را بخوانید تا این گردش کار را بهتر درک " +"کنید." + +msgid "" +"This resource was imported, so it's not editable. Change its settings in the " +"import panel and then re-import." +msgstr "" +"این منبع وارد شده است، بنابراین قابل ویرایش نیست. تنظیمات آن را در پنل وارد " +"کردن تغییر دهید و سپس دوباره وارد کنید." + +msgid "There is no defined scene to run." +msgstr "هیچ صحنه تعریف شدهای برای اجرا وجود ندارد." + +msgid "Play the project." +msgstr "اجرای پروژه." + +msgid "Play the edited scene." +msgstr "صحنه ویرایششده را اجرا کن." + +msgid "Open Base Scene" +msgstr "گشودن صحنه اصلی" + +msgid "Quick Open..." +msgstr "گشودن فوری..." + +msgid "Quick Open Scene..." +msgstr "گشودن فوری صحنه..." + +msgid "Quick Open Script..." +msgstr "گشودن سریع اسکریپت..." + +msgid "Save & Quit" +msgstr "ذخیره و خروج" + +msgid "Save Scene As..." +msgstr "ذخیره صحنه در ..." + +msgid "Current scene not saved. Open anyway?" +msgstr "صحنه فعلی ذخیره نشده است. به هر حال باز شود؟" + +msgid "Can't reload a scene that was never saved." +msgstr "صحنهای که ذخیره نشده است قابل بارگذاری مجدد نیست." + +msgid "Reload Saved Scene" +msgstr "بازیابی صحنه ذخیره شده" + +msgid "Quick Run Scene..." +msgstr "اجرا فوری صحنه…" + +msgid "Pick a Main Scene" +msgstr "یک صحنه اصلی انتخاب کنید" + +msgid "This operation can't be done without a scene." +msgstr "این عملیات بدون یک صحنه انجام نمی شود." + +msgid "Export Mesh Library" +msgstr "صادر کردن کتابخانه شبکه مش" + +msgid "Unable to load addon script from path: '%s'." +msgstr "امکان بارگیری اسکریپت افزونه از مسیر وجود ندارد: '%s'." + +msgid "" +"Error loading scene, it must be inside the project path. Use 'Import' to " +"open the scene, then save it inside the project path." +msgstr "" +"خطای بارگذاری صحنه، صحنه باید در مسیر پروژه قرار گرفته باشد. از 'import' " +"برای باز کردن صحنه استفاده کنید، سپس آن را در مسیر پروژه ذخیره کنید." + +msgid "" +"Selected scene '%s' does not exist, select a valid one?\n" +"You can change it later in \"Project Settings\" under the 'application' " +"category." +msgstr "" +"صحنه انتخابی %s وجود ندارد، یک صحنه معتبر انتخاب کنید.\n" +"بعدا میتوانید در \"Project Settings\" در زیر بخش 'application' آن را تغییر " +"دهید." + +msgid "Save Layout" +msgstr "ذخیره لایه" + +msgid "Delete Layout" +msgstr "حذف طرحبندی" + +msgid "Default" +msgstr "پیشفرض" + +msgid "Save & Close" +msgstr "ذخیره و بستن" + +msgid "Show in FileSystem" +msgstr "نمایش در فایلسیستم" + +msgid "Play This Scene" +msgstr "اجرای این صحنه" + +msgid "Close Tab" +msgstr "بستن زبانه" + +msgid "Undo Close Tab" +msgstr "برگرداندن زبانه" + +msgid "Close Other Tabs" +msgstr "بستن زبانه های دیگر" + +msgid "Close Tabs to the Right" +msgstr "بستن زبانه ها به طرف راست" + +msgid "Close All Tabs" +msgstr "بستن تمام زبانه ها" + +msgid "%d more folders" +msgstr "%d پوشههای بیش تر" + +msgid "Add a new scene." +msgstr "افزودن صحنه جدید." + +msgid "Distraction Free Mode" +msgstr "حالت بدون حواسپرتی" + +msgid "Scene" +msgstr "صحنه" + +msgid "Operations with scene files." +msgstr "عملیات با فایلهای صحنه." + +msgid "Go to previously opened scene." +msgstr "به صحنهای که از قبل باز شده برو." + +msgid "Copy Text" +msgstr "کپی متن" + +msgid "New Scene" +msgstr "صحنه جدید" + +msgid "Reopen Closed Scene" +msgstr "باز کردن مجدد صحنه بسته شده" + +msgid "Open Recent" +msgstr "باز کردن فایل اخیر" + +msgid "Save Scene" +msgstr "ذخیره صحنه" + +msgid "Close Scene" +msgstr "بستن صحنه" + +msgid "Quit" +msgstr "خروج" + +msgid "Project" +msgstr "پروژه" + +msgid "Project Settings..." +msgstr "تنظیمات طرح…" + +msgid "Version Control" +msgstr "مهار نسخه" + +msgid "Export..." +msgstr "صدور…" + +msgid "Tools" +msgstr "ابزارها" + +msgid "Orphan Resource Explorer..." +msgstr "پویندهی منبع جاافتاده" + +msgid "Quit to Project List" +msgstr "خروج به لیست پروژهها" + +msgid "Editor" +msgstr "ویرایشگر" + +msgid "Editor Settings..." +msgstr "تنظیمات ویرایشگر…" + +msgid "Editor Layout" +msgstr "طرحبندی ویرایشگر" + +msgid "Take Screenshot" +msgstr "گرفتن اسکرینشات" + +msgid "Screenshots are stored in the Editor Data/Settings Folder." +msgstr "عکسهای صفحه در پوشه دیتا/تنظیمات ویرایشگر ذخیره شدهاند." + +msgid "Toggle Fullscreen" +msgstr "تبدیل به تمام صفحه" + +msgid "Help" +msgstr "راهنما" + +msgid "Community" +msgstr "اَنجُمَن" + +msgid "Compatibility" +msgstr "سازگاری" + +msgid "Update Continuously" +msgstr "بروزرسانی مستمر" + +msgid "FileSystem" +msgstr "سامانه پرونده" + +msgid "Node" +msgstr "گره" + +msgid "Output" +msgstr "خروجی" + +msgid "Manage Templates" +msgstr "مدیریت قالبها" + +msgid "Import Templates From ZIP File" +msgstr "واردکردن قالب ها از درون یک فایل ZIP" + +msgid "Export Library" +msgstr "صدور کتابخانه" + +msgid "Merge With Existing" +msgstr "ترکیب کردن با نمونه ی موجود" + +msgid "Open & Run a Script" +msgstr "گشودن و اجرای یک اسکریپت" + +msgid "Reload" +msgstr "بارگذاری دوباره" + +msgid "Resave" +msgstr "ذخیره مجدد" + +msgid "New Inherited" +msgstr "وارث جدید" + +msgid "Load Errors" +msgstr "خطاهای بارگذاری" + +msgid "Open 2D Editor" +msgstr "باز کردن ویرایشگر دو بعدی" + +msgid "Open 3D Editor" +msgstr "باز کردن ویرایشگر سه بعدی" + +msgid "Open Script Editor" +msgstr "باز کردن ویرایشگر اسکریپت" + +msgid "Open Asset Library" +msgstr "گشودن کتابخانه عست" + +msgid "Open the next Editor" +msgstr "گشودن ویرایشگر متن" + +msgid "Warning!" +msgstr "هشدار!" + +msgid "Edit Plugin" +msgstr "ویرایش افزونه" + +msgid "Installed Plugins:" +msgstr "افزونه های نصب شده:" + +msgid "Status" +msgstr "وضعیت" + +msgid "Edit Text:" +msgstr "ویرایش متن:" + +msgid "On" +msgstr "روشن" + +msgid "Rename" +msgstr "تغییر نام" + +msgid "Assign..." +msgstr "واگذار کردن..." + +msgid "Size:" +msgstr "اندازه:" + +msgid "New Script" +msgstr "اسکریپت جدید" + +msgid "There is an edited scene already." +msgstr "در حال حاضر یک صحنه ویرایش شده وجود دارد." + +msgid "Editor Settings" +msgstr "ویرایشگر ترجیحات" + +msgid "General" +msgstr "عمومی" + +msgid "The editor must be restarted for changes to take effect." +msgstr "باید ویرایشگر از نو شروع شود تا تغییرات جلوه کنند." + +msgid "Shortcuts" +msgstr "میانبرها" + +msgid "All Devices" +msgstr "تمام دستگاهها" + +msgid "Device" +msgstr "دستگاه" + +msgid "Completed with warnings." +msgstr "با هشدار تکمیل شد." + +msgid "Completed successfully." +msgstr "با موفقیت انجام شد." + +msgid "Failed." +msgstr "ناموفق." + +msgid "Storing File:" +msgstr "ذخیره فایل:" + +msgid "No export template found at the expected path:" +msgstr "هیچ الگوی صادراتی در مسیر مورد انتظار یافت نشد:" + +msgid "Packing" +msgstr "بسته بندی" + +msgid "Save PCK" +msgstr "ذخیره PCk" + +msgid "Cannot create file \"%s\"." +msgstr "نمیتوان فایل \"%s\" راساخت." + +msgid "Failed to export project files." +msgstr "نمیتوان از فایلهای پروژه خروجی گرفت ." + +msgid "Can't open file to read from path \"%s\"." +msgstr "نمیتوان فایل را از مسیر \"%s\" برای خواندن بازکرد." + +msgid "Save ZIP" +msgstr "ذخیره ZIP" + +msgid "Custom debug template not found." +msgstr "قالب اشکال زدایی سفارشی یافت نشد." + +msgid "Custom release template not found." +msgstr "قالب انتشار سفارشی یافت نشد." + +msgid "The given export path doesn't exist." +msgstr "مسیر خروجی وجود ندارد." + +msgid "Template file not found: \"%s\"." +msgstr "فایل قالب پیدا نشد: \"%s\"" + +msgid "Failed to copy export template." +msgstr "خطا در کپی قالب خروجی." + +msgid "PCK Embedding" +msgstr "تعبیه پیسیکی" + +msgid "On 32-bit exports the embedded PCK cannot be bigger than 4 GiB." +msgstr "" +"در خروجی های ۳۲ بیتی پیسیکی تعبیه شده نمیتواند از ۴ گیگابایت بزرگتر باشد." + +msgid "Error requesting URL:" +msgstr "خطا در درخواست URL:" + +msgid "Request failed." +msgstr "درخواست ناموفق بود." + +msgid "Cannot remove temporary file:" +msgstr "امکان حذف فایل موقت وجود ندارد:" + +msgid "Disconnected" +msgstr "اتصال قطع شده" + +msgid "Connecting..." +msgstr "در حال اتصال..." + +msgid "Connected" +msgstr "وصل شده" + +msgid "Requesting..." +msgstr "در حال درخواست..." + +msgid "Downloading" +msgstr "در حال بارگیری" + +msgid "Connection Error" +msgstr "خطای اتصال" + +msgid "Importing:" +msgstr "وارد کردن:" + +msgid "Current Version:" +msgstr "نسخه اخیر:" + +msgid "Uninstall" +msgstr "حذف نصب" + +msgid "Runnable" +msgstr "قابل اجرا" + +msgid "Resources to export:" +msgstr "منابع برای صدور:" + +msgid "Release" +msgstr "انتشار" + +msgid "Presets" +msgstr "پیش فرض ها" + +msgid "Add..." +msgstr "افزودن..." + +msgid "Duplicate" +msgstr "تکثیر کردن" + +msgid "Export Path" +msgstr "مسیر خروجی" + +msgid "Options" +msgstr "گزینه ها" + +msgid "Resources" +msgstr "منابع" + +msgid "Export all resources in the project" +msgstr "صدور همه منابع در پروژه" + +msgid "Export selected scenes (and dependencies)" +msgstr "صدور صحنه های انتخاب شده (و وابستگی ها)" + +msgid "Export selected resources (and dependencies)" +msgstr "صدور منابع انتخاب شده (و وابستگی ها)" + +msgid "Export Mode:" +msgstr "حالت صدور:" + +msgid "Features" +msgstr "ویژگیها" + +msgid "Feature List:" +msgstr "فهرست ویژگیها:" + +msgid "Export All" +msgstr "صدور همه" + +msgid "Manage Export Templates" +msgstr "مدیریت صدور قالب ها" + +msgid "Export With Debug" +msgstr "صدور با اشکال زدا" + +msgid "Browse" +msgstr "مرور کردن" + +msgid "Favorites" +msgstr "برگزیدهها" + +msgid "Renaming file:" +msgstr "تغییر نام فایل:" + +msgid "Duplicating file:" +msgstr "فایل تکراری:" + +msgid "Add to Favorites" +msgstr "اضافه به علاقمندیها" + +msgid "Remove from Favorites" +msgstr "حذف از علاقمندیها" + +msgid "New Scene..." +msgstr "صحنه جدید..." + +msgid "New Script..." +msgstr "اسکریپت جدید..." + +msgid "New Resource..." +msgstr "منبع جدید..." + +msgid "Duplicate..." +msgstr "تکرار..." + +msgid "Rename..." +msgstr "تغییر نام..." + +msgid "Re-Scan Filesystem" +msgstr "پویش دوباره سامانه پرونده" + +msgid "Move" +msgstr "حرکت" + +msgid "Overwrite" +msgstr "بازنویسی" + +msgid "Find in Files" +msgstr "یافتن در فایلها" + +msgid "Find:" +msgstr "یافتن:" + +msgid "Folder:" +msgstr "پوشه:" + +msgid "Filters:" +msgstr "فیلترها:" + +msgid "Searching..." +msgstr "در حال جستجو..." + +msgid "Add to Group" +msgstr "اضافه به گروه" + +msgid "Remove from Group" +msgstr "حذف از گروه" + +msgid "Group name already exists." +msgstr "نام گروه از قبل وجود داشته است." + +msgid "Rename Group" +msgstr "تغییر نام گروه" + +msgid "Delete Group" +msgstr "حذف گروه" + +msgid "Groups" +msgstr "گروهها" + +msgid "Nodes in Group" +msgstr "گره ها در گروه" + +msgid "Empty groups will be automatically removed." +msgstr "گروه های خالی به طور خودکار حذف خواهند شد." + +msgid "Group Editor" +msgstr "ویرایشگر گروه" + +msgid "Reimport" +msgstr "وارد کردن دوباره" + +msgid "Offset:" +msgstr "انحراف:" + +msgid "Importing Scene..." +msgstr "وارد کردن صحنه..." + +msgid "Import Scene" +msgstr "وارد کردن صحنه" + +msgid "Saving..." +msgstr "در حال ذخیره..." + +msgid "2D" +msgstr "دو بعدی" + +msgid "3D" +msgstr "سه بعدی" + +msgid "Meshes" +msgstr "مشها" + +msgid "Import As:" +msgstr "وارد کردن به عنوان:" + +msgid "Device:" +msgstr "دستگاه:" + +msgid "Failed to load resource." +msgstr "بارگیری منبع انجام نشد." + +msgid "Raw" +msgstr "خام" + +msgid "Create a new resource in memory and edit it." +msgstr "یک منبع جدید در حافظه بساز و آن را ویرایش کن." + +msgid "Save As..." +msgstr "ذخیره در..." + +msgid "Copy Resource" +msgstr "کپی منبع" + +msgid "History of recently edited objects." +msgstr "تاریخچه اشیایی که اخیرا ویرایش شدهاند." + +msgid "Remove Translation" +msgstr "حذف ترجمه" + +msgid "Translations" +msgstr "ترجمهها" + +msgid "Translations:" +msgstr "ترجمهها:" + +msgid "Remaps" +msgstr "بازطرحشدهها" + +msgid "Resources:" +msgstr "منابع:" + +msgid "Remaps by Locale:" +msgstr "بازطرحشدهها توسط بومیسازی:" + +msgid "Locale" +msgstr "بومی" + +msgid "Create a Plugin" +msgstr "ساخت یک افزونه" + +msgid "Update" +msgstr "بروز رسانی" + +msgid "Subfolder:" +msgstr "زیرپوشه:" + +msgid "Author:" +msgstr "خالق:" + +msgid "Version:" +msgstr "نسخه:" + +msgid "Script Name:" +msgstr "نام اسکریپت:" + +msgid "Create points." +msgstr "ساخت نقاط." + +msgid "Erase points." +msgstr "حذف نقاط." + +msgid "Add Animation" +msgstr "اضافه کردن انیمیشن" + +msgid "Add %s" +msgstr "اضافه کردن %s" + +msgid "Load..." +msgstr "بارگذاری..." + +msgid "Blend:" +msgstr "درآمیختن:" + +msgid "Point" +msgstr "نقطه" + +msgid "Open Editor" +msgstr "باز کردن ویرایشگر" + +msgid "Open Animation Node" +msgstr "باز کردن گره انیمیشن" + +msgid "Node Moved" +msgstr "گره حرکت کرد" + +msgid "Nodes Connected" +msgstr "گرهها متصل شدند" + +msgid "Nodes Disconnected" +msgstr "گرهها جدا شدند" + +msgid "Delete Node" +msgstr "حذف گره" + +msgid "Delete Node(s)" +msgstr "حذف گره(ها)" + +msgid "Change Filter" +msgstr "تغییر فیلتر" + +msgid "Functions" +msgstr "توابع" + +msgid "Node Renamed" +msgstr "نام گره تغییر کرد" + +msgid "Add Node..." +msgstr "افزودن گره..." + +msgid "Enable Filtering" +msgstr "فعال کردن فیلترها" + +msgid "Load Animation" +msgstr "بارگذاری انیمیشن" + +msgid "Animation Name:" +msgstr "نام انیمیشن:" + +msgid "Create New Animation" +msgstr "ساخت انیمیشن جدید" + +msgid "New Animation Name:" +msgstr "نام انیمیشن جدید:" + +msgid "Rename Animation" +msgstr "تغییر نام انیمیشن" + +msgid "Change Animation Name:" +msgstr "تغییر نام انیمیشن:" + +msgid "Remove Animation" +msgstr "حذف انیمیشن" + +msgid "Duplicate Animation" +msgstr "انیمیشن تکراری" + +msgid "Play selected animation from start. (Shift+D)" +msgstr "انیمیشن فعلی را از ابتدا پخش کن. (Shift+D)" + +msgid "Animation Tools" +msgstr "ابزار انیمیشن" + +msgid "Animation" +msgstr "انیمیشن" + +msgid "Edit Transitions..." +msgstr "ویرایش انتقالها..." + +msgid "Display list of animations in player." +msgstr "نمایش لیست انیمیشنها در پخشکننده." + +msgid "Autoplay on Load" +msgstr "پخش خودکار پس از بارگذاری" + +msgid "Directions" +msgstr "جهتها" + +msgid "Past" +msgstr "گذشته" + +msgid "Future" +msgstr "آینده" + +msgid "Depth" +msgstr "عمق" + +msgid "Error!" +msgstr "خطا!" + +msgid "Move Node" +msgstr "حرکت دادن گره" + +msgid "Add Transition" +msgstr "افزودن انتقال" + +msgid "Immediate" +msgstr "فوری" + +msgid "Sync" +msgstr "همگامسازی" + +msgid "Travel" +msgstr "سفر" + +msgid "Node Removed" +msgstr "گره حذف شد" + +msgid "Transition Removed" +msgstr "انتقال حذف شد" + +msgid "Create new nodes." +msgstr "ساخت گرههای جدید." + +msgid "Connect nodes." +msgstr "اتصال گرهها." + +msgid "Remove selected node or transition." +msgstr "گره یا انتقال انتخاب شده را حذف کن." + +msgid "Delete Selected" +msgstr "حذف انتخاب شده" + +msgid "Root" +msgstr "ریشه" + +msgid "Contents:" +msgstr "محتواها:" + +msgid "View Files" +msgstr "نمایش پرونده ها" + +msgid "Download" +msgstr "دانلود" + +msgid "Can't connect." +msgstr "ناتوان در اتصال." + +msgid "Can't connect to host:" +msgstr "نمیتوان به میزبان متصل شد:" + +msgid "Failed:" +msgstr "ناموفق:" + +msgid "Expected:" +msgstr "انتظار میرود:" + +msgid "Got:" +msgstr "گرفته شد:" + +msgid "Downloading (%s / %s)..." +msgstr "در حال دانلود (%s / %s)" + +msgid "Downloading..." +msgstr "در حال دانلود..." + +msgid "Error making request" +msgstr "خطای درخواست" + +msgid "Idle" +msgstr "بیکار" + +msgid "Install..." +msgstr "نصب..." + +msgid "Retry" +msgstr "تلاش دوباره" + +msgid "Download Error" +msgstr "خطاهای بارگیری" + +msgid "Official" +msgstr "دفتری" + +msgid "Testing" +msgstr "آزمودن" + +msgid "Loading..." +msgstr "بارگذاری..." + +msgid "All" +msgstr "همه" + +msgid "Import..." +msgstr "وارد کردن..." + +msgid "Plugins..." +msgstr "افزونهها..." + +msgid "Sort:" +msgstr "مرتبسازی:" + +msgid "Category:" +msgstr "طبقهبندی:" + +msgid "Site:" +msgstr "تارنما:" + +msgid "Support" +msgstr "پشتیبانی" + +msgid "Assets ZIP File" +msgstr "فایل های ZIP منابع بازی" + +msgid "Preview" +msgstr "پیش نمایش" + +msgid "steps" +msgstr "گامها" + +msgid "Select Mode" +msgstr "انتخاب حالت" + +msgid "Ruler Mode" +msgstr "حالت خطکش" + +msgid "View" +msgstr "دیدن" + +msgid "Show" +msgstr "نشان دادن" + +msgid "Hide" +msgstr "مخفی کردن" + +msgid "Adding %s..." +msgstr "در حال اضافه کردن %s..." + +msgid "Create Node" +msgstr "ساختن گره" + +msgid "Center" +msgstr "مرکز" + +msgid "Flat 1" +msgstr "تخت ۱" + +msgid "Smoothstep" +msgstr "گام نرم" + +msgid "Modify Curve Point" +msgstr "ویرایش نقطهٔ منحنی" + +msgid "Modify Curve Tangent" +msgstr "ویرایش مماس منحنی" + +msgid "Load Curve Preset" +msgstr "بارگیری منحنی ذخیرهشده" + +msgid "Add Point" +msgstr "افزودن نقطه" + +msgid "Remove Point" +msgstr "برداشتن نقطه" + +msgid "Remove Curve Point" +msgstr "حذف نقطهٔ منحنی" + +msgid "Volume" +msgstr "حجم" + +msgid "Create Outline" +msgstr "ساخت طرح کلی" + +msgid "Mesh" +msgstr "مِش" + +msgid "Outline Size:" +msgstr "اندازه طرح کلی:" + +msgid "Add Item" +msgstr "افزودن مورد" + +msgid "Remove Selected Item" +msgstr "حذف مورد انتخابشده" + +msgid "Update from Scene" +msgstr "بهروزرسانی از صحنه" + +msgid "X-Axis" +msgstr "محور X" + +msgid "Y-Axis" +msgstr "محور Y" + +msgid "Z-Axis" +msgstr "محور Z" + +msgid "Amount:" +msgstr "مقدار:" + +msgid "Change Camera Size" +msgstr "تغییر اندازه دوربین" + +msgid "Change Sphere Shape Radius" +msgstr "تغییر شعاع شکل کره" + +msgid "Change Capsule Shape Radius" +msgstr "تغییر شعاع شکل کپسول" + +msgid "Change Capsule Shape Height" +msgstr "تغییر ارتفاع شکل کپسول" + +msgid "Orthogonal" +msgstr "قائم" + +msgid " [auto]" +msgstr " [خودکار]" + +msgid "None" +msgstr "هیچکدام" + +msgid "Toggle Freelook" +msgstr "دید آزاد" + +msgid "Transform" +msgstr "تبدیل" + +msgid "Settings..." +msgstr "تنظیمات..." + +msgid "Pre" +msgstr "پیش" + +msgid "Post" +msgstr "پس" + +msgid "Glow" +msgstr "درخشش" + +msgid "Click: Add Point" +msgstr "کلیک: اضافه کردن نقطه" + +msgid "Right Click: Delete Point" +msgstr "کلیک راست: حذف نقطه" + +msgid "Delete Point" +msgstr "حذف نقطه" + +msgid "Move Joint" +msgstr "حرکت مفصل" + +msgid "Polygons" +msgstr "چندضلعیها" + +msgid "Bones" +msgstr "استخوانها" + +msgid "Move Points" +msgstr "انتقال نقطهها" + +msgid "Radius:" +msgstr "شعاع:" + +msgid "Rename Resource" +msgstr "تغییر نام منبع" + +msgid "Paste Resource" +msgstr "چسباندن منبع" + +msgid "Open in Editor" +msgstr "گشودن در ویرایشگر" + +msgid "Can't open '%s'. The file could have been moved or deleted." +msgstr "نمیتوان %s را باز کرد. این فایل میتواند انتقال یافته یا حذف شده باشد." + +msgid "Error saving file!" +msgstr "خطای ذخیره فایل!" + +msgid "Error while saving theme." +msgstr "خطای در هنگام ذخیره کردن تم." + +msgid "Error Saving" +msgstr "خطا در ذخیرهسازی" + +msgid "Error importing theme." +msgstr "خطا در وارد کردن تم." + +msgid "Error Importing" +msgstr "خطا در وارد کردن" + +msgid "New Text File..." +msgstr "فایل متنی جدید..." + +msgid "Open File" +msgstr "باز کردن فایل" + +msgid "Save File As..." +msgstr "ذخیره فایل به عنوان..." + +msgid "Sort" +msgstr "مرتبسازی" + +msgid "File" +msgstr "فایل" + +msgid "Open..." +msgstr "بار کردن..." + +msgid "Theme" +msgstr "تم" + +msgid "Import Theme..." +msgstr "وارد کردن تم..." + +msgid "Close All" +msgstr "بستن همه" + +msgid "Run" +msgstr "اجرا" + +msgid "Search" +msgstr "جستجو" + +msgid "Open Godot online documentation." +msgstr "باز کردن مستندات آنلاین Godot." + +msgid "Discard" +msgstr "رد کردن" + +msgid "Search Results" +msgstr "نتایج جستجو" + +msgid "Clear Recent Scripts" +msgstr "حذف اسکریپتهای اخیر" + +msgid "Standard" +msgstr "استاندارد" + +msgid "Source" +msgstr "منبع" + +msgid "Target" +msgstr "هدف" + +msgid "Line" +msgstr "خط" + +msgid "Go to Function" +msgstr "برو به تابع" + +msgid "Uppercase" +msgstr "حروف بزرگ" + +msgid "Lowercase" +msgstr "حروف کوچک" + +msgid "Capitalize" +msgstr "بزرگ کردن حروف" + +msgid "Bookmarks" +msgstr "نشانکها" + +msgid "Delete Line" +msgstr "حذف خط" + +msgid "Find in Files..." +msgstr "یافتن در فایلها..." + +msgid "Go to Next Bookmark" +msgstr "رفتن به نشانک بعدی" + +msgid "Go to Previous Bookmark" +msgstr "رفتن به نشانک قبلی" + +msgid "Remove All Bookmarks" +msgstr "حذف تمام نشانکها" + +msgid "Go to Function..." +msgstr "برو به تابع..." + +msgid "Go to Line..." +msgstr "برو به خط:" + +msgid "Toggle Breakpoint" +msgstr "یک Breakpoint درج کن" + +msgid "Create Polygon2D" +msgstr "ساخت چندضلعی دوبعدی" + +msgid "Convert to Polygon2D" +msgstr "تبدیل به چندضلعی دوبعدی" + +msgid "Settings:" +msgstr "تنظیمات:" + +msgid "No Frames Selected" +msgstr "هیچ فریمی انتخاب نشده است" + +msgid "Move Frame" +msgstr "حرکت دادن فریم" + +msgid "Delete Animation?" +msgstr "انیمیشن حذف شود؟" + +msgid "(empty)" +msgstr "(خالی)" + +msgid "Animations:" +msgstr "انیمیشنها:" + +msgid "Zoom Reset" +msgstr "تنظیم مجدد بزرگنمایی" + +msgid "Select Frames" +msgstr "انتخاب فریمها" + +msgid "Horizontal:" +msgstr "افقی:" + +msgid "Vertical:" +msgstr "عمودی:" + +msgid "Select/Clear All Frames" +msgstr "انتخاب/حذف همه فریمها" + +msgid "SpriteFrames" +msgstr "فریم های اسپرایت" + +msgid "Step:" +msgstr "گام:" + +msgid "Remove All Items" +msgstr "حذف تمام موارد" + +msgid "Item" +msgstr "مورد" + +msgid "Submenu" +msgstr "زیرمنو" + +msgid "Has" +msgstr "دارد" + +msgid "Many" +msgstr "بسیاری" + +msgid "Subtree" +msgstr "زیردرخت" + +msgid "Has,Many,Options" +msgstr "دارد،بسیار،گزینهها" + +msgid "Yes" +msgstr "بله" + +msgid "Error" +msgstr "خطا" + +msgid "Date:" +msgstr "تاریخ:" + +msgid "Subtitle:" +msgstr "زیرنویس:" + +msgid "Password" +msgstr "گذرواژه" + +msgid "SSH Passphrase" +msgstr "عبارت عبور SSH" + +msgid "Detect new changes" +msgstr "شناسایی تغییرات جدید" + +msgid "Modified" +msgstr "تغییر کرده" + +msgid "Renamed" +msgstr "نام تغییر یافت" + +msgid "Deleted" +msgstr "حذف شد" + +msgid "Unmerged" +msgstr "ترکیب نشده" + +msgid "Unified" +msgstr "متحد شده" + +msgid "Add Input" +msgstr "اضافه کردن ورودی" + +msgid "Boolean" +msgstr "بولی" + +msgid "Vertex" +msgstr "رأس" + +msgid "Light" +msgstr "نور" + +msgid "Sky" +msgstr "آسمان" + +msgid "Fog" +msgstr "مه" + +msgid "Add Node" +msgstr "افزودن گره" + +msgid "Color constant." +msgstr "مقدار ثابت رنگ" + +msgid "Equal (==)" +msgstr "مساوی (==)" + +msgid "Greater Than (>)" +msgstr "بزرگتر از (<)" + +msgid "Greater Than or Equal (>=)" +msgstr "بزرگتر یا برابر (=<)" + +msgid "Less Than (<)" +msgstr "کمتر از (>)" + +msgid "Less Than or Equal (<=)" +msgstr "کمتر یا مساوی (=>)" + +msgid "Not Equal (!=)" +msgstr "نا مساوی (=!)" + +msgid "Input parameter." +msgstr "پارامتر ورودی." + +msgid "Transform function." +msgstr "تابع انتقال" + +msgid "New Game Project" +msgstr "پروژه بازی جدید" + +msgid "Imported Project" +msgstr "پروژه واردشده" + +msgid "Couldn't create folder." +msgstr "پوشه ایجاد نشد." + +msgid "Error opening package file, not in ZIP format." +msgstr "خطای گشودن بسته بندی پرونده، به شکل ZIP نیست." + +msgid "The following files failed extraction from package:" +msgstr "استخراج پرونده های زیر از بسته بندی انجام نشد:" + +msgid "Package installed successfully!" +msgstr "بسته با موفقیت نصب شد!" + +msgid "Rename Project" +msgstr "تغییر نام پروژه" + +msgid "Import Existing Project" +msgstr "وارد کردن پروژه موجود" + +msgid "Import & Edit" +msgstr "وارد کردن و ویرایش" + +msgid "Create New Project" +msgstr "ساختن پروژه جدید" + +msgid "Create & Edit" +msgstr "ساخت و ویرایش" + +msgid "Install Project:" +msgstr "نصب پروژه:" + +msgid "Install & Edit" +msgstr "نصب و ویرایش" + +msgid "Project Name:" +msgstr "نام پروژه:" + +msgid "Project Path:" +msgstr "مسیر پروژه:" + +msgid "Git" +msgstr "گیت" + +msgid "Missing Project" +msgstr "پروژهٔ از دست رفته" + +msgid "Error: Project is missing on the filesystem." +msgstr "خطا: پروژه در فایلهای سیستمی وجود ندارد." + +msgid "Local" +msgstr "محلی" + +msgid "Local Projects" +msgstr "پروژههای محلی" + +msgid "Asset Library Projects" +msgstr "پروژههای کتابخانهٔ دارایی" + +msgid "Can't open project at '%s'." +msgstr "ناتوان در گشودن پروژه در '%s'." + +msgid "" +"The selected project \"%s\" was generated by Godot 3.x, and needs to be " +"converted for Godot 4.x.\n" +"\n" +"Project path: %s\n" +"\n" +"You have three options:\n" +"- Convert only the configuration file (\"project.godot\"). Use this to open " +"the project without attempting to convert its scenes, resources and " +"scripts.\n" +"- Convert the entire project including its scenes, resources and scripts " +"(recommended if you are upgrading).\n" +"- Do nothing and go back.\n" +"\n" +"Warning: If you select a conversion option, you won't be able to open the " +"project with previous versions of the engine anymore." +msgstr "" +"پروژهٔ انتخاب شده \"%s\" توسط گودو 3.x ایجاد شده است و باید برای گودو 4.x " +"تبدیل شود.\n" +"\n" +" مسیر پروژه: %s\n" +"\n" +" شما سه گزینه دارید:\n" +" - فقط فایل پیکربندی (\"project.godot\") را تبدیل کنید. از این برای باز کردن " +"پروژه بدون تلاش برای تبدیل صحنهها، منابع و اسکریپتهای آن استفاده کنید.\n" +" - کل پروژه از جمله صحنه ها، منابع و اسکریپت های آن را تبدیل کنید (توصیه " +"میشود اگر در حال ارتقا هستید).\n" +" - کاری نکن و برگرد.\n" +"\n" +" هشدار: اگر گزینه تبدیل را انتخاب کنید، دیگر نمی توانید پروژه را با نسخه های " +"قبلی موتور باز کنید." + +msgid "Convert project.godot Only" +msgstr "فقط تبدیل project.godot" + +msgid "" +"The selected project \"%s\" was generated by an older engine version, and " +"needs to be converted for this version.\n" +"\n" +"Project path: %s\n" +"\n" +"Do you want to convert it?\n" +"\n" +"Warning: You won't be able to open the project with previous versions of the " +"engine anymore." +msgstr "" +"پروژهٔ انتخابی \"%s\" توسط یک نسخه موتور قدیمی ایجاد شده است و باید برای این " +"نسخه تبدیل شود.\n" +"\n" +" مسیر پروژه: %s\n" +"\n" +" آیا می خواهید آن را تبدیل کنید؟\n" +"\n" +" هشدار: دیگر نمیتوانید پروژه را با نسخههای قبلی موتور باز کنید." + +msgid "Convert project.godot" +msgstr "تبدیل project.godot" + +msgid "" +"Can't open project \"%s\" at the following path:\n" +"\n" +"%s\n" +"\n" +"The project settings were created by a newer engine version, whose settings " +"are not compatible with this version." +msgstr "" +"پروژهٔ \"%s\" در مسیر زیر باز نمیشود:\n" +"\n" +" %s\n" +"\n" +" تنظیمات پروژه توسط یک نسخه موتور جدیدتر ایجاد شده است که تنظیمات آن با این " +"نسخه سازگار نیست." + +msgid "" +"Warning: This project uses C#, but this build of Godot does not have\n" +"the Mono module. If you proceed you will not be able to use any C# scripts.\n" +"\n" +msgstr "" +"اخطار: این پروژه از سی شارپ استفاده می کند، اما این نسخهٔ گودو ماژول Mono را " +"ندارد. اگر ادامه دهید، نمیتوانید از هیچ اسکریپت سی شارپی استفاده کنید.\n" +"\n" + +msgid "" +"Warning: This project was built in Godot %s.\n" +"Opening will upgrade or downgrade the project to Godot %s.\n" +"\n" +msgstr "" +"…هشدار: این پروژه در گودو %s ساخته شده است.\n" +" باز کردن پروژه را به گودو %s ارتقا یا کاهش میدهد.\n" +"\n" + +msgid "" +"Warning: This project uses the following features not supported by this " +"build of Godot:\n" +"\n" +"%s\n" +"\n" +msgstr "" +"هشدار: این پروژه از ویژگیهای زیر استفاده میکند که توسط این نسخهٔ گودو " +"پشتیبانی نمیشود:\n" +"\n" +" %s\n" +"\n" + +msgid "Open anyway? Project will be modified." +msgstr "به هر حال باز شود؟ پروژه اصلاح خواهد شد." + +msgid "" +"Can't run project: no main scene defined.\n" +"Please edit the project and set the main scene in the Project Settings under " +"the \"Application\" category." +msgstr "" +"نمیتوان پروژه را اجرا کرد: صحنهٔ اصلی تعریف نشده است.\n" +" لطفاً پروژه را ویرایش کنید و صحنهٔ اصلی را در قسمت تنظیمات پروژه در دستهٔ " +"«برنامه» تنظیم کنید." + +msgid "" +"Can't run project: Assets need to be imported.\n" +"Please edit the project to trigger the initial import." +msgstr "" +"پروژه اجرا نمیشود: دارایی ها باید وارد شوند.\n" +" لطفاً پروژه را ویرایش کنید تا وارد کردن اولیه آغاز شود." + +msgid "Are you sure to run %d projects at once?" +msgstr "آیا مطمئن هستید که %d پروژه را همزمان اجرا میکنید؟" + +msgid "Remove %d projects from the list?" +msgstr "%d پروژه از فهرست حذف شود؟" + +msgid "Remove this project from the list?" +msgstr "این پروژه از فهرست خارج شود؟" + +msgid "" +"Remove all missing projects from the list?\n" +"The project folders' contents won't be modified." +msgstr "" +"همهٔ پروژههای از دست رفته از فهرست حذف شوند؟\n" +" محتویات پوشههای پروژه تغییر نخواهد کرد." + +msgid "" +"Language changed.\n" +"The interface will update after restarting the editor or project manager." +msgstr "" +"زبان تغییر کرد.\n" +" رابط پس از راه اندازی مجدد ویرایشگر یا مدیر پروژه بهروز میشود." + +msgid "" +"Are you sure to scan %s folders for existing Godot projects?\n" +"This could take a while." +msgstr "" +"آیا مطمئن هستید که پوشههای %s را برای پروژههای گودوی موجود اسکن میکنید؟\n" +" این عمل ممکن است مدتی طول بکشد." + +msgid "New Project" +msgstr "پروژه جدید" + +msgid "Scan" +msgstr "پویش" + +msgid "About" +msgstr "درباره" + +msgid "Restart Now" +msgstr "راه اندازی دوباره" + +msgid "Select a Folder to Scan" +msgstr "انتخاب یک پوشه برای پویش" + +msgid "Remove All" +msgstr "حذف همه" + +msgid "Can't run project" +msgstr "ناتوان در اجرای پروژه" + +msgid "" +"You currently don't have any projects.\n" +"Would you like to explore official example projects in the Asset Library?" +msgstr "" +"شما فعلا هیچ طرحی ندارید.\n" +"آیا می خواهید طرح های نمونه رسمی را در کتابخانه دارایی کاوش کنید؟" + +msgid "Delete Item" +msgstr "حذف مورد" + +msgid "Add Input Action" +msgstr "افزودن عمل ورودی" + +msgid "Project Settings (project.godot)" +msgstr "تنظیمات پروژه (پروژه.گودات)" + +msgid "Localization" +msgstr "بومیسازی" + +msgid "Autoload" +msgstr "بارگیری خودکار" + +msgid "Plugins" +msgstr "افزونهها" + +msgid "Prefix:" +msgstr "پیشوند:" + +msgid "Suffix:" +msgstr "پسوند:" + +msgid "Substitute" +msgstr "جایگزین" + +msgid "Step" +msgstr "گام" + +msgid "Post-Process" +msgstr "پس-پردازش" + +msgid "Style" +msgstr "شیوه" + +msgid "To Lowercase" +msgstr "با حروف کوچک" + +msgid "Reset" +msgstr "بازنشانی" + +msgid "Reparent Node" +msgstr "گره تغییر والد" + +msgid "2D Scene" +msgstr "صحنه دوبعدی" + +msgid "3D Scene" +msgstr "صحنه سهبعدی" + +msgid "User Interface" +msgstr "رابط کاربر" + +msgid "Delete %d nodes?" +msgstr "حذف %d گره؟" + +msgid "Create Root Node:" +msgstr "ساخت گره ریشه:" + +msgid "Attach Script" +msgstr "پیوست کردن اسکریپت" + +msgid "Remove Node(s)" +msgstr "حذف گره(ها)" + +msgid "This operation requires a single selected node." +msgstr "این عملیات به یک گره انتخاب شده نیاز دارد." + +msgid "Clear Inheritance" +msgstr "پاک کردن ارثبری" + +msgid "Editable Children" +msgstr "فرزند قابل ویرایش" + +msgid "Load As Placeholder" +msgstr "بارگیری به عنوان جانگهدار" + +msgid "Filters" +msgstr "فیلترها" + +msgid "Add Child Node" +msgstr "افزودن node زیرمجموعه" + +msgid "Change Type" +msgstr "تغییر نوع" + +msgid "Delete (No Confirm)" +msgstr "حذف (بدون تأیید)" + +msgid "Add/Create a New Node." +msgstr "افزودن/ساختن گره جدید" + +msgid "Remote" +msgstr "از راه دور" + +msgid "Clear Inheritance? (No Undo!)" +msgstr "وراثت حذف شود؟ (بدون بازگشت!)" + +msgid "Unlock Node" +msgstr "بازکردن قفل گره" + +msgid "Open Script:" +msgstr "باز کردن اسکریپت:" + +msgid "Rename Node" +msgstr "تغییر نام گره" + +msgid "Select a Node" +msgstr "انتخاب یک گره" + +msgid "Path is empty." +msgstr "مسیر خالی است." + +msgid "Filename is empty." +msgstr "نام فایل خالی است." + +msgid "Path is not local." +msgstr "مسیر محلی نیست." + +msgid "File does not exist." +msgstr "پرونده موجود نیست." + +msgid "Error loading script from %s" +msgstr "خطای بارگذاری اسکریپت از %s" + +msgid "Open Script / Choose Location" +msgstr "باز کردن اسکریپت / انتخاب موقعیت" + +msgid "Open Script" +msgstr "باز کردن اسکریپت" + +msgid "File exists, it will be reused." +msgstr "فایل وجود دارد، دوباره استفاده خواهد شد." + +msgid "Invalid path." +msgstr "مسیر نامعتبر." + +msgid "Invalid class name." +msgstr "نام کلاس نامعبتر است." + +msgid "Invalid type argument to convert(), use TYPE_* constants." +msgstr "نوع نامعتبر ورودی برای ()convert، ثوابت *_TYPE را بکار گیرید." + +msgid "Not based on a script" +msgstr "بر اساس یک اسکریپت نیست" + +msgid "Not based on a resource file" +msgstr "بر اساس یک فایل منبع نیست" + +msgid "Invalid instance dictionary format (missing @path)" +msgstr "فرمت دیکشنری نمونه نامعتبر (pass@ مفقود)" + +msgid "Invalid instance dictionary format (can't load script at @path)" +msgstr "" +"فرمت نمونه ی دیکشنری نامعتبر است . ( نمی توان اسکریپت را از مسیر path@ " +"بارگذاری کرد.)" + +msgid "Invalid instance dictionary format (invalid script at @path)" +msgstr "فرمت دیکشنری نمونه نامعتبر (اسکریپت نامعتبر در path@)" + +msgid "Invalid instance dictionary (invalid subclasses)" +msgstr "نمونه ی دیکشنری نامعتبر است . (زیرکلاسهای نامعتبر)" + +msgid "Plane:" +msgstr "سطح" + +msgid "Not enough bytes for decoding bytes, or invalid format." +msgstr "" +"تعداد بایتهای مورد نظر برای رمزگشایی بایتها کافی نیست، و یا فرمت نامعتبر " +"است ." + +msgid "%s/s" +msgstr "%s/ثانیه" + +msgid "Incoming RPC" +msgstr "ورودی RPC" + +msgid "Outgoing RPC" +msgstr "خروجی RPC" + +msgid "Config" +msgstr "پیکربندی" + +msgid "Size" +msgstr "اندازه" + +msgid "A NavigationMesh resource must be set or created for this node to work." +msgstr "یک منبع NavigationMesh باید برای یک گره تنظیم یا ایجاد شود تا کار کند." + +msgid "Done!" +msgstr "انجام شد!" + +msgid "Invalid package name:" +msgstr "نام پکیج نامعتبر:" + +msgid "Export Icons" +msgstr "آیکونهای خروجی" + +msgid "An empty CollisionPolygon2D has no effect on collision." +msgstr "یک CollisionPolygon2D خالی جلوه بر برخورد ندارد." + +msgid "" +"A shape must be provided for CollisionShape2D to function. Please create a " +"shape resource for it!" +msgstr "" +"یک شکل باید برای CollisionShape2D فراهم شده باشد تا عمل کند. لطفا یک شکل " +"منبع برای آن ایجاد کنید!" + +msgid "" +"An occluder polygon must be set (or drawn) for this occluder to take effect." +msgstr "یک چندضلعی انسدادی باید تنظیم (یا ترسیم) شود تا جلوه کننده باشد." + +msgid "" +"ParallaxLayer node only works when set as child of a ParallaxBackground node." +msgstr "" +"گره ParallaxLayer تنها در زمانی که به عنوان فرزند یک گره ParallaxBackground " +"تنظیم شود کار میکند." + +msgid "PathFollow2D only works when set as a child of a Path2D node." +msgstr "" +"PathFollow2D تنها در زمانی که به عنوان یک فرزند یک گره Path2D تنظیم شود کار " +"میکند." + +msgid "Path property must point to a valid Node2D node to work." +msgstr "دارایی Path باید به یک گره Node2D معتبر اشاره کند تا کار کند." + +msgid "Invalid animation: '%s'." +msgstr "انیمیشن نامعتبر: '%s'." + +msgid "Alert!" +msgstr "هشدار!" + +msgid "Please Confirm..." +msgstr "لطفاً تأیید کنید…" + +msgid "Enable grid minimap." +msgstr "فعال سازی شبکه نقشه کوچک." + +msgid "If \"Exp Edit\" is enabled, \"Min Value\" must be greater than 0." +msgstr "اگر \"Exp ویرایش\" فعال است, \"حداقل داده\" باید بزرگتر از 0 باشد." + +msgid "(Other)" +msgstr "(دیگر)" + +msgid "Invalid source for preview." +msgstr "منبع نامعتبر برای پیش نمایش." + +msgid "Invalid source for shader." +msgstr "منبع نامعتبر برای شیدر." + +msgid "Filter" +msgstr "صافی" + +msgid "Repeat" +msgstr "تکرار" + +msgid "Invalid comparison function for that type." +msgstr "عمل مقایسه نامعتبر بزای این نوع." + +msgid "Constants cannot be modified." +msgstr "ثوابت قابل تغییر نیستند." diff --git a/editor/translations/editor/fi.po b/editor/translations/editor/fi.po index 8d349793bf..c35f6b96f1 100644 --- a/editor/translations/editor/fi.po +++ b/editor/translations/editor/fi.po @@ -2700,6 +2700,9 @@ msgstr "" msgid "Runnable" msgstr "Suoritettava" +msgid "Resources to export:" +msgstr "Vietävät resurssit:" + msgid "Delete preset '%s'?" msgstr "Poista esiasetus '%s'?" @@ -2746,9 +2749,6 @@ msgstr "Vie valitut resurssit (ja riippuvuudet)" msgid "Export Mode:" msgstr "Vientitila:" -msgid "Resources to export:" -msgstr "Vietävät resurssit:" - msgid "Keep" msgstr "Pidä" diff --git a/editor/translations/editor/fr.po b/editor/translations/editor/fr.po index bae3234ce7..5857f84ac0 100644 --- a/editor/translations/editor/fr.po +++ b/editor/translations/editor/fr.po @@ -125,13 +125,14 @@ # Hugo cartier <hugo.toticartier@gmail.com>, 2023. # Rémy Lapointe <remy-lapointe@hotmail.ca>, 2023. # "Dimitri A." <dimitripilot3@gmail.com>, 2023. +# Donovan Cartier <donovan.cartier0@gmail.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-10 22:42+0000\n" -"Last-Translator: \"Dimitri A.\" <dimitripilot3@gmail.com>\n" +"PO-Revision-Date: 2023-04-28 14:50+0000\n" +"Last-Translator: Donovan Cartier <donovan.cartier0@gmail.com>\n" "Language-Team: French <https://hosted.weblate.org/projects/godot-engine/" "godot/fr/>\n" "Language: fr\n" @@ -139,7 +140,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.17-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Unset" msgstr "Non défini" @@ -4600,6 +4601,9 @@ msgstr "" "Tous les préréglages doivent avoir un chemin d'exportation défini pour " "pouvoir tous les exportés." +msgid "Resources to export:" +msgstr "Ressources à exporter :" + msgid "Delete preset '%s'?" msgstr "Supprimer le préréglage « %s » ?" @@ -4607,7 +4611,7 @@ msgid "%s Export" msgstr "Export %s" msgid "Release" -msgstr "Publication (release)" +msgstr "Publication" msgid "Exporting All" msgstr "Tout exporter" @@ -4657,9 +4661,6 @@ msgstr "Exporter en tant que serveur dédié" msgid "Export Mode:" msgstr "Mode d'exportation :" -msgid "Resources to export:" -msgstr "Ressources à exporter :" - msgid "" "\"Strip Visuals\" will replace the following resources with placeholders:" msgstr "" @@ -9346,6 +9347,9 @@ msgstr "Créer des os physiques" msgid "Export Skeleton Profile As..." msgstr "Exporter le profil de squelette en tant que..." +msgid "Skeleton3D" +msgstr "Squelette 3D" + msgid "Play IK" msgstr "Jouer IK" @@ -9399,6 +9403,9 @@ msgstr "Géométrie invalide, impossible de créer l'occulteur de lumière." msgid "Create LightOccluder2D Sibling" msgstr "Créer un LightOccluder2D frère" +msgid "Sprite2D" +msgstr "Sprite2D" + msgid "Simplification:" msgstr "Simplification :" @@ -9994,12 +10001,22 @@ msgstr "Retourner verticalement" msgid "Shift+Ctrl: Draw rectangle." msgstr "Maj + Ctrl : Dessiner un rectangle." +msgid "Bucket" +msgstr "Seau de remplissage" + msgid "Eraser" msgstr "Effaceur" msgid "Tiles" msgstr "Tuiles" +msgid "" +"This TileMap's TileSet has no source configured. Edit the TileSet resource " +"to add one." +msgstr "" +"La TileSet de cette TileMap n'a pas de source configurée. Modifier la " +"ressource TileSet pour en ajouter une." + msgid "Drag and drop or paste a TileMap selection here to store a pattern." msgstr "" "Glisser et déposer ou copier une sélection TileMap ici pour stocker un " @@ -10787,6 +10804,13 @@ msgstr "Veuillez choisir un fichier \"project.godot\" ou \".zip\"." msgid "This directory already contains a Godot project." msgstr "Ce répertoire contient déjà un projet Godot." +msgid "" +"The selected path is not empty. Choosing an empty folder is highly " +"recommended." +msgstr "" +"Le chemin sélectionné n'est pas vide. Il est fortement recommandé de choisir " +"un répertoire vide." + msgid "New Game Project" msgstr "Nouveau projet de jeu" @@ -10817,6 +10841,9 @@ msgstr "" msgid "Couldn't save project at '%s' (error %d)." msgstr "Impossible d'enregistrer le projet à \"%s\" (erreur %d)." +msgid "Warning: This folder is not empty" +msgstr "Avertissement : Ce répertoire n'est pas vide" + msgid "" "You are about to create a Godot project in a non-empty folder.\n" "The entire contents of this folder will be imported as project resources!\n" @@ -11150,6 +11177,10 @@ msgstr "Paramètres du projet (project.godot)" msgid "Select a Setting or Type its Name" msgstr "Sélectionnez un paramètre ou tapez son nom" +msgid "Changed settings will be applied to the editor after restarting." +msgstr "" +"Les paramètres modifiés seront appliqués après le redémarrage de l'éditeur." + msgid "Input Map" msgstr "Contrôles" @@ -11734,6 +11765,9 @@ msgid "Invalid instance dictionary (invalid subclasses)" msgstr "" "Instance invalide pour le format de dictionnaire (sous-classes invalides)" +msgid "Export Scene to glTF 2.0 File" +msgstr "Exporter la scène vers un fichier glTF 2.0" + msgid "Path to Blender installation is valid." msgstr "Le chemin d'accès vers l'installation de Blender est valide." @@ -11957,6 +11991,12 @@ msgstr "Ajouter un ensemble d'actions." msgid "Pose" msgstr "Pose" +msgid "Haptic" +msgstr "Haptique" + +msgid "Unknown" +msgstr "Inconnu" + msgid "Package name is missing." msgstr "Nom du paquet manquant." @@ -12968,6 +13008,13 @@ msgid "The AnimationPlayer root node is not a valid node." msgstr "La racine AnimationPlayer n'est pas un nœud valide." msgid "" +"ButtonGroup is intended to be used only with buttons that have toggle_mode " +"set to true." +msgstr "" +"Le ButtonGroup est destiné à être utilisé seulement avec des boutons ayant " +"la valeur de toggle_mode définie sur true." + +msgid "" "Color: #%s\n" "LMB: Apply color\n" "RMB: Remove preset" @@ -13019,6 +13066,9 @@ msgstr "Alerte !" msgid "Please Confirm..." msgstr "Veuillez confirmer…" +msgid "You don't have permission to access contents of this folder." +msgstr "Vous n'avez pas l'autorisation d'accéder au contenu de ce dossier." + msgid "Enable grid minimap." msgstr "Activer l'alignement." @@ -13050,6 +13100,22 @@ msgstr "" "'%s' n'est plus considéré comme ayant un nom unique." msgid "" +"This node is marked as deprecated and will be removed in future versions.\n" +"Please check the Godot documentation for information about migration." +msgstr "" +"Ce nœud est marqué comme déprécié et sera supprimé dans les versions " +"futures.\n" +"Veuillez consulter la documentation de Godot pour des informations sur la " +"migration." + +msgid "" +"This node is marked as experimental and may be subject to removal or major " +"changes in future versions." +msgstr "" +"Ce nœud est marqué comme expérimental et pourrait faire l'objet d'une " +"suppression ou de changements majeurs dans les versions futures." + +msgid "" "Default Environment as specified in Project Settings (Rendering -> " "Environment -> Default Environment) could not be loaded." msgstr "" diff --git a/editor/translations/editor/id.po b/editor/translations/editor/id.po index 7e444c1aa2..4361c97d4c 100644 --- a/editor/translations/editor/id.po +++ b/editor/translations/editor/id.po @@ -45,13 +45,16 @@ # Taufiq Rahman <pxpiksy@gmail.com>, 2023. # Muhammad Azri Fatihah Susanto <muhammad.azri.f.s@gmail.com>, 2023. # ammar sajili <sjlammar@gmail.com>, 2023. +# EngageIndo <admin@engageindo.com>, 2023. +# EngageIndo <engageindo@gmail.com>, 2023. +# Septian Kurniawan <septgsk@outlook.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-15 13:04+0000\n" -"Last-Translator: ammar sajili <sjlammar@gmail.com>\n" +"PO-Revision-Date: 2023-05-12 02:51+0000\n" +"Last-Translator: EngageIndo <engageindo@gmail.com>\n" "Language-Team: Indonesian <https://hosted.weblate.org/projects/godot-engine/" "godot/id/>\n" "Language: id\n" @@ -59,7 +62,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.17-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Unset" msgstr "Batal disetel" @@ -82,12 +85,45 @@ msgstr "Mouse Gulir ke atas." msgid "Mouse Wheel Down" msgstr "Gulir mouse ke bawah" +msgid "Mouse Wheel Left" +msgstr "Gulir Mouse Kiri" + +msgid "Mouse Wheel Right" +msgstr "Gulir Mouse Kanan" + +msgid "Mouse Thumb Button 1" +msgstr "Tombol Jempol Mouse 1" + +msgid "Mouse Thumb Button 2" +msgstr "Tombol Jempol Mouse 2" + msgid "Button" msgstr "Tombol" +msgid "Double Click" +msgstr "Klik ganda" + +msgid "Mouse motion at position (%s) with velocity (%s)" +msgstr "Pergerakan mouse pada posisi (%s) dengan kecepatan (%s)" + msgid "Left Stick X-Axis, Joystick 0 X-Axis" msgstr "Stick Kiri Sumbu X, Joystick 0 Sumbu X" +msgid "Left Stick Y-Axis, Joystick 0 Y-Axis" +msgstr "Stik Kiri Sumbu Y, Joystick 0 Sumbu Y" + +msgid "Right Stick X-Axis, Joystick 1 X-Axis" +msgstr "Stik Kanan Sumbu X, Joystick 1 Sumbu X" + +msgid "Right Stick Y-Axis, Joystick 1 Y-Axis" +msgstr "Stik Kanan Sumbu Y, Joystick 1 Sumbu Y" + +msgid "Joystick 2 X-Axis, Left Trigger, Sony L2, Xbox LT" +msgstr "Joystick 2 Sumbu X, Pemicu Kiri, Sony L2, Xbox LT" + +msgid "Joystick 2 Y-Axis, Right Trigger, Sony R2, Xbox RT" +msgstr "Joystick 2 Sumbu Y, Pemicu Kanan, Sony R2, Xbox RT" + msgid "Joystick 3 X-Axis" msgstr "Joystick 3 Sumbu X" @@ -127,15 +163,95 @@ msgstr "Panduan, Sony PS, Xbox Home" msgid "Start, Nintendo +" msgstr "Mulai, Nintendo +" +msgid "Left Stick, Sony L3, Xbox L/LS" +msgstr "Stik Kiri, Sony L3, Xbox L/LS" + +msgid "Right Stick, Sony R3, Xbox R/RS" +msgstr "Stik Kanan, Sony R3, Xbox R/RS" + +msgid "Left Shoulder, Sony L1, Xbox LB" +msgstr "Bahu Kiri, Sony L1, Xbox LB" + msgid "Right Shoulder, Sony R1, Xbox RB" msgstr "Bahu Kanan, Sony R1, Xbox RB" +msgid "D-pad Up" +msgstr "D-pad Atas" + +msgid "D-pad Down" +msgstr "D-pad Bawah" + +msgid "D-pad Left" +msgstr "D-pad Kiri" + +msgid "D-pad Right" +msgstr "D-pad Kanan" + +msgid "Xbox Share, PS5 Microphone, Nintendo Capture" +msgstr "Xbox Share, PS5 Microphone, Nintendo Capture" + +msgid "Xbox Paddle 1" +msgstr "Xbox Paddle 1" + +msgid "Xbox Paddle 2" +msgstr "Xbox Paddle 2" + +msgid "Xbox Paddle 3" +msgstr "Xbox Paddle 3" + +msgid "Xbox Paddle 4" +msgstr "Xbox Paddle 4" + +msgid "PS4/5 Touchpad" +msgstr "PS4/5 Touchpad" + +msgid "Joypad Button %d" +msgstr "Tombol Joystick %d" + +msgid "Pressure:" +msgstr "Tekanan:" + +msgid "touched" +msgstr "disentuh" + +msgid "released" +msgstr "dirilis" + +msgid "Screen %s at (%s) with %s touch points" +msgstr "Layar %s pada (%s) dengan titik sentuh %s" + +msgid "" +"Screen dragged with %s touch points at position (%s) with velocity of (%s)" +msgstr "" +"Layar diseret dengan %s titik sentuh pada posisi (%s) dengan kecepatan (%s)" + +msgid "Magnify Gesture at (%s) with factor %s" +msgstr "Memperbesar Gerakan pada (%s) dengan faktor %s" + +msgid "Pan Gesture at (%s) with delta (%s)" +msgstr "Gestur Pan pada (%s) dengan delta (%s)" + +msgid "MIDI Input on Channel=%s Message=%s" +msgstr "Input MIDI pada Channel=%s Pesan =%s" + +msgid "Input Event with Shortcut=%s" +msgstr "Memasukkan Event dengan Pintasan=%s" + +msgid "Accept" +msgstr "Terima" + msgid "Select" msgstr "Pilih" msgid "Cancel" msgstr "Batal" +msgid "Focus Next" +msgstr "Fokus Berikutnya" + +msgid "Focus Prev" +msgstr "Fokus Sebelumnya" + msgid "Left" msgstr "Kiri" @@ -148,6 +264,15 @@ msgstr "Naikkan" msgid "Down" msgstr "Turunkan" +msgid "Page Up" +msgstr "Halaman Atas" + +msgid "Page Down" +msgstr "Halaman ke Bawah" + +msgid "Home" +msgstr "Beranda" + msgid "End" msgstr "Akhir" @@ -166,24 +291,129 @@ msgstr "Batal" msgid "Redo" msgstr "Ulangi" +msgid "Completion Query" +msgstr "Kueri Penyelesaian" + +msgid "New Line" +msgstr "Baris Baru" + +msgid "New Blank Line" +msgstr "Baris kosong baru" + +msgid "New Line Above" +msgstr "Baris Baru di Atas" + msgid "Indent" msgstr "Indentasi" +msgid "Dedent" +msgstr "Dedentasi" + +msgid "Backspace" +msgstr "Kembali" + +msgid "Backspace Word" +msgstr "Hapus Word" + +msgid "Backspace all to Left" +msgstr "Hapus semua ke Kiri" + msgid "Delete" msgstr "Hapus" +msgid "Delete Word" +msgstr "Hapus Kata" + +msgid "Delete all to Right" +msgstr "Hapus semua ke Kanan" + +msgid "Caret Left" +msgstr "Caret Kiri" + +msgid "Caret Word Left" +msgstr "Kata Caret Kiri" + +msgid "Caret Right" +msgstr "Caret Kanan" + +msgid "Caret Word Right" +msgstr "Kata Caret Kanan" + +msgid "Caret Up" +msgstr "Caret Atas" + +msgid "Caret Down" +msgstr "Caret Bawah" + +msgid "Caret Line Start" +msgstr "Caret Mulai Baris" + +msgid "Caret Line End" +msgstr "Caret Ujung Baris" + +msgid "Caret Page Up" +msgstr "Caret Halaman Atas" + +msgid "Caret Page Down" +msgstr "Caret Halaman Bawah" + +msgid "Caret Document Start" +msgstr "Caret Mulai Dokumen" + +msgid "Caret Document End" +msgstr "Caret Akhir Dokumen" + +msgid "Caret Add Below" +msgstr "Caret Tambahkan Di Bawah" + +msgid "Caret Add Above" +msgstr "Caret Tambahkan di Atas" + +msgid "Scroll Up" +msgstr "Gulir ke Atas" + +msgid "Scroll Down" +msgstr "Gulir ke Bawah" + msgid "Select All" msgstr "Pilih Semua" +msgid "Select Word Under Caret" +msgstr "Pilih Kata di Bawah Caret" + +msgid "Add Selection for Next Occurrence" +msgstr "Tambahkan Pilihan untuk Kejadian Berikutnya" + +msgid "Clear Carets and Selection" +msgstr "Hapus Caret dan Seleksi" + +msgid "Toggle Insert Mode" +msgstr "Alihkan Mode Sisipkan" + +msgid "Submit Text" +msgstr "Kirim Teks" + msgid "Duplicate Nodes" msgstr "Duplikat Node" msgid "Delete Nodes" msgstr "Hapus Node" +msgid "Go Up One Level" +msgstr "Naik Satu Tingkat" + msgid "Refresh" msgstr "Segarkan" +msgid "Show Hidden" +msgstr "Tampilkan Tersembunyi" + +msgid "Swap Input Direction" +msgstr "Tukar Arah Masukan" + +msgid "Invalid input %d (not passed) in expression" +msgstr "Masukkan tidak sah %d (tidak lulus) dalam ekspresi" + msgid "self can't be used because instance is null (not passed)" msgstr "" "self tidak dapat digunakan karena nilai instansi adalah null (tidak lolos)" @@ -203,6 +433,12 @@ msgstr "Argumen tidak valid untuk membangun '%s'" msgid "On call to '%s':" msgstr "Pada pemanggilan '%s':" +msgid "Built-in script" +msgstr "Skrip bawaan" + +msgid "Built-in" +msgstr "Bawaan" + msgid "B" msgstr "B" @@ -224,6 +460,13 @@ msgstr "PiB" msgid "EiB" msgstr "EiB" +msgid "Example: %s" +msgstr "Contoh: %s" + +msgid "%d item" +msgid_plural "%d items" +msgstr[0] "%d item" + msgid "" "Invalid action name. It cannot be empty nor contain '/', ':', '=', '\\' or " "'\"'" @@ -234,17 +477,47 @@ msgstr "" msgid "An action with the name '%s' already exists." msgstr "Sudah ada aksi dengan nama '%s'." +msgid "Cannot Revert - Action is same as initial" +msgstr "Tidak Dapat Dikembalikan - Tindakan sama seperti awal" + +msgid "Revert Action" +msgstr "Kembalikan Tindakan" + msgid "Add Event" msgstr "Tambah Event" +msgid "Remove Action" +msgstr "Hapus Tindakan" + +msgid "Cannot Remove Action" +msgstr "Tidak Dapat Menghapus Tindakan" + +msgid "Edit Event" +msgstr "Edit Event" + +msgid "Remove Event" +msgstr "Menghapus Event" + +msgid "Filter by name..." +msgstr "Filter berdasarkan nama..." + +msgid "Clear All" +msgstr "Hapus Semua" + +msgid "Add New Action" +msgstr "Tambahkan Tindakan Baru" + msgid "Add" msgstr "Tambah" +msgid "Show Built-in Actions" +msgstr "Tampilkan Tindakan Bawaan" + msgid "Action" msgstr "Aksi" msgid "Deadzone" -msgstr "Zona mati" +msgstr "Deadzone" msgid "Time:" msgstr "Waktu:" @@ -252,6 +525,9 @@ msgstr "Waktu:" msgid "Value:" msgstr "Nilai:" +msgid "Update Selected Key Handles" +msgstr "Perbarui Pegangan Kunci yang Dipilih" + msgid "Insert Key Here" msgstr "Sisipkan Key Disini" @@ -261,21 +537,99 @@ msgstr "Duplikat Key Terpilih" msgid "Delete Selected Key(s)" msgstr "Hapus Kunci Terpilih" +msgid "Make Handles Free" +msgstr "Membuat Bebas Pegangan" + +msgid "Make Handles Linear" +msgstr "Membuat Pegangan Linear" + +msgid "Make Handles Balanced" +msgstr "Membuat Pegangan Seimbang" + +msgid "Make Handles Mirrored" +msgstr "Membuat Pegangan Dicerminkan" + +msgid "Make Handles Balanced (Auto Tangent)" +msgstr "Membuat Pegangan Seimbang (Auto Tangent)" + +msgid "Make Handles Mirrored (Auto Tangent)" +msgstr "Membuat Pegangan Dicerminkan (Auto Tangent)" + msgid "Add Bezier Point" msgstr "Tambahkan Titik Bezier" msgid "Move Bezier Points" msgstr "Pindah Titik-titik Bezier" +msgid "Animation Duplicate Keys" +msgstr "Kunci Duplikat Animasi" + +msgid "Animation Delete Keys" +msgstr "Kunci Hapus Animasi" + +msgid "Focus" +msgstr "Fokus" + +msgid "Select All Keys" +msgstr "Pilih Semua Kunci" + +msgid "Deselect All Keys" +msgstr "Batalkan Pilihan Semua Kunci" + +msgid "Animation Change Transition" +msgstr "Ubah Transisi Animasi" + +msgid "Animation Change %s" +msgstr "Ubah Animasi %s" + +msgid "Animation Change Keyframe Value" +msgstr "Ubah Nilai Keyframe Animasi" + +msgid "Animation Change Call" +msgstr "Ubah Panggilan Animasi" + +msgid "Animation Multi Change Transition" +msgstr "Ubah Beberapa Transisi Animasi" + +msgid "Animation Multi Change %s" +msgstr "Ubah Beberapa Animasi %s" + +msgid "Animation Multi Change Keyframe Value" +msgstr "Ubah Beberapa Nilai Keyframe Animasi" + +msgid "Animation Multi Change Call" +msgstr "Ubah Beberapa Panggilan Animasi" + msgid "Change Animation Length" msgstr "Ubah Panjang Animasi" msgid "Change Animation Loop" msgstr "Ubah Perulangan Animasi" +msgid "Can't change loop mode on animation instanced from imported scene." +msgstr "" +"Tidak dapat mengubah mode loop pada animasi yang dibuat dari adegan yang " +"diimpor." + +msgid "Can't change loop mode on animation embedded in another scene." +msgstr "" +"Tidak dapat mengubah mode loop pada animasi yang disematkan di adegan lain." + msgid "Property Track" msgstr "Track Properti" +msgid "3D Position Track" +msgstr "Trek Posisi 3D" + +msgid "3D Rotation Track" +msgstr "Trek Rotasi 3D" + +msgid "3D Scale Track" +msgstr "Trek Transformasi 3D" + +msgid "Blend Shape Track" +msgstr "Trek Paduan Bentuk" + msgid "Call Method Track" msgstr "Track Pemanggil Metode" @@ -306,12 +660,18 @@ msgstr "Fungsi-fungsi:" msgid "Audio Clips:" msgstr "Klip-klip Suara:" +msgid "Animation Clips:" +msgstr "Klip Animasi:" + msgid "Change Track Path" msgstr "Ubah Jalan Trek" msgid "Toggle this track on/off." msgstr "Alihkan track ini ke nyala/mati." +msgid "Use Blend" +msgstr "Gunakan Blend" + msgid "Update Mode (How this property is set)" msgstr "Mode Pembaruan (Bagaimana properti ini akan di terapkan)" @@ -324,15 +684,66 @@ msgstr "Mode Putaran Berulang (Interpolasi akhir dan awal perulangan)" msgid "Remove this track." msgstr "Hapus track ini." +msgid "Time (s):" +msgstr "Waktu (s):" + +msgid "Position:" +msgstr "Posisi:" + +msgid "Rotation:" +msgstr "Rotasi:" + msgid "Scale:" msgstr "Skala:" +msgid "Blend Shape:" +msgstr "Bentuk Campuran:" + msgid "Type:" msgstr "Jenis:" +msgid "(Invalid, expected type: %s)" +msgstr "(Tidak valid, tipe yang diharapkan: %s)" + +msgid "Easing:" +msgstr "Pelonggaran:" + +msgid "In-Handle:" +msgstr "Dalam Genggaman:" + +msgid "Out-Handle:" +msgstr "Diluar Genggaman:" + +msgid "Handle mode: Free\n" +msgstr "Mode pegangan: Gratis\n" + +msgid "Handle mode: Linear\n" +msgstr "Mode pegangan: Linear\n" + +msgid "Handle mode: Balanced\n" +msgstr "Mode pegangan: Seimbang\n" + +msgid "Handle mode: Mirrored\n" +msgstr "Mode pegangan: Dicerminkan\n" + +msgid "Stream:" +msgstr "Aliran:" + +msgid "Start (s):" +msgstr "Mulai (s):" + +msgid "End (s):" +msgstr "Akhir (s):" + +msgid "Animation Clip:" +msgstr "Klip Animasi:" + msgid "Toggle Track Enabled" msgstr "Aktifkan Trek Beralih" +msgid "Don't Use Blend" +msgstr "Jangan Gunakan Campuran" + msgid "Continuous" msgstr "Lanjut" @@ -351,6 +762,12 @@ msgstr "Linier" msgid "Cubic" msgstr "Kubik" +msgid "Linear Angle" +msgstr "Sudut Linier" + +msgid "Cubic Angle" +msgstr "Sudut Kubik" + msgid "Clamp Loop Interp" msgstr "Interpolasi perulangan clamp" @@ -378,12 +795,31 @@ msgstr "Ubah Mode Interpolasi Animasi" msgid "Change Animation Loop Mode" msgstr "Ubah Mode Perulangan Animasi" +msgid "Change Animation Use Blend" +msgstr "Ubah Animasi Gunakan Campuran" + +msgid "" +"Compressed tracks can't be edited or removed. Re-import the animation with " +"compression disabled in order to edit." +msgstr "" +"Track yang dikompresi tidak dapat diedit atau dihapus. Impor ulang animasi " +"dengan kompresi yang dinonaktifkan untuk mengedit." + msgid "Remove Anim Track" msgstr "Hapus Trek Anim" +msgid "Create new track for %s and insert key?" +msgstr "Buat track baru untuk %s dan sisipkan kunci?" + +msgid "Create %d new tracks and insert keys?" +msgstr "Membuat %d track baru dan menyisipkan kunci?" + msgid "Create" msgstr "Buat" +msgid "Animation Insert Key" +msgstr "Kunci Sisipan Animasi" + msgid "node '%s'" msgstr "node '%s'" @@ -403,6 +839,12 @@ msgstr "Ubah Langkah Animasi" msgid "Rearrange Tracks" msgstr "Susun ulang Trek-trek" +msgid "Blend Shape tracks only apply to MeshInstance3D nodes." +msgstr "Trek Campuran Shape hanya berlaku untuk node MeshInstance3D." + +msgid "Position/Rotation/Scale 3D tracks only apply to 3D-based nodes." +msgstr "Trek Posisi/Rotasi/Skala 3D hanya berlaku untuk node berbasis 3D." + msgid "" "Audio tracks can only point to nodes of type:\n" "-AudioStreamPlayer\n" @@ -429,6 +871,18 @@ msgstr "Tambah Track Bezier" msgid "Track path is invalid, so can't add a key." msgstr "Tidak bisa menambahkan key karena path pada track tidak sah." +msgid "Track is not of type Node3D, can't insert key" +msgstr "Trek bukan tipe Node3D, tidak dapat memasukkan kunci" + +msgid "Add Position Key" +msgstr "Tambahkan Kunci Posisi" + +msgid "Add Rotation Key" +msgstr "Tambahkan Kunci Rotasi" + +msgid "Add Scale Key" +msgstr "Tambahkan Kunci Skala" + msgid "Add Track Key" msgstr "Tambah Kunci Track" @@ -439,6 +893,12 @@ msgstr "" msgid "Add Method Track Key" msgstr "Tambah Kunci Track Metode" +msgid "Method not found in object:" +msgstr "Metode tidak ditemukan dalam objek:" + +msgid "Animation Move Keys" +msgstr "Kunci Pindah Animasi" + msgid "Position" msgstr "Posisi" @@ -448,6 +908,9 @@ msgstr "Rotasi" msgid "Scale" msgstr "Skala" +msgid "BlendShape" +msgstr "BlendShape" + msgid "Methods" msgstr "Method" @@ -463,10 +926,41 @@ msgstr "Papan klip kosong!" msgid "Paste Tracks" msgstr "Tempel Trek-trek" +msgid "Animation Scale Keys" +msgstr "Kunci Skala Animasi" + +msgid "Make Easing Keys" +msgstr "Buat Kunci Pelonggaran" + msgid "" "This option does not work for Bezier editing, as it's only a single track." msgstr "Opsi ini tidak bisa untuk mengedit Bezier, karena hanya satu track." +msgid "Animation Add RESET Keys" +msgstr "Animasi Tambahkan Kunci RESET" + +msgid "Bake Animation as Linear keys." +msgstr "Bake Animasi sebagai Kunci Linier." + +msgid "" +"This animation belongs to an imported scene, so changes to imported tracks " +"will not be saved.\n" +"\n" +"To modify this animation, navigate to the scene's Advanced Import settings " +"and select the animation.\n" +"Some options, including looping, are available here. To add custom tracks, " +"enable \"Save To File\" and\n" +"\"Keep Custom Tracks\"." +msgstr "" +"Animasi ini termasuk dalam adegan yang diimpor, jadi perubahan pada trek " +"yang diimpor tidak akan disimpan.\n" +"\n" +"Untuk memodifikasi animasi ini, buka pengaturan Impor Lanjutan adegan dan " +"pilih animasi.\n" +"Beberapa opsi, termasuk perulangan, tersedia di sini. Untuk menambahkan trek " +"khusus, aktifkan \"Simpan Ke File\" dan\n" +"\"Simpan Trek Khusus\"." + msgid "Warning: Editing imported animation" msgstr "Peringatan: Menyunting animasi yang diimpor" @@ -474,6 +968,12 @@ msgid "Select an AnimationPlayer node to create and edit animations." msgstr "" "Lokasi untuk node AnimationPlayer yang mengandung animasi belum diatur." +msgid "Imported Scene" +msgstr "Adegan yang Diimpor" + +msgid "Toggle between the bezier curve editor and track editor." +msgstr "Beralih antara editor kurva bezier dan editor trek." + msgid "Only show tracks from nodes selected in tree." msgstr "Hanya tampilkan track dari node terpilih dalam tree." @@ -507,6 +1007,9 @@ msgstr "Seleksi Skala" msgid "Scale From Cursor" msgstr "Skala dari Kursor" +msgid "Make Easing Selection" +msgstr "Buat Pilihan Pelonggaran" + msgid "Duplicate Selection" msgstr "Duplikat Pilihan" @@ -525,12 +1028,36 @@ msgstr "Pergi ke Langkah Sebelumnya" msgid "Apply Reset" msgstr "Terapkan Reset" +msgid "Bake Animation" +msgstr "Bake Animasi" + +msgid "Optimize Animation (no undo)" +msgstr "Optimalkan Animasi (tanpa undo)" + +msgid "Clean-Up Animation (no undo)" +msgstr "Bersihkan Animasi (tanpa undo)" + +msgid "Pick a node to animate:" +msgstr "Pilih node yang ingin dianimasikan:" + msgid "Use Bezier Curves" msgstr "Gunakan Lengkungan Bezier" msgid "Create RESET Track(s)" msgstr "Buat RESET Track" +msgid "Animation Optimizer" +msgstr "Pengoptimal Animasi" + +msgid "Max Velocity Error:" +msgstr "Kesalahan Kecepatan Maksimum:" + +msgid "Max Angular Error:" +msgstr "Kesalahan Sudut Maksimum:" + +msgid "Max Precision Error:" +msgstr "Kesalahan Presisi Maksimum:" + msgid "Optimize" msgstr "Optimalkan" @@ -552,12 +1079,21 @@ msgstr "Bersihkan" msgid "Scale Ratio:" msgstr "Rasio Skala:" +msgid "Select Transition and Easing" +msgstr "Pilih Transisi dan Pelonggaran" + +msgid "Animation Baker" +msgstr "Animasi Baker" + msgid "Select Tracks to Copy" msgstr "Pilih Trek untuk Disalin" msgid "Select All/None" msgstr "Pilih Semua/Tidak Pilih Semua" +msgid "Animation Change Keyframe Time" +msgstr "Animasi Ubah Waktu Keyframe" + msgid "Add Audio Track Clip" msgstr "Tambah Clip Trek Audio" @@ -576,6 +1112,14 @@ msgstr "Nomor Baris:" msgid "%d replaced." msgstr "%d telah diganti." +msgid "%d match" +msgid_plural "%d matches" +msgstr[0] "%d cocok" + +msgid "%d of %d match" +msgid_plural "%d of %d matches" +msgstr[0] "%d dari %d cocok" + msgid "Match Case" msgstr "Kasus Kecocokan" @@ -625,6 +1169,9 @@ msgstr "" "Target method tidak ditemukan. Tentukan method yang valid atau lampirkan " "skrip ke target node." +msgid "Attached Script" +msgstr "Skrip Terlampir" + msgid "Connect to Node:" msgstr "Hubungkan ke Node:" @@ -634,12 +1181,30 @@ msgstr "Hubungkan ke Skrip:" msgid "From Signal:" msgstr "Dari Sinyal:" +msgid "Filter Nodes" +msgstr "Filter Node" + +msgid "Go to Source" +msgstr "Pergi ke Sumber" + msgid "Scene does not contain any script." msgstr "Skena tidak berisi skrip apapun." msgid "Select Method" msgstr "Pilih Method/Fungsi" +msgid "Filter Methods" +msgstr "Filter method" + +msgid "No method found matching given filters." +msgstr "Tidak ditemukan metode yang cocok dengan filter yang diberikan." + +msgid "Script Methods Only" +msgstr "Metode Skrip Saja" + +msgid "Compatible Methods Only" +msgstr "Metode yang Kompatibel Saja" + msgid "Remove" msgstr "Hapus" @@ -649,6 +1214,13 @@ msgstr "Tambah Argumen Panggilan Ekstra:" msgid "Extra Call Arguments:" msgstr "Argumen-argumen Panggilan Ekstra:" +msgid "Allows to drop arguments sent by signal emitter." +msgstr "" +"Memungkinkan untuk membatalkan argumen yang dikirim oleh pemancar sinyal." + +msgid "Unbind Signal Arguments:" +msgstr "Lepaskan Argumen Sinyal:" + msgid "Receiver Method:" msgstr "Fungsi Penerima:" @@ -663,6 +1235,9 @@ msgid "" msgstr "" "Menahan sinyal, menyimpannya dalam antrean dan hanya memicunya saat idle." +msgid "One Shot" +msgstr "Satu Tembakan" + msgid "Disconnects the signal after its first emission." msgstr "Memutuskan sinyal setelah pemicuan pertama." @@ -678,6 +1253,9 @@ msgstr "Menghubungkan" msgid "Signal:" msgstr "Sinyal:" +msgid "No description." +msgstr "Tidak ada deskripsi." + msgid "Connect '%s' to '%s'" msgstr "Sambungkan '%s' ke '%s'" @@ -696,24 +1274,36 @@ msgstr "Putuskan" msgid "Connect a Signal to a Method" msgstr "Hubungkan Sinyal ke Method" +msgid "Edit Connection: '%s'" +msgstr "Edit Koneksi: '%s'" + msgid "Are you sure you want to remove all connections from the \"%s\" signal?" msgstr "Anda yakin ingin menghapus semua hubungan dari sinyal '%s'?" msgid "Signals" msgstr "Sinyal" +msgid "Filter Signals" +msgstr "Filter Sinyal" + msgid "Are you sure you want to remove all connections from this signal?" msgstr "Anda yakin ingin menghapus semua hubungan dari sinyal ini?" msgid "Disconnect All" msgstr "Putuskan Semuanya" +msgid "Copy Name" +msgstr "Salin Nama" + msgid "Edit..." msgstr "Edit..." msgid "Go to Method" msgstr "Menuju Ke Metode" +msgid "Change Type of \"%s\"" +msgstr "Ubah Jenis \"%s\"" + msgid "Change" msgstr "Ubah" @@ -723,6 +1313,12 @@ msgstr "Buat %s baru" msgid "No results for \"%s\"." msgstr "Tidak ada hasil untuk \"%s\"." +msgid "This class is marked as deprecated." +msgstr "Kelas ini ditandai sebagai usang." + +msgid "This class is marked as experimental." +msgstr "Kelas ini ditandai sebagai eksperimental." + msgid "No description available for %s." msgstr "Tidak ada deskripsi tersedia untuk %s." @@ -732,6 +1328,9 @@ msgstr "Favorit:" msgid "Recent:" msgstr "Saat ini:" +msgid "(Un)favorite selected item." +msgstr "(Batalkan) item pilihan favorit." + msgid "Search:" msgstr "Cari:" @@ -741,6 +1340,9 @@ msgstr "Kecocokan:" msgid "Description:" msgstr "Deskripsi:" +msgid "Remote %s:" +msgstr "Jarak jauh %s:" + msgid "Debugger" msgstr "Pengawakutu" @@ -756,9 +1358,21 @@ msgstr "Salin Lokasi Node" msgid "Instance:" msgstr "Instansi:" +msgid "" +"This node has been instantiated from a PackedScene file:\n" +"%s\n" +"Click to open the original file in the Editor." +msgstr "" +"Node ini telah diinstansiasi dari file PackedScene:\n" +"%s\n" +"Klik untuk membuka file asli di Editor." + msgid "Toggle Visibility" msgstr "Jungkitkan Visibilitas" +msgid "ms" +msgstr "ms" + msgid "Monitors" msgstr "Pemantau" @@ -828,6 +1442,21 @@ msgstr "Waktu" msgid "Calls" msgstr "Panggil" +msgid "Fit to Frame" +msgstr "Pas dengan Bingkai" + +msgid "Linked" +msgstr "Terhubung" + +msgid "CPU" +msgstr "CPU" + +msgid "GPU" +msgstr "GPU" + +msgid "Execution resumed." +msgstr "Eksekusi dilanjutkan." + msgid "Bytes:" msgstr "Bytes:" @@ -840,9 +1469,39 @@ msgstr "Error:" msgid "%s Error" msgstr "%s Error" +msgid "%s Error:" +msgstr "%s Kesalahan:" + +msgid "%s Source" +msgstr "%s Sumber" + +msgid "%s Source:" +msgstr "%s Sumber:" + msgid "Stack Trace" msgstr "Jejak Tumpukan" +msgid "Stack Trace:" +msgstr "Jejak Tumpukan:" + +msgid "Debug session started." +msgstr "Sesi debug dimulai." + +msgid "Debug session closed." +msgstr "Sesi debug ditutup." + +msgid "Line %d" +msgstr "Baris %d" + +msgid "Delete Breakpoint" +msgstr "Hapus Breakpoint" + +msgid "Delete All Breakpoints in:" +msgstr "Hapus Semua Breakpoints dalam:" + +msgid "Delete All Breakpoints" +msgstr "Hapus Semua Breakpoint" + msgid "Copy Error" msgstr "Salin Error" @@ -873,6 +1532,9 @@ msgstr "Lanjutkan" msgid "Stack Frames" msgstr "Stack Frame" +msgid "Filter Stack Variables" +msgstr "Filter Kumpulan Variabel" + msgid "Breakpoints" msgstr "Breakpoint" @@ -883,7 +1545,10 @@ msgid "Collapse All" msgstr "Lipat Semua" msgid "Profiler" -msgstr "Profiler(debugger/pemantauan)" +msgstr "Profiler" + +msgid "Visual Profiler" +msgstr "Profiler Visual" msgid "List of Video Memory Usage by Resource:" msgstr "Daftar Penggunaan Memori Video oleh Resource:" @@ -971,6 +1636,15 @@ msgstr "Buka Skena" msgid "Open Scenes" msgstr "Buka Skena" +msgid "Owners of: %s (Total: %d)" +msgstr "Pemilik dari: %s (Total: %d)" + +msgid "Localization remap" +msgstr "Pemetaan ulang lokalisasi" + +msgid "Localization remap for path '%s' and locale '%s'." +msgstr "Pemetaan ulang lokalisasi untuk jalur '%s' dan lokal '%s'." + msgid "" "Remove the selected files from the project? (Cannot be undone.)\n" "Depending on your filesystem configuration, the files will either be moved " @@ -1044,6 +1718,10 @@ msgstr "Penemu Proyek" msgid "Lead Developer" msgstr "Pengembang Utama" +msgctxt "Job Title" +msgid "Project Manager" +msgstr "Manajer Proyek" + msgid "Developers" msgstr "Pengembang" @@ -1184,6 +1862,12 @@ msgstr "Jalan Lingkar" msgid "Bus Options" msgstr "Pilihan Bus" +msgid "Duplicate Bus" +msgstr "Bus Duplikat" + +msgid "Delete Bus" +msgstr "Hapus Bus" + msgid "Reset Volume" msgstr "Setel Ulang Volume" @@ -1220,6 +1904,9 @@ msgstr "Buka Layout Suara Bus" msgid "There is no '%s' file." msgstr "Tidak ada berkas '%s'." +msgid "Layout:" +msgstr "Tata letak:" + msgid "Invalid file, not an audio bus layout." msgstr "Berkas salah, tidak layout suara bus." @@ -1253,27 +1940,42 @@ msgstr "Muat default Layout Bus." msgid "Create a new Bus Layout." msgstr "Buat Layout Bus Baru." +msgid "Audio Bus Layout" +msgstr "Tata Letak Bus Audio" + msgid "Invalid name." msgstr "Nama tidak sah." +msgid "Cannot begin with a digit." +msgstr "Tidak dapat dimulai dengan angka." + msgid "Valid characters:" msgstr "Karakter sah:" msgid "Must not collide with an existing engine class name." msgstr "Tidak boleh sama dengan nama kelas engine yang sudah ada." +msgid "Must not collide with an existing global script class name." +msgstr "Tidak boleh bertabrakan dengan nama kelas skrip global yang sudah ada." + msgid "Must not collide with an existing built-in type name." msgstr "Tidak boleh sama dengan nama tipe bawaan yang ada." msgid "Must not collide with an existing global constant name." msgstr "Tidak boleh sama dengan nama konstanta global yang ada." +msgid "Keyword cannot be used as an Autoload name." +msgstr "Keyword tidak dapat dijadikan sebagai nama autoload." + msgid "Autoload '%s' already exists!" msgstr "Autoload '%s' telah ada!" msgid "Rename Autoload" msgstr "Namai kembali Autoload" +msgid "Toggle Autoload Globals" +msgstr "Alihkan AutoLoad Global" + msgid "Move Autoload" msgstr "Pindahkan Autoload" @@ -1286,6 +1988,9 @@ msgstr "Aktifkan" msgid "Rearrange Autoloads" msgstr "Mengatur kembali Autoload-autoload" +msgid "Can't add Autoload:" +msgstr "Tidak dapat menambahkan Autoload:" + msgid "%s is an invalid path. File does not exist." msgstr "%s adalah jalur yang tidak valid. Berkas tidak ada." @@ -1293,21 +1998,142 @@ msgid "%s is an invalid path. Not in resource path (res://)." msgstr "" "%s adalah jalur yang tidak valid. Tidak dalam jalur sumber daya (res://)." +msgid "Add Autoload" +msgstr "Tambahkan Autoload" + msgid "Path:" msgstr "Jalur:" +msgid "Set path or press \"%s\" to create a script." +msgstr "Tetapkan jalur atau tekan \"%s\" untuk membuat skrip." + msgid "Node Name:" msgstr "Nama Node:" msgid "Global Variable" msgstr "Variabel Global" +msgid "3D Engine" +msgstr "Mesin 3D" + +msgid "2D Physics" +msgstr "Fisik 2D" + +msgid "3D Physics" +msgstr "Fisik 3D" + msgid "Navigation" msgstr "Navigasi" +msgid "XR" +msgstr "XR" + +msgid "RenderingDevice" +msgstr "PerangkatRendering" + msgid "OpenGL" msgstr "OpenGL" +msgid "Vulkan" +msgstr "Vulkan" + +msgid "Text Server: Fallback" +msgstr "Server Teks: Mundur" + +msgid "Text Server: Advanced" +msgstr "Server Teks: Tingkat Lanjut" + +msgid "TTF, OTF, Type 1, WOFF1 Fonts" +msgstr "Font TTF, OTF, Type 1, WOFF1" + +msgid "WOFF2 Fonts" +msgstr "WOFF2 Font" + +msgid "SIL Graphite Fonts" +msgstr "Font Graphite SIL" + +msgid "Multi-channel Signed Distance Field Font Rendering" +msgstr "Rendering Font Bidang Jarak Bertanda Multi-saluran" + +msgid "3D Nodes as well as RenderingServer access to 3D features." +msgstr "Node 3D serta akses RenderingServer ke fitur 3D." + +msgid "2D Physics nodes and PhysicsServer2D." +msgstr "Node Fisika 2D dan PhysicsServer2D." + +msgid "3D Physics nodes and PhysicsServer3D." +msgstr "Node Fisika 3D dan PhysicsServer3D." + +msgid "Navigation, both 2D and 3D." +msgstr "Navigasi, baik 2D maupun 3D." + +msgid "XR (AR and VR)." +msgstr "XR (AR dan VR)." + +msgid "" +"RenderingDevice based rendering (if disabled, the OpenGL back-end is " +"required)." +msgstr "" +"RenderingDevice berbasis perangkat (jika dinonaktifkan, diperlukan back-end " +"OpenGL)." + +msgid "" +"OpenGL back-end (if disabled, the RenderingDevice back-end is required)." +msgstr "" +"Back-end OpenGL (jika dinonaktifkan, diperlukan back-end RenderingDevice)." + +msgid "Vulkan back-end of RenderingDevice." +msgstr "Vulkan back-end dari RenderingDevice." + +msgid "" +"Fallback implementation of Text Server\n" +"Supports basic text layouts." +msgstr "" +"Implementasi fallback dari Server Teks\n" +"Mendukung tata letak teks dasar." + +msgid "" +"Text Server implementation powered by ICU and HarfBuzz libraries.\n" +"Supports complex text layouts, BiDi, and contextual OpenType font features." +msgstr "" +"Implementasi Server Teks yang didukung oleh pustaka ICU dan HarfBuzz.\n" +"Mendukung tata letak teks yang kompleks, BiDi, dan fitur font OpenType " +"kontekstual." + +msgid "" +"TrueType, OpenType, Type 1, and WOFF1 font format support using FreeType " +"library (if disabled, WOFF2 support is also disabled)." +msgstr "" +"Dukungan format font TrueType, OpenType, Type 1, dan WOFF1 menggunakan " +"pustaka FreeType (jika dinonaktifkan, dukungan WOFF2 juga dinonaktifkan)." + +msgid "WOFF2 font format support using FreeType and Brotli libraries." +msgstr "Dukungan format font WOFF2 menggunakan pustaka FreeType dan Brotli." + +msgid "" +"SIL Graphite smart font technology support (supported by Advanced Text " +"Server only)." +msgstr "" +"Dukungan teknologi font pintar SIL Graphite (hanya didukung oleh Advanced " +"Text Server)." + +msgid "" +"Multi-channel signed distance field font rendering support using msdfgen " +"library (pre-rendered MSDF fonts can be used even if this option disabled)." +msgstr "" +"Dukungan rendering font bidang jarak bertanda multi-saluran menggunakan " +"pustaka msdfgen (font MSDF yang telah dirender sebelumnya dapat digunakan " +"meskipun opsi ini dinonaktifkan)." + +msgid "General Features:" +msgstr "Fitur Umum:" + +msgid "Text Rendering and Font Options:" +msgstr "Opsi Perenderan Teks dan Jenis Huruf:" + +msgid "File saving failed." +msgstr "Penyimpanan file gagal." + msgid "Nodes and Classes:" msgstr "Node dan Kelas:" @@ -1323,12 +2149,42 @@ msgstr "Baru" msgid "Save" msgstr "Simpan" +msgid "Profile:" +msgstr "Profil:" + msgid "Reset to Defaults" msgstr "Kembalikan ke Nilai Baku" +msgid "Detect from Project" +msgstr "Deteksi dari Proyek" + +msgid "Actions:" +msgstr "Aksi:" + +msgid "Configure Engine Build Profile:" +msgstr "Konfigurasi Mesin Build Profil:" + +msgid "Please Confirm:" +msgstr "Mohon konfirmasi:" + +msgid "Engine Build Profile" +msgstr "Mesin Build Profil" + +msgid "Load Profile" +msgstr "Muat Profil" + msgid "Export Profile" msgstr "Ekspor Profil" +msgid "Forced classes on detect:" +msgstr "Paksa kelas ssat terdeteksi:" + +msgid "Edit Build Configuration Profile" +msgstr "Edit Konfigurasi Build Profil" + +msgid "Filter Commands" +msgstr "Perintah Filter" + msgid "Paste Params" msgstr "Tempel Parameter" @@ -1350,6 +2206,9 @@ msgstr "[belum disimpan]" msgid "Please select a base directory first." msgstr "Slahkan pilih direktori kerja terlebih dahulu." +msgid "Could not create folder. File with that name already exists." +msgstr "Tidak dapat membuat folder. File dengan nama tersebut sudah ada." + msgid "Choose a Directory" msgstr "Pilih sebuah Direktori" @@ -1386,6 +2245,9 @@ msgstr "Berkas Sistem" msgid "Import Dock" msgstr "Dok Impor" +msgid "History Dock" +msgstr "Dok Sejarah" + msgid "Allows to view and edit 3D scenes." msgstr "Memungkinkan untuk melihat dan mengedit scene 3D." @@ -1416,6 +2278,9 @@ msgstr "" "Memungkinkan untuk mengkonfigurasi pengaturan impor untuk aset individu. " "Membutuhkan dock FileSystem untuk berfungsi." +msgid "Provides an overview of the editor's and each scene's undo history." +msgstr "Memberikan ikhtisar riwayat pembatalan editor dan setiap adegan." + msgid "(current)" msgstr "(saat ini)" @@ -1514,6 +2379,19 @@ msgstr "Buka" msgid "Select Current Folder" msgstr "Pilih Folder Saat Ini" +msgid "Cannot save file with an empty filename." +msgstr "Tidak dapat menyimpan file dengan nama file kosong." + +msgid "Cannot save file with a name starting with a dot." +msgstr "Tidak dapat menyimpan file dengan nama yang dimulai dengan titik." + +msgid "" +"File \"%s\" already exists.\n" +"Do you want to overwrite it?" +msgstr "" +"File \"%s\" sudah ada.\n" +"Apakah Anda ingin menimpanya?" + msgid "Select This Folder" msgstr "Pilih Folder Ini" @@ -1550,6 +2428,9 @@ msgstr "Buka sebuah File atau Direktori" msgid "Save a File" msgstr "Simpan sebuah File" +msgid "Favorited folder does not exist anymore and will be removed." +msgstr "Folder favorit tidak ada lagi dan akan dihapus." + msgid "Go Back" msgstr "Kembali" @@ -1610,6 +2491,22 @@ msgstr "Pratinjau:" msgid "File:" msgstr "File:" +msgid "" +"Remove the selected files? For safety only files and empty directories can " +"be deleted from here. (Cannot be undone.)\n" +"Depending on your filesystem configuration, the files will either be moved " +"to the system trash or deleted permanently." +msgstr "" +"Menghapus file yang dipilih? Untuk keamanan, hanya file dan direktori kosong " +"yang dapat dihapus dari sini. (Tidak dapat dibatalkan.)\n" +"Tergantung pada konfigurasi sistem file Anda, file akan dipindahkan ke " +"tempat sampah sistem atau dihapus secara permanen." + +msgid "Some extensions need the editor to restart to take effect." +msgstr "" +"Beberapa ekstensi memerlukan editor untuk memulai ulang agar dapat " +"diterapkan." + msgid "Restart" msgstr "Mulai Ulang" @@ -1629,9 +2526,55 @@ msgstr "" msgid "(Re)Importing Assets" msgstr "Mengimpor ulang Aset" +msgid "Import resources of type: %s" +msgstr "Mengimpor sumber daya dengan tipe: %s" + +msgid "No return value." +msgstr "Tidak ada nilai pengembalian." + +msgid "Deprecated" +msgstr "Usang" + msgid "Experimental" msgstr "Eksperimental" +msgid "This method supports a variable number of arguments." +msgstr "Metode ini mendukung jumlah argumen yang bervariasi." + +msgid "" +"This method is called by the engine.\n" +"It can be overridden to customize built-in behavior." +msgstr "" +"Metode ini dipanggil oleh mesin.\n" +"Metode ini dapat diganti untuk menyesuaikan perilaku bawaan." + +msgid "" +"This method has no side effects.\n" +"It does not modify the object in any way." +msgstr "" +"Metode ini tidak memiliki efek samping.\n" +"Metode ini tidak memodifikasi objek dengan cara apa pun." + +msgid "" +"This method does not need an instance to be called.\n" +"It can be called directly using the class name." +msgstr "" +"Metode ini tidak membutuhkan instance untuk dipanggil.\n" +"Metode ini dapat dipanggil secara langsung menggunakan nama kelas." + +msgid "Error codes returned:" +msgstr "Kode kesalahan dikembalikan:" + +msgid "There is currently no description for this %s." +msgstr "Saat ini tidak ada deskripsi untuk %s ini." + +msgid "" +"There is currently no description for this %s. Please help us by " +"[color=$color][url=$url]contributing one[/url][/color]!" +msgstr "" +"Saat ini belum ada deskripsi untuk %s ini. Tolong bantu kami dengan " +"[color=$color][url=$url]kontribusi[/url][/color]!" + msgid "Top" msgstr "Atas" @@ -1644,18 +2587,47 @@ msgstr "Mewarisi:" msgid "Inherited by:" msgstr "Diturunkan oleh:" +msgid "" +"This class is marked as deprecated. It will be removed in future versions." +msgstr "" +"Kelas ini ditandai sebagai kelas yang tidak digunakan lagi. Kelas ini akan " +"dihapus di versi mendatang." + +msgid "" +"This class is marked as experimental. It is subject to likely change or " +"possible removal in future versions. Use at your own discretion." +msgstr "" +"Kelas ini ditandai sebagai eksperimental. Hal ini dapat berubah atau mungkin " +"dihapus di versi mendatang. Gunakan sesuai kebijaksanaan Anda sendiri." + msgid "Description" msgstr "Deskripsi" +msgid "There is currently no description for this class." +msgstr "Saat ini tidak ada deskripsi untuk kelas ini." + +msgid "" +"There is currently no description for this class. Please help us by " +"[color=$color][url=$url]contributing one[/url][/color]!" +msgstr "" +"Saat ini belum ada deskripsi untuk kelas ini. Tolong bantu kami dengan " +"[color=$color][url=$url]kontribusi[/url][/color]!" + msgid "Online Tutorials" msgstr "Tutorial Daring" msgid "Properties" msgstr "Properti" +msgid "overrides %s:" +msgstr "Menimpa %s:" + msgid "default:" msgstr "baku:" +msgid "property:" +msgstr "properti:" + msgid "Constructors" msgstr "Konstruktor" @@ -1665,18 +2637,49 @@ msgstr "Operator" msgid "Theme Properties" msgstr "Properti Tema" +msgid "Colors" +msgstr "Warna" + msgid "Constants" msgstr "konstan" +msgid "Fonts" +msgstr "Font" + +msgid "Font Sizes" +msgstr "Ukuran Font" + +msgid "Icons" +msgstr "Ikon" + +msgid "Styles" +msgstr "Gaya" + msgid "Enumerations" msgstr "Enumerasi" +msgid "Annotations" +msgstr "Anotasi" + +msgid "There is currently no description for this annotation." +msgstr "Saat ini tidak ada deskripsi untuk anotasi ini." + +msgid "" +"There is currently no description for this annotation. Please help us by " +"[color=$color][url=$url]contributing one[/url][/color]!" +msgstr "" +"Saat ini belum ada deskripsi untuk anotasi ini. Tolong bantu kami dengan " +"[color=$color][url=$url]kontribusi[/url][/color]!" + msgid "Property Descriptions" msgstr "Deskripsi Properti" msgid "(value)" msgstr "(nilai)" +msgid "There is currently no description for this property." +msgstr "Saat ini belum ada deskripsi untuk properti ini." + msgid "" "There is currently no description for this property. Please help us by " "[color=$color][url=$url]contributing one[/url][/color]!" @@ -1714,12 +2717,21 @@ msgstr "Tampilkan Semua" msgid "Classes Only" msgstr "Hanya Kelas" +msgid "Constructors Only" +msgstr "Hanya Konstruktor" + msgid "Methods Only" msgstr "Hanya Fungsi" +msgid "Operators Only" +msgstr "Hanya Operator" + msgid "Signals Only" msgstr "Hanya Sinyal" +msgid "Annotations Only" +msgstr "Hanya Anotasi" + msgid "Constants Only" msgstr "Hanya Konstanta" @@ -1732,6 +2744,9 @@ msgstr "Hanya Properti Tema" msgid "Member Type" msgstr "Tipe Anggota" +msgid "(constructors)" +msgstr "(konstruktor)" + msgid "Class" msgstr "Kelas" @@ -1741,6 +2756,9 @@ msgstr "Fungsi" msgid "Signal" msgstr "Sinyal" +msgid "Annotation" +msgstr "Anotasi" + msgid "Constant" msgstr "Konstan" @@ -1750,9 +2768,21 @@ msgstr "Properti" msgid "Theme Property" msgstr "Properti Tema" +msgid "This member is marked as deprecated." +msgstr "Anggota ini ditandai sebagai tidak digunakan lagi." + +msgid "This member is marked as experimental." +msgstr "Anggota ini ditandai sebagai eksperimental." + msgid "Property:" msgstr "Properti:" +msgid "Pin Value" +msgstr "Nilai Pin" + +msgid "Pin Value [Disabled because '%s' is editor-only]" +msgstr "Nilai Pin [Dinonaktifkan karena '%s' hanya untuk editor]" + msgid "" "Pinning a value forces it to be saved even if it's equal to the default." msgstr "" @@ -1762,33 +2792,127 @@ msgstr "" msgid "Open Documentation" msgstr "Buka Dokumentasi" +msgid "Add element to property array with prefix %s." +msgstr "Tambahkan elemen ke array properti dengan awalan %s." + +msgid "Remove element %d from property array with prefix %s." +msgstr "Hapus elemen %d dari array properti dengan awalan %s." + +msgid "Move element %d to position %d in property array with prefix %s." +msgstr "" +"Pindahkan elemen %d ke posisi %d dalam array properti dengan awalan %s." + +msgid "Clear property array with prefix %s." +msgstr "Hapus array properti dengan awalan %s." + +msgid "Resize property array with prefix %s." +msgstr "Ubah ukuran array properti dengan awalan %s." + +msgid "Element %d: %s%d*" +msgstr "Elemen %d: %s%d*" + msgid "Move Up" msgstr "Naikkan" msgid "Move Down" msgstr "Turunkan" +msgid "Insert New Before" +msgstr "Sisipkan Baru Sebelum" + +msgid "Insert New After" +msgstr "Sisipkan Baru Setelah" + +msgid "Clear Array" +msgstr "Hapus Array" + +msgid "Resize Array..." +msgstr "Ubah Ukuran Array ..." + +msgid "Add Element" +msgstr "Tambahkan Elemen" + msgid "Resize Array" msgstr "Ubah ukuran Array" +msgid "New Size:" +msgstr "Ukuran Baru:" + +msgid "Element %s" +msgstr "Elemen %s" + +msgid "Add Metadata" +msgstr "Tambahkan Metadata" + msgid "Set %s" msgstr "Setel %s" msgid "Set Multiple:" msgstr "Terapkan Bersamaan:" +msgid "Remove metadata %s" +msgstr "Hapus metadata %s" + msgid "Pinned %s" msgstr "%s disematkan" msgid "Unpinned %s" msgstr "Lepas sematan %s" +msgid "Add metadata %s" +msgstr "Tambahkan metadata %s" + +msgid "Metadata name can't be empty." +msgstr "Nama metadata tidak boleh kosong." + +msgid "Metadata name must be a valid identifier." +msgstr "Nama metadata harus berupa pengenal yang valid." + +msgid "Metadata with name \"%s\" already exists." +msgstr "Metadata dengan nama \"%s\" sudah ada." + +msgid "Names starting with _ are reserved for editor-only metadata." +msgstr "Nama yang dimulai dengan _ dicadangkan untuk metadata khusus editor." + +msgid "Metadata name is valid." +msgstr "Nama metadata valid." + +msgid "Add Metadata Property for \"%s\"" +msgstr "Menambahkan Properti Metadata untuk \"%s\"" + +msgid "Copy Value" +msgstr "Salin Nilai" + +msgid "Paste Value" +msgstr "Tempel Nilai" + msgid "Copy Property Path" msgstr "Salin Lokasi Properti" +msgid "Select existing layout:" +msgstr "Pilih tata letak yang ada:" + +msgid "Or enter new layout name" +msgstr "Atau masukkan nama tata letak baru" + +msgid "Changed Locale Language Filter" +msgstr "Filter Bahasa Lokal yang Diubah" + +msgid "Changed Locale Script Filter" +msgstr "Filter Skrip Lokal yang Diubah" + +msgid "Changed Locale Country Filter" +msgstr "Filter Negara Lokal yang Diubah" + msgid "Changed Locale Filter Mode" msgstr "Mode Filter Locale Diubah" +msgid "[Default]" +msgstr "[Default]" + +msgid "Select a Locale" +msgstr "Pilih Lokal" + msgid "Show All Locales" msgstr "Tampilkan Semua Pelokalan" @@ -1801,15 +2925,58 @@ msgstr "Sunting Filter" msgid "Language:" msgstr "Bahasa:" +msgctxt "Locale" +msgid "Script:" +msgstr "Skrip:" + +msgid "Country:" +msgstr "Negara:" + +msgid "Language" +msgstr "Bahasa" + +msgctxt "Locale" +msgid "Script" +msgstr "Skrip" + +msgid "Country" +msgstr "Negara" + msgid "Variant" msgstr "Varian" +msgid "Filter Messages" +msgstr "Filter Pesan" + msgid "Clear Output" msgstr "Bersihkan Luaran" msgid "Copy Selection" msgstr "Salin Seleksi" +msgid "" +"Collapse duplicate messages into one log entry. Shows number of occurrences." +msgstr "" +"Menyusun pesan duplikat menjadi satu entri log. Menunjukkan jumlah kejadian." + +msgid "Focus Search/Filter Bar" +msgstr "Pencarian Fokus/Bilah Filter" + +msgid "Toggle visibility of standard output messages." +msgstr "Alihkan visibilitas pesan keluaran standar." + +msgid "Toggle visibility of errors." +msgstr "Alihkan visibilitas kesalahan." + +msgid "Toggle visibility of warnings." +msgstr "Alihkan visibilitas peringatan." + +msgid "Toggle visibility of editor messages." +msgstr "Alihkan visibilitas pesan editor." + +msgid "Native Shader Source Inspector" +msgstr "Inspektur Sumber Shader Asli" + msgid "New Window" msgstr "Jendela Baru" @@ -1844,6 +3011,13 @@ msgstr "" "Resource ini tidak dapat disimpan karena bukan milik skena yang disunting. " "Buatlah unik terlebih dahulu." +msgid "" +"This resource can't be saved because it was imported from another file. Make " +"it unique first." +msgstr "" +"Sumber daya ini tidak dapat disimpan karena diimpor dari file lain. Buatlah " +"unik terlebih dahulu." + msgid "Save Resource As..." msgstr "Simpan Resource Sebagai..." @@ -1856,6 +3030,21 @@ msgstr "Format file yang diminta tidak diketahui:" msgid "Error while saving." msgstr "Error saat menyimpan." +msgid "Can't open file '%s'. The file could have been moved or deleted." +msgstr "Gagal membuka '%s'. Berkas telah dipindah atau dihapus." + +msgid "Error while parsing file '%s'." +msgstr "Kesalahan saat mem-parsing file '%s'." + +msgid "Scene file '%s' appears to be invalid/corrupt." +msgstr "File adegan '%s' tampaknya tidak valid/rusak." + +msgid "Missing file '%s' or one its dependencies." +msgstr "File '%s' hilang atau salah satu dependensinya." + +msgid "Error while loading file '%s'." +msgstr "Kesalahan saat memuat file '%s'." + msgid "Saving Scene" msgstr "Menyimpan Skena" @@ -1869,6 +3058,14 @@ msgid "This operation can't be done without a tree root." msgstr "Operasi ini tidak dapat diselesaikan tanpa root pohon." msgid "" +"This scene can't be saved because there is a cyclic instance inclusion.\n" +"Please resolve it and then attempt to save again." +msgstr "" +"Scene ini tidak bisa disimpan karena ada inklusi penginstansian yang " +"siklik.\n" +"Mohon betulkan dan coba simpan lagi." + +msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " "be satisfied." msgstr "" @@ -1912,6 +3109,9 @@ msgstr "Nama layout tidak ditemukan!" msgid "Restored the Default layout to its base settings." msgstr "Mengembalikan semula layout default ke pengaturan-pengaturan awal." +msgid "This object is marked as read-only, so it's not editable." +msgstr "Objek ini ditandai sebagai hanya-baca, sehingga tidak dapat diedit." + msgid "" "This resource belongs to a scene that was imported, so it's not editable.\n" "Please read the documentation relevant to importing scenes to better " @@ -1922,27 +3122,77 @@ msgstr "" "memahami alur kerjanya." msgid "" +"This resource belongs to a scene that was instantiated or inherited.\n" +"Changes to it must be made inside the original scene." +msgstr "" +"Sumber daya ini termasuk dalam scene yang telah di-instansiasi atau " +"diwarisi.\n" +"Perubahan harus dilakukan di dalam scene asli." + +msgid "" "This resource was imported, so it's not editable. Change its settings in the " "import panel and then re-import." msgstr "" "Resource ini telah diimpor, jadi tidak dapat disunting. Ubah pengaturannya " "pada panel impor kemudian impor kembali." +msgid "" +"This scene was imported, so changes to it won't be kept.\n" +"Instantiating or inheriting it will allow you to make changes to it.\n" +"Please read the documentation relevant to importing scenes to better " +"understand this workflow." +msgstr "" +"Adegan ini diimpor, jadi perubahan pada adegan ini tidak akan disimpan.\n" +"Menginstansiasi atau mewarisinya akan memungkinkan Anda untuk membuat " +"perubahan padanya.\n" +"Silakan baca dokumentasi yang relevan dengan mengimpor scene untuk lebih " +"memahami alur kerja ini." + msgid "Changes may be lost!" msgstr "Perubahan mungkin hilang!" +msgid "This object is read-only." +msgstr "Objek ini hanya dapat dibaca." + +msgid "" +"Movie Maker mode is enabled, but no movie file path has been specified.\n" +"A default movie file path can be specified in the project settings under the " +"Editor > Movie Writer category.\n" +"Alternatively, for running single scenes, a `movie_file` string metadata can " +"be added to the root node,\n" +"specifying the path to a movie file that will be used when recording that " +"scene." +msgstr "" +"Mode Movie Maker diaktifkan, tetapi tidak ada path file movie yang " +"ditentukan.\n" +"Path file movie default dapat ditentukan dalam pengaturan proyek di bawah " +"kategori Editor > Movie Writer.\n" +"Atau, untuk menjalankan adegan tunggal, metadata string `movie_file` dapat " +"ditambahkan ke node root,\n" +"menentukan path ke file movie yang akan digunakan saat merekam adegan " +"tersebut." + msgid "There is no defined scene to run." msgstr "Tidak ada skena yang didefinisikan untuk dijalankan." msgid "Save scene before running..." msgstr "Simpan skena sebelum menjalankan..." +msgid "Could not start subprocess(es)!" +msgstr "Tidak dapat memulai subproses!" + +msgid "Reload the played scene." +msgstr "Muat ulang adegan yang dimainkan." + msgid "Play the project." msgstr "Mainkan proyek." msgid "Play the edited scene." msgstr "Mainkan scene redaksi." +msgid "Play a custom scene." +msgstr "Memainkan adegan khusus." + msgid "Open Base Scene" msgstr "Buka Skena Dasar" @@ -1955,9 +3205,21 @@ msgstr "Buka Cepat Skenario..." msgid "Quick Open Script..." msgstr "Buka Cepat Skrip..." +msgid "Save & Reload" +msgstr "Simpan & Mulai Ulang" + +msgid "Save modified resources before reloading?" +msgstr "Simpan sumber daya yang dimodifikasi sebelum memuat ulang?" + msgid "Save & Quit" msgstr "Simpan & Keluar" +msgid "Save modified resources before closing?" +msgstr "Simpan sumber daya yang dimodifikasi sebelum ditutup?" + +msgid "Save changes to '%s' before reloading?" +msgstr "Simpan perubahan ke '%s' sebelum memuat ulang?" + msgid "Save changes to '%s' before closing?" msgstr "Simpan perubahan '%s' sebelum menutupnya?" @@ -1990,12 +3252,30 @@ msgstr "Tidak bisa membatalkan ketika tombol mouse ditekan." msgid "Nothing to undo." msgstr "Tidak ada yang bisa dibatalkan." +msgid "Global Undo: %s" +msgstr "Undo Global: %s" + +msgid "Remote Undo: %s" +msgstr "Undo Remote: %s" + +msgid "Scene Undo: %s" +msgstr "Undo Adegan: %s" + msgid "Can't redo while mouse buttons are pressed." msgstr "Tidak bisa mengulangi ketika tombol mouse ditekan." msgid "Nothing to redo." msgstr "Tidak ada yang perlu diulang." +msgid "Global Redo: %s" +msgstr "Redo Global: %s" + +msgid "Remote Redo: %s" +msgstr "Undo Remote: %s" + +msgid "Scene Redo: %s" +msgstr "Adegan Redo: %s" + msgid "Can't reload a scene that was never saved." msgstr "Tidak bisa memuat ulang skena yang belum pernah disimpan." @@ -2012,6 +3292,9 @@ msgstr "" msgid "Quick Run Scene..." msgstr "Jalankan Cepat Skena..." +msgid "Save changes to the following scene(s) before reloading?" +msgstr "Menyimpan perubahan pada adegan berikut sebelum memuat ulang?" + msgid "Save changes to the following scene(s) before quitting?" msgstr "Simpan perubahan skena saat ini sebelum keluar?" @@ -2166,6 +3449,9 @@ msgstr "Geser Tampilan" msgid "Dock Position" msgstr "Posisi Pengait" +msgid "Make Floating" +msgstr "Membuat Floating" + msgid "Add a new scene." msgstr "Tambah skena baru." @@ -2176,7 +3462,7 @@ msgid "Toggle distraction-free mode." msgstr "Toggle mode tanpa gangguan." msgid "Scene" -msgstr "Scene" +msgstr "Adegan" msgid "Operations with scene files." msgstr "Operasi dengan berkas skena." @@ -2187,6 +3473,18 @@ msgstr "Pergi ke skena yang sebelumnya dibuka." msgid "Copy Text" msgstr "Salin Teks" +msgid "Next Scene Tab" +msgstr "Tab Adegan Berikutnya" + +msgid "Previous Scene Tab" +msgstr "Tab Adegan Sebelumnya" + +msgid "Focus FileSystem Filter" +msgstr "Filter SistemFile Fokus" + +msgid "Command Palette" +msgstr "Palet Perintah" + msgid "New Scene" msgstr "Skena Baru" @@ -2205,6 +3503,9 @@ msgstr "Buka baru-baru ini" msgid "Save Scene" msgstr "Simpan Skena" +msgid "Export As..." +msgstr "Ekspor Sebagai..." + msgid "MeshLibrary..." msgstr "PerpustakaanMesh..." @@ -2226,12 +3527,24 @@ msgstr "Pengaturan Proyek" msgid "Version Control" msgstr "Kontrol Versi" +msgid "Create Version Control Metadata" +msgstr "Membuat Metadata Kontrol Versi" + +msgid "Version Control Settings" +msgstr "Pengaturan Kontrol Versi" + msgid "Export..." msgstr "Ekspor…" msgid "Install Android Build Template..." msgstr "Pasang Templat Build Android..." +msgid "Open User Data Folder" +msgstr "Buka Folder Data Pengguna" + +msgid "Customize Engine Build Configuration..." +msgstr "Sesuaikan Konfigurasi Engine Build..." + msgid "Tools" msgstr "Alat-alat" @@ -2250,6 +3563,9 @@ msgstr "Editor" msgid "Editor Settings..." msgstr "Pengaturan Editor..." +msgid "Command Palette..." +msgstr "Palet Perintah..." + msgid "Editor Layout" msgstr "Tata Letak Editor" @@ -2277,6 +3593,9 @@ msgstr "Kelola Fitur Editor..." msgid "Manage Export Templates..." msgstr "Kelola Templat Ekspor…" +msgid "Configure FBX Importer..." +msgstr "Mengkonfigurasi Pengimpor FBX..." + msgid "Help" msgstr "Bantuan" @@ -2304,12 +3623,66 @@ msgstr "Tentang Godot" msgid "Support Godot Development" msgstr "Dukung pengembangan Godot" +msgid "Run the project's default scene." +msgstr "Jalankan adegan default proyek." + +msgid "Run Project" +msgstr "Jalankan Proyek" + +msgid "Pause the running project's execution for debugging." +msgstr "Jeda eksekusi proyek yang sedang berjalan untuk melakukan debug." + +msgid "Pause Running Project" +msgstr "Menjeda Proyek yang Sedang Berjalan" + +msgid "Stop the currently running project." +msgstr "Menghentikan proyek yang sedang berjalan." + +msgid "Stop Running Project" +msgstr "Berhenti Menjalankan Proyek" + +msgid "Run the currently edited scene." +msgstr "Jalankan adegan yang sedang diedit." + +msgid "Run Current Scene" +msgstr "Jalankan Adegan Saat Ini" + +msgid "Run a specific scene." +msgstr "Jalankan adegan tertentu." + +msgid "Run Specific Scene" +msgstr "Menjalankan Adegan Tertentu" + +msgid "" +"Enable Movie Maker mode.\n" +"The project will run at stable FPS and the visual and audio output will be " +"recorded to a video file." +msgstr "" +"Aktifkan mode Movie Maker.\n" +"Proyek akan berjalan pada FPS yang stabil dan output visual dan audio akan " +"direkam ke file video." + +msgid "Choose a renderer." +msgstr "Pilih perender." + +msgid "Forward+" +msgstr "Maju+" + +msgid "Mobile" +msgstr "Mobile" + msgid "Compatibility" msgstr "Kompatibilitas" +msgid "Changing the renderer requires restarting the editor." +msgstr "Mengubah perender memerlukan restart ulang editor." + msgid "Update Continuously" msgstr "Perbarui Terus-menerus" +msgid "Update When Changed" +msgstr "Perbarui Saat Berubah" + msgid "Hide Update Spinner" msgstr "Sembunyikan Spinner Pembaruan" @@ -2322,6 +3695,9 @@ msgstr "Inspektur" msgid "Node" msgstr "Node" +msgid "History" +msgstr "Riwayat" + msgid "Expand Bottom Panel" msgstr "Perluas Panel Bawah" @@ -2340,6 +3716,27 @@ msgstr "Kelola Templat" msgid "Install from file" msgstr "Install dari file" +msgid "Select Android sources file" +msgstr "Pilih file sumber Android" + +msgid "" +"This will set up your project for gradle Android builds by installing the " +"source template to \"res://android/build\".\n" +"You can then apply modifications and build your own custom APK on export " +"(adding modules, changing the AndroidManifest.xml, etc.).\n" +"Note that in order to make gradle builds instead of using pre-built APKs, " +"the \"Use Gradle Build\" option should be enabled in the Android export " +"preset." +msgstr "" +"Ini akan menyiapkan proyek Anda untuk build gradle Android dengan menginstal " +"template sumber ke \"res://android/build\".\n" +"Anda kemudian dapat menerapkan modifikasi dan membuat APK kustom Anda " +"sendiri pada saat ekspor (menambahkan modul, mengubah AndroidManifest.xml, " +"dll.).\n" +"Perhatikan bahwa untuk membuat gradle build alih-alih menggunakan APK yang " +"sudah dibuat sebelumnya, opsi \"Gunakan Gradle Build\" harus diaktifkan di " +"preset ekspor Android." + msgid "" "The Android build template is already installed in this project and it won't " "be overwritten.\n" @@ -2408,6 +3805,9 @@ msgstr "Buka Editor Selanjutnya" msgid "Open the previous Editor" msgstr "Buka Editor Sebelumnya" +msgid "Ok" +msgstr "Oke" + msgid "Warning!" msgstr "Peringatan!" @@ -2432,6 +3832,9 @@ msgstr "Sunting Plug-in" msgid "Installed Plugins:" msgstr "Plugins Terpasang:" +msgid "Create New Plugin" +msgstr "Buat Plugin Baru" + msgid "Version" msgstr "Versi" @@ -2447,6 +3850,9 @@ msgstr "Sunting Teks:" msgid "On" msgstr "Nyala" +msgid "Renaming layer %d:" +msgstr "Mengganti nama layer %d:" + msgid "No name provided." msgstr "Nama masih kosong." @@ -2459,12 +3865,47 @@ msgstr "Bit %d, nilai %d" msgid "Rename" msgstr "Ubah Nama" +msgid "Rename layer" +msgstr "Mengganti nama layer" + +msgid "Layer %d" +msgstr "Layer %d" + +msgid "No Named Layers" +msgstr "Tidak Ada Layer Bernama" + +msgid "Edit Layer Names" +msgstr "Edit Nama Layer" + +msgid "<empty>" +msgstr "<kosong>" + +msgid "Temporary Euler may be changed implicitly!" +msgstr "Euler sementara dapat diubah secara implisit!" + +msgid "" +"Temporary Euler will not be stored in the object with the original value. " +"Instead, it will be stored as Quaternion with irreversible conversion.\n" +"This is due to the fact that the result of Euler->Quaternion can be " +"determined uniquely, but the result of Quaternion->Euler can be multi-" +"existent." +msgstr "" +"Euler sementara tidak akan disimpan dalam objek dengan nilai aslinya. " +"Sebaliknya, ini akan disimpan sebagai Quaternion dengan konversi yang tidak " +"dapat diubah.\n" +"Hal ini disebabkan oleh fakta bahwa hasil dari Euler->Quaternion dapat " +"ditentukan secara unik, tetapi hasil dari Quaternion->Euler dapat berupa " +"banyak nilai." + msgid "Assign..." msgstr "Terapkan.." msgid "Invalid RID" msgstr "RID tidak valid" +msgid "Recursion detected, unable to assign resource to property." +msgstr "Rekursi terdeteksi, tidak dapat menetapkan sumber daya ke properti." + msgid "" "Can't create a ViewportTexture on resources saved as a file.\n" "Resource needs to belong to a scene." @@ -2490,12 +3931,24 @@ msgstr "Pilih Viewport" msgid "Selected node is not a Viewport!" msgstr "Node yang terpilih bukanlah Viewport!" +msgid "(Nil) %s" +msgstr "(Nihil) %s" + +msgid "%s (size %s)" +msgstr "%s (ukuran %s)" + msgid "Size:" msgstr "Ukuran:" msgid "Remove Item" msgstr "Hapus item" +msgid "Dictionary (Nil)" +msgstr "Kamus (Nihil)" + +msgid "Dictionary (size %d)" +msgstr "Kamus (ukuran %d)" + msgid "New Key:" msgstr "Key Baru:" @@ -2505,6 +3958,15 @@ msgstr "Nilai Baru:" msgid "Add Key/Value Pair" msgstr "Tambahkan pasangan Key/Value" +msgid "Localizable String (Nil)" +msgstr "String yang Dapat Dilokalkan (Nihil)" + +msgid "Localizable String (size %d)" +msgstr "String yang Dapat Dilokalkan (ukuran %d)" + +msgid "Add Translation" +msgstr "Tambah Terjemahan" + msgid "" "The selected resource (%s) does not match any type expected for this " "property (%s)." @@ -2515,9 +3977,15 @@ msgstr "" msgid "Quick Load" msgstr "Muat Cepat" +msgid "Inspect" +msgstr "Inspektur" + msgid "Make Unique" msgstr "Jadikan Unik" +msgid "Make Unique (Recursive)" +msgstr "Jadikan Unik (Rekursif)" + msgid "Convert to %s" msgstr "Konversi ke %s" @@ -2530,6 +3998,15 @@ msgstr "Skrip Baru" msgid "Extend Script" msgstr "Extend Skrip" +msgid "New Shader" +msgstr "Shader Baru" + +msgid "No Remote Debug export presets configured." +msgstr "Tidak ada preset ekspor Debug remote yang dikonfigurasi." + +msgid "Remote Debug" +msgstr "Debug Remote" + msgid "" "No runnable export preset found for this platform.\n" "Please add a runnable preset in the Export menu or define an existing preset " @@ -2538,18 +4015,39 @@ msgstr "" "Tidak ada preset ekspor yang bisa digunakan untuk platform ini.\n" "Mohon tambahkan preset yang bisa digunakan di menu ekspor." +msgid "Project Run" +msgstr "Jalankan Proyek" + msgid "Write your logic in the _run() method." msgstr "Tulis logika di dalam fungsi _run()." msgid "There is an edited scene already." msgstr "Sudah ada skena yang disunting." +msgid "" +"Couldn't run editor script, did you forget to override the '_run' method?" +msgstr "" +"Tidak dapat menjalankan skrip editor, apakah Anda lupa mengganti metode " +"'_run'?" + +msgid "Edit Built-in Action" +msgstr "Edit Tindakan Bawaan" + +msgid "Edit Shortcut" +msgstr "Edit Pintasan" + +msgid "Common" +msgstr "Umum" + msgid "Editor Settings" msgstr "Pengaturan Editor" msgid "General" msgstr "Umum" +msgid "Filter Settings" +msgstr "Pengaturan Filter" + msgid "The editor must be restarted for changes to take effect." msgstr "Editor harus dimulai ulang untuk menerapkan perubahan." @@ -2559,27 +4057,165 @@ msgstr "Tombol Pintasan" msgid "Binding" msgstr "Mengikat" +msgid "" +"Hold %s to round to integers.\n" +"Hold Shift for more precise changes." +msgstr "" +"Tahan %s untuk membulatkan ke bilangan bulat.\n" +"Tahan Shift untuk perubahan yang lebih presisi." + +msgid "No notifications." +msgstr "Tidak ada notifikasi." + +msgid "Show notifications." +msgstr "Tampilkan notifikasi." + +msgid "Silence the notifications." +msgstr "Matikan notifikasi." + +msgid "Left Stick Left, Joystick 0 Left" +msgstr "StikKiri Kiri, Joystick 0 Kiri" + +msgid "Left Stick Right, Joystick 0 Right" +msgstr "StikKiri Kanan, Joystick 0 Kanan" + +msgid "Left Stick Up, Joystick 0 Up" +msgstr "StikKiri Atas, Joystick 0 Atas" + +msgid "Left Stick Down, Joystick 0 Down" +msgstr "StikKiri Bawah, Joystick 0 Bawah" + +msgid "Right Stick Left, Joystick 1 Left" +msgstr "StikKanan Kiri, Joystick 1 Kiri" + +msgid "Right Stick Right, Joystick 1 Right" +msgstr "StikKanan Kanan, Joystick 1 Kanan" + +msgid "Right Stick Up, Joystick 1 Up" +msgstr "Stik Atas, Joystick 1 Atas" + +msgid "Right Stick Down, Joystick 1 Down" +msgstr "TongkatKanan Bawah, Joystick 1 Bawah" + +msgid "Joystick 2 Left" +msgstr "Joystick 2 Kiri" + +msgid "Left Trigger, Sony L2, Xbox LT, Joystick 2 Right" +msgstr "Pemicu Kiri, Sony L2, Xbox LT, Joystick 2 Kanan" + +msgid "Joystick 2 Up" +msgstr "Joystick 2 Atas" + +msgid "Right Trigger, Sony R2, Xbox RT, Joystick 2 Down" +msgstr "Pemicu Kanan, Sony R2, Xbox RT, Joystick 2 Bawah" + +msgid "Joystick 3 Left" +msgstr "Joystick 3 Kiri" + +msgid "Joystick 3 Right" +msgstr "Joystick 3 Kanan" + +msgid "Joystick 3 Up" +msgstr "Joystick 3 Atas" + +msgid "Joystick 3 Down" +msgstr "Joystick 3 Bawah" + +msgid "Joystick 4 Left" +msgstr "Joystick 4 Kiri" + +msgid "Joystick 4 Right" +msgstr "Joystick 4 Kanan" + +msgid "Joystick 4 Up" +msgstr "Joystick 4 Atas" + +msgid "Joystick 4 Down" +msgstr "Joystick 4 Bawah" + +msgid "Joypad Axis %d %s (%s)" +msgstr "Sumbu Joypad %d %s (%s)" + msgid "All Devices" msgstr "Semua Perangkat" msgid "Device" msgstr "Perangkat" +msgid "Listening for input..." +msgstr "Mendengarkan masukan..." + +msgid "Filter by event..." +msgstr "Filter berdasarkan event..." + +msgid "" +"Target platform requires 'ETC2/ASTC' texture compression. Enable 'Import " +"ETC2 ASTC' in Project Settings." +msgstr "" +"Platform target memerlukan kompresi tekstur 'ETC2/ASTC'. Aktifkan 'Impor " +"ETC2 ASTC' di Setelan Proyek." + +msgid "" +"Target platform requires 'S3TC/BPTC' texture compression. Enable 'Import " +"S3TC BPTC' in Project Settings." +msgstr "" +"Platform target memerlukan kompresi tekstur 'S3TC/BPTC'. Aktifkan 'Impor " +"S3TC BPTC' di Pengaturan Proyek." + msgid "Project export for platform:" msgstr "Proyek ekspor untuk platform:" +msgid "Completed with warnings." +msgstr "Dilengkapi dengan peringatan." + msgid "Completed successfully." msgstr "Sukses." +msgid "Failed." +msgstr "Gagal." + +msgid "Storing File: %s" +msgstr "Menyimpan File: %s" + msgid "Storing File:" msgstr "Menyimpan File:" msgid "No export template found at the expected path:" msgstr "Templat ekspor tidak ditemukan di tempat yg diharapkan:" +msgid "ZIP Creation" +msgstr "Pembuatan ZIP" + +msgid "Could not open file to read from path \"%s\"." +msgstr "Tidak dapat membuka file untuk dibaca dari path \"%s\"." + msgid "Packing" msgstr "Mengemas" +msgid "Save PCK" +msgstr "Simpan PCK" + +msgid "Cannot create file \"%s\"." +msgstr "Tidak dapat membuat file \"%s\"." + +msgid "Failed to export project files." +msgstr "Tidak dapat ekspor berkas proyek" + +msgid "Can't open file for writing at path \"%s\"." +msgstr "Tidak dapat membuka file untuk menulis di path \"%s\"." + +msgid "Can't open file for reading-writing at path \"%s\"." +msgstr "Tidak dapat membuka file untuk membaca-menulis di path \"%s\"." + +msgid "Can't create encrypted file." +msgstr "Tidak dapat membuat file terenkripsi." + +msgid "Can't open encrypted file to write." +msgstr "Tidak dapat membuka file terenkripsi untuk menulis." + +msgid "Can't open file to read from path \"%s\"." +msgstr "Tidak dapat membuka file untuk dibaca dari path \"%s\"." + msgid "Save ZIP" msgstr "Simpan ZIP" @@ -2589,6 +4225,21 @@ msgstr "Templat awakutu kustom tidak ditemukan." msgid "Custom release template not found." msgstr "Templat rilis kustom tidak ditemukan." +msgid "Prepare Template" +msgstr "Siapkan Template" + +msgid "The given export path doesn't exist." +msgstr "Lokasi ekspor yang diberikan tidak ada." + +msgid "Template file not found: \"%s\"." +msgstr "File template tidak ditemukan: \"%s\"." + +msgid "Failed to copy export template." +msgstr "Gagal menyalin template ekspor." + +msgid "PCK Embedding" +msgstr "Penyematan PCK" + msgid "On 32-bit exports the embedded PCK cannot be bigger than 4 GiB." msgstr "Pada ekspor 32-bit PCK yang ditanamkan tidak boleh lebih dari 4GiB." @@ -2689,6 +4340,9 @@ msgstr "Mengunduh" msgid "Connection Error" msgstr "Gangguan Koneksi" +msgid "TLS Handshake Error" +msgstr "Kesalahan Jabat Tangan TLS" + msgid "Can't open the export templates file." msgstr "Tidak dapat membuka file template ekspor." @@ -2788,9 +4442,23 @@ msgstr "" msgid "Runnable" msgstr "Dapat dijalankan" +msgid "Export the project for all the presets defined." +msgstr "Mengekspor proyek untuk semua preset yang ditentukan." + +msgid "All presets must have an export path defined for Export All to work." +msgstr "" +"Semua preset harus memiliki path ekspor yang ditentukan agar Ekspor Semua " +"dapat berfungsi." + +msgid "Resources to export:" +msgstr "Resource yang akan diekspor:" + msgid "Delete preset '%s'?" msgstr "Hapus preset '%s'?" +msgid "%s Export" +msgstr "Ekspor %s" + msgid "Release" msgstr "Rilis" @@ -2832,11 +4500,24 @@ msgstr "Ekspor skena terpilih (dan dependensinya)" msgid "Export selected resources (and dependencies)" msgstr "Ekspor resource terpilih (dan dependensinya)" +msgid "Export all resources in the project except resources checked below" +msgstr "" +"Ekspor semua sumber daya dalam proyek kecuali sumber daya yang dicentang di " +"bawah ini" + +msgid "Export as dedicated server" +msgstr "Ekspor sebagai dedicated server" + msgid "Export Mode:" msgstr "Mode Ekspor:" -msgid "Resources to export:" -msgstr "Resource yang akan diekspor:" +msgid "" +"\"Strip Visuals\" will replace the following resources with placeholders:" +msgstr "" +"\"Strip Visual\" akan menggantikan sumber daya berikut dengan placeholder:" + +msgid "Strip Visuals" +msgstr "Strip Visual" msgid "Keep" msgstr "Pertahankan" @@ -2864,6 +4545,36 @@ msgstr "Ubah suaian (dipisahkan koma):" msgid "Feature List:" msgstr "Daftar Fitur:" +msgid "Encryption" +msgstr "Enkripsi" + +msgid "Encrypt Exported PCK" +msgstr "Enkripsi PCK yang Diekspor" + +msgid "Encrypt Index (File Names and Info)" +msgstr "Enkripsi Indeks (Nama File dan Info)" + +msgid "" +"Filters to include files/folders\n" +"(comma-separated, e.g: *.tscn, *.tres, scenes/*)" +msgstr "" +"Filter untuk menyertakan file/folder\n" +"(dipisahkan dengan koma, misalnya: *.tscn, *.tres, scenes/*)" + +msgid "" +"Filters to exclude files/folders\n" +"(comma-separated, e.g: *.ctex, *.import, music/*)" +msgstr "" +"Filter untuk mengecualikan file/folder\n" +"(dipisahkan dengan koma, misalnya: *.ctex, *.import, music/*)" + +msgid "Invalid Encryption Key (must be 64 hexadecimal characters long)" +msgstr "" +"Kunci Enkripsi tidak valid (harus terdiri dari 64 karakter heksadesimal)" + +msgid "Encryption Key (256-bits as hexadecimal):" +msgstr "Kunci Enkripsi (256-bit sebagai heksadesimal):" + msgid "" "Note: Encryption key needs to be stored in the binary,\n" "you need to build the export templates from source." @@ -2871,24 +4582,90 @@ msgstr "" "Catatan: Kunci enkripsi perlu disimpan dalam biner,\n" "Anda perlu membuat templat ekspor dari sumber." +msgid "More Info..." +msgstr "Info lebih lanjut..." + +msgid "Export PCK/ZIP..." +msgstr "Ekspor PCK/ZIP..." + +msgid "Export Project..." +msgstr "Ekspor Proyek..." + msgid "Export All" msgstr "Ekspor Semua" +msgid "Choose an export mode:" +msgstr "Pilih mode ekspor:" + +msgid "Export All..." +msgstr "Ekspor Semua..." + msgid "ZIP File" msgstr "Berkas ZIP" +msgid "Godot Project Pack" +msgstr "Paket Proyek Godot" + msgid "Export templates for this platform are missing:" msgstr "Tidak ada templat ekspor untuk platform ini:" +msgid "Project Export" +msgstr "Ekspor Proyek" + msgid "Manage Export Templates" msgstr "Mengatur Templat Ekspor" msgid "Export With Debug" msgstr "Ekspor dengan Awakutu" +msgid "Disable FBX & Restart" +msgstr "Nonaktifkan FBX & Mulai Ulang" + +msgid "" +"Canceling this dialog will disable the FBX importer.\n" +"You can re-enable it in the Project Settings under Filesystem > Import > FBX " +"> Enabled.\n" +"\n" +"The editor will restart as importers are registered when the editor starts." +msgstr "" +"Membatalkan dialog ini akan menonaktifkan importir FBX.\n" +"Anda dapat mengaktifkannya kembali di Pengaturan Proyek di bawah Sistem " +"Berkas > Impor > FBX > Diaktifkan.\n" +"\n" +"Editor akan memulai ulang saat importir terdaftar saat editor dimulai." + +msgid "Path to FBX2glTF executable is empty." +msgstr "Path ke eksekusi FBX2glTF kosong." + +msgid "Path to FBX2glTF executable is invalid." +msgstr "Path ke eksekusi FBX2glTF tidak valid." + +msgid "Error executing this file (wrong version or architecture)." +msgstr "" +"Kesalahan dalam mengeksekusi file ini (versi atau arsitektur yang salah)." + +msgid "FBX2glTF executable is valid." +msgstr "Eksekusi FBX2glTF valid." + +msgid "Configure FBX Importer" +msgstr "Konfigurasikan Importir FBX" + +msgid "" +"FBX2glTF is required for importing FBX files.\n" +"Please download it and provide a valid path to the binary:" +msgstr "" +"FBX2glTF diperlukan untuk mengimpor file FBX.\n" +"Silakan unduh dan berikan path yang valid ke biner:" + +msgid "Click this link to download FBX2glTF" +msgstr "Klik tautan ini untuk mengunduh FBX2glTF" + msgid "Browse" msgstr "Telusur" +msgid "Confirm Path" +msgstr "Konfirmasi Path" + msgid "Favorites" msgstr "Favorit" @@ -2915,6 +4692,12 @@ msgstr "Error saat memindahkan:" msgid "Error duplicating:" msgstr "Error saat menggandakan berkas:" +msgid "Failed to save resource at %s: %s" +msgstr "Gagal menyimpan sumber daya pada %s: %s" + +msgid "Failed to load resource at %s: %s" +msgstr "Gagal memuat sumber daya pada %s: %s" + msgid "Unable to update dependencies:" msgstr "Tidak bisa memperbarui dependensi:" @@ -2968,6 +4751,9 @@ msgstr "Skena Warisan Baru" msgid "Set As Main Scene" msgstr "Jadikan sebagai Skena Utama" +msgid "Instantiate" +msgstr "Instansiasi" + msgid "Add to Favorites" msgstr "Tambahkan ke Favorit" @@ -2983,6 +4769,21 @@ msgstr "Tampilkan Pemilik Berkas..." msgid "Move To..." msgstr "Pindahkan ke..." +msgid "Folder..." +msgstr "Folder..." + +msgid "Scene..." +msgstr "Adegan..." + +msgid "Script..." +msgstr "Skrip..." + +msgid "Resource..." +msgstr "Sumber daya..." + +msgid "TextFile..." +msgstr "File Teks..." + msgid "New Scene..." msgstr "Skena Baru…" @@ -2992,6 +4793,12 @@ msgstr "Skrip Baru..." msgid "New Resource..." msgstr "Resource Baru..." +msgid "New TextFile..." +msgstr "File Teks Baru..." + +msgid "Sort Files" +msgstr "Urutkan File" + msgid "Sort by Name (Ascending)" msgstr "Urutkan berdasarkan Nama (Ascending)" @@ -3010,18 +4817,33 @@ msgstr "Urut dari Terakhir Diubah" msgid "Sort by First Modified" msgstr "Urut dari Pertama Diubah" +msgid "Copy UID" +msgstr "Salin UID" + msgid "Duplicate..." msgstr "Gandakan..." msgid "Rename..." msgstr "Ubah Nama..." +msgid "Open in External Program" +msgstr "Buka di Program Eksternal" + +msgid "Go to previous selected folder/file." +msgstr "Buka folder/file yang dipilih sebelumnya." + +msgid "Go to next selected folder/file." +msgstr "Buka folder/file yang dipilih berikutnya." + msgid "Re-Scan Filesystem" msgstr "Pindai Ulang Berkas Sistem" msgid "Toggle Split Mode" msgstr "Jungkitkan Mode Split" +msgid "Filter Files" +msgstr "Filter File" + msgid "" "Scanning Files,\n" "Please Wait..." @@ -3066,9 +4888,24 @@ msgstr "Cari..." msgid "Replace..." msgstr "Gantikan..." +msgid "Replace in Files" +msgstr "Ganti dalam File" + +msgid "Replace all (no undo)" +msgstr "Ganti semua (tanpa undo)" + msgid "Searching..." msgstr "Mencari..." +msgid "%d match in %d file" +msgstr "%d cocok dengan file %d" + +msgid "%d matches in %d file" +msgstr "%d cocok dengan file %d" + +msgid "%d matches in %d files" +msgstr "%d cocok dengan file %d" + msgid "Add to Group" msgstr "Tambahkan ke Grup" @@ -3105,12 +4942,194 @@ msgstr "Editor Grup" msgid "Manage Groups" msgstr "Kelola Grup" +msgid "The Beginning" +msgstr "Permulaan" + +msgid "Global" +msgstr "Global" + +msgid "Audio Stream Importer: %s" +msgstr "Importir Aliran Audio: %s" + msgid "Reimport" msgstr "Impor ulang" +msgid "Enable looping." +msgstr "Mengaktifkan perulangan." + msgid "Offset:" msgstr "Pengimbangan:" +msgid "" +"Loop offset (from beginning). Note that if BPM is set, this setting will be " +"ignored." +msgstr "" +"Loop offset (dari awal). Perhatikan bahwa jika BPM ditetapkan, pengaturan " +"ini akan diabaikan." + +msgid "Loop:" +msgstr "Loop:" + +msgid "BPM:" +msgstr "BPM:" + +msgid "" +"Configure the Beats Per Measure (tempo) used for the interactive streams.\n" +"This is required in order to configure beat information." +msgstr "" +"Konfigurasikan Beats Per Measure (tempo) yang digunakan untuk stream " +"interaktif.\n" +"Hal ini diperlukan untuk mengonfigurasi informasi ketukan." + +msgid "Beat Count:" +msgstr "Jumlah Ketukan:" + +msgid "" +"Configure the amount of Beats used for music-aware looping. If zero, it will " +"be autodetected from the length.\n" +"It is recommended to set this value (either manually or by clicking on a " +"beat number in the preview) to ensure looping works properly." +msgstr "" +"Konfigurasikan jumlah Ketukan yang digunakan untuk pengulangan musik. Jika " +"nol, maka akan terdeteksi secara otomatis dari panjangnya.\n" +"Direkomendasikan untuk menetapkan nilai ini (baik secara manual atau dengan " +"mengeklik nomor ketukan di pratinjau) untuk memastikan pengulangan berfungsi " +"dengan baik." + +msgid "Bar Beats:" +msgstr "Ketukan Bar:" + +msgid "" +"Configure the Beats Per Bar. This used for music-aware transitions between " +"AudioStreams." +msgstr "" +"Mengonfigurasi Ketukan Per Bar. Ini digunakan untuk transisi musik di antara " +"AudioStream." + +msgid "Music Playback:" +msgstr "Pemutaran Musik:" + +msgid "New Configuration" +msgstr "Konfigurasi Baru" + +msgid "Remove Variation" +msgstr "Hapus Variasi" + +msgid "Preloaded glyphs: %d" +msgstr "Glyph yang dimuat sebelumnya: %d" + +msgid "" +"Warning: There are no configurations specified, no glyphs will be pre-" +"rendered." +msgstr "" +"Peringatan: Tidak ada konfigurasi yang ditentukan, tidak ada glyph yang akan " +"dirender sebelumnya." + +msgid "" +"Warning: Multiple configurations have identical settings. Duplicates will be " +"ignored." +msgstr "" +"Peringatan: Beberapa konfigurasi memiliki pengaturan yang identik. Duplikat " +"akan diabaikan." + +msgid "" +"Note: LCD Subpixel antialiasing is selected, each of the glyphs will be pre-" +"rendered for all supported subpixel layouts (5x)." +msgstr "" +"Catatan: Antialiasing Subpiksel LCD dipilih, masing-masing glyph akan " +"dirender sebelumnya untuk semua tata letak subpiksel yang didukung (5x)." + +msgid "" +"Note: Subpixel positioning is selected, each of the glyphs might be pre-" +"rendered for multiple subpixel offsets (up to 4x)." +msgstr "" +"Catatan: Penentuan posisi subpiksel dipilih, masing-masing mesin glyph dapat " +"dirender sebelumnya untuk beberapa offset subpiksel (hingga 4x)." + +msgid "Advanced Import Settings for '%s'" +msgstr "Setelan Impor Lanjutan untuk '%s'" + +msgid "Rendering Options" +msgstr "Opsi Rendering" + +msgid "Select font rendering options, fallback font, and metadata override:" +msgstr "Pilih opsi rendering font, font fallback, dan penggantian metadata:" + +msgid "Pre-render Configurations" +msgstr "Konfigurasi Pra-render" + +msgid "" +"Add font size, and variation coordinates, and select glyphs to pre-render:" +msgstr "" +"Tambahkan ukuran font, dan koordinat variasi, dan pilih glyphs untuk pra-" +"render:" + +msgid "Configuration:" +msgstr "Konfigurasi:" + +msgid "Add configuration" +msgstr "Tambahkan konfigurasi" + +msgid "Clear Glyph List" +msgstr "Hapus Daftar Glyph" + +msgid "Glyphs from the Translations" +msgstr "Glyph dari Terjemahan" + +msgid "Select translations to add all required glyphs to pre-render list:" +msgstr "" +"Pilih terjemahan untuk menambahkan semua glyph yang diperlukan ke daftar pra-" +"render:" + +msgid "Shape all Strings in the Translations and Add Glyphs" +msgstr "Bentuk semua String dalam Terjemahan dan Tambahkan Glyph" + +msgid "Glyphs from the Text" +msgstr "Glyph dari Teks" + +msgid "" +"Enter a text and select OpenType features to shape and add all required " +"glyphs to pre-render list:" +msgstr "" +"Masukkan teks dan pilih fitur OpenType untuk membentuk dan menambahkan semua " +"glyph yang diperlukan ke daftar pra-render:" + +msgid "Shape Text and Add Glyphs" +msgstr "Bentuk Teks dan Tambahkan Glyph" + +msgid "Glyphs from the Character Map" +msgstr "Glyph dari Peta Karakter" + +msgid "" +"Add or remove glyphs from the character map to pre-render list:\n" +"Note: Some stylistic alternatives and glyph variants do not have one-to-one " +"correspondence to character, and not shown in this map, use \"Glyphs from " +"the text\" tab to add these." +msgstr "" +"Menambahkan atau menghapus glyph dari peta karakter ke daftar pra-render:\n" +"Catatan: Beberapa alternatif gaya dan varian glyph tidak memiliki " +"korespondensi satu-ke-satu dengan karakter, dan tidak ditampilkan di peta " +"ini, gunakan tab \"glyph dari teks\" untuk menambahkannya." + +msgid "Dynamically rendered TrueType/OpenType font" +msgstr "Font TrueType/OpenType yang ditampilkan secara dinamis" + +msgid "Prerendered multichannel(+true) signed distance field" +msgstr "" +"Bidang jarak bertanda multisaluran(+benar) yang telah ditentukan sebelumnya" + +msgid "Can't load font texture:" +msgstr "Tidak dapat memuat tekstur font:" + +msgid "Image margin too big." +msgstr "Margin gambar terlalu besar." + +msgid "Character margin too bit." +msgstr "Margin karakter terlalu sedikit." + +msgid "Pre-Import Scene" +msgstr "Adegan Pra-Impor" + msgid "Importing Scene..." msgstr "Mengimpor Skena..." @@ -3129,18 +5148,197 @@ msgstr "Skrip post-import rusak/tidak valid (cek konsol):" msgid "Error running post-import script:" msgstr "Kesalahan saat menjalankan skrip post-import:" +msgid "Did you return a Node-derived object in the `_post_import()` method?" +msgstr "" +"Apakah Anda mengembalikan objek turunan Node dalam metode `_post_import()`?" + msgid "Saving..." msgstr "Menyimpan..." +msgid "" +"Error importing GLSL shader file: '%s'. Open the file in the filesystem dock " +"in order to see the reason." +msgstr "" +"Kesalahan mengimpor file shader GLSL: '%s'. Buka file di dok sistem berkas " +"untuk mengetahui penyebabnya." + +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: Tekstur terdeteksi seperti yang digunakan sebagai peta normal dalam 3D. " +"Mengaktifkan kompresi tekstur merah-hijau untuk mengurangi penggunaan memori " +"(channel biru dibuang)." + +msgid "" +"%s: Texture detected as used as a roughness map in 3D. Enabling roughness " +"limiter based on the detected associated normal map at %s." +msgstr "" +"%s: Tekstur terdeteksi seperti yang digunakan sebagai peta kekasaran dalam " +"3D. Mengaktifkan pembatas kekasaran berdasarkan peta normal terkait yang " +"terdeteksi pada %s." + +msgid "" +"%s: Texture detected as used in 3D. Enabling mipmap generation and setting " +"the texture compression mode to %s." +msgstr "" +"%s: Tekstur terdeteksi seperti yang digunakan dalam 3D. Mengaktifkan " +"pembuatan mipmap dan menetapkan mode kompresi tekstur ke %s." + +msgid "2D/3D (Auto-Detect)" +msgstr "2D/3D (Deteksi Otomatis)" + msgid "2D" msgstr "2D" msgid "3D" msgstr "3D" +msgid "<Unnamed Material>" +msgstr "<Material tanpa nama>" + +msgid "Import ID: %s" +msgstr "Impor ID: %s" + +msgid "" +"Type: %s\n" +"Import ID: %s" +msgstr "" +"Tipe: %s\n" +"Impor ID: %s" + +msgid "Error opening scene" +msgstr "Kesalahan membuka adegan" + +msgid "Advanced Import Settings for AnimationLibrary '%s'" +msgstr "Pengaturan Impor Lanjutan untuk AnimationLibrary '%s'" + +msgid "Advanced Import Settings for Scene '%s'" +msgstr "Pengaturan Impor Lanjutan untuk Adegan '%s'" + +msgid "Select folder to extract material resources" +msgstr "Pilih folder untuk mengekstrak sumber daya material" + +msgid "Select folder where mesh resources will save on import" +msgstr "Pilih folder tempat sumber daya mesh akan disimpan saat impor" + +msgid "Select folder where animations will save on import" +msgstr "Pilih folder tempat animasi akan disimpan saat impor" + +msgid "Warning: File exists" +msgstr "Peringatan: File ada" + +msgid "Existing file with the same name will be replaced." +msgstr "File yang sudah ada dengan nama yang sama akan diganti." + +msgid "Will create new file" +msgstr "Akan membuat file baru" + +msgid "Already External" +msgstr "Sudah Eksternal" + +msgid "" +"This material already references an external file, no action will be taken.\n" +"Disable the external property for it to be extracted again." +msgstr "" +"Materi ini sudah mereferensikan file eksternal, tidak ada tindakan yang akan " +"diambil.\n" +"Nonaktifkan properti eksternal agar dapat diekstrak kembali." + +msgid "No import ID" +msgstr "Tidak ada ID impor" + +msgid "" +"Material has no name nor any other way to identify on re-import.\n" +"Please name it or ensure it is exported with an unique ID." +msgstr "" +"Material tidak memiliki nama atau cara lain untuk mengidentifikasi saat " +"diimpor kembali.\n" +"Harap beri nama atau pastikan material tersebut diekspor dengan ID yang unik." + +msgid "Extract Materials to Resource Files" +msgstr "Mengekstrak Material ke File Sumber Daya" + +msgid "Extract" +msgstr "Ekstrak" + +msgid "Already Saving" +msgstr "Sudah Disimpan" + +msgid "" +"This mesh already saves to an external resource, no action will be taken." +msgstr "" +"Mesh ini sudah menyimpan di sumber daya eksternal, tidak ada tindakan yang " +"akan diambil." + +msgid "Existing file with the same name will be replaced on import." +msgstr "" +"File yang sudah ada dengan nama yang sama akan diganti pada saat impor." + +msgid "Will save to new file" +msgstr "Akan menyimpan ke file baru" + +msgid "" +"Mesh has no name nor any other way to identify on re-import.\n" +"Please name it or ensure it is exported with an unique ID." +msgstr "" +"Mesh tidak memiliki nama atau cara lain untuk mengidentifikasi saat diimpor " +"ulang.\n" +"Harap beri nama atau pastikan diekspor dengan ID yang unik." + +msgid "Set paths to save meshes as resource files on Reimport" +msgstr "Mengatur path untuk menyimpan mesh sebagai file sumber daya di Reimpor" + +msgid "Set Paths" +msgstr "Mengatur Path" + +msgid "" +"This animation already saves to an external resource, no action will be " +"taken." +msgstr "" +"Animasi ini sudah disimpan ke sumber daya eksternal, tidak ada tindakan yang " +"akan diambil." + +msgid "Set paths to save animations as resource files on Reimport" +msgstr "" +"Mengatur path untuk menyimpan animasi sebagai file sumber daya di Reimpor" + +msgid "Can't make material external to file, write error:" +msgstr "Tidak dapat membuat material eksternal ke file, kesalahan penulisan:" + +msgid "Actions..." +msgstr "Tindakan..." + +msgid "Extract Materials" +msgstr "Material Ekstrak" + +msgid "Set Animation Save Paths" +msgstr "Mengatur Path Penyimpanan Animasi" + +msgid "Set Mesh Save Paths" +msgstr "Atur Path Penyimpanan Mesh" + +msgid "Meshes" +msgstr "Mesh" + msgid "Materials" msgstr "Material" +msgid "Save Extension:" +msgstr "Simpan Ekstensi:" + +msgid "Text: *.tres" +msgstr "Teks: *.tres" + +msgid "Binary: *.res" +msgstr "Biner: *.res" + +msgid "Text Resource" +msgstr "Sumber Daya Teks" + +msgid "Binary Resource" +msgstr "Sumber Daya Biner" + msgid "Select Importer" msgstr "Pilih Importir" @@ -3176,6 +5374,9 @@ msgstr "Impor sebagai:" msgid "Preset" msgstr "Prasetel" +msgid "Advanced..." +msgstr "Tingkat lanjut..." + msgid "Save Scenes, Re-Import, and Restart" msgstr "Simpan Skena, Impor Ulang, dan Mulai Ulang" @@ -3195,15 +5396,86 @@ msgstr "" "Pilih file sumber daya di sistem berkas atau di inspektur untuk menyesuaikan " "pengaturan impor." +msgid "No Event Configured" +msgstr "Tidak Ada Event yang Dikonfigurasi" + +msgid "Keyboard Keys" +msgstr "Tombol Keyboard" + +msgid "Mouse Buttons" +msgstr "Tombol Mouse" + +msgid "Joypad Buttons" +msgstr "Tombol Joypad" + +msgid "Joypad Axes" +msgstr "Sumbu Joypad" + +msgid "Event Configuration" +msgstr "Konfigurasi Event" + +msgid "Manual Selection" +msgstr "Seleksi Manual" + +msgid "Filter Inputs" +msgstr "Input Filter" + +msgid "Additional Options" +msgstr "Opsi Tambahan" + msgid "Device:" msgstr "Perangkat:" +msgid "Command / Control (auto)" +msgstr "Perintah / Kontrol (otomatis)" + +msgid "" +"Automatically remaps between 'Meta' ('Command') and 'Control' depending on " +"current platform." +msgstr "" +"Secara otomatis memetakan ulang antara 'Meta' ('Command') dan 'Control' " +"tergantung pada platform saat ini." + +msgid "Keycode (Latin Equivalent)" +msgstr "Kode Kunci (Setara Latin)" + +msgid "Physical Keycode (Position on US QWERTY Keyboard)" +msgstr "Kode Kunci Fisik (Posisi pada Keyboard QWERTY AS)" + +msgid "Key Label (Unicode, Case-Insensitive)" +msgstr "Label Kunci (Unicode, Tidak Peka Huruf Besar/Kecil)" + +msgid "" +"The following resources will be duplicated and embedded within this resource/" +"object." +msgstr "" +"Sumber daya berikut ini akan diduplikasi dan disematkan di dalam sumber daya/" +"objek ini." + +msgid "This object has no resources." +msgstr "Objek ini tidak memiliki sumber daya." + msgid "Failed to load resource." msgstr "Gagal memuat resource." +msgid "(Current)" +msgstr "(Saat ini)" + +msgid "Expand Non-Default" +msgstr "Perluas Non-Default" + +msgid "Property Name Style" +msgstr "Gaya Nama Properti" + msgid "Raw" msgstr "Raw (%)" +msgid "Capitalized" +msgstr "Dikapitalisasi" + +msgid "Localized" +msgstr "Dilokalisasi" + msgid "Localization not available for current language." msgstr "Lokalisasi tidak tersedia untuk bahasa saat ini." @@ -3240,18 +5512,39 @@ msgstr "Salin Resource" msgid "Make Resource Built-In" msgstr "Buat Resource Menjadi Bawaan" +msgid "Go to previous edited object in history." +msgstr "Pergi ke objek yang diedit sebelumnya dalam riwayat." + +msgid "Go to next edited object in history." +msgstr "Pergi ke objek yang diedit berikutnya dalam riwayat." + msgid "History of recently edited objects." msgstr "Histori dari objek terdireksi baru-baru saja." msgid "Open documentation for this object." msgstr "Buka Dokumentasi objek ini." +msgid "Filter Properties" +msgstr "Filter Properti" + msgid "Manage object properties." msgstr "Atur properti objek." +msgid "This cannot be undone. Are you sure?" +msgstr "Hal ini tidak dapat dibatalkan. Apa kau yakin?" + +msgid "Add %d Translations" +msgstr "Tambahkan %d Terjemahan" + msgid "Remove Translation" msgstr "Hapus Terjemahan" +msgid "Translation Resource Remap: Add %d Path(s)" +msgstr "Remap Sumber Daya Terjemahan: Tambahkan %d Path" + +msgid "Translation Resource Remap: Add %d Remap(s)" +msgstr "Remap Sumber Daya Penerjemahan: Tambahkan %d Remap" + msgid "Change Resource Remap Language" msgstr "Ubah Bahasa Resource Remap" @@ -3261,6 +5554,18 @@ msgstr "Hapus Resource Remap" msgid "Remove Resource Remap Option" msgstr "Hapus Opsi Resource Remap" +msgid "Add %d file(s) for POT generation" +msgstr "Tambahkan file %d untuk pembuatan POT" + +msgid "Remove file from POT generation" +msgstr "Hapus file dari pembuatan POT" + +msgid "Removed" +msgstr "Dihapus" + +msgid "%s cannot be found." +msgstr "%s tidak dapat ditemukan." + msgid "Translations" msgstr "Terjemahan" @@ -3279,9 +5584,36 @@ msgstr "Pemetaan ulang berdasar Pelokalan:" msgid "Locale" msgstr "Lokal" +msgid "POT Generation" +msgstr "Pembuatan POT" + +msgid "Files with translation strings:" +msgstr "File dengan string terjemahan:" + +msgid "Generate POT" +msgstr "Hasilkan POT" + +msgid "Set %s on %d nodes" +msgstr "Tetapkan%s pada%d node" + +msgid "%s (%d Selected)" +msgstr "%s (%d Dipilih)" + msgid "Select a single node to edit its signals and groups." msgstr "Pilih sebuah node untuk menyunting sinyal dan grup." +msgid "Plugin name cannot be blank." +msgstr "Nama plugin tidak boleh kosong." + +msgid "Script extension must match chosen language extension (.%s)." +msgstr "Ekstensi skrip harus sesuai dengan ekstensi bahasa yang dipilih (.%s)." + +msgid "Subfolder name is not a valid folder name." +msgstr "Nama subfolder bukan nama folder yang valid." + +msgid "Subfolder cannot be one which already exists." +msgstr "Subfolder tidak boleh merupakan subfolder yang sudah ada." + msgid "Edit a Plugin" msgstr "Sunting Plugin" @@ -3351,9 +5683,16 @@ msgstr "Muat..." msgid "Move Node Point" msgstr "Pindahkan Titik Node" +msgid "Change BlendSpace1D Config" +msgstr "Ubah Konfigurasi BlendSpace1D" + msgid "Change BlendSpace1D Labels" msgstr "Ubah Label BlendSpace1D" +msgid "This type of node can't be used. Only animation nodes are allowed." +msgstr "" +"Jenis node ini tidak dapat digunakan. Hanya node animasi yang diperbolehkan." + msgid "This type of node can't be used. Only root nodes are allowed." msgstr "Node tipe ini tidak dapat digunakan. Hanya node utama yang diijinkan." @@ -3386,6 +5725,9 @@ msgstr "Pilih dan gerakkan titik-titik, buat titik dengan RMB." msgid "Enable snap and show grid." msgstr "Izinkan snap dan tampilkan garis-garis kotak." +msgid "Sync:" +msgstr "Sinkronisasi:" + msgid "Blend:" msgstr "Campur:" @@ -3404,6 +5746,9 @@ msgstr "Segitiga sudah ada." msgid "Add Triangle" msgstr "Tambah Segitiga" +msgid "Change BlendSpace2D Config" +msgstr "Ubah Konfigurasi BlendSpace2D" + msgid "Change BlendSpace2D Labels" msgstr "Ubah Label BlendSpace2D" @@ -3434,6 +5779,9 @@ msgstr "Buat segi tiga pembauran secara otomatis (sebagai ganti cara manual)" msgid "Parameter Changed:" msgstr "Parameter Berubah:" +msgid "Inspect Filters" +msgstr "Periksa Filter" + msgid "Output node can't be added to the blend tree." msgstr "Node keluaran tidak bisa ditambahkan ke pohon campur." @@ -3492,6 +5840,9 @@ msgstr "Klip Audio" msgid "Functions" msgstr "Fungsi" +msgid "Inspect Filtered Tracks:" +msgstr "Periksa Trek yang Difilter:" + msgid "Edit Filtered Tracks:" msgstr "Sunting Trek yang Difilter:" @@ -3504,18 +5855,180 @@ msgstr "Tambah Node..." msgid "Enable Filtering" msgstr "Aktifkan Penyaringan" +msgid "Library Name:" +msgstr "Nama Library:" + +msgid "Animation name can't be empty." +msgstr "Nama animasi tidak boleh kosong." + +msgid "Animation name contains invalid characters: '/', ':', ',' or '['." +msgstr "" +"Nama animasi mengandung karakter yang tidak valid: '/', ':', ',', atau '['." + +msgid "Animation with the same name already exists." +msgstr "Animasi dengan nama yang sama sudah ada." + +msgid "Enter a library name." +msgstr "Masukkan nama library." + +msgid "Library name contains invalid characters: '/', ':', ',' or '['." +msgstr "" +"Nama library mengandung karakter yang tidak valid: '/', ':', ',', atau '['." + +msgid "Library with the same name already exists." +msgstr "Library dengan nama yang sama sudah ada." + +msgid "Animation name is valid." +msgstr "Nama animasi valid." + +msgid "Global library will be created." +msgstr "Perpustakaan global akan dibuat." + +msgid "Library name is valid." +msgstr "Nama library valid." + +msgid "Add Animation to Library: %s" +msgstr "Tambahkan Animasi ke Library: %s" + +msgid "Add Animation Library: %s" +msgstr "Tambahkan Library Animasi: %s" + msgid "Load Animation" msgstr "Muat Animasi" +msgid "" +"This animation library can't be saved because it does not belong to the " +"edited scene. Make it unique first." +msgstr "" +"Library animasi ini tidak dapat disimpan karena tidak termasuk dalam adegan " +"yang diedit. Buatlah unik terlebih dahulu." + +msgid "" +"This animation library can't be saved because it was imported from another " +"file. Make it unique first." +msgstr "" +"Library animasi ini tidak dapat disimpan karena diimpor dari file lain. " +"Buatlah unik terlebih dahulu." + +msgid "Save Library" +msgstr "Simpan Library" + +msgid "Make Animation Library Unique: %s" +msgstr "Buat Library Animasi Unik: %s" + +msgid "" +"This animation can't be saved because it does not belong to the edited " +"scene. Make it unique first." +msgstr "" +"Animasi ini tidak dapat disimpan karena tidak termasuk dalam adegan yang " +"diedit. Buatlah unik terlebih dahulu." + +msgid "" +"This animation can't be saved because it was imported from another file. " +"Make it unique first." +msgstr "" +"Animasi ini tidak dapat disimpan karena diimpor dari file lain. Buat itu " +"unik terlebih dahulu." + +msgid "Save Animation" +msgstr "Simpan Animasi" + +msgid "Make Animation Unique: %s" +msgstr "Buat Animasi Unik: %s" + +msgid "Invalid AnimationLibrary file." +msgstr "File AnimationLibrary tidak valid." + +msgid "This library is already added to the player." +msgstr "Library ini sudah ditambahkan ke player." + +msgid "Invalid Animation file." +msgstr "File Animasi tidak valid." + +msgid "This animation is already added to the library." +msgstr "Animasi ini sudah ditambahkan ke perpustakaan." + +msgid "Load Animation into Library: %s" +msgstr "Muat Animasi ke Perpustakaan: %s" + +msgid "Save Animation library to File: %s" +msgstr "Simpan Library Animasi ke File: %s" + +msgid "Save Animation to File: %s" +msgstr "Simpan Animasi ke File: %s" + +msgid "Rename Animation Library: %s" +msgstr "Ganti nama Library Animasi: %s" + +msgid "[Global]" +msgstr "[Global]" + +msgid "Rename Animation: %s" +msgstr "Ubah Nama Animasi: %s" + msgid "Animation Name:" msgstr "Nama Animasi:" +msgid "No animation resource in clipboard!" +msgstr "Tidak ada aset animasi di papan klip!" + msgid "Pasted Animation" msgstr "Animasi yang Direkatkan" msgid "Open in Inspector" msgstr "Buka dalam Inspektur" +msgid "Remove Animation Library: %s" +msgstr "Hapus Library Animasi: %s" + +msgid "Remove Animation from Library: %s" +msgstr "Hapus Animasi dari Library: %s" + +msgid "[built-in]" +msgstr "[bawaan]" + +msgid "[foreign]" +msgstr "[asing]" + +msgid "[imported]" +msgstr "[diimpor]" + +msgid "Add Animation to Library" +msgstr "Tambahkan Animasi ke Library" + +msgid "Load animation from file and add to library" +msgstr "Muat animasi dari file dan tambahkan ke library" + +msgid "Paste Animation to Library from clipboard" +msgstr "Tempelkan Animasi ke Library dari papan klip" + +msgid "Save animation library to resource on disk" +msgstr "Simpan library animasi ke sumber daya di disk" + +msgid "Remove animation library" +msgstr "Hapus library animasi" + +msgid "Copy animation to clipboard" +msgstr "Salin animasi ke clipboard" + +msgid "Save animation to resource on disk" +msgstr "Simpan animasi ke sumber daya pada disk" + +msgid "Remove animation from Library" +msgstr "Hapus animasi dari Library" + +msgid "Edit Animation Libraries" +msgstr "Edit Library Animasi" + +msgid "Add Library" +msgstr "Tambahkan Library" + +msgid "Load Library" +msgstr "Muat Library" + +msgid "Storage" +msgstr "Penyimpanan" + msgid "Toggle Autoplay" msgstr "Jungkitkan Putar Otomatis" @@ -3531,12 +6044,18 @@ msgstr "Ubah Nama Animasi" msgid "Change Animation Name:" msgstr "Ubah Nama Animasi:" +msgid "Delete Animation '%s'?" +msgstr "Hapus Animasi '%s'?" + msgid "Remove Animation" msgstr "Hapus Animasi" msgid "Invalid animation name!" msgstr "Nama animasi tidak valid!" +msgid "Animation '%s' already exists!" +msgstr "Animasi '%s' sudah ada!" + msgid "Duplicate Animation" msgstr "Gandakan Animasi" @@ -3546,12 +6065,21 @@ msgstr "Baur Pergantian Selanjutnya" msgid "Change Blend Time" msgstr "Ubah Waktu Blend" +msgid "[Global] (create)" +msgstr "[Global] (buat)" + +msgid "Duplicated Animation Name:" +msgstr "Nama Animasi Duplikat:" + msgid "Play selected animation backwards from current pos. (A)" msgstr "Mainkan mundur animasi terpilih dari lokasi sekarang. (A)" msgid "Play selected animation backwards from end. (Shift+A)" msgstr "Mainkan mundur animasi terpilih dari akhir. (Shift+A)" +msgid "Pause/stop animation playback. (S)" +msgstr "Menjeda/menghentikan pemutaran animasi. (S)" + msgid "Play selected animation from start. (Shift+D)" msgstr "Mainkan animasi terpilih dari awal. (Shift+D)" @@ -3570,6 +6098,9 @@ msgstr "Perkakas Animasi" msgid "Animation" msgstr "Animasi" +msgid "Manage Animations..." +msgstr "Mengelola Animasi..." + msgid "Edit Transitions..." msgstr "Sunting Transisi..." @@ -3615,6 +6146,9 @@ msgstr "Paksa Modulasi Putih" msgid "Include Gizmos (3D)" msgstr "Masukkan Gizmo (3D)" +msgid "Onion Skinning temporarily disabled due to rendering bug." +msgstr "Onion Skinning dinonaktifkan sementara karena bug rendering." + msgid "Pin AnimationPlayer" msgstr "Sematkan AnimationPlayer" @@ -3636,6 +6170,12 @@ msgstr "Pindahkan Node" msgid "Transition exists!" msgstr "Transisi sudah ada!" +msgid "To" +msgstr "Ke" + +msgid "Add Node and Transition" +msgstr "Tambahkan Node dan Transisi" + msgid "Add Transition" msgstr "Tambah Transisi" @@ -3663,21 +6203,50 @@ msgstr "Node Dihapus" msgid "Transition Removed" msgstr "Transisi Dihapus" +msgid "" +"Select and move nodes.\n" +"RMB: Add node at position clicked.\n" +"Shift+LMB+Drag: Connects the selected node with another node or creates a " +"new node if you select an area without nodes." +msgstr "" +"Memilih dan memindahkan node.\n" +"RMB: Menambahkan simpul pada posisi yang diklik.\n" +"Shift+LMB+Seret: Menghubungkan node yang dipilih dengan node lain atau " +"membuat node baru jika Anda memilih area tanpa node." + msgid "Create new nodes." msgstr "Buat node baru." msgid "Connect nodes." msgstr "Hubungkan node." +msgid "Group Selected Node(s)" +msgstr "Kelompokkan Node yang Dipilih" + +msgid "Ungroup Selected Node" +msgstr "Pisahkan Grup Node yang Dipilih" + msgid "Remove selected node or transition." msgstr "Hapus node atau transisi terpilih." +msgid "Transition:" +msgstr "Transisi:" + +msgid "New Transitions Should Auto Advance" +msgstr "Transisi Baru Harus Auto Advance" + msgid "Play Mode:" msgstr "Mode Putar:" msgid "Delete Selected" msgstr "Hapus yang Dipilih" +msgid "Delete All" +msgstr "Hapus Semua" + +msgid "Root" +msgstr "Root" + msgid "AnimationTree" msgstr "AnimationTree(Daftar animasi)" @@ -3750,6 +6319,9 @@ msgstr "Gagal mengecek hash SHA-256" msgid "Asset Download Error:" msgstr "Kesalahan Saat Mengunduh Aset:" +msgid "Ready to install!" +msgstr "Siap dipasang!" + msgid "Downloading (%s / %s)..." msgstr "Mengunduh (%s / %s)..." @@ -3801,9 +6373,43 @@ msgstr "Menguji" msgid "Loading..." msgstr "Sedang memuat…" +msgctxt "Pagination" +msgid "First" +msgstr "Pertama" + +msgctxt "Pagination" +msgid "Previous" +msgstr "Sebelum" + +msgctxt "Pagination" +msgid "Next" +msgstr "Berikutnya" + +msgctxt "Pagination" +msgid "Last" +msgstr "Terakhir" + msgid "All" msgstr "Semua" +msgid "No results for \"%s\" for support level(s): %s." +msgstr "Tidak ada hasil untuk \"%s\" untuk support level: %s." + +msgid "" +"No results compatible with %s %s for support level(s): %s.\n" +"Check the enabled support levels using the 'Support' button in the top-right " +"corner." +msgstr "" +"Tidak ada hasil yang sesuai dengan %s %s untuk level support: %s.\n" +"Periksa level support yang diaktifkan dengan menggunakan tombol 'Support' di " +"pojok kanan atas." + +msgid "Search Templates, Projects, and Demos" +msgstr "Cari Templat, Proyek, dan Demo" + +msgid "Search Assets (Excluding Templates, Projects, and Demos)" +msgstr "Cari Aset (Tidak Termasuk Templat, Proyek, dan Demo)" + msgid "Import..." msgstr "Impor…" @@ -3822,12 +6428,21 @@ msgstr "Situs:" msgid "Support" msgstr "Dukungan" +msgid "Failed to get repository configuration." +msgstr "Gagal mendapatkan konfigurasi repositori." + msgid "Assets ZIP File" msgstr "Berkas Aset ZIP" msgid "Audio Preview Play/Pause" msgstr "Putar/Jeda Pratinjau Audio" +msgid "Bone Picker:" +msgstr "Bone Picker:" + +msgid "Clear mappings in current group." +msgstr "Hapus pemetaan di grup saat ini." + msgid "Preview" msgstr "Pratinjau" @@ -3855,6 +6470,9 @@ msgstr "Jangkah Perputaran:" msgid "Scale Step:" msgstr "Langkah Skala:" +msgid "Move Node(s) to Position" +msgstr "Pindahkan Node ke Posisi" + msgid "Move Vertical Guide" msgstr "Pindahkan Panduan Vertikal" @@ -3915,6 +6533,30 @@ msgstr "Terkelompok" msgid "Add Node Here" msgstr "Tambahkan Node Di sini" +msgid "Instantiate Scene Here" +msgstr "Buat Adegan di Sini" + +msgid "Paste Node(s) Here" +msgstr "Tempel Node di Sini" + +msgid "Move Node(s) Here" +msgstr "Pindahkan Node ke Sini" + +msgid "px" +msgstr "px" + +msgid "units" +msgstr "unit" + +msgid "Moving:" +msgstr "Memindahkan:" + +msgid "Rotating:" +msgstr "Memutar:" + +msgid "Scaling:" +msgstr "Penskalaan:" + msgid "" "Project Camera Override\n" "Overrides the running project's camera with the editor viewport camera." @@ -3949,6 +6591,9 @@ msgstr "Tempel Pose" msgid "Clear Guides" msgstr "Bersihkan Panduan" +msgid "Create Custom Bone2D(s) from Node(s)" +msgstr "Membuat Bone2D khusus dari Node" + msgid "Zoom to 3.125%" msgstr "Perbesar 3.125%" @@ -3988,6 +6633,9 @@ msgstr "Seret: Putar node terpilih sekitar pivot." msgid "Alt+Drag: Move selected node." msgstr "Alt+Seret: Pindahkan node terpilih." +msgid "Alt+Drag: Scale selected node." +msgstr "Alt+Seret: Menskala simpul yang dipilih." + msgid "V: Set selected node's pivot position." msgstr "V: Atur posisi pivot node terpilih." @@ -4011,12 +6659,21 @@ msgstr "Mode Skala" msgid "Shift: Scale proportionally." msgstr "Shift: Skala proporsional." +msgid "Show list of selectable nodes at position clicked." +msgstr "Tampilkan daftar node yang dapat dipilih pada posisi yang diklik." + msgid "Click to change object's rotation pivot." msgstr "Klik untuk mengubah pivot perputaran objek." msgid "Pan Mode" msgstr "Mode Geser Pandangan" +msgid "" +"You can also use Pan View shortcut (Space by default) to pan in any mode." +msgstr "" +"Anda juga dapat menggunakan pintasan Pan View (Spasi secara default) untuk " +"menggeser dalam mode apa pun." + msgid "Ruler Mode" msgstr "Mode Penggaris" @@ -4071,18 +6728,51 @@ msgstr "Kancing ke Node Lain" msgid "Snap to Guides" msgstr "Kancing ke Panduan" +msgid "Lock selected node, preventing selection and movement." +msgstr "Mengunci simpul yang dipilih, mencegah pemilihan dan pergerakan." + +msgid "Lock Selected Node(s)" +msgstr "Mengunci Node yang Dipilih" + +msgid "Unlock selected node, allowing selection and movement." +msgstr "Buka kunci node yang dipilih, memungkinkan pemilihan dan pergerakan." + +msgid "Unlock Selected Node(s)" +msgstr "Buka Kunci Node Terpilih" + +msgid "Make selected node's children not selectable." +msgstr "Membuat turunan node yang dipilih tidak dapat dipilih." + +msgid "Make selected node's children selectable." +msgstr "Membuat turunan node yang dipilih dapat dipilih." + +msgid "Ungroup Selected Node(s)" +msgstr "Pisahkan Node yang Dipilih dari Grup" + msgid "Skeleton Options" msgstr "Opsi Pertulangan" msgid "Show Bones" msgstr "Tampilkan Tulang-tulang" +msgid "Make Bone2D Node(s) from Node(s)" +msgstr "Buat Node Bone2D dari Node" + msgid "View" msgstr "Pandangan" +msgid "Show" +msgstr "Tampilkan" + +msgid "Show When Snapping" +msgstr "Tampilkan Saat Menjepret" + msgid "Hide" msgstr "Sembunyikan" +msgid "Toggle Grid" +msgstr "Alihkan Kisi" + msgid "Grid" msgstr "Kisi" @@ -4104,6 +6794,9 @@ msgstr "Tampilkan Viewport" msgid "Show Group And Lock Icons" msgstr "Tampilkan Ikon Kunci Dan Grup" +msgid "Show Transformation Gizmos" +msgstr "Tampilkan Gizmos Transformasi" + msgid "Center Selection" msgstr "Seleksi Tengah" @@ -4161,21 +6854,91 @@ msgstr "Bagi langkah kisi demi 2" msgid "Adding %s..." msgstr "Menambahkan %s..." +msgid "Drag and drop to add as child of current scene's root node." +msgstr "" +"Seret dan turun untuk menambahkan sebagai turunan dari node akar adegan saat " +"ini." + +msgid "Hold Ctrl when dropping to add as child of selected node." +msgstr "" +"Tahan Ctrl saat menjatuhkan untuk menambahkan sebagai turunan dari node yang " +"dipilih." + +msgid "Hold Shift when dropping to add as sibling of selected node." +msgstr "" +"Tahan Shift saat menjatuhkan untuk menambahkan sebagai saudara dari node " +"yang dipilih." + +msgid "Hold Alt when dropping to add as a different node type." +msgstr "Tahan Alt saat menjatuhkan untuk menambahkan jenis node yang berbeda." + msgid "Cannot instantiate multiple nodes without root." msgstr "Tidak dapat menginstansiasi beberapa node tanpa root." msgid "Create Node" msgstr "Buat Node" +msgid "Error instantiating scene from %s" +msgstr "Kesalahan menginstansiasi adegan dari %s" + msgid "Change Default Type" msgstr "Ubah Tipe Baku" +msgid "Set Target Position" +msgstr "Tetapkan Posisi Target" + msgid "Set Handle" msgstr "Atur Pegangan" +msgid "This node doesn't have a control parent." +msgstr "Node ini tidak memiliki induk kontrol." + +msgid "" +"Use the appropriate layout properties depending on where you are going to " +"put it." +msgstr "" +"Gunakan properti tata letak yang sesuai, tergantung di mana Anda akan " +"meletakkannya." + +msgid "This node is a child of a container." +msgstr "Node ini adalah turunan dari sebuah kontainer." + +msgid "Use container properties for positioning." +msgstr "Gunakan properti kontainer untuk pemosisian." + +msgid "This node is a child of a regular control." +msgstr "Node ini adalah turunan dari kontrol biasa." + +msgid "Use anchors and the rectangle for positioning." +msgstr "Gunakan jangkar dan persegi panjang untuk posisi." + +msgid "Collapse positioning hint." +msgstr "Ciutkan petunjuk pemosisian." + +msgid "Expand positioning hint." +msgstr "Perluas petunjuk pemosisian." + +msgid "Container Default" +msgstr "Kontainer Default" + msgid "Fill" msgstr "Isi" +msgid "Shrink Begin" +msgstr "Menyusut Mulai" + +msgid "Shrink Center" +msgstr "Menyusut Terpusat" + +msgid "Shrink End" +msgstr "Ujung Penyusutan" + +msgid "Custom" +msgstr "Kustom" + +msgid "Expand" +msgstr "Memperluas" + msgid "Top Left" msgstr "Kiri Atas" @@ -4224,9 +6987,65 @@ msgstr "Kanan Lebar" msgid "Full Rect" msgstr "Kotak Penuh" +msgid "" +"Enable to also set the Expand flag.\n" +"Disable to only set Shrink/Fill flags." +msgstr "" +"Aktifkan untuk juga mengatur bendera Perluas.\n" +"Nonaktifkan untuk hanya mengatur bendera Kecilkan/Isi." + +msgid "Some parents of the selected nodes do not support the Expand flag." +msgstr "Beberapa induk dari node yang dipilih tidak mendukung bendera Perluas." + +msgid "Align with Expand" +msgstr "Sejajarkan dengan Perluas" + +msgid "Change Anchors, Offsets, Grow Direction" +msgstr "Ubah Jangkar, Offset, Arah Tumbuh" + +msgid "Change Anchors, Offsets (Keep Ratio)" +msgstr "Ubah Jangkar, Offset (Pertahankan Rasio)" + +msgid "Change Vertical Size Flags" +msgstr "Ubah Bendera Ukuran Vertikal" + +msgid "Change Horizontal Size Flags" +msgstr "Mengubah Bendera Ukuran Horizontal" + +msgid "Presets for the anchor and offset values of a Control node." +msgstr "Prasetel untuk nilai jangkar dan offset node Kontrol." + +msgid "Anchor preset" +msgstr "Prasetel jangkar" + +msgid "Set to Current Ratio" +msgstr "Atur ke Rasio Saat Ini" + +msgid "Adjust anchors and offsets to match the current rect size." +msgstr "Sesuaikan jangkar dan offset agar sesuai dengan ukuran kotak saat ini." + +msgid "" +"When active, moving Control nodes changes their anchors instead of their " +"offsets." +msgstr "" +"Ketika aktif, memindahkan Control node akan mengubah jangkarnya, bukan " +"offsetnya." + +msgid "Sizing settings for children of a Container node." +msgstr "Pengaturan ukuran untuk turunan node Kontainer." + +msgid "Horizontal alignment" +msgstr "Penjajaran horizontal" + +msgid "Vertical alignment" +msgstr "Penjajaran vertikal" + msgid "Load Emission Mask" msgstr "Muat Masker Emisi" +msgid "CPUParticles2D" +msgstr "CPUParticles2D" + msgid "Generated Point Count:" msgstr "Jumlah Titik yang Dihasilkan:" @@ -4248,6 +7067,9 @@ msgstr "Tangkap dari Piksel" msgid "Emission Colors" msgstr "Warna Emisi" +msgid "CPUParticles3D" +msgstr "CPUParticles3D" + msgid "Create Emission Points From Node" msgstr "Buat Titik Emisi dari Node" @@ -4351,6 +7173,16 @@ msgstr "" "Collision shapes dan raycast nodes (untuk 2D dan 3D) akan terlihat pada saat " "proyek berjalan jika opsi ini aktif." +msgid "Visible Paths" +msgstr "Path yang Terlihat" + +msgid "" +"When this option is enabled, curve resources used by path nodes will be " +"visible in the running project." +msgstr "" +"Ketika opsi ini diaktifkan, sumber daya kurva yang digunakan oleh node path " +"akan terlihat pada proyek yang sedang berjalan." + msgid "Visible Navigation" msgstr "Navigasi Terlihat" @@ -4388,15 +7220,70 @@ msgstr "" "Ketika penggunaan remote pada sebuah perangakat, akan lebih efisien dengan " "opsi jaringan berkas-berkas." +msgid "Keep Debug Server Open" +msgstr "Biarkan Server Debug Tetap Terbuka" + +msgid "" +"When this option is enabled, the editor debug server will stay open and " +"listen for new sessions started outside of the editor itself." +msgstr "" +"Ketika opsi ini diaktifkan, server debug editor akan tetap terbuka dan " +"mendengarkan sesi baru yang dimulai di luar editor itu sendiri." + +msgid "Run Multiple Instances" +msgstr "Jalankan Beberapa Instance" + +msgid "Run %d Instance" +msgid_plural "Run %d Instances" +msgstr[0] "Jalankan %d Instance" + +msgid "Overrides (%d)" +msgstr "Menimpa (%d)" + +msgctxt "Locale" +msgid "Add Script" +msgstr "Tambahkan Skrip" + +msgid "Add Locale" +msgstr "Tambahkan Lokal" + +msgid "Variation Coordinates (%d)" +msgstr "Koordinat Variasi (%d)" + +msgid "No supported features" +msgstr "Tidak ada fitur yang didukung" + +msgid "Features (%d of %d set)" +msgstr "Fitur (%d dari %d set)" + +msgid "Add Feature" +msgstr "Tambahkan Fitur" + +msgid " - Variation" +msgstr " - Variasi" + +msgid "Unable to preview font" +msgstr "Tidak dapat melihat pratinjau font" + msgid "Convert to CPUParticles2D" msgstr "Konversikan menjadi CPUParticles2D" +msgid "Generating Visibility Rect (Waiting for Particle Simulation)" +msgstr "Menghasilkan Visibility Kotak (Menunggu Simulasi Partikel)" + msgid "Generate Visibility Rect" msgstr "Buatkan Kotak Penampakan" +msgid "Can only set point into a ParticleProcessMaterial process material" +msgstr "" +"Hanya dapat mengatur titik ke dalam material proses ParticleProcessMaterial" + msgid "Clear Emission Mask" msgstr "Hapus Masker Emisi" +msgid "GPUParticles2D" +msgstr "GPUPartikel2D" + msgid "Generation Time (sec):" msgstr "Waktu Pembuatan (detik):" @@ -5419,7 +8306,7 @@ msgid "Previous Script" msgstr "Skrip Sebelumnya" msgid "File" -msgstr "Berkas" +msgstr "File" msgid "Open..." msgstr "Buka..." @@ -5938,6 +8825,9 @@ msgstr "" "Sematkan StyleBox ini sebagai gaya utama. Mengedit propertinya akan " "memperbarui properti yang sama di semua StyleBox lain dari jenis ini." +msgid "Base Type" +msgstr "Tipe Dasar" + msgid "Select the variation base type from a list of available types." msgstr "Pilih tipe dasar variasi dari daftar tipe yang tersedia." @@ -6036,6 +8926,15 @@ msgstr "Balik secara Horizontal" msgid "Flip Vertically" msgstr "Balik secara Vertikal" +msgid "Tiles" +msgstr "Ubin" + +msgid "Rendering" +msgstr "Rendering" + +msgid "Modulate" +msgstr "Memodulasi" + msgid "Yes" msgstr "Ya" @@ -6057,6 +8956,9 @@ msgstr "Subjudul:" msgid "Apply" msgstr "Terapkan" +msgid "Username" +msgstr "Nama Pengguna" + msgid "Password" msgstr "Kata Sandi" @@ -6684,6 +9586,9 @@ msgstr "Sunting Properti Visual:" msgid "Visual Shader Mode Changed" msgstr "Mode Shader Visual Berubah" +msgid "Bake VoxelGI" +msgstr "Bake VoxelGI" + msgid "The path specified doesn't exist." msgstr "Lokasi yang ditentukan tidak ada." @@ -6919,6 +9824,9 @@ msgstr "Pemetaan Input" msgid "Localization" msgstr "Lokalisasi" +msgid "Autoload" +msgstr "Load Otomatis" + msgid "Plugins" msgstr "Pengaya" @@ -7183,6 +10091,9 @@ msgstr "Anakan yang Dapat Disunting" msgid "Load As Placeholder" msgstr "Muat sebagai Placeholder" +msgid "Auto Expand to Selected" +msgstr "Perluas Otomatis ke yang Dipilih" + msgid "Filters" msgstr "Filter" @@ -7586,6 +10497,9 @@ msgstr "Mengurai Geometri..." msgid "Done!" msgstr "Selesai!" +msgid "Pose" +msgstr "Pose" + msgid "Package name is missing." msgstr "Nama paket tidak ada." @@ -8165,6 +11079,9 @@ msgstr "Sumber tidak sah untuk shader." msgid "Default Color" msgstr "Warna Bawaan" +msgid "Filter" +msgstr "Filter" + msgid "Repeat" msgstr "Ulang" diff --git a/editor/translations/editor/it.po b/editor/translations/editor/it.po index 63bf3f9198..ef98a0901c 100644 --- a/editor/translations/editor/it.po +++ b/editor/translations/editor/it.po @@ -82,13 +82,15 @@ # gianmarco malandra <giamminho12@gmail.com>, 2023. # Francesco Franchina <cescus92@gmail.com>, 2023. # "Matteo A." <psyduck.boh@gmail.com>, 2023. +# Davide Mora <mora.davide07@gmail.com>, 2023. +# Francesco Falcone <francesco01.falcone@gmail.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-11 13:46+0000\n" -"Last-Translator: Riteo Siuga <riteo@posteo.net>\n" +"PO-Revision-Date: 2023-05-03 11:49+0000\n" +"Last-Translator: Francesco Falcone <francesco01.falcone@gmail.com>\n" "Language-Team: Italian <https://hosted.weblate.org/projects/godot-engine/" "godot/it/>\n" "Language: it\n" @@ -96,7 +98,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.17-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Unset" msgstr "Non impostato" @@ -265,6 +267,12 @@ msgstr "Gesto d'ingrandimento in (%s) con un fattore di %s" msgid "Pan Gesture at (%s) with delta (%s)" msgstr "Gesto panoramico in (%s) con un delta di (%s)" +msgid "MIDI Input on Channel=%s Message=%s" +msgstr "Input MIDI sul Canale=%s Message=%s" + +msgid "Input Event with Shortcut=%s" +msgstr "Evento Input con Scorciatoia=%s" + msgid "Accept" msgstr "Accetta" @@ -418,6 +426,9 @@ msgstr "Reimposta i cursori e la selezione" msgid "Toggle Insert Mode" msgstr "Commuta la modalità d'inserimento" +msgid "Submit Text" +msgstr "Invia il Testo" + msgid "Duplicate Nodes" msgstr "Duplica Nodi" @@ -601,6 +612,9 @@ msgstr "Seleziona tutte le chiavi" msgid "Deselect All Keys" msgstr "Deseleziona tutte le chiavi" +msgid "Animation Change Transition" +msgstr "Transizione al cambio dell'Animazione" + msgid "Animation Change Keyframe Value" msgstr "Cambia il valore del fotogramma chiave di un'animazione" @@ -686,6 +700,9 @@ msgstr "Cambia Percorso Traccia" msgid "Toggle this track on/off." msgstr "Abilita/Disabilita questa traccia." +msgid "Use Blend" +msgstr "Usa Blend" + msgid "Update Mode (How this property is set)" msgstr "Modalità di aggiornamento (come viene impostata questa proprietà)" @@ -4349,6 +4366,9 @@ msgstr "" "Tutti i preset devono avere un percorso di esportazione definito affinché " "\"Esporta tutto\" funzioni." +msgid "Resources to export:" +msgstr "Risorse da esportare:" + msgid "Delete preset '%s'?" msgstr "Eliminare preset \"%s\"?" @@ -4406,9 +4426,6 @@ msgstr "Esporta come server dedicato" msgid "Export Mode:" msgstr "Modalità d'Esportazione:" -msgid "Resources to export:" -msgstr "Risorse da esportare:" - msgid "" "\"Strip Visuals\" will replace the following resources with placeholders:" msgstr "" diff --git a/editor/translations/editor/ja.po b/editor/translations/editor/ja.po index ea4e8dd450..3df88ec840 100644 --- a/editor/translations/editor/ja.po +++ b/editor/translations/editor/ja.po @@ -59,7 +59,7 @@ msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-19 17:09+0000\n" +"PO-Revision-Date: 2023-04-30 10:49+0000\n" "Last-Translator: Usamiki <amarantus0499@gmail.com>\n" "Language-Team: Japanese <https://hosted.weblate.org/projects/godot-engine/" "godot/ja/>\n" @@ -4452,6 +4452,9 @@ msgstr "" "全てのプリセットはエクスポートが全て機能するために、エクスポートパスを定義す" "る必要があります。" +msgid "Resources to export:" +msgstr "エクスポートするリソース:" + msgid "Delete preset '%s'?" msgstr "プリセット '%s' を削除しますか?" @@ -4511,9 +4514,6 @@ msgstr "専用サーバーとしてエクスポート" msgid "Export Mode:" msgstr "エクスポートモード:" -msgid "Resources to export:" -msgstr "エクスポートするリソース:" - msgid "" "\"Strip Visuals\" will replace the following resources with placeholders:" msgstr "" @@ -9383,7 +9383,7 @@ msgid "Nothing was selected for the import." msgstr "インポートするものが選択されていません。" msgid "Importing Theme Items" -msgstr "テーマのアイテムをインポート中" +msgstr "テーマアイテムをインポート中" msgid "Importing items {n}/{n}" msgstr "アイテムをインポート中 {n}/{n}" @@ -9395,7 +9395,7 @@ msgid "Finalizing" msgstr "終了処理中" msgid "Import Theme Items" -msgstr "テーマのアイテムをインポート" +msgstr "テーマアイテムをインポート" msgid "Filter Items" msgstr "アイテムをフィルタ" @@ -9442,6 +9442,9 @@ msgstr "表示中のすべてのフォントサイズアイテムを選択する msgid "Select all visible font size items and their data." msgstr "表示中のすべてのフォントサイズアイテムとそのデータを選択する。" +msgid "Deselect all visible font size items." +msgstr "表示中のすべてのフォントサイズアイテムを選択解除する。" + msgid "Select all visible icon items." msgstr "表示中のすべてのアイコンアイテムを選択する。" @@ -9500,6 +9503,9 @@ msgstr "" "択は失われます。\n" "それでも閉じますか?" +msgid "Remove Type" +msgstr "タイプを削除" + msgid "" "Select a theme type from the list to edit its items.\n" "You can add a custom type or import a type with its items from another theme." @@ -9520,6 +9526,9 @@ msgstr "すべての定数アイテムを除去" msgid "Remove All Font Items" msgstr "すべてのフォントアイテムを除去" +msgid "Remove All Font Size Items" +msgstr "すべてのフォントサイズアイテムを除去" + msgid "Remove All Icon Items" msgstr "すべてのアイコンアイテムを除去" @@ -9533,9 +9542,30 @@ msgstr "" "このテーマタイプは空です。\n" "手動もしくは他のテーマからインポートして、アイテムを追加してください。" +msgid "Remove Theme Item" +msgstr "テーマアイテムを除去" + +msgid "Add Theme Type" +msgstr "テーマタイプを追加" + +msgid "Create Theme Item" +msgstr "テーマアイテムを作成" + +msgid "Remove Theme Type" +msgstr "テーマタイプを削除" + msgid "Remove Data Type Items From Theme" msgstr "テーマからデータ型アイテムを除去" +msgid "Remove Class Items From Theme" +msgstr "テーマからクラスアイテムを除去" + +msgid "Remove Custom Items From Theme" +msgstr "テーマからカスタムアイテムを除去" + +msgid "Remove All Items From Theme" +msgstr "テーマからすべてのアイテムを除去" + msgid "Add Color Item" msgstr "カラーアイテムの追加" @@ -9545,6 +9575,9 @@ msgstr "定数アイテムの追加" msgid "Add Font Item" msgstr "フォントアイテムの追加" +msgid "Add Font Size Item" +msgstr "フォントサイズアイテムを追加" + msgid "Add Icon Item" msgstr "アイコンアイテムの追加" @@ -9560,12 +9593,18 @@ msgstr "定数アイテム名の変更" msgid "Rename Font Item" msgstr "フォントアイテム名の変更" +msgid "Rename Font Size Item" +msgstr "フォントサイズアイテム名の変更" + msgid "Rename Icon Item" msgstr "アイコンアイテム名の変更" msgid "Rename Stylebox Item" msgstr "StyleBox アイテム名の変更" +msgid "Rename Theme Item" +msgstr "テーマアイテム名の変更" + msgid "Invalid file, not a Theme resource." msgstr "無効なファイルです。テーマリソースではありません。" @@ -9666,6 +9705,39 @@ msgstr "タイプを追加" msgid "Override All Default Theme Items" msgstr "すべてのデフォルトのテーマアイテムを上書き" +msgid "Override Theme Item" +msgstr "テーマアイテムを上書き" + +msgid "Set Color Item in Theme" +msgstr "テーマにカラーアイテムを設定" + +msgid "Set Constant Item in Theme" +msgstr "テーマに定数アイテムを設定" + +msgid "Set Font Size Item in Theme" +msgstr "テーマにフォントサイズアイテムを設定" + +msgid "Set Font Item in Theme" +msgstr "テーマにフォントアイテムを設定" + +msgid "Set Icon Item in Theme" +msgstr "テーマにアイコンアイテムを設定" + +msgid "Set Stylebox Item in Theme" +msgstr "テーマに StyleBox アイテムを設定" + +msgid "Pin Stylebox" +msgstr "スタイルボックスを固定" + +msgid "Unpin Stylebox" +msgstr "スタイルボックスの固定を解除" + +msgid "Set Theme Type Variation" +msgstr "テーマタイプのバリエーションを設定" + +msgid "Set Variation Base Type" +msgstr "バリエーションのベースタイプを設定" + msgid "Set Base Type" msgstr "基底型を設定" @@ -9691,6 +9763,13 @@ msgstr "基底型" msgid "Select the variation base type from a list of available types." msgstr "使用可能なタイプのリストからバリエーションのベースタイプを選択。" +msgid "" +"A type associated with a built-in class cannot be marked as a variation of " +"another type." +msgstr "" +"組み込みクラスに関連付けられた型は、別の型のバリエーションとしてマークするこ" +"とはできません。" + msgid "Theme:" msgstr "テーマ:" @@ -9792,18 +9871,48 @@ msgstr "無効なファイルです。PackedScene のリソースではありま msgid "Reload the scene to reflect its most actual state." msgstr "最も実際の状態を反映させるためにシーンをリロードします。" +msgid "Merge TileSetAtlasSource" +msgstr "TileSetAtlasSource のマージ" + +msgid "%s (ID: %d)" +msgstr "%s (ID: %d)" + msgid "Atlas Merging" msgstr "アトラスのマージ" +msgid "Merge (Keep original Atlases)" +msgstr "マージ (元のアトラスを保持)" + msgid "Merge" msgstr "マージ" msgid "Please select two atlases or more." msgstr "2 つ以上のアトラスを選択してください。" +msgid "" +"Source: %d\n" +"Atlas coordinates: %s\n" +"Alternative: 0" +msgstr "" +"ソース: %d\n" +"アトラス座標: %s\n" +"代替: 0" + +msgid "" +"Source: %d\n" +"Atlas coordinates: %s\n" +"Alternative: %d" +msgstr "" +"ソース: %d\n" +"アトラス座標: %s\n" +"代替: %d" + msgid "Center View" msgstr "中心ビュー" +msgid "No atlas source with a valid texture selected." +msgstr "有効なテクスチャが選択されたアトラス ソースがありません。" + msgid "Base Tiles" msgstr "ベース タイル" @@ -9858,6 +9967,21 @@ msgstr "ペイント設定:" msgid "Picker" msgstr "ピッカー" +msgid "No terrains" +msgstr "地形なし" + +msgid "No terrain" +msgstr "地形なし" + +msgid "No Texture Atlas Source (ID: %d)" +msgstr "テクスチャ アトラス ソースなし (ID: %d)" + +msgid "Scene Collection Source (ID: %d)" +msgstr "シーン コレクション ソース (ID: %d)" + +msgid "Unknown Type Source (ID: %d)" +msgstr "不明な型のソース (ID: %d)" + msgid "Add TileSet pattern" msgstr "TileSet パターンを追加" @@ -9888,6 +10012,9 @@ msgstr "選択範囲" msgid "Paint" msgstr "ペイント" +msgid "Shift: Draw line." +msgstr "Shift: 線を引く" + msgid "Shift+Ctrl: Draw rectangle." msgstr "Shift+Ctrl: 四角形を描画" @@ -9895,18 +10022,44 @@ msgctxt "Tool" msgid "Line" msgstr "ライン" +msgid "Rect" +msgstr "四角形" + +msgid "Bucket" +msgstr "バケツ" + +msgid "Alternatively hold Ctrl with other tools to pick tile." +msgstr "または、Ctrl キーを押しながら他のツールを使用してタイルを選びます。" + +msgid "Eraser" +msgstr "消しゴム" + +msgid "Alternatively use RMB to erase tiles." +msgstr "または、RMB を使用してタイルを消去します。" + msgid "Contiguous" msgstr "隣接" msgid "Place Random Tile" msgstr "ランダムタイルを配置" +msgid "" +"Modifies the chance of painting nothing instead of a randomly selected tile." +msgstr "ランダムに選ばれたタイルの代わりに何も描かない確率を変更します。" + msgid "Scattering:" msgstr "拡散:" msgid "Tiles" msgstr "タイル" +msgid "" +"This TileMap's TileSet has no source configured. Edit the TileSet resource " +"to add one." +msgstr "" +"このTileMapのTileSetにはソースが構成されていません。 TileSetリソースを編集し" +"てソースを追加してください。" + msgid "Sort sources" msgstr "ソースの並べ替え" @@ -9919,15 +10072,63 @@ msgstr "ID (降順) で並び替え" msgid "Invalid source selected." msgstr "選択したソースが無効です。" +msgid "Patterns" +msgstr "パターン" + +msgid "Drag and drop or paste a TileMap selection here to store a pattern." +msgstr "" +"TileMap の選択範囲をここにドラッグ アンド ドロップするか貼り付けて、パターン" +"を保存します。" + +msgid "Paint terrain" +msgstr "地形を塗る" + +msgid "Matches Corners and Sides" +msgstr "角と側面にマッチさせる" + +msgid "Matches Corners Only" +msgstr "角にのみマッチさせる" + +msgid "Matches Sides Only" +msgstr "側面にのみマッチさせる" + +msgid "Terrain Set %d (%s)" +msgstr "地形セット %d (%s)" + +msgid "" +"Connect mode: paints a terrain, then connects it with the surrounding tiles " +"with the same terrain." +msgstr "" +"コネクトモード:地形をペイントし、同じ地形がある周囲のタイルと接続します。" + +msgid "" +"Path mode: paints a terrain, thens connects it to the previous tile painted " +"within the same stroke." +msgstr "" +"パス モード: 地形をペイントし、同じストローク内でペイントされた前のタイルに接" +"続します。" + +msgid "Terrains" +msgstr "地形" + +msgid "Replace Tiles with Proxies" +msgstr "タイルをプロキシに置き換える" + msgid "No Layers" msgstr "レイヤーなし" msgid "Select Next Tile Map Layer" msgstr "次のタイル マップ レイヤーを選択" +msgid "Select Previous Tile Map Layer" +msgstr "前のタイル マップ レイヤーを選択" + msgid "TileMap Layers" msgstr "TileMap レイヤー" +msgid "Highlight Selected TileMap Layer" +msgstr "選択したタイルマップ レイヤーをハイライト表示" + msgid "Toggle grid visibility." msgstr "グリッドの表示を切り替え" @@ -9938,20 +10139,62 @@ msgid "The edited TileMap node has no TileSet resource." msgstr "編集された TileMap ノードには TileSet リソースがありません。" msgid "Remove Tile Proxies" -msgstr "タイル プロキシを削除" +msgstr "タイルプロキシを削除" + +msgid "Create Alternative-level Tile Proxy" +msgstr "代替レベルのタイルプロキシを作成" + +msgid "Create Coords-level Tile Proxy" +msgstr "座標レベルのタイルプロキシを作成" + +msgid "Create source-level Tile Proxy" +msgstr "ソースレベルのタイルプロキシを作成" + +msgid "Delete All Invalid Tile Proxies" +msgstr "すべての無効なタイルプロキシを削除" msgid "Delete All Tile Proxies" msgstr "すべてのタイルプロキシを削除" +msgid "Tile Proxies Management" +msgstr "タイルプロキシ管理" + +msgid "Source-level proxies" +msgstr "ソースレベルのプロキシ" + +msgid "Coords-level proxies" +msgstr "座標レベルのプロキシ" + +msgid "Alternative-level proxies" +msgstr "代替レベルのプロキシ" + +msgid "Add a new tile proxy:" +msgstr "新しいタイルプロキシを追加:" + msgid "From Source" msgstr "ソースから" +msgid "From Coords" +msgstr "座標から" + +msgid "From Alternative" +msgstr "代替から" + msgid "To Source" msgstr "ソースへ" +msgid "To Coords" +msgstr "座標へ" + +msgid "To Alternative" +msgstr "代替へ" + msgid "Global actions:" msgstr "グローバルアクション:" +msgid "Clear Invalid" +msgstr "無効を除去" + msgid "Atlas" msgstr "アトラス" @@ -9961,9 +10204,23 @@ msgstr "ベース タイル" msgid "Alternative Tile" msgstr "代替タイル" +msgid "" +"Selected tile:\n" +"Source: %d\n" +"Atlas coordinates: %s\n" +"Alternative: %d" +msgstr "" +"選択したタイル:\n" +"ソース: %d\n" +"アトラス座標: %s\n" +"代替: %d" + msgid "Rendering" msgstr "レンダリング" +msgid "Texture Origin" +msgstr "テクスチャの原点" + msgid "Z Index" msgstr "Zインデックス" @@ -9991,30 +10248,131 @@ msgstr "カスタムデータ %d" msgid "Select a property editor" msgstr "プロパティエディタを選択" +msgid "Create tiles" +msgstr "タイルを作成" + +msgid "Create a tile" +msgstr "タイルを作成" + +msgid "Remove tiles" +msgstr "タイルを除去" + +msgid "Move a tile" +msgstr "タイルを移動" + +msgid "Select tiles" +msgstr "タイルを選択" + +msgid "Resize a tile" +msgstr "タイルのサイズ変更" + +msgid "Remove tile" +msgstr "タイルを除去" + +msgid "Create tile alternatives" +msgstr "代替タイルを作成" + +msgid "Create tiles in non-transparent texture regions" +msgstr "不透明なテクスチャ領域にタイルを作成" + +msgid "Remove tiles in fully transparent texture regions" +msgstr "完全に透明なテクスチャ領域のタイルを削除" + +msgid "Setup" +msgstr "セットアップ" + msgid "Select tiles." msgstr "タイルを選択します。" +msgid "Paint properties." +msgstr "ペイント設定。" + msgid "No tiles selected." msgstr "タイルが選択されていません。" msgid "Paint Properties:" msgstr "ペイント設定:" +msgid "Create Tiles in Non-Transparent Texture Regions" +msgstr "不透明なテクスチャ領域にタイルを作成" + +msgid "Remove Tiles in Fully Transparent Texture Regions" +msgstr "完全に透明なテクスチャ領域のタイルを削除" + +msgid "Create an Alternative Tile" +msgstr "代替タイルを作成" + +msgid "Create a Tile" +msgstr "タイルを作成" + +msgid "Auto Create Tiles in Non-Transparent Texture Regions?" +msgstr "不透明なテクスチャ領域にタイルを自動作成しますか?" + +msgid "" +"The atlas's texture was modified.\n" +"Would you like to automatically create tiles in the atlas?" +msgstr "" +"アトラスのテクスチャが変更されました。\n" +"アトラスにタイルを自動的に作成しますか?" + msgid "Yes" msgstr "はい" +msgid "No" +msgstr "いいえ" + msgid "Add a new atlas source" msgstr "新しいアトラスソースを追加" +msgid "Remove source" +msgstr "ソースを削除" + +msgid "Add atlas source" +msgstr "アトラスソースを追加" + +msgid "Sort Sources" +msgstr "ソースの並べ替え" + +msgid "Scenes Collection" +msgstr "シーンコレクション" + +msgid "Open Atlas Merging Tool" +msgstr "アトラスのマージツールを開く" + +msgid "Manage Tile Proxies" +msgstr "タイルプロキシの管理" + +msgid "No TileSet source selected. Select or create a TileSet source." +msgstr "TileSetソース未選択。TileSetソースを選択または作成してください。" + +msgid "Add new patterns in the TileMap editing mode." +msgstr "TileMap 編集モードで新しいパターンを追加します。" + msgid "Add a Scene Tile" msgstr "シーンタイルの追加" +msgid "Remove a Scene Tile" +msgstr "シーン タイルを削除" + +msgid "Scenes collection properties:" +msgstr "シーン コレクションのプロパティ:" + msgid "Tile properties:" msgstr "タイル設定:" msgid "TileSet" msgstr "タイルセット" +msgid "TileMap" +msgstr "TileMap" + +msgid "" +"No VCS plugins are available in the project. Install a VCS plugin to use VCS " +"integration features." +msgstr "" +"プロジェクトで使用できる VCS プラグインがありません。VCS 統合機能を使用するに" +"は、VCS プラグインをインストールします。" + msgid "Error" msgstr "エラー" @@ -10027,6 +10385,12 @@ msgstr "" msgid "Commit" msgstr "コミット" +msgid "Open in editor" +msgstr "エディタで開く" + +msgid "Discard changes" +msgstr "変更を破棄" + msgid "Staged Changes" msgstr "ステージ済の変更" @@ -10051,9 +10415,21 @@ msgstr "リモート %s を削除しますか?" msgid "Create VCS metadata files for:" msgstr "VCSメタデータ ファイルを作成:" +msgid "Existing VCS metadata files will be overwritten." +msgstr "既存の VCS メタデータ ファイルは上書きされます。" + +msgid "Local Settings" +msgstr "ローカル設定" + msgid "Apply" msgstr "適用" +msgid "VCS Provider" +msgstr "VCS プロバイダー" + +msgid "Connect to VCS" +msgstr "VCS に接続する" + msgid "Remote Login" msgstr "リモートログイン" @@ -10084,6 +10460,12 @@ msgstr "新しい変更点を検出" msgid "Discard all changes" msgstr "すべての変更を破棄" +msgid "This operation is IRREVERSIBLE. Your changes will be deleted FOREVER." +msgstr "この操作は元に戻せません。あなたの変更は永久に削除されます。" + +msgid "Permanentally delete my changes" +msgstr "変更を完全に削除する" + msgid "Stage all changes" msgstr "変更をステージに上げる" @@ -10156,6 +10538,9 @@ msgstr "タイプ変更" msgid "Unmerged" msgstr "未マージ" +msgid "View file diffs before committing them to the latest version" +msgstr "最新のバージョンにコミットする前にファイルの差分を見る" + msgid "View:" msgstr "ビュー:" @@ -10195,24 +10580,82 @@ msgstr "入力を追加" msgid "Add Output" msgstr "出力を追加" +msgid "Float" +msgstr "Float" + +msgid "Int" +msgstr "Int" + +msgid "UInt" +msgstr "UInt" + +msgid "Vector2" +msgstr "Vector2" + +msgid "Vector3" +msgstr "Vector3" + +msgid "Vector4" +msgstr "Vector4" + msgid "Boolean" msgstr "Boolean" msgid "Sampler" msgstr "Sampler" +msgid "[default]" +msgstr "[デフォルト]" + +msgid "" +"The 2D preview cannot correctly show the result retrieved from instance " +"parameter." +msgstr "" +"2D プレビューでは、インスタンスパラメータから取得した結果を正しく表示できませ" +"ん。" + msgid "Add Input Port" msgstr "入力ポートを追加" msgid "Add Output Port" msgstr "出力ポートを追加" +msgid "Change Input Port Type" +msgstr "入力ポートのタイプを変更" + +msgid "Change Output Port Type" +msgstr "出力ポートのタイプを変更" + +msgid "Change Input Port Name" +msgstr "入力ポート名の変更" + +msgid "Change Output Port Name" +msgstr "出力ポート名の変更" + +msgid "Expand Output Port" +msgstr "出力ポートを拡張" + +msgid "Shrink Output Port" +msgstr "出力ポートを縮小" + msgid "Remove Input Port" msgstr "入力ポートの除去" msgid "Remove Output Port" msgstr "出力ポートの除去" +msgid "Set VisualShader Expression" +msgstr "VisualShaderの式を設定" + +msgid "Resize VisualShader Node" +msgstr "VisualShaderノードのサイズを変更" + +msgid "Hide Port Preview" +msgstr "ポート プレビューを非表示" + +msgid "Show Port Preview" +msgstr "ポート プレビューを表示" + msgid "Set Input Default Port" msgstr "入力デフォルトポートの設定" @@ -10222,14 +10665,50 @@ msgstr "ビジュアルシェーダーにノードを追加" msgid "Node(s) Moved" msgstr "ノードの移動" +msgid "Delete VisualShader Node" +msgstr "VisualShaderノードを削除" + +msgid "Delete VisualShader Node(s)" +msgstr "VisualShaderノードを削除" + +msgid "Float Constants" +msgstr "浮動小数点定数" + +msgid "Convert Constant(s) to Parameter(s)" +msgstr "定数をパラメーターに変換" + +msgid "Convert Parameter(s) to Constant(s)" +msgstr "パラメーターを定数に変換" + +msgid "Set Comment Title" +msgstr "コメントのタイトルを設定" + +msgid "Set Comment Description" +msgstr "コメントの説明を設定" + +msgid "Duplicate VisualShader Node(s)" +msgstr "VisualShaderノードを複製" + +msgid "Paste VisualShader Node(s)" +msgstr "VisualShaderノードを貼り付け" + +msgid "Cut VisualShader Node(s)" +msgstr "VisualShaderノードを切り取り" + msgid "Visual Shader Input Type Changed" msgstr "ビジュアルシェーダーの入力タイプが変更されました" +msgid "ParameterRef Name Changed" +msgstr "ParameterRefの名前が変更されました" + +msgid "Varying Name Changed" +msgstr "Varyingの名前が変更されました" + msgid "Set Constant: %s" msgstr "定数を設定: %s" msgid "Invalid name for varying." -msgstr "varyingの名前が無効です。" +msgstr "Varyingの名前が無効です。" msgid "Varying with that name is already exist." msgstr "その名前の Varying は既に存在します。" diff --git a/editor/translations/editor/ko.po b/editor/translations/editor/ko.po index 22bad66dfa..afabe0f649 100644 --- a/editor/translations/editor/ko.po +++ b/editor/translations/editor/ko.po @@ -48,13 +48,14 @@ # 설동훈 <tjfehdgns@gmail.com>, 2023. # Rocream <kbg4660@gmail.com>, 2023. # Seania Twix <admin@ez.is>, 2023. +# coolkid <newtype20050831@gmail.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-06 16:01+0000\n" -"Last-Translator: Seania Twix <admin@ez.is>\n" +"PO-Revision-Date: 2023-05-11 05:49+0000\n" +"Last-Translator: coolkid <newtype20050831@gmail.com>\n" "Language-Team: Korean <https://hosted.weblate.org/projects/godot-engine/" "godot/ko/>\n" "Language: ko\n" @@ -62,7 +63,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.17-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Unset" msgstr "설정 해제" @@ -318,6 +319,9 @@ msgstr "삭제" msgid "Delete Word" msgstr "단어 삭제" +msgid "Caret Right" +msgstr "^ 오른쪽" + msgid "Caret Add Above" msgstr "위에 캐럿 추가" @@ -3547,6 +3551,9 @@ msgstr "" "모든 사전 설정에는 모두 내보내기가 작동하도록 정의된 내보내기 경로가 있어야 " "합니다." +msgid "Resources to export:" +msgstr "내보내는 리소스:" + msgid "Delete preset '%s'?" msgstr "'%s' 프리셋을 삭제하시겠습니까?" @@ -3596,9 +3603,6 @@ msgstr "전용 서버로 내보내기" msgid "Export Mode:" msgstr "내보내기 모드:" -msgid "Resources to export:" -msgstr "내보내는 리소스:" - msgid "" "\"Strip Visuals\" will replace the following resources with placeholders:" msgstr "\"스트립 비주얼\"은 다음 리소스를 자리 표시자로 대체합니다:" @@ -9063,6 +9067,9 @@ msgstr "지오메트리 분석 중..." msgid "Done!" msgstr "완료!" +msgid "Pose" +msgstr "자세" + msgid "Package name is missing." msgstr "패키지 이름이 누락되어 있습니다." diff --git a/editor/translations/editor/nl.po b/editor/translations/editor/nl.po index 83deb4acbc..4e399e7329 100644 --- a/editor/translations/editor/nl.po +++ b/editor/translations/editor/nl.po @@ -63,13 +63,14 @@ # Jasper <jasper@dj-dj.be>, 2023. # Kevin Nijmeijer <Kevinchrisnij@gmail.com>, 2023. # Mike Rombout <mike.rombout1@gmail.com>, 2023. +# Robbe Vanslambrouck <robbevsb.dev@gmail.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-03-03 23:47+0000\n" -"Last-Translator: Mike Rombout <mike.rombout1@gmail.com>\n" +"PO-Revision-Date: 2023-04-22 20:51+0000\n" +"Last-Translator: Robbe Vanslambrouck <robbevsb.dev@gmail.com>\n" "Language-Team: Dutch <https://hosted.weblate.org/projects/godot-engine/godot/" "nl/>\n" "Language: nl\n" @@ -77,7 +78,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.16.2-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Unset" msgstr "Niet ingesteld" @@ -110,7 +111,7 @@ msgid "Mouse Thumb Button 1" msgstr "Muis Duim Knop 1" msgid "Mouse Thumb Button 2" -msgstr "Muis Duim Knop 2" +msgstr "Muisduimknop 2" msgid "Button" msgstr "Button (Knop)" @@ -205,6 +206,18 @@ msgstr "D-pad Rechts" msgid "Xbox Share, PS5 Microphone, Nintendo Capture" msgstr "Xbox Delen, PS5 Microfoon, Nintendo Opname" +msgid "Xbox Paddle 1" +msgstr "Xbox Paddle 1" + +msgid "Xbox Paddle 2" +msgstr "Xbox Paddle 2" + +msgid "Xbox Paddle 3" +msgstr "Xbox Paddle 3" + +msgid "Xbox Paddle 4" +msgstr "Xbox Paddle 4" + msgid "Joypad Button %d" msgstr "Controllerknop %d" @@ -2988,6 +3001,9 @@ msgstr "" msgid "Runnable" msgstr "Uitvoerbaar" +msgid "Resources to export:" +msgstr "Bronnen om te exporteren:" + msgid "Delete preset '%s'?" msgstr "Verwijder voorinstelling '%s'?" @@ -3034,9 +3050,6 @@ msgstr "Exporteer geselecteerde bronnen (en afhankelijkheden)" msgid "Export Mode:" msgstr "Exporteermodus:" -msgid "Resources to export:" -msgstr "Bronnen om te exporteren:" - msgid "Keep" msgstr "Houd" diff --git a/editor/translations/editor/pl.po b/editor/translations/editor/pl.po index 28664efa59..28fc24455c 100644 --- a/editor/translations/editor/pl.po +++ b/editor/translations/editor/pl.po @@ -82,7 +82,7 @@ msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-19 00:15+0000\n" +"PO-Revision-Date: 2023-05-04 22:04+0000\n" "Last-Translator: Tomek <kobewi4e@gmail.com>\n" "Language-Team: Polish <https://hosted.weblate.org/projects/godot-engine/" "godot/pl/>\n" @@ -3483,7 +3483,7 @@ msgid "Dock Position" msgstr "Pozycja doku" msgid "Make Floating" -msgstr "Zrób ruchomy" +msgstr "Zrób pływający" msgid "Add a new scene." msgstr "Dodaj nową scenę." @@ -4482,6 +4482,9 @@ msgstr "" "Wszystkie ustawienia wstępne muszą mieć zdefiniowaną ścieżkę eksportu, aby " "fukcja Eksportuj wszystko działała." +msgid "Resources to export:" +msgstr "Zasoby do eksportu:" + msgid "Delete preset '%s'?" msgstr "Usunąć profil \"%s\"?" @@ -4538,9 +4541,6 @@ msgstr "Eksportuj jako serwer dedykowany" msgid "Export Mode:" msgstr "Tryb eksportu:" -msgid "Resources to export:" -msgstr "Zasoby do eksportu:" - msgid "" "\"Strip Visuals\" will replace the following resources with placeholders:" msgstr "\"Usuń wizualne\" podmieni następujące zasoby na zastępcze:" diff --git a/editor/translations/editor/pt.po b/editor/translations/editor/pt.po index 2f85898416..d662ea4358 100644 --- a/editor/translations/editor/pt.po +++ b/editor/translations/editor/pt.po @@ -4448,6 +4448,9 @@ msgstr "" "Todas as predefinições devem ter um caminho de exportação definido para que " "Exportar Tudo funcione." +msgid "Resources to export:" +msgstr "Recursos a exportar:" + msgid "Delete preset '%s'?" msgstr "Apagar predefinição '%s'?" @@ -4505,9 +4508,6 @@ msgstr "Exportar como servidor dedicado" msgid "Export Mode:" msgstr "Modo exportação:" -msgid "Resources to export:" -msgstr "Recursos a exportar:" - msgid "" "\"Strip Visuals\" will replace the following resources with placeholders:" msgstr "" diff --git a/editor/translations/editor/pt_BR.po b/editor/translations/editor/pt_BR.po index 3c9c7e98d1..fcda31d5a4 100644 --- a/editor/translations/editor/pt_BR.po +++ b/editor/translations/editor/pt_BR.po @@ -4597,6 +4597,9 @@ msgstr "" "Todas as predefinições devem ter um caminho de exportação definido para que " "Exportar Tudo funcione." +msgid "Resources to export:" +msgstr "Recursos para exportar:" + msgid "Delete preset '%s'?" msgstr "Apagar predefinição '%s'?" @@ -4654,9 +4657,6 @@ msgstr "Exportar como servidor dedicado" msgid "Export Mode:" msgstr "Modo de Exportação:" -msgid "Resources to export:" -msgstr "Recursos para exportar:" - msgid "" "\"Strip Visuals\" will replace the following resources with placeholders:" msgstr "" diff --git a/editor/translations/editor/ro.po b/editor/translations/editor/ro.po index b490bb8da1..ba52f9c08a 100644 --- a/editor/translations/editor/ro.po +++ b/editor/translations/editor/ro.po @@ -30,7 +30,7 @@ msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-19 00:15+0000\n" +"PO-Revision-Date: 2023-04-23 20:05+0000\n" "Last-Translator: RaresX22 <raresadv22@gmail.com>\n" "Language-Team: Romanian <https://hosted.weblate.org/projects/godot-engine/" "godot/ro/>\n" @@ -166,8 +166,7 @@ msgid "Refresh" msgstr "Reîmprospătare" msgid "self can't be used because instance is null (not passed)" -msgstr "" -"self nu poate fi folosit deoarece instanța este nulă (nu a fost trecută)" +msgstr "self nu poate fi folosit deoarece instanța este nulă (nefurnizat)" msgid "Invalid operands to operator %s, %s and %s." msgstr "Operanzi invalizi la operatorii %s, %s și %s." @@ -3103,6 +3102,9 @@ msgstr "Culori de Emisie" msgid "Create Emission Points From Node" msgstr "Creare Puncte de Emisie din Nod" +msgid "Flat 1" +msgstr "Neted 1" + msgid "Smoothstep" msgstr "PasOmogen" @@ -3346,6 +3348,9 @@ msgstr "Populare" msgid "Create Navigation Polygon" msgstr "Creare Poligon de Navigare" +msgid "Orthogonal" +msgstr "Ortogonal" + msgid "Use Snap" msgstr "Utilizează Snap" diff --git a/editor/translations/editor/ru.po b/editor/translations/editor/ru.po index 8a02909299..acaac6b7b8 100644 --- a/editor/translations/editor/ru.po +++ b/editor/translations/editor/ru.po @@ -139,13 +139,16 @@ # Melairz1237 <mr.artem.snegov@mail.ru>, 2023. # Noky Socket <lollysimbart@gmail.com>, 2023. # Aleksey Smirnov <debugger94@gmail.com>, 2023. +# Animaliss <Zernon001@mail.ru>, 2023. +# Pyotr <pitmysterio@mail.ru>, 2023. +# Кордис Ди <psevdoejik@gmail.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-20 03:46+0000\n" -"Last-Translator: Aleksey Smirnov <debugger94@gmail.com>\n" +"PO-Revision-Date: 2023-05-11 05:49+0000\n" +"Last-Translator: Animaliss <Zernon001@mail.ru>\n" "Language-Team: Russian <https://hosted.weblate.org/projects/godot-engine/" "godot/ru/>\n" "Language: ru\n" @@ -172,16 +175,16 @@ msgid "Middle Mouse Button" msgstr "Средняя кнопка мыши" msgid "Mouse Wheel Up" -msgstr "Колесико мыши вверх" +msgstr "Колёсико мыши вверх" msgid "Mouse Wheel Down" -msgstr "Колесико мыши вниз" +msgstr "Колёсико мыши вниз" msgid "Mouse Wheel Left" -msgstr "Колесико мыши влево" +msgstr "Колёсико мыши влево" msgid "Mouse Wheel Right" -msgstr "Колесико мыши вправо" +msgstr "Колёсико мыши вправо" msgid "Mouse Thumb Button 1" msgstr "Кнопка большого пальца мыши 1" @@ -408,7 +411,7 @@ msgid "Backspace Word" msgstr "Стереть слово" msgid "Backspace all to Left" -msgstr "Стереть все слева" +msgstr "Стереть всё слева" msgid "Delete" msgstr "Удалить" @@ -417,7 +420,7 @@ msgid "Delete Word" msgstr "Удалить слово" msgid "Delete all to Right" -msgstr "Удалить все справа" +msgstr "Удалить всё справа" msgid "Caret Left" msgstr "Каретка влево" @@ -468,13 +471,13 @@ msgid "Scroll Down" msgstr "Прокрутка вниз" msgid "Select All" -msgstr "Выделить все" +msgstr "Выделить всё" msgid "Select Word Under Caret" msgstr "Выделить слово под курсором" msgid "Add Selection for Next Occurrence" -msgstr "Добавить выделение для следующего действия" +msgstr "Добавить выделение для следующего возникновения" msgid "Clear Carets and Selection" msgstr "Очистить каретки и выделение" @@ -517,13 +520,13 @@ msgid "Invalid index of type %s for base type %s" msgstr "Недопустимый индекс типа %s для базового типа %s" msgid "Invalid named index '%s' for base type %s" -msgstr "Недопустимый именованный индекс «%s» для базового типа %s" +msgstr "Недопустимый именованный индекс '%s' для базового типа %s" msgid "Invalid arguments to construct '%s'" -msgstr "Недопустимые аргументы для построения «%s»" +msgstr "Недопустимые аргументы для построения '%s'" msgid "On call to '%s':" -msgstr "При вызове «%s»:" +msgstr "При вызове '%s':" msgid "Built-in script" msgstr "Встроенный скрипт" @@ -566,10 +569,10 @@ msgid "" "'\"'" msgstr "" "Неверное имя действия. Оно не может быть пустым и не может содержать символы " -"«/», «:», «=», «\\» или «\"»" +"'/', ':', '=', '\\' или '\"'" msgid "An action with the name '%s' already exists." -msgstr "Действие с именем «%s» уже существует." +msgstr "Действие с именем '%s' уже существует." msgid "Cannot Revert - Action is same as initial" msgstr "Невозможно обратить - Действие схоже с первоначальным" @@ -596,7 +599,7 @@ msgid "Filter by name..." msgstr "Фильтр по имени..." msgid "Clear All" -msgstr "Очистить все" +msgstr "Очистить всё" msgid "Add New Action" msgstr "Добавить новое действие" @@ -692,7 +695,7 @@ msgid "Animation Multi Change Keyframe Value" msgstr "Анимация множественное изменение значения ключевого кадра" msgid "Animation Multi Change Call" -msgstr "Анимации множественное изменение вызова" +msgstr "Анимация множественное изменение вызова" msgid "Change Animation Length" msgstr "Изменить длину анимации" @@ -711,31 +714,31 @@ msgstr "" "сцену." msgid "Property Track" -msgstr "Дорожка свойства" +msgstr "Дорожка свойство" msgid "3D Position Track" msgstr "Дорожка позиция 3D" msgid "3D Rotation Track" -msgstr "Дорожка вращения 3D" +msgstr "Дорожка вращение 3D" msgid "3D Scale Track" -msgstr "Дорожка масштабирования 3D" +msgstr "Дорожка масштаб 3D" msgid "Blend Shape Track" msgstr "Дорожка форма смешивания" msgid "Call Method Track" -msgstr "Дорожка вызова метода" +msgstr "Дорожка вызов метода" msgid "Bezier Curve Track" -msgstr "Дорожка кривой Безье" +msgstr "Дорожка кривая Безье" msgid "Audio Playback Track" -msgstr "Дорожка воспроизведения аудио" +msgstr "Дорожка воспроизведение аудио" msgid "Animation Playback Track" -msgstr "Дорожка воспроизведения анимации" +msgstr "Дорожка воспроизведение анимации" msgid "Animation length (frames)" msgstr "Длина анимации (в кадрах)" @@ -916,7 +919,7 @@ msgid "Animation Insert Key" msgstr "Анимация вставить ключ" msgid "node '%s'" -msgstr "узел «%s»" +msgstr "узел '%s'" msgid "animation" msgstr "анимация" @@ -925,7 +928,7 @@ msgid "AnimationPlayer can't animate itself, only other players." msgstr "AnimationPlayer не может анимировать сам себя, только другие плееры." msgid "property '%s'" -msgstr "свойство «%s»" +msgstr "свойство '%s'" msgid "Change Animation Step" msgstr "Изменить шаг анимации" @@ -976,7 +979,7 @@ msgid "Add Rotation Key" msgstr "Добавить ключ вращения" msgid "Add Scale Key" -msgstr "Добавить ключ масштабирования" +msgstr "Добавить ключ масштаба" msgid "Add Track Key" msgstr "Добавить ключ дорожки" @@ -1184,7 +1187,7 @@ msgid "Select Tracks to Copy" msgstr "Выбрать дорожки для копирования" msgid "Select All/None" -msgstr "Выбрать все/ничего" +msgstr "Выбрать всё/ничего" msgid "Animation Change Keyframe Time" msgstr "Анимация изменить время ключевого кадра" @@ -1229,7 +1232,7 @@ msgid "Replace" msgstr "Заменить" msgid "Replace All" -msgstr "Заменить все" +msgstr "Заменить всё" msgid "Selection Only" msgstr "Только выделенное" @@ -1341,7 +1344,7 @@ msgid "Disconnects the signal after its first emission." msgstr "Отсоединяет сигнал после его первой отправки." msgid "Cannot connect signal" -msgstr "Не удается присоединить сигнал" +msgstr "Не удаётся присоединить сигнал" msgid "Close" msgstr "Закрыть" @@ -1356,13 +1359,13 @@ msgid "No description." msgstr "Нет описания." msgid "Connect '%s' to '%s'" -msgstr "Присоединить «%s» к «%s»" +msgstr "Присоединить '%s' к '%s'" msgid "Disconnect '%s' from '%s'" -msgstr "Отсоединить «%s» от «%s»" +msgstr "Отсоединить '%s' от '%s'" msgid "Disconnect all from signal: '%s'" -msgstr "Отсоединить все от сигнала: «%s»" +msgstr "Отсоединить все от сигнала: '%s'" msgid "Connect..." msgstr "Присоединить..." @@ -1374,10 +1377,10 @@ msgid "Connect a Signal to a Method" msgstr "Присоединить сигнал к методу" msgid "Edit Connection: '%s'" -msgstr "Редактировать соединение: «%s»" +msgstr "Редактировать соединение: '%s'" msgid "Are you sure you want to remove all connections from the \"%s\" signal?" -msgstr "Вы уверены, что хотите удалить все соединения от сигнала «%s»?" +msgstr "Вы уверены, что хотите удалить все соединения от сигнала '%s'?" msgid "Signals" msgstr "Сигналы" @@ -1401,7 +1404,7 @@ msgid "Go to Method" msgstr "Перейти к методу" msgid "Change Type of \"%s\"" -msgstr "Изменить тип «%s»" +msgstr "Изменить тип \"%s\"" msgid "Change" msgstr "Изменить" @@ -1410,7 +1413,7 @@ msgid "Create New %s" msgstr "Создать новый %s" msgid "No results for \"%s\"." -msgstr "Нет результатов для «%s»." +msgstr "Нет результатов для \"%s\"." msgid "This class is marked as deprecated." msgstr "Этот класс помечен как устаревший." @@ -1419,7 +1422,7 @@ msgid "This class is marked as experimental." msgstr "Этот класс помечен как экспериментальный." msgid "No description available for %s." -msgstr "Нет описания для «%s»." +msgstr "Нет описания для %s." msgid "Favorites:" msgstr "Избранное:" @@ -1440,7 +1443,7 @@ msgid "Description:" msgstr "Описание:" msgid "Remote %s:" -msgstr "Удаленный %s:" +msgstr "Удалённый %s:" msgid "Debugger" msgstr "Отладчик" @@ -1462,7 +1465,7 @@ msgid "" "%s\n" "Click to open the original file in the Editor." msgstr "" -"Этот узел был создан из файла PackedScene:\n" +"Этот узел был инстанцирован из файла PackedScene:\n" "%s\n" "Нажмите, чтобы открыть исходный файл в редакторе." @@ -1476,7 +1479,7 @@ msgid "Monitors" msgstr "Мониторинг" msgid "Monitor" -msgstr "Параметр" +msgstr "Монитор" msgid "Value" msgstr "Значение" @@ -1513,7 +1516,7 @@ msgid "Inclusive" msgstr "Включительно" msgid "Self" -msgstr "Субъект" +msgstr "Собственное" msgid "" "Inclusive: Includes time from other functions called by this function.\n" @@ -1526,8 +1529,8 @@ msgstr "" "Включительно: Включает время других функций, вызываемых этой функцией.\n" "Используйте для выявления узких мест.\n" "\n" -"Субъект: учитывает только время, затраченное в самой функции, а не в других " -"функциях, вызываемых этой функцией.\n" +"Собственное: учитывает только время, затраченное в самой функции, а не в " +"других функциях, вызываемых этой функцией.\n" "Используйте для поиска отдельных функций для оптимизации." msgid "Frame #:" @@ -1543,7 +1546,7 @@ msgid "Calls" msgstr "Вызовы" msgid "Fit to Frame" -msgstr "Укладывать в кадр" +msgstr "Уместить в кадр" msgid "Linked" msgstr "Связаны" @@ -1645,10 +1648,10 @@ msgid "Collapse All" msgstr "Свернуть все" msgid "Profiler" -msgstr "Профайлер" +msgstr "Профилировщик" msgid "Visual Profiler" -msgstr "Визуальный профайлер" +msgstr "Визуальный профилировщик" msgid "List of Video Memory Usage by Resource:" msgstr "Список использования видеопамяти ресурсами:" @@ -1657,7 +1660,7 @@ msgid "Total:" msgstr "Всего:" msgid "Export list to a CSV file" -msgstr "Экспортировать профиль в CSV файл" +msgstr "Экспорт профиля в CSV файл" msgid "Resource Path" msgstr "Путь к ресурсу" @@ -1699,14 +1702,14 @@ msgid "" "Scene '%s' is currently being edited.\n" "Changes will only take effect when reloaded." msgstr "" -"Сцена «%s» в настоящее время редактируется.\n" +"Сцена '%s' в настоящее время редактируется.\n" "Изменения вступят в силу только после перезапуска." msgid "" "Resource '%s' is in use.\n" "Changes will only take effect when reloaded." msgstr "" -"Ресурс «%s» используется.\n" +"Ресурс '%s' используется.\n" "Изменения вступят в силу только после перезапуска." msgid "Dependencies" @@ -1722,7 +1725,7 @@ msgid "Dependencies:" msgstr "Зависимости:" msgid "Fix Broken" -msgstr "Исправить ошибку" +msgstr "Исправить сломанные" msgid "Dependency Editor" msgstr "Редактор зависимостей" @@ -1743,7 +1746,7 @@ msgid "Localization remap" msgstr "Переназначение локализации" msgid "Localization remap for path '%s' and locale '%s'." -msgstr "Переназначение локализации для пути «%s» и локали «%s»." +msgstr "Переназначение локализации для пути '%s' и локали '%s'." msgid "" "Remove the selected files from the project? (Cannot be undone.)\n" @@ -1794,7 +1797,7 @@ msgid "Show Dependencies" msgstr "Показать зависимости" msgid "Orphan Resource Explorer" -msgstr "Обзор подключённых ресурсов" +msgstr "Обзор подключенных ресурсов" msgid "Owns" msgstr "Кол-во" @@ -1809,7 +1812,7 @@ msgid "Click to copy." msgstr "Нажмите, чтобы скопировать." msgid "Godot Engine contributors" -msgstr "Авторы Godot Engine" +msgstr "Контрибьюторы Godot Engine" msgid "Project Founders" msgstr "Основатели проекта" @@ -1881,28 +1884,28 @@ msgid "Licenses" msgstr "Лицензии" msgid "Error opening asset file for \"%s\" (not in ZIP format)." -msgstr "Ошибка при открытии файла ресурса «%s» (не в формате ZIP)." +msgstr "Ошибка при открытии файла ассета \"%s\" (не в формате ZIP)." msgid "%s (already exists)" msgstr "%s (уже существует)" msgid "Contents of asset \"%s\" - %d file(s) conflict with your project:" -msgstr "Содержимое ресурса «%s» - %d файл(ов) конфликтуют с вашим проектом:" +msgstr "Содержимое ассета \"%s\" - %d файл(ов) конфликтуют с вашим проектом:" msgid "Contents of asset \"%s\" - No files conflict with your project:" -msgstr "Содержимое ресурса «%s» - Нет файлов, конфликтующих с вашим проектом:" +msgstr "Содержимое ассета \"%s\" - Нет файлов, конфликтующих с вашим проектом:" msgid "Uncompressing Assets" msgstr "Распаковка ассетов" msgid "The following files failed extraction from asset \"%s\":" -msgstr "Следующие файлы не удалось извлечь из пакета «%s»:" +msgstr "Следующие файлы не удалось извлечь из ассета \"%s\":" msgid "(and %s more files)" msgstr "(ещё %d файла(ов))" msgid "Asset \"%s\" installed successfully!" -msgstr "Ресурс «%s» успешно установлен!" +msgstr "Ассет \"%s\" успешно установлен!" msgid "Success!" msgstr "Успех!" @@ -1911,7 +1914,7 @@ msgid "Install" msgstr "Установить" msgid "Asset Installer" -msgstr "Установщик ресурсов" +msgstr "Установщик ассетов" msgid "Speakers" msgstr "Колонки" @@ -1947,7 +1950,7 @@ msgid "Delete Bus Effect" msgstr "Удалить эффект шины" msgid "Drag & drop to rearrange." -msgstr "Перетащите чтобы изменить порядок." +msgstr "Перетащите, чтобы изменить порядок." msgid "Solo" msgstr "Соло" @@ -1992,55 +1995,55 @@ msgid "Move Audio Bus" msgstr "Переместить аудио шину" msgid "Save Audio Bus Layout As..." -msgstr "Сохранить раскладку звуковой шины как..." +msgstr "Сохранить макет аудио шины как..." msgid "Location for New Layout..." -msgstr "Местоположение новой раскладки..." +msgstr "Местоположение нового макета..." msgid "Open Audio Bus Layout" -msgstr "Открыть раскладку звуковой шины" +msgstr "Открыть макет аудио шины" msgid "There is no '%s' file." -msgstr "Файла «%s» не существует." +msgstr "Файла '%s' не существует." msgid "Layout:" msgstr "Макет:" msgid "Invalid file, not an audio bus layout." -msgstr "Недопустимый файл, не раскладка аудио шины." +msgstr "Недопустимый файл, не макет аудио шины." msgid "Error saving file: %s" msgstr "Ошибка при сохранении файла: %s" msgid "Add Bus" -msgstr "Добавить" +msgstr "Добавить шину" msgid "Add a new Audio Bus to this layout." -msgstr "Добавить новую звуковую шину для этой раскладки." +msgstr "Добавить новую аудио шину в этот макет." msgid "Load" msgstr "Загрузить" msgid "Load an existing Bus Layout." -msgstr "Загрузить существующую раскладку шины." +msgstr "Загрузить существующий макет шины." msgid "Save As" msgstr "Сохранить как" msgid "Save this Bus Layout to a file." -msgstr "Сохранить текущую раскладку звуковой шины в файл." +msgstr "Сохранить этот макет шины в файл." msgid "Load Default" msgstr "Загрузить по умолчанию" msgid "Load the default Bus Layout." -msgstr "Загрузить раскладку шины по умолчанию." +msgstr "Загрузить макет шины по умолчанию." msgid "Create a new Bus Layout." -msgstr "Создать новую раскладку шины." +msgstr "Создать новый макет шины." msgid "Audio Bus Layout" -msgstr "Раскладка звуковой шины" +msgstr "Макет звуковой шины" msgid "Invalid name." msgstr "Недопустимое имя." @@ -2067,7 +2070,7 @@ msgid "Keyword cannot be used as an Autoload name." msgstr "Ключевое слово нельзя использовать в качестве имени автозагрузки." msgid "Autoload '%s' already exists!" -msgstr "Автозагрузка «%s» уже существует!" +msgstr "Автозагрузка '%s' уже существует!" msgid "Rename Autoload" msgstr "Переименовать автозагрузку" @@ -2091,7 +2094,7 @@ msgid "Can't add Autoload:" msgstr "Не удаётся добавить автозагрузку:" msgid "%s is an invalid path. File does not exist." -msgstr "Неверный путь «%s». Файл не существует." +msgstr "Неверный путь %s. Файл не существует." msgid "%s is an invalid path. Not in resource path (res://)." msgstr "%s — недопустимый путь. Нужен ресурсный путь (res://)." @@ -2103,7 +2106,7 @@ msgid "Path:" msgstr "Путь:" msgid "Set path or press \"%s\" to create a script." -msgstr "Задайте путь или нажмите «%s», чтобы создать скрипт." +msgstr "Задайте путь или нажмите \"%s\", чтобы создать скрипт." msgid "Node Name:" msgstr "Имя узла:" @@ -2150,6 +2153,9 @@ msgstr "Шрифты WOFF2" msgid "SIL Graphite Fonts" msgstr "Шрифты SIL Graphite" +msgid "Multi-channel Signed Distance Field Font Rendering" +msgstr "Многоканальный рендеринг шрифта поля расстояния со знаком" + msgid "3D Nodes as well as RenderingServer access to 3D features." msgstr "3D-узлы, а также доступ RenderingServer к 3D-функциям." @@ -2168,14 +2174,15 @@ msgstr "XR (AR и VR)." msgid "" "RenderingDevice based rendering (if disabled, the OpenGL back-end is " "required)." -msgstr "Рендеринг на основе RenderingDevice (если отключен, требуется OpenGL)." +msgstr "" +"Рендеринг на основе RenderingDevice (если отключен, требуется OpenGL бэкенд)." msgid "" "OpenGL back-end (if disabled, the RenderingDevice back-end is required)." -msgstr "Бэкенд OpenGL (если отключен, требуется бэкенд RenderingDevice)." +msgstr "OpenGL бэкенд (если отключен, требуется RenderingDevice бэкенд)." msgid "Vulkan back-end of RenderingDevice." -msgstr "Бэкенд Vulkan RenderingDevice." +msgstr "Vulkan бэкенд RenderingDevice." msgid "" "Fallback implementation of Text Server\n" @@ -2189,8 +2196,8 @@ msgid "" "Supports complex text layouts, BiDi, and contextual OpenType font features." msgstr "" "Реализация текстового сервера на базе библиотек ICU и HarfBuzz.\n" -"Поддерживает сложные макеты текста, BiDi, и контекстные особенности шрифтов " -"OpenType." +"Поддерживает сложную разметку текста, BiDi, и контекстные особенности " +"шрифтов OpenType." msgid "" "TrueType, OpenType, Type 1, and WOFF1 font format support using FreeType " @@ -2208,7 +2215,7 @@ msgid "" "Server only)." msgstr "" "Поддержка технологии смарт-шрифтов SIL Graphite (поддерживается только " -"Расширенный текстовый сервер)." +"расширенный текстовый сервер)." msgid "" "Multi-channel signed distance field font rendering support using msdfgen " @@ -2231,10 +2238,10 @@ msgid "Nodes and Classes:" msgstr "Узлы и классы:" msgid "File '%s' format is invalid, import aborted." -msgstr "Неверный формат файла «%s», импорт прерван." +msgstr "Неверный формат файла '%s', импорт прерван." msgid "Error saving profile to path: '%s'." -msgstr "Ошибка сохранения профиля в «%s»." +msgstr "Ошибка сохранения профиля в '%s'." msgid "New" msgstr "Новый" @@ -2267,7 +2274,7 @@ msgid "Load Profile" msgstr "Загрузить профиль" msgid "Export Profile" -msgstr "Экспортировать профиль" +msgstr "Экспорт профиля" msgid "Forced classes on detect:" msgstr "Принудительные классы для обнаружения:" @@ -2324,22 +2331,22 @@ msgid "Script Editor" msgstr "Редактор скриптов" msgid "Asset Library" -msgstr "Библиотека ресурсов" +msgstr "Библиотека ассетов" msgid "Scene Tree Editing" msgstr "Редактирование дерева сцены" msgid "Node Dock" -msgstr "Панель «Узел»" +msgstr "Панель \"Узел\"" msgid "FileSystem Dock" -msgstr "Панель «Файловая система»" +msgstr "Панель \"Файловая система\"" msgid "Import Dock" -msgstr "Панель «Импорт»" +msgstr "Панель \"Импорт\"" msgid "History Dock" -msgstr "Панель истории" +msgstr "Панель \"История\"" msgid "Allows to view and edit 3D scenes." msgstr "Позволяет просматривать и редактировать 3D-сцены." @@ -2349,16 +2356,17 @@ msgstr "" "Позволяет редактировать скрипты с помощью встроенного редактора скриптов." msgid "Provides built-in access to the Asset Library." -msgstr "Предоставляет встроенный доступ к Библиотеке ресурсов." +msgstr "Предоставляет встроенный доступ к Библиотеке ассетов." msgid "Allows editing the node hierarchy in the Scene dock." -msgstr "Позволяет редактировать иерархию узлов в панели «Сцена»." +msgstr "Позволяет редактировать иерархию узлов в панели \"Сцена\"." msgid "" "Allows to work with signals and groups of the node selected in the Scene " "dock." msgstr "" -"Позволяет работать с сигналами и группами узла, выбранного в панели «Сцена»." +"Позволяет работать с сигналами и группами узла, выбранного в панели " +"\"Сцена\"." msgid "Allows to browse the local file system via a dedicated dock." msgstr "" @@ -2368,8 +2376,8 @@ msgid "" "Allows to configure import settings for individual assets. Requires the " "FileSystem dock to function." msgstr "" -"Позволяет настраивать параметры импорта для отдельных ресурсов. Для работы " -"требуется панель «Файловая система»." +"Позволяет настраивать параметры импорта для отдельных ассетов. Для работы " +"требуется панель \"Файловая система\"." msgid "Provides an overview of the editor's and each scene's undo history." msgstr "Предоставляет обзор истории отмены действий редактора и каждой сцены." @@ -2381,17 +2389,17 @@ msgid "(none)" msgstr "(нет)" msgid "Remove currently selected profile, '%s'? Cannot be undone." -msgstr "Удалить текущий выбранный профиль, «%s»? Не может быть отменено." +msgstr "Удалить текущий выбранный профиль, '%s'? Не может быть отменено." msgid "Profile must be a valid filename and must not contain '.'" msgstr "" -"Название профиля должно быть корректным именем файла и не содержать «.»" +"Название профиля должно быть корректным именем файла и не содержать '.'" msgid "Profile with this name already exists." msgstr "Профиль с таким именем уже существует." msgid "(Editor Disabled, Properties Disabled)" -msgstr "(Редактор отключен, Свойства отключены)" +msgstr "(Редактор отключен, свойства отключены)" msgid "(Properties Disabled)" msgstr "(Свойства отключены)" @@ -2415,8 +2423,7 @@ msgid "" "Profile '%s' already exists. Remove it first before importing, import " "aborted." msgstr "" -"Профиль «%s» уже существует. Удалите его перед импортированием, импорт " -"прерван." +"Профиль '%s' уже существует. Удалите его перед импортом, импорт прерван." msgid "Reset to Default" msgstr "Сбросить настройки" @@ -2460,7 +2467,7 @@ msgid "Godot Feature Profile" msgstr "Профиль возможностей Godot" msgid "Import Profile(s)" -msgstr "Импортировать проект" +msgstr "Импортировать профиль(и)" msgid "Manage Editor Feature Profiles" msgstr "Управление профилями редактора" @@ -2478,7 +2485,7 @@ msgid "Cannot save file with an empty filename." msgstr "Невозможно сохранить безымянный файл." msgid "Cannot save file with a name starting with a dot." -msgstr "Невозможно сохранить файл с названием, начинающееся с точкой." +msgstr "Невозможно сохранить файл с именем, начинающимся с точки." msgid "" "File \"%s\" already exists.\n" @@ -2497,7 +2504,7 @@ msgid "Open in File Manager" msgstr "Открыть в проводнике" msgid "Show in File Manager" -msgstr "Просмотреть в проводнике" +msgstr "Показать в проводнике" msgid "New Folder..." msgstr "Новая папка..." @@ -2615,11 +2622,11 @@ msgid "" "There are multiple importers for different types pointing to file %s, import " "aborted" msgstr "" -"Множество импортируемых объектов разного типа указывают на файл %s, импорт " -"прерван" +"Существует несколько импортеров для разных типов, указывающих на файл %s, " +"импорт прерван" msgid "(Re)Importing Assets" -msgstr "(Ре)Импортировать" +msgstr "(Ре)Импортировать ассеты" msgid "Import resources of type: %s" msgstr "Импорт ресурсов типа: %s" @@ -2667,7 +2674,7 @@ msgid "" "There is currently no description for this %s. Please help us by " "[color=$color][url=$url]contributing one[/url][/color]!" msgstr "" -"В настоящее время описание этого %s отсутствует. Пожалуйста помогите нам, " +"В настоящее время описание этого %s отсутствует. Пожалуйста, помогите нам, " "[color=$color][url=$url]внесите свой вклад[/url][/color]!" msgid "Top" @@ -2704,11 +2711,11 @@ msgid "" "There is currently no description for this class. Please help us by " "[color=$color][url=$url]contributing one[/url][/color]!" msgstr "" -"В настоящее время описание этого класса отсутствует. Пожалуйста помогите " +"В настоящее время описание этого класса отсутствует. Пожалуйста, помогите " "нам, [color=$color][url=$url]внесите свой вклад[/url][/color]!" msgid "Online Tutorials" -msgstr "Онлайн-руководства" +msgstr "Онлайн руководства" msgid "Properties" msgstr "Свойства" @@ -2762,7 +2769,7 @@ msgid "" "There is currently no description for this annotation. Please help us by " "[color=$color][url=$url]contributing one[/url][/color]!" msgstr "" -"В настоящее время описание этой аннотации отсутствует. Пожалуйста помогите " +"В настоящее время описание этой аннотации отсутствует. Пожалуйста, помогите " "нам, [color=$color][url=$url]внесите свой вклад[/url][/color]!" msgid "Property Descriptions" @@ -2778,7 +2785,7 @@ 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]внесите свой вклад[/url][/color]!" msgid "Constructor Descriptions" @@ -2806,7 +2813,7 @@ msgid "Show Hierarchy" msgstr "Показывать иерархию" msgid "Display All" -msgstr "Отображать всё" +msgstr "Отображать все" msgid "Classes Only" msgstr "Только классы" @@ -2857,7 +2864,7 @@ msgid "Constant" msgstr "Константа" msgid "Property" -msgstr "Параметр" +msgstr "Свойство" msgid "Theme Property" msgstr "Свойство темы" @@ -2869,14 +2876,14 @@ msgid "This member is marked as experimental." msgstr "Этот член класса помечен как экспериментальный." msgid "Property:" -msgstr "Параметр:" +msgstr "Свойство:" msgid "Pin Value" msgstr "Закрепить значение" msgid "Pin Value [Disabled because '%s' is editor-only]" msgstr "" -"Закрепить значение [Отключено, так как «%s» доступно только для редактора]" +"Закрепить значение [Отключено, так как '%s' доступно только для редактора]" msgid "" "Pinning a value forces it to be saved even if it's equal to the default." @@ -2963,7 +2970,7 @@ msgid "Metadata name must be a valid identifier." msgstr "Имя метаданных должно быть допустимым идентификатором." msgid "Metadata with name \"%s\" already exists." -msgstr "Метаданные с именем «%s» уже существуют." +msgstr "Метаданные с именем \"%s\" уже существуют." msgid "Names starting with _ are reserved for editor-only metadata." msgstr "" @@ -2973,7 +2980,7 @@ msgid "Metadata name is valid." msgstr "Имя метаданных является допустимым." msgid "Add Metadata Property for \"%s\"" -msgstr "Добавить свойство метаданных для «%s»" +msgstr "Добавить свойство метаданных для \"%s\"" msgid "Copy Value" msgstr "Копировать значение" @@ -2991,16 +2998,16 @@ msgid "Or enter new layout name" msgstr "Или введите новое имя макета" msgid "Changed Locale Language Filter" -msgstr "Изменён фильтр локали по языкам" +msgstr "Изменен фильтр локали по языкам" msgid "Changed Locale Script Filter" -msgstr "Изменён фильтр локали по письменностям" +msgstr "Изменен фильтр локали по письменностям" msgid "Changed Locale Country Filter" -msgstr "Изменён фильтр локали по странам" +msgstr "Изменен фильтр локали по странам" msgid "Changed Locale Filter Mode" -msgstr "Изменён режим фильтра локали" +msgstr "Изменен режим фильтра локали" msgid "[Default]" msgstr "[По умолчанию]" @@ -3085,7 +3092,7 @@ msgid "" "disable it." msgstr "" "Вращается при перерисовке окна редактора.\n" -"Включена опция «Обновлять непрерывно», которая может увеличить " +"Включена опция \"Обновлять непрерывно\", которая может увеличить " "энергопотребление. Щёлкните, чтобы отключить её." msgid "Spins when the editor window redraws." @@ -3104,8 +3111,8 @@ msgid "" "This resource can't be saved because it does not belong to the edited scene. " "Make it unique first." msgstr "" -"Данный ресурс нельзя сохранить, потому что он не является частью изменённой " -"сцены. Сначала нужно сделать его уникальным." +"Данный ресурс нельзя сохранить, потому что он не является частью " +"редактируемой сцены. Сначала нужно сделать его уникальным." msgid "" "This resource can't be saved because it was imported from another file. Make " @@ -3127,19 +3134,19 @@ msgid "Error while saving." msgstr "Ошибка при сохранении." msgid "Can't open file '%s'. The file could have been moved or deleted." -msgstr "Не удалось открыть файл «%s». Файл мог быть перемещён или удалён." +msgstr "Не удалось открыть файл '%s'. Файл мог быть перемещён или удалён." msgid "Error while parsing file '%s'." -msgstr "Ошибка при разборе файла «%s»." +msgstr "Ошибка при разборе файла '%s'." msgid "Scene file '%s' appears to be invalid/corrupt." -msgstr "Файл сцены «%s» является недействительным/повреждённым." +msgstr "Файл сцены '%s' является недействительным/повреждённым." msgid "Missing file '%s' or one its dependencies." -msgstr "Отсутствует файл «%s» или одна из его зависимостей." +msgstr "Отсутствует файл '%s' или одна из его зависимостей." msgid "Error while loading file '%s'." -msgstr "Ошибка при загрузке файла «%s»." +msgstr "Ошибка при загрузке файла '%s'." msgid "Saving Scene" msgstr "Сохранение сцены" @@ -3158,8 +3165,8 @@ msgid "" "Please resolve it and then attempt to save again." msgstr "" "Эта сцена не может быть сохранена, потому что обнаружено циклическое " -"инстанцирование.\n" -"Пожалуйста, решите эту проблему, а затем повторите попытку сохранения." +"включение экземпляра.\n" +"Пожалуйста, решите эту проблему и повторите попытку сохранения." msgid "" "Couldn't save scene. Likely dependencies (instances or inheritance) couldn't " @@ -3175,13 +3182,13 @@ msgid "Save All Scenes" msgstr "Сохранить все сцены" msgid "Can't overwrite scene that is still open!" -msgstr "Невозможно перезаписать сцену, которая все еще открыта!" +msgstr "Невозможно перезаписать сцену, которая всё ещё открыта!" msgid "Can't load MeshLibrary for merging!" -msgstr "Невозможно загрузить библиотеку полисеток для слияния!" +msgstr "Невозможно загрузить MeshLibrary для слияния!" msgid "Error saving MeshLibrary!" -msgstr "Ошибка сохранения библиотеки полисеток!" +msgstr "Ошибка сохранения MeshLibrary!" msgid "" "An error occurred while trying to save the editor layout.\n" @@ -3197,13 +3204,13 @@ msgid "" msgstr "" "Макет редактора по умолчанию перезаписан.\n" "Чтобы восстановить базовые настройки макета по умолчанию, воспользуйтесь " -"опцией «Удалить макет» и удалите макет по умолчанию." +"опцией \"Удалить макет\" и удалите макет по умолчанию." msgid "Layout name not found!" msgstr "Название макета не найдено!" msgid "Restored the Default layout to its base settings." -msgstr "Макет по умолчанию восстановлен к его базовым настройкам." +msgstr "Макет \"По умолчанию\" восстановлен до базовых настроек." msgid "This object is marked as read-only, so it's not editable." msgstr "" @@ -3215,7 +3222,7 @@ msgid "" "understand this workflow." msgstr "" "Этот ресурс принадлежит сцене, которая была импортирована, поэтому он не " -"редактируется.\n" +"редактируем.\n" "Пожалуйста, прочитайте документацию, имеющую отношение к импорту сцены, " "чтобы лучше понять этот процесс." @@ -3231,8 +3238,8 @@ msgid "" "This resource was imported, so it's not editable. Change its settings in the " "import panel and then re-import." msgstr "" -"Этот ресурс был импортирован, поэтому он не редактируется. Измените " -"настройки в панеле импорта, а затем повторно импортируйте." +"Этот ресурс был импортирован, поэтому он не редактируем. Измените его " +"настройки в панели импорта, а затем реимпортируйте." msgid "" "This scene was imported, so changes to it won't be kept.\n" @@ -3262,14 +3269,14 @@ msgid "" msgstr "" "Режим Movie Maker включён, но путь к видеофайлу не указан.\n" "Путь к видеофайлу по умолчанию можно указать в настройках проекта в " -"категории Editor > Movie Writer.\n" +"категории Редактор > Movie Writer.\n" "В качестве альтернативы, для запуска отдельных сцен в корневой узел можно " "добавить метаданные `movie_file` типа String,\n" "указывающие пути к видеофайлу, который будет использоваться при записи этой " "сцены." msgid "There is no defined scene to run." -msgstr "Нет открытой сцены для запуска." +msgstr "Не определена сцена для запуска." msgid "Save scene before running..." msgstr "Сохранение сцены перед запуском..." @@ -3317,11 +3324,11 @@ msgid "Save changes to '%s' before reloading?" msgstr "Сохранить изменения в '%s' перед перезагрузкой?" msgid "Save changes to '%s' before closing?" -msgstr "Сохранить изменения в «%s» перед закрытием?" +msgstr "Сохранить изменения в '%s' перед закрытием?" msgid "%s no longer exists! Please specify a new save location." msgstr "" -"%s больше не существует! Пожалуйста укажите новое место для сохранения." +"%s больше не существует! Пожалуйста, укажите новое место для сохранения." msgid "" "The current scene has no root node, but %d modified external resource(s) " @@ -3335,7 +3342,7 @@ msgid "" "Scene tree dock." msgstr "" "Для сохранения сцены требуется корневой узел. Вы можете добавить его, " -"используя панель «Сцена»." +"используя панель \"Сцена\"." msgid "Save Scene As..." msgstr "Сохранить сцену как..." @@ -3404,7 +3411,7 @@ msgid "" "considered a bug. Please report." msgstr "" "Этот параметр устаревший. Ситуации, в которых необходимо принудительное " -"обновление считаются ошибкой. Просьба сообщить." +"обновление, считаются ошибкой. Просьба сообщить." msgid "Pick a Main Scene" msgstr "Выберите главную сцену" @@ -3413,43 +3420,41 @@ msgid "This operation can't be done without a scene." msgstr "Эта операция не может быть выполнена без сцены." msgid "Export Mesh Library" -msgstr "Экспортировать библиотеку полисеток" +msgstr "Экспорт библиотеки мешей" msgid "Unable to enable addon plugin at: '%s' parsing of config failed." -msgstr "" -"Не удаётся включить плагин: «%s». Ошибка синтаксического разбора файла " -"конфигурации." +msgstr "Невозможно включить плагин: '%s' разбор конфигурации не удался." msgid "Unable to find script field for addon plugin at: '%s'." -msgstr "Не удаётся найти поле script для плагина: «%s»." +msgstr "Не удаётся найти поле script для плагина: '%s'." msgid "Unable to load addon script from path: '%s'." -msgstr "Не удалось загрузить скрипт из источника: «%s»." +msgstr "Не удалось загрузить скрипт из источника: '%s'." msgid "" "Unable to load addon script from path: '%s'. This might be due to a code " "error in that script.\n" "Disabling the addon at '%s' to prevent further errors." msgstr "" -"Невозможно загрузить скрипт аддона по пути: «%s». Это может быть связано с " +"Невозможно загрузить скрипт аддона по пути: '%s'. Это может быть связано с " "ошибкой в коде скрипта.\n" -"Аддон «%s» отключён для предотвращения дальнейших ошибок." +"Аддон '%s' отключён для предотвращения дальнейших ошибок." msgid "" "Unable to load addon script from path: '%s' Base type is not EditorPlugin." msgstr "" -"Не удалось загрузить скрипт из источника: «%s». Базовый тип не EditorPlugin." +"Не удалось загрузить скрипт из источника: '%s'. Базовый тип не EditorPlugin." msgid "Unable to load addon script from path: '%s' Script is not in tool mode." msgstr "" -"Не удалось загрузить скрипт из источника: «%s». Скрипт не в режиме " +"Не удалось загрузить скрипт из источника: '%s'. Скрипт не в режиме " "инструмента." msgid "" "Scene '%s' was automatically imported, so it can't be modified.\n" "To make changes to it, a new inherited scene can be created." msgstr "" -"Сцена «%s» автоматически импортирована, поэтому не может быть " +"Сцена '%s' автоматически импортирована, поэтому не может быть " "модифицирована.\n" "Чтобы её изменить нужно создать новую унаследованную сцену." @@ -3458,11 +3463,11 @@ msgid "" "open the scene, then save it inside the project path." msgstr "" "Ошибка при загрузке сцены, она должна быть внутри каталога проекта. " -"Используйте «Импорт», чтобы открыть сцену, а затем сохраните её в каталоге " +"Используйте 'Импорт', чтобы открыть сцену, а затем сохраните её в каталоге " "проекта." msgid "Scene '%s' has broken dependencies:" -msgstr "Сцена «%s» имеет испорченные зависимости:" +msgstr "Сцена '%s' имеет сломанные зависимости:" msgid "Clear Recent Scenes" msgstr "Очистить недавние сцены" @@ -3473,24 +3478,26 @@ msgid "" "category." msgstr "" "Не назначена главная сцена, хотите выбрать?\n" -"Вы можете изменить её позже в Настройках проекта (категория «application»)." +"Вы можете изменить её позже в \"Настройки проекта\" (категория " +"'application')." msgid "" "Selected scene '%s' does not exist, select a valid one?\n" "You can change it later in \"Project Settings\" under the 'application' " "category." msgstr "" -"Выбранная сцена «%s» не существует, хотите выбрать другую?\n" -"Вы можете изменить её позже в Настройках проекта (категория «application»)." +"Выбранная сцена '%s' не существует, хотите выбрать другую?\n" +"Вы можете изменить её позже в \"Настройки проекта\" (категория " +"'application')." msgid "" "Selected scene '%s' is not a scene file, select a valid one?\n" "You can change it later in \"Project Settings\" under the 'application' " "category." msgstr "" -"Выбранный файл «%s» не является файлом сцены, хотите выбрать другой?\n" -"Вы можете изменить главную сцену позже в Настройках проекта (категория " -"«application»)." +"Выбранный файл '%s' не является файлом сцены, хотите выбрать другой?\n" +"Вы можете изменить главную сцену позже в \"Настройки проекта\" (категория " +"'application')." msgid "Save Layout" msgstr "Сохранить макет" @@ -3537,7 +3544,7 @@ msgstr "Ещё %d файла(ов)" msgid "" "Unable to write to file '%s', file in use, locked or lacking permissions." msgstr "" -"Невозможно записать в файл «%s», файл используется, заблокирован или " +"Невозможно записать в файл '%s', файл используется, заблокирован или " "отсутствуют разрешения." msgid "Pan View" @@ -3601,10 +3608,10 @@ msgid "Save Scene" msgstr "Сохранить сцену" msgid "Export As..." -msgstr "Экспортировать как..." +msgstr "Экспорт как..." msgid "MeshLibrary..." -msgstr "Библиотека полисеток..." +msgstr "MeshLibrary..." msgid "Close Scene" msgstr "Закрыть сцену" @@ -3631,7 +3638,7 @@ msgid "Version Control Settings" msgstr "Настройки контроля версий" msgid "Export..." -msgstr "Экспортировать..." +msgstr "Экспорт..." msgid "Install Android Build Template..." msgstr "Установить шаблон сборки Android..." @@ -3842,7 +3849,7 @@ msgid "" "operation again." msgstr "" "Шаблон сборки Android уже установлен в этом проекте и не будет перезаписан.\n" -"Удалите директорию «res://android/build» вручную прежде чем выполнять эту " +"Удалите директорию \"res://android/build\" вручную прежде чем выполнять эту " "операцию снова." msgid "Import Templates From ZIP File" @@ -3852,7 +3859,7 @@ msgid "Template Package" msgstr "Шаблонный пакет" msgid "Export Library" -msgstr "Экспортировать библиотеку" +msgstr "Экспорт библиотеки" msgid "Merge With Existing" msgstr "Объединить с существующей" @@ -3895,7 +3902,7 @@ msgid "Open Script Editor" msgstr "Открыть редактор скриптов" msgid "Open Asset Library" -msgstr "Открыть библиотеку шаблонов" +msgstr "Открыть библиотеку ассетов" msgid "Open the next Editor" msgstr "Открыть следующий редактор" @@ -3916,7 +3923,7 @@ msgid "Open a list of sub-resources." msgstr "Открыть список вложенных ресурсов." msgid "Creating Mesh Previews" -msgstr "Создание предпросмотра" +msgstr "Создание предпросмотра меша" msgid "Thumbnail..." msgstr "Миниатюра..." @@ -4017,7 +4024,7 @@ msgid "" msgstr "" "Невозможно создать ViewportTexture для этого ресурса, потому что он не " "установлен как локальный для сцены.\n" -"Пожалуйста, включите свойство «Локально для сцены» для него (и для всех " +"Пожалуйста, включите свойство 'локально для сцены' для него (и для всех " "родительских ресурсов)." msgid "Pick a Viewport" @@ -4123,7 +4130,7 @@ msgstr "Уже существует отредактированная сцен msgid "" "Couldn't run editor script, did you forget to override the '_run' method?" msgstr "" -"Не удалось запустить скрипт редактора, вы забыли переопределить метод «_run»?" +"Не удалось запустить скрипт редактора, вы забыли переопределить метод '_run'?" msgid "Edit Built-in Action" msgstr "Изменить встроенное действие" @@ -4247,15 +4254,15 @@ msgid "" "Target platform requires 'ETC2/ASTC' texture compression. Enable 'Import " "ETC2 ASTC' in Project Settings." msgstr "" -"Целевая платформа требует сжатие текстур «ETC2/ASTC». Включите " -"«Импортировать ETC2 ASTC» в Настройках проекта." +"Целевая платформа требует сжатие текстур 'ETC2/ASTC'. Включите " +"'Импортировать ETC2 ASTC' в Настройках проекта." msgid "" "Target platform requires 'S3TC/BPTC' texture compression. Enable 'Import " "S3TC BPTC' in Project Settings." msgstr "" -"Целевая платформа требует сжатие текстур «S3TC/BPTC». Включите " -"«Импортировать S3TC BPTC» в Настройках проекта." +"Целевая платформа требует сжатие текстур 'S3TC/BPTC'. Включите " +"'Импортировать S3TC BPTC' в Настройках проекта." msgid "Project export for platform:" msgstr "Экспорт проекта для платформы:" @@ -4297,10 +4304,10 @@ msgid "Failed to export project files." msgstr "Не удалось экспортировать файлы проекта." msgid "Can't open file for writing at path \"%s\"." -msgstr "По адресу \"%s\" не удается открыть файл для записи." +msgstr "По адресу \"%s\" не удаётся открыть файл для записи." msgid "Can't open file for reading-writing at path \"%s\"." -msgstr "По пути \"%s\" не удается открыть файл для чтения-записи." +msgstr "По пути \"%s\" не удаётся открыть файл для чтения-записи." msgid "Can't create encrypted file." msgstr "Не удалось создать зашифрованный файл." @@ -4309,7 +4316,7 @@ msgid "Can't open encrypted file to write." msgstr "Не удалось открыть зашифрованный файл для записи." msgid "Can't open file to read from path \"%s\"." -msgstr "Не удается открыть файл для чтения из пути \"%s\"." +msgstr "Не удаётся открыть файл для чтения из пути \"%s\"." msgid "Save ZIP" msgstr "Сохранить ZIP" @@ -4389,7 +4396,7 @@ msgid "" "The problematic templates archives can be found at '%s'." msgstr "" "Ошибка установки шаблонов.\n" -"Архивы с проблемными шаблонами можно найти в «%s»." +"Архивы с проблемными шаблонами можно найти в '%s'." msgid "Error getting the list of mirrors." msgstr "Ошибка при получении списка зеркал." @@ -4458,7 +4465,7 @@ msgid "Importing:" msgstr "Импортируется:" msgid "Remove templates for the version '%s'?" -msgstr "Удалить шаблоны для версии «%s»?" +msgstr "Удалить шаблоны для версии '%s'?" msgid "Uncompressing Android Build Sources" msgstr "Распаковка исходников сборки Android" @@ -4507,7 +4514,7 @@ msgstr "" "зеркал." msgid "Official export templates aren't available for development builds." -msgstr "Официальные шаблоны экспорта недоступны для рабочих сборок." +msgstr "Официальные шаблоны экспорта недоступны для dev сборок." msgid "Install from File" msgstr "Установить из файла" @@ -4542,15 +4549,18 @@ msgid "Runnable" msgstr "Активный" msgid "Export the project for all the presets defined." -msgstr "Экспортируйте проект для всех заданных предустановок." +msgstr "Экспорт проекта для всех заданных предустановок." msgid "All presets must have an export path defined for Export All to work." msgstr "" "Для работы функции \"Экспортировать все\" у всех предустановок должен быть " "определен путь экспорта." +msgid "Resources to export:" +msgstr "Ресурсы для экспорта:" + msgid "Delete preset '%s'?" -msgstr "Удалить пресет «%s»?" +msgstr "Удалить пресет '%s'?" msgid "%s Export" msgstr "Экспорт для %s" @@ -4588,26 +4598,23 @@ msgid "Resources" msgstr "Ресурсы" msgid "Export all resources in the project" -msgstr "Экспортировать все ресурсы проекта" +msgstr "Экспорт всех ресурсов проекта" msgid "Export selected scenes (and dependencies)" -msgstr "Экспортировать выбранные сцены (включая зависимости)" +msgstr "Экспорт выбранных сцен (включая зависимости)" msgid "Export selected resources (and dependencies)" -msgstr "Экспортировать выбранные ресурсы (включая зависимости)" +msgstr "Экспорт выбранных ресурсов (включая зависимости)" msgid "Export all resources in the project except resources checked below" -msgstr "Экспортировать все ресурсы в проекте, кроме отмеченных ниже" +msgstr "Экспорт всех ресурсов в проекте, кроме отмеченных ниже" msgid "Export as dedicated server" -msgstr "Экпортировать как выделенный сервер" +msgstr "Экспорт как выделенный сервер" msgid "Export Mode:" msgstr "Режим экспортирования:" -msgid "Resources to export:" -msgstr "Ресурсы для экспорта:" - msgid "" "\"Strip Visuals\" will replace the following resources with placeholders:" msgstr "\"Убрать визуал\" заменит следующие ресурсы на заполнители:" @@ -4622,7 +4629,7 @@ msgid "" "Filters to export non-resource files/folders\n" "(comma-separated, e.g: *.json, *.txt, docs/*)" msgstr "" -"Фильтры для экспорта нересурсных файлов/папок\n" +"Фильтры для экспорта не ресурсных файлов/папок\n" "(через запятую, например: *.json, *.txt, docs/*)" msgid "" @@ -4645,7 +4652,7 @@ msgid "Encryption" msgstr "Шифрование" msgid "Encrypt Exported PCK" -msgstr "Шифровать экпортированный PCK" +msgstr "Шифровать экспортированный PCK" msgid "Encrypt Index (File Names and Info)" msgstr "Шифровать индекс (имена файлов и информацию)" @@ -4682,10 +4689,10 @@ msgid "More Info..." msgstr "Подробнее..." msgid "Export PCK/ZIP..." -msgstr "Экспортировать PCK/ZIP..." +msgstr "Экспорт PCK/ZIP..." msgid "Export Project..." -msgstr "Экспортировать проект..." +msgstr "Экспорт проекта..." msgid "Export All" msgstr "Экспортировать всё" @@ -5215,7 +5222,7 @@ msgid "Prerendered multichannel(+true) signed distance field" msgstr "Предрендерное многоканальное (+true) подписанное поле расстояния" msgid "Can't load font texture:" -msgstr "Не удается загрузить текстуру шрифта:" +msgstr "Не удаётся загрузить текстуру шрифта:" msgid "Image margin too big." msgstr "Поля изображения слишком большие." @@ -5315,7 +5322,7 @@ msgid "Select folder to extract material resources" msgstr "Выбрать папку для извлечения материалов" msgid "Select folder where mesh resources will save on import" -msgstr "Выберите папку, в которую будут сохраняться ресурсы меша при импорте" +msgstr "Выберите папку, в которую будут сохраняться ресурсы мешей при импорте" msgid "Select folder where animations will save on import" msgstr "Выберите папку, в которую будут сохраняться анимации при импорте" @@ -5377,15 +5384,15 @@ msgid "" "Mesh has no name nor any other way to identify on re-import.\n" "Please name it or ensure it is exported with an unique ID." msgstr "" -"У меша нет ни имени, ни другого способа идентификации при повторном " +"Меш не имеет ни имени, ни другого способа идентификации при повторном " "импорте.\n" "Пожалуйста, назовите его или убедитесь, что он экспортируется с уникальным " "ID." msgid "Set paths to save meshes as resource files on Reimport" msgstr "" -"Установка путей для сохранения меша в качестве файлов ресурсов при повторном " -"импорте" +"Установка путей для сохранения мешей в качестве файлов ресурсов при " +"повторном импорте" msgid "Set Paths" msgstr "Задать пути" @@ -5418,7 +5425,7 @@ msgid "Set Mesh Save Paths" msgstr "Задать пути сохранения меша" msgid "Meshes" -msgstr "Сетка" +msgstr "Меши" msgid "Materials" msgstr "Материалы" @@ -5451,10 +5458,10 @@ msgid "%d Files" msgstr "%d файлов" msgid "Set as Default for '%s'" -msgstr "Установить по умолчанию для «%s»" +msgstr "Установить по умолчанию для '%s'" msgid "Clear Default for '%s'" -msgstr "Очистить по умолчанию для «%s»" +msgstr "Очистить по умолчанию для '%s'" msgid "" "You have pending changes that haven't been applied yet. Click Reimport to " @@ -5463,10 +5470,10 @@ msgid "" "first will discard changes made in the Import dock." msgstr "" "У вас есть изменения, которые ещё не были применены. Нажмите " -"«Переимпортировать», чтобы применить изменения, внесённые в параметры " +"Переимпортировать, чтобы применить изменения, внесённые в параметры " "импорта.\n" -"Если выбрать другой ресурс в панели «Файловая система», не нажав сначала " -"«Переимпортировать», то сделанные в панели «Импорт» изменения будут потеряны." +"Если выбрать другой ресурс в панели \"Файловая система\", не нажав сначала " +"Переимпортировать, то сделанные в панели \"Импорт\" изменения будут потеряны." msgid "Import As:" msgstr "Импортировать как:" @@ -5486,8 +5493,8 @@ msgstr "Изменение типа импортированного файла msgid "" "WARNING: Assets exist that use this resource, they may stop loading properly." msgstr "" -"Предупреждение: существуют объекты, которые используют этот ресурс, они " -"могут перестать загружаться должным образом." +"Предупреждение: Существуют ассеты, использующие этот ресурс, они могут " +"перестать загружаться должным образом." msgid "" "Select a resource file in the filesystem or in the inspector to adjust " @@ -5533,7 +5540,7 @@ msgid "" "Automatically remaps between 'Meta' ('Command') and 'Control' depending on " "current platform." msgstr "" -"Автоматическое переключение между «Meta» («Command») и «Control» в " +"Автоматическое переключение между 'Meta' ('Command') и 'Control' в " "зависимости от текущей платформы." msgid "Keycode (Latin Equivalent)" @@ -5929,7 +5936,7 @@ msgid "" "names." msgstr "" "Анимация игрока не имеет действующего пути корневого узла, поэтому не " -"удается получить отслеживаемые имена." +"удаётся получить отслеживаемые имена." msgid "Anim Clips" msgstr "Анимационные клипы" @@ -5962,7 +5969,7 @@ msgid "Animation name can't be empty." msgstr "Имя анимации не может быть пустым." msgid "Animation name contains invalid characters: '/', ':', ',' or '['." -msgstr "Имя анимации содержит недопустимые символы: «/», «:», «,» или «[»." +msgstr "Имя анимации содержит недопустимые символы: '/', ':', ',' или '['." msgid "Animation with the same name already exists." msgstr "Анимация с таким именем уже существует." @@ -5971,7 +5978,7 @@ msgid "Enter a library name." msgstr "Введите имя библиотеки." msgid "Library name contains invalid characters: '/', ':', ',' or '['." -msgstr "Имя библиотеки содержит недопустимые символы: «/», «:», «,» или «[»." +msgstr "Имя библиотеки содержит недопустимые символы: '/', ':', ',' или '['." msgid "Library with the same name already exists." msgstr "Библиотека с таким именем уже существует." @@ -6143,7 +6150,7 @@ msgid "Change Animation Name:" msgstr "Изменить имя анимации:" msgid "Delete Animation '%s'?" -msgstr "Удалить анимацию «%s»?" +msgstr "Удалить анимацию '%s'?" msgid "Remove Animation" msgstr "Удалить анимацию" @@ -6152,7 +6159,7 @@ msgid "Invalid animation name!" msgstr "Недопустимое название анимации!" msgid "Animation '%s' already exists!" -msgstr "Анимация «%s» уже существует!" +msgstr "Анимация '%s' уже существует!" msgid "Duplicate Animation" msgstr "Дублировать анимацию" @@ -6418,7 +6425,7 @@ msgid "Failed SHA-256 hash check" msgstr "Не удалось проверить хеш SHA-256" msgid "Asset Download Error:" -msgstr "Ошибка загрузки шаблона:" +msgstr "Ошибка загрузки ассета:" msgid "Ready to install!" msgstr "Готово к установке!" @@ -6494,7 +6501,7 @@ msgid "All" msgstr "Все" msgid "No results for \"%s\" for support level(s): %s." -msgstr "Нет результатов для «%s» для уровней поддержки: %s." +msgstr "Нет результатов для \"%s\" для уровней поддержки: %s." msgid "" "No results compatible with %s %s for support level(s): %s.\n" @@ -6509,7 +6516,7 @@ msgid "Search Templates, Projects, and Demos" msgstr "Искать шаблоны, проекты и демо" msgid "Search Assets (Excluding Templates, Projects, and Demos)" -msgstr "Искать ресурсы (исключая шаблоны, проекты и демо)" +msgstr "Искать ассеты (исключая шаблоны, проекты и демо)" msgid "Import..." msgstr "Импорт..." @@ -6533,7 +6540,7 @@ msgid "Failed to get repository configuration." msgstr "Не удалось получить конфигурацию репозитория." msgid "Assets ZIP File" -msgstr "ZIP файл набора" +msgstr "ZIP файл ассетов" msgid "Audio Preview Play/Pause" msgstr "Аудио пред прослушивание Старт/Пауза" @@ -6596,34 +6603,34 @@ msgid "Create Horizontal and Vertical Guides" msgstr "Создать горизонтальные и вертикальные направляющие" msgid "Set CanvasItem \"%s\" Pivot Offset to (%d, %d)" -msgstr "Задать Pivot Offset узла CanvasItem «%s» в (%d, %d)" +msgstr "Задать Pivot Offset узла CanvasItem \"%s\" в (%d, %d)" msgid "Rotate %d CanvasItems" msgstr "Вращать %d узлов CanvasItem" msgid "Rotate CanvasItem \"%s\" to %d degrees" -msgstr "Повернуть узел CanvasItem «%s» на %d градусов" +msgstr "Повернуть узел CanvasItem \"%s\" на %d градусов" msgid "Move CanvasItem \"%s\" Anchor" -msgstr "Передвинуть якорь узла CanvasItem «%s»" +msgstr "Передвинуть якорь узла CanvasItem \"%s\"" msgid "Scale Node2D \"%s\" to (%s, %s)" -msgstr "Масштабировать узел Node2D «%s» в (%s, %s)" +msgstr "Масштабировать узел Node2D \"%s\" в (%s, %s)" msgid "Resize Control \"%s\" to (%d, %d)" -msgstr "Изменить размер узла Control «%s» на (%d, %d)" +msgstr "Изменить размер узла Control \"%s\" на (%d, %d)" msgid "Scale %d CanvasItems" msgstr "Масштабировать %d узлов CanvasItem" msgid "Scale CanvasItem \"%s\" to (%s, %s)" -msgstr "Масштабировать узел CanvasItem «%s» в (%s, %s)" +msgstr "Масштабировать узел CanvasItem \"%s\" в (%s, %s)" msgid "Move %d CanvasItems" msgstr "Передвинуть %d узлов CanvasItem" msgid "Move CanvasItem \"%s\" to (%d, %d)" -msgstr "Передвинуть CanvasItem «%s» в (%d, %d)" +msgstr "Передвинуть CanvasItem \"%s\" в (%d, %d)" msgid "Locked" msgstr "Заблокирован" @@ -6769,6 +6776,12 @@ msgstr "При клике изменяет точку вращения объе msgid "Pan Mode" msgstr "Режим осмотра" +msgid "" +"You can also use Pan View shortcut (Space by default) to pan in any mode." +msgstr "" +"Вы также можете использовать сочетание клавиш Pan View (пробел по умолчанию) " +"для панорамирования в любом режиме." + msgid "Ruler Mode" msgstr "Режим измерения" @@ -6966,7 +6979,7 @@ msgid "Hold Alt when dropping to add as a different node type." msgstr "Удерживайте Alt при удалении, чтобы добавить узел другого типа." msgid "Cannot instantiate multiple nodes without root." -msgstr "Не удается создать несколько узлов без корня." +msgstr "Не удаётся создать несколько узлов без корня." msgid "Create Node" msgstr "Создать узел" @@ -7249,7 +7262,7 @@ msgstr "" "только исполняемый файл без данных проекта.\n" "Файловая система проекта будет предоставляться редактором через сеть.\n" "На Android развёртывание будет быстрее при подключении через USB. Эта опция " -"ускоряет тестирование проектов с большими ресурсами." +"ускоряет тестирование проектов с большими ассетами." msgid "Visible Collision Shapes" msgstr "Видимые области соприкосновения" @@ -7278,7 +7291,7 @@ msgid "" "When this option is enabled, navigation meshes and polygons will be visible " "in the running project." msgstr "" -"Когда эта опция включена, навигационные полисетки и полигоны будут видны в " +"Когда эта опция включена, навигационные меши и полигоны будут видны в " "запущенном проекте." msgid "Synchronize Scene Changes" @@ -7312,6 +7325,13 @@ msgstr "" msgid "Keep Debug Server Open" msgstr "Держать сервер отладки открытым" +msgid "" +"When this option is enabled, the editor debug server will stay open and " +"listen for new sessions started outside of the editor itself." +msgstr "" +"Когда эта опция включена, сервер отладки редактора будет оставаться открытым " +"и прослушивать новые сеансы, запущенные вне самого редактора." + msgid "Run Multiple Instances" msgstr "Запустить несколько экземпляров" @@ -7347,7 +7367,7 @@ msgid " - Variation" msgstr " - Вариация" msgid "Unable to preview font" -msgstr "Не удается отобразить шрифт" +msgstr "Не удаётся отобразить шрифт" msgid "Convert to CPUParticles2D" msgstr "Преобразовать в CPUParticles2D" @@ -7381,10 +7401,10 @@ msgid "\"%s\" doesn't inherit from Node3D." msgstr "\"%s\" не наследуется от Node3D." msgid "\"%s\" doesn't contain geometry." -msgstr "«%s» не содержит геометрии." +msgstr "\"%s\" не содержит геометрии." msgid "\"%s\" doesn't contain face geometry." -msgstr "«%s» не содержит геометрии с гранями." +msgstr "\"%s\" не содержит геометрии с гранями." msgid "Create Emitter" msgstr "Создать излучатель" @@ -7405,7 +7425,7 @@ msgid "Emission Source:" msgstr "Источник излучения:" msgid "A processor material of type 'ParticleProcessMaterial' is required." -msgstr "Требуется материал типа «ParticleProcessMaterial»." +msgstr "Требуется материал типа 'ParticleProcessMaterial'." msgid "Convert to CPUParticles3D" msgstr "Преобразовать в CPUParticles3D" @@ -7450,7 +7470,7 @@ msgid "" msgstr "" "При запекании GPUParticlesCollisionSDF3D лицевые части не обнаружены.\n" "Проверьте, есть ли видимые меши, соответствующие маске запекания в пределах " -"ее границ." +"её границ." msgid "Select path for SDF Texture" msgstr "Выбрать путь к SDF текстуре" @@ -7487,12 +7507,12 @@ msgid "" "No meshes to bake. Make sure they contain an UV2 channel and that the 'Bake " "Light' flag is on." msgstr "" -"Нет сетки для генерации. Убедитесь, что они содержат канал UV2 и что маркер " -"\"Запекать освещение\" активен." +"Нет мешей для генерации. Убедитесь, что они содержат канал UV2 и что маркер " +"'Запекать освещение' активен." msgid "Failed creating lightmap images, make sure path is writable." msgstr "" -"Сбой создания карты освещенности, убедитесь, что путь доступен для записи." +"Сбой создания карты освещённости, убедитесь, что путь доступен для записи." msgid "No editor scene root found." msgstr "Корневая сцена редактора не найдена." @@ -7510,7 +7530,7 @@ msgid "Select lightmap bake file:" msgstr "Выберите файл запекания карты освещения:" msgid "Mesh is empty!" -msgstr "Полисетка пуста!" +msgstr "Меш пуст!" msgid "Couldn't create a Trimesh collision shape." msgstr "Невозможно создать треугольную сетку для формы столкновений." @@ -7547,39 +7567,47 @@ msgid "Create Multiple Convex Shapes" msgstr "Создать нескольких выпуклых фигур" msgid "Create Navigation Mesh" -msgstr "Создать полисетку навигации" +msgstr "Создать меш навигации" msgid "Create Debug Tangents" msgstr "Отладка генерации касательной" msgid "Contained Mesh is not of type ArrayMesh." -msgstr "Полисетка не ArrayMesh типа." +msgstr "Содержимое меша не типа ArrayMesh." msgid "" "Mesh cannot unwrap UVs because it does not belong to the edited scene. Make " "it unique first." msgstr "" -"UVs сетки не могут быть развернуты, потому что они не принадлежат " -"редактируемой сцене. Сначала ее нужно сделать уникальной." +"UVs меша не могут быть развернуты, потому что он не принадлежит " +"редактируемой сцене. Сначала сделайте его уникальным." + +msgid "" +"Mesh cannot unwrap UVs because it belongs to another resource which was " +"imported from another file type. Make it unique first." +msgstr "" +"Меш не может развернуть UV, потому что он принадлежит другому ресурсу, " +"который был импортирован из файла другого типа. Сначала сделайте его " +"уникальным." msgid "" "Mesh cannot unwrap UVs because it was imported from another file type. Make " "it unique first." msgstr "" -"UVs сетки не могут быть развернуты, поскольку она была импортирована из " -"файла другого типа. Сначала ее необходимо сделать уникальной." +"UVs меша не могут быть развернуты, поскольку он был импортирован из файла " +"другого типа. Сначала сделайте его уникальным." msgid "UV Unwrap failed, mesh may not be manifold?" -msgstr "UV развертка не удалась, возможно у полисетки не односвязная форма?" +msgstr "UV развертка не удалась, возможно у меша не односвязная форма?" msgid "Unwrap UV2" msgstr "Развернуть UV2" msgid "No mesh to debug." -msgstr "Нет полисетки для отладки." +msgstr "Нет меша для отладки." msgid "Mesh has no UV in layer %d." -msgstr "Полисетка не имеет UV в слое %d." +msgstr "Меш не имеет UV в слое %d." msgid "MeshInstance3D lacks a Mesh." msgstr "В MeshInstance3D отсутствует Mesh." @@ -7656,7 +7684,7 @@ msgstr "" "столкновением и столкновением на основе полигонов." msgid "Create Outline Mesh..." -msgstr "Создать полисетку обводки..." +msgstr "Создать меш обводку..." msgid "" "Creates a static outline mesh. The outline mesh will have its normals " @@ -7664,10 +7692,10 @@ msgid "" "This can be used instead of the StandardMaterial Grow property when using " "that property isn't possible." msgstr "" -"Создать статический контурый меш. Нормали меша будут повёрнуты " +"Создает статическую меш обводку. Нормали меша обводки будут перевернуты " "автоматически.\n" -"Можно использовать вместо свойства Grow в SpatialMaterial, если нет " -"возможности использовать Grow." +"Это можно использовать вместо свойства Рост в StandardMaterial, когда " +"использование этого свойства невозможно." msgid "View UV1" msgstr "Просмотр UV1" @@ -7679,7 +7707,7 @@ msgid "Unwrap UV2 for Lightmap/AO" msgstr "Развернуть UV2 для Lightmap/AO" msgid "Create Outline Mesh" -msgstr "Создать полисетку обводки" +msgstr "Создать меш обводку" msgid "Outline Size:" msgstr "Размер обводки:" @@ -7698,7 +7726,7 @@ msgstr "" "%s" msgid "MeshLibrary" -msgstr "Библиотека сеток" +msgstr "MeshLibrary" msgid "Add Item" msgstr "Добавить элемент" @@ -7722,19 +7750,19 @@ msgid "Apply with Transforms" msgstr "Применить с преобразованиями" msgid "No mesh source specified (and no MultiMesh set in node)." -msgstr "Не указан источник полисетки (и MultiMesh не указана в узле)." +msgstr "Не указан источник меша (и MultiMesh не указан в узле)." msgid "No mesh source specified (and MultiMesh contains no Mesh)." -msgstr "Не указана исходная полисетка (и в MultiMesh нет полисетки)." +msgstr "Не указан исходный меш (и MultiMesh не содержит Mesh)." msgid "Mesh source is invalid (invalid path)." -msgstr "Источник полисетки является недействительным (неверный путь)." +msgstr "Источник меша недействителен (неверный путь)." msgid "Mesh source is invalid (not a MeshInstance3D)." -msgstr "Источник полисетки является недействительным (не MeshInstance3D)." +msgstr "Источник меша недействителен (не MeshInstance3D)." msgid "Mesh source is invalid (contains no Mesh resource)." -msgstr "Источник полисетки является недействительным (нет ресурса полисетки)." +msgstr "Источник меша недействителен (нет содержит Mesh ресурса)." msgid "No surface source specified." msgstr "Поверхность источника не определена." @@ -7749,7 +7777,7 @@ msgid "Surface source is invalid (no faces)." msgstr "Поверхность источника недопустима (нет граней)." msgid "Select a Source Mesh:" -msgstr "Выберите источник полисетки:" +msgstr "Выберите источник меша:" msgid "Select a Target Surface:" msgstr "Выберите целевую поверхность:" @@ -7758,13 +7786,13 @@ msgid "Populate Surface" msgstr "Заполнить поверхность" msgid "Populate MultiMesh" -msgstr "Заполнить мульти полисетку" +msgstr "Заполнить MultiMesh" msgid "Target Surface:" msgstr "Целевая поверхность:" msgid "Source Mesh:" -msgstr "Исходная полисетка:" +msgstr "Исходный меш:" msgid "X-Axis" msgstr "Ось X" @@ -7776,7 +7804,7 @@ msgid "Z-Axis" msgstr "Ось Z" msgid "Mesh Up Axis:" -msgstr "Ось вверх полисетки:" +msgstr "Ось вверх меша:" msgid "Random Rotation:" msgstr "Случайный поворот:" @@ -8085,7 +8113,7 @@ msgid "VoxelGI/SDFGI Buffer" msgstr "Буфер VoxelGI/SDFGI" msgid "Disable Mesh LOD" -msgstr "Отключить LOD полисетки" +msgstr "Отключить LOD меша" msgid "OmniLight3D Cluster" msgstr "Кластер OmniLight3D" @@ -8216,7 +8244,7 @@ msgstr "" "Открытый глаз: Гизмо видно.\n" "Закрытый глаз: Гизмо скрыто.\n" "Полуоткрытый глаз: Гизмо также видно сквозь непрозрачные поверхности " -"(«рентген»)." +"(\"рентген\")." msgid "Snap Nodes to Floor" msgstr "Привязать узлы к полу" @@ -8227,15 +8255,48 @@ msgstr "Не удалось найти сплошной пол, к которо msgid "Add Preview Sun to Scene" msgstr "Добавить предварительный просмотр солнца в сцену" +msgid "Add Preview Environment to Scene" +msgstr "Добавить предпросмотр окружения в сцену" + +msgid "" +"Scene contains\n" +"DirectionalLight3D.\n" +"Preview disabled." +msgstr "" +"Сцена содержит\n" +"DirectionalLight3D.\n" +"Предпросмотр отключен." + msgid "Preview disabled." msgstr "Превью отключено." +msgid "" +"Scene contains\n" +"WorldEnvironment.\n" +"Preview disabled." +msgstr "" +"Сцена содержит\n" +"WorldEnvironment.\n" +"Предпросмотр отключен." + msgid "Use Local Space" msgstr "Использовать локальное пространство" msgid "Use Snap" msgstr "Использовать привязки" +msgid "" +"Toggle preview sunlight.\n" +"If a DirectionalLight3D node is added to the scene, preview sunlight is " +"disabled." +msgstr "" +"Включить предварительный просмотр солнечного света.\n" +"Если к сцене добавляется узел DirectionalLight3D, предварительный просмотр " +"солнечного света отключается." + +msgid "Edit Sun and Environment settings." +msgstr "Изменить настройки солнца и окружения." + msgid "Bottom View" msgstr "Вид снизу" @@ -8377,9 +8438,30 @@ msgstr "До" msgid "Post" msgstr "После" +msgid "Preview Sun" +msgstr "Предпросмотр солнца" + +msgid "Sun Direction" +msgstr "Направление солнечного света" + +msgid "Angular Altitude" +msgstr "Угол места" + +msgid "Azimuth" +msgstr "Азимут" + msgid "Sun Color" msgstr "Цвет солнца" +msgid "Sun Energy" +msgstr "Энергия солнца" + +msgid "Shadow Max Distance" +msgstr "Максимальная дальность тени" + +msgid "Add Sun to Scene" +msgstr "Добавить солнце в сцену" + msgid "" "Adds a DirectionalLight3D node matching the preview sun settings to the " "current scene.\n" @@ -8391,12 +8473,30 @@ msgstr "" "Удерживайте Shift при нажатии, чтобы также добавить предпросмотр окружения к " "текущей сцене." +msgid "Preview Environment" +msgstr "Предпросмотр окружения" + +msgid "Sky Color" +msgstr "Цвет неба" + +msgid "AO" +msgstr "AO" + msgid "Glow" msgstr "Свечение" msgid "Tonemap" msgstr "Карта тональности" +msgid "GI" +msgstr "GI" + +msgid "Post Process" +msgstr "Пост-обработка" + +msgid "Add Environment to Scene" +msgstr "Добавить окружение в сцену" + msgid "" "Adds a WorldEnvironment node matching the preview environment settings to " "the current scene.\n" @@ -8404,7 +8504,7 @@ msgid "" msgstr "" "Добавляет узел WorldEnvironment, соответствующий настройкам предпросмотра " "окружения, в текущую сцену.\n" -"Удерживайте Shift при нажатии, чтобы также добавить предпросмотра солнца к " +"Удерживайте Shift при нажатии, чтобы также добавить предпросмотр солнца к " "текущей сцене." msgid "Remove Point from Curve" @@ -8686,7 +8786,7 @@ msgid "Clear Recent Files" msgstr "Очистить недавние файлы" msgid "Can't open '%s'. The file could have been moved or deleted." -msgstr "Не удалось открыть «%s». Файл мог быть перемещён или удалён." +msgstr "Не удалось открыть '%s'. Файл мог быть перемещён или удалён." msgid "Close and save changes?" msgstr "Закрыть и сохранить изменения?" @@ -8721,6 +8821,9 @@ msgstr "Не удалось загрузить файл:" msgid "Save File As..." msgstr "Сохранить как..." +msgid "Reload only takes effect on tool scripts." +msgstr "Перезагрузка действует только для скриптов инструментов." + msgid "Can't obtain the script for running." msgstr "Не удаётся получить скрипт для запуска." @@ -8875,8 +8978,8 @@ msgstr "Ошибка в (%d, %d):" msgid "" "Missing connected method '%s' for signal '%s' from node '%s' to node '%s'." msgstr "" -"Отсутствует подключённый метод «%s» для сигнала «%s» от узла «%s» к узлу " -"«%s»." +"Отсутствует подключённый метод '%s' для сигнала '%s' от узла '%s' к узлу " +"'%s'." msgid "[Ignore]" msgstr "[Игнорировать]" @@ -8892,8 +8995,8 @@ msgstr "Можно перетащить только ресурс из файл msgid "Can't drop nodes because script '%s' is not used in this scene." msgstr "" -"Невозможно перетащить узлы, потому что в этой сцене не используется скрипт " -"«%s»." +"Невозможно перетащить узлы, потому что скрипт '%s' не используется в этой " +"сцене." msgid "Lookup Symbol" msgstr "Поиск" @@ -8992,7 +9095,10 @@ msgid "Go to Previous Breakpoint" msgstr "Перейти к предыдущей точке останова" msgid "Load Shader File" -msgstr "Загрузить файл шейдера" +msgstr "Открыть файл шейдера" + +msgid "Load Shader Include File" +msgstr "Открыть Include файл шейдера" msgid "Save File" msgstr "Сохранить файл" @@ -9009,6 +9115,19 @@ msgstr "Закрыть файл" msgid "Shader Editor" msgstr "Редактор шейдеров" +msgid "No valid shader stages found." +msgstr "Допустимых этапов шейдера не найдено." + +msgid "Shader stage compiled without errors." +msgstr "Этап шейдера скомпилирован без ошибок." + +msgid "" +"File structure for '%s' contains unrecoverable errors:\n" +"\n" +msgstr "" +"Структура файла для '%s' содержит неустранимые ошибки:\n" +"\n" + msgid "ShaderFile" msgstr "Файл шейдера" @@ -9044,7 +9163,7 @@ msgstr "" "Не удалось экспортировать SkeletonProfile для узла Skeleton3D без костей." msgid "Export Skeleton Profile As..." -msgstr "Экспортировать профиль скелета как..." +msgstr "Экспорт профиля скелета как..." msgid "Set Bone Parentage" msgstr "Привязать кость к родителю" @@ -9058,9 +9177,28 @@ msgstr "Сбросить все позы костей" msgid "Reset Selected Poses" msgstr "Сбросить выделенные позы" +msgid "Apply All Poses to Rests" +msgstr "Применить все позы к покою" + +msgid "Apply Selected Poses to Rests" +msgstr "Применить выбранные позы к покою" + msgid "Create Physical Skeleton" msgstr "Создать физический скелет" +msgid "Export Skeleton Profile" +msgstr "Экспорт профиля скелета" + +msgid "" +"Edit Mode\n" +"Show buttons on joints." +msgstr "" +"Режим редактирования\n" +"Показать кнопки на стыках." + +msgid "Insert key of bone poses already exist track." +msgstr "Вставьте ключ позиции кости, уже находящийся в дорожке" + msgid "Bone Transform" msgstr "Трансформация костей" @@ -9099,10 +9237,10 @@ msgstr "Sprite2D пуст!" msgid "Can't convert a sprite using animation frames to mesh." msgstr "" -"Не удается преобразовать спрайт использующий анимационные кадры в сетку." +"Не удаётся преобразовать спрайт использующий анимационные кадры в сетку." msgid "Invalid geometry, can't replace by mesh." -msgstr "Недопустимая геометрия, не может быть заменена полисеткой." +msgstr "Недопустимая геометрия, не может быть заменена мешем." msgid "Convert to MeshInstance2D" msgstr "Преобразование в MeshInstance2D" @@ -9238,7 +9376,7 @@ msgid "Create Frames from Sprite Sheet" msgstr "Создать кадры из спрайт-листа" msgid "SpriteFrames" -msgstr "Спрайт кадры" +msgstr "Кадровая анимация" msgid "Warnings should be fixed to prevent errors." msgstr "Предупреждения должны быть устранены для предотвращения ошибок." @@ -9295,6 +9433,12 @@ msgstr[2] "{num} констант" msgid "No constants found." msgstr "Константы не найдены." +msgid "1 font" +msgid_plural "{num} fonts" +msgstr[0] "1 шрифт" +msgstr[1] "{num} шрифта" +msgstr[2] "{num} шрифтов" + msgid "No fonts found." msgstr "Шрифты не найдены." @@ -9442,8 +9586,8 @@ msgid "" "closing this window.\n" "Close anyway?" msgstr "" -"На вкладке «Импорт элементов» выбраны некоторые элементы. При закрытии этого " -"окна выбор будет потерян.\n" +"На вкладке \"Импорт элементов\" выбраны некоторые элементы. При закрытии " +"этого окна выбор будет потерян.\n" "Всё равно закрыть?" msgid "Remove Type" @@ -9625,6 +9769,12 @@ msgstr "Добавить тип" msgid "Override All Default Theme Items" msgstr "Переопределить все элементы темы по умолчанию" +msgid "Set Font Size Item in Theme" +msgstr "Задать размер шрифта в теме" + +msgid "Set Icon Item in Theme" +msgstr "Задтать элемент значка в теме" + msgid "Set Variation Base Type" msgstr "Задать базовый тип вариации" @@ -9751,7 +9901,7 @@ msgstr "Есть,Много,Вариантов" msgid "Invalid path, the PackedScene resource was probably moved or removed." msgstr "" -"Недопустимый путь, ресурс PackedScene, вероятно, был перемещен или удален." +"Недопустимый путь, ресурс PackedScene, вероятно, был перемещён или удалён." msgid "Invalid PackedScene resource, must have a Control node at its root." msgstr "" @@ -9763,6 +9913,48 @@ msgstr "Неверный файл, не ресурс PackedScene." msgid "Reload the scene to reflect its most actual state." msgstr "Перезагрузите сцену, чтобы отразить её наиболее актуальное состояние." +msgid "Merge TileSetAtlasSource" +msgstr "Объединить TileSetAtlasSource" + +msgid "%s (ID: %d)" +msgstr "%s (ID: %d)" + +msgid "Merge (Keep original Atlases)" +msgstr "Объединить (сохранить исходные атласы)" + +msgid "Next Line After Column" +msgstr "Следующая строка после столбца" + +msgid "" +"Source: %d\n" +"Atlas coordinates: %s\n" +"Alternative: 0" +msgstr "" +"Источник: %d\n" +"Координаты атласа: %s\n" +"Альтернатива: 0" + +msgid "" +"Source: %d\n" +"Atlas coordinates: %s\n" +"Alternative: %d" +msgstr "" +"Источник: %d\n" +"Координаты атласа: %s\n" +"Альтернатива: %d" + +msgid "No atlas source with a valid texture selected." +msgstr "Не выбран источник атласа с допустимой текстурой." + +msgid "Base Tiles" +msgstr "Базовые тайлы" + +msgid "Alternative Tiles" +msgstr "Альтернативные тайлы" + +msgid "Edit points tool" +msgstr "Инструмент редактирования точек" + msgid "Rotate Right" msgstr "Повернуть вправо" @@ -9778,17 +9970,94 @@ msgstr "Перевернуть по вертикали" msgid "Painting:" msgstr "Рисование:" +msgid "No terrains" +msgstr "Нет местностей" + +msgid "No terrain" +msgstr "Нет местности" + +msgid "Add TileSet pattern" +msgstr "Добавить шаблон TileSet" + +msgid "Remove TileSet patterns" +msgstr "Удалить шаблон TileSet" + +msgid "Delete tiles" +msgstr "Удалить тайл" + +msgid "Change selection" +msgstr "Изменить выбранное" + +msgid "Move tiles" +msgstr "Передвинуть тайлы" + +msgid "Paste tiles" +msgstr "Вставить тайлы" + +msgid "Paint" +msgstr "Рисовать" + +msgid "Shift: Draw line." +msgstr "Shift: Нарисовать линию" + msgid "Shift+Ctrl: Draw rectangle." msgstr "Shift+Ctrl: Рисовать прямоугольник." +msgid "Bucket" +msgstr "Заполнить" + +msgid "Alternatively hold Ctrl with other tools to pick tile." +msgstr "" +"В качестве альтернативы удерживайте клавишу Ctrl с другими инструментами для " +"выбора тайла" + +msgid "Eraser" +msgstr "Стереть" + +msgid "Alternatively use RMB to erase tiles." +msgstr "В качестве альтернативы используйте ПКМ, чтобы стереть тайлы" + msgid "Place Random Tile" msgstr "Разместить случайный тайл" +msgid "" +"Modifies the chance of painting nothing instead of a randomly selected tile." +msgstr "" +"Изменение вероятности рисования пустоты вместо случайно выбранной плитки" + msgid "Tiles" -msgstr "Тайлы" +msgstr "Tiles" + +msgid "Sort sources" +msgstr "Сортировать ресурсы" + +msgid "Patterns" +msgstr "Шаблоны" + +msgid "Drag and drop or paste a TileMap selection here to store a pattern." +msgstr "" +"Перетащите или вставьте сюда выделенный TileMap, чтобы сохранить шаблон." + +msgid "Matches Corners and Sides" +msgstr "Соответствует углам и сторонам" + +msgid "Terrain Set %d (%s)" +msgstr "Terrain Set %d (%s)" + +msgid "Select Previous Tile Map Layer" +msgstr "Выбрать предыдущий слой TileMap" + +msgid "TileMap Layers" +msgstr "Слои TileMap" + +msgid "Highlight Selected TileMap Layer" +msgstr "Выделить выбранный TileMap" msgid "Toggle grid visibility." -msgstr "Переключить видимость сетки." +msgstr "Отображение сетки" + +msgid "The edited TileMap node has no TileSet resource." +msgstr "Редактируемый узел TileMap не имеет ресурса TileSet." msgid "Delete All Tile Proxies" msgstr "Удалить все прокси тайлов" @@ -9799,14 +10068,45 @@ msgstr "Глобальные действия:" msgid "Atlas" msgstr "Атлас" +msgid "" +"Selected tile:\n" +"Source: %d\n" +"Atlas coordinates: %s\n" +"Alternative: %d" +msgstr "" +"Выбранный тайл:\n" +"Ресурс: %d\n" +"Координаты атласа: %s\n" +"Альтернативный: %d" + msgid "Physics" msgstr "Физика" +msgid "Select a property editor" +msgstr "Выберите редактор свойств" + +msgid "Create tiles in non-transparent texture regions" +msgstr "Создавать тайлы в непрозрачных областях текстуры" + +msgid "Remove tiles in fully transparent texture regions" +msgstr "Удалить тайлы в полностью прозрачных областях текстуры" + msgid "Setup" msgstr "Настройка" +msgid "" +"Atlas setup. Add/Remove tiles tool (use the shift key to create big tiles, " +"control for rectangle editing)." +msgstr "" +"Настройка атласа. Инструмент добавления/удаления плиток (используйте клавишу " +"shift для создания больших плиток, control для редактирования " +"прямоугольников)." + msgid "Select tiles." -msgstr "Выделить тайлы." +msgstr "Выделить тайлы" + +msgid "Paint properties." +msgstr "Свойства рисования" msgid "No tiles selected." msgstr "Тайлы не выбраны." @@ -9820,6 +10120,16 @@ msgstr "Создавать тайлы в непрозрачных областя msgid "Remove Tiles in Fully Transparent Texture Regions" msgstr "Удалить тайлы в полностью прозрачных областях текстуры" +msgid "Auto Create Tiles in Non-Transparent Texture Regions?" +msgstr "Автоматически создавать тайлы в непрозрачных областях текстуры?" + +msgid "" +"The atlas's texture was modified.\n" +"Would you like to automatically create tiles in the atlas?" +msgstr "" +"Текстура атласа была изменена.\n" +"Хотите автоматически создать тайлы в атласе?" + msgid "Yes" msgstr "Да" @@ -9829,6 +10139,15 @@ msgstr "Нет" msgid "Add a new atlas source" msgstr "Добавить новый исходник атласа" +msgid "Open Atlas Merging Tool" +msgstr "Открыть инструмент слияния атласов" + +msgid "No TileSet source selected. Select or create a TileSet source." +msgstr "Ресурс TileSet не выбран. Выберите или создайте ресурс TileSet." + +msgid "Add new patterns in the TileMap editing mode." +msgstr "Добавляйте новые шаблоны в режиме редактирования TileMap" + msgid "Add a Scene Tile" msgstr "Добавить тайл-сцену" @@ -10024,6 +10343,12 @@ msgstr "Добавить вход" msgid "Add Output" msgstr "Добавить выход" +msgid "Float" +msgstr "Float" + +msgid "UInt" +msgstr "UInt" + msgid "Boolean" msgstr "Логическое" @@ -10033,6 +10358,13 @@ msgstr "Сэмплер" msgid "[default]" msgstr "[по умолчанию]" +msgid "" +"The 2D preview cannot correctly show the result retrieved from instance " +"parameter." +msgstr "" +"Предварительный просмотр 2D не может правильно отображать результат, " +"полученный из параметра экземпляра" + msgid "Add Input Port" msgstr "Добавить входной порт" @@ -10066,6 +10398,9 @@ msgstr "Изменено имя ParameterRef" msgid "Varying Name Changed" msgstr "Изменено имя Varying" +msgid "Varying with that name is already exist." +msgstr "Действие с именем '%s' уже существует." + msgid "Vertex" msgstr "Вершины" @@ -10190,26 +10525,44 @@ msgid "Boolean constant." msgstr "Логическая константа." msgid "'%s' input parameter for all shader modes." -msgstr "Входной параметр «%s» для всех режимов шейдера." +msgstr "Входной параметр '%s' для всех режимов шейдера." msgid "Input parameter." msgstr "Входной параметр." msgid "'%s' input parameter for vertex and fragment shader modes." -msgstr "Входной параметр «%s» для режимов вершинного и фрагментного шейдеров." +msgstr "Входной параметр '%s' для режимов вершинного и фрагментного шейдеров." msgid "'%s' input parameter for fragment and light shader modes." msgstr "" -"Входной параметр «%s» для режимов фрагментного шейдера и шейдера освещения." +"Входной параметр '%s' для режимов фрагментного шейдера и шейдера освещения." msgid "'%s' input parameter for fragment shader mode." -msgstr "Входной параметр «%s» для режима фрагментного шейдера." +msgstr "Входной параметр '%s' для режима фрагментного шейдера." + +msgid "'%s' input parameter for sky shader mode." +msgstr "Входной параметр '%s' для всех режимов шейдера." + +msgid "'%s' input parameter for fog shader mode." +msgstr "Входной параметр '%s' для режима шейдера освещения." msgid "'%s' input parameter for light shader mode." -msgstr "Входной параметр «%s» для режима шейдера освещения." +msgstr "Входной параметр '%s' для режима шейдера освещения." msgid "'%s' input parameter for vertex shader mode." -msgstr "Входной параметр «%s» для режима вершинного шейдера." +msgstr "Входной параметр '%s' для режима вершинного шейдера." + +msgid "'%s' input parameter for start shader mode." +msgstr "Входной параметр '%s' для режима вершинного шейдера." + +msgid "'%s' input parameter for process shader mode." +msgstr "Входной параметр '%s' для режима вершинного шейдера." + +msgid "'%s' input parameter for start and process shader modes." +msgstr "Входной параметр '%s' для режимов вершинного и фрагментного шейдеров." + +msgid "'%s' input parameter for process and collide shader modes." +msgstr "Входной параметр '%s' для всех режимов шейдера." msgid "" "A node for help to multiply a position input vector by rotation using " @@ -10262,14 +10615,14 @@ msgid "" "(Fragment/Light mode only) (Scalar) Derivative in 'x' using local " "differencing." msgstr "" -"(Только в режиме Фрагмент/Свет) (Скаляр) Производная по «x» с использованием " +"(Только в режиме Фрагмент/Свет) (Скаляр) Производная по 'x' с использованием " "локального дифференцирования." msgid "" "(Fragment/Light mode only) (Scalar) Derivative in 'y' using local " "differencing." msgstr "" -"(Только в режиме Фрагмент/Свет) (Скаляр) Производная по «y» с использованием " +"(Только в режиме Фрагмент/Свет) (Скаляр) Производная по 'y' с использованием " "локального дифференцирования." msgid "Base-e Exponential." @@ -10348,8 +10701,8 @@ msgid "" msgstr "" "SmoothStep function( scalar(edge0), scalar(edge1), scalar(x) ).\n" "\n" -"Возвращает 0.0, если «x» меньше, чем «edge0», и 1.0, если x больше, чем " -"«edge1». В остальных случаях возвращаемое значение интерполируется " +"Возвращает 0.0, если 'x' меньше, чем 'edge0', и 1.0, если x больше, чем " +"'edge1'. В остальных случаях возвращаемое значение интерполируется " "полиномами Эрмита в промежутке от 0.0 до 1.0." msgid "" @@ -10359,14 +10712,14 @@ msgid "" msgstr "" "Функция Шаг( скаляр(граница), скаляр(х) ).\n" "\n" -"Возвращает 0.0, если «x» меньше чем «граница», иначе — 1.0." +"Возвращает 0.0, если 'x' меньше чем 'граница', иначе — 1.0." msgid "" "(Fragment/Light mode only) (Scalar) Sum of absolute derivative in 'x' and " "'y'." msgstr "" "(Только в режиме Фрагмент/Свет) (Скаляр) Сумма абсолютных значений " -"производных по «x» и «y»." +"производных по 'x' и 'y'." msgid "Returns the tangent of the parameter." msgstr "Возвращает тангенс параметра." @@ -10400,12 +10753,12 @@ msgid "" msgstr "" "Вычисляет внешнее произведение пары векторов.\n" "\n" -"Внешнее произведение рассматривает первый параметр «c» как вектор-столбец " -"(матрица, состоящая из одного столбца), а второй параметр «r» — как вектор-" +"Внешнее произведение рассматривает первый параметр 'c' как вектор-столбец " +"(матрица, состоящая из одного столбца), а второй параметр 'r' — как вектор-" "строку (матрица, состоящая из одной строки) и осуществляет линейно-" -"алгебраическое умножение «c * r», в результате чего образуется матрица, " -"количество строк которой равно количеству компонентов в «c», а количество " -"столбцов — количеству компонентов в «r»." +"алгебраическое умножение 'c * r', в результате чего образуется матрица, " +"количество строк которой равно количеству компонентов в 'c', а количество " +"столбцов — количеству компонентов в 'r'." msgid "Composes transform from four vectors." msgstr "Составляет преобразование из четырёх векторов." @@ -10447,14 +10800,14 @@ msgid "" "(Fragment/Light mode only) (Vector) Derivative in 'x' using local " "differencing." msgstr "" -"(Только в режиме Фрагмент/Свет) (Вектор) Производная по «x» с использованием " +"(Только в режиме Фрагмент/Свет) (Вектор) Производная по 'x' с использованием " "локального дифференцирования." msgid "" "(Fragment/Light mode only) (Vector) Derivative in 'y' using local " "differencing." msgstr "" -"(Только в режиме Фрагмент/Свет) (Вектор) Производная по «y» с использованием " +"(Только в режиме Фрагмент/Свет) (Вектор) Производная по 'y' с использованием " "локального дифференцирования." msgid "Returns the distance between two points." @@ -10518,8 +10871,8 @@ msgid "" msgstr "" "SmoothStep function( vector(edge0), vector(edge1), vector(x) ).\n" "\n" -"Возвращает 0.0, если «x» меньше, чем «edge0», и 1.0, если «x» больше, чем " -"«edge1». В остальных случаях возвращаемое значение интерполируется " +"Возвращает 0.0, если 'x' меньше, чем 'edge0', и 1.0, если 'x' больше, чем " +"'edge1'. В остальных случаях возвращаемое значение интерполируется " "полиномами Эрмита в промежутке от 0.0 до 1.0." msgid "" @@ -10531,8 +10884,8 @@ msgid "" msgstr "" "SmoothStep function( scalar(edge0), scalar(edge1), vector(x) ).\n" "\n" -"Возвращает 0.0, если «x» меньше, чем «edge0», и 1.0, если «x» больше, чем " -"«edge1». В остальных случаях возвращаемое значение интерполируется " +"Возвращает 0.0, если 'x' меньше, чем 'edge0', и 1.0, если 'x' больше, чем " +"'edge1'. В остальных случаях возвращаемое значение интерполируется " "полиномами Эрмита в промежутке от 0.0 до 1.0." msgid "" @@ -10542,7 +10895,7 @@ msgid "" msgstr "" "Step function( vector(edge), vector(x) ).\n" "\n" -"Возвращает 0.0, если «x» меньше, чем «edge», и 1.0 в противном случае." +"Возвращает 0.0, если 'x' меньше, чем 'edge', и 1.0 в противном случае." msgid "" "Step function( scalar(edge), vector(x) ).\n" @@ -10551,14 +10904,14 @@ msgid "" msgstr "" "Step function( scalar(edge), vector(x) ).\n" "\n" -"Возвращает 0.0, если «x» меньше, чем «edge», и 1.0 в противном случае." +"Возвращает 0.0, если 'x' меньше, чем 'edge', и 1.0 в противном случае." msgid "" "(Fragment/Light mode only) (Vector) Sum of absolute derivative in 'x' and " "'y'." msgstr "" "(Только в режиме Фрагмент/Свет) (Вектор) Сумма абсолютных значений " -"производных по «x» и «y»." +"производных по 'x' и 'y'." msgid "" "Custom Godot Shader Language expression, with custom amount of input and " @@ -10583,13 +10936,14 @@ msgstr "Ошибка при открытии файла пакета (Не яв msgid "" "Invalid \".zip\" project file; it doesn't contain a \"project.godot\" file." -msgstr "Недействительный .zip-файл проекта; не содержит файл «project.godot»." +msgstr "" +"Недействительный .zip-файл проекта; не содержит файл \"project.godot\"." msgid "Please choose an empty folder." msgstr "Пожалуйста, выберите пустую папку." msgid "Please choose a \"project.godot\" or \".zip\" file." -msgstr "Пожалуйста, выберите файл «project.godot» или «.zip»." +msgstr "Пожалуйста, выберите файл \"project.godot\" или \".zip\"." msgid "This directory already contains a Godot project." msgstr "Этот каталог уже содержит проект Godot." @@ -10666,11 +11020,11 @@ msgstr "Неверный путь к проекту (Что-то изменил msgid "" "Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" -"Не удалось загрузить проект в «%s» (ошибка %d). Он может отсутствовать или " +"Не удалось загрузить проект в '%s' (ошибка %d). Он может отсутствовать или " "быть повреждён." msgid "Couldn't save project at '%s' (error %d)." -msgstr "Не удалось сохранить проект в «%s» (ошибка %d)." +msgstr "Не удалось сохранить проект в '%s' (ошибка %d)." msgid "Warning: This folder is not empty" msgstr "Предупреждение: Эта папка не пуста" @@ -10755,10 +11109,10 @@ msgid "Local Projects" msgstr "Локальные проекты" msgid "Asset Library Projects" -msgstr "Проекты Библиотеки ресурсов" +msgstr "Проекты Библиотеки ассетов" msgid "Can't open project at '%s'." -msgstr "Не удаётся открыть проект в «%s»." +msgstr "Не удаётся открыть проект в '%s'." msgid "" "You requested to open %d projects in parallel. Do you confirm?\n" @@ -10780,8 +11134,8 @@ msgid "" "Warning: You won't be able to open the project with previous versions of the " "engine anymore." msgstr "" -"В файле конфигурации («project.godot») выбранного проекта «%s» не указана " -"поддерживаемая версия Godot.\n" +"В файле конфигурации (\"project.godot\") выбранного проекта \"%s\" не " +"указана поддерживаемая версия Godot.\n" "\n" "Путь проекта: %s\n" "\n" @@ -10808,13 +11162,13 @@ msgid "" "Warning: If you select a conversion option, you won't be able to open the " "project with previous versions of the engine anymore." msgstr "" -"Выбранный проект «%s» был создан в Godot 3.x, и должен быть конвертирован " +"Выбранный проект \"%s\" был создан в Godot 3.x, и должен быть конвертирован " "для Godot 4.x.\n" "\n" "Путь проекта: %s\n" "\n" "У вас есть три варианта:\n" -"- Конвертировать только файл конфигурации («project.godot»). Выберите этот " +"- Конвертировать только файл конфигурации (\"project.godot\"). Выберите этот " "вариант, чтобы открыть проект, не конвертируя его сцены, ресурсы и скрипты.\n" "- Конвертировать весь проект, включая его сцены, ресурсы и сценарии " "(рекомендуется, если вы обновляетесь).\n" @@ -10837,7 +11191,7 @@ msgid "" "Warning: You won't be able to open the project with previous versions of the " "engine anymore." msgstr "" -"Выбранный проект «%s» был создан в старой версии движка и должен быть " +"Выбранный проект \"%s\" был создан в старой версии движка и должен быть " "конвертирован для текущей версии.\n" "\n" "Путь проекта: %s\n" @@ -10858,7 +11212,7 @@ msgid "" "The project settings were created by a newer engine version, whose settings " "are not compatible with this version." msgstr "" -"Не удалось открыть проект «%s», расположенный по следующему пути:\n" +"Не удалось открыть проект \"%s\", расположенный по следующему пути:\n" "\n" "%s\n" "\n" @@ -10918,13 +11272,13 @@ msgid "" msgstr "" "Невозможно запустить проект: не назначена главная сцена.\n" "Пожалуйста, отредактируйте проект и установите главную сцену в Настройках " -"проекта в категории «Application»." +"проекта в категории \"Application\"." msgid "" "Can't run project: Assets need to be imported.\n" "Please edit the project to trigger the initial import." msgstr "" -"Невозможно запустить проект: ресурсы должны быть импортированы.\n" +"Невозможно запустить проект: ассеты должны быть импортированы.\n" "Пожалуйста, откройте проект для редактирования, это спровоцирует начальный " "импорт." @@ -11031,7 +11385,7 @@ msgstr "" "скрипты из Godot 3.x для работы в Godot 4.0.\n" "\n" "Обратите внимание, что это конвертирование упрощает обновление проекта, но " -"не гарантирует его работу «из коробки», ручные корректировки всё ещё " +"не гарантирует его работу \"из коробки\", ручные корректировки всё ещё " "необходимы.\n" "\n" "ВАЖНО: Обязательно сделайте резервную копию вашего проекта перед " @@ -11046,7 +11400,7 @@ msgid "" "Would you like to explore official example projects in the Asset Library?" msgstr "" "В настоящее время у вас нет никаких проектов.\n" -"Хотите изучить официальные примеры в Библиотеке ресурсов?" +"Хотите изучить официальные примеры в Библиотеке ассетов?" msgid "Add Project Setting" msgstr "Добавить настройку проекта" @@ -11234,9 +11588,19 @@ msgstr "Имя сцены:" msgid "Root Name:" msgstr "Имя корня:" +msgid "Leave empty to use scene name" +msgstr "Оставьте пустым, чтобы использовать название сцены" + msgid "Error loading scene from %s" msgstr "Ошибка при загрузке сцены из %s" +msgid "" +"Cannot instantiate the scene '%s' because the current scene exists within " +"one of its nodes." +msgstr "" +"Невозможно создать экземпляр сцены '%s', потому что текущая сцена находится " +"в одном из её узлов." + msgid "Replace with Branch Scene" msgstr "Заменить на сцену-ветку" @@ -11276,13 +11640,13 @@ msgid "Delete %d nodes?" msgstr "Удалить %d узлов?" msgid "Delete the root node \"%s\"?" -msgstr "Удалить корневой узел «%s»?" +msgstr "Удалить корневой узел \"%s\"?" msgid "Delete node \"%s\" and its children?" -msgstr "Удалить узел «%s» и его детей?" +msgstr "Удалить узел \"%s\" и дочерние?" msgid "Delete node \"%s\"?" -msgstr "Удалить узел «%s»?" +msgstr "Удалить узел \"%s\"?" msgid "" "Saving the branch as a scene requires having a scene open in the editor." @@ -11298,6 +11662,19 @@ msgstr "" "выбрали %d узлов." msgid "" +"Can't save the root node branch as an instantiated scene.\n" +"To create an editable copy of the current scene, duplicate it using the " +"FileSystem dock context menu\n" +"or create an inherited scene using Scene > New Inherited Scene... instead." +msgstr "" +"Невозможно сохранить ветку корневого узла в качестве инстанцированной " +"сцены.\n" +"Чтобы создать редактируемую копию текущей сцены, продублируйте её с помощью " +"контекстного меню панели \"Файловая система\"\n" +"или создайте унаследованную сцену, используя вместо этого Сцена > Новая " +"унаследованная сцена..." + +msgid "" "Can't save a branch which is a child of an already instantiated scene.\n" "To save this branch into its own scene, open the original scene, right click " "on this branch, and select \"Save Branch as Scene\"." @@ -11305,8 +11682,8 @@ msgstr "" "Невозможно сохранить ветку, которая является дочерним элементом уже " "инстанцированной сцены.\n" "Чтобы сохранить эту ветку в отдельной сцене, откройте исходную сцену, " -"щёлкните правой кнопкой мыши по этой ветке и выберите «Сохранить ветку как " -"сцену»." +"щёлкните правой кнопкой мыши по этой ветке и выберите \"Сохранить ветку как " +"сцену\"." msgid "" "Can't save a branch which is part of an inherited scene.\n" @@ -11315,8 +11692,8 @@ msgid "" msgstr "" "Невозможно сохранить ветку, которая является частью унаследованной сцены.\n" "Чтобы сохранить эту ветку в отдельной сцене, откройте исходную сцену, " -"щёлкните правой кнопкой мыши по этой ветке и выберите «Сохранить ветку как " -"сцену»." +"щёлкните правой кнопкой мыши по этой ветке и выберите \"Сохранить ветку как " +"сцену\"." msgid "Save New Scene As..." msgstr "Сохранить новую сцену как..." @@ -11325,15 +11702,15 @@ msgid "" "Disabling \"editable_instance\" will cause all properties of the node to be " "reverted to their default." msgstr "" -"Отключение параметра «editable_instance» приведет к тому, что все свойства " +"Отключение параметра \"editable_instance\" приведет к тому, что все свойства " "узла будут возвращены к значениям по умолчанию." msgid "" "Enabling \"Load As Placeholder\" will disable \"Editable Children\" and " "cause all properties of the node to be reverted to their default." msgstr "" -"Включение опции «Загрузить как заполнитель» отключит опцию «Редактируемые " -"потомки» и приведет к тому, что все свойства узла будут возвращены к " +"Включение опции \"Загрузить как заполнитель\" отключит опцию \"Редактируемые " +"потомки\" и приведет к тому, что все свойства узла будут возвращены к " "значениям по умолчанию." msgid "Make Local" @@ -11446,7 +11823,7 @@ msgid "Detach the script from the selected node." msgstr "Убрать скрипт у выбранного узла." msgid "Remote" -msgstr "Удаленный" +msgstr "Удалённый" msgid "" "If selected, the Remote scene tree dock will cause the project to stutter " @@ -11485,7 +11862,7 @@ msgid "" "Click to disable this." msgstr "" "Доступ к этому узлу можно получить из любого места сцены, предваряя его " -"префиксом «%s» в пути к узлу.\n" +"префиксом '%s' в пути к узлу.\n" "Нажмите, чтобы отключить это." msgid "Node has one connection." @@ -11514,6 +11891,13 @@ msgstr "" "Нажмите чтобы разблокировать." msgid "" +"Children are not selectable.\n" +"Click to make them selectable." +msgstr "" +"Дочерние объекты не выделяются.\n" +"Нажмите, чтобы сделать их доступными для выбора." + +msgid "" "AnimationPlayer is pinned.\n" "Click to unpin." msgstr "" @@ -11639,11 +12023,16 @@ msgstr "Недопустимый базовый путь." msgid "Wrong extension chosen." msgstr "Выбрано неверное расширение." +msgid "Note: Built-in shaders can't be edited using an external editor." +msgstr "" +"Примечание: встроенные шейдеры нельзя редактировать с помощью внешнего " +"редактора" + msgid "Mode:" msgstr "Режим:" msgid "Global shader parameter '%s' already exists'" -msgstr "Глобальный параметр шейдера «%s» уже существует" +msgstr "Глобальный параметр шейдера '%s' уже существует" msgid "Change Cylinder Radius" msgstr "Изменить радиус цилиндра" @@ -11687,6 +12076,9 @@ msgstr "Недопустимый формат экземпляра словар msgid "Invalid instance dictionary (invalid subclasses)" msgstr "Недопустимый экземпляр словаря (неверные подклассы)" +msgid "Export Scene to glTF 2.0 File" +msgstr "Экспорт сцены в файл glTF 2.0" + msgid "Path to Blender installation is valid." msgstr "Путь к установке Blender является допустимым." @@ -11826,6 +12218,13 @@ msgstr "Разместить" msgid "Delete Property?" msgstr "Удалить свойство?" +msgid "" +"A valid NodePath must be set in the \"Spawn Path\" property in order for " +"MultiplayerSpawner to be able to spawn Nodes." +msgstr "" +"Чтобы MultiplayerSpawner мог порождать узлы, в свойстве \"Spawn Path\" " +"должен быть установлен действительный NodePath." + msgid "A NavigationMesh resource must be set or created for this node to work." msgstr "" "Ресурс NavigationMesh должен быть установлен или создан для этого узла." @@ -11834,7 +12233,7 @@ msgid "Bake NavMesh" msgstr "Запечь NavMesh" msgid "Clear the navigation mesh." -msgstr "Очистить полисетку навигации." +msgstr "Очистить меш навигации." msgid "Setting up Configuration..." msgstr "Настройка конфигурации..." @@ -11861,13 +12260,13 @@ msgid "Creating contours..." msgstr "Создание контуров..." msgid "Creating polymesh..." -msgstr "Создание полисетки..." +msgstr "Создание полимеша..." msgid "Converting to native navigation mesh..." -msgstr "Преобразование в собственную навигационную полисетку..." +msgstr "Преобразование в собственный навигационный меш..." msgid "Navigation Mesh Generator Setup:" -msgstr "Настройка генератора навигационной полисетки:" +msgstr "Настройка генератора меша навигации:" msgid "Parsing Geometry..." msgstr "Анализ геометрии..." @@ -11891,16 +12290,16 @@ msgid "Package segments must be of non-zero length." msgstr "Части пакета не могут быть пустыми." msgid "The character '%s' is not allowed in Android application package names." -msgstr "Символ «%s» не разрешён в имени пакета Android-приложения." +msgstr "Символ '%s' не разрешён в имени пакета Android-приложения." msgid "A digit cannot be the first character in a package segment." msgstr "Число не может быть первым символом в части пакета." msgid "The character '%s' cannot be the first character in a package segment." -msgstr "Символ «%s» не может стоять первым в сегменте пакета." +msgstr "Символ '%s' не может стоять первым в сегменте пакета." msgid "The package must have at least one '.' separator." -msgstr "Пакет должен иметь хотя бы один разделитель «.»." +msgstr "Пакет должен иметь хотя бы один разделитель '.'." msgid "Select device from the list" msgstr "Выберите устройство из списка" @@ -11952,8 +12351,7 @@ msgstr "" "Password, ЛИБО ни одна из них." msgid "Release keystore incorrectly configured in the export preset." -msgstr "" -"Хранилище ключей не настроено ни в настройках редактора, ни в предустановках." +msgstr "Неправильно настроено хранилище ключей в предустановке экспорта." msgid "A valid Android SDK path is required in Editor Settings." msgstr "" @@ -11963,7 +12361,7 @@ msgid "Invalid Android SDK path in Editor Settings." msgstr "Недействительный путь Android SDK в Настройках редактора." msgid "Missing 'platform-tools' directory!" -msgstr "Директория «platform-tools» отсутствует!" +msgstr "Директория 'platform-tools' отсутствует!" msgid "Unable to find Android SDK platform-tools' adb command." msgstr "Не удалось найти команду adb в Android SDK platform-tools." @@ -11973,7 +12371,7 @@ msgstr "" "Пожалуйста, проверьте каталог Android SDK, указанный в Настройках редактора." msgid "Missing 'build-tools' directory!" -msgstr "Директория «build-tools» отсутствует!" +msgstr "Директория 'build-tools' отсутствует!" msgid "Unable to find Android SDK build-tools' apksigner command." msgstr "Не удалось найти команду apksigner в Android SDK build-tools." @@ -11984,9 +12382,35 @@ msgstr "Недействительный публичный ключ для ра msgid "Invalid package name:" msgstr "Недопустимое имя пакета:" +msgid "\"Use Gradle Build\" must be enabled to use the plugins." +msgstr "\"Use Gradle Build\" должен быть включен для использования плагинов." + +msgid "OpenXR requires \"Use Gradle Build\" to be enabled" +msgstr "OpenXR требует включения \"Использовать Gradle сборку\"" + +msgid "\"Hand Tracking\" is only valid when \"XR Mode\" is \"OpenXR\"." +msgstr "" +"\"Отслеживание рук\" действует только в том случае, если \"Режим XR\" - " +"\"OpenXR\"." + +msgid "\"Passthrough\" is only valid when \"XR Mode\" is \"OpenXR\"." +msgstr "" +"\"Passthrough\" действует только в том случае, если \"XR Mode\" - \"OpenXR\"." + +msgid "\"Export AAB\" is only valid when \"Use Gradle Build\" is enabled." +msgstr "" +"\"Export AAB\" действителен только при включённой опции \"Использовать " +"Gradle сборку\"." + +msgid "" +"\"Min SDK\" can only be overridden when \"Use Gradle Build\" is enabled." +msgstr "" +"\"Min SDK\" можно переопределить, только если включена опция \"Использовать " +"Gradle Build\"." + msgid "\"Min SDK\" should be a valid integer, but got \"%s\" which is invalid." msgstr "" -"«Min SDK» должен быть значением целого типа, но получено «%s», что " +"\"Min SDK\" должен быть значением целого типа, но получено \"%s\", что " "недопустимо." msgid "" @@ -11996,6 +12420,12 @@ msgstr "" "\"Min SDK\" не может быть меньше %d версии, требуемой библиотекой Godot." msgid "" +"\"Target SDK\" can only be overridden when \"Use Gradle Build\" is enabled." +msgstr "" +"\"Target SDK\" можно переопределить, только если включена опция " +"\"Использовать Gradle сборку\"." + +msgid "" "\"Target SDK\" should be a valid integer, but got \"%s\" which is invalid." msgstr "" "\"Target SDK\" должно быть валидным целым числом, полученное \"%s\" - не " @@ -12005,9 +12435,15 @@ 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. Это может работать, но не " +"\"Target SDK\" %d выше чем версия по умолчанию %d. Это может работать, но не " "тестировалось и может быть нестабильным." +msgid "\"Target SDK\" version must be greater or equal to \"Min SDK\" version." +msgstr "Версия \"Target SDK\" должна быть больше или равна версии \"Min SDK\"." + +msgid "\"Min SDK\" should be greater or equal to %d for the \"%s\" renderer." +msgstr "\"Min SDK\" должно быть больше или равно %d для рендеринга \"%s\"." + msgid "Code Signing" msgstr "Подпись кода" @@ -12015,7 +12451,7 @@ 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». Пожалуйста, убедитесь в наличии команды в " +"Не удалось найти 'apksigner'. Пожалуйста, убедитесь в наличии команды в " "каталоге build-tools Android SDK. Результирующий %s не подписан." msgid "Signing debug %s..." @@ -12025,13 +12461,13 @@ msgid "Signing release %s..." msgstr "Подписание релиза %s..." msgid "Could not find keystore, unable to export." -msgstr "Не удалось найти хранилище ключей, невозможно экспортировать." +msgstr "Не удалось найти хранилище ключей, экспорт невозможен." msgid "Could not start apksigner executable." msgstr "Не удаётся запустить исполняемый файл apksigner." msgid "'apksigner' returned with error #%d" -msgstr "«apksigner» завершился с ошибкой #%d" +msgstr "'apksigner' завершился с ошибкой #%d" msgid "" "output: \n" @@ -12044,7 +12480,7 @@ msgid "Verifying %s..." msgstr "Проверка %s..." msgid "'apksigner' verification of %s failed." -msgstr "Проверка «apksigner» «%s» не удалась." +msgstr "'apksigner' проверка %s не удалась." msgid "Exporting for Android" msgstr "Экспорт для Android" @@ -12062,11 +12498,18 @@ msgid "Unsupported export format!" msgstr "Неподдерживаемый формат экспорта!" msgid "" +"Trying to build from a gradle built template, but no version info for it " +"exists. Please reinstall from the 'Project' menu." +msgstr "" +"Попытка сборки из шаблона gradle сборка, но информации о версии для него не " +"существует. Пожалуйста, переустановите из меню 'Проект'." + +msgid "" "Android build version mismatch: Template installed: %s, Godot version: %s. " "Please reinstall Android build template from 'Project' menu." msgstr "" "Несоответствие версии сборки Android: Установлен шаблон: %s, версия Godot: " -"%s. Пожалуйста, переустановите шаблон сборки Android из меню «Проект»." +"%s. Пожалуйста, переустановите шаблон сборки Android из меню 'Проект'." msgid "" "Unable to overwrite res://android/build/res/*.xml files with project name." @@ -12097,7 +12540,7 @@ msgid "" "Unable to copy and rename export file, check gradle project directory for " "outputs." msgstr "" -"Невозможно скопировать и переименовать файл экспорта, проверьте диекторию " +"Невозможно скопировать и переименовать файл экспорта, проверьте каталог " "проекта gradle на наличие выходных данных." msgid "Package not found: \"%s\"." @@ -12131,11 +12574,17 @@ msgid "Could not unzip temporary unaligned APK." msgstr "Не удалось распаковать временный невыровненный APK." msgid "Export Icons" -msgstr "Экспортировать иконки" +msgstr "Экспорт иконок" msgid "Prepare Templates" msgstr "Подготовить шаблоны" +msgid "Export template not found." +msgstr "Шаблон экспорта не найден." + +msgid ".ipa export failed, see editor log for details." +msgstr "Экспорт .ipa не удался, подробности см. в журнале редактора." + msgid "App Store Team ID not specified - cannot configure the project." msgstr "App Store Team ID не указан - невозможно настроить проект." @@ -12146,7 +12595,7 @@ msgid "Identifier is missing." msgstr "Отсутствует определитель." msgid "The character '%s' is not allowed in Identifier." -msgstr "Символ «%s» в идентификаторе не допускается." +msgstr "Символ '%s' в идентификаторе не допускается." msgid "Debug Script Export" msgstr "Экспорт скрипта отладки" @@ -12164,9 +12613,15 @@ msgstr "" msgid "Executable \"pck\" section not found." msgstr "Исполняемый раздел \"pck\" не найден." +msgid "Run exported project on remote Linux/BSD system" +msgstr "Запустить экспортированный проект в удаленной Linux/BSD системе" + msgid "Could not create temp directory:" msgstr "Не удалось создать временный каталог:" +msgid "Exporting project..." +msgstr "Экспорт проекта..." + msgid "Can't get filesystem access." msgstr "Не удаётся получить доступ к файловой системе." @@ -12183,7 +12638,7 @@ msgid "Invalid Info.plist, can't load." msgstr "Недопустимый Info.plist, не удаётся загрузить." msgid "Failed to create \"%s\" subfolder." -msgstr "Не удалось создать подпапку «%s»." +msgstr "Не удалось создать подпапку \"%s\"." msgid "Failed to extract thin binary." msgstr "Не удалось распаковать двоичный файл." @@ -12227,6 +12682,25 @@ msgstr "Создание иконки" msgid "Could not open icon file \"%s\"." msgstr "Не получилось открыть файлы иконок \"%s\"." +msgid "Notarization" +msgstr "Заверение" + +msgid "" +"rcodesign path is not set. Configure rcodesign path in the Editor Settings " +"(Export > macOS > rcodesign)." +msgstr "" +"Путь rcodesign не задан. Настройте путь rcodesign в настройках редактора " +"(Экспорт > macOS > rcodesign)." + +msgid "Notarization failed, see editor log for details." +msgstr "Заверение не удалось, подробности смотрите в журнале редактора." + +msgid "Notarization request UUID: \"%s\"" +msgstr "UUID запроса заверения: \"%s\"" + +msgid "The notarization process generally takes less than an hour." +msgstr "Процесс заверения обычно занимает менее часа." + msgid "" "You can check progress manually by opening a Terminal and running the " "following command:" @@ -12238,12 +12712,19 @@ msgid "" "Run the following command to staple the notarization ticket to the exported " "application (optional):" msgstr "" -"Выполните следующую команду, чтобы прикрепить заявку на подтверждение к " +"Выполните следующую команду, чтобы прикрепить заявку на заверение к " "экспортированному приложению (необязательно):" msgid "Could not start xcrun executable." msgstr "Не удаётся запустить исполняемый файл xcrun." +msgid "" +"The notarization process generally takes less than an hour. When the process " +"is completed, you'll receive an email." +msgstr "" +"Процесс заверения обычно занимает менее часа. Когда процесс завершится, вы " +"получите электронное письмо." + msgid "Built-in CodeSign failed with error \"%s\"." msgstr "Встроенный CodeSign завершился с ошибкой \"%s\"." @@ -12251,6 +12732,13 @@ msgid "Built-in CodeSign require regex module." msgstr "Для встроенного CodeSign требуется модуль регулярных выражений." msgid "" +"Xrcodesign path is not set. Configure rcodesign path in the Editor Settings " +"(Export > macOS > rcodesign)." +msgstr "" +"Путь Xrcodesign не задан. Настройте путь rcodesign в настройках редактора " +"(Экспорт > macOS > rcodesign)." + +msgid "" "Could not start codesign executable, make sure Xcode command line tools are " "installed." msgstr "" @@ -12260,6 +12748,11 @@ msgstr "" msgid "Cannot sign file %s." msgstr "Не удалось подписать файл %s." +msgid "Relative symlinks are not supported, exported \"%s\" might be broken!" +msgstr "" +"Относительные символические ссылки не поддерживаются, экспортируемый \"%s\" " +"может быть повреждён!" + msgid "Could not start hdiutil executable." msgstr "Не удаётся запустить исполняемый файл hdiutil." @@ -12285,6 +12778,13 @@ msgstr "" "Относительные символические ссылки не поддерживаются в этой ОС, " "экспортируемый проект может быть повреждён!" +msgid "" +"Requested template binary \"%s\" not found. It might be missing from your " +"template archive." +msgstr "" +"Запрашиваемый двоичный файл шаблона \"%s\" не найден. Возможно, он " +"отсутствует в вашем архиве шаблонов." + msgid "Making PKG" msgstr "Создание PKG" @@ -12292,8 +12792,8 @@ msgid "" "Ad-hoc signed applications require the 'Disable Library Validation' " "entitlement to load dynamic libraries." msgstr "" -"Для подписанных ad-hoc приложений требуется право «Отключить проверку " -"библиотеки» для загрузки динамических библиотек." +"Для подписанных ad-hoc приложений требуется право 'Отключить проверку " +"библиотеки' для загрузки динамических библиотек." msgid "Code signing bundle" msgstr "Подпись кода пакета" @@ -12311,47 +12811,86 @@ msgid "" "Notarization requires the app to be archived first, select the DMG or ZIP " "export format instead." msgstr "" -"Подтверждение требует, чтобы приложение было сначала архивировано, вместо " +"Заверение требует, чтобы приложение было сначала заархивировано, вместо " "этого выберите формат экспорта DMG или ZIP." msgid "Sending archive for notarization" -msgstr "Отправка архива для подтверждения" +msgstr "Отправка архива для заверения" msgid "Invalid bundle identifier:" msgstr "Неверный идентификатор пакета:" msgid "Notarization: Notarization with an ad-hoc signature is not supported." -msgstr "Подтверждение: Подтверждение подписью ad-hoc не поддерживается." +msgstr "Заверение: заверение ad-hoc подписью не поддерживается." msgid "Notarization: Code signing is required for notarization." -msgstr "Подтверждение: для подтверждения требуется подпись кода." +msgstr "Заверение: для заверения требуется подпись кода." + +msgid "Notarization: Xcode command line tools are not installed." +msgstr "Заверение: инструменты командной строки Xcode не установлены." + +msgid "" +"Notarization: Neither Apple ID name nor App Store Connect issuer ID name not " +"specified." +msgstr "" +"Заверение: не указано ни Apple ID имя, ни ID имя издателя App Store Connect." + +msgid "" +"Notarization: Both Apple ID name and App Store Connect issuer ID name are " +"specified, only one should be set at the same time." +msgstr "" +"Заверение: указываются как Apple ID имя, так и ID имя издателя App Store " +"Connect, только одно должно быть установлено одновременно." msgid "Notarization: Apple ID password not specified." -msgstr "Предупреждение: пароль Apple ID не указан." +msgstr "Заверение: не указан Apple ID пароль." + +msgid "Notarization: App Store Connect API key ID not specified." +msgstr "Заверение: ID ключа API App Store Connect не указан." + +msgid "Notarization: Apple Team ID not specified." +msgstr "Заверение: Apple Team ID не указан." + +msgid "Notarization: App Store Connect issuer ID name not specified." +msgstr "Заверение: имя издателя App Store Connect не указано." + +msgid "" +"Notarization: rcodesign path is not set. Configure rcodesign path in the " +"Editor Settings (Export > macOS > rcodesign)." +msgstr "" +"Заверение: путь rcodesign не задан. Настройте путь rcodesign в настройках " +"редактора (Экспорт > macOS > rcodesign)." msgid "" "Warning: Notarization is disabled. The exported project will be blocked by " "Gatekeeper if it's downloaded from an unknown source." msgstr "" -"Предупреждение: Подтверждение отключено. Экспортированный проект будет " +"Предупреждение: Заверение отключено. Экспортированный проект будет " "заблокирован Gatekeeper, если он загружен из неизвестного источника." msgid "" "Code signing is disabled. The exported project will not run on Macs with " "enabled Gatekeeper and Apple Silicon powered Macs." msgstr "" -"Подписание кода отключено. Экспортированный проект не будет работать на " -"компьютерах Mac с включённым Gatekeeper и компьютерах Mac с процессором " +"Подпись кода отключена. Экспортированный проект не будет работать на " +"компьютерах Mac с включенным Gatekeeper и компьютерах Mac с процессором " "Apple Silicon." msgid "" "Code signing: Using ad-hoc signature. The exported project will be blocked " "by Gatekeeper" msgstr "" -"Подписание кода: Использование ad-hoc подписи. Экспортированный проект будет " +"Подпись кода: Использование ad-hoc подписи. Экспортированный проект будет " "заблокирован Gatekeeper" msgid "" +"Code signing: rcodesign path is not set. Configure rcodesign path in the " +"Editor Settings (Export > macOS > rcodesign)." +msgstr "" +"Подпись кода: путь rcodesign не задан. Настройте путь rcodesign в настройках " +"редактора (Экспорт > macOS > rcodesign)." + +msgid "" "Privacy: Microphone access is enabled, but usage description is not " "specified." msgstr "" @@ -12391,6 +12930,9 @@ msgstr "" "Конфиденциальность: Доступ к библиотеке фотографий включён, но описание " "использования не указано." +msgid "Run exported project on remote macOS system" +msgstr "Запустить экспортированный проект в удаленной macOS системе" + msgid "Invalid package short name." msgstr "Недопустимое короткое имя пакета." @@ -12461,7 +13003,7 @@ msgid "Run in Browser" msgstr "Запустить в браузере" msgid "Run exported HTML in the system's default browser." -msgstr "Запустить HTML в системном браузере по умолчанию." +msgstr "Запустить экспортированный HTML в системном браузере по умолчанию." msgid "Resources Modification" msgstr "Изменение ресурсов" @@ -12469,6 +13011,15 @@ msgstr "Изменение ресурсов" msgid "Failed to rename temporary file \"%s\"." msgstr "Невозможно удалить временный файл \"%s\"." +msgid "" +"Could not start rcedit executable. Configure rcedit path in the Editor " +"Settings (Export > Windows > rcedit), or disable \"Application > Modify " +"Resources\" in the export preset." +msgstr "" +"Не удалось запустить исполняемый файл rcedit. Настройте путь rcedit в " +"настройках редактора (Экспорт > Windows > rcedit) или отключите \"Приложение " +"> Изменить ресурсы\" в пресете экспорта." + msgid "rcedit failed to modify executable: %s." msgstr "rcedit не смог изменить исполняемый файл: %s." @@ -12481,12 +13032,37 @@ msgstr "Неверный идентификатор." msgid "Invalid timestamp server." msgstr "Неверный сервер метки времени." +msgid "" +"Could not start signtool executable. Configure signtool path in the Editor " +"Settings (Export > Windows > signtool), or disable \"Codesign\" in the " +"export preset." +msgstr "" +"Не удалось запустить исполняемый файл signtool. Настройте путь к signtool в " +"настройках редактора (Export > Windows > signtool) или отключите " +"\"Codesign\" в пресете экспорта." + +msgid "" +"Could not start osslsigncode executable. Configure signtool path in the " +"Editor Settings (Export > Windows > osslsigncode), or disable \"Codesign\" " +"in the export preset." +msgstr "" +"Не удалось запустить исполняемый файл osslsigncode. Настройте путь к " +"signtool в настройках редактора (Export > Windows > osslsigncode) или " +"отключите \"Codesign\" в пресете экспорта." + msgid "Signtool failed to sign executable: %s." msgstr "Signtool не смог подписать исполняемый файл: %s." msgid "Failed to remove temporary file \"%s\"." msgstr "Невозможно удалить временный файл \"%s\"." +msgid "" +"The rcedit tool must be configured in the Editor Settings (Export > Windows " +"> rcedit) to change the icon or app information data." +msgstr "" +"Инструмент rcedit должен быть задан в настройках редактора (Экспорт > " +"Windows > rcedit), чтобы изменить значок или информацию о приложении." + msgid "Invalid icon path:" msgstr "Недопустимый путь к иконке:" @@ -12499,6 +13075,16 @@ msgstr "Недопустимая версия продукта:" msgid "Windows executables cannot be >= 4 GiB." msgstr "Исполняемые файлы Windows не могут иметь размер >= 4 ГБ." +msgid "Run exported project on remote Windows system" +msgstr "Запустить экспортированный проект в удаленной Windows системе" + +msgid "" +"A SpriteFrames resource must be created or set in the \"Frames\" property in " +"order for AnimatedSprite2D to display frames." +msgstr "" +"Ресурс SpriteFrames должен быть создан или установлен в свойстве \"Frames\" " +"для того, чтобы AnimatedSprite2D отображал кадры." + msgid "" "This node has no shape, so it can't collide or interact with other objects.\n" "Consider adding a CollisionShape2D or CollisionPolygon2D as a child to " @@ -12514,11 +13100,11 @@ msgstr "Пустой CollisionPolygon2D не влияет на столкнов msgid "Invalid polygon. At least 3 points are needed in 'Solids' build mode." msgstr "" -"Недопустимый полигон. В режиме «Solids» необходимо по крайней мере 3 точки." +"Недопустимый полигон. В режиме 'Solids' необходимо по крайней мере 3 точки." msgid "Invalid polygon. At least 2 points are needed in 'Segments' build mode." msgstr "" -"Недопустимый полигон. В режиме «Segments» необходимо по крайней мере 2 точки." +"Недопустимый полигон. В режиме 'Segments' необходимо по крайней мере 2 точки." msgid "" "The One Way Collision property will be ignored when the parent is an Area2D." @@ -12546,7 +13132,7 @@ msgid "" "\"Particles Animation\" enabled." msgstr "" "Анимация CPUParticles2D требует использования CanvasItemMaterial с " -"включённой опцией «Particles Animation»." +"включённой опцией \"Particles Animation\"." msgid "" "A material to process the particles is not assigned, so no behavior is " @@ -12559,7 +13145,7 @@ msgid "" "\"Particles Animation\" enabled." msgstr "" "Для анимации Particles2D требуется использование CanvasItemMaterial с " -"включенной опцией «Particles Animation»." +"включенной опцией \"Particles Animation\"." msgid "Node A and Node B must be PhysicsBody2Ds" msgstr "Узел А и Узел B должны быть экземплярами класса PhysicsBody2D" @@ -12582,7 +13168,8 @@ msgstr "" msgid "" "A texture with the shape of the light must be supplied to the \"Texture\" " "property." -msgstr "Текстуры с формой света должны быть предоставлены параметру «Texture»." +msgstr "" +"Текстуры с формой света должны быть предоставлены свойству \"Texture\"." msgid "" "An occluder polygon must be set (or drawn) for this occluder to take effect." @@ -12646,6 +13233,13 @@ msgstr "" "Skeleton2D и установите её." msgid "" +"Isometric TileSet will likely not look as intended without Y-sort enabled " +"for the TileMap and all of its layers." +msgstr "" +"Изометрический TileSet, скорее всего, не будет выглядеть так, как задумано, " +"если Y-сортировка не включена для TileMap и для всех его слоёв." + +msgid "" "CollisionPolygon3D only serves to provide a collision shape to a " "CollisionObject3D derived node.\n" "Please only use it as a child of Area3D, StaticBody3D, RigidBody3D, " @@ -12671,8 +13265,23 @@ msgid "Nothing is visible because no mesh has been assigned." msgstr "Ничто не видно, потому что не назначена сетка." msgid "" +"CPUParticles3D animation requires the usage of a StandardMaterial3D whose " +"Billboard Mode is set to \"Particle Billboard\"." +msgstr "" +"Анимация CPUParticles3D требует использования StandardMaterial3D, режим " +"Billboard Mode которого установлен в \"Particle Billboard\"." + +msgid "" "Nothing is visible because meshes have not been assigned to draw passes." -msgstr "Ничего не видно, потому что полисетки не были назначены на отрисовку." +msgstr "" +"Ничего не видно, потому что меши не были назначены на проходы отрисовки." + +msgid "" +"Particles animation requires the usage of a BaseMaterial3D whose Billboard " +"Mode is set to \"Particle Billboard\"." +msgstr "" +"Анимация частиц требует использования BaseMaterial3D, чей Billboard Mode " +"установлен в \"Particle Billboard\"." msgid "Creating probes" msgstr "Создание проб" @@ -12687,6 +13296,26 @@ msgstr "" "NavigationLink3D начальная позиция должна отличаться от конечной, чтобы быть " "полезной." +msgid "" +"PathFollow3D's ROTATION_ORIENTED requires \"Up Vector\" to be enabled in its " +"parent Path3D's Curve resource." +msgstr "" +"ROTATION_ORIENTED узла PathFollow3D требует включения параметра «Up Vector» " +"в родительском ресурсе Path Curve." + +msgid "" +"The \"Remote Path\" property must point to a valid Node3D or Node3D-derived " +"node to work." +msgstr "" +"Для работы свойство \"Remote Path\" должно указывать на действительный узел " +"Node3D или производный узел Node3D." + +msgid "" +"This node cannot interact with other objects unless a Shape3D is assigned." +msgstr "" +"Этот узел не может взаимодействовать с другими объектами, если ему не " +"назначен Shape3D" + msgid "This body will be ignored until you set a mesh." msgstr "Это тело будет игнорироваться, пока вы не установите сетку." @@ -12695,28 +13324,37 @@ msgid "" "order for AnimatedSprite3D to display frames." msgstr "" "Чтобы AnimatedSprite3D отображал кадры, ресурс SpriteFrames должен быть " -"создан или задан в свойстве «Frames»." +"создан или задан в свойстве \"Frames\"." msgid "Plotting Meshes" -msgstr "Построение полисетки" +msgstr "Построение мешей" msgid "Finishing Plot" msgstr "Завершение построения" +msgid "" +"To have any visible effect, WorldEnvironment requires its \"Environment\" " +"property to contain an Environment, its \"Camera Attributes\" property to " +"contain a CameraAttributes resource, or both." +msgstr "" +"Чтобы иметь какой-либо видимый эффект, WorldEnvironment требует, чтобы его " +"свойство \"Environment\" содержало Environment, его свойство \"Camera " +"Attributes\" содержало ресурс CameraAttributes, или и то, и другое." + msgid "On BlendTree node '%s', animation not found: '%s'" -msgstr "На узле BlendTree «%s» анимация не найдена: «%s»" +msgstr "На узле BlendTree '%s' анимация не найдена: '%s'" msgid "Animation not found: '%s'" msgstr "Анимация не найдена: %s" msgid "In node '%s', invalid animation: '%s'." -msgstr "В узле «%s» недопустимая анимация: «%s»." +msgstr "В узле '%s' недопустимая анимация: '%s'." msgid "Invalid animation: '%s'." -msgstr "Неверная анимация: «%s»." +msgstr "Неверная анимация: '%s'." msgid "Nothing connected to input '%s' of node '%s'." -msgstr "Ничего не подключено к входу «%s» узла «%s»." +msgstr "Ничего не подключено к входу '%s' узла '%s'." msgid "No root AnimationNode for the graph is set." msgstr "Не задан корневой AnimationNode для графа." @@ -12766,15 +13404,15 @@ msgstr "" "Контейнер сам по себе не имеет смысла, пока скрипт не настроит режим " "размещения его дочерних элементов.\n" "Если вы не планируете добавлять скрипт, то используйте вместо этого узел " -"«Control»." +"\"Control\"." msgid "" "The Hint Tooltip won't be displayed as the control's Mouse Filter is set to " "\"Ignore\". To solve this, set the Mouse Filter to \"Stop\" or \"Pass\"." msgstr "" "Подсказка не будет отображаться, если для фильтра мыши элемента управления " -"установлено значение «Ignore». Чтобы это исправить, установите MouseFilter в " -"положение «Stop» или «Pass»." +"установлено значение \"Ignore\". Чтобы это исправить, установите MouseFilter " +"в положение \"Stop\" или \"Pass\"." msgid "Alert!" msgstr "Внимание!" @@ -12788,8 +13426,11 @@ msgstr "Все файлы" msgid "Enable grid minimap." msgstr "Включить миникарту сетки." +msgid "Same as Layout Direction" +msgstr "То же, что и направление макета" + msgid "If \"Exp Edit\" is enabled, \"Min Value\" must be greater than 0." -msgstr "Если «Exp Edit» включён, «Min Value» должно быть больше 0." +msgstr "Если \"Exp Edit\" включён, \"Min Value\" должно быть больше 0." msgid "" "ScrollContainer is intended to work with a single child control.\n" @@ -12845,7 +13486,7 @@ msgid "" "'SamplerPort'." msgstr "" "Порт сэмплера подключен, но не используется. Рассмотрите возможность " -"изменения источника на «SamplerPort»." +"изменения источника на 'SamplerPort'." msgid "Invalid source for preview." msgstr "Неверный источник для предпросмотра." @@ -12865,17 +13506,26 @@ msgstr "Повторить" msgid "Invalid comparison function for that type." msgstr "Неверная функция сравнения для этого типа." +msgid "Varyings cannot be passed for the '%s' parameter." +msgstr "Для параметра '%s' не могут быть переданы вариации." + msgid "Invalid arguments for the built-in function: \"%s(%s)\"." -msgstr "Недопустимые аргументы для встроенной функции: «%s(%s)»." +msgstr "Недопустимые аргументы для встроенной функции: \"%s(%s)\"." msgid "Invalid assignment of '%s' to '%s'." -msgstr "Недопустимое присвоение «%s» в «%s»." +msgstr "Недопустимое присвоение '%s' в '%s'." msgid "Expected constant expression." msgstr "Ожидалось константное выражение." msgid "Varying may not be assigned in the '%s' function." -msgstr "Varying не может быть задано в функции «%s»." +msgstr "Varying не может быть задано в функции '%s'." + +msgid "" +"Varying with '%s' data type may only be assigned in the 'fragment' function." +msgstr "" +"Переменная с типом данных '%s' может быть назначена только в функции " +"'fragment'." msgid "Assignment to function." msgstr "Назначение функции." @@ -12887,28 +13537,49 @@ msgid "Constants cannot be modified." msgstr "Константы не могут быть изменены." msgid "Cannot convert from '%s' to '%s'." -msgstr "Невозможно преобразовать «%s» в «%s»." +msgstr "Невозможно преобразовать '%s' в '%s'." msgid "Expected ')' in expression." -msgstr "Ожидается «)» в выражении." +msgstr "Ожидается ')' в выражении." msgid "Void value not allowed in expression." msgstr "Void значение не разрешено в выражении." msgid "No matching constructor found for: '%s'." -msgstr "Не найден подходящий конструктор для: «%s»." +msgstr "Не найден подходящий конструктор для: '%s'." msgid "No matching function found for: '%s'." -msgstr "Не найдена подходящая функция для: «%s»." +msgstr "Не найдена подходящая функция для: '%s'." + +msgid "" +"Varying '%s' must be assigned in the 'vertex' or 'fragment' function first." +msgstr "" +"Varying '%s' должно быть сначала назначено в функции 'vertex' или 'fragment'." + +msgid "Varying '%s' cannot be passed for the '%s' parameter in that context." +msgstr "" +"Varying '%s' не может быть передано для параметра '%s' в данном контексте." + +msgid "" +"Varying with '%s' data type may only be used in the 'fragment' function." +msgstr "" +"Varying с типом данных '%s' может быть использовано только в 'fragment' " +"функции." + +msgid "Varying '%s' must be assigned in the 'fragment' function first." +msgstr "Varying '%s' должны быть сначала назначены в 'fragment' функции." + +msgid "Unexpected end of expression." +msgstr "Неожиданный конец выражения." msgid "Invalid arguments to unary operator '%s': %s." -msgstr "Недопустимые аргументы для унарного оператора «%s»: %s." +msgstr "Недопустимые аргументы для унарного оператора '%s': %s." msgid "Invalid argument to ternary operator: '%s'." -msgstr "Недопустимый аргумент для тернарного оператора: «%s»." +msgstr "Недопустимый аргумент для тернарного оператора: '%s'." msgid "Invalid arguments to operator '%s': '%s'." -msgstr "Недопустимые аргументы для оператора «%s»: «%s»." +msgstr "Недопустимые аргументы для оператора '%s': '%s'." msgid "Invalid variable type (samplers are not allowed)." msgstr "Недопустимый тип переменной (сэмплеры не разрешены)." @@ -12916,6 +13587,9 @@ msgstr "Недопустимый тип переменной (сэмплеры msgid "Duplicated case label: %d." msgstr "Дублируется метка варианта: %d." +msgid "Use of '%s' is not allowed here." +msgstr "Использование '%s' здесь недопустимо." + msgid "Invalid shader type. Valid types are: %s" msgstr "Неверный тип шейдера. Допустимые типы: %s" @@ -12923,7 +13597,13 @@ msgid "Expected an identifier for render mode." msgstr "Ожидается идентификатор режима рендеринга." msgid "Duplicated render mode: '%s'." -msgstr "Дублируется режим рендеринга: «%s»." +msgstr "Дублируется режим рендеринга: '%s'." + +msgid "Invalid render mode: '%s'." +msgstr "Неверный режим рендеринга: '%s'." + +msgid "Unexpected token: '%s'." +msgstr "Неожиданный токен: '%s'." msgid "Nested structs are not allowed." msgstr "Вложенные структуры не допускаются." @@ -12937,17 +13617,26 @@ msgstr "Ожидался идентификатор или '['." msgid "Empty structs are not allowed." msgstr "Пустые структуры не допускаются." +msgid "Varyings cannot be used in '%s' shaders." +msgstr "Varyings не могут использоваться в шейдерах '%s'." + msgid "The '%s' data type is not supported for uniforms." msgstr "Тип данных '%s' не поддерживается униформами." +msgid "The '%s' data type is not allowed here." +msgstr "Тип данных '%s' здесь недопустим." + msgid "Duplicated hint: '%s'." -msgstr "Дублируется подсказка: «%s»." +msgstr "Дублируется подсказка: '%s'." msgid "Duplicated filter mode: '%s'." -msgstr "Дублируется режим фильтра: «%s»." +msgstr "Дублируется режим фильтра: '%s'." msgid "Duplicated repeat mode: '%s'." -msgstr "Дублируется режим повтора «%s»." +msgstr "Дублируется режим повтора '%s'." + +msgid "Can't convert constant to '%s'." +msgstr "Невозможно преобразовать константу в '%s'." msgid "Invalid constant type (samplers are not allowed)." msgstr "Недопустимый тип константы (сэмплеры не разрешены)." @@ -12955,14 +13644,23 @@ msgstr "Недопустимый тип константы (сэмплеры н msgid "Invalid function type (samplers are not allowed)." msgstr "Недопустимый тип функции (сэмплеры не разрешены)." +msgid "Void type not allowed as argument." +msgstr "Тип Void не допускается в качестве аргумента." + +msgid "Function '%s' expects no arguments." +msgstr "Функция '%s' не принимает аргументов." + msgid "Expected a '%s'." -msgstr "Ожидался «%s»." +msgstr "Ожидался '%s'." msgid "Expected a '%s' or '%s'." -msgstr "Ожидался «%s» или «%s»." +msgstr "Ожидался '%s' или '%s'." + +msgid "Expected a '%s' after '%s'." +msgstr "Ожидается '%s' после '%s'." msgid "Redefinition of '%s'." -msgstr "Переопределение «%s»." +msgstr "Переопределение '%s'." msgid "Invalid argument name." msgstr "Недопустимое имя аргумента." diff --git a/editor/translations/editor/sk.po b/editor/translations/editor/sk.po index 1845266abd..42c9affbb1 100644 --- a/editor/translations/editor/sk.po +++ b/editor/translations/editor/sk.po @@ -3053,6 +3053,9 @@ msgstr "" "Všetky predvoľby musia mať definovanú exportnú cestu, aby fungovala funkcia " "\"Exportovať všetko\"." +msgid "Resources to export:" +msgstr "Zdroje k exportu:" + msgid "Delete preset '%s'?" msgstr "Vymazať predvoľbu '%s'?" @@ -3108,9 +3111,6 @@ msgstr "Exportovať ako dedikovaný server" msgid "Export Mode:" msgstr "Mód exportu:" -msgid "Resources to export:" -msgstr "Zdroje k exportu:" - msgid "Keep" msgstr "Zachovať" diff --git a/editor/translations/editor/th.po b/editor/translations/editor/th.po index c846ed8ff9..cb35ade16f 100644 --- a/editor/translations/editor/th.po +++ b/editor/translations/editor/th.po @@ -15,13 +15,14 @@ # Kanda Ninthfish <akkhaporn@gmail.com>, 2022. # Absurdnoobman <jakkalin91@gmail.com>, 2022. # Nuttapong Nut <nuttapong.510123@gmail.com>, 2023. +# LadsForTea <jajasamag@gmail.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-03-06 00:25+0000\n" -"Last-Translator: SysError_ <ictsanook@hotmail.com>\n" +"PO-Revision-Date: 2023-04-28 14:50+0000\n" +"Last-Translator: LadsForTea <jajasamag@gmail.com>\n" "Language-Team: Thai <https://hosted.weblate.org/projects/godot-engine/godot/" "th/>\n" "Language: th\n" @@ -29,7 +30,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.16.2-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Unset" msgstr "ยกเลิกการตั้งค่า" @@ -476,7 +477,7 @@ msgid "Show Built-in Actions" msgstr "แสดง Action ที่ติดตัวมา" msgid "Action" -msgstr "Action" +msgstr "การกระทำ" msgid "Deadzone" msgstr "Deadzone" @@ -804,6 +805,12 @@ msgstr "ที่อยู่แทร็กผิดพลาด ไม่ส msgid "Add Method Track Key" msgstr "เพิ่มคีย์แทร็กเมธอด" +msgid "Rotation" +msgstr "ช่วงองศา" + +msgid "Scale" +msgstr "ขนาด" + msgid "Methods" msgstr "วิธีการ" @@ -1567,6 +1574,9 @@ msgstr "ชื่อโนด:" msgid "Navigation" msgstr "ตัวนำทาง" +msgid "Vulkan" +msgstr "Vulkan" + msgid "File '%s' format is invalid, import aborted." msgstr "นามสกุลของไฟล์ '%s' ผิดพลาด ยกเลิกการนำเข้า" @@ -1874,12 +1884,21 @@ msgstr "คุณสมบัติ" msgid "default:" msgstr "ค่าเริ่มต้น:" +msgid "Constructors" +msgstr "ตัวสร้าง" + +msgid "Operators" +msgstr "ตัวดำเนินการ" + msgid "Theme Properties" msgstr "คุณสมบัติธีม" msgid "Constants" msgstr "ค่าคงที่" +msgid "Fonts" +msgstr "ฟอนต์" + msgid "Enumerations" msgstr "ค่าคงที่แบบมีความหมาย" @@ -1894,9 +1913,15 @@ msgid "" "[color=$color][url=$url]contributing one[/url][/color]!" msgstr "คุณสมบัตินี้ยังไม่มีคำอธิบาย โปรดช่วย[color=$color][url=$url]แก้ไข[/url][/color]!" +msgid "Constructor Descriptions" +msgstr "รายละเอียดของตัวสร้าง" + msgid "Method Descriptions" msgstr "รายละเอียดเมท็อด" +msgid "Operator Descriptions" +msgstr "รายละเอียดของตัวนำเนินการ" + msgid "%d match." msgstr "จับคู่ %d" @@ -2605,6 +2630,9 @@ msgstr "เขียนโปรแกรมในเมท็อด _run()" msgid "There is an edited scene already." msgstr "มีฉากที่แก้ไขอยู่แล้ว" +msgid "Common" +msgstr "ทั่วไป" + msgid "Editor Settings" msgstr "การตั้งค่าตัวแก้ไข" @@ -2725,6 +2753,9 @@ msgstr "เทมเพลตการส่งออก Godot" msgid "Runnable" msgstr "สามารถรันได้" +msgid "Resources to export:" +msgstr "รีซอร์สที่จะส่งออก:" + msgid "Delete preset '%s'?" msgstr "ลบพรีเซ็ต '%s'?" @@ -2771,9 +2802,6 @@ msgstr "ส่งออกรีซอร์สที่เลือก (รว msgid "Export Mode:" msgstr "วิธีการส่งออก:" -msgid "Resources to export:" -msgstr "รีซอร์สที่จะส่งออก:" - msgid "Keep" msgstr "เก็บ" @@ -3020,6 +3048,12 @@ msgstr "ผิดพลาดขณะรันสคริปต์หลัง msgid "Saving..." msgstr "กำลังบันทึก..." +msgid "2D" +msgstr "2 มิติ" + +msgid "3D" +msgstr "3 มิติ" + msgid "Select Importer" msgstr "เลือกตัวนำเข้า" @@ -5462,6 +5496,12 @@ msgstr "พลิกแนวนอน" msgid "Flip Vertically" msgstr "พลิกแนวตั้ง" +msgid "Rendering" +msgstr "การเรนเดอร์" + +msgid "Physics" +msgstr "ฟิสิกส์" + msgid "Yes" msgstr "ใช่" @@ -6746,6 +6786,12 @@ msgstr "RPC กำลังมา" msgid "Outgoing RPC" msgstr "RPC ขาออก" +msgid "Config" +msgstr "ตั้งค่า" + +msgid "Size" +msgstr "ขนาด" + msgid "Network Profiler" msgstr "โปรไฟล์เน็ตเวิร์ก" diff --git a/editor/translations/editor/tr.po b/editor/translations/editor/tr.po index 3f26725829..32789089e5 100644 --- a/editor/translations/editor/tr.po +++ b/editor/translations/editor/tr.po @@ -3215,6 +3215,9 @@ msgstr "Koşturulabilir" msgid "Export the project for all the presets defined." msgstr "Tanımlanan tüm ön ayarlar için projeyi dışa aktarın." +msgid "Resources to export:" +msgstr "Dışa aktarılacak kaynaklar:" + msgid "Delete preset '%s'?" msgstr "'%s' önayarı silinsin mi?" @@ -3262,9 +3265,6 @@ msgstr "Seçilen kaynakları dışa aktar (bağımlılıklar dahil)" msgid "Export Mode:" msgstr "Dışa Aktarma Biçimi:" -msgid "Resources to export:" -msgstr "Dışa aktarılacak kaynaklar:" - msgid "Keep" msgstr "Tut" diff --git a/editor/translations/editor/uk.po b/editor/translations/editor/uk.po index 8c06e66014..fe0febc336 100644 --- a/editor/translations/editor/uk.po +++ b/editor/translations/editor/uk.po @@ -4324,6 +4324,9 @@ msgstr "" "Щоб можна було скористатися пунктом «Експортувати усе», має бути визначено " "шлях для експортування для усіх наборів." +msgid "Resources to export:" +msgstr "Експортовані ресурси:" + msgid "Delete preset '%s'?" msgstr "Вилучити набір «%s»?" @@ -4379,9 +4382,6 @@ msgstr "Експортувати як виділений сервер" msgid "Export Mode:" msgstr "Режим експортування:" -msgid "Resources to export:" -msgstr "Експортовані ресурси:" - msgid "Keep" msgstr "Не змінювати" diff --git a/editor/translations/editor/vi.po b/editor/translations/editor/vi.po index caabb4f114..e9f6ea367a 100644 --- a/editor/translations/editor/vi.po +++ b/editor/translations/editor/vi.po @@ -24,13 +24,14 @@ # MInhTriet <luckyblockblack@gmail.com>, 2022. # Nhật Huy <nhat.huy.7996@gmail.com>, 2022. # Trần Trọng Hiếu <anhdaden50@gmail.com>, 2023. +# Trần Văn Luyện <lightlyn203@gmail.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor interface\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-03-03 02:52+0000\n" -"Last-Translator: Trần Trọng Hiếu <anhdaden50@gmail.com>\n" +"PO-Revision-Date: 2023-05-03 11:49+0000\n" +"Last-Translator: Trần Văn Luyện <lightlyn203@gmail.com>\n" "Language-Team: Vietnamese <https://hosted.weblate.org/projects/godot-engine/" "godot/vi/>\n" "Language: vi\n" @@ -38,7 +39,10 @@ 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.16.2-dev\n" +"X-Generator: Weblate 4.18-dev\n" + +msgid "Unset" +msgstr "Hủy bỏ" msgid "Physical" msgstr "Vật Lí" @@ -52,6 +56,15 @@ msgstr "Nút Chuột Phải" msgid "Middle Mouse Button" msgstr "Nút Chuột Giữa" +msgid "Mouse Wheel Up" +msgstr "Lăn Lên" + +msgid "Mouse Thumb Button 1" +msgstr "Nút lật trang ngón cái 1" + +msgid "Mouse Thumb Button 2" +msgstr "Nút lật trang ngón cái 2" + msgid "Button" msgstr "Button (nút, phím)" @@ -359,6 +372,9 @@ msgstr "Vị trí" msgid "Scale" msgstr "Tỷ lệ" +msgid "BlendShape" +msgstr "Làm mịn các dạng hình" + msgid "Methods" msgstr "Phương thức" @@ -1392,6 +1408,9 @@ msgstr "" msgid "(Re)Importing Assets" msgstr "Nhập lại tài nguyên" +msgid "Experimental" +msgstr "Tính thử nghiệm" + msgid "Top" msgstr "Trên đầu" @@ -1422,6 +1441,12 @@ msgstr "ghi đè %s:" msgid "default:" msgstr "mặc định:" +msgid "Constructors" +msgstr "Hàm tạo" + +msgid "Operators" +msgstr "Các toán tử" + msgid "Theme Properties" msgstr "Thuộc tính Chủ đề" @@ -1429,7 +1454,7 @@ msgid "Colors" msgstr "Màu" msgid "Constants" -msgstr "Hằng" +msgstr "Các hằng số" msgid "Fonts" msgstr "Phông chữ" @@ -1444,10 +1469,10 @@ msgid "Styles" msgstr "Kiểu dáng" msgid "Enumerations" -msgstr "Liệt kê" +msgstr "Tập hợp hằng số" msgid "Property Descriptions" -msgstr "Mô tả huộc tính" +msgstr "Các mô tả thuộc tính" msgid "(value)" msgstr "(giá trị)" @@ -1459,8 +1484,14 @@ msgstr "" "Hiện thuộc tính này chưa được mô tả. Các bạn [color=$color][url=$url]đóng " "góp[/url][/color] giúp chúng mình nha!" +msgid "Constructor Descriptions" +msgstr "Các mô tả hàm tạo" + msgid "Method Descriptions" -msgstr "Mô tả phương thức" +msgstr "Các mô tả phương thức" + +msgid "Operator Descriptions" +msgstr "Các mô tả toán tử" msgid "%d match." msgstr "%d khớp." @@ -1930,7 +1961,7 @@ msgid "Save Scene" msgstr "Lưu Cảnh" msgid "MeshLibrary..." -msgstr "MeshLibrary..." +msgstr "Thư viện hình lưới..." msgid "Close Scene" msgstr "Đóng Cảnh" @@ -2030,7 +2061,7 @@ msgid "Update Continuously" msgstr "Cập nhật Liên tục" msgid "Hide Update Spinner" -msgstr "Ẩn cái xoay xoay cập nhật" +msgstr "Ẩn cập nhật spinner" msgid "FileSystem" msgstr "Hệ thống tệp tin" @@ -2408,6 +2439,9 @@ msgstr "" msgid "Runnable" msgstr "Chạy được" +msgid "Resources to export:" +msgstr "Tài nguyên để xuất:" + msgid "Release" msgstr "Phát hành" @@ -2441,9 +2475,6 @@ msgstr "Xuất tài nguyên đã chọn (cùng các phần phụ thuộc)" msgid "Export Mode:" msgstr "Chế độ xuất:" -msgid "Resources to export:" -msgstr "Tài nguyên để xuất:" - msgid "Keep" msgstr "Giữ" @@ -3573,6 +3604,9 @@ msgstr "Pixel ở Viền cạnh Có hướng" msgid "Create Emission Points From Node" msgstr "Tạo điểm phát xạ từ nút" +msgid "Flat 1" +msgstr "Flat 1" + msgid "Ease Out" msgstr "Trườn ra" @@ -3666,6 +3700,9 @@ msgstr "" msgid "Synchronize Script Changes" msgstr "Đồng bộ hóa thay đổi trong tập lệnh" +msgid " - Variation" +msgstr " - Biến" + msgid "Convert to CPUParticles2D" msgstr "Chuyển thành CPUParticles2D" @@ -3829,9 +3866,18 @@ msgstr "Biến đổi theo trục Z." msgid "View Plane Transform." msgstr "Xem Transform của Plane." +msgid "Keying is disabled (no key inserted)." +msgstr "Phím đã bị tắt (không có phím nào được chèn)." + msgid "Animation Key Inserted." msgstr "Đã chèn khóa hoạt ảnh." +msgid "Size: %s (%.1fMP)\n" +msgstr "Kích thước: %s (%.1fMP)\n" + +msgid "Objects: %d\n" +msgstr "Các đối tượng: %d\n" + msgid "None" msgstr "Không có" @@ -4388,7 +4434,7 @@ msgid "Create Rest Pose from Bones" msgstr "Tạo tư thế nghỉ từ Xương" msgid "Skeleton2D" -msgstr "Skeleton2D" +msgstr "Khung xương 2D" msgid "Create physical bones" msgstr "Tạo xương vật lý" @@ -4502,7 +4548,7 @@ msgid "Create Frames from Sprite Sheet" msgstr "Tạo Khung hình từ Sprite Sheet" msgid "SpriteFrames" -msgstr "SpriteFrames" +msgstr "Khung hình sprite" msgid "Set Margin" msgstr "Đặt Lề" @@ -4580,7 +4626,7 @@ msgid "Yes" msgstr "Có" msgid "TileSet" -msgstr "TileSet" +msgstr "Tập gạch" msgid "Error" msgstr "Lỗi" @@ -4697,10 +4743,10 @@ msgid "Create Shader Node" msgstr "Tạo nút Shader" msgid "Color function." -msgstr "hàm màu" +msgstr "Hàm Màu." msgid "Grayscale function." -msgstr "hàm đen trắng" +msgstr "Hàm đen trắng." msgid "Converts HSV vector to RGB equivalent." msgstr "Chuyển véc tơ màu HSV sang RGB tương ứng." @@ -4946,6 +4992,9 @@ msgstr "" msgid "Returns the vector that points in the direction of refraction." msgstr "Trả về véc tơ chỉ theo hướng khúc xạ." +msgid "Bake VoxelGI" +msgstr "Tính toán và lưu trữ kết quả ánh sáng và bóng đổ trên khối Voxel" + msgid "The path specified doesn't exist." msgstr "Đường dẫn đã cho không tồn tại." @@ -5127,6 +5176,9 @@ msgstr "Ánh xạ đầu vào" msgid "Localization" msgstr "Bản địa hoá" +msgid "Autoload" +msgstr "Tự động tải" + msgid "Plugins" msgstr "Tiện ích" @@ -5651,6 +5703,13 @@ msgstr "Tên tệp không hợp lệ! Android App Bundle cần đuôi *.aab ở msgid "Invalid filename! Android APK requires the *.apk extension." msgstr "Tên tệp không hợp lệ! Android APK cần đuôi *.apk ở cuối." +msgid "" +"Android build version mismatch: Template installed: %s, Godot version: %s. " +"Please reinstall Android build template from 'Project' menu." +msgstr "" +"Phiên bản dựng Android không khớp: Bản mẫu được cài đặt: %s, Phiên bản " +"Godot: %s. Vui lòng cài đặt lại bản mẫu Android từ bảng chọn 'Dự Án'." + msgid "Building Android Project (gradle)" msgstr "Đang dựng dự án Android (gradle)" diff --git a/editor/translations/editor/zh_CN.po b/editor/translations/editor/zh_CN.po index 3fb9c6d355..195dcdef58 100644 --- a/editor/translations/editor/zh_CN.po +++ b/editor/translations/editor/zh_CN.po @@ -90,13 +90,14 @@ # 赵不一 <279631638@qq.com>, 2023. # WangYi13 <wyi13@outlook.com>, 2023. # matrixant <yuan545@hotmail.com>, 2023. +# GarliCat <phoenixkaze@live.com>, 2023. msgid "" 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: 2023-04-08 06:27+0000\n" -"Last-Translator: Haoyu Qiu <timothyqiu32@gmail.com>\n" +"PO-Revision-Date: 2023-04-28 14:50+0000\n" +"Last-Translator: GarliCat <phoenixkaze@live.com>\n" "Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/" "godot-engine/godot/zh_Hans/>\n" "Language: zh_CN\n" @@ -104,7 +105,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.17-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Unset" msgstr "未设置" @@ -2623,7 +2624,7 @@ msgid "property:" msgstr "属性:" msgid "Constructors" -msgstr "构造函数" +msgstr "构造器" msgid "Operators" msgstr "运算符" @@ -4379,6 +4380,9 @@ msgstr "为定义的每一个预设导出该项目。" msgid "All presets must have an export path defined for Export All to work." msgstr "所有预设必须都定义导出路径,才能进行“全部导出”。" +msgid "Resources to export:" +msgstr "导出的资源:" + msgid "Delete preset '%s'?" msgstr "是否删除预设 “%s”?" @@ -4434,9 +4438,6 @@ msgstr "导出为专用服务器" msgid "Export Mode:" msgstr "导出模式:" -msgid "Resources to export:" -msgstr "导出的资源:" - msgid "" "\"Strip Visuals\" will replace the following resources with placeholders:" msgstr "“剥离视觉内容”将用占位符取代以下资源:" diff --git a/editor/translations/editor/zh_TW.po b/editor/translations/editor/zh_TW.po index 2da2e9de65..f77b86bf7e 100644 --- a/editor/translations/editor/zh_TW.po +++ b/editor/translations/editor/zh_TW.po @@ -3184,6 +3184,9 @@ msgstr "使用每個已定義的預設設定來匯出該專案。" msgid "All presets must have an export path defined for Export All to work." msgstr "所有預設設定都必須定義好匯出路徑,才可使用 [匯出全部] 功能。" +msgid "Resources to export:" +msgstr "匯出的資源:" + msgid "Delete preset '%s'?" msgstr "確定要刪除預設設定「%s」?" @@ -3230,9 +3233,6 @@ msgstr "匯出所選資源(與其所有相依性)" msgid "Export Mode:" msgstr "匯出模式:" -msgid "Resources to export:" -msgstr "匯出的資源:" - msgid "Keep" msgstr "保持" diff --git a/editor/translations/properties/de.po b/editor/translations/properties/de.po index 599bf6d00c..3264578500 100644 --- a/editor/translations/properties/de.po +++ b/editor/translations/properties/de.po @@ -75,7 +75,7 @@ # Zae Chao <zaevi@live.com>, 2021. # Tim <tim14speckenwirth@gmail.com>, 2021. # Antonio Noack <corperateraider@gmail.com>, 2022. -# <artism90@googlemail.com>, 2022. +# <artism90@googlemail.com>, 2022, 2023. # Coxcopi70f00b67b61542fe <hn_vogel@gmx.net>, 2022. # Andreas <self@andreasbresser.de>, 2022. # ARez <dark.gaming@fantasymail.de>, 2022. @@ -90,13 +90,14 @@ # Least Significant Bite <leastsignificantbite@proton.me>, 2023. # Benno <bennocrafterdev@googlemail.com>, 2023. # Janosch Lion <janorico@posteo.de>, 2023. +# "Dimitri A." <dimitripilot3@gmail.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine properties\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-13 17:34+0000\n" -"Last-Translator: Janosch Lion <janorico@posteo.de>\n" +"PO-Revision-Date: 2023-05-11 05:49+0000\n" +"Last-Translator: <artism90@googlemail.com>\n" "Language-Team: German <https://hosted.weblate.org/projects/godot-engine/" "godot-properties/de/>\n" "Language: de\n" @@ -104,7 +105,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.17-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Application" msgstr "Anwendung" @@ -149,7 +150,7 @@ msgid "Main Loop Type" msgstr "Typ der Hauptschleife" msgid "Auto Accept Quit" -msgstr "Automatisches Beendenakzeptieren" +msgstr "Automatisches Beenden akzeptieren" msgid "Display" msgstr "Anzeige" @@ -686,7 +687,7 @@ msgid "Keying" msgstr "Schlüsselwerte erzeugen" msgid "Interface" -msgstr "Schnittstelle" +msgstr "Oberfläche" msgid "Show Update Spinner" msgstr "Aktualisierungsrad anzeigen" @@ -934,6 +935,9 @@ msgstr "Leerzeichen anzeigen" msgid "Line Spacing" msgstr "Zeilenzwischenraum" +msgid "Behavior" +msgstr "Verhalten" + msgid "Navigation" msgstr "Navigation" @@ -1453,6 +1457,9 @@ msgstr "Überabtastung" msgid "Metadata Overrides" msgstr "Metadaten-Überschreibungen" +msgid "Language Support" +msgstr "Sprachunterstützung" + msgid "Fallbacks" msgstr "Fallbacks" @@ -2048,10 +2055,10 @@ msgid "Exclude Addons" msgstr "Addons ausschließen" msgid "Language Server" -msgstr "Language-Server" +msgstr "Language Server" msgid "Enable Smart Resolve" -msgstr "Schlaues Auflösen aktivieren" +msgstr "Intelligentes Auflösen aktivieren" msgid "Use Thread" msgstr "Thread verwenden" @@ -4399,6 +4406,12 @@ msgstr "Bleibe außerhalb gedrückt" msgid "Button Group" msgstr "Knopf-Gruppe" +msgid "Text Behavior" +msgstr "Textverhalten" + +msgid "Text Overrun Behavior" +msgstr "Textüberlaufverhalten" + msgid "Clip Text" msgstr "Ausschnitttext" diff --git a/editor/translations/properties/es.po b/editor/translations/properties/es.po index 5f60a8e0d4..3613f3deea 100644 --- a/editor/translations/properties/es.po +++ b/editor/translations/properties/es.po @@ -93,13 +93,14 @@ # Victor Stancioiu <victorstancioiu@gmail.com>, 2022, 2023. # Daniel Miranda <danmiranda@gmail.com>, 2023. # Sebas Echazú <sebastianechazu@outlook.com>, 2023. +# Pedro Zebenzui Ortega Diaz <pipo.tf@gmail.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine properties\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-08 06:27+0000\n" -"Last-Translator: Sebas Echazú <sebastianechazu@outlook.com>\n" +"PO-Revision-Date: 2023-04-27 10:18+0000\n" +"Last-Translator: Pedro Zebenzui Ortega Diaz <pipo.tf@gmail.com>\n" "Language-Team: Spanish <https://hosted.weblate.org/projects/godot-engine/" "godot-properties/es/>\n" "Language: es\n" @@ -107,7 +108,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.17-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Application" msgstr "Aplicación" @@ -5311,6 +5312,9 @@ msgstr "Influencia de la Luz" msgid "AO Channel Affect" msgstr "Influencia del Canal AO" +msgid "SSIL" +msgstr "SSIL" + msgid "Glow" msgstr "Brillo" diff --git a/editor/translations/properties/fr.po b/editor/translations/properties/fr.po index a646aeb211..b70b573588 100644 --- a/editor/translations/properties/fr.po +++ b/editor/translations/properties/fr.po @@ -117,7 +117,7 @@ msgstr "" "Project-Id-Version: Godot Engine properties\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-12 11:49+0000\n" +"PO-Revision-Date: 2023-05-03 11:49+0000\n" "Last-Translator: \"Dimitri A.\" <dimitripilot3@gmail.com>\n" "Language-Team: French <https://hosted.weblate.org/projects/godot-engine/" "godot-properties/fr/>\n" @@ -126,7 +126,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.17-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Application" msgstr "Application" @@ -155,20 +155,26 @@ msgstr "Désactiver stdout" msgid "Disable stderr" msgstr "Désactiver stderr" +msgid "Use Hidden Project Data Directory" +msgstr "Utiliser un répertoire caché pour les données du projet" + msgid "Use Custom User Dir" msgstr "Utiliser un répertoire utilisateur personnalisé" msgid "Custom User Dir Name" msgstr "Nom du répertoire utilisateur personnalisé" +msgid "Project Settings Override" +msgstr "Redéfinition des paramètres du projet" + msgid "Main Loop Type" -msgstr "Type de boucle principale" +msgstr "Type de la boucle principale" msgid "Auto Accept Quit" msgstr "Accepter automatiquement la fermeture" msgid "Quit on Go Back" -msgstr "Quitter avec la touche Retour" +msgstr "Fermer avec la touche Retour" msgid "Display" msgstr "Affichage" @@ -209,6 +215,9 @@ msgstr "Toujours au-dessus" msgid "Transparent" msgstr "Transparent" +msgid "Extend to Title" +msgstr "Étendu à la barre de titre" + msgid "No Focus" msgstr "Sans focus" @@ -237,10 +246,10 @@ msgid "General" msgstr "Général" msgid "2D Panning Strength" -msgstr "Intensité du panoramique audio 2D" +msgstr "Intensité du panoramique audio en 2D" msgid "3D Panning Strength" -msgstr "Intensité du panoramique audio 3D" +msgstr "Intensité du panoramique audio en 3D" msgid "Editor" msgstr "Éditeur" @@ -249,7 +258,7 @@ msgid "Script" msgstr "Script" msgid "Search in File Extensions" -msgstr "Rechercher dans les extensions de fichier" +msgstr "Recherche dans les fichiers : extensions" msgid "Subwindows" msgstr "Sous-fenêtres" @@ -341,6 +350,9 @@ msgstr "GUI" msgid "Timers" msgstr "Chronomètres" +msgid "Incremental Search Max Interval Msec" +msgstr "Délai max. de la recherche incrémentale (ms)" + msgid "Common" msgstr "Commun" @@ -792,7 +804,7 @@ msgid "Update Continuously" msgstr "Mise à jour continue" msgid "Localize Settings" -msgstr "Traduction des paramètres" +msgstr "Traduire les paramètres" msgid "Scene Tabs" msgstr "Onglets de scène" @@ -1620,10 +1632,10 @@ msgid "Zoom" msgstr "Zoomer" msgid "Custom Template" -msgstr "Modèle Personnalisé" +msgstr "Modèle personnalisé" msgid "Release" -msgstr "Publication (release)" +msgstr "Publication" msgid "Binary Format" msgstr "Format Binaire" @@ -2280,19 +2292,22 @@ msgid "SSH Private Key Path" msgstr "Chemin de la clé privée SSH" msgid "Main Run Args" -msgstr "Paramètres d'exécution du programme principal" +msgstr "Arguments de démarrage du programme principal" + +msgid "Templates Search Path" +msgstr "Chemin de recherche des modèles" msgid "Naming" msgstr "Nommage" msgid "Default Signal Callback Name" -msgstr "Nom de rappel de signal par défaut" +msgstr "Nom par défaut d'un rappel de signal" msgid "Default Signal Callback to Self Name" -msgstr "Nom de rappel de signal à soi-même par défaut" +msgstr "Nom par défaut d'un rappel de signal à soi-même (self)" msgid "Scene Name Casing" -msgstr "Notation du nom de la scène" +msgstr "Notation (casse) d'un nom de scène" msgid "Reimport Missing Imported Files" msgstr "Réimporter les fichiers importés manquants" @@ -3207,91 +3222,106 @@ msgid "Icons" msgstr "Icônes" msgid "iPhone 120 X 120" -msgstr "iPhone 120 X 120" +msgstr "iPhone (120 x 120)" msgid "iPhone 180 X 180" -msgstr "iPhone 180 X 180" +msgstr "iPhone (180 x 180)" msgid "iPad 76 X 76" -msgstr "iPad 76 X 76" +msgstr "iPad (76 x 76)" msgid "iPad 152 X 152" -msgstr "iPad 152 X 152" +msgstr "iPad (152 x 152)" msgid "iPad 167 X 167" -msgstr "iPad 167 X 167" +msgstr "iPad (167 x 167)" msgid "App Store 1024 X 1024" -msgstr "App Store 1024 X 1024" +msgstr "App Store (1024 x 1024)" msgid "Spotlight 40 X 40" -msgstr "Projecteur 40 X 40" +msgstr "Spotlight (40 x 40)" msgid "Spotlight 80 X 80" -msgstr "Projecteur 80 X 80" +msgstr "Spotlight (80 x 80)" + +msgid "Settings 58 X 58" +msgstr "Réglages (58 x 58)" + +msgid "Settings 87 X 87" +msgstr "Réglages (87 x 87)" + +msgid "Notification 40 X 40" +msgstr "Notification (40 x 40)" + +msgid "Notification 60 X 60" +msgstr "Notification (60 x 60)" msgid "Landscape Launch Screens" msgstr "Écrans de lancement en mode paysage" msgid "iPhone 2436 X 1125" -msgstr "iPhone 2436 X 1125" +msgstr "iPhone (2436 x 1125)" msgid "iPhone 2208 X 1242" -msgstr "iPhone 2208 X 1242" +msgstr "iPhone (2208 x 1242)" msgid "iPad 1024 X 768" -msgstr "iPad 1024 X 768" +msgstr "iPad (1024 x 768)" msgid "iPad 2048 X 1536" -msgstr "iPad 2048 X 1536" +msgstr "iPad (2048 x 1536)" msgid "Portrait Launch Screens" msgstr "Écrans de lancement en mode portrait" msgid "iPhone 640 X 960" -msgstr "iPhone 640 X 960" +msgstr "iPhone (640 x 960)" msgid "iPhone 640 X 1136" -msgstr "iPhone 640 X 1136" +msgstr "iPhone (640 x 1136)" msgid "iPhone 750 X 1334" -msgstr "iPhone 750 X 1334" +msgstr "iPhone (750 x 1334)" msgid "iPhone 1125 X 2436" -msgstr "iPhone 1125 X 2436" +msgstr "iPhone (1125 x 2436)" msgid "iPad 768 X 1024" -msgstr "iPad 768 X 1024" +msgstr "iPad (768 x 1024)" msgid "iPad 1536 X 2048" -msgstr "iPad 1536 X 2048" +msgstr "iPad (1536 x 2048)" msgid "iPhone 1242 X 2208" -msgstr "iPhone 1242 X 2208" +msgstr "iPhone (1242 x 2208)" msgid "App Store Team ID" -msgstr "ID de groupe de l'App Store" +msgstr "ID d'organisation (Team ID) dans l'App Store" msgid "Provisioning Profile UUID Debug" -msgstr "UUID de provisionnement de profils en débogage" +msgstr "Débogage : UUID du profil de provisionnement" msgid "Code Sign Identity Debug" -msgstr "Identité de signature de code en débogage" +msgstr "Débogage : Identité de signature du code" msgid "Export Method Debug" -msgstr "Méthode d'exportation en débogage" +msgstr "Débogage : Méthode d'exportation" msgid "Provisioning Profile UUID Release" -msgstr "UUID de provisionnement de profils en publication" +msgstr "Publication : UUID du profil de provisionnement" msgid "Code Sign Identity Release" -msgstr "Identité de signature de code en publication" +msgstr "Publication : Identité de signature du code" msgid "Export Method Release" -msgstr "Méthode d'exportation en publication" +msgstr "Publication : Méthode d'exportation" msgid "Targeted Device Family" -msgstr "Famille de système ciblée" +msgstr "Famille(s) d'appareils cibles" + +msgid "Bundle Identifier" +msgstr "Identifiant du bundle" msgid "Signature" msgstr "Signature" @@ -3299,44 +3329,59 @@ msgstr "Signature" msgid "Short Version" msgstr "Version courte" +msgid "Icon Interpolation" +msgstr "Interpolation des icônes" + +msgid "Launch Screens Interpolation" +msgstr "Interpolation des écrans de lancement" + msgid "Capabilities" -msgstr "Capacités" +msgstr "Fonctionnalités" msgid "Access Wi-Fi" msgstr "Accès Wi-Fi" msgid "Push Notifications" -msgstr "Notifications Push" +msgstr "Notifications push (poussées)" msgid "User Data" -msgstr "Données Utilisateur" +msgstr "Données utilisateur" msgid "Accessible From Files App" -msgstr "Accessible depuis l'application Files" +msgstr "Accessibles via l'application Fichiers" msgid "Accessible From iTunes Sharing" -msgstr "Accessible depuis le partage iTunes" +msgstr "Accessibles via le partage iTunes" msgid "Privacy" msgstr "Confidentialité" msgid "Camera Usage Description" -msgstr "Description d'utilisation de la caméra" +msgstr "Description de l'accès de la caméra" + +msgid "Camera Usage Description Localized" +msgstr "Description (localisée) de l'accès à la caméra" msgid "Microphone Usage Description" -msgstr "Description d'utilisation du microphone" +msgstr "Description de l'accès au microphone" + +msgid "Microphone Usage Description Localized" +msgstr "Description (localisée) de l'accès au microphone" msgid "Photolibrary Usage Description" -msgstr "Description d'utilisation de la bibliothèque d'image" +msgstr "Description de l'accès à la photothèque" + +msgid "Photolibrary Usage Description Localized" +msgstr "Description (localisée) de l'accès à la photothèque" msgid "Storyboard" -msgstr "Story-board" +msgstr "Storyboard" msgid "Use Launch Screen Storyboard" -msgstr "Utiliser le storyboard de l'écran de lancement" +msgstr "Utiliser un storyboard pour l'écran de lancement" msgid "Image Scale Mode" -msgstr "Mode de mise à l'échelle d'image" +msgstr "Mode de mise à l'échelle des images" msgid "Custom Image @2x" msgstr "Image personnalisée @2x" @@ -5393,6 +5438,12 @@ msgstr "Mode de Transfert" msgid "Transfer Channel" msgstr "Canal de transfert" +msgid "Node Name Num Separator" +msgstr "Séparateur entre nom de nœud et numéro" + +msgid "Node Name Casing" +msgstr "Notation (casse) d'un nom de nœud" + msgid "Editor Description" msgstr "Description de l'Editeur" @@ -5532,7 +5583,7 @@ msgid "Format" msgstr "Format" msgid "Mix Rate" -msgstr "Taux de mélange" +msgstr "Taux d'échantillonnage du mixage" msgid "Stereo" msgstr "Stéréo" @@ -6611,17 +6662,35 @@ msgstr "Temps de retrait (ms)" msgid "Surround" msgstr "Surround" +msgid "Enable Input" +msgstr "Activer l'entrée audio" + msgid "Output Latency" msgstr "Latence de sortie" msgid "Channel Disable Threshold dB" -msgstr "Désactiver le seuil de dB du canal" +msgstr "Seuil (dB) de désactivation d'un canal" + +msgid "Channel Disable Time" +msgstr "Délai avant désactivation d'un canal" + +msgid "Video" +msgstr "Vidéo" msgid "Video Delay Compensation (ms)" msgstr "Compensation de retard vidéo (ms)" msgid "Bus Count" -msgstr "Nombre de ports" +msgstr "Nombre de bus" + +msgid "Output Device" +msgstr "Périphérique de sortie" + +msgid "Input Device" +msgstr "Périphérique d'entrée" + +msgid "Playback Speed Scale" +msgstr "Vitesse de lecture (multiplicateur)" msgid "Feed" msgstr "Flux" diff --git a/editor/translations/properties/id.po b/editor/translations/properties/id.po new file mode 100644 index 0000000000..276653ae31 --- /dev/null +++ b/editor/translations/properties/id.po @@ -0,0 +1,6049 @@ +# Indonesian translation of the Godot Engine properties. +# Copyright (c) 2014-present Godot Engine contributors. +# Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. +# This file is distributed under the same license as the Godot source code. +# Abdul Aziz Muslim Alqudsy <abdul.aziz.muslim.alqudsy@gmail.com>, 2016. +# Andevid Dynmyn <doyan4forum@gmail.com>, 2016. +# Andinawan Asa <asaandinawan@gmail.com>, 2016. +# Damar Inderajati <damarind@gmail.com>, 2017. +# Damar S. M <the.last.walla@gmail.com>, 2017. +# Fajar Ru <kzofajar@gmail.com>, 2018. +# Khairul Hidayat <khairulcyber4rt@gmail.com>, 2016. +# Reza Hidayat Bayu Prabowo <rh.bayu.prabowo@gmail.com>, 2018, 2019. +# Romi Kusuma Bakti <romikusumab@gmail.com>, 2017, 2018, 2021. +# Sofyan Sugianto <sofyanartem@gmail.com>, 2017-2018, 2019, 2020, 2021. +# Tito <ijavadroid@gmail.com>, 2018. +# Tom My <tom.asadinawan@gmail.com>, 2017. +# yursan9 <rizal.sagi@gmail.com>, 2016. +# Evan Hyacinth <muhammad.ivan669@gmail.com>, 2018, 2019. +# Guntur Sarwohadi <gsarwohadi@gmail.com>, 2019. +# Alphin Albukhari <alphinalbukhari5@gmail.com>, 2019. +# I Dewa Agung Adhinata <agungnata2003@gmail.com>, 2019. +# herri siagian <herry.it.2007@gmail.com>, 2019. +# MonsterGila <fikrirazor@outlook.co.id>, 2019, 2020. +# Modeus Darksono <garuga17@gmail.com>, 2019. +# Akhmad Zulfikar <azuldegratz@gmail.com>, 2020. +# Ade Fikri Malihuddin <ade.fm97@gmail.com>, 2020. +# zephyroths <ridho.hikaru@gmail.com>, 2020, 2021, 2022. +# Richard Urban <redasuio1@gmail.com>, 2020. +# yusuf afandi <afandi.yusuf.04@gmail.com>, 2020, 2022. +# Habib Rohman <revolusi147id@gmail.com>, 2020. +# Hanz <hanzhaxors@gmail.com>, 2021. +# Reza Almanda <rezaalmanda27@gmail.com>, 2021, 2022. +# Naufal Adriansyah <naufaladrn90@gmail.com>, 2021. +# undisputedgoose <diablodvorak@gmail.com>, 2021. +# Tsaqib Fadhlurrahman Soka <sokatsaqib@gmail.com>, 2021, 2022. +# Hilman Hazazi <hafizd.muhammad.kren.403@gmail.com>, 2021. +# Brian <brian@brianthe.dev>, 2021. +# Helmi Hibatullah <helmihibatullah393@gmail.com>, 2022. +# ProgrammerIndonesia 44 <elo.jhy@gmail.com>, 2022. +# Rizky Ramadhan <rizkyterm@gmail.com>, 2022. +# Primananda Kurnia <primakurnia71@gmail.com>, 2022. +# FellowMustard <rachmawanng33@gmail.com>, 2022. +# Muhammad Zainal Abidin <eviepk12@gmail.com>, 2022. +# adfriz <aditiyaafrizal2@gmail.com>, 2023. +# EngageIndo <admin@engageindo.com>, 2023. +# EngageIndo <engageindo@gmail.com>, 2023. +msgid "" +msgstr "" +"Project-Id-Version: Godot Engine properties\n" +"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" +"POT-Creation-Date: \n" +"PO-Revision-Date: 2023-05-12 10:53+0000\n" +"Last-Translator: EngageIndo <engageindo@gmail.com>\n" +"Language-Team: Indonesian <https://hosted.weblate.org/projects/godot-engine/" +"godot-properties/id/>\n" +"Language: id\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Weblate 4.18-dev\n" + +msgid "Application" +msgstr "Aplikasi" + +msgid "Config" +msgstr "Konfigurasi" + +msgid "Name" +msgstr "Nama" + +msgid "Name Localized" +msgstr "Lokalisasi Nama" + +msgid "Description" +msgstr "Deskripsi" + +msgid "Run" +msgstr "Jalankan" + +msgid "Main Scene" +msgstr "Skena Utama" + +msgid "Disable stdout" +msgstr "Nonaktifkan stdout" + +msgid "Disable stderr" +msgstr "Nonaktifkan stderr" + +msgid "Use Hidden Project Data Directory" +msgstr "Gunakan Direktori Data Proyek Tersembunyi" + +msgid "Use Custom User Dir" +msgstr "Gunakan Direktori Pengguna Kustom" + +msgid "Custom User Dir Name" +msgstr "Nama Dir Pengguna Kustom" + +msgid "Project Settings Override" +msgstr "Penggantian Pengaturan Proyek" + +msgid "Main Loop Type" +msgstr "Tipe Perulangan Utama" + +msgid "Auto Accept Quit" +msgstr "Terima Otomatis Keluar" + +msgid "Quit on Go Back" +msgstr "Berhenti di Kembali" + +msgid "Display" +msgstr "Tampilan" + +msgid "Window" +msgstr "Jendela" + +msgid "Size" +msgstr "Ukuran" + +msgid "Viewport Width" +msgstr "Lebar Viewport" + +msgid "Viewport Height" +msgstr "Tinggi viewport" + +msgid "Mode" +msgstr "Mode" + +msgid "Initial Position Type" +msgstr "Jenis Posisi Awal" + +msgid "Initial Position" +msgstr "Posisi Awal" + +msgid "Initial Screen" +msgstr "Layar Awal" + +msgid "Resizable" +msgstr "Dapat diubah ukurannya" + +msgid "Borderless" +msgstr "Tanpa batas" + +msgid "Always on Top" +msgstr "Selalu di Atas" + +msgid "Transparent" +msgstr "Transparan" + +msgid "Extend to Title" +msgstr "Perluas ke Judul" + +msgid "No Focus" +msgstr "Tidak Fokus" + +msgid "Window Width Override" +msgstr "Penimpaan Lebar Jendela" + +msgid "Window Height Override" +msgstr "Penimpaan Tinngi Jendela" + +msgid "Energy Saving" +msgstr "Hemat Daya" + +msgid "Keep Screen On" +msgstr "Biarkan Layar Menyala" + +msgid "Audio" +msgstr "Suara" + +msgid "Buses" +msgstr "Bus" + +msgid "Default Bus Layout" +msgstr "Tata Letak Bus Default" + +msgid "General" +msgstr "Umum" + +msgid "2D Panning Strength" +msgstr "Kekuatan Panning 2D" + +msgid "3D Panning Strength" +msgstr "Kekuatan Panning 3D" + +msgid "Editor" +msgstr "Editor" + +msgid "Script" +msgstr "Skrip" + +msgid "Search in File Extensions" +msgstr "Cari dalam Ekstensi File" + +msgid "Subwindows" +msgstr "Subjendela" + +msgid "Embed Subwindows" +msgstr "Menyematkan Subjendela" + +msgid "Physics" +msgstr "Fisika" + +msgid "2D" +msgstr "2D" + +msgid "Run on Separate Thread" +msgstr "Jalankan di Thread Terpisah" + +msgid "3D" +msgstr "3D" + +msgid "Stretch" +msgstr "Memuai" + +msgid "Aspect" +msgstr "Aspek" + +msgid "Scale" +msgstr "Skala" + +msgid "Debug" +msgstr "Debug" + +msgid "Settings" +msgstr "Pengaturan" + +msgid "Profiler" +msgstr "Profiler" + +msgid "Max Functions" +msgstr "Fungsi Maksimum" + +msgid "Compression" +msgstr "Kompresi" + +msgid "Formats" +msgstr "Format" + +msgid "Zstd" +msgstr "Zstd" + +msgid "Long Distance Matching" +msgstr "Pencocokan Jarak Jauh" + +msgid "Compression Level" +msgstr "Level Kompresi" + +msgid "Window Log Size" +msgstr "Ukuran Jendela Log" + +msgid "Zlib" +msgstr "Zlib" + +msgid "Gzip" +msgstr "Gzip" + +msgid "Crash Handler" +msgstr "Penangan Kecelakaan" + +msgid "Message" +msgstr "Pesan" + +msgid "Rendering" +msgstr "Rendering" + +msgid "Occlusion Culling" +msgstr "Pemusnahan Oklusi" + +msgid "BVH Build Quality" +msgstr "Kualitas Build BVH" + +msgid "Memory" +msgstr "Memori" + +msgid "Limits" +msgstr "Batasan" + +msgid "Multithreaded Server" +msgstr "Server Multithreaded" + +msgid "RID Pool Prealloc" +msgstr "Pra-alokasi Pool RID" + +msgid "Internationalization" +msgstr "Internasionalisasi" + +msgid "Force Right to Left Layout Direction" +msgstr "Paksa Arah Tata Letak Kanan ke Kiri" + +msgid "Root Node Layout Direction" +msgstr "Arah Tata Letak Node Root" + +msgid "GUI" +msgstr "GUI" + +msgid "Timers" +msgstr "Timer" + +msgid "Incremental Search Max Interval Msec" +msgstr "Interval Maksimal Pencarian Tambahan Msec" + +msgid "Common" +msgstr "Umum" + +msgid "Snap Controls to Pixels" +msgstr "Kontrol Snap ke Piksel" + +msgid "Fonts" +msgstr "Font" + +msgid "Dynamic Fonts" +msgstr "Fonta Dinamis" + +msgid "Use Oversampling" +msgstr "Gunakan Oversampling" + +msgid "Rendering Device" +msgstr "Perangkat Rendering" + +msgid "Staging Buffer" +msgstr "Staging Buffer" + +msgid "Block Size (KB)" +msgstr "Ukuran Blok (KB)" + +msgid "Max Size (MB)" +msgstr "Ukuran Maksimum (MB)" + +msgid "Texture Upload Region Size Px" +msgstr "Ukuran Wilayah Unggah Tekstur Ukuran Px" + +msgid "Vulkan" +msgstr "Vulkan" + +msgid "Max Descriptors per Pool" +msgstr "Deskriptor Maksimum per Pool" + +msgid "Textures" +msgstr "Tekstur²" + +msgid "Canvas Textures" +msgstr "Tekstur Kanvas" + +msgid "Default Texture Filter" +msgstr "Filter Tekstur Default" + +msgid "Default Texture Repeat" +msgstr "Pengulangan Tekstur Default" + +msgid "Low Processor Usage Mode" +msgstr "Mode Penggunaan Processor Rendah" + +msgid "Low Processor Usage Mode Sleep (µsec)" +msgstr "Mode Penggunaan Prosesor Rendah Tidur (μsec)" + +msgid "Print Error Messages" +msgstr "Cetak Pesan Kesalahan" + +msgid "Physics Ticks per Second" +msgstr "Centang Fisik per Detik" + +msgid "Max Physics Steps per Frame" +msgstr "Maksimal Pesan Per Frame" + +msgid "Max FPS" +msgstr "FPS Maks" + +msgid "Time Scale" +msgstr "Skala Waktu" + +msgid "Physics Jitter Fix" +msgstr "Perbaikan Fisika Jitter" + +msgid "Mouse Mode" +msgstr "Mode Mouse" + +msgid "Use Accumulated Input" +msgstr "Gunakan Akumulasi Masukan" + +msgid "Device" +msgstr "Perangkat" + +msgid "Window ID" +msgstr "ID Jendela" + +msgid "Command or Control Autoremap" +msgstr "Command atau Control Autoremap" + +msgid "Alt Pressed" +msgstr "Alt Ditekan" + +msgid "Shift Pressed" +msgstr "Shift Ditekan" + +msgid "Ctrl Pressed" +msgstr "Ctrl Ditekan" + +msgid "Meta Pressed" +msgstr "Meta Ditekan" + +msgid "Pressed" +msgstr "Ditekan" + +msgid "Keycode" +msgstr "Kata kunci" + +msgid "Physical Keycode" +msgstr "Kode Kunci Fisik" + +msgid "Key Label" +msgstr "Label Kunci" + +msgid "Unicode" +msgstr "Unicode" + +msgid "Echo" +msgstr "Gema" + +msgid "Button Mask" +msgstr "Mask Tombol" + +msgid "Position" +msgstr "Posisi" + +msgid "Global Position" +msgstr "Posisi Global" + +msgid "Factor" +msgstr "Faktor" + +msgid "Button Index" +msgstr "Tombol Indeks" + +msgid "Double Click" +msgstr "Klik ganda" + +msgid "Tilt" +msgstr "Miring" + +msgid "Pressure" +msgstr "Tekanan" + +msgid "Pen Inverted" +msgstr "Pena Terbalik" + +msgid "Relative" +msgstr "Relatif" + +msgid "Velocity" +msgstr "Kecepatan" + +msgid "Axis" +msgstr "Sumbu" + +msgid "Axis Value" +msgstr "Nilai Sumbu" + +msgid "Index" +msgstr "Indeks" + +msgid "Double Tap" +msgstr "Ketuk Dua Kali" + +msgid "Action" +msgstr "Aksi" + +msgid "Strength" +msgstr "Kekuatan" + +msgid "Delta" +msgstr "Delta" + +msgid "Channel" +msgstr "Channel" + +msgid "Pitch" +msgstr "Pitch" + +msgid "Instrument" +msgstr "Instrumen" + +msgid "Controller Number" +msgstr "Nomor Pengontrol" + +msgid "Controller Value" +msgstr "Nilai Pengontrol" + +msgid "Shortcut" +msgstr "Pintasan" + +msgid "Events" +msgstr "Event" + +msgid "Include Navigational" +msgstr "Sertakan Navigasi" + +msgid "Include Hidden" +msgstr "Sertakan Tersembunyi" + +msgid "Big Endian" +msgstr "Endian Besar" + +msgid "Network" +msgstr "Jaringan" + +msgid "Remote FS" +msgstr "Remot FS" + +msgid "Page Size" +msgstr "Ukuran Halaman" + +msgid "Page Read Ahead" +msgstr "Halaman Baca Terlebih Dahulu" + +msgid "Blocking Mode Enabled" +msgstr "Mode Pemblokiran Diaktifkan" + +msgid "Read Chunk Size" +msgstr "Baca Ukuran Potongan" + +msgid "Data" +msgstr "Data" + +msgid "Object ID" +msgstr "ID Objek" + +msgid "Encode Buffer Max Size" +msgstr "Ukuran Maks Encode Buffer" + +msgid "Input Buffer Max Size" +msgstr "Ukuran Maks Buffer Input" + +msgid "Output Buffer Max Size" +msgstr "Ukuran Maks Buffer Keluaran" + +msgid "Resource" +msgstr "Resource" + +msgid "Local to Scene" +msgstr "Lokal ke Adegan" + +msgid "Path" +msgstr "Jalur" + +msgid "Data Array" +msgstr "Data Array" + +msgid "Max Pending Connections" +msgstr "Koneksi Tertunda Maks" + +msgid "Offset" +msgstr "Offset" + +msgid "Cell Size" +msgstr "Ukuran Sel" + +msgid "Jumping Enabled" +msgstr "Melompat Diaktifkan" + +msgid "Default Compute Heuristic" +msgstr "Heuristik Komputasi Default" + +msgid "Default Estimate Heuristic" +msgstr "Heuristik Estimasi Default" + +msgid "Diagonal Mode" +msgstr "Mode Diagonal" + +msgid "Seed" +msgstr "Benih" + +msgid "State" +msgstr "Keadaan" + +msgid "Message Queue" +msgstr "Antrean Pesan" + +msgid "Max Size (KB)" +msgstr "Ukuran Maksimum (KB)" + +msgid "TCP" +msgstr "TCP" + +msgid "Connect Timeout Seconds" +msgstr "Menghubungkan Detik Batas Waktu" + +msgid "Packet Peer Stream" +msgstr "Aliran Paket Peer" + +msgid "Max Buffer (Power of 2)" +msgstr "Penyangga Maks (Kekuatan 2)" + +msgid "TLS" +msgstr "TLS" + +msgid "Certificate Bundle Override" +msgstr "Penggantian Bundel Sertifikat" + +msgid "Threading" +msgstr "Mengulir" + +msgid "Worker Pool" +msgstr "Kumpulan Pekerja" + +msgid "Max Threads" +msgstr "Thread Maks" + +msgid "Use System Threads for Low Priority Tasks" +msgstr "Gunakan Thread Sistem untuk Tugas dengan Prioritas Rendah" + +msgid "Low Priority Thread Ratio" +msgstr "Rasio Thread Prioritas Rendah" + +msgid "Locale" +msgstr "Lokal" + +msgid "Test" +msgstr "Tes" + +msgid "Fallback" +msgstr "Mundur" + +msgid "Pseudolocalization" +msgstr "Pseudolokalisasi" + +msgid "Use Pseudolocalization" +msgstr "Gunakan Pseudolokalisasi" + +msgid "Replace With Accents" +msgstr "Ganti Dengan Aksen" + +msgid "Double Vowels" +msgstr "Vokal Ganda" + +msgid "Fake BiDi" +msgstr "BiDi Palsu" + +msgid "Override" +msgstr "Menimpa" + +msgid "Expansion Ratio" +msgstr "Rasio Ekspansi" + +msgid "Prefix" +msgstr "Awalan" + +msgid "Suffix" +msgstr "Akhiran" + +msgid "Skip Placeholders" +msgstr "Lewati Placeholder" + +msgid "Rotation" +msgstr "Rotasi" + +msgid "Value" +msgstr "Nilai" + +msgid "Arg Count" +msgstr "Hitungan Arg" + +msgid "Args" +msgstr "Argumen²" + +msgid "Type" +msgstr "Tipe" + +msgid "In Handle" +msgstr "Dalam Genggaman" + +msgid "Out Handle" +msgstr "Diluar Genggaman" + +msgid "Handle Mode" +msgstr "Mode Pegangan" + +msgid "Stream" +msgstr "Arus" + +msgid "Start Offset" +msgstr "Mulai Offset" + +msgid "End Offset" +msgstr "Offset Akhir" + +msgid "Animation" +msgstr "Animasi" + +msgid "Easing" +msgstr "Mengurangi" + +msgid "Debug Adapter" +msgstr "Adaptor Debug" + +msgid "Remote Port" +msgstr "Port Remot" + +msgid "Request Timeout" +msgstr "Permintaan diluar Batas Waktu" + +msgid "Sync Breakpoints" +msgstr "Sinkronisasi Breakpoint" + +msgid "Debugger" +msgstr "Pengawakutu" + +msgid "Auto Switch to Remote Scene Tree" +msgstr "Beralih Otomatis Ke Pohon Adegan Remot" + +msgid "Remote Scene Tree Refresh Interval" +msgstr "Interval Refresg Pohon Adegan Remot" + +msgid "Remote Inspect Refresh Interval" +msgstr "Interval Refresh Pemeriksaan Remot" + +msgid "Profiler Frame Max Functions" +msgstr "Fungsi Maks Frame Profiler" + +msgid "Default Feature Profile" +msgstr "Profil Fitur Default" + +msgid "Access" +msgstr "Akses" + +msgid "Display Mode" +msgstr "Mode Tampilan" + +msgid "File Mode" +msgstr "Mode File" + +msgid "Filters" +msgstr "Filter" + +msgid "Show Hidden Files" +msgstr "Tampilkan File Tersembunyi" + +msgid "Disable Overwrite Warning" +msgstr "Nonaktifkan Peringatan Timpa" + +msgid "Text Editor" +msgstr "Editor Teks" + +msgid "Help" +msgstr "Bantuan" + +msgid "Sort Functions Alphabetically" +msgstr "Urutkan Fungsi Secara Abjad" + +msgid "Label" +msgstr "Label" + +msgid "Read Only" +msgstr "Hanya Baca" + +msgid "Checkable" +msgstr "Dapat di centang" + +msgid "Checked" +msgstr "Dicentang" + +msgid "Draw Warning" +msgstr "Menarik Peringatan" + +msgid "Keying" +msgstr "Mengunci" + +msgid "Deletable" +msgstr "Dapat dihapus" + +msgid "Interface" +msgstr "Antarmuka" + +msgid "Save on Focus Loss" +msgstr "Simpan Ketika Kehilangan Fokus" + +msgid "Show Update Spinner" +msgstr "Tampilkan Pembaruan Spinner" + +msgid "Update Continuously" +msgstr "Perbarui Terus-menerus" + +msgid "Localize Settings" +msgstr "Pengaturan Lokalisasi" + +msgid "Scene Tabs" +msgstr "Tab Adegan" + +msgid "Restore Scenes on Load" +msgstr "Memulihkan Adegan saat Memuat" + +msgid "Inspector" +msgstr "Inspektur" + +msgid "Default Property Name Style" +msgstr "Gaya Nama Properti Default" + +msgid "Default Float Step" +msgstr "Langkah Float Default" + +msgid "Disable Folding" +msgstr "Nonaktifkan Lipat" + +msgid "Auto Unfold Foreign Scenes" +msgstr "Otomatis Buka lipatan Skena Asing" + +msgid "Horizontal Vector2 Editing" +msgstr "Pengeditan Vektor2 Horizontal" + +msgid "Horizontal Vector Types Editing" +msgstr "Pengeditan Jenis Vektor Horisontal" + +msgid "Open Resources in Current Inspector" +msgstr "Buka Sumber Daya di Inspektur Saat Ini" + +msgid "Resources to Open in New Inspector" +msgstr "Sumber Daya untuk Dibuka di Inspektur Baru" + +msgid "Default Color Picker Mode" +msgstr "Mode Pemilih Warna Default" + +msgid "Default Color Picker Shape" +msgstr "Bentuk Pemilih Warna Default" + +msgid "Distraction Free Mode" +msgstr "Mode Tanpa Gangguan" + +msgid "Base Type" +msgstr "Tipe Dasar" + +msgid "Editable" +msgstr "Dapat diedit" + +msgid "Toggle Mode" +msgstr "Beralih Mode" + +msgid "Editor Language" +msgstr "Bahasa Editor" + +msgid "Display Scale" +msgstr "Skala Tampilan" + +msgid "Enable Pseudolocalization" +msgstr "Aktifkan Pseudolokalisasi" + +msgid "Use Embedded Menu" +msgstr "Gunakan Menu Tersemat" + +msgid "Expand to Title" +msgstr "Perluas ke Judul" + +msgid "Custom Display Scale" +msgstr "Skala Tampilan Kustom" + +msgid "Main Font Size" +msgstr "Ukuran Font Utama" + +msgid "Code Font Size" +msgstr "Kode Ukuran Font" + +msgid "Code Font Contextual Ligatures" +msgstr "Ligatur Kontekstual Kode Font" + +msgid "Code Font Custom OpenType Features" +msgstr "Fitur OpenType Kustom Kode Font" + +msgid "Code Font Custom Variations" +msgstr "Variasi Kustom Kode Font" + +msgid "Font Antialiasing" +msgstr "Antialiasing Font" + +msgid "Font Hinting" +msgstr "Petunjuk Font" + +msgid "Font Subpixel Positioning" +msgstr "Pemosisian Subpiksel Font" + +msgid "Main Font" +msgstr "Font Utama" + +msgid "Main Font Bold" +msgstr "Font Utama Tebal" + +msgid "Code Font" +msgstr "Kode Font" + +msgid "Low Processor Mode Sleep (µsec)" +msgstr "Mode Tidur Prosesor Rendah (µdetik)" + +msgid "Unfocused Low Processor Mode Sleep (µsec)" +msgstr "Mode Tidur Prosesor Rendah yang Tidak Fokus (µdetik)" + +msgid "Separate Distraction Mode" +msgstr "Mode Gangguan Terpisah" + +msgid "Automatically Open Screenshots" +msgstr "Buka Screenshoots secara otomatis" + +msgid "Single Window Mode" +msgstr "Mode Jendela Tunggal" + +msgid "Mouse Extra Buttons Navigate History" +msgstr "Tombol Ekstra Mouse Navigasi Riwayat" + +msgid "Save Each Scene on Quit" +msgstr "Menyimpan Setiap Adegan saat Keluar" + +msgid "Accept Dialog Cancel OK Buttons" +msgstr "Terima Dialog Batalkan Tombol OK" + +msgid "Show Internal Errors in Toast Notifications" +msgstr "Tampilkan Kesalahan Internal di Pemberitahuan Toast" + +msgid "Max Array Dictionary Items per Page" +msgstr "Item Dictionary Array Maks per Halaman" + +msgid "Show Low Level OpenType Features" +msgstr "Tampilkan Fitur OpenType Tingkat Rendah" + +msgid "Theme" +msgstr "Tema" + +msgid "Preset" +msgstr "Prasetel" + +msgid "Icon and Font Color" +msgstr "Ikon dan Warna Font" + +msgid "Base Color" +msgstr "Warna Dasar" + +msgid "Accent Color" +msgstr "Warna Aksen" + +msgid "Contrast" +msgstr "Kontras" + +msgid "Draw Extra Borders" +msgstr "Gambar Batas Ekstra" + +msgid "Icon Saturation" +msgstr "Saturasi Ikon" + +msgid "Relationship Line Opacity" +msgstr "Opasitas Garis Relasi" + +msgid "Border Size" +msgstr "Ukuran Perbatasan" + +msgid "Corner Radius" +msgstr "Radius Sudut" + +msgid "Additional Spacing" +msgstr "Spasi Tambahan" + +msgid "Custom Theme" +msgstr "Tema Kustom" + +msgid "Touchscreen" +msgstr "Layar sentuh" + +msgid "Increase Scrollbar Touch Area" +msgstr "Tingkatkan Area Sentuh Scrollbar" + +msgid "Enable Long Press as Right Click" +msgstr "Aktifkan Tekan Lama sebagai Klik Kanan" + +msgid "Enable Pan and Scale Gestures" +msgstr "Aktifkan Gerakan Pan dan Scale" + +msgid "Display Close Button" +msgstr "Tampilkan Tombol Tutup" + +msgid "Show Thumbnail on Hover" +msgstr "Tampilkan Gambar Mini Saat Disorot kursor" + +msgid "Maximum Width" +msgstr "Lebar Maksimum" + +msgid "Show Script Button" +msgstr "Tampilkan Tombol Skrip" + +msgid "FileSystem" +msgstr "Berkas Sistem" + +msgid "External Programs" +msgstr "Program Eksternal" + +msgid "Raster Image Editor" +msgstr "Editor Gambar Raster" + +msgid "Vector Image Editor" +msgstr "Editor Gambar Vektor" + +msgid "Audio Editor" +msgstr "Editor Audio" + +msgid "3D Model Editor" +msgstr "Editor Model 3D" + +msgid "Directories" +msgstr "Direktori" + +msgid "Autoscan Project Path" +msgstr "Path Proyek Pindai Otomatis" + +msgid "Default Project Path" +msgstr "Path Proyek Default" + +msgid "On Save" +msgstr "Di Simpan" + +msgid "Compress Binary Resources" +msgstr "Kompres Sumber Daya Biner" + +msgid "Safe Save on Backup then Rename" +msgstr "Menyimpan Cadangan dengan Aman lalu Ganti Nama" + +msgid "File Dialog" +msgstr "Dialog File" + +msgid "Thumbnail Size" +msgstr "Ukuran Gambar kecil" + +msgid "Docks" +msgstr "Dock" + +msgid "Scene Tree" +msgstr "Pohon Adegan" + +msgid "Start Create Dialog Fully Expanded" +msgstr "Mulai Buat Dialog Diperluas Sepenuhnya" + +msgid "Auto Expand to Selected" +msgstr "Perluas Otomatis ke yang Dipilih" + +msgid "Always Show Folders" +msgstr "Selalu Tampilkan Folder" + +msgid "Textfile Extensions" +msgstr "Ekstensi File Teks" + +msgid "Property Editor" +msgstr "Editor Properti" + +msgid "Auto Refresh Interval" +msgstr "Interval Penyegaran Otomatis" + +msgid "Subresource Hue Tint" +msgstr "Subsumber Hue Tint" + +msgid "Color Theme" +msgstr "Tema Warna" + +msgid "Appearance" +msgstr "Penampilan" + +msgid "Caret" +msgstr "Tanda sisipan" + +msgid "Caret Blink" +msgstr "Caret Blink" + +msgid "Caret Blink Interval" +msgstr "Interval Kedipan Caret" + +msgid "Highlight Current Line" +msgstr "Tandai Baris Saat Ini" + +msgid "Highlight All Occurrences" +msgstr "Sorot Semua Kejadian" + +msgid "Guidelines" +msgstr "Pedoman" + +msgid "Show Line Length Guidelines" +msgstr "Tampilkan Pedoman Panjang Baris" + +msgid "Line Length Guideline Soft Column" +msgstr "Pedoman Panjang Baris Kolom Soft" + +msgid "Line Length Guideline Hard Column" +msgstr "Pedoman Panjang Baris Kolom Keras" + +msgid "Gutters" +msgstr "Talang" + +msgid "Show Line Numbers" +msgstr "Tampilkan Nomor Baris" + +msgid "Line Numbers Zero Padded" +msgstr "Nomor Baris dimulai Nol" + +msgid "Highlight Type Safe Lines" +msgstr "Sorot Jenis Baris Aman" + +msgid "Show Bookmark Gutter" +msgstr "Tampilkan Talang Bookmark" + +msgid "Show Info Gutter" +msgstr "Tampilkan Info Talang" + +msgid "Minimap" +msgstr "Minimap" + +msgid "Show Minimap" +msgstr "Tampilkan Peta kecil" + +msgid "Minimap Width" +msgstr "Lebar Peta kecil" + +msgid "Lines" +msgstr "Baris" + +msgid "Code Folding" +msgstr "Lipat Kode" + +msgid "Word Wrap" +msgstr "Bungkus Kata" + +msgid "Whitespace" +msgstr "Spasi" + +msgid "Draw Tabs" +msgstr "Tab Gambar" + +msgid "Draw Spaces" +msgstr "Gambarkan Spasi" + +msgid "Line Spacing" +msgstr "Jarak Baris" + +msgid "Behavior" +msgstr "Perilaku" + +msgid "Navigation" +msgstr "Navigasi" + +msgid "Move Caret on Right Click" +msgstr "Pindahkan Caret dengan Klik Kanan" + +msgid "Scroll Past End of File" +msgstr "Gulir Melewati Akhir File" + +msgid "Smooth Scrolling" +msgstr "Pengguliran Halus" + +msgid "V Scroll Speed" +msgstr "Kecepatan Gulir Vertikal" + +msgid "Drag and Drop Selection" +msgstr "Pilihan Seret dan Jatuhkan" + +msgid "Stay in Script Editor on Node Selected" +msgstr "Tetap di Editor Skrip pada Node yang Dipilih" + +msgid "Indent" +msgstr "Indentasi" + +msgid "Auto Indent" +msgstr "Indentasi Otomatis" + +msgid "Files" +msgstr "File" + +msgid "Trim Trailing Whitespace on Save" +msgstr "Pangkas Spasi Jejak pada Simpan" + +msgid "Autosave Interval Secs" +msgstr "Detik Interval Simpan Otomatis" + +msgid "Restore Scripts on Load" +msgstr "Pulihkan Skrip Saat Dimuat" + +msgid "Convert Indent on Save" +msgstr "Konversikan Indentasi Ketika Menyimpan" + +msgid "Auto Reload Scripts on External Change" +msgstr "Muat Ulang Otomatis Skrip pada Perubahan Eksternal" + +msgid "Script List" +msgstr "Daftar Skrip" + +msgid "Show Members Overview" +msgstr "Tampilkan Ikhtisar Anggota" + +msgid "Sort Members Outline Alphabetically" +msgstr "Sortir Kerangka Anggota Secara Abjad" + +msgid "Completion" +msgstr "Penyelesaian" + +msgid "Idle Parse Delay" +msgstr "Penundaan Penguraian Idle" + +msgid "Auto Brace Complete" +msgstr "Penyangga Otomatis Lengkap" + +msgid "Code Complete Delay" +msgstr "Penundaan Penyelesaian Kode" + +msgid "Put Callhint Tooltip Below Current Line" +msgstr "Letakkan Tooltip Callhint di Bawah Baris Saat Ini" + +msgid "Complete File Paths" +msgstr "Path File Lengkap" + +msgid "Add Type Hints" +msgstr "Tambahkan Petunjuk Jenis" + +msgid "Use Single Quotes" +msgstr "Gunakan Kutip Satu" + +msgid "Show Help Index" +msgstr "Tampilkan Indeks Bantuan" + +msgid "Help Font Size" +msgstr "Ukuran Font Bantuan" + +msgid "Help Source Font Size" +msgstr "Sumber Bantuan Ukuran Font" + +msgid "Help Title Font Size" +msgstr "Ukuran Font Judul Bantuan" + +msgid "Class Reference Examples" +msgstr "Contoh Referensi Kelas" + +msgid "Editors" +msgstr "Editor" + +msgid "Grid Map" +msgstr "Peta Kisi Kisi-kisi" + +msgid "Pick Distance" +msgstr "Pilih Jarak" + +msgid "Primary Grid Color" +msgstr "Warna Kisi-kisi Utama" + +msgid "Secondary Grid Color" +msgstr "Warna Kisi-kisi Sekunder" + +msgid "Selection Box Color" +msgstr "Warna Kotak Pilihan" + +msgid "3D Gizmos" +msgstr "Gizmos 3D" + +msgid "Gizmo Colors" +msgstr "Warna Gizmo" + +msgid "Instantiated" +msgstr "Diinstansiasi" + +msgid "Joint" +msgstr "Sendi" + +msgid "Shape" +msgstr "Bentuk" + +msgid "Primary Grid Steps" +msgstr "Langkah Grid Utama" + +msgid "Grid Size" +msgstr "Ukuran Kisi-kisi" + +msgid "Grid Division Level Max" +msgstr "Tingkat Divisi Kisi-kisi Maks" + +msgid "Grid Division Level Min" +msgstr "Tingkat Divisi Kisi-kisi Minimal" + +msgid "Grid Division Level Bias" +msgstr "Bias Tingkat Divisi Grid" + +msgid "Grid XZ Plane" +msgstr "Plane Grid XZ" + +msgid "Grid XY Plane" +msgstr "Plane Grid XY" + +msgid "Grid YZ Plane" +msgstr "Plane Grid YZ" + +msgid "Default FOV" +msgstr "Jarak Pandang Baku" + +msgid "Default Z Near" +msgstr "Default Z Dekat" + +msgid "Default Z Far" +msgstr "Default Z Jauh" + +msgid "Invert X Axis" +msgstr "Balik Sumbu X" + +msgid "Invert Y Axis" +msgstr "Balik Sumbu Y" + +msgid "Navigation Scheme" +msgstr "Skema Navigasi" + +msgid "Zoom Style" +msgstr "Gaya Zoom" + +msgid "Emulate Numpad" +msgstr "Meniru Numpad" + +msgid "Emulate 3 Button Mouse" +msgstr "Meniru 3 Tombol Mouse" + +msgid "Orbit Modifier" +msgstr "Pengubah Orbit" + +msgid "Pan Modifier" +msgstr "Pengubah Pan" + +msgid "Zoom Modifier" +msgstr "Pengubah Zoom" + +msgid "Warped Mouse Panning" +msgstr "Panning Mouse Melengkung" + +msgid "Navigation Feel" +msgstr "Rasa Navigasi" + +msgid "Orbit Sensitivity" +msgstr "Sensitivitas Orbit" + +msgid "Orbit Inertia" +msgstr "Inersia Orbit" + +msgid "Translation Inertia" +msgstr "Inersia Terjemahan" + +msgid "Zoom Inertia" +msgstr "Inersia Zoom" + +msgid "Freelook" +msgstr "Freelook" + +msgid "Freelook Navigation Scheme" +msgstr "Skema Navigasi Freelook" + +msgid "Freelook Sensitivity" +msgstr "Sensitivitas Freelook" + +msgid "Freelook Inertia" +msgstr "Inersia Tampilan Bebas" + +msgid "Freelook Base Speed" +msgstr "Kecepatan Dasar Freelook" + +msgid "Freelook Activation Modifier" +msgstr "Pengubah Aktivasi Freelook" + +msgid "Freelook Speed Zoom Link" +msgstr "Tautan Zoom Kecepatan Freelook" + +msgid "Grid Color" +msgstr "Warna Kisi-kisi" + +msgid "Guides Color" +msgstr "Warna Panduan" + +msgid "Smart Snapping Line Color" +msgstr "Warna Garis Pengancingan Pintar" + +msgid "Bone Width" +msgstr "Lebar Tulang" + +msgid "Bone Color 1" +msgstr "Warna Tulang 1" + +msgid "Bone Color 2" +msgstr "Warna Tulang 2" + +msgid "Bone Selected Color" +msgstr "Warna Tulang Terpilih" + +msgid "Bone IK Color" +msgstr "Warna IK Tulang" + +msgid "Bone Outline Color" +msgstr "Warna Garis tepi Tulang" + +msgid "Bone Outline Size" +msgstr "Ukuran Garis tepi Tulang" + +msgid "Viewport Border Color" +msgstr "Warna Batas Viewport" + +msgid "Constrain Editor View" +msgstr "Batasi Tampilan Editor" + +msgid "Panning" +msgstr "Menggeser" + +msgid "2D Editor Panning Scheme" +msgstr "Skema Panning Editor 2D" + +msgid "Sub Editors Panning Scheme" +msgstr "Skema Panning Sub Editor" + +msgid "Animation Editors Panning Scheme" +msgstr "Skema Panning Editor Animasi" + +msgid "Simple Panning" +msgstr "Panning Sederhana" + +msgid "2D Editor Pan Speed" +msgstr "Kecepatan Pan Editor 2D" + +msgid "Tiles Editor" +msgstr "Editor Ubin" + +msgid "Display Grid" +msgstr "Tampilan Grid" + +msgid "Polygon Editor" +msgstr "Editor Poligon" + +msgid "Point Grab Radius" +msgstr "Radius Titik Ambil" + +msgid "Show Previous Outline" +msgstr "Tampilkan Garis Besar Sebelumnya" + +msgid "Autorename Animation Tracks" +msgstr "Namai otomatis Trek Animasi" + +msgid "Confirm Insert Track" +msgstr "Konfirmasi Sisipkan Trek" + +msgid "Default Create Bezier Tracks" +msgstr "Buat Trek Bezier Default" + +msgid "Default Create Reset Tracks" +msgstr "Buat Trek Reset Default" + +msgid "Onion Layers Past Color" +msgstr "Lapisan Onion Warna Lampau" + +msgid "Onion Layers Future Color" +msgstr "Lapisan Onion Warna Masa Depan" + +msgid "Visual Editors" +msgstr "Editor Visual" + +msgid "Minimap Opacity" +msgstr "Kegelapan Peta kecil" + +msgid "Lines Curvature" +msgstr "Kelengkungan Garis" + +msgid "Visual Shader" +msgstr "Shader Visual" + +msgid "Port Preview Size" +msgstr "Ukuran Pratinjau Port" + +msgid "Window Placement" +msgstr "Penempatan Jendela" + +msgid "Rect" +msgstr "Kotak" + +msgid "Rect Custom Position" +msgstr "Posisi Kotak Kustom" + +msgid "Screen" +msgstr "Layar" + +msgid "Auto Save" +msgstr "Simpan Otomatis" + +msgid "Save Before Running" +msgstr "Simpan Sebelum Menjalankan" + +msgid "Output" +msgstr "Luaran" + +msgid "Font Size" +msgstr "Ukuran Fonta" + +msgid "Always Clear Output on Play" +msgstr "Selalu Bersihkan Luaran Ketika Bermain" + +msgid "Always Open Output on Play" +msgstr "Selalu Buka Luaran Ketika Bermain" + +msgid "Always Close Output on Stop" +msgstr "Selalu Tutup Luaran Ketika Berhenti" + +msgid "Remote Host" +msgstr "Host Jarak Jauh" + +msgid "Editor TLS Certificates" +msgstr "Sertifikat Editor TLS" + +msgid "Profiler Frame History Size" +msgstr "Ukuran Riwayat Frame Profiler" + +msgid "HTTP Proxy" +msgstr "Proksi HTTP" + +msgid "Host" +msgstr "Host" + +msgid "Port" +msgstr "Port" + +msgid "Project Manager" +msgstr "Manajer Proyek" + +msgid "Sorting Order" +msgstr "Urutan Penyortiran" + +msgid "Default Renderer" +msgstr "Perender Default" + +msgid "Highlighting" +msgstr "Menyoroti" + +msgid "Symbol Color" +msgstr "Warna Simbol" + +msgid "Keyword Color" +msgstr "Warna Kata kunci" + +msgid "Control Flow Keyword Color" +msgstr "Warna Kata Kunci Aliran Kontrol" + +msgid "Base Type Color" +msgstr "Warna Tipe Basis" + +msgid "Engine Type Color" +msgstr "Warna Jenis Mesin" + +msgid "User Type Color" +msgstr "Warna Jenis Pengguna" + +msgid "Comment Color" +msgstr "Warna Komentar" + +msgid "String Color" +msgstr "Warna String" + +msgid "Background Color" +msgstr "Warna Latar belakang" + +msgid "Completion Background Color" +msgstr "Warna Latar Belakang Penyelesaian" + +msgid "Completion Selected Color" +msgstr "Penyelesaian Warna yang Dipilih" + +msgid "Completion Existing Color" +msgstr "Penyelesaian Warna yang Ada" + +msgid "Completion Scroll Color" +msgstr "Warna Gulir Penyelesaian" + +msgid "Completion Scroll Hovered Color" +msgstr "Gulir Penyelesaian Warna yang Di-hover" + +msgid "Completion Font Color" +msgstr "Warna Font Penyelesaian" + +msgid "Text Color" +msgstr "Warna Teks" + +msgid "Line Number Color" +msgstr "Warna Nomor Baris" + +msgid "Safe Line Number Color" +msgstr "Warna Nomor Baris Aman" + +msgid "Caret Color" +msgstr "Warna Caret" + +msgid "Caret Background Color" +msgstr "Warna Latar Belakang Caret" + +msgid "Text Selected Color" +msgstr "Warna Teks yang Dipilih" + +msgid "Selection Color" +msgstr "Warna Seleksi" + +msgid "Brace Mismatch Color" +msgstr "Warna Ketidakcocokan Brace" + +msgid "Current Line Color" +msgstr "Warna Baris Saat Ini" + +msgid "Line Length Guideline Color" +msgstr "Warna Pedoman Panjang Baris" + +msgid "Word Highlighted Color" +msgstr "Warna yang Disorot Kata" + +msgid "Number Color" +msgstr "Warna Angka" + +msgid "Function Color" +msgstr "Warna Fungsi" + +msgid "Member Variable Color" +msgstr "Warna Variabel Anggota" + +msgid "Mark Color" +msgstr "Tandai Warna" + +msgid "Bookmark Color" +msgstr "Warna Markah" + +msgid "Breakpoint Color" +msgstr "Warna Breakpoint" + +msgid "Executing Line Color" +msgstr "Mengeksekusi Warna Baris" + +msgid "Code Folding Color" +msgstr "Warna Lipatan Kode" + +msgid "Search Result Color" +msgstr "Warna Hasil Pencarian" + +msgid "Search Result Border Color" +msgstr "Warna Batas Hasil Pencarian" + +msgid "Flat" +msgstr "Rata" + +msgid "Hide Slider" +msgstr "Sembunyikan Slider" + +msgid "Zoom" +msgstr "Zoom" + +msgid "Custom Template" +msgstr "Template Kustom" + +msgid "Release" +msgstr "Rilis" + +msgid "Export Console Script" +msgstr "Ekspor Skrip Konsol" + +msgid "Binary Format" +msgstr "Format Biner" + +msgid "Embed PCK" +msgstr "Tanamkan PCK" + +msgid "Texture Format" +msgstr "Format Tekstur" + +msgid "BPTC" +msgstr "BPTC" + +msgid "S3TC" +msgstr "S3TC" + +msgid "ETC" +msgstr "ETC" + +msgid "ETC2" +msgstr "ETC2" + +msgid "Export" +msgstr "Ekspor" + +msgid "SSH" +msgstr "SSH" + +msgid "SCP" +msgstr "SCP" + +msgid "Export Path" +msgstr "Lokasi Ekspor" + +msgid "File Server" +msgstr "Server File" + +msgid "Password" +msgstr "Kata Sandi" + +msgid "Antialiasing" +msgstr "Antialiasing" + +msgid "Generate Mipmaps" +msgstr "Hasilkan Mipmaps" + +msgid "Multichannel Signed Distance Field" +msgstr "Bidang Jarak Bertanda Multisaluran" + +msgid "MSDF Pixel Range" +msgstr "Rentang Piksel MSDF" + +msgid "MSDF Size" +msgstr "Ukuran MSDF" + +msgid "Allow System Fallback" +msgstr "Izinkan Fallback Sistem" + +msgid "Force Autohinter" +msgstr "Paksa Autohinter" + +msgid "Hinting" +msgstr "Petunjuk" + +msgid "Subpixel Positioning" +msgstr "Pemosisian Subpiksel" + +msgid "Oversampling" +msgstr "Oversampling" + +msgid "Metadata Overrides" +msgstr "Penggantian Metadata" + +msgid "Language Support" +msgstr "Dukungan Bahasa" + +msgid "Script Support" +msgstr "Dukungan Skrip" + +msgid "OpenType Features" +msgstr "Fitur OpenType" + +msgid "Fallbacks" +msgstr "Fallback" + +msgid "Compress" +msgstr "Kompres" + +msgid "Language" +msgstr "Bahasa" + +msgid "Outline Size" +msgstr "Ukuran Garis Tepi" + +msgid "Variation" +msgstr "Variasi" + +msgid "OpenType" +msgstr "OpenType" + +msgid "Embolden" +msgstr "Memberanikan" + +msgid "Face Index" +msgstr "Indeks Wajah" + +msgid "Transform" +msgstr "Transformasi" + +msgid "Collada" +msgstr "Collada" + +msgid "Use Ambient" +msgstr "Gunakan Ambient" + +msgid "Retarget" +msgstr "Targetkan ulang" + +msgid "Bone Renamer" +msgstr "Pengganti Nama Tulang" + +msgid "Rename Bones" +msgstr "Ganti Nama Tulang" + +msgid "Unique Node" +msgstr "Node Unik" + +msgid "Make Unique" +msgstr "Jadikan Unik" + +msgid "Skeleton Name" +msgstr "Nama Kerangka" + +msgid "Rest Fixer" +msgstr "Perbaikan Istirahat" + +msgid "Apply Node Transforms" +msgstr "Terapkan Transformasi Node" + +msgid "Normalize Position Tracks" +msgstr "Menormalkan Trek Posisi" + +msgid "Overwrite Axis" +msgstr "Menimpa Sumbu" + +msgid "Fix Silhouette" +msgstr "Perbaiki Siluet" + +msgid "Enable" +msgstr "Aktifkan" + +msgid "Filter" +msgstr "Filter" + +msgid "Threshold" +msgstr "Ambang" + +msgid "Base Height Adjustment" +msgstr "Penyesuaian Tinggi Dasar" + +msgid "Remove Tracks" +msgstr "Hapus Trek" + +msgid "Except Bone Transform" +msgstr "Kecuali Transformasi Tulang" + +msgid "Unimportant Positions" +msgstr "Posisi yang Tidak Penting" + +msgid "Unmapped Bones" +msgstr "Tulang yang Belum Dipetakan" + +msgid "Create From" +msgstr "Buat Dari" + +msgid "Delimiter" +msgstr "Pembatasan" + +msgid "Character Ranges" +msgstr "Rentang Karakter" + +msgid "Columns" +msgstr "Kolom" + +msgid "Rows" +msgstr "Baris" + +msgid "Image Margin" +msgstr "Margin Gambar" + +msgid "Character Margin" +msgstr "Margin Karakter" + +msgid "High Quality" +msgstr "Kualitas Tinggi" + +msgid "Lossy Quality" +msgstr "Kualitas Setengah" + +msgid "HDR Compression" +msgstr "Kompresi HDR" + +msgid "Channel Pack" +msgstr "Paket Saluran" + +msgid "Mipmaps" +msgstr "Mipmap" + +msgid "Generate" +msgstr "Menghasilkan" + +msgid "Limit" +msgstr "Batas" + +msgid "Slices" +msgstr "Irisan" + +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Vertical" +msgstr "Vertikal" + +msgid "Arrangement" +msgstr "Aransemen" + +msgid "Layout" +msgstr "Tata Letak" + +msgid "Amount" +msgstr "Jumlah" + +msgid "Generate Tangents" +msgstr "Menghasilkan Garis Singgung" + +msgid "Scale Mesh" +msgstr "Skala Mesh" + +msgid "Offset Mesh" +msgstr "Offset Mesh" + +msgid "Optimize Mesh" +msgstr "Optimalkan Mesh" + +msgid "Import" +msgstr "Impor" + +msgid "Skip Import" +msgstr "Lewati Impor" + +msgid "NavMesh" +msgstr "NavMesh" + +msgid "Body Type" +msgstr "Tipe Tubuh" + +msgid "Shape Type" +msgstr "Tipe Bentuk" + +msgid "Decomposition" +msgstr "Dekomposisi" + +msgid "Advanced" +msgstr "Lanjut" + +msgid "Precision" +msgstr "Presisi" + +msgid "Max Concavity" +msgstr "Cekung Maks" + +msgid "Symmetry Planes Clipping Bias" +msgstr "Bias Kliping Bidang Simetri" + +msgid "Revolution Axes Clipping Bias" +msgstr "Bias Kliping Sumbu Revolusi" + +msgid "Min Volume per Convex Hull" +msgstr "Volume Min per Lambung Cembung" + +msgid "Resolution" +msgstr "Resolusi" + +msgid "Max Num Vertices per Convex Hull" +msgstr "Jumlah Simpul Maksimum per Lambung Cembung" + +msgid "Plane Downsampling" +msgstr "Downsampling Plane" + +msgid "Convexhull Downsampling" +msgstr "Downsampling cembung" + +msgid "Normalize Mesh" +msgstr "Normalisasi Mesh" + +msgid "Convexhull Approximation" +msgstr "Perkiraan Lambung Cembung" + +msgid "Max Convex Hulls" +msgstr "Lambung Cembung Maksimal" + +msgid "Project Hull Vertices" +msgstr "Simpul Lambung Proyek" + +msgid "Primitive" +msgstr "Primitif" + +msgid "Height" +msgstr "Tinggi" + +msgid "Radius" +msgstr "Radius" + +msgid "Occluder" +msgstr "Oklusi" + +msgid "Simplification Distance" +msgstr "Penyederhanaan Jarak" + +msgid "Save to File" +msgstr "Simpan ke File" + +msgid "Enabled" +msgstr "Diaktifkan" + +msgid "Make Streamable" +msgstr "Jadikan Streamable" + +msgid "Shadow Meshes" +msgstr "Mesh Bayangan" + +msgid "Lightmap UV" +msgstr "Lightmap UV" + +msgid "LODs" +msgstr "LOD" + +msgid "Normal Split Angle" +msgstr "Sudut Split Normal" + +msgid "Normal Merge Angle" +msgstr "Sudut Penggabungan Normal" + +msgid "Use External" +msgstr "Gunakan Eksternal" + +msgid "Loop Mode" +msgstr "Mode Loop" + +msgid "Keep Custom Tracks" +msgstr "Simpan Trek Kustom" + +msgid "Optimizer" +msgstr "Pengoptimal" + +msgid "Max Velocity Error" +msgstr "Kesalahan Kecepatan Maksimum" + +msgid "Max Angular Error" +msgstr "Kesalahan Sudut Maksimum" + +msgid "Max Precision Error" +msgstr "Kesalahan Presisi Maksimum" + +msgid "Import Tracks" +msgstr "Impor Trek" + +msgid "Bone Map" +msgstr "Peta Tulang" + +msgid "Nodes" +msgstr "Node" + +msgid "Root Type" +msgstr "Jenis Root" + +msgid "Root Name" +msgstr "Nama Akar" + +msgid "Apply Root Scale" +msgstr "Terapkan Skala Root" + +msgid "Root Scale" +msgstr "Skala Akar" + +msgid "Meshes" +msgstr "Mesh" + +msgid "Ensure Tangents" +msgstr "Memastikan Garis Singgung" + +msgid "Generate LODs" +msgstr "Hasilkan LOD" + +msgid "Create Shadow Meshes" +msgstr "Buat Mesh Bayangan" + +msgid "Light Baking" +msgstr "Pemanggangan Ringan" + +msgid "Lightmap Texel Size" +msgstr "Ukuran Lightmap Texel" + +msgid "Skins" +msgstr "Kulit" + +msgid "Use Named Skins" +msgstr "Gunakan Kulit Bernama" + +msgid "FPS" +msgstr "FPS" + +msgid "Trimming" +msgstr "Pemangkasan" + +msgid "Remove Immutable Tracks" +msgstr "Hapus Trek yang Tidak Dapat Diubah" + +msgid "Import Script" +msgstr "Impor Skrip" + +msgid "Normal Map" +msgstr "Peta Normal" + +msgid "Roughness" +msgstr "Kekasaran" + +msgid "Src Normal" +msgstr "Src Normal" + +msgid "Process" +msgstr "Proses" + +msgid "Fix Alpha Border" +msgstr "Perbaiki Batas Alpha" + +msgid "Premult Alpha" +msgstr "Premult Alpha" + +msgid "Normal Map Invert Y" +msgstr "Peta Normal Membalikkan Y" + +msgid "HDR as sRGB" +msgstr "HDR sebagai sRGB" + +msgid "HDR Clamp Exposure" +msgstr "Eksposur Penjepit HDR" + +msgid "Size Limit" +msgstr "Batas Ukuran" + +msgid "Detect 3D" +msgstr "Deteksi 3D" + +msgid "Compress To" +msgstr "Kompres ke" + +msgid "SVG" +msgstr "SVG" + +msgid "Scale With Editor Scale" +msgstr "Skala dengan Skala Editor" + +msgid "Convert Colors With Editor Theme" +msgstr "Ubah Warna Dengan Tema Editor" + +msgid "Atlas File" +msgstr "File Atlas" + +msgid "Import Mode" +msgstr "Mode Impor" + +msgid "Crop to Region" +msgstr "Pangkas ke Wilayah" + +msgid "Trim Alpha Border From Region" +msgstr "Pangkas Perbatasan Alpha Dari Wilayah" + +msgid "Force" +msgstr "Paksa" + +msgid "8 Bit" +msgstr "8 Bit" + +msgid "Mono" +msgstr "Mono" + +msgid "Max Rate" +msgstr "Tingkat Maks" + +msgid "Max Rate Hz" +msgstr "Tingkat Maks Hz" + +msgid "Edit" +msgstr "Edit" + +msgid "Trim" +msgstr "Pangkas" + +msgid "Normalize" +msgstr "Normalisasikan" + +msgid "Loop Begin" +msgstr "Loop Mulai" + +msgid "Loop End" +msgstr "Loop diakhiri" + +msgid "Asset Library" +msgstr "Pustaka Aset" + +msgid "Use Threads" +msgstr "Gunakan Thread" + +msgid "Available URLs" +msgstr "URL yang tersedia" + +msgid "Current Group Idx" +msgstr "Idx Grup Saat Ini" + +msgid "Current Bone Idx" +msgstr "Idx Tulang Saat Ini" + +msgid "Bone Mapper" +msgstr "Pemeta Tulang" + +msgid "Handle Colors" +msgstr "Tangani Warna" + +msgid "Unset" +msgstr "Batal disetel" + +msgid "Set" +msgstr "Terapkan" + +msgid "Missing" +msgstr "Hilang" + +msgid "Error" +msgstr "Error" + +msgid "Stream Player 3D" +msgstr "Pemutar Streaming 3D" + +msgid "Camera" +msgstr "Kamera" + +msgid "Visibility Notifier" +msgstr "Pemberitahu Visibilitas" + +msgid "Particles" +msgstr "Partikel" + +msgid "Particle Attractor" +msgstr "Penarik Partikel" + +msgid "Particle Collision" +msgstr "Tabrakan Partikel" + +msgid "Reflection Probe" +msgstr "Probe Refleksi" + +msgid "Decal" +msgstr "Decal" + +msgid "Voxel GI" +msgstr "Voxel GI" + +msgid "Lightmap Lines" +msgstr "Garis Lightmap" + +msgid "Lightprobe Lines" +msgstr "Garis Lightprobe" + +msgid "Joint Body A" +msgstr "Badan Bersama A" + +msgid "Joint Body B" +msgstr "Badan Bersama B" + +msgid "Fog Volume" +msgstr "Volume Kabut" + +msgid "Manipulator Gizmo Size" +msgstr "Ukuran Manipulator Gizmo" + +msgid "Manipulator Gizmo Opacity" +msgstr "Manipulator Transparansi Gizmo" + +msgid "Show Viewport Rotation Gizmo" +msgstr "Tampilkan Viewport Rotasi Gizmo" + +msgid "Show Viewport Navigation Gizmo" +msgstr "Tampilkan Viewport Navigasi Gizmo" + +msgid "Auto Reload and Parse Scripts on Save" +msgstr "Muat Ulang Otomatis dan Tata Skrip Saat Disimpan" + +msgid "Open Dominant Script on Scene Change" +msgstr "Buka Skrip Dominan pada Perubahan Adegan" + +msgid "External" +msgstr "Eksternal" + +msgid "Use External Editor" +msgstr "Gunakan Editor Eksternal" + +msgid "Exec Path" +msgstr "Path Eksekusi" + +msgid "Script Temperature Enabled" +msgstr "Temperatur Skrip Diaktifkan" + +msgid "Script Temperature History Size" +msgstr "Ukuran Riwayat Temperatur Skrip" + +msgid "Group Help Pages" +msgstr "Halaman Bantuan Grup" + +msgid "Sort Scripts By" +msgstr "Urutkan Skrip Berdasarkan" + +msgid "List Script Names As" +msgstr "Daftar Nama Skrip Sebagai" + +msgid "Exec Flags" +msgstr "Tanda Eksekusi" + +msgid "Skeleton" +msgstr "Kerangka" + +msgid "Selected Bone" +msgstr "Tulang yang Dipilih" + +msgid "Gizmo Settings" +msgstr "Pengaturan Gizmo" + +msgid "Bone Axis Length" +msgstr "Panjang Sumbu Tulang" + +msgid "Bone Shape" +msgstr "Bentuk Tulang" + +msgid "Shader Language" +msgstr "Bahasa Shader" + +msgid "Warnings" +msgstr "Peringatan" + +msgid "Treat Warnings as Errors" +msgstr "Perlakukan Peringatan Sebagai Error" + +msgid "ID" +msgstr "ID" + +msgid "Texture" +msgstr "Tekstur" + +msgid "Margins" +msgstr "Margin" + +msgid "Separation" +msgstr "Pemisahan" + +msgid "Texture Region Size" +msgstr "Ukuran Wilayah Tekstur" + +msgid "Use Texture Padding" +msgstr "Gunakan Padding Tekstur" + +msgid "Atlas Coords" +msgstr "Koordinat Atlas" + +msgid "Size in Atlas" +msgstr "Ukuran dalam Atlas" + +msgid "Alternative ID" +msgstr "ID Alternatif" + +msgid "Speed" +msgstr "Kelajuan" + +msgid "Frames Count" +msgstr "Jumlah Frame" + +msgid "Duration" +msgstr "Durasi" + +msgid "Version Control" +msgstr "Kontrol Versi" + +msgid "Username" +msgstr "Nama Pengguna" + +msgid "SSH Public Key Path" +msgstr "Jalur Kunci Publik SSH" + +msgid "SSH Private Key Path" +msgstr "Jalur Kunci Pribadi SSH" + +msgid "Main Run Args" +msgstr "Jalan Utama Argumen" + +msgid "Templates Search Path" +msgstr "Path Pencarian Templat" + +msgid "Naming" +msgstr "Penamaan" + +msgid "Default Signal Callback Name" +msgstr "Nama Panggilan Balik Sinyal Default" + +msgid "Default Signal Callback to Self Name" +msgstr "Panggilan Balik Sinyal Default ke Nama Sendiri" + +msgid "Scene Name Casing" +msgstr "Casing Nama Adegan" + +msgid "Reimport Missing Imported Files" +msgstr "Impor Ulang File ter-impor yang Hilang" + +msgid "Use Multiple Threads" +msgstr "Menggunakan Beberapa Thread" + +msgid "Convert Text Resources to Binary" +msgstr "Konversi Sumber Daya Teks ke Biner" + +msgid "Plugin Name" +msgstr "Nama Plugin" + +msgid "Autoload on Startup" +msgstr "Muat Otomatis Saat Memulai" + +msgid "Show Scene Tree Root Selection" +msgstr "Tampilkan Pilihan Root Pohon Adegan" + +msgid "Derive Script Globals by Name" +msgstr "Turunkan Script Globals berdasarkan Nama" + +msgid "Use Favorites Root Selection" +msgstr "Gunakan Pemilihan Root Favorit" + +msgid "Flush stdout on Print" +msgstr "Flush stdout pada Print" + +msgid "Max Chars per Second" +msgstr "Maks Karakter Per Detik" + +msgid "Max Queued Messages" +msgstr "Pesan Antrian Maksimal" + +msgid "Max Errors per Second" +msgstr "Maksimal Error Per Detik" + +msgid "Max Warnings per Second" +msgstr "Maksimal Peringatan Per Detik" + +msgid "File Logging" +msgstr "Pencatatan File" + +msgid "Enable File Logging" +msgstr "Aktifkan Pencatatan File" + +msgid "Log Path" +msgstr "Path Log" + +msgid "Max Log Files" +msgstr "File Log Maks" + +msgid "Driver" +msgstr "Driver" + +msgid "GL Compatibility" +msgstr "Kompatibilitas GL" + +msgid "Renderer" +msgstr "Perender" + +msgid "Rendering Method" +msgstr "Metode Rendering" + +msgid "Include Text Server Data" +msgstr "Sertakan Data Server Teks" + +msgid "DPI" +msgstr "DPI" + +msgid "Allow hiDPI" +msgstr "Izinkan hiDPI" + +msgid "Per Pixel Transparency" +msgstr "Transparansi Per Piksel" + +msgid "Allowed" +msgstr "Diizinkan" + +msgid "Threads" +msgstr "Thread" + +msgid "Thread Model" +msgstr "Model Thread" + +msgid "Handheld" +msgstr "Genggam" + +msgid "Orientation" +msgstr "Orientasi" + +msgid "V-Sync" +msgstr "V-Sync" + +msgid "V-Sync Mode" +msgstr "Mode V-Sync" + +msgid "stdout" +msgstr "stdout" + +msgid "Print FPS" +msgstr "Cetak FPS" + +msgid "Print GPU Profile" +msgstr "Cetak Profil GPU" + +msgid "Verbose stdout" +msgstr "Stdout verbose" + +msgid "Frame Delay Msec" +msgstr "Penundaan Frame Milidetik" + +msgid "Low Processor Mode" +msgstr "Mode Processor Rendah" + +msgid "iOS" +msgstr "iOS" + +msgid "Allow High Refresh Rate" +msgstr "Izinkan Kecepatan Refresh Tinggi" + +msgid "Hide Home Indicator" +msgstr "Sembunyikan Indikator Beranda" + +msgid "Hide Status Bar" +msgstr "Sembunyikan Bilah Status" + +msgid "Suppress UI Gesture" +msgstr "Menekan Gerakan UI" + +msgid "XR" +msgstr "XR" + +msgid "OpenXR" +msgstr "OpenXR" + +msgid "Default Action Map" +msgstr "Peta Tindakan Default" + +msgid "Form Factor" +msgstr "Faktor Bentuk" + +msgid "View Configuration" +msgstr "Lihat Konfigurasi" + +msgid "Reference Space" +msgstr "Ruang Referensi" + +msgid "Submit Depth Buffer" +msgstr "Kirim Buffer Kedalaman" + +msgid "Startup Alert" +msgstr "Peringatan Startup" + +msgid "In Editor" +msgstr "Di Editor" + +msgid "Boot Splash" +msgstr "Boot Splash" + +msgid "BG Color" +msgstr "Warna Latar Belakang" + +msgid "Input Devices" +msgstr "Perangkat Masukan" + +msgid "Pen Tablet" +msgstr "Pen Tablet" + +msgid "Environment" +msgstr "Lingkungan" + +msgid "Defaults" +msgstr "Default" + +msgid "Default Clear Color" +msgstr "Warna Jelas Default" + +msgid "Show Image" +msgstr "Tampilkan Gambar" + +msgid "Image" +msgstr "Gambar" + +msgid "Fullsize" +msgstr "Ukuran penuh" + +msgid "Use Filter" +msgstr "Gunakan Filter" + +msgid "Icon" +msgstr "Ikon" + +msgid "macOS Native Icon" +msgstr "Ikon Asli macOS" + +msgid "Windows Native Icon" +msgstr "Ikon Windows" + +msgid "Buffering" +msgstr "Buffering" + +msgid "Agile Event Flushing" +msgstr "Flushing Event yang Tangkas" + +msgid "Pointing" +msgstr "Menunjuk" + +msgid "Emulate Touch From Mouse" +msgstr "Emulasi Sentuhan Dari Mouse" + +msgid "Emulate Mouse From Touch" +msgstr "Emulasi Mouse Dari Sentuhan" + +msgid "Text Driver" +msgstr "Driver Teks" + +msgid "Mouse Cursor" +msgstr "Kursor Mouse" + +msgid "Custom Image" +msgstr "Gambar Kustom" + +msgid "Custom Image Hotspot" +msgstr "Hotspot Gambar Kustom" + +msgid "Tooltip Position Offset" +msgstr "Offset Posisi Tooltip" + +msgid "Minimum Display Time" +msgstr "Waktu Tampilan Minimal" + +msgid "Dotnet" +msgstr "Dotnet" + +msgid "Project" +msgstr "Proyek" + +msgid "Assembly Name" +msgstr "Nama Assembly" + +msgid "Solution Directory" +msgstr "Direktori Solusi" + +msgid "Operation" +msgstr "Operasi" + +msgid "Snap" +msgstr "Pengancingan" + +msgid "Calculate Tangents" +msgstr "Hitung Tangen" + +msgid "Collision" +msgstr "Area Tabrakan" + +msgid "Use Collision" +msgstr "Gunakan Collision" + +msgid "Collision Layer" +msgstr "Lapisan Tabrakan" + +msgid "Collision Mask" +msgstr "Mask Collision" + +msgid "Collision Priority" +msgstr "Prioritas Collision" + +msgid "Flip Faces" +msgstr "Flip Faces" + +msgid "Mesh" +msgstr "Jala" + +msgid "Material" +msgstr "Material" + +msgid "Radial Segments" +msgstr "Segmen Radial" + +msgid "Rings" +msgstr "Cincin" + +msgid "Smooth Faces" +msgstr "Wajah Halus" + +msgid "Sides" +msgstr "Sisi" + +msgid "Cone" +msgstr "Kerucut" + +msgid "Inner Radius" +msgstr "Radius Dalam" + +msgid "Outer Radius" +msgstr "Radius Luar" + +msgid "Ring Sides" +msgstr "Sisi Cincin" + +msgid "Polygon" +msgstr "Poligon" + +msgid "Depth" +msgstr "Kedalaman" + +msgid "Spin Degrees" +msgstr "Derajat Putaran" + +msgid "Spin Sides" +msgstr "Sisi Putar" + +msgid "Path Node" +msgstr "Path Node" + +msgid "Path Interval Type" +msgstr "Jenis Interval Path" + +msgid "Path Interval" +msgstr "Interval Path" + +msgid "Path Simplify Angle" +msgstr "Sudut Penyederhanaan Path" + +msgid "Path Rotation" +msgstr "Rotasi Path" + +msgid "Path Local" +msgstr "Path Lokal" + +msgid "Path Continuous U" +msgstr "Path U Kontinu" + +msgid "Path U Distance" +msgstr "Jarak Path U" + +msgid "Path Joined" +msgstr "Path Bergabung" + +msgid "CSG" +msgstr "CSG" + +msgid "GDScript" +msgstr "GDScript" + +msgid "Function Definition Color" +msgstr "Warna Definisi Fungsi" + +msgid "Global Function Color" +msgstr "Warna Fungsi Global" + +msgid "Node Path Color" +msgstr "Warna Path Node" + +msgid "Node Reference Color" +msgstr "Warna Referensi Node" + +msgid "Annotation Color" +msgstr "Warna Anotasi" + +msgid "String Name Color" +msgstr "Warna Nama String" + +msgid "Max Call Stack" +msgstr "Tumpukan Panggilan Maks" + +msgid "Exclude Addons" +msgstr "Kecualikan Addon" + +msgid "Language Server" +msgstr "Server Bahasa" + +msgid "Enable Smart Resolve" +msgstr "Mengaktifkan Smart Resolve" + +msgid "Show Native Symbols in Editor" +msgstr "Tampilkan Simbol Asli di Editor" + +msgid "Use Thread" +msgstr "Gunakan Thread" + +msgid "glTF" +msgstr "glTF" + +msgid "Embedded Image Handling" +msgstr "Penanganan Gambar Tertanam" + +msgid "Color" +msgstr "Warna" + +msgid "Intensity" +msgstr "Intensitas" + +msgid "Light Type" +msgstr "Jenis Cahaya" + +msgid "Range" +msgstr "Jarak" + +msgid "Inner Cone Angle" +msgstr "Sudut Kerucut Bagian Dalam" + +msgid "Outer Cone Angle" +msgstr "Sudut Kerucut Bagian Luar" + +msgid "Diffuse Img" +msgstr "Difusi Img" + +msgid "Diffuse Factor" +msgstr "Faktor Difusi" + +msgid "Gloss Factor" +msgstr "Faktor Gloss" + +msgid "Specular Factor" +msgstr "Faktor Specular" + +msgid "Spec Gloss Img" +msgstr "Spek Gloss Img" + +msgid "Json" +msgstr "Json" + +msgid "Major Version" +msgstr "Versi Utama" + +msgid "Minor Version" +msgstr "Versi Minor" + +msgid "GLB Data" +msgstr "Data GLB" + +msgid "Use Named Skin Binds" +msgstr "Gunakan Pengikat Skin Bernama" + +msgid "Buffers" +msgstr "Penyangga" + +msgid "Buffer Views" +msgstr "Tampilan Penyangga" + +msgid "Accessors" +msgstr "Pengakses" + +msgid "Materials" +msgstr "Material" + +msgid "Scene Name" +msgstr "Nama Skena" + +msgid "Base Path" +msgstr "Path Dasar" + +msgid "Root Nodes" +msgstr "Node Akar" + +msgid "Texture Samplers" +msgstr "Sampler Tekstur" + +msgid "Images" +msgstr "Gambar" + +msgid "Cameras" +msgstr "Kamera kamera" + +msgid "Lights" +msgstr "Cahaya" + +msgid "Unique Names" +msgstr "Nama Unik" + +msgid "Unique Animation Names" +msgstr "Nama Animasi Unik" + +msgid "Skeletons" +msgstr "Kerangka" + +msgid "Create Animations" +msgstr "Buat Animasi" + +msgid "Animations" +msgstr "Animasi" + +msgid "Handle Binary Image" +msgstr "Menangani Gambar Biner" + +msgid "Blender" +msgstr "Blender" + +msgid "RPC Port" +msgstr "Port RPC" + +msgid "RPC Server Uptime" +msgstr "Waktu Aktif Server RPC" + +msgid "Blender 3 Path" +msgstr "Path Blender 3" + +msgid "FBX" +msgstr "FBX" + +msgid "FBX2glTF Path" +msgstr "Path FBX2glTF" + +msgid "Buffer View" +msgstr "Tampilan Penyangga" + +msgid "Byte Offset" +msgstr "Offset Bita" + +msgid "Component Type" +msgstr "Tipe Komponen" + +msgid "Normalized" +msgstr "Dinormalisasi" + +msgid "Count" +msgstr "Jumlah" + +msgid "Min" +msgstr "Minimal" + +msgid "Max" +msgstr "Maks" + +msgid "Sparse Count" +msgstr "Hitungan Sparse" + +msgid "Sparse Indices Buffer View" +msgstr "Tampilan Buffer Indeks Sparse" + +msgid "Sparse Indices Byte Offset" +msgstr "Offset Byte Indeks Sparse" + +msgid "Sparse Indices Component Type" +msgstr "Jenis Komponen Indeks Sparse" + +msgid "Sparse Values Buffer View" +msgstr "Tampilan Buffer Nilai Sparse" + +msgid "Sparse Values Byte Offset" +msgstr "Nilai Sparse Offset Byte" + +msgid "Loop" +msgstr "Pengulangan" + +msgid "Buffer" +msgstr "Penyangga" + +msgid "Byte Length" +msgstr "Panjang Bita" + +msgid "Byte Stride" +msgstr "Byte Stride" + +msgid "Indices" +msgstr "Indeks" + +msgid "Perspective" +msgstr "Perspektif" + +msgid "FOV" +msgstr "FOV" + +msgid "Size Mag" +msgstr "Ukuran Mag" + +msgid "Depth Far" +msgstr "Kedalaman Jauh" + +msgid "Depth Near" +msgstr "Kedalaman Dekat" + +msgid "Blend Weights" +msgstr "Campuran Bobot" + +msgid "Instance Materials" +msgstr "Bahan Instance" + +msgid "Parent" +msgstr "Induk" + +msgid "Xform" +msgstr "Xform" + +msgid "Skin" +msgstr "Skin" + +msgid "Children" +msgstr "Turunan" + +msgid "Light" +msgstr "Cahaya" + +msgid "Joints" +msgstr "Sendi" + +msgid "Roots" +msgstr "Root" + +msgid "Godot Bone Node" +msgstr "Node Tulang Godot" + +msgid "Skin Root" +msgstr "Root Skin" + +msgid "Joints Original" +msgstr "Sendi Asli" + +msgid "Non Joints" +msgstr "Non Sendi" + +msgid "Godot Skin" +msgstr "Skin Godot" + +msgid "Src Image" +msgstr "Gambar Sumber" + +msgid "Sampler" +msgstr "Sampler" + +msgid "Mag Filter" +msgstr "Filter Mag" + +msgid "Min Filter" +msgstr "Filter Min" + +msgid "Wrap S" +msgstr "Wrap S" + +msgid "Wrap T" +msgstr "Wrap T" + +msgid "Palette Min Width" +msgstr "Lebar Min Palet" + +msgid "Preview Size" +msgstr "Ukuran Pratinjau" + +msgid "Editor Side" +msgstr "Sisi Editor" + +msgid "Mesh Library" +msgstr "Pustaka Bentuk" + +msgid "Physics Material" +msgstr "Material Fisik" + +msgid "Cell" +msgstr "Sel" + +msgid "Octant Size" +msgstr "Ukuran Oktan" + +msgid "Center X" +msgstr "Pusat X" + +msgid "Center Y" +msgstr "Pusat Y" + +msgid "Center Z" +msgstr "Pusat Z" + +msgid "Layer" +msgstr "Lapisan" + +msgid "Mask" +msgstr "Mask" + +msgid "Priority" +msgstr "Prioritas" + +msgid "Bake Navigation" +msgstr "Bake Navigasi" + +msgid "Lightmapping" +msgstr "Pemetaan Cahaya" + +msgid "Bake Quality" +msgstr "Bake Kualitas" + +msgid "Low Quality Ray Count" +msgstr "Jumlah Ray Kualitas Rendah" + +msgid "Medium Quality Ray Count" +msgstr "Jumlah Ray Kualitas Sedang" + +msgid "High Quality Ray Count" +msgstr "Jumlah Ray Kualitas Tinggi" + +msgid "Ultra Quality Ray Count" +msgstr "Jumah Ray Kualitas Ultra" + +msgid "Bake Performance" +msgstr "Bake Performa" + +msgid "Max Rays per Pass" +msgstr "Ray Maks per Pass" + +msgid "Region Size" +msgstr "Ukuran Wilayah" + +msgid "Low Quality Probe Ray Count" +msgstr "Jumlah Ray Probe Berkualitas Rendah" + +msgid "Medium Quality Probe Ray Count" +msgstr "Jumlah Ray Probe Kualitas Sedang" + +msgid "High Quality Probe Ray Count" +msgstr "Jumlah Ray Probe Kualitas Tinggi" + +msgid "Ultra Quality Probe Ray Count" +msgstr "Jumlah Ray Probe Kualitas Ultra" + +msgid "Max Rays per Probe Pass" +msgstr "Ray Maks per Probe Pass" + +msgid "Primitive Meshes" +msgstr "Mesh Primitif" + +msgid "Texel Size" +msgstr "Ukuran Texel" + +msgid "BPM" +msgstr "BPM" + +msgid "Beat Count" +msgstr "Jumlah Ketukan" + +msgid "Bar Beats" +msgstr "Ketukan Bar" + +msgid "Loop Offset" +msgstr "Loop Offset" + +msgid "Eye Height" +msgstr "Tinggi Mata" + +msgid "IOD" +msgstr "IOD" + +msgid "Display Width" +msgstr "Lebar Tampilan" + +msgid "Display to Lens" +msgstr "Tampilan ke Lensa" + +msgid "Oversample" +msgstr "Sampel berlebih" + +msgid "K1" +msgstr "K1" + +msgid "K2" +msgstr "K2" + +msgid "Spawnable Scenes" +msgstr "Adegan yang Dapat Dimunculkan" + +msgid "Spawn Path" +msgstr "Path Spawn" + +msgid "Spawn Limit" +msgstr "Batas Spawn" + +msgid "Root Path" +msgstr "Path Root" + +msgid "Replication Interval" +msgstr "Interval Replikasi" + +msgid "Visibility Update Mode" +msgstr "Mode Pembaruan Visibilitas" + +msgid "Public Visibility" +msgstr "Visibilitas Publik" + +msgid "Auth Callback" +msgstr "Panggilan Balik Otentikasi" + +msgid "Auth Timeout" +msgstr "Batas Waktu Autentikasi" + +msgid "Allow Object Decoding" +msgstr "Izinkan Decoding Objek" + +msgid "Refuse New Connections" +msgstr "Tolak Koneksi Baru" + +msgid "Server Relay" +msgstr "Relai Server" + +msgid "Noise Type" +msgstr "Tipe Kebisingan" + +msgid "Frequency" +msgstr "Frekuensi" + +msgid "Fractal" +msgstr "Fraktal" + +msgid "Octaves" +msgstr "Oktaf" + +msgid "Lacunarity" +msgstr "Lakunaritas" + +msgid "Gain" +msgstr "Keuntungan" + +msgid "Weighted Strength" +msgstr "Kekuatan Tertimbang" + +msgid "Ping Pong Strength" +msgstr "Kekuatan Ping Pong" + +msgid "Cellular" +msgstr "Seluler" + +msgid "Distance Function" +msgstr "Fungsi Jarak" + +msgid "Jitter" +msgstr "Jitter" + +msgid "Return Type" +msgstr "Jenis Pengembalian" + +msgid "Domain Warp" +msgstr "Warp Domain" + +msgid "Amplitude" +msgstr "Amplitudo" + +msgid "Fractal Type" +msgstr "Tipe Fraktal" + +msgid "Fractal Octaves" +msgstr "Oktaf Fraktal" + +msgid "Fractal Lacunarity" +msgstr "Lakunaritas Fraktal" + +msgid "Fractal Gain" +msgstr "Keuntungan Fraktal" + +msgid "Width" +msgstr "Lebar" + +msgid "Invert" +msgstr "Balik" + +msgid "In 3D Space" +msgstr "Di Ruang 3D" + +msgid "Seamless" +msgstr "Mulus" + +msgid "Seamless Blend Skirt" +msgstr "Rok Campuran Mulus" + +msgid "As Normal Map" +msgstr "Sebagai Peta Normal" + +msgid "Bump Strength" +msgstr "Kekuatan Bump" + +msgid "Color Ramp" +msgstr "Ramp Warna" + +msgid "Noise" +msgstr "Kebisingan" + +msgid "Localized Name" +msgstr "Nama yang Dilokalkan" + +msgid "Action Type" +msgstr "Jenis Tindakan" + +msgid "Toplevel Paths" +msgstr "Path Tingkat Atas" + +msgid "Paths" +msgstr "Path" + +msgid "Interaction Profile Path" +msgstr "Path Profil Interaksi" + +msgid "Display Refresh Rate" +msgstr "Kecepatan Refresh Layar" + +msgid "Hand" +msgstr "Tangan" + +msgid "Motion Range" +msgstr "Rentang Gerak" + +msgid "Hand Skeleton" +msgstr "Kerangka Tangan" + +msgid "Subject" +msgstr "Subjek" + +msgid "Names" +msgstr "Nama²" + +msgid "Strings" +msgstr "String" + +msgid "Discover Multicast If" +msgstr "Temukan Multicast Jika" + +msgid "Discover Local Port" +msgstr "Temukan Port Lokal" + +msgid "Discover IPv6" +msgstr "Temukan IPv6" + +msgid "Description URL" +msgstr "Deskripsi URL" + +msgid "Service Type" +msgstr "Jenis Layanan" + +msgid "IGD Control URL" +msgstr "URL Kontrol IGD" + +msgid "IGD Service Type" +msgstr "Jenis Layanan IGD" + +msgid "IGD Our Addr" +msgstr "IGD Alamat Kami" + +msgid "IGD Status" +msgstr "Status IGD" + +msgid "Write Mode" +msgstr "Mode Tulis" + +msgid "WebRTC" +msgstr "WebRTC" + +msgid "Max Channel in Buffer (KB)" +msgstr "Saluran Maksimal dalam Buffer (KB)" + +msgid "Supported Protocols" +msgstr "Protokol yang Didukung" + +msgid "Handshake Headers" +msgstr "Tajuk Jabat Tangan" + +msgid "Inbound Buffer Size" +msgstr "Ukuran Buffer Masuk" + +msgid "Outbound Buffer Size" +msgstr "Ukuran Buffer Keluar" + +msgid "Handshake Timeout" +msgstr "Batas Waktu Jabat Tangan" + +msgid "Max Queued Packets" +msgstr "Paket Antrian Maksimal" + +msgid "Session Mode" +msgstr "Mode Sesi" + +msgid "Required Features" +msgstr "Fitur yang Diperlukan" + +msgid "Optional Features" +msgstr "Fitur Opsional" + +msgid "Requested Reference Space Types" +msgstr "Jenis Ruang Referensi yang Diminta" + +msgid "Reference Space Type" +msgstr "Jenis Ruang Referensi" + +msgid "Visibility State" +msgstr "Status Visibilitas" + +msgid "Android" +msgstr "Android" + +msgid "Android SDK Path" +msgstr "Jalur Android SDK" + +msgid "Debug Keystore" +msgstr "Debug Keystore" + +msgid "Debug Keystore User" +msgstr "Debug Pengguna Keystore" + +msgid "Debug Keystore Pass" +msgstr "Debug Keystore Pass" + +msgid "Force System User" +msgstr "Paksa Pengguna Sistem" + +msgid "Shutdown ADB on Exit" +msgstr "Matikan ADB Saat Keluar" + +msgid "One Click Deploy Clear Previous Install" +msgstr "Satu Klik Deploy Hapus Instalasi Sebelumnya" + +msgid "Launcher Icons" +msgstr "Ikon Peluncur" + +msgid "Main 192 X 192" +msgstr "Utama 192 X 192" + +msgid "Adaptive Foreground 432 X 432" +msgstr "Latar Depan Adaptif 432 X 432" + +msgid "Adaptive Background 432 X 432" +msgstr "Latar Belakang Adaptif 432 X 432" + +msgid "Gradle Build" +msgstr "Gradle Build" + +msgid "Use Gradle Build" +msgstr "Gunakan Gradle Build" + +msgid "Export Format" +msgstr "Format Ekspor" + +msgid "Min SDK" +msgstr "Min SDK" + +msgid "Target SDK" +msgstr "Target SDK" + +msgid "Plugins" +msgstr "Pengaya" + +msgid "Architectures" +msgstr "Arsitektur" + +msgid "Keystore" +msgstr "Keystore" + +msgid "Debug User" +msgstr "Debug Pengguna" + +msgid "Debug Password" +msgstr "Debug Kata Sandi" + +msgid "Release User" +msgstr "Lepaskan Pengguna" + +msgid "Release Password" +msgstr "Lepaskan Kata Sandi" + +msgid "Version" +msgstr "Versi" + +msgid "Code" +msgstr "Kode" + +msgid "Package" +msgstr "Paket" + +msgid "Unique Name" +msgstr "Nama Unik" + +msgid "Signed" +msgstr "Tertanda" + +msgid "App Category" +msgstr "Kategori Aplikasi" + +msgid "Retain Data on Uninstall" +msgstr "Pertahankan Data Saat Copot Pemasangan" + +msgid "Exclude From Recents" +msgstr "Kecualikan dari Terbaru" + +msgid "Graphics" +msgstr "Grafik" + +msgid "OpenGL Debug" +msgstr "Debug OpenGL" + +msgid "XR Features" +msgstr "Fitur XR" + +msgid "XR Mode" +msgstr "Mode XR" + +msgid "Hand Tracking" +msgstr "Pelacakan Tangan" + +msgid "Hand Tracking Frequency" +msgstr "Frekuensi Pelacakan Tangan" + +msgid "Passthrough" +msgstr "Melewati" + +msgid "Immersive Mode" +msgstr "Mode Imersif" + +msgid "Support Small" +msgstr "Dukungan Kecil" + +msgid "Support Normal" +msgstr "Dukungan Normal" + +msgid "Support Large" +msgstr "Dukungan Besar" + +msgid "Support Xlarge" +msgstr "Dukungan Ekstra Besar" + +msgid "User Data Backup" +msgstr "Cadangan Data Pengguna" + +msgid "Allow" +msgstr "Izinkan" + +msgid "Command Line" +msgstr "Baris Perintah" + +msgid "Extra Args" +msgstr "Arg Ekstra" + +msgid "APK Expansion" +msgstr "Ekspansi APK" + +msgid "Salt" +msgstr "Garam" + +msgid "Public Key" +msgstr "Kunci Publik" + +msgid "Permissions" +msgstr "Perizinan" + +msgid "Custom Permissions" +msgstr "Perizinan Kustom" + +msgid "Icons" +msgstr "Ikon" + +msgid "iPhone 120 X 120" +msgstr "iPhone 120 × 120" + +msgid "iPhone 180 X 180" +msgstr "iPhone 180 × 180" + +msgid "iPad 76 X 76" +msgstr "iPad 76 × 76" + +msgid "iPad 152 X 152" +msgstr "iPad 152 × 152" + +msgid "iPad 167 X 167" +msgstr "iPad 167 × 167" + +msgid "App Store 1024 X 1024" +msgstr "App Store 1024 X 1024" + +msgid "Spotlight 40 X 40" +msgstr "Spotlight 40 X 40" + +msgid "Spotlight 80 X 80" +msgstr "Spotlight 80 X 80" + +msgid "Settings 58 X 58" +msgstr "Pengaturan 58 X 58" + +msgid "Settings 87 X 87" +msgstr "Pengaturan 87 X 87" + +msgid "Notification 40 X 40" +msgstr "Pemberitahuan 40 X 40" + +msgid "Notification 60 X 60" +msgstr "Pemberitahuan 60 X 60" + +msgid "Landscape Launch Screens" +msgstr "Layar Peluncuran Lansekap" + +msgid "iPhone 2436 X 1125" +msgstr "iPhone 2436 X 1125" + +msgid "iPhone 2208 X 1242" +msgstr "iPhone 2208 X 1242" + +msgid "iPad 1024 X 768" +msgstr "iPad 1024 X 768" + +msgid "iPad 2048 X 1536" +msgstr "iPad 152 × 152" + +msgid "Portrait Launch Screens" +msgstr "Layar Peluncuran Potret" + +msgid "iPhone 640 X 960" +msgstr "iPhone 640 X 960" + +msgid "iPhone 640 X 1136" +msgstr "iPhone 640 X 1136" + +msgid "iPhone 750 X 1334" +msgstr "iPhone 750 X 1334" + +msgid "iPhone 1125 X 2436" +msgstr "iPhone 1125 X 2436" + +msgid "iPad 768 X 1024" +msgstr "iPad 768 X 1024" + +msgid "iPad 1536 X 2048" +msgstr "iPad 1536 X 2048" + +msgid "iPhone 1242 X 2208" +msgstr "iPhone 1242 X 2208" + +msgid "App Store Team ID" +msgstr "ID Tim App Store" + +msgid "Provisioning Profile UUID Debug" +msgstr "Profil Penyediaan Debug UUID" + +msgid "Code Sign Identity Debug" +msgstr "Debug Identitas Tanda Kode" + +msgid "Export Method Debug" +msgstr "Debug Metode Ekspor" + +msgid "Provisioning Profile UUID Release" +msgstr "Profil Penyediaan Rilis UUID" + +msgid "Code Sign Identity Release" +msgstr "Rilis Identitas Tanda Kode" + +msgid "Export Method Release" +msgstr "Rilis Metode Ekspor" + +msgid "Targeted Device Family" +msgstr "Keluarga Perangkat yang Ditargetkan" + +msgid "Bundle Identifier" +msgstr "Pengidentifikasi Bundel" + +msgid "Signature" +msgstr "Tanda Tangan" + +msgid "Short Version" +msgstr "Versi Pendek" + +msgid "Icon Interpolation" +msgstr "Interpolasi Ikon" + +msgid "Launch Screens Interpolation" +msgstr "Peluncuran Layar Interpolasi" + +msgid "Capabilities" +msgstr "Kapabilitas" + +msgid "Access Wi-Fi" +msgstr "Akses Wi-Fi" + +msgid "Push Notifications" +msgstr "Pemberitahuan Push" + +msgid "User Data" +msgstr "Data Pengguna" + +msgid "Accessible From Files App" +msgstr "Dapat Diakses Melalui Aplikasi Berkas" + +msgid "Accessible From iTunes Sharing" +msgstr "Dapat diakses dari berbagi iTunes" + +msgid "Privacy" +msgstr "Privasi" + +msgid "Camera Usage Description" +msgstr "Deskripsi Penggunaan Kamera" + +msgid "Camera Usage Description Localized" +msgstr "Deskripsi Penggunaan Kamera Dilokalisasi" + +msgid "Microphone Usage Description" +msgstr "Deskripsi Penggunaan Mikrofon" + +msgid "Microphone Usage Description Localized" +msgstr "Deskripsi Penggunaan Mikrofon Dilokalisasi" + +msgid "Photolibrary Usage Description" +msgstr "Deskripsi Penggunaan Galeri" + +msgid "Photolibrary Usage Description Localized" +msgstr "Deskripsi Penggunaan Photolibrary Dilokalisasi" + +msgid "Storyboard" +msgstr "Papan Cerita" + +msgid "Use Launch Screen Storyboard" +msgstr "Gunakan Storyboard Layar Peluncuran" + +msgid "Image Scale Mode" +msgstr "Mode Skala Gambar" + +msgid "Custom Image @2x" +msgstr "Gambar Kustom @2x" + +msgid "Custom Image @3x" +msgstr "Gambar Kustom @3x" + +msgid "Use Custom BG Color" +msgstr "Gunakan Warna BG Kustom" + +msgid "Custom BG Color" +msgstr "Warna BG Kustom" + +msgid "Architecture" +msgstr "Arsitektur" + +msgid "SSH Remote Deploy" +msgstr "Deploy Remot SSH" + +msgid "Extra Args SSH" +msgstr "Args SSH Ekstra" + +msgid "Extra Args SCP" +msgstr "SCP Args Ekstra" + +msgid "Run Script" +msgstr "Jalankan Skrip" + +msgid "Cleanup Script" +msgstr "Bersihkan Skrip" + +msgid "macOS" +msgstr "macOS" + +msgid "rcodesign" +msgstr "rcodesign" + +msgid "Copyright" +msgstr "Hak Cipta" + +msgid "Copyright Localized" +msgstr "Hak Cipta Dilokalkan" + +msgid "High Res" +msgstr "Resolusi Tinggi" + +msgid "Codesign" +msgstr "Codesign" + +msgid "Identity" +msgstr "Identitas" + +msgid "Certificate File" +msgstr "File Sertifikat" + +msgid "Certificate Password" +msgstr "Kata Sandi Sertifikat" + +msgid "Entitlements" +msgstr "Hak" + +msgid "Custom File" +msgstr "File Kustom" + +msgid "Allow JIT Code Execution" +msgstr "Izinkan Eksekusi Kode JIT" + +msgid "Allow Unsigned Executable Memory" +msgstr "Izinkan Memori yang Dapat Dieksekusi Tanpa Ditandai" + +msgid "Allow Dyld Environment Variables" +msgstr "Izinkan Variabel Lingkungan Dyld" + +msgid "Disable Library Validation" +msgstr "Menonaktifkan Validasi Library" + +msgid "Audio Input" +msgstr "Input Audio" + +msgid "Location" +msgstr "Lokalisasi" + +msgid "Address Book" +msgstr "Buku Alamat" + +msgid "Calendars" +msgstr "Kalender" + +msgid "Photos Library" +msgstr "Perpustakaan Foto" + +msgid "Apple Events" +msgstr "Acara Apple" + +msgid "Debugging" +msgstr "Men-debug" + +msgid "App Sandbox" +msgstr "Sandbox Aplikasi" + +msgid "Network Server" +msgstr "Server Jaringan" + +msgid "Network Client" +msgstr "Klien Jaringan" + +msgid "Device USB" +msgstr "Perangkat USB" + +msgid "Device Bluetooth" +msgstr "Perangkat Bluetooth" + +msgid "Files Downloads" +msgstr "Unduhan File" + +msgid "Files Pictures" +msgstr "File Gambar" + +msgid "Files Music" +msgstr "File Musik" + +msgid "Files Movies" +msgstr "File Video" + +msgid "Helper Executables" +msgstr "Eksekusi Pembantu" + +msgid "Custom Options" +msgstr "Pilihan Kustom" + +msgid "Notarization" +msgstr "Notarisasi" + +msgid "Apple ID Name" +msgstr "Nama ID Apple" + +msgid "Apple ID Password" +msgstr "Kata Sandi ID Apple" + +msgid "Apple Team ID" +msgstr "ID Tim Apple" + +msgid "API UUID" +msgstr "UUID API" + +msgid "API Key" +msgstr "Kunci API" + +msgid "API Key ID" +msgstr "ID Kunci API" + +msgid "Location Usage Description" +msgstr "Deskripsi Penggunaan Lokasi" + +msgid "Location Usage Description Localized" +msgstr "Deskripsi Penggunaan Lokasi Dilokalkan" + +msgid "Address Book Usage Description" +msgstr "Deskripsi Penggunaan Buku Alamat" + +msgid "Address Book Usage Description Localized" +msgstr "Deskripsi Penggunaan Buku Alamat Dilokalisasi" + +msgid "Calendar Usage Description" +msgstr "Deskripsi Penggunaan Kalender" + +msgid "Calendar Usage Description Localized" +msgstr "Deskripsi Penggunaan Kalender Dilokalisasi" + +msgid "Photos Library Usage Description" +msgstr "Deskripsi Penggunaan Library Foto" + +msgid "Photos Library Usage Description Localized" +msgstr "Deskripsi Penggunaan Library Foto Dilokalisasi" + +msgid "Desktop Folder Usage Description" +msgstr "Deskripsi Penggunaan Folder Desktop" + +msgid "Desktop Folder Usage Description Localized" +msgstr "Deskripsi Penggunaan Folder Desktop Dilokalisasi" + +msgid "Documents Folder Usage Description" +msgstr "Deskripsi Penggunaan Folder Dokumen" + +msgid "Documents Folder Usage Description Localized" +msgstr "Deskripsi Penggunaan Folder Dokumen Dilokalisasi" + +msgid "Downloads Folder Usage Description" +msgstr "Deskripsi Penggunaan Folder Unduhan" + +msgid "Downloads Folder Usage Description Localized" +msgstr "Unduhan Deskripsi Penggunaan Folder Dilokalisasi" + +msgid "Network Volumes Usage Description" +msgstr "Deskripsi Penggunaan Volume Jaringan" + +msgid "Network Volumes Usage Description Localized" +msgstr "Deskripsi Penggunaan Volume Jaringan Dilokalisasi" + +msgid "Removable Volumes Usage Description" +msgstr "Deskripsi Penggunaan Volume yang Dapat Dilepas" + +msgid "Removable Volumes Usage Description Localized" +msgstr "Volume yang Dapat Dilepas Deskripsi Penggunaan Dilokalisasi" + +msgid "UWP" +msgstr "UWP" + +msgid "signtool" +msgstr "alat tanda" + +msgid "Debug Certificate" +msgstr "Sertifikat Awakutu" + +msgid "Debug Algorithm" +msgstr "Algoritma Awakutu" + +msgid "Display Name" +msgstr "Nama Tampilan" + +msgid "Short Name" +msgstr "Nama Singkat" + +msgid "Publisher" +msgstr "Penerbit" + +msgid "Publisher Display Name" +msgstr "Nama Tampilan Penerbit" + +msgid "Product GUID" +msgstr "GUID Produk" + +msgid "Publisher GUID" +msgstr "GUID Penerbit" + +msgid "Signing" +msgstr "Penandatanganan" + +msgid "Certificate" +msgstr "Sertifikat" + +msgid "Algorithm" +msgstr "Algoritma" + +msgid "Major" +msgstr "Mayor" + +msgid "Minor" +msgstr "Minor" + +msgid "Build" +msgstr "Build" + +msgid "Revision" +msgstr "Revisi" + +msgid "Landscape" +msgstr "Lanskap" + +msgid "Portrait" +msgstr "Potret" + +msgid "Landscape Flipped" +msgstr "Lanskap Terbalik" + +msgid "Portrait Flipped" +msgstr "Potret Terbalik" + +msgid "Store Logo" +msgstr "Logo Store" + +msgid "Square 44 X 44 Logo" +msgstr "Logo Persegi 44 X 44" + +msgid "Square 71 X 71 Logo" +msgstr "Logo Persegi 71 X 71" + +msgid "Square 150 X 150 Logo" +msgstr "Logo Persegi 150 X 150" + +msgid "Square 310 X 310 Logo" +msgstr "Logo Persegi 310 X 310" + +msgid "Wide 310 X 150 Logo" +msgstr "Logo Lebar 310 X 150" + +msgid "Splash Screen" +msgstr "Splash Screen" + +msgid "Tiles" +msgstr "Ubin" + +msgid "Show Name on Square 150 X 150" +msgstr "Tampilkan Nama Pada Persegi 150 X 150" + +msgid "Show Name on Wide 310 X 150" +msgstr "Tampilkan Nama Dalam Lebar 310 X 150" + +msgid "Show Name on Square 310 X 310" +msgstr "Tampilkan Nama Pada Persegi 310 X 310" + +msgid "Web" +msgstr "Situs" + +msgid "HTTP Host" +msgstr "Host HTTP" + +msgid "HTTP Port" +msgstr "Port HTTP" + +msgid "Use TLS" +msgstr "Gunakan TLS" + +msgid "TLS Key" +msgstr "Kunci TLS" + +msgid "TLS Certificate" +msgstr "Sertifikat TLS" + +msgid "Variant" +msgstr "Varian" + +msgid "Extensions Support" +msgstr "Dukungan Ekstensi" + +msgid "VRAM Texture Compression" +msgstr "Kompresi Tekstur VRAM" + +msgid "For Desktop" +msgstr "Untuk Desktop" + +msgid "For Mobile" +msgstr "Untuk Mobile" + +msgid "HTML" +msgstr "HTML" + +msgid "Export Icon" +msgstr "Ikon Ekspor" + +msgid "Custom HTML Shell" +msgstr "Shell HTML Kustom" + +msgid "Head Include" +msgstr "Head Termasuk" + +msgid "Canvas Resize Policy" +msgstr "Kebijakan Pengubahan Ukuran Kanvas" + +msgid "Focus Canvas on Start" +msgstr "Fokus Kanvas pada Start" + +msgid "Experimental Virtual Keyboard" +msgstr "Keyboard Virtual Eksperimental" + +msgid "Progressive Web App" +msgstr "Aplikasi Web Progresif" + +msgid "Offline Page" +msgstr "Halaman Luring" + +msgid "Icon 144 X 144" +msgstr "Ikon 144 X 144" + +msgid "Icon 180 X 180" +msgstr "Ikon 180 X 180" + +msgid "Icon 512 X 512" +msgstr "Ikon 512 X 512" + +msgid "Windows" +msgstr "Windows" + +msgid "rcedit" +msgstr "rcedit" + +msgid "osslsigncode" +msgstr "osslsigncode" + +msgid "wine" +msgstr "wine" + +msgid "Identity Type" +msgstr "Tipe Identitas" + +msgid "Timestamp" +msgstr "Timestamp" + +msgid "Timestamp Server URL" +msgstr "URL Server Timestamp" + +msgid "Digest Algorithm" +msgstr "Algoritma Digest" + +msgid "Modify Resources" +msgstr "Memodifikasi Sumber Daya" + +msgid "Console Wrapper Icon" +msgstr "Ikon Pembungkus Konsol" + +msgid "File Version" +msgstr "Versi Berkas" + +msgid "Product Version" +msgstr "Versi Produk" + +msgid "Company Name" +msgstr "Nama Perusahaan" + +msgid "Product Name" +msgstr "Nama Produk" + +msgid "File Description" +msgstr "Deskripsi Berkas" + +msgid "Trademarks" +msgstr "Merek Dagang" + +msgid "Sprite Frames" +msgstr "Frame Sprite" + +msgid "Frame" +msgstr "Frame" + +msgid "Speed Scale" +msgstr "Skala Kecepatan" + +msgid "Centered" +msgstr "Terpusat" + +msgid "Flip H" +msgstr "Balik Horizontal" + +msgid "Flip V" +msgstr "Balik Vertikal" + +msgid "Monitoring" +msgstr "Pemantauan" + +msgid "Monitorable" +msgstr "Dapat dipantau" + +msgid "Gravity" +msgstr "Gravitasi" + +msgid "Space Override" +msgstr "Ruang Override" + +msgid "Point" +msgstr "Titik" + +msgid "Point Unit Distance" +msgstr "Jarak Satuan Titik" + +msgid "Point Center" +msgstr "Pusat Titik" + +msgid "Direction" +msgstr "Arah" + +msgid "Linear Damp" +msgstr "Lembab Linier" + +msgid "Angular Damp" +msgstr "Lembab Sudut" + +msgid "Audio Bus" +msgstr "Bus Audio" + +msgid "Current" +msgstr "Saat ini" + +msgid "Volume dB" +msgstr "Volume dB" + +msgid "Pitch Scale" +msgstr "Skala Pitch" + +msgid "Playing" +msgstr "Memainkan" + +msgid "Autoplay" +msgstr "Putar otomatis" + +msgid "Stream Paused" +msgstr "Streaming Dijeda" + +msgid "Max Distance" +msgstr "Jarak Maks" + +msgid "Attenuation" +msgstr "Atenuasi" + +msgid "Max Polyphony" +msgstr "Polifoni Maks" + +msgid "Panning Strength" +msgstr "Kekuatan Panning" + +msgid "Bus" +msgstr "Bus" + +msgid "Area Mask" +msgstr "Mask Area" + +msgid "Copy Mode" +msgstr "Mode Salin" + +msgid "Anchor Mode" +msgstr "Mode Jangkar" + +msgid "Ignore Rotation" +msgstr "Abaikan Rotasi" + +msgid "Process Callback" +msgstr "Proses Panggilan Balik" + +msgid "Left" +msgstr "Kiri" + +msgid "Top" +msgstr "Atas" + +msgid "Right" +msgstr "Kanan" + +msgid "Bottom" +msgstr "Bawah" + +msgid "Smoothed" +msgstr "Dihaluskan" + +msgid "Position Smoothing" +msgstr "Penghalusan Posisi" + +msgid "Rotation Smoothing" +msgstr "Penghalusan Rotasi" + +msgid "Drag" +msgstr "Seret" + +msgid "Horizontal Enabled" +msgstr "Horizontal Diaktifkan" + +msgid "Vertical Enabled" +msgstr "Vertikal Diaktifkan" + +msgid "Horizontal Offset" +msgstr "Offset Horisontal" + +msgid "Vertical Offset" +msgstr "Offset Vertikal" + +msgid "Left Margin" +msgstr "Margin Kiri" + +msgid "Top Margin" +msgstr "Margin Atas" + +msgid "Right Margin" +msgstr "Margin Kanan" + +msgid "Bottom Margin" +msgstr "Margin Bawah" + +msgid "Draw Screen" +msgstr "Gambar Layar" + +msgid "Draw Limits" +msgstr "Menggambar Batas" + +msgid "Draw Drag Margin" +msgstr "Margin Seret Gambar" + +msgid "Tweaks" +msgstr "Tweak" + +msgid "Fit Margin" +msgstr "Pas Margin" + +msgid "Clear Margin" +msgstr "Hapus Margin" + +msgid "Use Mipmaps" +msgstr "Gunakan Mipmaps" + +msgid "Disable Mode" +msgstr "Mode Nonaktifkan" + +msgid "Input" +msgstr "Input" + +msgid "Pickable" +msgstr "Dapat dipilih" + +msgid "Build Mode" +msgstr "Mode Build" + +msgid "Disabled" +msgstr "Dinonaktifkan" + +msgid "One Way Collision" +msgstr "Tabrakan Satu Arah" + +msgid "One Way Collision Margin" +msgstr "Margin Tabrakan Satu Arah" + +msgid "Debug Color" +msgstr "Warna Debug" + +msgid "Emitting" +msgstr "Memancarkan" + +msgid "Time" +msgstr "Waktu" + +msgid "Lifetime" +msgstr "Seumur hidup" + +msgid "One Shot" +msgstr "Satu Tembakan" + +msgid "Preprocess" +msgstr "Mempersiapkan" + +msgid "Explosiveness" +msgstr "Daya ledak" + +msgid "Randomness" +msgstr "Keacakan" + +msgid "Lifetime Randomness" +msgstr "Keacakan Seumur Hidup" + +msgid "Fixed FPS" +msgstr "FPS tetap" + +msgid "Fract Delta" +msgstr "Fract Delta" + +msgid "Drawing" +msgstr "Menggambar" + +msgid "Local Coords" +msgstr "Koordinat Lokal" + +msgid "Draw Order" +msgstr "Urutan Gambar" + +msgid "Emission Shape" +msgstr "Bentuk Emisi" + +msgid "Sphere Radius" +msgstr "Radius Bola" + +msgid "Rect Extents" +msgstr "Luas Persegi" + +msgid "Points" +msgstr "Titik" + +msgid "Normals" +msgstr "Normal" + +msgid "Colors" +msgstr "Warna" + +msgid "Particle Flags" +msgstr "Bendera Partikel" + +msgid "Align Y" +msgstr "Sejajarkan Y" + +msgid "Spread" +msgstr "Menyebar" + +msgid "Initial Velocity" +msgstr "Kecepatan Awal" + +msgid "Velocity Min" +msgstr "Kecepatan Min" + +msgid "Velocity Max" +msgstr "Kecepatan Maks" + +msgid "Angular Velocity" +msgstr "Kecepatan Sudut" + +msgid "Velocity Curve" +msgstr "Kurva Kecepatan" + +msgid "Orbit Velocity" +msgstr "Kecepatan Orbit" + +msgid "Linear Accel" +msgstr "Akselerasi Linier" + +msgid "Accel Min" +msgstr "Aksel Min" + +msgid "Accel Max" +msgstr "Aksel Maks" + +msgid "Accel Curve" +msgstr "Kurva Akselerasi" + +msgid "Radial Accel" +msgstr "Aksel Radial" + +msgid "Tangential Accel" +msgstr "Aksel Tangensial" + +msgid "Damping" +msgstr "Redaman" + +msgid "Damping Min" +msgstr "Redaman Min" + +msgid "Damping Max" +msgstr "Redaman Maks" + +msgid "Damping Curve" +msgstr "Kurva Redaman" + +msgid "Angle" +msgstr "Sudut" + +msgid "Angle Min" +msgstr "Sudut Min" + +msgid "Angle Max" +msgstr "Sudut Maks" + +msgid "Angle Curve" +msgstr "Kurva Sudut" + +msgid "Scale Amount Min" +msgstr "Jumlah Skala Min" + +msgid "Scale Amount Max" +msgstr "Jumlah Skala Maks" + +msgid "Scale Amount Curve" +msgstr "Kurva Jumlah Skala" + +msgid "Split Scale" +msgstr "Skala Terpisah" + +msgid "Scale Curve X" +msgstr "Kurva Skala X" + +msgid "Scale Curve Y" +msgstr "Kurva Skala Y" + +msgid "Color Initial Ramp" +msgstr "Ramp Awal Warna" + +msgid "Hue Variation" +msgstr "Variasi Hue" + +msgid "Variation Min" +msgstr "Variasi Min" + +msgid "Variation Max" +msgstr "Variasi Maks" + +msgid "Variation Curve" +msgstr "Kurva Variasi" + +msgid "Speed Min" +msgstr "Kecepatan Min" + +msgid "Speed Max" +msgstr "Kecepatan Maks" + +msgid "Speed Curve" +msgstr "Kurva Kecepatan" + +msgid "Offset Min" +msgstr "Offset Min" + +msgid "Offset Max" +msgstr "Offset Max" + +msgid "Offset Curve" +msgstr "Kurva Offset" + +msgid "Sub Emitter" +msgstr "Sub Emitor" + +msgid "Process Material" +msgstr "Bahan Proses" + +msgid "Interpolate" +msgstr "Interpolasi" + +msgid "Base Size" +msgstr "Ukuran Dasar" + +msgid "Visibility Rect" +msgstr "Visibilitas Persegi" + +msgid "Trails" +msgstr "Jalur" + +msgid "Sections" +msgstr "Bagian" + +msgid "Section Subdivisions" +msgstr "Subdivisi Bagian" + +msgid "Node A" +msgstr "Node A" + +msgid "Node B" +msgstr "Node B" + +msgid "Bias" +msgstr "Bias" + +msgid "Disable Collision" +msgstr "Nonaktifkan Tabrakan" + +msgid "Softness" +msgstr "Kelembutan" + +msgid "Length" +msgstr "Panjang" + +msgid "Initial Offset" +msgstr "Offset Awal" + +msgid "Rest Length" +msgstr "Lama Istirahat" + +msgid "Stiffness" +msgstr "Kekakuan" + +msgid "Editor Only" +msgstr "Hanya Editor" + +msgid "Energy" +msgstr "Energi" + +msgid "Blend Mode" +msgstr "Mode Campuran" + +msgid "Z Min" +msgstr "Z Min" + +msgid "Z Max" +msgstr "Z Max" + +msgid "Layer Min" +msgstr "Lapisan Minimal" + +msgid "Layer Max" +msgstr "Lapisan Maksimal" + +msgid "Item Cull Mask" +msgstr "Item Cull Mask" + +msgid "Shadow" +msgstr "Bayangan" + +msgid "Filter Smooth" +msgstr "Filter Halus" + +msgid "Texture Scale" +msgstr "Skala Tekstur" + +msgid "Closed" +msgstr "Tertutup" + +msgid "Cull Mode" +msgstr "Mode Cull" + +msgid "SDF Collision" +msgstr "Tumbukan SDF" + +msgid "Occluder Light Mask" +msgstr "Mask Cahaya Occluder" + +msgid "Width Curve" +msgstr "Lebar Kurva" + +msgid "Default Color" +msgstr "Warna Bawaan" + +msgid "Fill" +msgstr "Isi" + +msgid "Gradient" +msgstr "Gradasi" + +msgid "Texture Mode" +msgstr "Mode Tekstur" + +msgid "Capping" +msgstr "Pembatasan" + +msgid "Joint Mode" +msgstr "Mode Joint" + +msgid "Begin Cap Mode" +msgstr "Mulai Mode Cap" + +msgid "End Cap Mode" +msgstr "Akhiri Mode Cap" + +msgid "Border" +msgstr "Sisi" + +msgid "Sharp Limit" +msgstr "Batas Tajam" + +msgid "Round Precision" +msgstr "Presisi Bulat" + +msgid "Antialiased" +msgstr "Antialiasi" + +msgid "Gizmo Extents" +msgstr "Perluas Gizmo" + +msgid "Multimesh" +msgstr "Multimesh" + +msgid "Pathfinding" +msgstr "Menemukan Jalur" + +msgid "Path Desired Distance" +msgstr "Jalur Jarak yang Diinginkan" + +msgid "Target Desired Distance" +msgstr "Target Jarak yang Diinginkan" + +msgid "Path Max Distance" +msgstr "Jarak Maksimum Jalur" + +msgid "Navigation Layers" +msgstr "Lapisan Navigasi" + +msgid "Pathfinding Algorithm" +msgstr "Algoritma Pencarian Jalur" + +msgid "Path Postprocessing" +msgstr "Jalur Postprocessing" + +msgid "Path Metadata Flags" +msgstr "Bendera Metadata Jalur" + +msgid "Avoidance" +msgstr "Penghindaran" + +msgid "Avoidance Enabled" +msgstr "Penghindaran Diaktifkan" + +msgid "Neighbor Distance" +msgstr "Jarak Tetangga" + +msgid "Max Neighbors" +msgstr "Tetangga Maks" + +msgid "Time Horizon" +msgstr "Cakrawala Waktu" + +msgid "Max Speed" +msgstr "Kecepatan Maks" + +msgid "Use Custom" +msgstr "Gunakan Kustom" + +msgid "Path Custom Color" +msgstr "Warna Kustom Jalur" + +msgid "Path Custom Point Size" +msgstr "Ukuran Titik Kustom Jalur" + +msgid "Path Custom Line Width" +msgstr "Lebar Garis Kustom Jalur" + +msgid "Bidirectional" +msgstr "Dua arah" + +msgid "Start Position" +msgstr "Posisi Awal" + +msgid "End Position" +msgstr "Posisi Akhir" + +msgid "Enter Cost" +msgstr "Biaya Masuk" + +msgid "Travel Cost" +msgstr "Biaya Perjalanan" + +msgid "Estimate Radius" +msgstr "Estimasi Radius" + +msgid "Navigation Polygon" +msgstr "Poligon Navigasi" + +msgid "Skew" +msgstr "Condong" + +msgid "Scroll" +msgstr "Gulir" + +msgid "Base Offset" +msgstr "Offset Basis" + +msgid "Base Scale" +msgstr "Skala Dasar" + +msgid "Limit Begin" +msgstr "Batas Awal" + +msgid "Limit End" +msgstr "Batas Akhir" + +msgid "Ignore Camera Zoom" +msgstr "Abaikan Zoom Kamera" + +msgid "Motion" +msgstr "Gerakan" + +msgid "Mirroring" +msgstr "Pencerminan" + +msgid "Curve" +msgstr "Kurva" + +msgid "Progress" +msgstr "Kemajuan" + +msgid "Progress Ratio" +msgstr "Rasio Perkembangan" + +msgid "H Offset" +msgstr "Offset H" + +msgid "V Offset" +msgstr "Offset V" + +msgid "Rotates" +msgstr "Berputar" + +msgid "Cubic Interp" +msgstr "Interp Kubik" + +msgid "Lookahead" +msgstr "Lihat ke depan" + +msgid "Bone 2D Nodepath" +msgstr "Jalur Node Tulang 2D" + +msgid "Bone 2D Index" +msgstr "Indeks Tulang 2D" + +msgid "Auto Configure Joint" +msgstr "Konfigurasi Otomatis Sambungan" + +msgid "Simulate Physics" +msgstr "Simulasi Fisika" + +msgid "Follow Bone When Simulating" +msgstr "Ikuti Tulang Saat Simulasi" + +msgid "Physics Material Override" +msgstr "Penggantian Material Fisika" + +msgid "Constant Linear Velocity" +msgstr "Kecepatan Linear Konstan" + +msgid "Constant Angular Velocity" +msgstr "Kecepatan Sudut Konstan" + +msgid "Sync to Physics" +msgstr "Sinkron Dengan Fisika" + +msgid "Mass" +msgstr "Massa" + +msgid "Inertia" +msgstr "Inersia" + +msgid "Center of Mass Mode" +msgstr "Pusat Mode Massa" + +msgid "Center of Mass" +msgstr "Pusat Massa" + +msgid "Gravity Scale" +msgstr "Skala Gravitasi" + +msgid "Custom Integrator" +msgstr "Integrator Kustom" + +msgid "Continuous CD" +msgstr "CD Berkelanjutan" + +msgid "Max Contacts Reported" +msgstr "Kontak Maks Dilaporkan" + +msgid "Contact Monitor" +msgstr "Monitor Kontak" + +msgid "Sleeping" +msgstr "Tidur" + +msgid "Can Sleep" +msgstr "Bisa Tidur" + +msgid "Lock Rotation" +msgstr "Kunci Rotasi" + +msgid "Freeze" +msgstr "Membeku" + +msgid "Freeze Mode" +msgstr "Modus Beku" + +msgid "Linear" +msgstr "Linier" + +msgid "Damp Mode" +msgstr "Mode Lembab" + +msgid "Damp" +msgstr "Lembab" + +msgid "Angular" +msgstr "Sudut" + +msgid "Constant Forces" +msgstr "Kekuatan Konstan" + +msgid "Torque" +msgstr "Torsi" + +msgid "Motion Mode" +msgstr "Mode Gerak" + +msgid "Up Direction" +msgstr "Arah Atas" + +msgid "Slide on Ceiling" +msgstr "Geser di Langit-langit" + +msgid "Wall Min Slide Angle" +msgstr "Sudut Geser Min Dinding" + +msgid "Floor" +msgstr "Lantai" + +msgid "Stop on Slope" +msgstr "Berhenti di Lereng" + +msgid "Constant Speed" +msgstr "Kecepatan Konstan" + +msgid "Block on Wall" +msgstr "Blok di Dinding" + +msgid "Max Angle" +msgstr "Sudut Maks" + +msgid "Snap Length" +msgstr "Panjang Snap" + +msgid "Moving Platform" +msgstr "Platform Bergerak" + +msgid "On Leave" +msgstr "Ditinggal" + +msgid "Floor Layers" +msgstr "Lapisan Lantai" + +msgid "Wall Layers" +msgstr "Lapisan Dinding" + +msgid "Safe Margin" +msgstr "Batas Aman" + +msgid "UV" +msgstr "UV" + +msgid "Vertex Colors" +msgstr "Warna Verteks" + +msgid "Polygons" +msgstr "Poligon" + +msgid "Internal Vertex Count" +msgstr "Hitungan Verteks Internal" + +msgid "Exclude Parent" +msgstr "Kecualikan Induk" + +msgid "Target Position" +msgstr "Posisi Target" + +msgid "Hit From Inside" +msgstr "Pukul Dari Dalam" + +msgid "Collide With" +msgstr "Menabrak Dengan" + +msgid "Areas" +msgstr "Area" + +msgid "Bodies" +msgstr "Tubuh" + +msgid "Remote Path" +msgstr "Path Remot" + +msgid "Use Global Coordinates" +msgstr "Gunakan Koordinat Global" + +msgid "Update" +msgstr "Perbarui" + +msgid "Margin" +msgstr "Batas" + +msgid "Max Results" +msgstr "Hasil Maks" + +msgid "Auto Calculate Length and Angle" +msgstr "Menghitung Panjang dan Sudut Secara Otomatis" + +msgid "Bone Angle" +msgstr "Sudut Tulang" + +msgid "Editor Settings" +msgstr "Pengaturan Editor" + +msgid "Show Bone Gizmo" +msgstr "Tampilkan Gizmo Tulang" + +msgid "Rest" +msgstr "Istirahat" + +msgid "Modification Stack" +msgstr "Tumpukan Modifikasi" + +msgid "Hframes" +msgstr "Hframe" + +msgid "Vframes" +msgstr "Vframe" + +msgid "Frame Coords" +msgstr "Koordinat Frame" + +msgid "Region" +msgstr "Wilayah" + +msgid "Filter Clip Enabled" +msgstr "Klip Filter Diaktifkan" + +msgid "Tile Set" +msgstr "Set Tile" + +msgid "Cell Quadrant Size" +msgstr "Ukuran Kuadran Sel" + +msgid "Collision Animatable" +msgstr "Tabrakan yang Dapat Dianimasikan" + +msgid "Collision Visibility Mode" +msgstr "Mode Visibilitas Tabrakan" + +msgid "Navigation Visibility Mode" +msgstr "Mode Visibilitas Navigasi" + +msgid "Layers" +msgstr "Lapisan" + +msgid "Texture Normal" +msgstr "Tekstur Normal" + +msgid "Texture Pressed" +msgstr "Tekstur Ditekan" + +msgid "Bitmask" +msgstr "Masker Bit" + +msgid "Shape Centered" +msgstr "Bentuk Terpusat" + +msgid "Shape Visible" +msgstr "Bentuk Terlihat" + +msgid "Passby Press" +msgstr "Dilewati Press" + +msgid "Visibility Mode" +msgstr "Mode Visibilitas" + +msgid "Enabling" +msgstr "Mengaktifkan" + +msgid "Node Path" +msgstr "Lokasi Node" + +msgid "Wind" +msgstr "Angin" + +msgid "Force Magnitude" +msgstr "Besaran Gaya" + +msgid "Attenuation Factor" +msgstr "Faktor Atenuasi" + +msgid "Source Path" +msgstr "Path Sumber" + +msgid "Reverb Bus" +msgstr "Bus Reverb" + +msgid "Uniformity" +msgstr "Keseragaman" + +msgid "Attenuation Model" +msgstr "Model Atenuasi" + +msgid "Unit Size" +msgstr "Ukuran Unit" + +msgid "Max dB" +msgstr "dB Maks" + +msgid "Emission Angle" +msgstr "Sudut Emisi" + +msgid "Degrees" +msgstr "Derajat" + +msgid "Filter Attenuation dB" +msgstr "Filter Atenuasi dB" + +msgid "Attenuation Filter" +msgstr "Filter Atenuasi" + +msgid "Cutoff Hz" +msgstr "Batas Hz" + +msgid "dB" +msgstr "dB" + +msgid "Doppler" +msgstr "Doppler" + +msgid "Tracking" +msgstr "Pelacakan" + +msgid "Bone Name" +msgstr "Nama Tulang" + +msgid "Bone Idx" +msgstr "Idx Tulang" + +msgid "Override Pose" +msgstr "Menimpa Pose" + +msgid "Keep Aspect" +msgstr "Jaga Aspek" + +msgid "Cull Mask" +msgstr "Cull Mask" + +msgid "Attributes" +msgstr "Atribut" + +msgid "Doppler Tracking" +msgstr "Pelacakan Doppler" + +msgid "Projection" +msgstr "Proyeksi" + +msgid "Frustum Offset" +msgstr "Offset Frustum" + +msgid "Near" +msgstr "Dekat" + +msgid "Far" +msgstr "Jauh" + +msgid "Ray Pickable" +msgstr "Ray yang Dapat Diambil" + +msgid "Capture on Drag" +msgstr "Tangkap saat Seret" + +msgid "Box Extents" +msgstr "Perlebar Kotak" + +msgid "Ring Axis" +msgstr "Sumbu Cincin" + +msgid "Ring Height" +msgstr "Tinggi Cincin" + +msgid "Ring Radius" +msgstr "Radius Cincin" + +msgid "Ring Inner Radius" +msgstr "Radius Bagian Dalam Cincin" + +msgid "Rotate Y" +msgstr "Putar Y" + +msgid "Disable Z" +msgstr "Nonaktifkan Z" + +msgid "Flatness" +msgstr "Kerataan" + +msgid "Scale Curve Z" +msgstr "Kurva Skala Z" + +msgid "Albedo" +msgstr "Albedo" + +msgid "Normal" +msgstr "Normal" + +msgid "Orm" +msgstr "Orm" + +msgid "Emission" +msgstr "Emisi" + +msgid "Parameters" +msgstr "Parameter" + +msgid "Emission Energy" +msgstr "Energi Emisi" + +msgid "Modulate" +msgstr "Memodulasi" + +msgid "Albedo Mix" +msgstr "Campuran Albedo" + +msgid "Normal Fade" +msgstr "Pudar Normal" + +msgid "Vertical Fade" +msgstr "Pudar Vertikal" + +msgid "Upper Fade" +msgstr "Pudar Atas" + +msgid "Lower Fade" +msgstr "Pudar Bawah" + +msgid "Distance Fade" +msgstr "Jarak Pudar" + +msgid "Begin" +msgstr "Mulai" + +msgid "Visibility AABB" +msgstr "Visibilitas AABB" + +msgid "Transform Align" +msgstr "Ubah Sejajarkan" + +msgid "Draw Passes" +msgstr "Menggambar Pas" + +msgid "Passes" +msgstr "Pass" + +msgid "Thickness" +msgstr "Ketebalan" + +msgid "Bake Mask" +msgstr "Mask Bake" + +msgid "Update Mode" +msgstr "Mode Pembaruan" + +msgid "Follow Camera Enabled" +msgstr "Ikuti Kamera Diaktifkan" + +msgid "Directionality" +msgstr "Arah" + +msgid "Skeleton Path" +msgstr "Path Kerangka" + +msgid "Solver Priority" +msgstr "Prioritas Penyelesaian" + +msgid "Exclude Nodes From Collision" +msgstr "Mengecualikan Node Dari Tabrakan" + +msgid "Params" +msgstr "Param" + +msgid "Impulse Clamp" +msgstr "Penjepit Impuls" + +msgid "Angular Limit" +msgstr "Batas Sudut" + +msgid "Upper" +msgstr "Atas" + +msgid "Lower" +msgstr "Bawah" + +msgid "Relaxation" +msgstr "Relaksasi" + +msgid "Motor" +msgstr "Motor" + +msgid "Target Velocity" +msgstr "Kecepatan Target" + +msgid "Max Impulse" +msgstr "Impuls Maks" + +msgid "Linear Limit" +msgstr "Batas Linear" + +msgid "Upper Distance" +msgstr "Jarak Atas" + +msgid "Lower Distance" +msgstr "Jarak Bawah" + +msgid "Restitution" +msgstr "Restitusi" + +msgid "Linear Motion" +msgstr "Gerakan Linier" + +msgid "Linear Ortho" +msgstr "Ortogonal Linier" + +msgid "Upper Angle" +msgstr "Sudut Atas" + +msgid "Lower Angle" +msgstr "Sudut Bawah" + +msgid "Angular Motion" +msgstr "Gerakan Sudut" + +msgid "Angular Ortho" +msgstr "Orto sudut" + +msgid "Swing Span" +msgstr "Rentang Ayunan" + +msgid "Twist Span" +msgstr "Rentang Putar" + +msgid "X" +msgstr "X" + +msgid "Y" +msgstr "Y" + +msgid "Z" +msgstr "Z" + +msgid "Linear Motor" +msgstr "Motor Linear" + +msgid "Force Limit" +msgstr "Batas Kekuatan" + +msgid "Linear Spring" +msgstr "Pegas Linear" + +msgid "Equilibrium Point" +msgstr "Titik Kesetimbangan" + +msgid "ERP" +msgstr "ERP" + +msgid "Angular Motor" +msgstr "Motor Sudut" + +msgid "Angular Spring" +msgstr "Pegas Sudut" + +msgid "Pixel Size" +msgstr "Ukuran Piksel" + +msgid "Flags" +msgstr "Bendera" + +msgid "Billboard" +msgstr "Baliho" + +msgid "Shaded" +msgstr "Berbayang" + +msgid "Double Sided" +msgstr "Dua Sisi" + +msgid "No Depth Test" +msgstr "Tidak ada Uji Kedalaman" + +msgid "Fixed Size" +msgstr "Ukuran Tetap" + +msgid "Alpha Cut" +msgstr "Pemotongan Alfa" + +msgid "Alpha Scissor Threshold" +msgstr "Ambang Batas Gunting Alpha" + +msgid "Alpha Hash Scale" +msgstr "Skala Hash Alpha" + +msgid "Alpha Antialiasing Mode" +msgstr "Mode Antialiasasi Alpha" + +msgid "Alpha Antialiasing Edge" +msgstr "Tepi Antialiasi Alpha" + +msgid "Texture Filter" +msgstr "Filter Tekstur" + +msgid "Render Priority" +msgstr "Prioritas Render" + +msgid "Outline Render Priority" +msgstr "Prioritas Render Garis Besar" + +msgid "Text" +msgstr "Teks" + +msgid "Outline Modulate" +msgstr "Modulasi Garis Besar" + +msgid "Font" +msgstr "Font" + +msgid "Horizontal Alignment" +msgstr "Penjajaran Horisontal" + +msgid "Vertical Alignment" +msgstr "Penjajaran Vertikal" + +msgid "Uppercase" +msgstr "Huruf Besar" + +msgid "Autowrap Mode" +msgstr "Mode Bungkus Otomatis" + +msgid "BiDi" +msgstr "BiDi" + +msgid "Text Direction" +msgstr "Arah Teks" + +msgid "Structured Text BiDi Override" +msgstr "Penggantian BiDi Teks Terstruktur" + +msgid "Structured Text BiDi Override Options" +msgstr "Opsi Penggantian BiDi Teks Terstruktur" + +msgid "Intensity Lumens" +msgstr "Intensitas Lumens" + +msgid "Intensity Lux" +msgstr "Intensitas Lux" + +msgid "Temperature" +msgstr "Temperatur" + +msgid "Indirect Energy" +msgstr "Energi Tidak Langsung" + +msgid "Volumetric Fog Energy" +msgstr "Energi Kabut Volumetrik" + +msgid "Projector" +msgstr "Proyektor" + +msgid "Angular Distance" +msgstr "Jarak Sudut" + +msgid "Negative" +msgstr "Negatif" + +msgid "Specular" +msgstr "Spekular" + +msgid "Bake Mode" +msgstr "Mode Bake" + +msgid "Normal Bias" +msgstr "Bias Normal" + +msgid "Reverse Cull Face" +msgstr "Wajah Cull Terbalik" + +msgid "Transmittance Bias" +msgstr "Bias Transmisi" + +msgid "Opacity" +msgstr "Kegelapan" + +msgid "Blur" +msgstr "Blur" + +msgid "Directional Shadow" +msgstr "Bayangan Arah" + +msgid "Split 1" +msgstr "Split 1" + +msgid "Split 2" +msgstr "Split 2" + +msgid "Split 3" +msgstr "Split 3" + +msgid "Blend Splits" +msgstr "Perpaduan Split" + +msgid "Pancake Size" +msgstr "Ukuran Pancake" + +msgid "Sky Mode" +msgstr "Mode Langit" + +msgid "Omni" +msgstr "Omni" + +msgid "Shadow Mode" +msgstr "Mode Bayangan" + +msgid "Spot" +msgstr "Sorotan" + +msgid "Angle Attenuation" +msgstr "Atenuasi Sudut" + +msgid "Light Texture" +msgstr "Tekstur Ringan" + +msgid "Quality" +msgstr "Kualitas" + +msgid "Bounces" +msgstr "Pantulan" + +msgid "Directional" +msgstr "Terarah" + +msgid "Interior" +msgstr "Interior" + +msgid "Use Denoiser" +msgstr "Gunakan Denoiser" + +msgid "Max Texture Size" +msgstr "Ukuran Tekstur Maks" + +msgid "Custom Sky" +msgstr "Langit Kustom" + +msgid "Custom Color" +msgstr "Warna Kustom" + +msgid "Custom Energy" +msgstr "Energi Kustom" + +msgid "Camera Attributes" +msgstr "Atribut Kamera" + +msgid "Gen Probes" +msgstr "Probe Gen" + +msgid "Subdiv" +msgstr "Subdiv" + +msgid "Light Data" +msgstr "Data Cahaya" + +msgid "Surface Material Override" +msgstr "Penggantian Material Permukaan" + +msgid "Agent Height Offset" +msgstr "Offset Tinggi Agen" + +msgid "Ignore Y" +msgstr "Abaikan Y" + +msgid "Navigation Mesh" +msgstr "Mesh Navigasi" + +msgid "Quaternion" +msgstr "Quaternion" + +msgid "Basis" +msgstr "Dasar" + +msgid "Rotation Edit Mode" +msgstr "Mode Edit Rotasi" + +msgid "Rotation Order" +msgstr "Urutan Rotasi" + +msgid "Top Level" +msgstr "Tingkat Atas" + +msgid "Visibility" +msgstr "Visibilitas" + +msgid "Visible" +msgstr "Terlihat" + +msgid "Visibility Parent" +msgstr "Induk Visibilitas" + +msgid "Bake" +msgstr "Bake" + +msgid "Rotation Mode" +msgstr "Mode Rotasi" + +msgid "Tilt Enabled" +msgstr "Kemiringan Diaktifkan" + +msgid "Axis Lock" +msgstr "Kunci Sumbu" + +msgid "Linear X" +msgstr "Linear X" + +msgid "Linear Y" +msgstr "Linear Y" + +msgid "Linear Z" +msgstr "Linear Z" + +msgid "Angular X" +msgstr "Sudut X" + +msgid "Angular Y" +msgstr "Sudut Y" + +msgid "Angular Z" +msgstr "Sudut Z" + +msgid "Joint Constraints" +msgstr "Kendala Bersama" + +msgid "Angular Limit Enabled" +msgstr "Batas Sudut Diaktifkan" + +msgid "Angular Limit Upper" +msgstr "Batas Sudut Atas" + +msgid "Angular Limit Lower" +msgstr "Batas Sudut Bawah" + +msgid "Angular Limit Bias" +msgstr "Bias Batas Sudut" + +msgid "Angular Limit Softness" +msgstr "Kelembutan Batas Sudut" + +msgid "Angular Limit Relaxation" +msgstr "Relaksasi Batas Sudut" + +msgid "Linear Limit Upper" +msgstr "Batas Linear Atas" + +msgid "Linear Limit Lower" +msgstr "Batas Linier Bawah" + +msgid "Linear Limit Softness" +msgstr "Kelembutan Batas Linear" + +msgid "Linear Limit Restitution" +msgstr "Restitusi Batas Linear" + +msgid "Linear Limit Damping" +msgstr "Redaman Batas Linear" + +msgid "Angular Limit Restitution" +msgstr "Restitusi Batas Sudut" + +msgid "Angular Limit Damping" +msgstr "Redaman Batas Sudut" + +msgid "Linear Limit Enabled" +msgstr "Batas Linear Diaktifkan" + +msgid "Linear Spring Enabled" +msgstr "Pegas Linier Diaktifkan" + +msgid "Linear Spring Stiffness" +msgstr "Kekakuan Pegas Linear" + +msgid "Linear Spring Damping" +msgstr "Redaman Pegas Linear" + +msgid "Linear Equilibrium Point" +msgstr "Titik Kesetimbangan Linear" + +msgid "Linear Restitution" +msgstr "Restitusi Linear" + +msgid "Linear Damping" +msgstr "Redaman Linear" + +msgid "Angular Restitution" +msgstr "Restitusi Sudut" + +msgid "Angular Damping" +msgstr "Redaman Sudut" + +msgid "Angular Spring Enabled" +msgstr "Pegas Sudut Diaktifkan" + +msgid "Angular Spring Stiffness" +msgstr "Kekakuan Pegas Sudut" + +msgid "Angular Spring Damping" +msgstr "Redaman Pegas Sudut" + +msgid "Angular Equilibrium Point" +msgstr "Titik Kesetimbangan Sudut" + +msgid "Body Offset" +msgstr "Offset Tubuh" + +msgid "Friction" +msgstr "Gesekan" + +msgid "Bounce" +msgstr "Pantulan" + +msgid "Linear Damp Mode" +msgstr "Mode Redam Linear" + +msgid "Angular Damp Mode" +msgstr "Mode Redam Sudut" + +msgid "Linear Velocity" +msgstr "Kecepatan Linear" + +msgid "Debug Shape" +msgstr "Bentuk Debug" + +msgid "Origin Offset" +msgstr "Offset Asal" + +msgid "Box Projection" +msgstr "Proyeksi Kotak" + +msgid "Enable Shadows" +msgstr "Aktifkan Bayangan" + +msgid "Mesh LOD Threshold" +msgstr "Ambang Batas LOD Mesh" + +msgid "Ambient" +msgstr "Sekitar" + +msgid "Color Energy" +msgstr "Energi Warna" + +msgid "Bones" +msgstr "Tulang" + +msgid "Motion Scale" +msgstr "Skala Gerak" + +msgid "Show Rest Only" +msgstr "Tampilkan Istirahat Saja" + +msgid "Animate Physical Bones" +msgstr "Menganimasikan Tulang Fisik" + +msgid "Root Bone" +msgstr "Tulang Akar" + +msgid "Tip Bone" +msgstr "Tulang Ujung" + +msgid "Interpolation" +msgstr "Interpolasi" + +msgid "Target" +msgstr "Sasaran" + +msgid "Override Tip Basis" +msgstr "Ganti Dasar Tip" + +msgid "Use Magnet" +msgstr "Gunakan Magnet" + +msgid "Magnet" +msgstr "Magnet" + +msgid "Target Node" +msgstr "Target Node" + +msgid "Min Distance" +msgstr "Jarak Min" + +msgid "Max Iterations" +msgstr "Iterasi Maks" + +msgid "Pinned Points" +msgstr "Poin yang Disematkan" + +msgid "Attachments" +msgstr "Lampiran" + +msgid "Point Index" +msgstr "Indeks Titik" + +msgid "Spatial Attachment Path" +msgstr "Path Lampiran Spasial" + +msgid "Parent Collision Ignore" +msgstr "Abaikan Tabrakan Induk" + +msgid "Simulation Precision" +msgstr "Presisi Simulasi" + +msgid "Total Mass" +msgstr "Massa total" + +msgid "Linear Stiffness" +msgstr "Kekakuan linier" + +msgid "Pressure Coefficient" +msgstr "Koefisien Tekanan" + +msgid "Damping Coefficient" +msgstr "Koefisien Redam" + +msgid "Drag Coefficient" +msgstr "Koefisien Hambat" + +msgid "Spring Length" +msgstr "Panjang Pegas" + +msgid "Per-Wheel Motion" +msgstr "Gerak Per-Roda" + +msgid "Engine Force" +msgstr "Kekuatan Mesin" + +msgid "Brake" +msgstr "Rem" + +msgid "Steering" +msgstr "Kemudi" + +msgid "Travel" +msgstr "Menjelajah" + +msgid "End" +msgstr "Akhir" + +msgid "Dynamic Range" +msgstr "Jarak Dinamis" + +msgid "Pose" +msgstr "Pose" + +msgid "World Scale" +msgstr "Skala Dunia" + +msgid "Sync" +msgstr "Sinkron" + +msgid "Reset" +msgstr "Reset" + +msgid "Condition" +msgstr "Kondisi" + +msgid "Expression" +msgstr "Ekspresi" + +msgid "Root Node" +msgstr "Node Akar" + +msgid "Button Group" +msgstr "Tombol Grup" + +msgid "Font Sizes" +msgstr "Ukuran Font" + +msgid "Styles" +msgstr "Gaya" + +msgid "Localization" +msgstr "Lokalisasi" + +msgid "Focus" +msgstr "Fokus" + +msgid "Next" +msgstr "Berikutnya" + +msgid "Previous" +msgstr "Sebelum" + +msgid "Use Snap" +msgstr "Gunakan Snap" + +msgid "Title" +msgstr "Judul" + +msgid "Select Mode" +msgstr "Mode Seleksi" + +msgid "Items" +msgstr "Item" + +msgid "Icon Mode" +msgstr "Mode Ikon" + +msgid "Step" +msgstr "Langkah" + +msgid "Syntax Highlighter" +msgstr "Penyorot Sintaks" + +msgid "Expand" +msgstr "Memperluas" + +msgid "Z Index" +msgstr "Indeks Z" + +msgid "Repeat" +msgstr "Ulang" + +msgid "NormalMap" +msgstr "NormalMap" + +msgid "Transfer Mode" +msgstr "Mode Transfer" + +msgid "SDF" +msgstr "SDF" + +msgid "Wait Time" +msgstr "Waktu Tunggu" + +msgid "Audio Listener" +msgstr "Listener Audio" + +msgid "Current Screen" +msgstr "Layar Saat Ini" + +msgid "Max Size" +msgstr "Ukuran Maksimal" + +msgid "2D Physics" +msgstr "Fisik 2D" + +msgid "3D Physics" +msgstr "Fisik 3D" + +msgid "Format" +msgstr "Format" + +msgid "Light Mode" +msgstr "Mode Cahaya" + +msgid "Up Vector" +msgstr "Vektor Atas" + +msgid "Clear" +msgstr "Bersihkan" + +msgid "Close" +msgstr "Tutup" + +msgid "Reload" +msgstr "Muat Ulang" + +msgid "Folder" +msgstr "Folder" + +msgid "File" +msgstr "File" + +msgid "Submenu" +msgstr "Submenu" + +msgid "Cursor" +msgstr "Kursor" + +msgid "Node" +msgstr "Node" + +msgid "Source" +msgstr "Sumber" + +msgid "2" +msgstr "2" + +msgid "Mix" +msgstr "Bercampur" + +msgid "Features" +msgstr "Fitur-fitur" + +msgid "Interpolation Mode" +msgstr "Mode Interpolasi" + +msgid "Shader" +msgstr "Shader" + +msgid "Shading" +msgstr "Shading" + +msgid "Shadows" +msgstr "Bayangan" + +msgid "MSDF" +msgstr "MSDF" + +msgid "Item" +msgstr "Item" + +msgid "Preview" +msgstr "Pratinjau" + +msgid "Parsed Geometry Type" +msgstr "Jenis Geometri yang Diuraikan" + +msgid "Sample Distance" +msgstr "Jarak sampel" + +msgid "Point Texture" +msgstr "Tekstur Titik" + +msgid "Normal Texture" +msgstr "Texture Normal" + +msgid "Top Radius" +msgstr "Radius Atas" + +msgid "Bottom Radius" +msgstr "Radius Bawah" + +msgid "B" +msgstr "B" + +msgid "Radiance Size" +msgstr "Ukuran Pancaran" + +msgid "Horizon Color" +msgstr "Warna Horizon" + +msgid "Rayleigh" +msgstr "Rayleigh" + +msgid "Blend" +msgstr "Berbaur" + +msgid "Top Left" +msgstr "Kiri Atas" + +msgid "Top Right" +msgstr "Kanan Atas" + +msgid "Bottom Right" +msgstr "Kanan Bawah" + +msgid "Bottom Left" +msgstr "Kiri Bawah" + +msgid "Image Size" +msgstr "Ukuran Gambar" + +msgid "Use HDR" +msgstr "Gunakan HDR" + +msgid "To" +msgstr "Ke" + +msgid "Frames" +msgstr "Bingkai-bingkai" + +msgid "Scene" +msgstr "Adegan" + +msgid "Transpose" +msgstr "Mengubah urutan" + +msgid "Constant" +msgstr "Konstan" + +msgid "Function" +msgstr "Fungsi" + +msgid "Plane" +msgstr "Plane" + +msgid "Custom" +msgstr "Kustom" + +msgid "Random Pitch" +msgstr "Pitch Acak" + +msgid "Pan" +msgstr "Pan" + +msgid "Sidechain" +msgstr "Sidechain" + +msgid "Tap 1" +msgstr "Tap 1" + +msgid "Tap 2" +msgstr "Tap 2" + +msgid "Soft Clip dB" +msgstr "Soft Clip dB" + +msgid "Soft Clip Ratio" +msgstr "Rasio Soft Clip" + +msgid "FFT Size" +msgstr "Ukuran FFT" + +msgid "Default Gravity" +msgstr "Gravitasi Baku" + +msgid "Vertex" +msgstr "Titik" + +msgid "Fragment" +msgstr "Fragmen" + +msgid "Cull" +msgstr "Cull" + +msgid "Render Loop Enabled" +msgstr "Render Loop Diaktifkan" + +msgid "VRAM Compression" +msgstr "Kompresi VRAM" + +msgid "Force PNG" +msgstr "Paksa PNG" + +msgid "Reflections" +msgstr "Refleksi" + +msgid "Texture Array Reflections" +msgstr "Refleksi Tekstur Array" + +msgid "Overrides" +msgstr "Menimpa" + +msgid "Property" +msgstr "Properti" diff --git a/editor/translations/properties/ja.po b/editor/translations/properties/ja.po index 4c65644a71..8f0d57f096 100644 --- a/editor/translations/properties/ja.po +++ b/editor/translations/properties/ja.po @@ -53,7 +53,7 @@ msgstr "" "Project-Id-Version: Godot Engine properties\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-17 17:40+0000\n" +"PO-Revision-Date: 2023-04-26 20:01+0000\n" "Last-Translator: Usamiki <amarantus0499@gmail.com>\n" "Language-Team: Japanese <https://hosted.weblate.org/projects/godot-engine/" "godot-properties/ja/>\n" @@ -62,7 +62,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.17\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Application" msgstr "アプリケーション" @@ -1174,6 +1174,9 @@ msgstr "ミニマップの不透明度" msgid "Window Placement" msgstr "ウィンドウの配置" +msgid "Rect" +msgstr "四角形" + msgid "Rect Custom Position" msgstr "矩形のカスタム位置" @@ -3052,12 +3055,18 @@ msgstr "HDRを使用" msgid "Frames" msgstr "フレーム" +msgid "Terrains" +msgstr "地形" + msgid "Custom Data" msgstr "カスタムデータ" msgid "Transpose" msgstr "行列(縦横)入れ替え" +msgid "Texture Origin" +msgstr "テクスチャの原点" + msgid "Probability" msgstr "確率" diff --git a/editor/translations/properties/ko.po b/editor/translations/properties/ko.po index efb7959d20..4f849d574f 100644 --- a/editor/translations/properties/ko.po +++ b/editor/translations/properties/ko.po @@ -42,13 +42,14 @@ # Godoto <aicompose@gmail.com>, 2022. # gaenyang <gaenyang@outlook.com>, 2022. # 오지훈 <jule1130@naver.com>, 2023. +# coolkid <newtype20050831@gmail.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine properties\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-01 13:00+0000\n" -"Last-Translator: Rocream <kbg4660@gmail.com>\n" +"PO-Revision-Date: 2023-05-11 05:49+0000\n" +"Last-Translator: coolkid <newtype20050831@gmail.com>\n" "Language-Team: Korean <https://hosted.weblate.org/projects/godot-engine/" "godot-properties/ko/>\n" "Language: ko\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.17-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Application" msgstr "어플리케이션" @@ -127,6 +128,9 @@ msgstr "초기 위치 타입" msgid "Initial Position" msgstr "초기 위치" +msgid "Initial Screen" +msgstr "초기 화면" + msgid "Resizable" msgstr "크기 조절 가능한" @@ -208,12 +212,24 @@ msgstr "설정" msgid "Profiler" msgstr "프로파일러" +msgid "Max Functions" +msgstr "최대 함수" + msgid "Compression" msgstr "압축" msgid "Formats" msgstr "형식" +msgid "Long Distance Matching" +msgstr "원거리 매칭" + +msgid "Compression Level" +msgstr "압축률" + +msgid "Zlib" +msgstr "Zlib" + msgid "Crash Handler" msgstr "충돌 처리기" @@ -232,6 +248,9 @@ msgstr "메모리" msgid "Limits" msgstr "제한" +msgid "Multithreaded Server" +msgstr "다중 스레드 서버" + msgid "Internationalization" msgstr "국제화" @@ -2299,6 +2318,9 @@ msgstr "푸시 알림" msgid "Location" msgstr "위치" +msgid "Product GUID" +msgstr "제품 GUID" + msgid "Algorithm" msgstr "알고리즘" @@ -2458,27 +2480,66 @@ msgstr "품질" msgid "Use Denoiser" msgstr "노이즈 감소 사용" +msgid "Enable Shadows" +msgstr "그림자 켜기" + msgid "Bones" msgstr "본" msgid "Target" msgstr "Target(대상)" +msgid "Use Magnet" +msgstr "자석 사용" + +msgid "Magnet" +msgstr "자석" + +msgid "Spring Length" +msgstr "스프링 길이" + msgid "Travel" msgstr "진행" +msgid "Max Force" +msgstr "최대 힘" + msgid "Material Override" msgstr "머티리얼 오버라이드" +msgid "Custom AABB" +msgstr "커스텀 AABB" + msgid "End" msgstr "끝" +msgid "Tracker" +msgstr "트래커" + +msgid "Pose" +msgstr "자세" + msgid "World Scale" msgstr "세계 크기" msgid "Sync" msgstr "동기화" +msgid "Auto Restart" +msgstr "자동 재시작" + +msgid "Autorestart" +msgstr "자동 재시작" + +msgid "Delay" +msgstr "지연" + +msgid "Random Delay" +msgstr "무작위 지연" + +msgid "Request" +msgstr "요청" + msgid "Reset" msgstr "되돌리기" diff --git a/editor/translations/properties/pl.po b/editor/translations/properties/pl.po index 1fdb714c23..ec3a17862a 100644 --- a/editor/translations/properties/pl.po +++ b/editor/translations/properties/pl.po @@ -76,7 +76,7 @@ msgstr "" "Project-Id-Version: Godot Engine properties\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-20 03:46+0000\n" +"PO-Revision-Date: 2023-04-30 10:49+0000\n" "Last-Translator: Tomek <kobewi4e@gmail.com>\n" "Language-Team: Polish <https://hosted.weblate.org/projects/godot-engine/" "godot-properties/pl/>\n" @@ -196,17 +196,35 @@ msgstr "Zachowaj włączony ekran" msgid "Audio" msgstr "Audio" +msgid "Buses" +msgstr "Magistrale" + msgid "Default Bus Layout" msgstr "Domyślny układ magistrali" +msgid "General" +msgstr "Ogólne" + +msgid "2D Panning Strength" +msgstr "Siła przesuwania 2D" + msgid "3D Panning Strength" -msgstr "Siła panoramy 3D" +msgstr "Siła przesuwania 3D" msgid "Editor" msgstr "Edytor" +msgid "Script" +msgstr "Skrypt" + msgid "Search in File Extensions" -msgstr "Szukaj wśród rozszerzeń plików" +msgstr "Rozszerzenia szukania w plikach" + +msgid "Subwindows" +msgstr "Okna podrzędne" + +msgid "Embed Subwindows" +msgstr "Osadź okna podrzędne" msgid "Physics" msgstr "Fizyka" @@ -238,9 +256,33 @@ msgstr "Ustawienia" msgid "Profiler" msgstr "Profiler" +msgid "Max Functions" +msgstr "Maksymalna liczba funkcji" + msgid "Compression" msgstr "Kompresja" +msgid "Formats" +msgstr "Formaty" + +msgid "Zstd" +msgstr "Zstd" + +msgid "Compression Level" +msgstr "Poziom kompresji" + +msgid "Window Log Size" +msgstr "Rozmiar dziennika okna" + +msgid "Zlib" +msgstr "Zlib" + +msgid "Gzip" +msgstr "Gzip" + +msgid "Crash Handler" +msgstr "Obsługa awarii" + msgid "Message" msgstr "Wiadomość" @@ -289,6 +331,18 @@ msgstr "Vulkan" msgid "Max Descriptors per Pool" msgstr "Maks. liczba deskryptorów na pulę" +msgid "Textures" +msgstr "Tekstury" + +msgid "Canvas Textures" +msgstr "Tekstury płótna" + +msgid "Default Texture Filter" +msgstr "Domyślny filtr tekstur" + +msgid "Default Texture Repeat" +msgstr "Domyślne zapętlenie tekstur" + msgid "Low Processor Usage Mode" msgstr "Tryb niskiego wykorzystania procesora" @@ -757,6 +811,9 @@ msgstr "Wytyczne dotyczące długości linii miękkiej kolumny" msgid "Line Length Guideline Hard Column" msgstr "Wytyczne dotyczące długości linii twardej kolumny" +msgid "Gutters" +msgstr "Rynny" + msgid "Show Line Numbers" msgstr "Pokaż numery linii" @@ -1288,6 +1345,9 @@ msgstr "Język" msgid "Outline Size" msgstr "Rozmiar konturu" +msgid "Variation" +msgstr "Odmiana" + msgid "Transform" msgstr "Przekształcanie" @@ -1375,12 +1435,21 @@ msgstr "Wysokość" msgid "Radius" msgstr "Promień" +msgid "Save to File" +msgstr "Zapisz do pliku" + msgid "Enabled" msgstr "Włączony" +msgid "LODs" +msgstr "LODy" + msgid "Normal Merge Angle" msgstr "Kąt scalania normalnych" +msgid "Use External" +msgstr "Użyj zewnętrznych" + msgid "Loop Mode" msgstr "Tryb zapętlenia" @@ -1390,9 +1459,18 @@ msgstr "Zachowaj własne ścieżki" msgid "Optimizer" msgstr "Optymalizator" +msgid "Max Velocity Error" +msgstr "Maks. błąd prędkości" + msgid "Max Angular Error" msgstr "Maks. błąd kątowy" +msgid "Max Precision Error" +msgstr "Maks. błąd precyzji" + +msgid "Import Tracks" +msgstr "Importuj ścieżki" + msgid "Bone Map" msgstr "Mapa kości" @@ -1561,9 +1639,15 @@ msgstr "Ostrzeżenia" msgid "ID" msgstr "ID" +msgid "Texture" +msgstr "Tekstura" + msgid "Separation" msgstr "Separacja" +msgid "Texture Region Size" +msgstr "Rozmiar obszaru tekstury" + msgid "Speed" msgstr "Prędkość" @@ -1936,6 +2020,9 @@ msgstr "Kafelki" msgid "Variant" msgstr "Wariant" +msgid "VRAM Texture Compression" +msgstr "Kompresja VRAM tekstur" + msgid "File Version" msgstr "Wersja pliku" @@ -1963,6 +2050,9 @@ msgstr "Prawo" msgid "Input" msgstr "Wejście" +msgid "Disabled" +msgstr "Wyłączony" + msgid "Time" msgstr "Czas" @@ -1996,12 +2086,18 @@ msgstr "Przyspiesz maks" msgid "Visibility Rect" msgstr "Prostokąt widoczności" +msgid "Texture Scale" +msgstr "Skala tekstury" + msgid "Default Color" msgstr "Kolor domyślny" msgid "Fill" msgstr "Wypełnienie" +msgid "Texture Mode" +msgstr "Tryb tekstury" + msgid "Navigation Layers" msgstr "Warstwy nawigacji" @@ -2026,6 +2122,12 @@ msgstr "Ustawienia edytora" msgid "Region" msgstr "Obszar" +msgid "Texture Normal" +msgstr "Normalna tekstury" + +msgid "Texture Pressed" +msgstr "Tekstura wciśniętego" + msgid "Bitmask" msgstr "Maska bitowa" @@ -2041,6 +2143,9 @@ msgstr "Moduluj" msgid "Flags" msgstr "Flagi" +msgid "Texture Filter" +msgstr "Filtr tekstury" + msgid "Text" msgstr "Tekst" @@ -2050,9 +2155,15 @@ msgstr "Wielkie litery" msgid "Blur" msgstr "Rozmazanie" +msgid "Light Texture" +msgstr "Tekstura światła" + msgid "Quality" msgstr "Jakość" +msgid "Max Texture Size" +msgstr "Maksymalny rozmiar tekstury" + msgid "Bones" msgstr "Kości" @@ -2146,6 +2257,9 @@ msgstr "Przeciągnij, aby zmienić kolejność włączone" msgid "Syntax Highlighter" msgstr "Podświetlacz składni" +msgid "Ignore Texture Size" +msgstr "Ignoruj rozmiar tekstury" + msgid "Fill Degrees" msgstr "Stopnie wypełnienia" @@ -2257,6 +2371,9 @@ msgstr "Mgła" msgid "Color Correction" msgstr "Korekcja koloru" +msgid "Density Texture" +msgstr "Tekstura gęstości" + msgid "Features" msgstr "Funkcje" @@ -2266,9 +2383,18 @@ msgstr "Sposób interpolacji" msgid "Shader" msgstr "Shader" +msgid "Texture MSDF" +msgstr "MSDF tekstury" + +msgid "Texture Channel" +msgstr "Kanał tekstury" + msgid "Operator" msgstr "Operator" +msgid "Flip Texture" +msgstr "Odbij teksturę" + msgid "Subsurface Scattering" msgstr "Rozpraszanie podpowierzchniowe" @@ -2293,15 +2419,24 @@ msgstr "Format transformacji" msgid "Parsed Geometry Type" msgstr "Parsowany typ geometrii" +msgid "Point Texture" +msgstr "Tekstura punktowa" + msgid "Normal Texture" msgstr "Tekstura normalnych" +msgid "Color Texture" +msgstr "Tekstura koloru" + msgid "B" msgstr "B" msgid "Ground Color" msgstr "Kolor podłoża" +msgid "Texture Margins" +msgstr "Marginesy tekstury" + msgid "Blend" msgstr "Mieszanie" @@ -2320,6 +2455,9 @@ msgstr "Lewy dolny róg" msgid "Atlas" msgstr "Atlas" +msgid "Base Texture" +msgstr "Bazowa tekstura" + msgid "Image Size" msgstr "Rozmiar obrazu" @@ -2347,9 +2485,21 @@ msgstr "Prawdopodobieństwo" msgid "Constant" msgstr "Stała" +msgid "Texture Type" +msgstr "Typ tekstury" + +msgid "Texture Array" +msgstr "Tablica tekstur" + msgid "Function" msgstr "Funkcja" +msgid "Texture Repeat" +msgstr "Zapętlenie tekstury" + +msgid "Texture Source" +msgstr "Źródło tekstury" + msgid "Use All Surfaces" msgstr "Użyj wszystkich powierzchni" diff --git a/editor/translations/properties/pt.po b/editor/translations/properties/pt.po index 222ab9beb3..19834c82da 100644 --- a/editor/translations/properties/pt.po +++ b/editor/translations/properties/pt.po @@ -32,13 +32,14 @@ # Thuany <thutymsoares@gmail.com>, 2022. # Isaque Mendes <isaquemendes405@gmail.com>, 2022. # Alex Bruno Boiniak <aboiniak@gmail.com>, 2022. +# Deolindo <deolindojvn@gmail.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine properties\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-02 22:43+0000\n" -"Last-Translator: ssantos <ssantos@web.de>\n" +"PO-Revision-Date: 2023-04-20 17:02+0000\n" +"Last-Translator: Deolindo <deolindojvn@gmail.com>\n" "Language-Team: Portuguese <https://hosted.weblate.org/projects/godot-engine/" "godot-properties/pt/>\n" "Language: pt\n" @@ -46,7 +47,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.17-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Application" msgstr "Aplicação" @@ -93,6 +94,9 @@ msgstr "Tipo de Loop Principal" msgid "Auto Accept Quit" msgstr "Auto Aceitar Sair" +msgid "Quit on Go Back" +msgstr "Sair ao Voltar" + msgid "Display" msgstr "Exibição" @@ -126,6 +130,9 @@ msgstr "Redimensionável" msgid "Borderless" msgstr "Sem bordas" +msgid "Always on Top" +msgstr "Sempre no topo" + msgid "Transparent" msgstr "Transparente" diff --git a/editor/translations/properties/ru.po b/editor/translations/properties/ru.po index 1483a0a3c8..7f73a83be6 100644 --- a/editor/translations/properties/ru.po +++ b/editor/translations/properties/ru.po @@ -132,13 +132,17 @@ # Noky Socket <lollysimbart@gmail.com>, 2023. # Melairz1237 <mr.artem.snegov@mail.ru>, 2023. # Aleksey Smirnov <debugger94@gmail.com>, 2023. +# Animaliss <Zernon001@mail.ru>, 2023. +# Pyotr <pitmysterio@mail.ru>, 2023. +# Aleksey Shilovskiy <alekseyshilovskiy@yandex.ru>, 2023. +# Eugene One <elevencupoftea@gmail.com>, 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine properties\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-04-20 03:46+0000\n" -"Last-Translator: Aleksey Smirnov <debugger94@gmail.com>\n" +"PO-Revision-Date: 2023-05-11 05:49+0000\n" +"Last-Translator: Eugene One <elevencupoftea@gmail.com>\n" "Language-Team: Russian <https://hosted.weblate.org/projects/godot-engine/" "godot-properties/ru/>\n" "Language: ru\n" @@ -230,6 +234,9 @@ msgstr "Всегда сверху" msgid "Transparent" msgstr "Прозрачный" +msgid "Extend to Title" +msgstr "Расширить до названия" + msgid "No Focus" msgstr "Не фокусировать" @@ -290,6 +297,12 @@ msgstr "Отладка" msgid "Settings" msgstr "Настройки" +msgid "Profiler" +msgstr "Профилировщик" + +msgid "Max Functions" +msgstr "Лимит функций" + msgid "Compression" msgstr "Сжатие" @@ -344,6 +357,9 @@ msgstr "Задержка в режиме низкой нагрузки проц msgid "Print Error Messages" msgstr "Печатать сообщения об ошибках" +msgid "Physics Ticks per Second" +msgstr "Частота обновления физических кадров" + msgid "Time Scale" msgstr "Масштаб времени" @@ -1419,7 +1435,7 @@ msgid "Root Scale" msgstr "Расширение ветки" msgid "Meshes" -msgstr "Сетка" +msgstr "Меши" msgid "Ensure Tangents" msgstr "Проверить соприкосновение" @@ -1503,7 +1519,7 @@ msgid "Loop End" msgstr "Конец цикла" msgid "Asset Library" -msgstr "Библиотека ресурсов" +msgstr "Библиотека ассетов" msgid "Use Threads" msgstr "Использовать потоки" @@ -1514,6 +1530,9 @@ msgstr "Доступные URL" msgid "Unset" msgstr "Не задано" +msgid "Set" +msgstr "Задать, установить, настроить, набор, комплект" + msgid "Error" msgstr "Ошибка" @@ -2381,6 +2400,9 @@ msgstr "Файлы фильмов" msgid "Custom Options" msgstr "Пользовательские параметры" +msgid "Notarization" +msgstr "Заверение" + msgid "Apple ID Password" msgstr "Пароль Apple ID" @@ -2457,7 +2479,7 @@ msgid "Wide 310 X 150 Logo" msgstr "Широкий логотип 310 X 150" msgid "Tiles" -msgstr "Тайлы" +msgstr "Tiles" msgid "Web" msgstr "Web" @@ -2822,6 +2844,9 @@ msgstr "Г смещение" msgid "V Offset" msgstr "В смещение" +msgid "Physics Material Override" +msgstr "Переопределение физического материала" + msgid "Constant Linear Velocity" msgstr "Постоянная линейная скорость" @@ -4244,6 +4269,9 @@ msgstr "Атлас теней" msgid "Reflections" msgstr "Отражения" +msgid "GI" +msgstr "GI" + msgid "Overrides" msgstr "Переопределить" @@ -4278,4 +4306,4 @@ msgid "Primary Interface" msgstr "Основной интерфейс" msgid "Property" -msgstr "Параметр" +msgstr "Свойство" diff --git a/editor/translations/properties/zh_CN.po b/editor/translations/properties/zh_CN.po index 0140e402f9..fdbb0d523e 100644 --- a/editor/translations/properties/zh_CN.po +++ b/editor/translations/properties/zh_CN.po @@ -92,7 +92,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: 2023-04-13 04:06+0000\n" +"PO-Revision-Date: 2023-04-24 06:57+0000\n" "Last-Translator: Haoyu Qiu <timothyqiu32@gmail.com>\n" "Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/" "godot-engine/godot-properties/zh_Hans/>\n" @@ -101,7 +101,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.17-dev\n" +"X-Generator: Weblate 4.18-dev\n" msgid "Application" msgstr "应用" @@ -950,7 +950,7 @@ msgid "Save Each Scene on Quit" msgstr "退出时保存各场景" msgid "Accept Dialog Cancel OK Buttons" -msgstr "接受对话框取消/确定按钮" +msgstr "AcceptDialog 取消/确定按钮" msgid "Show Internal Errors in Toast Notifications" msgstr "在 Toast 通知中显示内部错误" |