diff options
314 files changed, 20317 insertions, 14015 deletions
diff --git a/.github/workflows/linux_builds.yml b/.github/workflows/linux_builds.yml index 9ec6c4a4e9..84fdb2180b 100644 --- a/.github/workflows/linux_builds.yml +++ b/.github/workflows/linux_builds.yml @@ -198,20 +198,13 @@ jobs: submodules: 'recursive' path: 'godot-cpp' - # Check extension API - - name: Check for extension api updates + # Dump GDExtension interface and API + - name: Dump GDExtension interface and API for godot-cpp build if: ${{ matrix.godot-cpp-test }} run: | - echo "Running --dump-extension-api to create extensions api." - VK_ICD_FILENAMES=$(pwd)/vk_swiftshader_icd.json DRI_PRIME=0 xvfb-run ${{ matrix.bin }} --audio-driver Dummy --dump-extension-api 2>&1 > /dev/null || true - misc/scripts/compare_extension_api.py godot-cpp/godot-headers/extension_api.json extension_api.json - - # Copy new extension API files into place - - name: Copy new extension API files into place - if: ${{ matrix.godot-cpp-test }} - run: | - cp -f extension_api.json godot-cpp/godot-headers/ - cp -f core/extension/gdextension_interface.h godot-cpp/godot-headers/godot/ + ${{ matrix.bin }} --headless --dump-gdextension-interface --dump-extension-api + cp -f gdextension_interface.h godot-cpp/gdextension/ + cp -f extension_api.json godot-cpp/gdextension/ # Build godot-cpp test extension - name: Build godot-cpp test extension diff --git a/COPYRIGHT.txt b/COPYRIGHT.txt index 02cd733c92..d41f40a78b 100644 --- a/COPYRIGHT.txt +++ b/COPYRIGHT.txt @@ -218,7 +218,7 @@ License: glslang Files: ./thirdparty/graphite/ Comment: Graphite engine Copyright: 2010, SIL International -License: MPL-2.0 +License: Expat Files: ./thirdparty/harfbuzz/ Comment: HarfBuzz text shaping library diff --git a/core/extension/gdextension_interface.cpp b/core/extension/gdextension_interface.cpp index 197e9db1e7..2074495aa9 100644 --- a/core/extension/gdextension_interface.cpp +++ b/core/extension/gdextension_interface.cpp @@ -80,7 +80,7 @@ static void gdextension_variant_destroy(GDExtensionVariantPtr p_self) { // variant type -static void gdextension_variant_call(GDExtensionVariantPtr p_self, GDExtensionConstStringNamePtr p_method, GDExtensionConstVariantPtr *p_args, GDExtensionInt p_argcount, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error) { +static void gdextension_variant_call(GDExtensionVariantPtr p_self, GDExtensionConstStringNamePtr p_method, const GDExtensionConstVariantPtr *p_args, GDExtensionInt p_argcount, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error) { Variant *self = (Variant *)p_self; const StringName method = *reinterpret_cast<const StringName *>(p_method); const Variant **args = (const Variant **)p_args; @@ -96,7 +96,7 @@ static void gdextension_variant_call(GDExtensionVariantPtr p_self, GDExtensionCo } } -static void gdextension_variant_call_static(GDExtensionVariantType p_type, GDExtensionConstStringNamePtr p_method, GDExtensionConstVariantPtr *p_args, GDExtensionInt p_argcount, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error) { +static void gdextension_variant_call_static(GDExtensionVariantType p_type, GDExtensionConstStringNamePtr p_method, const GDExtensionConstVariantPtr *p_args, GDExtensionInt p_argcount, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error) { Variant::Type type = (Variant::Type)p_type; const StringName method = *reinterpret_cast<const StringName *>(p_method); const Variant **args = (const Variant **)p_args; @@ -486,7 +486,7 @@ static GDExtensionPtrConstructor gdextension_variant_get_ptr_constructor(GDExten static GDExtensionPtrDestructor gdextension_variant_get_ptr_destructor(GDExtensionVariantType p_type) { return (GDExtensionPtrDestructor)Variant::get_ptr_destructor(Variant::Type(p_type)); } -static void gdextension_variant_construct(GDExtensionVariantType p_type, GDExtensionVariantPtr p_base, GDExtensionConstVariantPtr *p_args, int32_t p_argument_count, GDExtensionCallError *r_error) { +static void gdextension_variant_construct(GDExtensionVariantType p_type, GDExtensionVariantPtr p_base, const GDExtensionConstVariantPtr *p_args, int32_t p_argument_count, GDExtensionCallError *r_error) { memnew_placement(p_base, Variant); Callable::CallError error; @@ -814,7 +814,7 @@ static GDExtensionVariantPtr gdextension_dictionary_operator_index_const(GDExten /* OBJECT API */ -static void gdextension_object_method_bind_call(GDExtensionMethodBindPtr p_method_bind, GDExtensionObjectPtr p_instance, GDExtensionConstVariantPtr *p_args, GDExtensionInt p_arg_count, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error) { +static void gdextension_object_method_bind_call(GDExtensionMethodBindPtr p_method_bind, GDExtensionObjectPtr p_instance, const GDExtensionConstVariantPtr *p_args, GDExtensionInt p_arg_count, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error) { const MethodBind *mb = reinterpret_cast<const MethodBind *>(p_method_bind); Object *o = (Object *)p_instance; const Variant **args = (const Variant **)p_args; @@ -830,7 +830,7 @@ static void gdextension_object_method_bind_call(GDExtensionMethodBindPtr p_metho } } -static void gdextension_object_method_bind_ptrcall(GDExtensionMethodBindPtr p_method_bind, GDExtensionObjectPtr p_instance, GDExtensionConstTypePtr *p_args, GDExtensionTypePtr p_ret) { +static void gdextension_object_method_bind_ptrcall(GDExtensionMethodBindPtr p_method_bind, GDExtensionObjectPtr p_instance, const GDExtensionConstTypePtr *p_args, GDExtensionTypePtr p_ret) { const MethodBind *mb = reinterpret_cast<const MethodBind *>(p_method_bind); Object *o = (Object *)p_instance; mb->ptrcall(o, (const void **)p_args, p_ret); @@ -879,6 +879,23 @@ static GDObjectInstanceID gdextension_object_get_instance_id(GDExtensionConstObj return (GDObjectInstanceID)o->get_instance_id(); } +static GDExtensionObjectPtr gdextension_ref_get_object(GDExtensionConstRefPtr p_ref) { + const Ref<RefCounted> *ref = (const Ref<RefCounted> *)p_ref; + if (ref == nullptr || ref->is_null()) { + return (GDExtensionObjectPtr) nullptr; + } else { + return (GDExtensionObjectPtr)ref->ptr(); + } +} + +static void gdextension_ref_set_object(GDExtensionRefPtr p_ref, GDExtensionObjectPtr p_object) { + Ref<RefCounted> *ref = (Ref<RefCounted> *)p_ref; + ERR_FAIL_NULL(ref); + + Object *o = (RefCounted *)p_object; + ref->reference_ptr(o); +} + static GDExtensionScriptInstancePtr gdextension_script_instance_create(const GDExtensionScriptInstanceInfo *p_info, GDExtensionScriptInstanceDataPtr p_instance_data) { ScriptInstanceExtension *script_instance_extension = memnew(ScriptInstanceExtension); script_instance_extension->instance = p_instance_data; @@ -1057,6 +1074,11 @@ void gdextension_setup_interface(GDExtensionInterface *p_interface) { gde_interface.object_get_instance_from_id = gdextension_object_get_instance_from_id; gde_interface.object_get_instance_id = gdextension_object_get_instance_id; + /* REFERENCE */ + + gde_interface.ref_get_object = gdextension_ref_get_object; + gde_interface.ref_set_object = gdextension_ref_set_object; + /* SCRIPT INSTANCE */ gde_interface.script_instance_create = gdextension_script_instance_create; diff --git a/core/extension/gdextension_interface.h b/core/extension/gdextension_interface.h index b59a6b5ca4..0b7615ffdd 100644 --- a/core/extension/gdextension_interface.h +++ b/core/extension/gdextension_interface.h @@ -154,6 +154,8 @@ typedef const void *GDExtensionMethodBindPtr; typedef int64_t GDExtensionInt; typedef uint8_t GDExtensionBool; typedef uint64_t GDObjectInstanceID; +typedef void *GDExtensionRefPtr; +typedef const void *GDExtensionConstRefPtr; /* VARIANT DATA I/O */ @@ -176,8 +178,8 @@ typedef struct { typedef void (*GDExtensionVariantFromTypeConstructorFunc)(GDExtensionVariantPtr, GDExtensionTypePtr); typedef void (*GDExtensionTypeFromVariantConstructorFunc)(GDExtensionTypePtr, GDExtensionVariantPtr); typedef void (*GDExtensionPtrOperatorEvaluator)(GDExtensionConstTypePtr p_left, GDExtensionConstTypePtr p_right, GDExtensionTypePtr r_result); -typedef void (*GDExtensionPtrBuiltInMethod)(GDExtensionTypePtr p_base, GDExtensionConstTypePtr *p_args, GDExtensionTypePtr r_return, int p_argument_count); -typedef void (*GDExtensionPtrConstructor)(GDExtensionTypePtr p_base, GDExtensionConstTypePtr *p_args); +typedef void (*GDExtensionPtrBuiltInMethod)(GDExtensionTypePtr p_base, const GDExtensionConstTypePtr *p_args, GDExtensionTypePtr r_return, int p_argument_count); +typedef void (*GDExtensionPtrConstructor)(GDExtensionTypePtr p_base, const GDExtensionConstTypePtr *p_args); typedef void (*GDExtensionPtrDestructor)(GDExtensionTypePtr p_base); typedef void (*GDExtensionPtrSetter)(GDExtensionTypePtr p_base, GDExtensionConstTypePtr p_value); typedef void (*GDExtensionPtrGetter)(GDExtensionConstTypePtr p_base, GDExtensionTypePtr r_value); @@ -186,7 +188,7 @@ typedef void (*GDExtensionPtrIndexedGetter)(GDExtensionConstTypePtr p_base, GDEx typedef void (*GDExtensionPtrKeyedSetter)(GDExtensionTypePtr p_base, GDExtensionConstTypePtr p_key, GDExtensionConstTypePtr p_value); typedef void (*GDExtensionPtrKeyedGetter)(GDExtensionConstTypePtr p_base, GDExtensionConstTypePtr p_key, GDExtensionTypePtr r_value); typedef uint32_t (*GDExtensionPtrKeyedChecker)(GDExtensionConstVariantPtr p_base, GDExtensionConstVariantPtr p_key); -typedef void (*GDExtensionPtrUtilityFunction)(GDExtensionTypePtr r_return, GDExtensionConstTypePtr *p_arguments, int p_argument_count); +typedef void (*GDExtensionPtrUtilityFunction)(GDExtensionTypePtr r_return, const GDExtensionConstTypePtr *p_args, int p_argument_count); typedef GDExtensionObjectPtr (*GDExtensionClassConstructor)(); @@ -240,7 +242,7 @@ typedef void (*GDExtensionClassNotification)(GDExtensionClassInstancePtr p_insta typedef void (*GDExtensionClassToString)(GDExtensionClassInstancePtr p_instance, GDExtensionBool *r_is_valid, GDExtensionStringPtr p_out); typedef void (*GDExtensionClassReference)(GDExtensionClassInstancePtr p_instance); typedef void (*GDExtensionClassUnreference)(GDExtensionClassInstancePtr p_instance); -typedef void (*GDExtensionClassCallVirtual)(GDExtensionClassInstancePtr p_instance, GDExtensionConstTypePtr *p_args, GDExtensionTypePtr r_ret); +typedef void (*GDExtensionClassCallVirtual)(GDExtensionClassInstancePtr p_instance, const GDExtensionConstTypePtr *p_args, GDExtensionTypePtr r_ret); typedef GDExtensionObjectPtr (*GDExtensionClassCreateInstance)(void *p_userdata); typedef void (*GDExtensionClassFreeInstance)(void *p_userdata, GDExtensionClassInstancePtr p_instance); typedef GDExtensionClassCallVirtual (*GDExtensionClassGetVirtual)(void *p_userdata, GDExtensionConstStringNamePtr p_name); @@ -293,8 +295,8 @@ typedef enum { GDEXTENSION_METHOD_ARGUMENT_METADATA_REAL_IS_DOUBLE } GDExtensionClassMethodArgumentMetadata; -typedef void (*GDExtensionClassMethodCall)(void *method_userdata, GDExtensionClassInstancePtr p_instance, GDExtensionConstVariantPtr *p_args, GDExtensionInt p_argument_count, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error); -typedef void (*GDExtensionClassMethodPtrCall)(void *method_userdata, GDExtensionClassInstancePtr p_instance, GDExtensionConstTypePtr *p_args, GDExtensionTypePtr r_ret); +typedef void (*GDExtensionClassMethodCall)(void *method_userdata, GDExtensionClassInstancePtr p_instance, const GDExtensionConstVariantPtr *p_args, GDExtensionInt p_argument_count, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error); +typedef void (*GDExtensionClassMethodPtrCall)(void *method_userdata, GDExtensionClassInstancePtr p_instance, const GDExtensionConstTypePtr *p_args, GDExtensionTypePtr r_ret); typedef struct { GDExtensionStringNamePtr name; @@ -342,7 +344,7 @@ typedef void (*GDExtensionScriptInstanceFreeMethodList)(GDExtensionScriptInstanc typedef GDExtensionBool (*GDExtensionScriptInstanceHasMethod)(GDExtensionScriptInstanceDataPtr p_instance, GDExtensionConstStringNamePtr p_name); -typedef void (*GDExtensionScriptInstanceCall)(GDExtensionScriptInstanceDataPtr p_self, GDExtensionConstStringNamePtr p_method, GDExtensionConstVariantPtr *p_args, GDExtensionInt p_argument_count, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error); +typedef void (*GDExtensionScriptInstanceCall)(GDExtensionScriptInstanceDataPtr p_self, GDExtensionConstStringNamePtr p_method, const GDExtensionConstVariantPtr *p_args, GDExtensionInt p_argument_count, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error); typedef void (*GDExtensionScriptInstanceNotification)(GDExtensionScriptInstanceDataPtr p_instance, int32_t p_what); typedef void (*GDExtensionScriptInstanceToString)(GDExtensionScriptInstanceDataPtr p_instance, GDExtensionBool *r_is_valid, GDExtensionStringPtr r_out); @@ -427,8 +429,8 @@ typedef struct { void (*variant_destroy)(GDExtensionVariantPtr p_self); /* variant type */ - void (*variant_call)(GDExtensionVariantPtr p_self, GDExtensionConstStringNamePtr p_method, GDExtensionConstVariantPtr *p_args, GDExtensionInt p_argument_count, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error); - void (*variant_call_static)(GDExtensionVariantType p_type, GDExtensionConstStringNamePtr p_method, GDExtensionConstVariantPtr *p_args, GDExtensionInt p_argument_count, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error); + void (*variant_call)(GDExtensionVariantPtr p_self, GDExtensionConstStringNamePtr p_method, const GDExtensionConstVariantPtr *p_args, GDExtensionInt p_argument_count, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error); + void (*variant_call_static)(GDExtensionVariantType p_type, GDExtensionConstStringNamePtr p_method, const GDExtensionConstVariantPtr *p_args, GDExtensionInt p_argument_count, GDExtensionVariantPtr r_return, GDExtensionCallError *r_error); void (*variant_evaluate)(GDExtensionVariantOperator p_op, GDExtensionConstVariantPtr p_a, GDExtensionConstVariantPtr p_b, GDExtensionVariantPtr r_return, GDExtensionBool *r_valid); void (*variant_set)(GDExtensionVariantPtr p_self, GDExtensionConstVariantPtr p_key, GDExtensionConstVariantPtr p_value, GDExtensionBool *r_valid); void (*variant_set_named)(GDExtensionVariantPtr p_self, GDExtensionConstStringNamePtr p_key, GDExtensionConstVariantPtr p_value, GDExtensionBool *r_valid); @@ -463,7 +465,7 @@ typedef struct { GDExtensionPtrBuiltInMethod (*variant_get_ptr_builtin_method)(GDExtensionVariantType p_type, GDExtensionConstStringNamePtr p_method, GDExtensionInt p_hash); GDExtensionPtrConstructor (*variant_get_ptr_constructor)(GDExtensionVariantType p_type, int32_t p_constructor); GDExtensionPtrDestructor (*variant_get_ptr_destructor)(GDExtensionVariantType p_type); - void (*variant_construct)(GDExtensionVariantType p_type, GDExtensionVariantPtr p_base, GDExtensionConstVariantPtr *p_args, int32_t p_argument_count, GDExtensionCallError *r_error); + void (*variant_construct)(GDExtensionVariantType p_type, GDExtensionVariantPtr p_base, const GDExtensionConstVariantPtr *p_args, int32_t p_argument_count, GDExtensionCallError *r_error); GDExtensionPtrSetter (*variant_get_ptr_setter)(GDExtensionVariantType p_type, GDExtensionConstStringNamePtr p_member); GDExtensionPtrGetter (*variant_get_ptr_getter)(GDExtensionVariantType p_type, GDExtensionConstStringNamePtr p_member); GDExtensionPtrIndexedSetter (*variant_get_ptr_indexed_setter)(GDExtensionVariantType p_type); @@ -537,8 +539,8 @@ typedef struct { /* OBJECT */ - void (*object_method_bind_call)(GDExtensionMethodBindPtr p_method_bind, GDExtensionObjectPtr p_instance, GDExtensionConstVariantPtr *p_args, GDExtensionInt p_arg_count, GDExtensionVariantPtr r_ret, GDExtensionCallError *r_error); - void (*object_method_bind_ptrcall)(GDExtensionMethodBindPtr p_method_bind, GDExtensionObjectPtr p_instance, GDExtensionConstTypePtr *p_args, GDExtensionTypePtr r_ret); + void (*object_method_bind_call)(GDExtensionMethodBindPtr p_method_bind, GDExtensionObjectPtr p_instance, const GDExtensionConstVariantPtr *p_args, GDExtensionInt p_arg_count, GDExtensionVariantPtr r_ret, GDExtensionCallError *r_error); + void (*object_method_bind_ptrcall)(GDExtensionMethodBindPtr p_method_bind, GDExtensionObjectPtr p_instance, const GDExtensionConstTypePtr *p_args, GDExtensionTypePtr r_ret); void (*object_destroy)(GDExtensionObjectPtr p_o); GDExtensionObjectPtr (*global_get_singleton)(GDExtensionConstStringNamePtr p_name); @@ -551,6 +553,11 @@ typedef struct { GDExtensionObjectPtr (*object_get_instance_from_id)(GDObjectInstanceID p_instance_id); GDObjectInstanceID (*object_get_instance_id)(GDExtensionConstObjectPtr p_object); + /* REFERENCE */ + + GDExtensionObjectPtr (*ref_get_object)(GDExtensionConstRefPtr p_ref); + void (*ref_set_object)(GDExtensionRefPtr p_ref, GDExtensionObjectPtr p_object); + /* SCRIPT INSTANCE */ GDExtensionScriptInstancePtr (*script_instance_create)(const GDExtensionScriptInstanceInfo *p_info, GDExtensionScriptInstanceDataPtr p_instance_data); diff --git a/core/object/ref_counted.h b/core/object/ref_counted.h index 71790fb825..411c589739 100644 --- a/core/object/ref_counted.h +++ b/core/object/ref_counted.h @@ -253,12 +253,14 @@ public: template <class T> struct PtrToArg<Ref<T>> { _FORCE_INLINE_ static Ref<T> convert(const void *p_ptr) { + // p_ptr points to a RefCounted object return Ref<T>(const_cast<T *>(reinterpret_cast<const T *>(p_ptr))); } typedef Ref<T> EncodeT; _FORCE_INLINE_ static void encode(Ref<T> p_val, const void *p_ptr) { + // p_ptr points to an EncodeT object which is a Ref<T> object. *(const_cast<Ref<RefCounted> *>(reinterpret_cast<const Ref<RefCounted> *>(p_ptr))) = p_val; } }; @@ -268,6 +270,7 @@ struct PtrToArg<const Ref<T> &> { typedef Ref<T> EncodeT; _FORCE_INLINE_ static Ref<T> convert(const void *p_ptr) { + // p_ptr points to a RefCounted object return Ref<T>((T *)p_ptr); } }; diff --git a/core/variant/variant_parser.cpp b/core/variant/variant_parser.cpp index 9f500dbf5e..f122ed5f8f 100644 --- a/core/variant/variant_parser.cpp +++ b/core/variant/variant_parser.cpp @@ -42,7 +42,7 @@ char32_t VariantParser::Stream::get_char() { } // attempt to readahead - readahead_filled = _read_buffer(readahead_buffer, READAHEAD_SIZE); + readahead_filled = _read_buffer(readahead_buffer, readahead_enabled ? READAHEAD_SIZE : 1); if (readahead_filled) { readahead_pointer = 0; } else { @@ -54,10 +54,21 @@ char32_t VariantParser::Stream::get_char() { return get_char(); } +bool VariantParser::Stream::is_eof() const { + if (readahead_enabled) { + return eof; + } + return _is_eof(); +} + bool VariantParser::StreamFile::is_utf8() const { return true; } +bool VariantParser::StreamFile::_is_eof() const { + return f->eof_reached(); +} + uint32_t VariantParser::StreamFile::_read_buffer(char32_t *p_buffer, uint32_t p_num_chars) { // The buffer is assumed to include at least one character (for null terminator) ERR_FAIL_COND_V(!p_num_chars, 0); @@ -79,6 +90,10 @@ bool VariantParser::StreamString::is_utf8() const { return false; } +bool VariantParser::StreamString::_is_eof() const { + return pos > s.length(); +} + uint32_t VariantParser::StreamString::_read_buffer(char32_t *p_buffer, uint32_t p_num_chars) { // The buffer is assumed to include at least one character (for null terminator) ERR_FAIL_COND_V(!p_num_chars, 0); diff --git a/core/variant/variant_parser.h b/core/variant/variant_parser.h index 6b1d095ab5..fdea355c4b 100644 --- a/core/variant/variant_parser.h +++ b/core/variant/variant_parser.h @@ -46,14 +46,16 @@ public: bool eof = false; protected: + bool readahead_enabled = true; virtual uint32_t _read_buffer(char32_t *p_buffer, uint32_t p_num_chars) = 0; + virtual bool _is_eof() const = 0; public: char32_t saved = 0; char32_t get_char(); virtual bool is_utf8() const = 0; - bool is_eof() const { return eof; } + bool is_eof() const; Stream() {} virtual ~Stream() {} @@ -62,13 +64,14 @@ public: struct StreamFile : public Stream { protected: virtual uint32_t _read_buffer(char32_t *p_buffer, uint32_t p_num_chars) override; + virtual bool _is_eof() const override; public: Ref<FileAccess> f; virtual bool is_utf8() const override; - StreamFile() {} + StreamFile(bool p_readahead_enabled = true) { readahead_enabled = p_readahead_enabled; } }; struct StreamString : public Stream { @@ -79,10 +82,11 @@ public: protected: virtual uint32_t _read_buffer(char32_t *p_buffer, uint32_t p_num_chars) override; + virtual bool _is_eof() const override; public: virtual bool is_utf8() const override; - StreamString() {} + StreamString(bool p_readahead_enabled = true) { readahead_enabled = p_readahead_enabled; } }; typedef Error (*ParseResourceFunc)(void *p_self, Stream *p_stream, Ref<Resource> &r_res, int &line, String &r_err_str); diff --git a/doc/classes/CanvasGroup.xml b/doc/classes/CanvasGroup.xml index d2bcf3c7ac..37827defec 100644 --- a/doc/classes/CanvasGroup.xml +++ b/doc/classes/CanvasGroup.xml @@ -5,16 +5,33 @@ </brief_description> <description> Child [CanvasItem] nodes of a [CanvasGroup] are drawn as a single object. It allows to e.g. draw overlapping translucent 2D nodes without blending (set [member CanvasItem.self_modulate] property of [CanvasGroup] to achieve this effect). + [b]Note:[/b] The [CanvasGroup] uses a custom shader to read from the backbuffer to draw its children. Assigning a [Material] to the [CanvasGroup] overrides the builtin shader. To duplicate the behavior of the builtin shader in a custom [Shader] use the following: + [codeblock] + shader_type canvas_item; + + void fragment() { + vec4 c = textureLod(SCREEN_TEXTURE, SCREEN_UV, 0.0); + + if (c.a > 0.0001) { + c.rgb /= c.a; + } + + COLOR *= c; + } + [/codeblock] [b]Note:[/b] Since [CanvasGroup] and [member CanvasItem.clip_children] both utilize the backbuffer, children of a [CanvasGroup] who have their [member CanvasItem.clip_children] set to anything other than [constant CanvasItem.CLIP_CHILDREN_DISABLED] will not function correctly. </description> <tutorials> </tutorials> <members> <member name="clear_margin" type="float" setter="set_clear_margin" getter="get_clear_margin" default="10.0"> + Sets the size of the margin used to expand the clearing rect of this [CanvasGroup]. This expands the area of the backbuffer that will be used by the [CanvasGroup]. A smaller margin will reduce the area of the backbuffer used which can increase performance, however if [member use_mipmaps] is enabled, a small margin may result in mipmap errors at the edge of the [CanvasGroup]. Accordingly, this should be left as small as possible, but should be increased if artifacts appear along the edges of the canvas group. </member> <member name="fit_margin" type="float" setter="set_fit_margin" getter="get_fit_margin" default="10.0"> + Sets the size of a margin used to expand the drawable rect of this [CanvasGroup]. The size of the [CanvasGroup] is determined by fitting a rect around its children then expanding that rect by [member fit_margin]. This increases both the backbuffer area used and the area covered by the [CanvasGroup] both of which can reduce performance. This should be kept as small as possible and should only be expanded when an increased size is needed (e.g. for custom shader effects). </member> <member name="use_mipmaps" type="bool" setter="set_use_mipmaps" getter="is_using_mipmaps" default="false"> + If [code]true[/code], calculates mipmaps for the backbuffer before drawing the [CanvasGroup] so that mipmaps can be used in a custom [ShaderMaterial] attached to the [CanvasGroup]. Generating mipmaps has a performance cost so this should not be enabled unless required. </member> </members> </class> diff --git a/doc/classes/EditorSettings.xml b/doc/classes/EditorSettings.xml index 865faa13ae..98f4789163 100644 --- a/doc/classes/EditorSettings.xml +++ b/doc/classes/EditorSettings.xml @@ -628,6 +628,9 @@ <member name="network/tls/editor_tls_certificates" type="String" setter="" getter=""> The TLS certificate bundle to use for HTTP requests made within the editor (e.g. from the AssetLib tab). If left empty, the [url=https://github.com/godotengine/godot/blob/master/thirdparty/certs/ca-certificates.crt]included Mozilla certificate bundle[/url] will be used. </member> + <member name="project_manager/default_renderer" type="String" setter="" getter=""> + The renderer type that will be checked off by default when creating a new project. Accepted strings are "forward_plus", "mobile" or "gl_compatibility". + </member> <member name="project_manager/sorting_order" type="int" setter="" getter=""> The sorting order to use in the project manager. When changing the sorting order in the project manager, this setting is set permanently in the editor settings. </member> diff --git a/doc/classes/EditorUndoRedoManager.xml b/doc/classes/EditorUndoRedoManager.xml index 133ee9db0d..cd96e740e8 100644 --- a/doc/classes/EditorUndoRedoManager.xml +++ b/doc/classes/EditorUndoRedoManager.xml @@ -123,6 +123,9 @@ <constant name="GLOBAL_HISTORY" value="0" enum="SpecialHistory"> Global history not associated with any scene, but with external resources etc. </constant> + <constant name="REMOTE_HISTORY" value="-9" enum="SpecialHistory"> + History associated with remote inspector. Used when live editing a running project. + </constant> <constant name="INVALID_HISTORY" value="-99" enum="SpecialHistory"> Invalid "null" history. It's a special value, not associated with any object. </constant> diff --git a/doc/classes/ProjectSettings.xml b/doc/classes/ProjectSettings.xml index dce9d5a55c..72f9a0e32f 100644 --- a/doc/classes/ProjectSettings.xml +++ b/doc/classes/ProjectSettings.xml @@ -1895,9 +1895,6 @@ <member name="rendering/environment/glow/upscale_mode.mobile" type="int" setter="" getter="" default="0"> Lower-end override for [member rendering/environment/glow/upscale_mode] on mobile devices, due to performance concerns or driver support. </member> - <member name="rendering/environment/glow/use_high_quality" type="bool" setter="" getter="" default="false"> - Takes more samples during downsample pass of glow. This ensures that single pixels are captured by glow which makes the glow look smoother and more stable during movement. However, it is very expensive and makes the glow post process take twice as long. - </member> <member name="rendering/environment/screen_space_reflection/roughness_quality" type="int" setter="" getter="" default="1"> Sets the quality for rough screen-space reflections. Turning off will make all screen space reflections sharp, while higher values make rough reflections look better. </member> diff --git a/doc/classes/RenderingServer.xml b/doc/classes/RenderingServer.xml index fc05f67416..7a9a380032 100644 --- a/doc/classes/RenderingServer.xml +++ b/doc/classes/RenderingServer.xml @@ -962,12 +962,6 @@ <description> </description> </method> - <method name="environment_glow_set_use_high_quality"> - <return type="void" /> - <param index="0" name="enable" type="bool" /> - <description> - </description> - </method> <method name="environment_set_adjustment"> <return type="void" /> <param index="0" name="env" type="RID" /> diff --git a/doc/classes/String.xml b/doc/classes/String.xml index d5624aeaa2..653d53607e 100644 --- a/doc/classes/String.xml +++ b/doc/classes/String.xml @@ -237,7 +237,7 @@ <description> If the string is a valid file path, returns the base directory name. [codeblock] - var dir_path = "/path/to/file.txt".get_basename() # dir_path is "/path/to" + var dir_path = "/path/to/file.txt".get_base_dir() # dir_path is "/path/to" [/codeblock] </description> </method> diff --git a/doc/classes/StringName.xml b/doc/classes/StringName.xml index e3cb6517f3..44d78a46fb 100644 --- a/doc/classes/StringName.xml +++ b/doc/classes/StringName.xml @@ -220,7 +220,7 @@ <description> If the string is a valid file path, returns the base directory name. [codeblock] - var dir_path = "/path/to/file.txt".get_basename() # dir_path is "/path/to" + var dir_path = "/path/to/file.txt".get_base_dir() # dir_path is "/path/to" [/codeblock] </description> </method> diff --git a/doc/translations/ar.po b/doc/translations/ar.po index ae292d4035..751017b573 100644 --- a/doc/translations/ar.po +++ b/doc/translations/ar.po @@ -20,13 +20,14 @@ # ywmaa <ywmaa.personal@gmail.com>, 2022. # TabbyDev <Mandomody25@gmail.com>, 2022. # عبد الرØمن أبو سعدة ||Abd Alrahman abo saada <abdalrahmanabs2005@gmail.com>, 2022. +# NEDAL NNEE <ASEL1234543210@gmail.com>, 2022. +# Abdallah <azzouni2007abd@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-07-23 03:56+0000\n" -"Last-Translator: عبد الرØمن أبو سعدة ||Abd Alrahman abo saada " -"<abdalrahmanabs2005@gmail.com>\n" +"PO-Revision-Date: 2022-11-03 11:48+0000\n" +"Last-Translator: Abdallah <azzouni2007abd@gmail.com>\n" "Language-Team: Arabic <https://hosted.weblate.org/projects/godot-engine/" "godot-class-reference/ar/>\n" "Language: ar\n" @@ -35,7 +36,7 @@ msgstr "" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " "&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n" -"X-Generator: Weblate 4.14-dev\n" +"X-Generator: Weblate 4.14.2-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -110,10 +111,9 @@ msgid "Getter" msgstr "جالب" #: doc/tools/make_rst.py -#, fuzzy msgid "" "This method should typically be overridden by the user to have any effect." -msgstr "يجب تجاوز هذه الطريقة من المستخدم ليكون لها أي تأثير." +msgstr "عادة يجب تجاوز هذه الدالة من قبل المستخدم ليكون لها أي تأثير." #: doc/tools/make_rst.py msgid "" @@ -198,7 +198,6 @@ msgstr "" "أسماء الألوان المدعومة هي Ù†Ùس الثوابت المعرّÙØ© ÙÙŠ [Color]." #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns the absolute value of parameter [code]s[/code] (i.e. positive " "value).\n" @@ -209,7 +208,7 @@ msgstr "" "لعرض القيمة المطلقة للمÙعامل [code]s[/code] (القيمة المطلقة أي القيمة " "الموجبة).\n" "[codeblock]\n" -"(a = abs(-1 #القيمة المطلقة لـ(1-) هي 1ØŒ وبالتالي Ùإن قيمة a ستكون 1\n" +"(a = abs(-1 #القيمة المطلقة لـ(1-) هي 1ØŒ وبالتالي Ùإن قيمة a ستكون 1\n" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml @@ -628,7 +627,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -643,7 +643,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -1022,12 +1026,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3645,6 +3653,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4329,8 +4357,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7249,7 +7276,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7434,6 +7464,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7453,9 +7486,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10094,10 +10131,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10629,14 +10665,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10646,22 +10682,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19456,6 +19492,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22290,7 +22334,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -33021,7 +33068,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36349,7 +36398,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36599,7 +36651,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37316,6 +37371,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -40126,7 +40184,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40642,11 +40702,11 @@ msgstr "ÙŠÙرجع قيمة الجيب العكسية للمَعلم." #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40680,11 +40740,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40706,11 +40766,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -41688,31 +41748,31 @@ msgstr "" #: doc/classes/OS.xml msgid "Sunday." -msgstr "" +msgstr "الأØد." #: doc/classes/OS.xml msgid "Monday." -msgstr "" +msgstr "الإثنين." #: doc/classes/OS.xml msgid "Tuesday." -msgstr "" +msgstr "الثلاثاء." #: doc/classes/OS.xml msgid "Wednesday." -msgstr "" +msgstr "الإربعاء." #: doc/classes/OS.xml msgid "Thursday." -msgstr "" +msgstr "الخميس." #: doc/classes/OS.xml msgid "Friday." -msgstr "" +msgstr "الجمعة." #: doc/classes/OS.xml msgid "Saturday." -msgstr "" +msgstr "السبت." #: doc/classes/OS.xml msgid "January." @@ -42573,6 +42633,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -50174,15 +50244,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51779,17 +51856,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51798,8 +51886,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54515,7 +54609,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56352,7 +56450,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57730,7 +57830,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57746,7 +57849,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -67018,10 +67123,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -67032,8 +67142,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -67185,7 +67295,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67717,6 +67829,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" @@ -75277,6 +75405,118 @@ msgid "" "a wider or narrower set of devices and input methods, or to allow more " "advanced interactions with more advanced devices." msgstr "" +"WebXR هو معيار Ù…ÙØªÙˆØ ÙŠØ³Ù…Ø Ø¨Ø¥Ù†Ø´Ø§Ø¡ تطبيقات VR Ùˆ AR تعمل ÙÙŠ متصÙØ Ø§Ù„ÙˆÙŠØ¨.\n" +"على هذا النØÙˆ ØŒ لا تتوÙر هذه الواجهة إلا عند التشغيل ÙÙŠ تصدير HTML5.\n" +"يدعم WebXR مجموعة واسعة من الأجهزة ØŒ من الأجهزة ذات القدرات العالية (مثل " +"Valve Index Ùˆ HTC Vive Ùˆ Oculus Rift Ùˆ Quest) وصولاً إلى الأجهزة الأقل قدرة " +"(مثل Google Cardboard أو Oculus Go أو GearVR أو الهوات٠الذكية العادية).\n" +"نظرًا لأن WebXR يعتمد على Javascript ØŒ Ùإنه يستخدم بشكل مكث٠عمليات " +"الاسترجاعات ØŒ مما يعني أن [WebXRInterface] مضطر لاستخدام الإشارات ØŒ Øيث " +"تستخدم واجهات AR / VR الأخرى وظائ٠تعيد النتيجة على الÙور. هذا يجعل " +"[WebXRInterface] أكثر تعقيدًا ÙÙŠ التهيئة من واجهات AR / VR الأخرى.\n" +"إليك الØد الأدنى من الشÙرة المطلوبة لبدء جلسة VR غامرة:\n" +"[كودبلوك]\n" +"يمتد المكاني\n" +"\n" +"var webxr_interface\n" +"var vr_supported = خطأ\n" +"\n" +"func _ready ():\n" +" # Ù†Ùترض أن هذه العقدة بها زر عندما كان Ø·Ùلاً.\n" +" # هذا الزر للمستخدم للمواÙقة على الدخول ÙÙŠ وضع VR الغامر.\n" +" $ Button.connect (\"pressed\"ØŒ selfØŒ \"_on_Button_pressed\")\n" +"\n" +" webxr_interface = ARVRServer.find_interface (\"WebXR\")\n" +" إذا كان webxr_interface:\n" +" # تعيين معرّÙات الزر / المØور القياسي عندما يكون ذلك ممكنًا.\n" +" webxr_interface.xr_standard_mapping = صØÙŠØ\n" +"\n" +" # يستخدم WebXR الكثير من عمليات الاسترجاعات غير المتزامنة ØŒ لذلك " +"نتصل بمختلÙ\n" +" # إشارات لتلقيها.\n" +" webxr_interface.connect (\"session_supported\"ØŒ selfØŒ " +"\"_webxr_session_supported\")\n" +" webxr_interface.connect (\"Session_started\" ØŒ self ØŒ " +"\"_webxr_session_started\")\n" +" webxr_interface.connect (\"session_ended\"ØŒ selfØŒ " +"\"_webxr_session_ended\")\n" +" webxr_interface.connect (\"session_failed\"ØŒ selfØŒ " +"\"_webxr_session_failed\")\n" +"\n" +" # يعود هذا على الÙور - طريقة _webxr_session_supported ()\n" +" # (التي ربطناها بإشارة \"session_supported\" أعلاه) سوÙ\n" +" # يتم الاتصال بنا ÙÙŠ وقت لاØÙ‚ لإعلامنا إذا كان مدعومًا أم لا.\n" +" webxr_interface.is_session_supported (\"الواقع الاÙتراضي الغامر\")\n" +"\n" +"func _webxr_session_supported (وضع الجلسة ØŒ مدعوم):\n" +" إذا كانت Session_mode == 'immersive-vr':\n" +" vr_supported = مدعوم\n" +"\n" +"func _on_Button_pressed ():\n" +" إذا لم يكن vr_supported:\n" +" OS.alert (\"متصÙØÙƒ لا يدعم VR\")\n" +" إرجاع\n" +"\n" +" # نريد جلسة VR غامرة ØŒ على عكس AR ('غامرة-ar') أو a\n" +" # عارض 3DoF بسيط (\"عارض\").\n" +" webxr_interface.session_mode = \"الواقع الاÙتراضي الغامر\"\n" +" # \"الأرضية المØددة\" عبارة عن مقياس للغرÙØ© ØŒ أما \"الأرضية المØلية\" " +"Ùهي عبارة عن مكان أو جلوس\n" +" # تجربة (تضعك على ارتÙاع 1.6 متر Ùوق Ø³Ø·Ø Ø§Ù„Ø£Ø±Ø¶ إذا كان لديك سماعة رأس " +"3DoF) ØŒ\n" +" # ÙÙŠ Øين أن \"Ù…Øلي\" يضعك ÙÙŠ موقع ARVROrigin.\n" +" # تعني هذه القائمة أنها ستØاول أولاً طلب \"أرضية Ù…Øدودة\" ØŒ بعد ذلك\n" +" # الرجوع إلى \"local-floor\" ÙˆÙÙŠ النهاية \"المØلي\" ØŒ إذا لم يكن هناك " +"شيء آخر\n" +" # أيد.\n" +" webxr_interface.requested_reference_space_types = 'bounded-floorØŒ local-" +"floorØŒ local'\n" +" # من أجل استخدام \"أرضية Ù…Øلية\" أو \"أرضية Ù…Øدودة\" يجب علينا أيضًا\n" +" # ضع علامة على الميزات كما هو مطلوب أو اختياري.\n" +" webxr_interface.required_features = \"local-floor\"\n" +" webxr_interface.optional_features = \"bounded-floor\"\n" +"\n" +" # سيعود هذا خطأ إذا لم نتمكن Øتى من طلب الجلسة ØŒ\n" +" # ومع ذلك ØŒ لا يزال من الممكن أن تÙشل بشكل غير متزامن ÙÙŠ وقت لاØÙ‚ من " +"العملية ØŒ لذلك Ù†ØÙ†\n" +" # تعر٠Ùقط ما إذا كان قد Ù†Ø¬Ø Øقًا أو Ùشل عندما\n" +" # _webxr_session_started () أو _webxr_session_failed () تسمى.\n" +" إذا لم يكن webxr_interface.initialize ():\n" +" OS.alert (\"Ùشل التهيئة\")\n" +" إرجاع\n" +"\n" +"func _webxr_session_started ():\n" +" $ Button.visible = false\n" +" # هذا يخبر Godot أن يبدأ التقديم إلى سماعة الرأس.\n" +" get_viewport (). arvr = صØÙŠØ\n" +" # سيكون هذا هو نوع المساØØ© المرجعية التي Øصلت عليها ÙÙŠ النهاية ØŒ من\n" +" # أنواع طلبتها أعلاه. هذا Ù…Ùيد إذا كنت تريد اللعبة\n" +" # العمل بشكل مختل٠قليلاً ÙÙŠ \"الأرضية المØدودة\" مقابل \"الأرضية " +"المØلية\".\n" +" طباعة (\"نوع المساØØ© المرجعية:\" + webxr_interface." +"reference_space_type)\n" +"\n" +"func _webxr_session_ended ():\n" +" $ Button.visible = صØÙŠØ\n" +" # إذا خرج المستخدم من الوضع المجسم ØŒ Ùإننا نطلب من Godot عرضه على الويب\n" +" # صÙØØ© مرة أخرى.\n" +" get_viewport (). arvr = خطأ\n" +"\n" +"func _webxr_session_failed (رسالة):\n" +" OS.alert (\"Ùشل التهيئة:\" + رسالة)\n" +"[/ codeblock]\n" +"هناك عدة طرق للتعامل مع إدخال \"ÙˆØدة التØكم\":\n" +"- استخدام عقد [ARVRController] وإشارات [إشارة ARVRController.button_pressed] " +"Ùˆ [إشارة ARVRController.button_release]. هذه هي الطريقة التي يتم بها التعامل " +"مع ÙˆØدات التØكم عادةً ÙÙŠ تطبيقات AR / VR ÙÙŠ Godot ØŒ ومع ذلك ØŒ لن يعمل هذا إلا " +"مع ÙˆØدات تØكم VR المتقدمة مثل Oculus Touch أو أجهزة التØكم ÙÙŠ الÙهرس ØŒ على " +"سبيل المثال. يتم تØديد رموز الأزرار بواسطة [url = https: //immersive-web." +"github.io/webxr-gamepads-module/#xr-standard-gamepad-mapping] القسم 3.3 من " +"ÙˆØدة WebXR Gamepads Module [/ url].\n" +"- استخدام [method Node._unhandled_input] Ùˆ [InputEventJoypadButton] أو " +"[InputEventJoypadMotion]. يعمل هذا بنÙس طريقة عمل لوØات التØكم العادية ØŒ " +"باستثناء أن [العضو InputEvent.device] يبدأ عند 100 ØŒ لذا Ùإن ÙˆØدة التØكم " +"اليسرى هي 100 ومÙØªØ§Ø Ø§Ù„ØªØكم الأيمن." #: modules/webxr/doc_classes/WebXRInterface.xml msgid "How to make a VR game for WebXR with Godot" diff --git a/doc/translations/ca.po b/doc/translations/ca.po index ff63e7f808..1552c15271 100644 --- a/doc/translations/ca.po +++ b/doc/translations/ca.po @@ -588,7 +588,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -603,7 +604,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -976,12 +981,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3592,6 +3601,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4276,8 +4305,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7194,7 +7222,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7379,6 +7410,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7398,9 +7432,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10038,10 +10076,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10573,14 +10610,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10590,22 +10627,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19385,6 +19422,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22217,7 +22262,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32932,7 +32980,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36230,7 +36280,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36478,7 +36531,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37188,6 +37244,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39994,7 +40053,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40505,11 +40566,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40543,11 +40604,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40569,11 +40630,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42420,6 +42481,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -50012,15 +50083,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51616,17 +51694,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51635,8 +51724,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54351,7 +54446,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56188,7 +56287,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57566,7 +57667,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57582,7 +57686,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66819,10 +66925,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66833,8 +66944,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66986,7 +67097,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67518,6 +67631,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/classes.pot b/doc/translations/classes.pot index 6ee35f0a74..40ab5e3413 100644 --- a/doc/translations/classes.pot +++ b/doc/translations/classes.pot @@ -468,7 +468,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -483,7 +484,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -856,12 +861,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3472,6 +3481,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4156,8 +4185,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7074,7 +7102,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7259,6 +7290,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7278,9 +7312,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9918,10 +9956,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10453,14 +10490,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10470,22 +10507,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19265,6 +19302,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22097,7 +22142,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32809,7 +32857,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36107,7 +36157,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36355,7 +36408,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37065,6 +37121,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39871,7 +39930,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40382,11 +40443,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40420,11 +40481,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40446,11 +40507,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42297,6 +42358,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49889,15 +49960,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51493,17 +51571,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51512,8 +51601,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54228,7 +54323,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56065,7 +56164,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57443,7 +57544,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57459,7 +57563,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66696,10 +66802,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66710,8 +66821,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66863,7 +66974,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67395,6 +67508,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/cs.po b/doc/translations/cs.po index 92e3272798..1bd920e19b 100644 --- a/doc/translations/cs.po +++ b/doc/translations/cs.po @@ -15,12 +15,13 @@ # Tomas Dostal <tomas.dostal.cz@gmail.com>, 2021. # JoeMoos <josephmoose13@gmail.com>, 2022. # Mirinek <mirek.nozicka77@gmail.com>, 2022. +# Dominik Strnad <domi.str@seznam.cz>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-08-28 00:17+0000\n" -"Last-Translator: Mirinek <mirek.nozicka77@gmail.com>\n" +"PO-Revision-Date: 2022-11-13 03:28+0000\n" +"Last-Translator: Dominik Strnad <domi.str@seznam.cz>\n" "Language-Team: Czech <https://hosted.weblate.org/projects/godot-engine/godot-" "class-reference/cs/>\n" "Language: cs\n" @@ -28,7 +29,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -"X-Generator: Weblate 4.14.1-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -682,8 +683,10 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -698,7 +701,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" "Vrátà pole slovnÃků, které reprezentujà aktuálnà zásobnÃk volánÃ.\n" "[codeblock]\n" @@ -1248,12 +1255,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3974,6 +3985,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4303,7 +4334,7 @@ msgstr "Vektorová matematika" #: doc/classes/AABB.xml doc/classes/Rect2.xml doc/classes/Vector2.xml #: doc/classes/Vector3.xml msgid "Advanced vector math" -msgstr "" +msgstr "PokroÄilá vektorová matematika" #: doc/classes/AABB.xml msgid "Constructs an [AABB] from a position and size." @@ -4658,8 +4689,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7580,7 +7610,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7765,6 +7798,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7784,9 +7820,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10431,12 +10471,14 @@ msgid "Clears the audio sample data buffer." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml +#, fuzzy msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" +"Vracà [code]true[/code] pokud si jsou [code]a[/code] a [code]b[/code] " +"pÅ™iblÞnÄ› rovny." #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" @@ -10967,14 +11009,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10984,22 +11026,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19828,6 +19870,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22664,7 +22714,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -33412,7 +33465,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36744,7 +36799,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36996,7 +37054,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37716,6 +37777,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -40529,7 +40593,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -41046,11 +41112,11 @@ msgstr "Vrátà tangens parametru." #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -41084,11 +41150,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -41110,11 +41176,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42984,6 +43050,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -50590,15 +50666,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -52199,17 +52282,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -52218,8 +52312,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54939,7 +55039,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56777,7 +56881,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -58155,7 +58261,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -58171,7 +58280,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -67523,10 +67634,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -67537,8 +67653,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -67692,7 +67808,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -68224,6 +68342,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/de.po b/doc/translations/de.po index 0da2ce9bc1..1533aa651d 100644 --- a/doc/translations/de.po +++ b/doc/translations/de.po @@ -53,12 +53,14 @@ # Felix Bitsch <felix.a.bitsch@gmail.com>, 2022. # Coxcopi <master.vogel2015@gmail.com>, 2022. # Harusakii <spieleok@gmail.com>, 2022. +# GadMas <c.vavra@web.de>, 2022. +# JodliDev <jodlidev@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-09-12 01:18+0000\n" -"Last-Translator: Harusakii <spieleok@gmail.com>\n" +"PO-Revision-Date: 2022-11-10 23:27+0000\n" +"Last-Translator: JodliDev <jodlidev@gmail.com>\n" "Language-Team: German <https://hosted.weblate.org/projects/godot-engine/" "godot-class-reference/de/>\n" "Language: de\n" @@ -66,7 +68,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.14.1-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -596,7 +598,6 @@ msgstr "" "zurück in eine Instanz. Nützlich für die Deserialisierung." #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns an \"eased\" value of [code]x[/code] based on an easing function " "defined with [code]curve[/code]. This easing function is based on an " @@ -616,23 +617,24 @@ msgid "" "See also [method smoothstep]. If you need to perform more advanced " "transitions, use [Tween] or [AnimationPlayer]." msgstr "" -"Gibt einen interpolierten Wert von [code]x[/code] basiert auf einer Funktion " -"die durch [code]curve[/code] definiert wird. Die Funktion basiert auf einem " -"Exponent. Die [code]curve[/code] kann jegliche Gleitkommazahl sein, von " -"welchen diese spezifische Werte zu folgendem Verhalten führen:\n" +"Gibt einen interpolierten Wert von [code]x[/code] basierend auf einer " +"Ãœbergangsfunktion die durch [code]curve[/code] definiert wird. Diese " +"Ãœbergangsfunktion basiert auf einem Exponenten. Die [code]curve[/code] kann " +"eine beliebige Fließkommazahl sein, wobei bestimmte Werte zu folgendem " +"Verhalten führen:\n" "[codeblock]\n" -"- Weniger als -1.0 (exclusiv): Beschleunige in-out\n" +"- Weniger als -1.0 (exklusiv): Ease in-out\n" "- 1.0: Linear\n" -"- Zwischen -1.0 und 0.0 (exclusiv): Beschleunige out-in\n" +"- Zwischen -1.0 und 0.0 (exklusiv): Ease out-in\n" "- 0.0: Konstant\n" -"- Zwischen 0.0 und 1.0 (exclusiv): Beschleunige in\n" +"- Zwischen 0.0 und 1.0 (exklusiv): Ease in\n" "- 1.0: Linear\n" -"- Mehr als 1.0 (exclusive): Beschleunige out\n" +"- Mehr als 1.0 (exklusive): Beschleunige out\n" "[/codeblock]\n" "[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.4/img/" "ease_cheatsheet.png]ease() curve values cheatsheet[/url]\n" -"Siehe auch [method smoothstep]. Falls du fortgeschrittene Ãœbergänge " -"erstellen möchtest, benutze [Tween] oder [AnimationPlayer]." +"Siehe auch [method smoothstep]. Wenn du noch komplexere Ãœbergänge erstellen " +"möchtest, benutze [Tween] oder [AnimationPlayer]." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -762,8 +764,10 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -778,7 +782,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" "Gibt ein Array von Wörterbüchern zurück, das den aktuellen Aufrufstapel " "darstellt.\n" @@ -864,7 +872,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns an interpolation or extrapolation factor considering the range " "specified in [code]from[/code] and [code]to[/code], and the interpolated " @@ -887,24 +894,25 @@ msgid "" "See also [method lerp] which performs the reverse of this operation, and " "[method range_lerp] to map a continuous series of values to another." msgstr "" -"Gibt zurück einen Inter- bzw. Extrapolationsfaktor unter Berücksichtigung " -"des Zahlenraums von [code]from[/code] bis [code]to[/code], und dem " -"interpolierten Wert in [code]weight[/code]. Der Rückgabewert liegt zwischen " -"[code]0.0[/code] und [code]1.0[/code] wenn [code]weight[/code] zwischen " -"[code]from[/code] und [code]to[/code] (einschließlich). Liegt [code]weight[/" -"code] außerhalb dieses Bereichs, wird ein Extrapolationsfaktor zurückgegeben " -"(Rückgabewert kleiner als [code]0.0[/code] oder größer als [code]1.0[/" -"code]).\n" +"Gibt einen Inter- bzw. Extrapolationsfaktor unter Berücksichtigung des " +"Zahlenraums von [code]from[/code] bis [code]to[/code], und dem " +"interpolierten Wert in [code]weight[/code] zurück. Der Rückgabewert liegt " +"zwischen [code]0.0[/code] und [code]1.0[/code] wenn [code]weight[/code] " +"zwischen [code]from[/code] und [code]to[/code] (einschließlich). Liegt " +"[code]weight[/code] außerhalb dieses Bereichs, wird ein Extrapolationsfaktor " +"zurückgegeben (Rückgabewert kleiner als [code]0.0[/code] oder größer als " +"[code]1.0[/code]).\n" "[codeblock]\n" -"# Die Interpolationsratio im `lerp()`-Aufruf unten beträgt 0.75.\n" +"# Der Interpolationsfaktor im `lerp()`-Aufruf unten beträgt 0.75.\n" "var middle = lerp(20, 30, 0.75)\n" "# `middle` beträgt nun 27.5.\n" -"# Angenommen, die ursprüngliche Ratio ist nun nicht mehr bekannt und soll " -"zurückerrechnet werden.\n" +"# Angenommen, der ursprüngliche Faktor ist nun nicht mehr bekannt und soll " +"zurück errechnet werden.\n" "var ratio = inverse_lerp(20, 30, 27.5)\n" "# `ratio` beträgt nun 0.75.\n" "[/codeblock]\n" -"Siehe auch [method lerp] für die Umkehrung dieser Funktion." +"Siehe auch [method lerp] für die Umkehrung dieser Funktion und [method " +"range_lerp] um Zahlenbereiche aufeinander abzubilden." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -976,7 +984,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Linearly interpolates between two values by the factor defined in " "[code]weight[/code]. To perform interpolation, [code]weight[/code] should be " @@ -999,12 +1006,13 @@ msgid "" "continuous series of values to another." msgstr "" "Interpoliert linear zwischen zwei Werten mit dem in [code]weight[/code] " -"definierten Faktor. Um eine Interpolation durchzuführen, sollte " -"[code]Gewicht[/code] zwischen [code]0.0[/code] und [code]1.0[/code] " -"(einschließlich) liegen. Werte außerhalb dieses Bereichs sind jedoch " -"zulässig und können verwendet werden, um [i]Extrapolation[/i] " -"durchzuführen.\n" -"Wenn die Argumente [code]von[/code] und [code]bis[/code] vom Typ [int] oder " +"definierten Faktor. Um eine Interpolation durchzuführen, sollte [code]weigh[/" +"code] zwischen [code]0.0[/code] und [code]1.0[/code] (einschließlich) " +"liegen. Werte außerhalb dieses Bereichs sind jedoch zulässig und können " +"verwendet werden, um [i]Extrapolation[/i] durchzuführen. Falls dies nicht " +"gewünscht ist, kann [method clamp] auf dem Ergebnis von [method lerp] " +"angewendet werden.\n" +"Wenn die Argumente [code]from[/code] und [code]to[/code] vom Typ [int] oder " "[float] sind, ist der Rückgabewert ein [float].\n" "Wenn beide vom gleichen Vektortyp sind ([Vector2], [Vector3] oder [Color]), " "ist der Rückgabewert vom gleichen Typ ([code]lerp[/code] ruft dann die " @@ -1013,9 +1021,10 @@ msgstr "" "lerp(0, 4, 0.75) # Gibt 3.0 zurück\n" "lerp(Vector2(1, 5), Vector2(3, 2), 0.5) # Liefert Vector2(2, 3.5)\n" "[/codeblock]\n" -"Siehe auch [method inverse_lerp], die die Umkehrung dieser Operation " -"durchführt. Um eine Interpolation mit [method lerp] durchzuführen, " -"kombiniere sie mit [method ease] oder [method smoothstep]." +"Siehe auch [method inverse_lerp], welche die Umkehrung dieser Operation " +"durchführt. Um eine \"eased Interpolation\" mit [method lerp] durchzuführen, " +"kombiniere sie mit [method ease] oder [method smoothstep]. Siehe auch " +"[method range_lerp] um eine Serie von Werten ineinander abzubilden." #: modules/gdscript/doc_classes/@GDScript.xml #, fuzzy @@ -1346,7 +1355,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns the result of [code]base[/code] raised to the power of [code]exp[/" "code].\n" @@ -1356,7 +1364,7 @@ msgid "" msgstr "" "Liefert das Ergebnis von [code]x[/code] hoch [code]y[/code].\n" "[codeblock]\n" -"pow(2, 5) # liefert 32\n" +"pow(2, 5) # liefert 32.0\n" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml @@ -1433,19 +1441,17 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" -"Gibt einen Stacktrace zum Quelltextort aus, funktioniert nur wenn das " -"\"Ausführen mit Debugger\" aktiviert ist.\n" -"Die Ausgabe in der Konsole würde ungefähr so aussehen:\n" -"[codeblock]\n" -"Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -4656,6 +4662,26 @@ msgstr "" "wurde." #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" "Die Eigenschaft wird serialisiert und in der Szenendatei gespeichert " @@ -5519,8 +5545,7 @@ msgstr "2D Sprite Animation" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "2D „Dodge The Creeps“ Demo" @@ -9635,6 +9660,7 @@ msgstr "" "neu indiziert werden müssen." #: doc/classes/Array.xml +#, fuzzy msgid "" "Assigns the given value to all elements in the array. This can typically be " "used together with [method resize] to create an array with a given size and " @@ -9643,7 +9669,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" "Weist allen Elementen des Arrays den angegebenen Wert zu. Dies kann " "normalerweise zusammen mit [method resize] verwendet werden, um ein Array " @@ -9935,8 +9964,12 @@ msgstr "" "beschreibt." #: doc/classes/Array.xml +#, fuzzy msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -9958,6 +9991,7 @@ msgstr "" "[/codeblock]" #: doc/classes/Array.xml +#, fuzzy msgid "" "Sorts the array using a custom method. The arguments are an object that " "holds the method and the name of such method. The custom method receives two " @@ -9966,9 +10000,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -13374,12 +13412,14 @@ msgid "Clears the audio sample data buffer." msgstr "Enthält die Audio Daten in Bytes." #: doc/classes/AudioStreamGeneratorPlayback.xml +#, fuzzy msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" +"Gibt [code]true[/code] zurück wenn Einstellung welche durch [code]name[/" +"code]angegeben ist, existiert, ansonsten [code]false[/code]." #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" @@ -13914,14 +13954,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -13931,22 +13971,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -22941,6 +22981,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -25784,7 +25832,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -36673,7 +36724,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -40028,7 +40081,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -40284,7 +40340,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -41016,6 +41075,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -43838,7 +43900,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -44358,11 +44422,11 @@ msgstr "Gibt das AnimationNode mit dem gegebenen Namen zurück." #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -44396,11 +44460,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -44422,11 +44486,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -46320,6 +46384,17 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +#, fuzzy +msgid "2D Particles Demo" +msgstr "2D Platformer Demo" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -53998,15 +54073,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -55641,17 +55723,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -55660,8 +55753,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -58401,7 +58500,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -60251,7 +60354,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -61650,7 +61755,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -61666,7 +61774,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -71268,10 +71378,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -71282,8 +71397,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -71442,7 +71557,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -71985,6 +72102,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/el.po b/doc/translations/el.po index 2044a45e60..13c4fbfe68 100644 --- a/doc/translations/el.po +++ b/doc/translations/el.po @@ -483,7 +483,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -498,7 +499,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -871,12 +876,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3487,6 +3496,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4171,8 +4200,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7091,7 +7119,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7276,6 +7307,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7295,9 +7329,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9936,10 +9974,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10471,14 +10508,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10488,22 +10525,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19299,6 +19336,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22133,7 +22178,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32864,7 +32912,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36186,7 +36236,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36436,7 +36489,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37153,6 +37209,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39963,7 +40022,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40479,11 +40540,11 @@ msgstr "ΕπιστÏÎφει το τόξο ημιτόνου της παÏαμÎÏ #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40517,11 +40578,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40543,11 +40604,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42397,6 +42458,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49998,15 +50069,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51603,17 +51681,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51622,8 +51711,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54339,7 +54434,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56176,7 +56275,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57554,7 +57655,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57570,7 +57674,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66842,10 +66948,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66856,8 +66967,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -67009,7 +67120,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67541,6 +67654,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/es.po b/doc/translations/es.po index 12a03991b8..8ed223238d 100644 --- a/doc/translations/es.po +++ b/doc/translations/es.po @@ -37,12 +37,14 @@ # emnrx <emanuelermancia@gmail.com>, 2022. # BlackNoizE404 <blacknoize404@gmail.com>, 2022. # Keyla Arroyos <keylaarroyos@protonmail.com>, 2022. +# Victor Stancioiu <victorstancioiu@gmail.com>, 2022. +# yohanger <yohangerariel@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-09-26 05:24+0000\n" -"Last-Translator: Keyla Arroyos <keylaarroyos@protonmail.com>\n" +"PO-Revision-Date: 2022-11-29 20:23+0000\n" +"Last-Translator: yohanger <yohangerariel@gmail.com>\n" "Language-Team: Spanish <https://hosted.weblate.org/projects/godot-engine/" "godot-class-reference/es/>\n" "Language: es\n" @@ -50,7 +52,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.14.1\n" +"X-Generator: Weblate 4.15-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -749,8 +751,10 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -765,7 +769,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" "Devuelve un conjunto de diccionarios que representan la pila de llamadas " "actual.\n" @@ -852,7 +860,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns an interpolation or extrapolation factor considering the range " "specified in [code]from[/code] and [code]to[/code], and the interpolated " @@ -886,7 +893,7 @@ msgstr "" "# La razón de interpolación en la llamada a `lerp()` de más abajo es 0.75.\n" "var middle = lerp(20, 30, 0.75)\n" "# `middle` ahora es 27.5.\n" -"# Ahora, suponemos haber olvidado la razón original y queremos obtererla de " +"# Ahora, suponemos haber olvidado la razón original y queremos obtenerla de " "vuelta.\n" "var ratio = inverse_lerp(20, 30, 27.5)\n" "# `ratio` ahora es 0.75.\n" @@ -1382,7 +1389,6 @@ msgstr "" "mientras muestra un trazo de cuando un error o advertencia se muestra." #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Like [method print], but includes the current stack frame when running with " "the debugger turned on.\n" @@ -1392,7 +1398,7 @@ msgid "" " At: res://test.gd:15:_process()\n" "[/codeblock]" msgstr "" -"Imprime una registro de la pila en la ubicación del código, sólo funciona " +"Imprime una registro de la pila en la ubicación del código, solo funciona " "cuando se ejecuta con el depurador activado.\n" "La salida en la consola se verÃa algo asÃ:\n" "[codeblock]\n" @@ -1401,19 +1407,17 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" -"Imprime una registro de la pila en la ubicación del código, sólo funciona " -"cuando se ejecuta con el depurador activado.\n" -"La salida en la consola se verÃa algo asÃ:\n" -"[codeblock]\n" -"Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1533,7 +1537,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns a random floating point value between [code]from[/code] and " "[code]to[/code] (both endpoints inclusive).\n" @@ -1542,10 +1545,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] This is equivalent to [code]randf() * (to - from) + from[/code]." msgstr "" -"Rango aleatorio de cualquier numero real entre [code]from[/code] y [code]to[/" +"Rango aleatorio de cualquier número real entre [code]from[/code] y [code]to[/" "code].\n" "[codeblock]\n" -"prints(rand_range(0, 1), rand_range(0, 1)) # Imprime dos numeros aleatorios\n" +"prints(rand_range(0, 1), rand_range(0, 1)) # Imprime dos números aleatorios\n" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml @@ -4570,6 +4573,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "Sugiere que una imagen se comprime usando una compresión sin pérdidas." #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" "La propiedad se serializa y se guarda en el archivo de la escena (por " @@ -5406,8 +5429,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -9212,7 +9234,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -9448,8 +9473,12 @@ msgstr "" "cambio entre indices mientras se trocean." #: doc/classes/Array.xml +#, fuzzy msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -9480,9 +9509,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -13080,12 +13113,14 @@ msgid "Clears the audio sample data buffer." msgstr "Contiene los datos de audio en bytes." #: doc/classes/AudioStreamGeneratorPlayback.xml +#, fuzzy msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" +"Devuelve [code]true[/code] si el [code]layer[/code] dado en el [member " +"cull_mask] está activado, [code]false[/code] en caso contrario." #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" @@ -13699,14 +13734,14 @@ msgstr "" #, fuzzy msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" "Nodo para hacer un back-buffer en la pantalla que se muestra actualmente. La " @@ -13725,27 +13760,31 @@ msgid "Buffer mode. See [enum CopyMode] constants." msgstr "Modo de búfer. Ver las constantes de [enum CopyMode]." #: doc/classes/BackBufferCopy.xml +#, fuzzy msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" "El área cubierta por el BackBufferCopy. Sólo se usa si [member copy_mode] es " "[constant COPY_MODE_RECT]." #: doc/classes/BackBufferCopy.xml +#, fuzzy msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" "Deshabilita el modo de almacenamiento intermedio. Esto significa que el nodo " "BackBufferCopy utilizará directamente la parte de la pantalla que cubre." #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +#, fuzzy +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "BackBufferCopy almacena una región rectangular." #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +#, fuzzy +msgid "[BackBufferCopy] buffers the entire screen." msgstr "BackBufferCopy almacena toda la pantalla." #: doc/classes/BakedLightmap.xml @@ -25237,6 +25276,14 @@ msgid "Cylinder shape for collisions." msgstr "Forma de cilindro para colisiones." #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "La altura del cilindro." @@ -29140,7 +29187,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" "Los scripts que extienden esta clase e implementan su método [method _run] " "pueden ser ejecutados desde la opción de menú [b]File > Run[/b] del editor " @@ -43439,7 +43489,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" "El tamaño de la luz en unidades Godot. Sólo disponible para [OmniLight] y " "[SpotLight]. Aumentar este valor hará que la luz se desvanezca más " @@ -47664,7 +47716,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -47924,7 +47979,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -48736,6 +48794,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -50988,7 +51049,6 @@ msgstr "" "será renombrado automáticamente." #: doc/classes/Node.xml -#, fuzzy msgid "" "The node owner. A node can have any other node as owner (as long as it is a " "valid parent, grandparent, etc. ascending in the tree). When saving a node " @@ -51016,7 +51076,7 @@ msgstr "" "ejemplo:\n" "[codeblock]\n" "if child_node.get_parent():\n" -" child_node.get_parent().remove_child(child_node)\n" +" child_node.get_parent().remove_child(child_node)\n" "add_child(child_node)\n" "[/codeblock]\n" "Si necesita que el nodo hijo se añada debajo de un nodo especÃfico en la " @@ -52769,11 +52829,14 @@ msgstr "" "curva." #: doc/classes/OmniLight.xml +#, fuzzy msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" "El radio de la luz. Tenga en cuenta que el área efectivamente iluminada " "puede parecer más pequeña dependiendo del [member omni_attenuation] en uso. " @@ -53445,11 +53508,11 @@ msgstr "Devuelve el vértice en un Ãndice determinado." #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -53505,11 +53568,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -53538,11 +53601,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -55970,6 +56033,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" "Devuelve un rectángulo que contiene las posiciones de todas las partÃculas " @@ -65727,15 +65800,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -67818,36 +67898,45 @@ msgstr "Devuelve si este objeto tiene asignado un patrón de búsqueda válido." #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" -"Busca en el texto el patrón compilado. Devuelve un contenedor [RegExMatch] " -"del primer resultado coincidente si se encuentra, de lo contrario " -"[code]null[/code]. La región en la que se debe buscar puede especificarse " -"sin modificar el lugar en el que se encuentra el anclaje de inicio y fin." #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" -"Busca en el texto el patrón compilado. Devuelve un array de contenedores " -"[RegExMatch] para cada resultado no superpuesto. Si no se encuentran " -"resultados, se devuelve un array vacÃo. La región en la que se debe buscar " -"puede ser especificada sin modificar el lugar donde se encuentran el ancla " -"de inicio y el ancla de fin." #: modules/regex/doc_classes/RegEx.xml +#, fuzzy msgid "" "Searches the text for the compiled pattern and replaces it with the " "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" "Busca en el texto el patrón compilado y lo reemplaza con la string " "especificada. Escapadas y retro-referencias como [code]$1[/code] y " @@ -71417,9 +71506,12 @@ msgstr "" "reposo)." #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" -"Llama a un grupo sólo una vez aunque la llamada se ejecute muchas veces." #: doc/classes/SceneTree.xml #, fuzzy @@ -73637,7 +73729,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -75379,8 +75473,11 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." -msgstr "El ángulo del foco en grados." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." +msgstr "" #: doc/classes/SpotLight.xml msgid "The spotlight's angular attenuation curve." @@ -75391,11 +75488,14 @@ msgid "The spotlight's light energy attenuation curve." msgstr "La curva de atenuación de la energÃa de la luz del foco." #: doc/classes/SpotLight.xml +#, fuzzy msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" "El máximo rango que puede ser alcanzado por el foco. Tenga en cuenta que el " "área efectivamente iluminada puede parecer más pequeña dependiendo del " @@ -87445,10 +87545,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -87462,8 +87567,8 @@ msgstr "" #: doc/classes/Viewport.xml #, fuzzy msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" "Si [code]true[/code], la etiqueta subraya las metaetiquetas como [code][url]" "{text}[/url][/code]." @@ -87654,7 +87759,9 @@ msgstr "Si [code]true[/code], el viewport deberÃa hacer su fondo transparente." #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -88350,6 +88457,22 @@ msgstr "" "Este objeto sólo será visible para [Camera] cuya máscara de selección " "incluya el objeto renderizado que este [VisualInstance] tiene configurado." +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "Un script implementado en el entorno de programación de Visual Script." diff --git a/doc/translations/et.po b/doc/translations/et.po index 40bf471522..7f92671d8f 100644 --- a/doc/translations/et.po +++ b/doc/translations/et.po @@ -481,7 +481,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -496,7 +497,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -869,12 +874,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3485,6 +3494,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4169,8 +4198,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7087,7 +7115,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7272,6 +7303,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7291,9 +7325,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9931,10 +9969,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10466,14 +10503,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10483,22 +10520,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19278,6 +19315,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22110,7 +22155,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32822,7 +32870,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36120,7 +36170,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36368,7 +36421,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37078,6 +37134,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39884,7 +39943,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40395,11 +40456,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40433,11 +40494,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40459,11 +40520,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42310,6 +42371,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49902,15 +49973,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51506,17 +51584,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51525,8 +51614,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54241,7 +54336,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56078,7 +56177,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57456,7 +57557,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57472,7 +57576,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66709,10 +66815,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66723,8 +66834,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66876,7 +66987,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67408,6 +67521,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/fa.po b/doc/translations/fa.po index 31077d1e54..787c7ff937 100644 --- a/doc/translations/fa.po +++ b/doc/translations/fa.po @@ -698,8 +698,10 @@ msgstr "" "[/ codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -714,7 +716,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" "آرایه ای از Ùرهنگ لغت ها را نشان Ù…ÛŒ دهد Ú©Ù‡ پشته تماس Ùعلی را نشان Ù…ÛŒ دهد.\n" "[codeblock]\n" @@ -1292,12 +1298,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3920,6 +3930,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4604,8 +4634,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7522,7 +7551,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7707,6 +7739,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7726,9 +7761,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10366,10 +10405,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10901,14 +10939,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10918,22 +10956,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19713,6 +19751,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22545,7 +22591,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -33260,7 +33309,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36564,7 +36615,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36812,7 +36866,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37522,6 +37579,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -40328,7 +40388,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40839,11 +40901,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40877,11 +40939,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40903,11 +40965,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42766,6 +42828,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -50358,15 +50430,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51966,17 +52045,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51985,8 +52075,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54701,7 +54797,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56538,7 +56638,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57916,7 +58018,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57932,7 +58037,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -67169,10 +67276,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -67183,8 +67295,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -67336,7 +67448,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67868,6 +67982,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/fi.po b/doc/translations/fi.po index 811d77f710..fc517a6ff5 100644 --- a/doc/translations/fi.po +++ b/doc/translations/fi.po @@ -550,7 +550,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -565,7 +566,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -938,12 +943,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3554,6 +3563,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4238,8 +4267,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7164,7 +7192,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7349,6 +7380,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7368,9 +7402,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10009,10 +10047,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10544,14 +10581,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10561,22 +10598,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19375,6 +19412,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22209,7 +22254,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32948,7 +32996,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36271,7 +36321,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36521,7 +36574,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37238,6 +37294,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -40048,7 +40107,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40564,11 +40625,11 @@ msgstr "Palauttaa kahden vektorin jäännöksen." #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40602,11 +40663,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40628,11 +40689,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42482,6 +42543,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -50083,15 +50154,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51688,17 +51766,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51707,8 +51796,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54424,7 +54519,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56262,7 +56361,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57640,7 +57741,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57656,7 +57760,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66944,10 +67050,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66958,8 +67069,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -67111,7 +67222,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67643,6 +67756,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/fil.po b/doc/translations/fil.po index 2bbab40941..749fea9ef9 100644 --- a/doc/translations/fil.po +++ b/doc/translations/fil.po @@ -484,7 +484,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -499,7 +500,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -872,12 +877,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3488,6 +3497,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4172,8 +4201,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7090,7 +7118,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7275,6 +7306,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7294,9 +7328,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9934,10 +9972,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10469,14 +10506,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10486,22 +10523,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19281,6 +19318,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22113,7 +22158,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32828,7 +32876,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36126,7 +36176,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36374,7 +36427,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37084,6 +37140,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39890,7 +39949,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40401,11 +40462,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40439,11 +40500,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40465,11 +40526,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42316,6 +42377,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49908,15 +49979,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51512,17 +51590,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51531,8 +51620,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54247,7 +54342,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56084,7 +56183,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57462,7 +57563,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57478,7 +57582,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66715,10 +66821,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66729,8 +66840,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66882,7 +66993,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67414,6 +67527,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/fr.po b/doc/translations/fr.po index e22ff9db67..2898e9ec19 100644 --- a/doc/translations/fr.po +++ b/doc/translations/fr.po @@ -56,13 +56,17 @@ # KikooDX <kikoodx@paranoici.org>, 2022. # Kevin Bouancheau <kevin.bouancheau@gmail.com>, 2022. # Maxim Lopez <maxim.lopez.02@gmail.com>, 2022. +# Philippe Lamare <ph.lamare@free.fr>, 2022. +# Augustin Ambiehl <ambiehlaugustin@gmail.com>, 2022. +# Landry Simo <landrysimo99@gmail.com>, 2022. +# Alexis Coudert <coudert.alex@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-08-19 12:56+0000\n" -"Last-Translator: Maxime Leroy <lisacintosh@gmail.com>\n" +"PO-Revision-Date: 2022-12-03 00:47+0000\n" +"Last-Translator: Alexis Coudert <coudert.alex@gmail.com>\n" "Language-Team: French <https://hosted.weblate.org/projects/godot-engine/" "godot-class-reference/fr/>\n" "Language: fr\n" @@ -70,7 +74,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.14-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -133,6 +137,7 @@ msgid "Default" msgstr "Défaut" #: doc/tools/make_rst.py +#, fuzzy msgid "Setter" msgstr "Setter" @@ -774,8 +779,10 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -790,7 +797,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" "Renvoie un tableau de dictionnaires représentant la pile d'appels en cours.\n" "[codeblock]\n" @@ -876,7 +887,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns an interpolation or extrapolation factor considering the range " "specified in [code]from[/code] and [code]to[/code], and the interpolated " @@ -899,24 +909,26 @@ msgid "" "See also [method lerp] which performs the reverse of this operation, and " "[method range_lerp] to map a continuous series of values to another." msgstr "" -"Retourne le facteur d'interpolation ou d'extrapolation suivant l'intervalle " -"spécifié dans [code]from[/code] et [code]to[/code], et la valeur interpolée " -"spécifiée par [code]weight[/code]. La valeur retournée sera entre [code]0.0[/" -"code] et [code]1.0[/code] si [code]weight[/code] est entre [code]from[/code] " -"et [code]to[/code] (inclus). Si [code]weight[/code] est en dehors de cet " +"Retourne un facteur d'interpolation ou d'extrapolation suivant l'intervalle " +"spécifié dans [code]de[/code] et [code]à [/code], et la valeur interpolée " +"spécifiée par [code]poids[/code]. La valeur retournée sera entre [code]0.0[/" +"code] et [code]1.0[/code] si [code]poids[/code] est entre [code]de[/code] et " +"[code]à [/code] (inclus). Si [code]poids[/code] se trouve en dehors de cet " "intervalle, un facteur d'extrapolation sera retourné (une valeur inférieure " -"à [code]0.0[/code] ou supérieure à [code]1.0[/code]).\n" +"à [code]0.0[/code] ou supérieure à [code]1.0[/code]). Utilisez [method " +"clamp] sur le resultat de [method inverse_lerp] si cela n'est pas souhaité.\n" "[codeblock]\n" -"# Le facteur d'interpolation de cet appel à `lerp()` ci-dessous est le " +"# Le facteur d'interpolation de cet appel à `lerp()` ci-dessous est de " "0.75.\n" "var middle = lerp(20, 30, 0.75)\n" -"# `middle` est maintenant 27.5.\n" -"# Maintenant, on fait comme si on avait oublié le facteur d'interpolation " -"original et qu'on veut le calculer.\n" +"# `middle` vaut maintenant 27.5.\n" +"# Admettons maintenant que l'on ait oublié le facteur d'interpolation " +"original et que l'on veut le calculer.\n" "var ratio = inverse_lerp(20, 30, 27.5)\n" -"# `ratio` est maintenant 0.75.\n" +"# `ratio` vaut maintenant 0.75.\n" "[/codeblock]\n" -"Voir aussi [method lerp] qui fait l'opération inverse." +"Voir aussi [method lerp] qui fait l'opération inverse et [method range_lerp] " +"qui fait correspondre une série de valeurs continues à une autre." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -988,7 +1000,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Linearly interpolates between two values by the factor defined in " "[code]weight[/code]. To perform interpolation, [code]weight[/code] should be " @@ -1010,12 +1021,13 @@ msgid "" "ease] or [method smoothstep]. See also [method range_lerp] to map a " "continuous series of values to another." msgstr "" -"L'interpolation linéaire entre deux valeurs avec un facteur défini par " -"[code]weight[/code]. Pour faire une interpolation, [code]weight[/code] doit " -"être entre [code]0.0[/code] et [code]1.0[/code] (inclus). Pour autant, des " -"valeurs en dehors de cet intervalle sont autorisés pour faire une " -"[i]extrapolation[/i].\n" -"Si les arguments [code]from[/code] et [code]to[/code] sont de type [int] ou " +"Effectue une interpolation linéaire entre deux valeurs par un facteur défini " +"dans [code]poids[/code]. Pour effectuer l'interpolation, [code]poids[/code] " +"se situer entre [code]0.0[/code] et [code]1.0[/code] (inclus). Pour autant, " +"des valeurs en dehors de cet intervalle sont autorisés pour effectuer une " +"[i]extrapolation[/i]. Utilisez [method clamp] sur le résultat de [method " +"lerp] si cela n'est pas souhaité.\n" +"Si les arguments [code]de[/code] et [code]à [/code] sont de type [int] ou " "[float], la valeur retournée est un [float].\n" "Si les deux sont du même type de vecteur ([Vector2], [Vector3] ou [Color]), " "la valeur de retour sera du même type (puisque [code]lerp[/code] appelle " @@ -1024,9 +1036,10 @@ msgstr "" "lerp(0, 4, 0.75) # Retourne 3.0\n" "lerp(Vector2(1, 5), Vector2(3, 2), 0.5) # Retourne Vector2(2, 3.5)\n" "[/codeblock]\n" -"Voir aussi [method inverse_lerp] qui fait l'opération inverse. Pour fait une " -"interpolation plus douce avec [method lerp], combinez l'appel avec [method " -"ease] ou [method smoothstep]." +"Voir aussi [method inverse_lerp] qui effectue l'opération inverse. Pour " +"effectuer une interpolation adoucie avec [method lerp], combinez l'appel " +"avec [method ease] ou [method smoothstep]. Voir aussi [method range_lerp] " +"pour faire correspondre une série de valeurs continues à une autre." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1448,19 +1461,17 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" -"Affiche la trace d'appels à l'emplacement du code, ne fonctionne que lorsque " -"le débogueur est activé.\n" -"La sortie dans la console ressemblerait à ceci :\n" -"[codeblock]\n" -"Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1749,6 +1760,17 @@ msgid "" "For complex use cases where you need multiple ranges, consider using [Curve] " "or [Gradient] instead." msgstr "" +"Fait correspondre une [code]valeur[/code] de l'intervalle [code][idebut, " +"ifin][/code] à [code][odebut, ofin][/code]. Voir aussi [method lerp] et " +"[method inverse_lerp]. Si la [code]valeur[/code] est en dehors de [code]" +"[idebut, ifin][/code], la valeur résultante sera aussi en dehors de [code]" +"[odebut, ofin][/code]. Utilisez [method clamp] sur le résultat de [method " +"range_lerp] si cela n'est pas souhaité.\n" +"[codeblock]\n" +"range_lerp(75, 0, 100, -1, 1) # Retourne 0.5\n" +"[/codeblock]\n" +"Pour les cas d'utilisation plus complexes avec plusieurs intervalles, " +"favorisez plutôt [Curve] ou [Gradient]." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -4162,10 +4184,13 @@ msgid "MIDI stop message. Stop the current sequence." msgstr "Le message d'arrêt en MIDI. Arrête la séquence actuelle." #: doc/classes/@GlobalScope.xml +#, fuzzy msgid "" "MIDI active sensing message. This message is intended to be sent repeatedly " "to tell the receiver that a connection is alive." msgstr "" +"Message de détection d'activité MIDI. Ce message est destiné à être envoyé à " +"plusieurs reprises pour indiquer au récepteur qu'une connexion est active." #: doc/classes/@GlobalScope.xml msgid "" @@ -4638,6 +4663,26 @@ msgstr "" "Indique qu'une image est comprimé en utlisant la compression sans perte." #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" "Le propriété est sérialisé et sauvegardé dans le fichier de la scène(défaut)." @@ -5489,8 +5534,7 @@ msgstr "Animation Sprite 2D" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "Démo 2D « Dodge The Creeps »" @@ -6427,18 +6471,25 @@ msgid "" "When inheriting from [AnimationRootNode], implement this virtual method to " "override the text caption for this node." msgstr "" +"Lorsque vous héritez d'[AnimationRootNode], implémentez cette méthode " +"virtuelle pour remplacer le texte de légende de ce nÅ“ud." #: doc/classes/AnimationNode.xml msgid "" "When inheriting from [AnimationRootNode], implement this virtual method to " "return a child node by its [code]name[/code]." msgstr "" +"Lorsque vous héritez d'[AnimationRootNode], implémentez cette méthode " +"virtuelle pour retourner un nÅ“ud enfant par [code]nom[/code]." #: doc/classes/AnimationNode.xml msgid "" "When inheriting from [AnimationRootNode], implement this virtual method to " "return all children nodes in order as a [code]name: node[/code] dictionary." msgstr "" +"Lorsque vous héritez d'[AnimationRootNode], implémentez cette méthode " +"virtuelle pour retourner tous les nÅ“uds enfants en tant que dictionnaire " +"[code]nom : nÅ“ud[/code]." #: doc/classes/AnimationNode.xml msgid "" @@ -6462,16 +6513,17 @@ msgstr "" "réutilisé dans plusieurs arbres de nÅ“uds." #: doc/classes/AnimationNode.xml -#, fuzzy msgid "" "When inheriting from [AnimationRootNode], implement this virtual method to " "return the default value of parameter \"[code]name[/code]\". Parameters are " "custom local memory used for your nodes, given a resource can be reused in " "multiple trees." msgstr "" -"Obtient la valeur par défaut d'un paramètre. Les paramètres sont la mémoire " -"locale personnalisé utilisé pour vos nÅ“uds, étant donné qu'une ressource " -"peut être réutilisé dans plusieurs arbres de nÅ“uds." +"Lors de l'héritage de [AnimationRootNode], implémente cette méthode " +"virtuelle pour obtenirla valeur par défaut du paramètre \"[code]name[/" +"code]\". Les paramètres sont de la mémoire locale personnalisée utilisée " +"pour vos nÅ“uds, étant donné qu'une ressource peut être réutilisée dans " +"plusieurs arbres." #: doc/classes/AnimationNode.xml #, fuzzy @@ -9430,6 +9482,7 @@ msgstr "" "les éléments placés après devront tous être décalés." #: doc/classes/Array.xml +#, fuzzy msgid "" "Assigns the given value to all elements in the array. This can typically be " "used together with [method resize] to create an array with a given size and " @@ -9438,7 +9491,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" "Assigne la valeur donnée à tous les éléments du tableau. C'est souvent " "utilisé avec [method resize] pour créer un tableau d'une taille donnée avec " @@ -9725,8 +9781,12 @@ msgstr "" "découpage." #: doc/classes/Array.xml +#, fuzzy msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -9749,6 +9809,7 @@ msgstr "" "[/codeblock]" #: doc/classes/Array.xml +#, fuzzy msgid "" "Sorts the array using a custom method. The arguments are an object that " "holds the method and the name of such method. The custom method receives two " @@ -9757,9 +9818,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9894,13 +9959,23 @@ msgstr "" "deviendra l'index [code]surf_idx[/code] pour cette nouvelle surface.\n" "L'argument [code]arrays[/code] est un tableau de tableaux. Voir [enum " "ArrayType] pour les valeurs utilisées dans ce tableau. Par exemple, " -"l'argument [code]arrays[/code] est le tableau des sommets. Ce premier sous-" -"tableau de sommets est nécessaire ; les autres sont facultatifs. L'ajout " -"d'un tableau d'indices met cette fonction en \"mode index\" où les sommets " -"et d'autres tableaux deviennent les sources de données et le tableau d'index " -"définit l'ordre des vertex. Tous les sous-tableau doivent avoir la même " -"longueur que le tableau des sommets, ou être vides, sauf pour [constant " -"ARRAY_INDEX] s'il est utilisé." +"l'argument [code]arrays[0]/code] est le tableau des sommets. Ce premier sous-" +"tableau de sommets est toujours requis ; les autres sont facultatifs. " +"L'ajout d'un tableau d'indices met cette fonction en \"mode index\" où les " +"sommets et d'autres tableaux deviennent les sources de données et le tableau " +"d'index définit l'ordre des vertex. Tous les sous-tableau doivent avoir la " +"même longueur que le tableau des sommets, ou être vides, sauf pour [constant " +"ARRAY_INDEX] s'il est utilisé.\n" +"[code]compress_flags[/code] est un champ de bits fait de valeurs [enum Mesh." +"ArrayFormat]. Il prend par défaut la valeur de [constant Mesh." +"ARRAY_COMPRESS_DEFAULT].\n" +"[b]Note:[/b] Le [code]compress_flags[/code] par défaut valide [constant Mesh." +"ARRAY_COMPRESS_COLOR], qui rend les couleurs de sommet stockées sous forme " +"d'entiers non signés 8 bits. Cela bloquera les couleurs de sommet trop " +"lumineuses à [code]Color(1, 1, 1, 1)[/code] et réduira leur précision. Pour " +"stocker des couleurs de sommet HDR, enlever le flag de compression de " +"couleur de sommet en passant [code]Mesh.ARRAY_COMPRESS_DEFAULT ^ Mesh." +"ARRAY_COMPRESS_COLOR[/code] comme la valeur de [code]compress_flags[/code]." #: doc/classes/ArrayMesh.xml msgid "Removes all blend shapes from this [ArrayMesh]." @@ -13145,12 +13220,16 @@ msgid "" "settings." msgstr "" "Le nom du périphérique actuel pour l'entrée audio (voir [method " -"get_device_list)]. Sur les systèmes avec plusieurs entrées audio (comme " -"l'analogique, l'USB et l'audio par HDMI), cela peut être utilisé pour " -"sélectionner le périphérique d'entrée pour l'audio. La valeur " -"[code]\"Defaut\"[/code] enregistrera l'audio sur l'entrée audio par défaut " -"du système. Si un nom de périphérique invalide est défini, la valeur sera " -"retournée à [code]\"Defaut\"[/code]." +"capture_get_device_list]. Sur les systèmes avec plusieurs entrées audio " +"(comme l'analogique, l'USB et l'audio par HDMI), ceci peut être utilisé pour " +"sélectionner le périphérique d'entrée audio. La valeur [code]\"Default\"[/" +"code] enregistrera l'audio sur l'entrée audio par défaut du système. Si un " +"nom de périphérique invalide est défini, la valeur sera retournée à " +"[code]\"Default\"[/code].\n" +"[b]Note:[/b] [member ProjectSettings.audio/enable_audio_input] doit être " +"[code]true[/code] pour que l'entrée audio fonctionne. Voir aussi la " +"description de ce paramètre pour les avertissements liés aux autorisations " +"et aux paramètres de confidentialité du système d'exploitation." #: doc/classes/AudioServer.xml msgid "" @@ -13317,16 +13396,10 @@ msgstr "Efface la mémoire tampon des échantillons audio." #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" -"Retourne le nombre de frames de données audio restantes à jouer. Si ce " -"nombre atteint [code]0[/code], l'audio cessera de jouer jusqu'à ce que de " -"nouvelles frames soient ajoutés. Par conséquent, assurez-vous que votre " -"script peut toujours générer et pousser de nouveaux frames audio assez " -"rapidement pour éviter les craquements audio." #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" @@ -13999,14 +14072,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -14015,23 +14088,28 @@ msgid "Buffer mode. See [enum CopyMode] constants." msgstr "Le mode de mémoire tampon. Voir les constantes [enum CopyMode]." #: doc/classes/BackBufferCopy.xml +#, fuzzy msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" +"Le type de base à utiliser lorsque [member call_mode] est défini à [constant " +"CALL_MODE_INSTANCE]." #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +#, fuzzy +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "BackBufferCopy met en tampon une région rectangulaire." #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +#, fuzzy +msgid "[BackBufferCopy] buffers the entire screen." msgstr "BackBufferCopy met en mémoire tampon tout l'écran." #: doc/classes/BakedLightmap.xml @@ -16719,17 +16797,20 @@ msgid "" "antialiasing. 2D batching is also still supported with those antialiased " "lines." msgstr "" -"Dessine des segments de ligne interconnectés avec une [code]width[/code] " -"uniforme et une coloration segment par segment. Les couleurs attribuées aux " -"segments de ligne correspondent par index entre [code]points[/code] et " -"[code]colors[/code].\n" -"[b]Note :[/b] Le fonctionnement interne peut provoquer des problèmes de " -"rendu de l'anti-crénelage lors de l'affichage de polygones transparents voir " -"peut ne pas fonctionner sur certaines plateformes. Pour corriger cela, " +"Dessine des lignes déconnectées avec une [code]width[/code] uniforme et une " +"coloration segment par segment. Les couleurs attribuées aux segments de " +"ligne correspondent par index entre [code]points[/code] et [code]colors[/" +"code]. Lorsque vous dessinez de grandes quantités de lignes, cela est plus " +"rapide que d'utiliser des appels individuels[method draw_line]. Pour tracer " +"des lignes interconnectées, utiliser [method draw_polyline_colors] à la " +"place.\n" +"[b]Note :[/b] [code]width[/code] et [code]antialiased[/code] ne sont pas " +"actuellement implémentés et ne produisent aucun effet. Comme contournement, " "installez le greffon [url=https://github.com/godot-extended-libraries/godot-" "antialiased-line2d]Antialiased Line2D[/url] et créez un nÅ“ud " "AntialiasedPolygon2D. Ce nÅ“ud utilise une texture avec différents niveaux de " -"mipmap pour l'anti-crénelage." +"mipmap pour l'anti-crénelage. Le traitement par lots 2D est également " +"supporté avec ces lignes anti-crénelage." #: doc/classes/CanvasItem.xml msgid "" @@ -25852,6 +25933,14 @@ msgid "Cylinder shape for collisions." msgstr "Une forme cylindrique pour les collisions." #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "La hauteur du cylindre." @@ -30031,6 +30120,7 @@ msgid "Base script that can be used to add extension functions to the editor." msgstr "Script de base qui permet d'étendre les fonctionnalités de l'éditeur." #: doc/classes/EditorScript.xml +#, fuzzy msgid "" "Scripts extending this class and implementing its [method _run] method can " "be executed from the Script Editor's [b]File > Run[/b] menu option (or by " @@ -30048,7 +30138,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" "Les scripts héritant de cette classe et implémentant la méthode [method " "_run] peuvent être exécutés depuis l'éditeur de script avec l'option de menu " @@ -42766,7 +42859,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -47014,6 +47109,7 @@ msgid "3D agent used in navigation for collision avoidance." msgstr "Un agent 3D utilisé dans les navigations pour esquiver les collisions." #: doc/classes/NavigationAgent.xml +#, fuzzy msgid "" "3D agent that is used in navigation to reach a location while avoiding " "static and dynamic obstacles. The dynamic obstacles are avoided using RVO " @@ -47027,7 +47123,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" "Agent 3D utilisé dans la navigation pour atteindre un emplacement tout en " "évitant les obstacles statiques et dynamiques. Les obstacles dynamiques sont " @@ -47386,6 +47485,7 @@ msgid "2D agent used in navigation for collision avoidance." msgstr "Un agent 2D utilisé en navigation pour éviter les collisions." #: doc/classes/NavigationAgent2D.xml +#, fuzzy msgid "" "2D agent that is used in navigation to reach a location while avoiding " "static and dynamic obstacles. The dynamic obstacles are avoided using RVO " @@ -47399,7 +47499,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" "L'agent 2D utilisé dans la navigation pour atteindre un emplacement tout en " "évitant les obstacles statiques et dynamiques. Les obstacles dynamiques sont " @@ -48399,6 +48502,7 @@ msgid "Server interface for low-level 3D navigation access." msgstr "Interface serveur pour un accès de navigation 3D de bas niveau." #: doc/classes/NavigationServer.xml +#, fuzzy msgid "" "NavigationServer is the server responsible for all 3D navigation. It handles " "several objects, namely maps, regions and agents.\n" @@ -48419,6 +48523,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -52507,7 +52614,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -53164,11 +53273,11 @@ msgstr "Retourne le nom du pilote audio à l'index donné." #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -53202,11 +53311,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -53234,11 +53343,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -55600,6 +55709,17 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +#, fuzzy +msgid "2D Particles Demo" +msgstr "Démo 2D isométrique" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" "Retourne un rectangle contenant la position de toutes les particules " @@ -64195,15 +64315,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -66153,17 +66280,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -66172,8 +66310,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -69059,9 +69203,12 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "Appelle un groupe immédiatement (au lieu de le faire durant le repos)." #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" -"Appelle un groupe une seule fois même si l'appel a était fait plusieurs fois." #: doc/classes/SceneTree.xml msgid "No stretching." @@ -69139,8 +69286,8 @@ msgstr "" " yield(get_tree().create_timer(1.0), \"timeout\")\n" " print(\"Minuteur terminé.\")\n" "[/codeblock]\n" -"Le minuteur sera automatiquement une fois terminé. Pour garder le minuteur, " -"vous pouvez maintenir une référence vers lui. Voir [Reference]." +"Le minuteur sera automatiquement déréférencé une fois terminé. Pour garder " +"le minuteur, vous pouvez maintenir une référence vers lui. Voir [Reference]." #: doc/classes/SceneTreeTimer.xml msgid "The time remaining (in seconds)." @@ -71188,7 +71335,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -72764,8 +72913,11 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." -msgstr "L’angle du projecteur en degrés." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." +msgstr "" #: doc/classes/SpotLight.xml msgid "The spotlight's angular attenuation curve." @@ -72780,7 +72932,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -74278,7 +74432,7 @@ msgid "" "[/codeblock]" msgstr "" "Échappe (code) une chaine de caractères dans un format compatible avec les " -"URL. Est aussi référé au 'codage de URL' ('URL encode').\n" +"URL. Aussi appelé 'encodage d'URL' ('URL encode').\n" "[codeblock]\n" "print(\"https://example.org/?escaped=\" + \"Le Moteur Godot:'docs'\"." "http_escape())\n" @@ -83997,10 +84151,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -84012,9 +84171,10 @@ msgstr "" "débogage." #: doc/classes/Viewport.xml +#, fuzzy msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" "Si [code]true[/code], le viewport désactivera le rendu 3D. Pour le " "désactiver réellement, utilisez [code]usage[/code]." @@ -84198,7 +84358,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -84784,6 +84946,22 @@ msgstr "" "Cet objet ne sera visible que pour les [Camera] où le masque de cull inclut " "l'objet de rendu auquel [VisualInstance] est défini." +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/gl.po b/doc/translations/gl.po index 4ad17bba17..67bd7d902f 100644 --- a/doc/translations/gl.po +++ b/doc/translations/gl.po @@ -476,7 +476,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -491,7 +492,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -864,12 +869,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3480,6 +3489,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4164,8 +4193,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7082,7 +7110,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7267,6 +7298,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7286,9 +7320,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9926,10 +9964,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10461,14 +10498,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10478,22 +10515,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19273,6 +19310,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22105,7 +22150,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32817,7 +32865,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36115,7 +36165,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36363,7 +36416,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37073,6 +37129,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39879,7 +39938,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40390,11 +40451,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40428,11 +40489,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40454,11 +40515,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42305,6 +42366,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49897,15 +49968,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51501,17 +51579,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51520,8 +51609,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54236,7 +54331,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56073,7 +56172,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57451,7 +57552,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57467,7 +57571,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66704,10 +66810,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66718,8 +66829,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66871,7 +66982,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67403,6 +67516,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/hi.po b/doc/translations/hi.po index 945befe58b..75318a4554 100644 --- a/doc/translations/hi.po +++ b/doc/translations/hi.po @@ -475,7 +475,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -490,7 +491,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -863,12 +868,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3479,6 +3488,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4163,8 +4192,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7081,7 +7109,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7266,6 +7297,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7285,9 +7319,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9925,10 +9963,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10460,14 +10497,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10477,22 +10514,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19272,6 +19309,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22104,7 +22149,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32816,7 +32864,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36114,7 +36164,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36362,7 +36415,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37072,6 +37128,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39878,7 +39937,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40389,11 +40450,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40427,11 +40488,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40453,11 +40514,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42304,6 +42365,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49896,15 +49967,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51500,17 +51578,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51519,8 +51608,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54235,7 +54330,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56072,7 +56171,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57450,7 +57551,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57466,7 +57570,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66703,10 +66809,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66717,8 +66828,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66870,7 +66981,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67402,6 +67515,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/hu.po b/doc/translations/hu.po index a962de15e5..e99babd548 100644 --- a/doc/translations/hu.po +++ b/doc/translations/hu.po @@ -495,7 +495,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -510,7 +511,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -883,12 +888,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3499,6 +3508,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4183,8 +4212,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7101,7 +7129,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7286,6 +7317,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7305,9 +7339,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9945,10 +9983,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10480,14 +10517,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10497,22 +10534,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19292,6 +19329,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22124,7 +22169,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32836,7 +32884,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36134,7 +36184,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36382,7 +36435,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37092,6 +37148,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39898,7 +39957,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40409,11 +40470,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40447,11 +40508,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40473,11 +40534,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42324,6 +42385,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49916,15 +49987,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51520,17 +51598,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51539,8 +51628,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54255,7 +54350,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56092,7 +56191,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57470,7 +57571,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57486,7 +57590,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66723,10 +66829,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66737,8 +66848,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66890,7 +67001,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67422,6 +67535,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/id.po b/doc/translations/id.po index 249ed80079..ad63a828e5 100644 --- a/doc/translations/id.po +++ b/doc/translations/id.po @@ -695,7 +695,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -710,7 +711,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -1220,21 +1225,18 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" -"Mencetak trek tumpukan di lokasi kode, hanya berfungsi saat dijalankan " -"dengan debugger dihidupkan.\n" -"Output di konsol akan terlihat seperti ini:\n" -"[codeblock]\n" -"Frame 0 - res://test.gd:16 dalam fungsi '_process'\n" -"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml #, fuzzy @@ -3889,6 +3891,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4573,8 +4595,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7492,7 +7513,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7677,6 +7701,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7696,9 +7723,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10336,10 +10367,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10871,14 +10901,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10888,22 +10918,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19685,6 +19715,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22517,7 +22555,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -33240,7 +33281,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36561,7 +36604,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36810,7 +36856,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37521,6 +37570,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -40329,7 +40381,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40842,11 +40896,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40880,11 +40934,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40906,11 +40960,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42770,6 +42824,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -50367,15 +50431,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51971,17 +52042,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51990,8 +52072,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54707,7 +54795,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56544,7 +56636,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57922,7 +58016,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57938,7 +58035,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -67192,10 +67291,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -67206,8 +67310,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -67359,7 +67463,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67891,6 +67997,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/is.po b/doc/translations/is.po index 2facd468d9..6bf49858f4 100644 --- a/doc/translations/is.po +++ b/doc/translations/is.po @@ -475,7 +475,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -490,7 +491,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -863,12 +868,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3479,6 +3488,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4163,8 +4192,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7081,7 +7109,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7266,6 +7297,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7285,9 +7319,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9925,10 +9963,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10460,14 +10497,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10477,22 +10514,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19272,6 +19309,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22104,7 +22149,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32816,7 +32864,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36114,7 +36164,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36362,7 +36415,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37072,6 +37128,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39878,7 +39937,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40389,11 +40450,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40427,11 +40488,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40453,11 +40514,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42304,6 +42365,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49896,15 +49967,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51500,17 +51578,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51519,8 +51608,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54235,7 +54330,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56072,7 +56171,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57450,7 +57551,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57466,7 +57570,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66703,10 +66809,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66717,8 +66828,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66870,7 +66981,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67402,6 +67515,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/it.po b/doc/translations/it.po index ed4ec9ddc7..37488c9ebd 100644 --- a/doc/translations/it.po +++ b/doc/translations/it.po @@ -20,18 +20,19 @@ # Daniele Basso <tiziodcaio@gmail.com>, 2021. # Jacopo Farina <jacopo1.farina@gmail.com>, 2021. # Riteo Siuga <riteo@posteo.net>, 2021. -# ZeroKun265 <davidegiambirtone265@gmail.com>, 2021. +# ZeroKun265 <davidegiambirtone265@gmail.com>, 2021, 2022. # Andrea Montagna <fullmontis@gmail.com>, 2021. # Andrea Leganza <neogene@gmail.com>, 2021. # Federico Caprini <caprinifede@gmail.com>, 2022. # Alessandro Casalino <alessandro.casalino93@gmail.com>, 2022. # AndreWharn <andrewharnofficial@gmail.com>, 2022. +# Silvia Scaglione <sissisoad@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-09-14 18:45+0000\n" -"Last-Translator: Federico Caprini <caprinifede@gmail.com>\n" +"PO-Revision-Date: 2022-10-16 11:17+0000\n" +"Last-Translator: Silvia Scaglione <sissisoad@gmail.com>\n" "Language-Team: Italian <https://hosted.weblate.org/projects/godot-engine/" "godot-class-reference/it/>\n" "Language: it\n" @@ -39,7 +40,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.14.1-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -47,7 +48,7 @@ msgstr "Descrizione" #: doc/tools/make_rst.py msgid "Tutorials" -msgstr "Guide" +msgstr "Tutorials" #: doc/tools/make_rst.py msgid "Properties" @@ -253,8 +254,8 @@ msgid "" "s = asin(0.5)\n" "[/codeblock]" msgstr "" -"Ritorna l'arcoseno di [code]s[/code] in radianti. Usato per prendere " -"l'angolo del seno [code]s[/code]. [code]s[/code] deve essere compreso tra " +"Ritorna l'arcoseno di [code]s[/code] in radianti. Utilizza [code]s[/code] " +"per prendere l'angolo del seno. [code]s[/code] deve essere compreso tra " "[code]-1.0[/code] e [code]1.0[/code] (inclusi), altrimenti, [method asin] " "ritornerà [constant NAN].\n" "[codeblock]\n" @@ -288,20 +289,20 @@ msgid "" "a message with clarifying details\n" "[/codeblock]" msgstr "" -"Controlla che [code]condition[/code] sia [code]true[/code]. Se " -"[code]condition[/code] è [code]false[/code], un errore è generato. Mentre si " -"sta eseguendo dall'editor, il progetto corrente verrà interrotto finché non " -"lo riprenderai. Questo può essere usato come una forma più forte di [method " -"push_error] per riportare gli errori allo sviluppatore del progetto o agli " -"utilizzatori di add-on.\n" -"[b]Note:[/b] Per ragioni di performance, il codice dentro [method assert] " -"viene eseguito sono nelle versione di debug o mentre si sta eseguendo il " -"progetto dall'editor. Non includere codice che ha effetti collaterali mentre " -"[method assert] viene chiamato. Altrimenti il progetto si comporterà " -"diversamente quando viene esportato nella modalità di rilascio.\n" -"Il parametro [code]message[/code] opzionale, se passato, è mostrato insieme " -"al messaggio generico \"Assertion failed\". Puoi usarlo per dare dettagli " -"addizionali sul perché l'asserzione sia fallita.\n" +"Controlla che [code]condizion[/code] sia [code]true[/code](vero). Se " +"[code]condition[/code] è [code]false[/code](falso), un errore è generato." +"Quando eseguito all'interno dell'editor, il progetto verrà anche messo in " +"pausa, finchè non lo farai ripartire. Ciò può essere usato come un migliore " +"sistema di [method push_error] per riportare errori agli sviluppatori del " +"progetto o ulteriori utenti.\n" +"[b]Nota bene:[/b] Per motivi di prestazioni, il codice all'interno di " +"[method assert] è eseguito solo nelle build di debug o quando il progetto è " +"eseguito dall'editor. Non scrivere codice che dovrà avere effetti " +"collaterali in una chiamata [method assert]. Altrimenti il progetto si " +"comporterà in modo diverso quando esportato in modalità release.\n" +"L'argomento opzionale [code]message[/code], se dato, è mostrato in aggiunta " +"al generico messaggio \"Assertion failed\" (Asserzione fallita). Può essere " +"usato per fornire più dettagli sul motivo per cui un asserzione ha fallito.\n" "[codeblock]\n" "# Immaginati di voler sempre avere una velocità (speed nel caso nostro) " "sempre tra 0 e 20\n" @@ -734,8 +735,10 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -750,7 +753,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" "Restituisce un vettore di dizionari rappresentanti il call stack corrente.\n" "[codeblock]\n" @@ -947,7 +954,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Linearly interpolates between two values by the factor defined in " "[code]weight[/code]. To perform interpolation, [code]weight[/code] should be " @@ -971,7 +977,10 @@ msgid "" msgstr "" "Interpola linearmente tra due valori mediante un valore definito in " "[code]weight[/code]. Per interpolare, [code]weight[/code] dovrebbe rimanere " -"tra [code]0.0[/code] e [code]1.0[/code] (inclusi).\n" +"tra [code]0.0[/code] e [code]1.0[/code] (inclusi). Tuttavia, i valori fuori " +"da questo range sono permessi e possono essere utilizzati per eseguire " +"[i]extrapolation[/i]. Utilizza [method clamp] sul risultato di [method lerp] " +"se non lo si desidera.\n" "Se gli argomenti [code]from[/code] e [code]to[/code] sono di tipo [int] o " "[float], il valore di ritorno è un [float].\n" "Se entrambi sono dello stesso tipo di vettore ([Vector2], [Vector3] o " @@ -987,7 +996,6 @@ msgstr "" "combinalo con [method ease] o [method smoothstep]." #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Linearly interpolates between two angles (in radians) by a normalized " "value.\n" @@ -1012,18 +1020,25 @@ msgid "" msgstr "" "Interpola linearmente tra due angoli (in radianti) con un valore " "normalizzato.\n" -"Simile a [metodo lerp], ma interpola correttamente quando gli angoli sono " +"Simile a [method lerp], ma interpola correttamente quando gli angoli sono " "attorno [costante @GDScript.TAU]. Per eseguire un'interpolazione alleggerita " "con [method lerp_angle], combinalo con [method ease] o [method smoothstep].\n" "[codeblock]\n" "extends Sprite\n" "var elapsed = 0.0\n" "func _process(delta):\n" -" var min_angle = deg2rad(0.0)\n" -" var max_angle = deg2rad(90.0)\n" -" rotation = lerp_angle(min_angle, max_angle, elapsed)\n" -" elapsed += delta\n" -"[/codeblock]" +" var min_angle = deg2rad(0.0)\n" +" var max_angle = deg2rad(90.0)\n" +" rotation = lerp_angle(min_angle, max_angle, elapsed)\n" +" elapsed += delta\n" +"[/codeblock]\n" +"[b]Nota:[/b] Questo metodo interpola linearmente tra [code]da[/code] e " +"[code]a[/code]. Tuttavia, quando questi due angoli sono approssimativamente " +"[code]PI + k * TAU[/code] distanti per qualsiasi numero intero [code]k[/" +"code], non è ovvio in quale modo si interpolano a causa di errori di " +"precisione a virgola mobile. Per esempio, [code]lerp_angle(0, PI, weight)[/" +"code] interpola in senso anti-orario, mentre [code]lerp_angle(0, PI + 5 * " +"TAU, weight)[/code] interpola in senso orario." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1272,7 +1287,6 @@ msgstr "" "coordinate cartesiane (assi X e Y)." #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns the integer modulus of [code]a/b[/code] that wraps equally in " "positive and negative.\n" @@ -1297,7 +1311,7 @@ msgstr "" "for i in range(-3, 4):\n" " print(\"%2d %2d %2d\" % [i, i % 3, posmod(i, 3)])\n" "[/codeblock]\n" -"Produces:\n" +"Produce:\n" "[codeblock]\n" "-3 0 0\n" "-2 -2 1\n" @@ -1375,7 +1389,6 @@ msgstr "" "messaggi di debug ed errore che vengono mostrati con la stack trace." #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Like [method print], but includes the current stack frame when running with " "the debugger turned on.\n" @@ -1385,28 +1398,27 @@ msgid "" " At: res://test.gd:15:_process()\n" "[/codeblock]" msgstr "" -"Stampa un stack trace nella posizione del codice, funziona solo quando il " -"debugger è attivato.\n" +"Come [method print], ma include l'attuale stack frame quando si avvia con il " +"debugger attivato.\n" "L'output nella console apparirà come:\n" "[codeblock]\n" -"Frame 0 - res://test.gd:16 in function '_process'\n" +"Test print\n" +" At: res://test.gd:15:_process()\n" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" -"Stampa un stack trace nella posizione del codice, funziona solo quando il " -"debugger è attivato.\n" -"L'output nella console apparirà come:\n" -"[codeblock]\n" -"Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1524,7 +1536,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns a random floating point value between [code]from[/code] and " "[code]to[/code] (both endpoints inclusive).\n" @@ -1533,11 +1544,12 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] This is equivalent to [code]randf() * (to - from) + from[/code]." msgstr "" -"Un range casuale, un qualsiasi numero in virgola mobile tra [code]from[/" -"code] e [code]to[/code]\n" +"Ritorna in modo casuale un numero a virgola mobile tra [code]from[/code] e " +"[code]to[/code] (incluse entrambe le estremità ).\n" "[codeblock]\n" "prints(rand_range(0, 1), rand_range(0, 1)) # Stampa 0.135591 0.405263\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Nota:[/b] Ciò equivale a [code]randf() * (to - from) + from[/code]." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1559,8 +1571,8 @@ msgid "" "randf() # Returns e.g. 0.375671\n" "[/codeblock]" msgstr "" -"Restituisce un numero casuale in virgola mobile nell'intervallo [code][0, 1]" -"[/code].\n" +"Restituisce un numero casuale a virgola mobile nell'intervallo [code][0, 1][/" +"code].\n" "[codeblock]\n" "randf() # Restituisce ad esempio 0.375671\n" "[/codeblock]" @@ -1695,6 +1707,17 @@ msgid "" "For complex use cases where you need multiple ranges, consider using [Curve] " "or [Gradient] instead." msgstr "" +"Mostra un [code]value[/code] da [code][istart, istop][/code] a [code]" +"[ostart, ostop][/code]. Vedi anche [methop lerp] e [method inverse_lerp]. Se " +"[code]value[/code] è fuori da [code][istart, istop][/code], allora il numero " +"che risulterà sarà anche esso fuori da [code][ostart, ostop][/code]. " +"Utilizza [method clamp] sul risultato di [method range_lerp] se non lo si " +"desidera.\n" +"[codeblock]\n" +"range_lerp(75, 0, 100, -1, 1) # Returns 0.5\n" +"[/codeblock]\n" +"Per utilizzi complessi in cui ti servono molteplici range, considera " +"piuttosto l'utilizzo di [Curve] o [Gradient]." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1799,6 +1822,29 @@ msgid "" "smoothstep_ease_comparison.png]Comparison between smoothstep() and ease(x, " "-1.6521) return values[/url]" msgstr "" +"Ritorna il risultato della regolare interpolazione del valore di [code]s[/" +"code] tra [code]0[/code] e [code]1[/code], basata sulla posizione di " +"[code]s[/code] rispetto agli angoli [code]from[/code] e [code]to[/code].\n" +"Il valore di ritorno è [code]0[/code] if [code]s <= from[/code], e [code]1[/" +"code] if [code]s >= to[/code]. Se [code]s[/code] è posizionato tra " +"[code]from[/code] e [code]to[/code], il valore di ritorno seguirà una curva " +"a forma di S che mostrerà [code]s[/code] tra [code]0[/code] e [code]1[/" +"code].\n" +"La curva a forma di S è l'interpolatore cubico Hermite, dato da [code]f(y) = " +"3*y^2 - 2*y^3[/code] dove [code]y = (x-from) / (to-from)[/code].\n" +"[codeblock]\n" +"smoothstep(0, 2, -5.0) # Returns 0.0\n" +"smoothstep(0, 2, 0.5) # Returns 0.15625\n" +"smoothstep(0, 2, 1.0) # Returns 0.5\n" +"smoothstep(0, 2, 2.0) # Returns 1.0\n" +"[/codeblock]\n" +"Rispetto a [method ease] con un valore di curva di [code]-1.6521[/code], " +"[method smoothstep] ritorna la curva più regolare possibile senza improvvisi " +"cambiamenti sulla derivata. Se hai bisogno di effettuare transizioni più " +"avanzate, usa [Tween] o [AnimationPlayer].\n" +"[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.5/img/" +"smoothstep_ease_comparison.png] Confronto tra smoothstep() e ease(x, " +"-1.6521) fa tornare i valori[/url]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1840,7 +1886,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Snaps float value [code]s[/code] to a given [code]step[/code]. This can also " "be used to round a floating point number to an arbitrary number of " @@ -1851,12 +1896,12 @@ msgid "" "[/codeblock]\n" "See also [method ceil], [method floor], [method round], and [int]." msgstr "" -"Arrotonda un valore float [code]s[/code] ad un valore [code]step[/code] su " -"una scala. Questo può essere anche utilizzato per arrotondare un valore " -"float ad un numero arbitrario di cifre decimali.\n" +"Scatta un valore float [code]s[/code] ad un valore [code]step[/code]. Questo " +"può essere anche utilizzato per arrotondare un valore float ad un numero " +"arbitrario di cifre decimali.\n" "[codeblock]\n" "stepify(100, 32) # Ritorna 96.0\n" -"stepify(3.14159, 0.01) # Ritorna3.14\n" +"stepify(3.14159, 0.01) # Ritorna 3.14\n" "[/codeblock]\n" "Guarda anche [method ceil], [method floor], [method round] e [int]." @@ -1985,6 +2030,15 @@ msgid "" " print(\"unexpected results\")\n" "[/codeblock]" msgstr "" +"Ritorna l'internal type della Variant dell'oggetto, utilizzando i valori " +"[enum Variant.Type].\n" +"[codeblock]\n" +"p = parse_json('[\"a\", \"b\", \"c\"]')\n" +"if typeof(p) == TYPE_ARRAY:\n" +" print(p[0]) # Prints a\n" +"oppure:\n" +" print(\"unexpected results\")\n" +"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -2088,6 +2142,26 @@ msgid "" "[code]wrapf[/code] is more flexible than using the [method fposmod] approach " "by giving the user control over the minimum value." msgstr "" +"Avvolge il float [code]value[/code] tra [code]min[/code] e [code]max[/" +"code].\n" +"Utilizzabile per creare dei funzionamenti simili a loop o infinite " +"superfici.\n" +"[codeblock]\n" +"# Infinite loop between 5.0 and 9.9\n" +"value = wrapf(value + 0.1, 5.0, 10.0)\n" +"[/codeblock]\n" +"[codeblock]\n" +"# Infinite rotation (in radians)\n" +"angle = wrapf(angle + 0.1, 0.0, TAU)\n" +"[/codeblock]\n" +"[codeblock]\n" +"# Infinite rotation (in radians)\n" +"angle = wrapf(angle + 0.1, -PI, PI)\n" +"[/codeblock]\n" +"[b]Nota:[/b] Se [code]min[/code] è [code]0[/code], ciò è equivalente a " +"[method fposmod], quindi utilizza quello preferibilmente.\n" +"[code]wrapf[/code] è più flessibile rispetto all'approccio [method fposmod] " +"dando l'user control sopra il valore minimo." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -2238,6 +2312,16 @@ msgid "" "code] will not result in [constant INF] and will result in a run-time error " "instead." msgstr "" +"L'infinità positiva della virgola mobile. Questo è il risultato della " +"divisione in virgola mobile quando il divisore è [code]0.0[/code]. Per " +"infinità negativa, utilizza [code]-INF[/code]. Dividere per [code]-0.0[/" +"code] risulterà in infinità negativa se è il numeratore è positivo, quindi " +"dividere per [code]0.0[/code] non è lo stesso di dividere per [code]-0.0[/" +"code] (nonostante [code]0.0 == -0.0[/code] ritorni [code]true[/code]).\n" +"[b]Nota:[/b] L'infinità numerica è solo un concetto per numeri a virgola " +"mobile, e non ha equivalenti per numeri interi. Dividere un numero intero " +"per [code]0[/code] non risulterà in [constant INF] e risulterà , invece, in " +"un errore di avviamento." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -2263,7 +2347,7 @@ msgstr "" #: doc/classes/@GlobalScope.xml msgid "Global scope constants and variables." -msgstr "" +msgstr "Costanti e variabili degli ambiti globali." #: doc/classes/@GlobalScope.xml msgid "" @@ -2272,6 +2356,11 @@ msgid "" "Singletons are also documented here, since they can be accessed from " "anywhere." msgstr "" +"Costanti e varianti degli ambiti globali. Questo è ciò che risiede nei " +"globali, le costanti riguardano gli errori di codice, scancodes, property " +"hints, ecc...\n" +"I Singletons sono documentati anche qui, dato che sono accessibili da " +"qualsiasi parte." #: doc/classes/@GlobalScope.xml msgid "The [ARVRServer] singleton." @@ -2334,19 +2423,16 @@ msgid "The [Marshalls] singleton." msgstr "Il singleton [Marshalls]." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "The [Navigation2DServer] singleton." -msgstr "Il singleton [TranslationServer]." +msgstr "Il singleton [Navigation2DServer]." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "The [NavigationMeshGenerator] singleton." -msgstr "Il singleton [EditorNavigationMeshGenerator]." +msgstr "Il singleton [NavigationMeshGenerator]." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "The [NavigationServer] singleton." -msgstr "Il singleton [TranslationServer]." +msgstr "Il singleton [NavigationServer]." #: doc/classes/@GlobalScope.xml msgid "The [OS] singleton." @@ -2377,9 +2463,8 @@ msgid "The [ResourceSaver] singleton." msgstr "Il singleton [ResourceSaver]." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "The [Time] singleton." -msgstr "Il singleton [Engine]." +msgstr "Il singleton [Time]." #: doc/classes/@GlobalScope.xml msgid "The [TranslationServer] singleton." @@ -2439,16 +2524,22 @@ msgid "" "General vertical alignment, usually used for [Separator], [ScrollBar], " "[Slider], etc." msgstr "" +"L'allineamento generale verticale, solitamente utilizzato per [Separator], " +"[Scrollbar], [Slider], ecc." #: doc/classes/@GlobalScope.xml msgid "" "General horizontal alignment, usually used for [Separator], [ScrollBar], " "[Slider], etc." msgstr "" +"L'allineamento orizzontale generale, solitamente utilizzato per [Separator], " +"[Scrollbar], [Slider], etc." #: doc/classes/@GlobalScope.xml +#, fuzzy msgid "Horizontal left alignment, usually for text-derived classes." msgstr "" +"L'allineamento orizzontale sinistro, solitamente per text-derived classes." #: doc/classes/@GlobalScope.xml msgid "Horizontal center alignment, usually for text-derived classes." @@ -2721,26 +2812,24 @@ msgid "Context menu key." msgstr "Tasto menu contestuale." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Left Hyper key." msgstr "Tasto Hyper sinistro." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Right Hyper key." msgstr "Tasto Hyper destro." #: doc/classes/@GlobalScope.xml msgid "Help key." -msgstr "" +msgstr "Tasto help." #: doc/classes/@GlobalScope.xml msgid "Left Direction key." -msgstr "" +msgstr "Il tasto direzionale sinistro." #: doc/classes/@GlobalScope.xml msgid "Right Direction key." -msgstr "" +msgstr "Il tasto direzionale destro." #: doc/classes/@GlobalScope.xml msgid "" @@ -2776,7 +2865,7 @@ msgstr "Tasto del volume su." #: doc/classes/@GlobalScope.xml msgid "Bass Boost key." -msgstr "" +msgstr "Il tasto Bass Boost." #: doc/classes/@GlobalScope.xml msgid "Bass up key." @@ -2810,7 +2899,7 @@ msgstr "Tasto brano successivo." #: doc/classes/@GlobalScope.xml msgid "Media record key." -msgstr "" +msgstr "Tasto di registrazione." #: doc/classes/@GlobalScope.xml #, fuzzy @@ -2818,98 +2907,96 @@ msgid "Home page key." msgstr "Tasto pagina iniziale." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Favorites key." msgstr "Tasto Preferiti." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Search key." msgstr "Tasto Ricerca." #: doc/classes/@GlobalScope.xml msgid "Standby key." -msgstr "" +msgstr "Tasto Modalità Riposo." #: doc/classes/@GlobalScope.xml msgid "Open URL / Launch Browser key." -msgstr "" +msgstr "Tasto Apri URL / Avvia Browser." #: doc/classes/@GlobalScope.xml msgid "Launch Mail key." -msgstr "" +msgstr "Tasto Avvia Mail." #: doc/classes/@GlobalScope.xml msgid "Launch Media key." -msgstr "" +msgstr "Tasto Avvia Media." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut 0 key." -msgstr "" +msgstr "Tasto Avvia Shortcut 0." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut 1 key." -msgstr "" +msgstr "Tasto Avvia Shortcut 1." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut 2 key." -msgstr "" +msgstr "Tasto Avvia Shortcut 2." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut 3 key." -msgstr "" +msgstr "Tasto Avvia Shortcut 3." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut 4 key." -msgstr "" +msgstr "Tasto Avvia Shortcut 4." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut 5 key." -msgstr "" +msgstr "Tasto Avvia Shortcut 5." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut 6 key." -msgstr "" +msgstr "Tasto Avvia Shortcut 6." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut 7 key." -msgstr "" +msgstr "Tasto Avvia Shortcut 7." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut 8 key." -msgstr "" +msgstr "Tasto Avvia Shortcut 8." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut 9 key." -msgstr "" +msgstr "Tasto Avvia Shortcut 9." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut A key." -msgstr "" +msgstr "Tasto Avvia Shortcut A." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut B key." -msgstr "" +msgstr "Tasto Avvia Shortcut B." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut C key." -msgstr "" +msgstr "Tasto Avvia Shortcut C." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut D key." -msgstr "" +msgstr "Tasto Avvia Shortcut D." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut E key." -msgstr "" +msgstr "Tasto Avvia Shortcut E." #: doc/classes/@GlobalScope.xml msgid "Launch Shortcut F key." -msgstr "" +msgstr "Tasto Avvia Shortcut F." #: doc/classes/@GlobalScope.xml msgid "Unknown key." -msgstr "" +msgstr "Tasto Sconosciuto." #: doc/classes/@GlobalScope.xml #, fuzzy @@ -2927,117 +3014,94 @@ msgid "\" key." msgstr "Tasto \"." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "# key." msgstr "Tasto #." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "$ key." msgstr "Tasto $." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "% key." msgstr "Tasto %." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "& key." msgstr "Tasto &." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "' key." msgstr "Tasto '." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "( key." msgstr "Tasto (." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid ") key." msgstr "Tasto )." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "* key." msgstr "Tasto *." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "+ key." msgstr "Tasto +." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid ", key." msgstr "Tasto ,." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "- key." msgstr "Tasto -." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid ". key." msgstr "Tasto \".\"." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "/ key." msgstr "Tasto /." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Number 0." msgstr "Numero 0." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Number 1." msgstr "Numero 1." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Number 2." msgstr "Numero 2." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Number 3." msgstr "Numero 3." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Number 4." msgstr "Numero 4." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Number 5." msgstr "Numero 5." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Number 6." msgstr "Numero 6." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Number 7." msgstr "Numero 7." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Number 8." msgstr "Numero 8." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Number 9." msgstr "Numero 9." @@ -3047,127 +3111,102 @@ msgid ": key." msgstr "Tasto :." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "; key." msgstr "Tasto ;." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "< key." msgstr "Tasto <." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "= key." msgstr "Tasto =." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "> key." msgstr "Tasto >." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "? key." msgstr "Tasto ?." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "@ key." msgstr "Tasto @." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "A key." msgstr "Tasto A." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "B key." msgstr "Tasto B." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "C key." msgstr "Tasto C." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "D key." msgstr "Tasto D." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "E key." msgstr "Tasto E." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "F key." msgstr "Tasto F." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "G key." msgstr "Tasto G." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "H key." msgstr "Tasto H." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "I key." msgstr "Tasto I." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "J key." msgstr "Tasto J." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "K key." msgstr "Tasto K." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "L key." msgstr "Tasto L." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "M key." msgstr "Tasto M." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "N key." msgstr "Tasto N." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "O key." msgstr "Tasto O." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "P key." msgstr "Tasto P." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Q key." msgstr "Tasto Q." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "R key." msgstr "Tasto R." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "S key." msgstr "Tasto S." @@ -3177,88 +3216,72 @@ msgid "T key." msgstr "Tasto T." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "U key." msgstr "Tasto U." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "V key." msgstr "Tasto V." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "W key." msgstr "Tasto W." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "X key." msgstr "Tasto X." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Y key." msgstr "Tasto Y." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Z key." msgstr "Tasto Z." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "[ key." msgstr "Tasto [." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "\\ key." msgstr "Tasto \\." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "] key." msgstr "Tasto ]." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "^ key." msgstr "Tasto ^." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "_ key." msgstr "Tasto _." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "` key." msgstr "Tasto '." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "{ key." msgstr "Tasto {." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "| key." msgstr "Tasto |." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "} key." msgstr "Tasto }." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "~ key." msgstr "Tasto ~." #: doc/classes/@GlobalScope.xml msgid "Non-breakable space key." -msgstr "" +msgstr "Tasto spazio Non-breakable." #: doc/classes/@GlobalScope.xml #, fuzzy @@ -3286,307 +3309,248 @@ msgid "Â¥ key." msgstr "Tasto Â¥." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "¦ key." msgstr "Tasto ¦." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "§ key." msgstr "Tasto §." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "¨ key." msgstr "Tasto ¨." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "© key." msgstr "Tasto ©." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "ª key." msgstr "Tasto ª." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "« key." msgstr "Tasto «." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "¬ key." msgstr "Tasto ¬." #: doc/classes/@GlobalScope.xml msgid "Soft hyphen key." -msgstr "" +msgstr "Tasto trattino morbido." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "® key." msgstr "Tasto ®." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "¯ key." msgstr "Tasto ¯." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "° key." msgstr "Tasto °." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "± key." msgstr "Tasto ±." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "² key." msgstr "Tasto ²." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "³ key." msgstr "Tasto ³." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "´ key." msgstr "Tasto ´." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "µ key." msgstr "Tasto µ." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "¶ key." msgstr "Tasto ¶." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "· key." msgstr "Tasto ·." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "¸ key." msgstr "Tasto ¸." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "¹ key." msgstr "Tasto ¹." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "º key." msgstr "Tasto º." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "» key." msgstr "Tasto »." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "¼ key." msgstr "Tasto ¼." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "½ key." msgstr "Tasto ½." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "¾ key." msgstr "Tasto ¾." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "¿ key." msgstr "Tasto ¿." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "À key." msgstr "Tasto À." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "à key." msgstr "Tasto Ã." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid " key." msgstr "Tasto Â." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "à key." msgstr "Tasto Ã." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Ä key." msgstr "Tasto Ä." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Ã… key." msgstr "Tasto Ã…." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Æ key." msgstr "Tasto Æ." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Ç key." msgstr "Tasto Ç." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "È key." msgstr "Tasto È." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "É key." msgstr "Tasto É." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Ê key." msgstr "Tasto Ê." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Ë key." msgstr "Tasto Ë." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "ÃŒ key." msgstr "Tasto ÃŒ." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "à key." msgstr "Tasto Ã." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "ÃŽ key." msgstr "Tasto ÃŽ." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "à key." msgstr "Tasto Ã." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "à key." msgstr "Tasto Ã." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Ñ key." msgstr "Tasto Ñ." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Ã’ key." msgstr "Tasto Ã’." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Ó key." msgstr "Tasto Ó." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Ô key." msgstr "Tasto Ô." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Õ key." msgstr "Tasto Õ." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Ö key." msgstr "Tasto Ö." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "× key." msgstr "Tasto ×." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Ø key." msgstr "Tasto Ø." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Ù key." msgstr "Tasto Ù." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Ú key." msgstr "Tasto Ú." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Û key." msgstr "Tasto Û." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Ãœ key." msgstr "Tasto Ãœ." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "à key." msgstr "Tasto Ã." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Þ key." msgstr "Tasto Þ." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "ß key." msgstr "Tasto ß." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "÷ key." msgstr "Tasto ÷." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "ÿ key." msgstr "Tasto ÿ." #: doc/classes/@GlobalScope.xml msgid "Key Code mask." -msgstr "" +msgstr "Tasto Code mask." #: doc/classes/@GlobalScope.xml msgid "Modifier key mask." @@ -3594,11 +3558,11 @@ msgstr "" #: doc/classes/@GlobalScope.xml msgid "Shift key mask." -msgstr "" +msgstr "Tasto Shift." #: doc/classes/@GlobalScope.xml msgid "Alt key mask." -msgstr "" +msgstr "Tasto Alt." #: doc/classes/@GlobalScope.xml msgid "Meta key mask." @@ -3606,7 +3570,7 @@ msgstr "" #: doc/classes/@GlobalScope.xml msgid "Ctrl key mask." -msgstr "" +msgstr "Tasto Ctrl." #: doc/classes/@GlobalScope.xml msgid "" @@ -3615,61 +3579,62 @@ msgid "" "mask should be preferred to [constant KEY_MASK_META] or [constant " "KEY_MASK_CTRL] for system shortcuts as it handles all platforms correctly." msgstr "" +"Tasto Comandi. Su macOS, ciò equivale a [constant KEY_MASK_META]. Su altre " +"piattaforme, ciò equivale a [constant KEY_MASK_CTRL]. Questo tasto dovrebbe " +"essere preferito a [constant KEY_MASK_META] o [constant KEY_MASK_CTRL] per " +"sistemi di shortcut in quanto gestito correttamente da tutte le piattaforme." #: doc/classes/@GlobalScope.xml msgid "Keypad key mask." -msgstr "" +msgstr "Tasto Keypad." #: doc/classes/@GlobalScope.xml msgid "Group Switch key mask." -msgstr "" +msgstr "Tasto Group Switch." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Left mouse button." msgstr "Tasto sinistro del mouse." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Right mouse button." msgstr "Tasto destro del mouse." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Middle mouse button." msgstr "Tasto centrale del mouse." #: doc/classes/@GlobalScope.xml msgid "Extra mouse button 1 (only present on some mice)." -msgstr "" +msgstr "Tasto Mouse Extra 1 (presente solo su alcuni mouse)." #: doc/classes/@GlobalScope.xml msgid "Extra mouse button 2 (only present on some mice)." -msgstr "" +msgstr "Tasto Mouse Extra 1 (presente solo su alcuni mouse)." #: doc/classes/@GlobalScope.xml msgid "Mouse wheel up." -msgstr "" +msgstr "Rotella del Mouse in su'." #: doc/classes/@GlobalScope.xml msgid "Mouse wheel down." -msgstr "" +msgstr "Rotella del mouse in giu'." #: doc/classes/@GlobalScope.xml msgid "Mouse wheel left button (only present on some mice)." -msgstr "" +msgstr "Tasto rotella sinistra del mouse (presente solo su alcuni mouse)." #: doc/classes/@GlobalScope.xml msgid "Mouse wheel right button (only present on some mice)." -msgstr "" +msgstr "Tasto rotella del mouse destra (presente solo su alcuni mouse)." #: doc/classes/@GlobalScope.xml msgid "Left mouse button mask." -msgstr "" +msgstr "Tasto sinistro del mouse." #: doc/classes/@GlobalScope.xml msgid "Right mouse button mask." -msgstr "" +msgstr "Tasto destro del mouse." #: doc/classes/@GlobalScope.xml msgid "Middle mouse button mask." @@ -3689,95 +3654,95 @@ msgstr "" #: doc/classes/@GlobalScope.xml msgid "Gamepad button 0." -msgstr "" +msgstr "Tasto 0 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 1." -msgstr "" +msgstr "Tasto 1 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 2." -msgstr "" +msgstr "Tasto 2 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 3." -msgstr "" +msgstr "Tasto 3 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 4." -msgstr "" +msgstr "Tasto 4 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 5." -msgstr "" +msgstr "Tasto 5 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 6." -msgstr "" +msgstr "Tasto 6 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 7." -msgstr "" +msgstr "Tasto 7 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 8." -msgstr "" +msgstr "Tasto 8 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 9." -msgstr "" +msgstr "Tasto 9 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 10." -msgstr "" +msgstr "Tasto 10 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 11." -msgstr "" +msgstr "Tasto 11 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 12." -msgstr "" +msgstr "Tasto 12 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 13." -msgstr "" +msgstr "Tasto 13 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 14." -msgstr "" +msgstr "Tasto 14 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 15." -msgstr "" +msgstr "Tasto 15 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 16." -msgstr "" +msgstr "Tasto 16 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 17." -msgstr "" +msgstr "Tasto 17 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 18." -msgstr "" +msgstr "Tasto 18 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 19." -msgstr "" +msgstr "Tasto 19 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 20." -msgstr "" +msgstr "Tasto 20 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 21." -msgstr "" +msgstr "Tasto 21 Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button 22." -msgstr "" +msgstr "Tasto 22 Gamepad." #: doc/classes/@GlobalScope.xml msgid "" @@ -3787,114 +3752,125 @@ msgid "" "- Linux: Up to 80 buttons.\n" "- Windows and macOS: Up to 128 buttons." msgstr "" +"Il numero massimo di tasti di controller di gioco supportati dal motore. Il " +"reale limite potrebbe essere inferiore su piattaforme specifiche:\n" +"- Android: Fino a 36 tasti.\n" +"- Linux: Fino a 80 tasti.\n" +"- Windows e macOS: Fino a 128 tasti." #: doc/classes/@GlobalScope.xml msgid "DualShock circle button." -msgstr "" +msgstr "Tasto Cerchio del DualShock." #: doc/classes/@GlobalScope.xml msgid "DualShock X button." -msgstr "" +msgstr "Tasto X del DualShock." #: doc/classes/@GlobalScope.xml msgid "DualShock square button." -msgstr "" +msgstr "Tasto Quadrato del DualShock." #: doc/classes/@GlobalScope.xml msgid "DualShock triangle button." -msgstr "" +msgstr "Tasto Triangolo del DualShock." #: doc/classes/@GlobalScope.xml msgid "Xbox controller B button." -msgstr "" +msgstr "Tasto B del controller Xbox." #: doc/classes/@GlobalScope.xml msgid "Xbox controller A button." -msgstr "" +msgstr "Tasto A del controller Xbox." #: doc/classes/@GlobalScope.xml msgid "Xbox controller X button." -msgstr "" +msgstr "Tasto X del controller Xbox." #: doc/classes/@GlobalScope.xml msgid "Xbox controller Y button." -msgstr "" +msgstr "Tasto Y del controller Xbox." #: doc/classes/@GlobalScope.xml msgid "Nintendo controller A button." -msgstr "" +msgstr "Tasto A del controller Nintendo." #: doc/classes/@GlobalScope.xml msgid "Nintendo controller B button." -msgstr "" +msgstr "Tasto B del controller Nintendo." #: doc/classes/@GlobalScope.xml msgid "Nintendo controller X button." -msgstr "" +msgstr "Tasto X del controller Nintendo." #: doc/classes/@GlobalScope.xml msgid "Nintendo controller Y button." -msgstr "" +msgstr "Tasto Y del controller Nintendo." #: doc/classes/@GlobalScope.xml msgid "Grip (side) buttons on a VR controller." -msgstr "" +msgstr "Tasti Grip (di lato) su un controller VR." #: doc/classes/@GlobalScope.xml msgid "Push down on the touchpad or main joystick on a VR controller." -msgstr "" +msgstr "Premi giù sul touchpad o il joystick principale su un controller VR." #: doc/classes/@GlobalScope.xml msgid "Trigger on a VR controller." -msgstr "" +msgstr "Trigger su un controller VR." #: doc/classes/@GlobalScope.xml msgid "" "A button on the right Oculus Touch controller, X button on the left " "controller (also when used in OpenVR)." msgstr "" +"Tasto A sul controller destro Oculus Touch, tasto X sul controller sinistro " +"(anche quando utilizzato in OpenVR)." #: doc/classes/@GlobalScope.xml msgid "" "B button on the right Oculus Touch controller, Y button on the left " "controller (also when used in OpenVR)." msgstr "" +"Tasto B sul controller destro Oculus Touch, tasto Y sul controller sinistro " +"(anche quando utilizzando in OpenVR)." #: doc/classes/@GlobalScope.xml msgid "Menu button on either Oculus Touch controller." -msgstr "" +msgstr "Tasto Menu su entrambi i controller Oculus Touch." #: doc/classes/@GlobalScope.xml msgid "Menu button in OpenVR (Except when Oculus Touch controllers are used)." msgstr "" +"Tasto Menu in OpenVR (tranne quando sono in utilizzo i controller Oculus " +"Touch)." #: doc/classes/@GlobalScope.xml msgid "Gamepad button Select." -msgstr "" +msgstr "Tasto Select del Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad button Start." -msgstr "" +msgstr "Tasto Start del Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad DPad up." -msgstr "" +msgstr "Tasto in su' DPad del Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad DPad down." -msgstr "" +msgstr "Tasto in giu' DPad del Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad DPad left." -msgstr "" +msgstr "Tasto sinistro DPad del Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad DPad right." -msgstr "" +msgstr "Tasto destro DPad del Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad SDL guide button." -msgstr "" +msgstr "Tasto Guida SDL del Gamepad." #: doc/classes/@GlobalScope.xml msgid "Gamepad SDL miscellaneous button." @@ -4122,6 +4098,7 @@ msgid "" msgstr "" #: doc/classes/@GlobalScope.xml +#, fuzzy msgid "" "Methods that return [enum Error] return [constant OK] when no error " "occurred. Note that many functions don't return an error code but will print " @@ -4137,30 +4114,39 @@ msgid "" " print(\"Still failing!\")\n" "[/codeblock]" msgstr "" +"Metodi che ritornano [enum Error] ritornano [constant OK] quando non risulta " +"alcun errore. Nota che molte funzioni non ritornano un errore di codice ma " +"stampano messaggi di errore come standard output.\n" +"Dato che [constant OK] ha valore 0, e tutti gli altri codici mancati sono " +"interi positivi, può essere utilizzato anche nei controlli booleani, e.g.:\n" +"[codeblock]\n" +"var err = method_that_returns_error()\n" +"if err != OK:\n" +" print(\"Failure!\")\n" +"# O, equivalente:\n" +"if err:\n" +" print(\"Still failing!\")\n" +"[/codeblock]" #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Generic error." msgstr "Errore generico." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Unavailable error." msgstr "Errore non disponibile." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Unconfigured error." msgstr "Errore non configurato." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Unauthorized error." msgstr "Errore non autorizzato." #: doc/classes/@GlobalScope.xml msgid "Parameter range error." -msgstr "" +msgstr "Errore di parametro del range." #: doc/classes/@GlobalScope.xml msgid "Out of memory (OOM) error." @@ -4180,11 +4166,11 @@ msgstr "" #: doc/classes/@GlobalScope.xml msgid "File: No permission error." -msgstr "" +msgstr "File: Errore nessun permesso." #: doc/classes/@GlobalScope.xml msgid "File: Already in use error." -msgstr "" +msgstr "File: Errore già in uso." #: doc/classes/@GlobalScope.xml msgid "File: Can't open error." @@ -4199,13 +4185,12 @@ msgid "File: Can't read error." msgstr "" #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "File: Unrecognized error." msgstr "File: Errore non riconosciuto." #: doc/classes/@GlobalScope.xml msgid "File: Corrupt error." -msgstr "" +msgstr "File: Errore corrotto." #: doc/classes/@GlobalScope.xml msgid "File: Missing dependencies error." @@ -4216,14 +4201,12 @@ msgid "File: End of file (EOF) error." msgstr "" #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Can't open error." -msgstr "Impossibile aprire l'errore." +msgstr "Impossibile aprire errore." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Can't create error." -msgstr "Impossibile creare l'errore." +msgstr "Impossibile creare errore." #: doc/classes/@GlobalScope.xml msgid "Query failed error." @@ -4231,35 +4214,31 @@ msgstr "" #: doc/classes/@GlobalScope.xml msgid "Already in use error." -msgstr "" +msgstr "Errore già in uso." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Locked error." msgstr "Errore bloccato." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Timeout error." msgstr "Errore di timeout." #: doc/classes/@GlobalScope.xml msgid "Can't connect error." -msgstr "" +msgstr "Errore impossibile connettersi." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Can't resolve error." msgstr "Impossibile risolvere l'errore." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Connection error." msgstr "Errore di connessione." #: doc/classes/@GlobalScope.xml msgid "Can't acquire resource error." -msgstr "" +msgstr "Impossibile acquisire fonte dell'errore." #: doc/classes/@GlobalScope.xml msgid "Can't fork process error." @@ -4270,36 +4249,32 @@ msgid "Invalid data error." msgstr "" #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Invalid parameter error." msgstr "Errore di parametro non valido." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Already exists error." -msgstr "Esiste già l'errore." +msgstr "Errore già esistente." #: doc/classes/@GlobalScope.xml msgid "Does not exist error." -msgstr "" +msgstr "Errore inesistente." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Database: Read error." msgstr "Database: Errore di lettura." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Database: Write error." msgstr "Database: Errore di scrittura." #: doc/classes/@GlobalScope.xml msgid "Compilation failed error." -msgstr "" +msgstr "Errore compilazione fallita." #: doc/classes/@GlobalScope.xml msgid "Method not found error." -msgstr "" +msgstr "Errore metodo non trovato." #: doc/classes/@GlobalScope.xml msgid "Linking failed error." @@ -4307,24 +4282,23 @@ msgstr "" #: doc/classes/@GlobalScope.xml msgid "Script failed error." -msgstr "" +msgstr "Errore script fallito." #: doc/classes/@GlobalScope.xml msgid "Cycling link (import cycle) error." msgstr "" #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Invalid declaration error." msgstr "Errore di dichiarazione non valida." #: doc/classes/@GlobalScope.xml msgid "Duplicate symbol error." -msgstr "" +msgstr "Errore simbolo duplicato." #: doc/classes/@GlobalScope.xml msgid "Parse error." -msgstr "" +msgstr "Errore di analizzazione." #: doc/classes/@GlobalScope.xml msgid "Busy error." @@ -4336,21 +4310,23 @@ msgstr "" #: doc/classes/@GlobalScope.xml msgid "Help error." -msgstr "" +msgstr "Errore aiuto." #: doc/classes/@GlobalScope.xml msgid "Bug error." -msgstr "" +msgstr "Errore bug." #: doc/classes/@GlobalScope.xml msgid "" "Printer on fire error. (This is an easter egg, no engine methods return this " "error code.)" msgstr "" +"Errore stampante a fuoco. (E' un easter egg, nessun motore di metodi riporta " +"questo codice di errore.)" #: doc/classes/@GlobalScope.xml msgid "No hint for the edited property." -msgstr "" +msgstr "Nessun indizio sulle proprietà modificate." #: doc/classes/@GlobalScope.xml msgid "" @@ -4361,6 +4337,13 @@ msgid "" "above the max or below the min values. Example: [code]\"-360,360,1," "or_greater,or_lesser\"[/code]." msgstr "" +"Indica che un numero intero o proprietà mobile dovrebbe essere in un range " +"specifico tramite la stringa indicativa [code]\"min,max\"[/code] o " +"[code]\"min,max,step\"[/code]. La stringa indicativa può, opzionalmente, " +"includere [code]\"or_greater\"[/code] e/o [code]\"or_lesser\"[/code] per " +"permettere un input manuale che vada rispettivamente sopra il massimo o " +"sotto il minimo dei valori. Esempio: [code]\"-360,360,1,or_greater," +"or_lesser\"[/code]." #: doc/classes/@GlobalScope.xml msgid "" @@ -4371,6 +4354,13 @@ msgid "" "above the max or below the min values. Example: [code]\"0.01,100,0.01," "or_greater\"[/code]." msgstr "" +"Indica che una proprietà mobile dovrebbe essere in un range esponenziale " +"specificato tramite la stringa indicativa [code]\"min,max\"[/code] " +"o[code]\"min,max,step\"[/code]. La stringa indicativa può, opzionalmente, " +"includere [code]\"or_greater\"[/code] e/o [code]\"or_lesser\"[/code] per " +"permettere un input manuale di andare rispettivamente sopra il massimo o " +"sotto il minimo dei valori. Esempio: [code]\"0.01,100,0.01,or_greater\"[/" +"code]." #: doc/classes/@GlobalScope.xml msgid "" @@ -4382,6 +4372,13 @@ msgid "" "specified by appending [code]:integer[/code] to the name, e.g. [code]\"Zero," "One,Three:3,Four,Six:6\"[/code]." msgstr "" +"Indica che una proprietà intera, mobile o stringa sia un valore innumerato " +"da scegliere tramite una specifica stringa indicativa.\n" +"La stringa indicativa è un elenco di nomi come [code]\"Hello,Something," +"Else\"[/code]. Per proprietà intere o mobili, il primo nome sulla lista ha " +"valore 0, il successivo 1, e così via. I valori espliciti possono anche " +"essere specificati aggiungendo [code]:integer[/code] al nome, p.e. " +"[code]\"Zero,One,Three:3,Four,Six:6\"[/code]." #: doc/classes/@GlobalScope.xml msgid "" @@ -4509,6 +4506,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -5194,8 +5211,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7160,13 +7176,12 @@ msgid "" msgstr "" #: doc/classes/AnimationTreePlayer.xml -#, fuzzy msgid "" "Returns whether node [code]id[/code] and [code]dst_id[/code] are connected " "at the specified slot." msgstr "" -"Restituisce [code]true[/code] se [code]a[/code] e [code]b[/code] sono " -"approssimativamente uguali tra di loro." +"Restituisce se nodo [code]id[/code] e [code]dst_id[/code] sono connessi " +"nella specifica casella." #: doc/classes/AnimationTreePlayer.xml msgid "Returns the blend amount of a Blend2 node given its name." @@ -8132,7 +8147,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -8317,6 +8335,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -8336,9 +8357,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -8756,12 +8781,14 @@ msgid "" msgstr "" #: doc/classes/ARVRController.xml -#, fuzzy msgid "" "Returns [code]true[/code] if the button at index [code]button[/code] is " "pressed. See [enum JoystickList], in particular the [code]JOY_VR_*[/code] " "constants." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Ritorna [code]true[/code]se il tasto sull'indice [code]button[/code] è stato " +"premuto. Vedi [enum JoystickList], in particolare i [code]JOY_VR_*[/code] " +"costanti." #: doc/classes/ARVRController.xml msgid "" @@ -9305,9 +9332,8 @@ msgstr "" #: doc/classes/PanelContainer.xml doc/classes/ScrollContainer.xml #: doc/classes/SplitContainer.xml doc/classes/TabContainer.xml #: doc/classes/VBoxContainer.xml doc/classes/VSplitContainer.xml -#, fuzzy msgid "GUI containers" -msgstr "Contenitore a schede." +msgstr "Contenitore a schede" #: doc/classes/AspectRatioContainer.xml msgid "Specifies the horizontal relative position of child controls." @@ -9894,13 +9920,12 @@ msgid "Audio buses" msgstr "" #: doc/classes/AudioEffectCapture.xml -#, fuzzy msgid "" "Returns [code]true[/code] if at least [code]frames[/code] audio frames are " "available to read in the internal ring buffer." msgstr "" -"Restituisce [code]true[/code] se [code]a[/code] e [code]b[/code] sono " -"approssimativamente uguali tra di loro." +"Restituisce [code]true[/code] se almeno [code]frames[/code] frame audio sono " +"disponibili per la lettura nell'internal ring buffer." #: doc/classes/AudioEffectCapture.xml msgid "Clears the internal ring buffer." @@ -10986,12 +11011,14 @@ msgid "Clears the audio sample data buffer." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml +#, fuzzy msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" +"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " +"esiste, [code]false[/code] altrimenti." #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" @@ -11522,14 +11549,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -11539,22 +11566,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -13261,9 +13288,9 @@ msgid "The camera's process callback. See [enum Camera2DProcessMode]." msgstr "" #: doc/classes/Camera2D.xml -#, fuzzy msgid "If [code]true[/code], the camera view rotates with the target." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Se [code]true[/code], la visuale della telecamera ruota insieme al target." #: doc/classes/Camera2D.xml msgid "" @@ -13401,11 +13428,12 @@ msgid "Returns an array of [CameraFeed]s." msgstr "" #: doc/classes/CameraServer.xml -#, fuzzy msgid "" "Returns the [CameraFeed] corresponding to the camera with the given " "[code]index[/code]." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce il [CameraFeed] corrispondente alla telecamera con il dato " +"[code]index[/code]." #: doc/classes/CameraServer.xml msgid "Returns the number of [CameraFeed]s registered." @@ -14740,9 +14768,8 @@ msgid "" msgstr "" #: doc/classes/ClippedCamera.xml -#, fuzzy msgid "If [code]true[/code], the camera stops on contact with [Area]s." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "Se [code]true[/code], la telecamera si ferma al contatto con [Area]s." #: doc/classes/ClippedCamera.xml msgid "If [code]true[/code], the camera stops on contact with [PhysicsBody]s." @@ -15160,9 +15187,8 @@ msgstr "" #: doc/classes/Physics2DDirectSpaceState.xml #: doc/classes/PhysicsDirectBodyState.xml #: doc/classes/PhysicsDirectSpaceState.xml doc/classes/RigidBody.xml -#, fuzzy msgid "Physics introduction" -msgstr "Interpolazione cubica." +msgstr "Introduzione fisica" #: doc/classes/CollisionShape.xml msgid "" @@ -16792,7 +16818,7 @@ msgstr "" #: doc/classes/Control.xml #, fuzzy msgid "Control node gallery" -msgstr "Tasto Control/CTRL." +msgstr "Galleria controllo nodo" #: doc/classes/Control.xml msgid "All GUI Demos" @@ -16902,15 +16928,16 @@ msgid "" msgstr "" #: doc/classes/Control.xml -#, fuzzy msgid "" "Creates a local override for a theme constant with the specified [code]name[/" "code]. Local overrides always take precedence when fetching theme items for " "the control.\n" "See also [method get_constant], [method remove_constant_override]." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Crea un override locale per un tema costante con lo specifico [code]name[/" +"code]. I local overrides hanno sempre la precedenza quando si recuperano " +"elementi del tema per il controllo.\n" +"Vedi anche [method get_constant], [method remove_constant_override]." #: doc/classes/Control.xml msgid "" @@ -17210,14 +17237,14 @@ msgid "" msgstr "" #: doc/classes/Control.xml -#, fuzzy msgid "" "Returns [code]true[/code] if there is a local override for a theme [Color] " "with the specified [code]name[/code] in this [Control] node.\n" "See [method add_color_override]." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce [code]true[/code] se è presente un locale override per un tema " +"[Color] con lo specifico [code]name[/code] in questo [Control] nodo.\n" +"Vedi [method add_color_override]." #: doc/classes/Control.xml msgid "" @@ -17228,14 +17255,14 @@ msgid "" msgstr "" #: doc/classes/Control.xml -#, fuzzy msgid "" "Returns [code]true[/code] if there is a local override for a theme constant " "with the specified [code]name[/code] in this [Control] node.\n" "See [method add_constant_override]." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce [code]true[/code] se c'è un override locale per un tema costante " +"nello specifico [code]name[/code] in questo [Control] nodo.\n" +"Vedi [method add_constant_override]." #: doc/classes/Control.xml msgid "" @@ -17255,14 +17282,14 @@ msgstr "" "esiste, [code]false[/code] altrimenti." #: doc/classes/Control.xml -#, fuzzy msgid "" "Returns [code]true[/code] if there is a local override for a theme [Font] " "with the specified [code]name[/code] in this [Control] node.\n" "See [method add_font_override]." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce [code]true[/code] se è presente un override locale per un tema " +"[Font] con lo specifico [code]name[/code] in questo [Control] nodo.\n" +"Vedi [method add_font_override]." #: doc/classes/Control.xml #, fuzzy @@ -17276,14 +17303,14 @@ msgstr "" "esiste, [code]false[/code] altrimenti." #: doc/classes/Control.xml -#, fuzzy msgid "" "Returns [code]true[/code] if there is a local override for a theme icon with " "the specified [code]name[/code] in this [Control] node.\n" "See [method add_icon_override]." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce [code]true[/code] se è presente un override locale per un'icona " +"a tema con lo specifico [code]name[/code] in questo [Control] nodo.\n" +"Vedi [method add_icon_override]." #: doc/classes/Control.xml msgid "" @@ -17296,14 +17323,15 @@ msgid "" msgstr "" #: doc/classes/Control.xml -#, fuzzy msgid "" "Returns [code]true[/code] if there is a local override for a theme shader " "with the specified [code]name[/code] in this [Control] node.\n" "See [method add_shader_override]." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce [code]true[/code] se è un presente un override locale per un " +"ombreggiatore di tema con lo specifico [code]name[/code] in questo [Control] " +"nodo.\n" +"Vedi [method add_shader_override]." #: doc/classes/Control.xml msgid "" @@ -17314,14 +17342,14 @@ msgid "" msgstr "" #: doc/classes/Control.xml -#, fuzzy msgid "" "Returns [code]true[/code] if there is a local override for a theme " "[StyleBox] with the specified [code]name[/code] in this [Control] node.\n" "See [method add_stylebox_override]." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce [code]true[/code] se è presente un override locale per un tema " +"[StyleBox] con lo specifico [code]name[/code] in questo [Control] nodo.\n" +"Vedi [method add_stylebox_override]." #: doc/classes/Control.xml msgid "" @@ -20445,6 +20473,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -23285,7 +23321,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -28290,11 +28329,12 @@ msgid "" msgstr "" #: modules/gridmap/doc_classes/GridMap.xml -#, fuzzy msgid "" "Returns an array of all cells with the given item index specified in " "[code]item[/code]." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce un vettore di tutte le celle con il dato elemento indice " +"specificato in [code]item[/code]." #: modules/gridmap/doc_classes/GridMap.xml msgid "" @@ -28326,11 +28366,12 @@ msgid "" msgstr "" #: modules/gridmap/doc_classes/GridMap.xml -#, fuzzy msgid "" "If [code]true[/code], this GridMap uses cell navmesh resources to create " "navigation regions." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Se [code]true[/code], questa GridMap utilizza celle navmesh come fonti per " +"creare regioni di navigazione." #: modules/gridmap/doc_classes/GridMap.xml msgid "If [code]true[/code], grid items are centered on the X axis." @@ -30986,11 +31027,12 @@ msgid "" msgstr "" #: doc/classes/Input.xml -#, fuzzy msgid "" "Returns [code]true[/code] if you are pressing the joypad button (see [enum " "JoystickList])." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce [code]true[/code] se premi un tasto del joypad (vedi [enum " +"JoystickList])." #: doc/classes/Input.xml msgid "" @@ -31774,11 +31816,13 @@ msgid "Mouse and input coordinates" msgstr "" #: doc/classes/InputEventMouseMotion.xml -#, fuzzy msgid "" "Returns [code]true[/code] when using the eraser end of a stylus pen.\n" "[b]Note:[/b] This property is implemented on Linux, macOS and Windows." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce [code]true[/code] quando è in utilizzo la gomma di una penna " +"stilo.\n" +"[b]Nota:[/b] Questa proprietà è implementata su Linux, macOS e Windows." #: doc/classes/InputEventMouseMotion.xml msgid "" @@ -33974,9 +34018,8 @@ msgid "Returns the offset of the piece with the index [code]idx[/code]." msgstr "" #: doc/classes/LargeTexture.xml -#, fuzzy msgid "Returns the [Texture] of the piece with the index [code]idx[/code]." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "Restituisce la [Texture] del pezzo con l'indice [code]idx[/code]." #: doc/classes/LargeTexture.xml msgid "" @@ -34063,7 +34106,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -37223,9 +37268,10 @@ msgid "" msgstr "" #: doc/classes/Navigation2DServer.xml -#, fuzzy msgid "Returns the map cell height. [b]Note:[/b] Currently not implemented." -msgstr "Prende la linea corrente nel file analizzato (non ancora implementato)" +msgstr "" +"Prende la linea corrente nel file analizzato. [b]Note:[/b] Attualmente non " +"implementato." #: doc/classes/Navigation2DServer.xml doc/classes/NavigationServer.xml #, fuzzy @@ -37399,7 +37445,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -37652,7 +37701,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37733,13 +37785,12 @@ msgid "" msgstr "" #: doc/classes/NavigationMesh.xml -#, fuzzy msgid "" "Returns whether the specified [code]bit[/code] of the [member " "geometry_collision_mask] is set." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce se lo specifico [code]bit[/code] del [member " +"geometry_collision_mask] è impostato." #: doc/classes/NavigationMesh.xml doc/classes/NavigationPolygon.xml msgid "" @@ -38377,6 +38428,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -40866,13 +40920,12 @@ msgid "" msgstr "" #: doc/classes/Object.xml -#, fuzzy msgid "" "Returns [code]true[/code] if a connection exists for a given [code]signal[/" "code], [code]target[/code], and [code]method[/code]." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce [code]true[/code] se la connessione esiste per un dato " +"[code]signal[/code], [code]target[/code], e [code]method[/code]." #: doc/classes/Object.xml msgid "" @@ -41195,7 +41248,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -41712,11 +41767,11 @@ msgstr "Restituisce l'angolo al vettore dato, in radianti." #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -41750,11 +41805,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -41776,11 +41831,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42304,11 +42359,12 @@ msgid "" msgstr "" #: doc/classes/OS.xml -#, fuzzy msgid "" "Returns [code]true[/code] if the [b]OK[/b] button should appear on the left " "and [b]Cancel[/b] on the right." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce [code]true[/code] se il tasto [b]OK[/b] debba apparire a " +"sinistra e [b]Cancel[/b] a destra." #: doc/classes/OS.xml msgid "" @@ -42320,11 +42376,12 @@ msgid "" msgstr "" #: doc/classes/OS.xml -#, fuzzy msgid "" "Returns [code]true[/code] if the input scancode corresponds to a Unicode " "character." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce [code]true[/code] se l'input scancode corrisponde a un carattere " +"Unicode." #: doc/classes/OS.xml msgid "" @@ -43140,7 +43197,6 @@ msgid "" msgstr "" #: doc/classes/PacketPeer.xml -#, fuzzy msgid "" "[i]Deprecated.[/i] Use [code]get_var[/code] and [code]put_var[/code] " "parameters instead.\n" @@ -43150,12 +43206,14 @@ msgid "" "Do not use this option if the serialized object comes from untrusted sources " "to avoid potential security threats such as remote code execution." msgstr "" -"Decodifica un byte array in un valore. Quando [code]allow_objects[/code] è " -"[code]true[/code], decodificare gli oggetti è permesso.\n" -"[b]ATTENZIONE:[/b] Deserializzare un oggetto può contenere codice che verrà " +"[i]Deprecated.[/i] Usa i parametri [code]get_var[/code] e [code]put_var[/" +"code] piuttosto.\n" +"Se [code]true[/code], il PacketPeer consentirà la codifica e decodifica di " +"oggetti tramite [method get_var] and [method put_var].\n" +"[b]Attenzione:[/b] Oggetti deserializzati possono contenere codice che verrà " "eseguito. Non usare questa opzione se l'oggetto serializzato arriva da fonti " -"sconosciute per evitare potenziali pericoli di sicurezza (remote code " -"execution, esecuzione di codice remoto)." +"inaffidabili per evitare potenziali minacce di sicurezza come esecuzione di " +"codice remoto." #: doc/classes/PacketPeer.xml msgid "" @@ -43659,6 +43717,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -46826,11 +46894,12 @@ msgstr "" #: doc/classes/PoolIntArray.xml doc/classes/PoolRealArray.xml #: doc/classes/PoolStringArray.xml doc/classes/PoolVector2Array.xml #: doc/classes/PoolVector3Array.xml -#, fuzzy msgid "" "Returns [code]true[/code] if the array contains the given value.\n" "[b]Note:[/b] This is equivalent to using the [code]in[/code] operator." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Ritorna [code]true[/code] se il vettore contiene il dato valore.\n" +"[b]Nota:[/b] Ciò equivale ad utilizzare il [code]in[/code] operatore." #: doc/classes/PoolByteArray.xml msgid "" @@ -47084,11 +47153,12 @@ msgid "Appends a [PoolStringArray] at the end of this array." msgstr "" #: doc/classes/PoolStringArray.xml -#, fuzzy msgid "" "Returns a [String] with each element of the array joined with the given " "[code]delimiter[/code]." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce una [String] con cui ogni elemento del vettore aderì con il dato " +"[code]delimiter[/code]." #: doc/classes/PoolStringArray.xml msgid "Appends a string element at end of the array." @@ -47570,11 +47640,13 @@ msgid "" msgstr "" #: doc/classes/PopupMenu.xml -#, fuzzy msgid "" "Sets the currently focused item as the given [code]index[/code].\n" "Passing [code]-1[/code] as the index makes so that no item is focused." -msgstr "Calcola il prodotto vettoriale di questo vettore e [code]with[/code]." +msgstr "" +"Imposta l'attuale elemento focalizzato come il dato [code]index[/code].\n" +"Passando [code]-1[/code] come indice fa in modo che nessun elemento venga " +"focalizzato." #: doc/classes/PopupMenu.xml msgid "Hides the [PopupMenu] when the window loses focus." @@ -51264,15 +51336,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51911,14 +51990,14 @@ msgid "Returns the inverse of the quaternion." msgstr "" #: doc/classes/Quat.xml -#, fuzzy msgid "" "Returns [code]true[/code] if this quaternion and [code]quat[/code] are " "approximately equal, by running [method @GDScript.is_equal_approx] on each " "component." msgstr "" -"Restituisce [code]true[/code] se [code]a[/code] e [code]b[/code] sono " -"approssimativamente uguali tra di loro." +"Restituisce [code]true[/code] se questo quaternione e [code]quat[/code] " +"sono approssimativament eguali, avviando [method @GDScript.is_equal_approx] " +"su ogni componente." #: doc/classes/Quat.xml msgid "Returns whether the quaternion is normalized or not." @@ -52875,17 +52954,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -52894,8 +52984,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -53299,11 +53395,12 @@ msgid "" msgstr "" #: doc/classes/ResourceInteractiveLoader.xml -#, fuzzy msgid "" "Returns the loaded resource if the load operation completed successfully, " "[code]null[/code] otherwise." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce la fonte caricata se l'operazione caricata è stata completata " +"con successo, [code]null[/code] altrimenti." #: doc/classes/ResourceInteractiveLoader.xml msgid "" @@ -55614,7 +55711,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -57453,7 +57554,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -58835,7 +58938,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -58851,7 +58957,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -61956,20 +62064,20 @@ msgid "" msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." #: doc/classes/TextEdit.xml -#, fuzzy msgid "" "Returns [code]true[/code] when the specified [code]line[/code] has a " "breakpoint." -msgstr "Ritorna [code]true[/code] se [Rect2i] contiene un punto." +msgstr "" +"Restituisce [code]true[/code] quando lo specificato [code]line[/code] ha un " +"breakpoint." #: doc/classes/TextEdit.xml -#, fuzzy msgid "" "Returns [code]true[/code] when the specified [code]line[/code] is marked as " "safe." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce [code]true[/code] quando lo specifico [code]line[/code] è " +"marcato come sicuro." #: doc/classes/TextEdit.xml #, fuzzy @@ -61977,13 +62085,12 @@ msgid "Returns if the given line is wrapped." msgstr "Restituisce la tangente del parametro." #: doc/classes/TextEdit.xml -#, fuzzy msgid "" "Returns whether the mouse is over selection. If [code]edges[/code] is " "[code]true[/code], the edges are considered part of the selection." msgstr "" -"Restituisce [code]true[/code] se [code]a[/code] e [code]b[/code] sono " -"approssimativamente uguali tra di loro." +"Restituisce se il mouse è sotto selezione. Se [code]edges[/code] è " +"[code]true[/code], gli angoli sono considerati parte della selezione" #: doc/classes/TextEdit.xml msgid "Returns [code]true[/code] if the selection is active." @@ -63034,11 +63141,12 @@ msgid "" msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Clears the theme item of [code]data_type[/code] at [code]name[/code] if the " "theme has [code]theme_type[/code]." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Pulisce l'elemento del tema di [code]data_type[/code] a [code]name[/code] se " +"il tema contiene [code]theme_type[/code]." #: doc/classes/Theme.xml msgid "" @@ -63062,12 +63170,14 @@ msgid "" msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns all the [Color]s as a [PoolStringArray] filled with each [Color]'s " "name, for use in [method get_color], if the theme has [code]theme_type[/" "code]." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce tutto il [Color]s come un [PoolStringArray] riempito di " +"[Color]'s nomi, per utilizzo in [method get_color], se il tema ha " +"[code]theme_type[/code]." #: doc/classes/Theme.xml msgid "" @@ -63083,12 +63193,14 @@ msgid "" msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns all the constants as a [PoolStringArray] filled with each constant's " "name, for use in [method get_constant], if the theme has [code]theme_type[/" "code]." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce tutte le costanti come [PoolStringArray] carico dei nomi di ogni " +"costante, per utilizzo in [method get_constant], se il tema contiene " +"[code]theme_type[/code]." #: doc/classes/Theme.xml msgid "" @@ -63105,11 +63217,12 @@ msgid "" msgstr "" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns all the [Font]s as a [PoolStringArray] filled with each [Font]'s " "name, for use in [method get_font], if the theme has [code]theme_type[/code]." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce i [Font]s come [PoolStringArray] carico con ogni [Font]'s nomi, " +"per utilizzo in [method get_font], se il tema ha [code]theme_type[/code]." #: doc/classes/Theme.xml msgid "" @@ -63125,11 +63238,13 @@ msgid "" msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns all the icons as a [PoolStringArray] filled with each [Texture]'s " "name, for use in [method get_icon], if the theme has [code]theme_type[/code]." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce tutte le icona come [PoolStringArray] cariche di ogni " +"[Texture]'s nomi, per utilizzo in [method get_icon], se il tema contiene " +"[code]theme_type[/code]." #: doc/classes/Theme.xml msgid "" @@ -63202,83 +63317,87 @@ msgid "" msgstr "" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns a list of all type variations for the given [code]base_type[/code]." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce una lista di tutti i tipi di variazioni per il dato " +"[code]base_type[/code]." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns [code]true[/code] if [Color] with [code]name[/code] is in " "[code]theme_type[/code].\n" "Returns [code]false[/code] if the theme does not have [code]theme_type[/" "code]." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce [code]true[/code] se [Color] con [code]name[/code] è in " +"[code]theme_type[/code].\n" +"Restituisce [code]false[/code] se il tema non ha [code]theme_type[/code]." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns [code]true[/code] if constant with [code]name[/code] is in " "[code]theme_type[/code].\n" "Returns [code]false[/code] if the theme does not have [code]theme_type[/" "code]." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce [code]true[/code] se costante con [code]name[/code] è in " +"[code]theme_type[/code].\n" +"Restituisce [code]false[/code] se il tema non contiene [code]theme_type[/" +"code]." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns [code]true[/code] if this theme has a valid [member default_font] " "value." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce [code]true[/code] se questo tema ha un valido [member " +"default_font] valore." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns [code]true[/code] if [Font] with [code]name[/code] is in " "[code]theme_type[/code].\n" "Returns [code]false[/code] if the theme does not have [code]theme_type[/" "code]." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce [code]true[/code] se [Font] con [code]name[/code] è in " +"[code]theme_type[/code].\n" +"Restituisce [code]false[/code] se il tema non contiene [code]theme_type[/" +"code]." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns [code]true[/code] if icon [Texture] with [code]name[/code] is in " "[code]theme_type[/code].\n" "Returns [code]false[/code] if the theme does not have [code]theme_type[/" "code]." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce [code]true[/code] se l'icona [Texture] con [code]name[/code] è " +"in [code]theme_type[/code].\n" +"Restituisce [code]false[/code] se il tema non ha [code]theme_type[/code]." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns [code]true[/code] if [StyleBox] with [code]name[/code] is in " "[code]theme_type[/code].\n" "Returns [code]false[/code] if the theme does not have [code]theme_type[/" "code]." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce [code]true[/code] se [StyleBox] con [code]name[/code] è in " +"[code]theme_type[/code].\n" +"Restituisce [code]false[/code] se il tema non ha [code]theme_type[/code]." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns [code]true[/code] if a theme item of [code]data_type[/code] with " "[code]name[/code] is in [code]theme_type[/code].\n" "Returns [code]false[/code] if the theme does not have [code]theme_type[/" "code]." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Restituisce [code]true[/code] se un elemento del tema di [code]data_type[/" +"code] con [code]name[/code] è in [code]theme_type[/code].\n" +"Restituisce [code]false[/code] se il tema non ha [code]theme_type[/code]." #: doc/classes/Theme.xml #, fuzzy @@ -63306,44 +63425,54 @@ msgid "" msgstr "" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Renames the [Color] at [code]old_name[/code] to [code]name[/code] if the " "theme has [code]theme_type[/code]. If [code]name[/code] is already taken, " "this method fails." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Rinomina il [Color] da [code]old_name[/code] a [code]name[/code] se il tema " +"ha [code]theme_type[/code]. Se [code]name[/code] è già occupato, questo " +"metodo non può funzionare." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Renames the constant at [code]old_name[/code] to [code]name[/code] if the " "theme has [code]theme_type[/code]. If [code]name[/code] is already taken, " "this method fails." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Rinomina la costante da [code]old_name[/code] a [code]name[/code] se il tema " +"ha [code]theme_type[/code]. Se [code]name[/code] è già occupato, questo " +"metodo non può funzionare." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Renames the [Font] at [code]old_name[/code] to [code]name[/code] if the " "theme has [code]theme_type[/code]. If [code]name[/code] is already taken, " "this method fails." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Rinomina il [Font] da [code]old_name[/code] a [code]name[/code] se il tema " +"ha [code]theme_type[/code]. Se [code]name[/code] è già occupato, questo " +"metodo non può funzionare." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Renames the icon at [code]old_name[/code] to [code]name[/code] if the theme " "has [code]theme_type[/code]. If [code]name[/code] is already taken, this " "method fails." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Rinomina l'icona da [code]old_name[/code] a [code]name[/code] se il tema ha " +"[code]theme_type[/code]. Se [code]name[/code] è già occupato, questo metodo " +"non può funzionare." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Renames [StyleBox] at [code]old_name[/code] to [code]name[/code] if the " "theme has [code]theme_type[/code]. If [code]name[/code] is already taken, " "this method fails." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Rinomina [StyleBox] da [code]old_name[/code] a [code]name[/code] se il tema " +"ha [code]theme_type[/code]. Se [code]name[/code] è già occupato, questo " +"metodo non può funzionare." #: doc/classes/Theme.xml msgid "" @@ -63353,57 +63482,56 @@ msgid "" msgstr "" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Sets the theme's [Color] to [code]color[/code] at [code]name[/code] in " "[code]theme_type[/code].\n" "Creates [code]theme_type[/code] if the theme does not have it." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Imposta il [Color] del tema da [code]color[/code] a [code]name[/code] in " +"[code]theme_type[/code].\n" +"Crea [code]theme_type[/code] se il tema non ce l'ha." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Sets the theme's constant to [code]constant[/code] at [code]name[/code] in " "[code]theme_type[/code].\n" "Creates [code]theme_type[/code] if the theme does not have it." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Imposta la costante del tema da [code]constant[/code] a [code]name[/code] in " +"[code]theme_type[/code].\n" +"Crea [code]theme_type[/code]se il tema non ce l'ha." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Sets the theme's [Font] to [code]font[/code] at [code]name[/code] in " "[code]theme_type[/code].\n" "Creates [code]theme_type[/code] if the theme does not have it." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Imposta il [Font] del tema da [code]font[/code] a [code]name[/code] in " +"[code]theme_type[/code].\n" +"Crea [code]theme_type[/code] se il tema non ce l'ha." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Sets the theme's icon [Texture] to [code]texture[/code] at [code]name[/code] " "in [code]theme_type[/code].\n" "Creates [code]theme_type[/code] if the theme does not have it." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Imposta l'icona del tema [Texture] da [code]texture[/code] a [code]name[/" +"code] in [code]theme_type[/code].\n" +"Crea [code]theme_type[/code] se il tema non ce l'ha." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Sets theme's [StyleBox] to [code]stylebox[/code] at [code]name[/code] in " "[code]theme_type[/code].\n" "Creates [code]theme_type[/code] if the theme does not have it." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Imposta lo [StyleBox] del tema da [code]stylebox[/code] a [code]name[/code] " +"in [code]theme_type[/code].\n" +"Crea [code]theme_type[/code] se il tema non ce l'ha." #: doc/classes/Theme.xml -#, fuzzy msgid "" "Sets the theme item of [code]data_type[/code] to [code]value[/code] at " "[code]name[/code] in [code]theme_type[/code].\n" @@ -63411,8 +63539,11 @@ msgid "" "code].\n" "Creates [code]theme_type[/code] if the theme does not have it." msgstr "" -"Ritorna [code]true[/code] se l'impostazione specificata da [code]name[/code] " -"esiste, [code]false[/code] altrimenti." +"Imposta l'elemento del tema di [code]data_type[/code] da [code]value[/code] " +"a [code]name[/code] in [code]theme_type[/code].\n" +"Non funziona se il modello [code]value[/code] non combacia con " +"[code]data_type[/code].\n" +"Crea [code]theme_type[/code] se il tema non ce l'ha." #: doc/classes/Theme.xml msgid "" @@ -65695,9 +65826,8 @@ msgid "" msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." #: doc/classes/TreeItem.xml -#, fuzzy msgid "Returns the number of buttons in column [code]column[/code]." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "Restituisce il numero dei tasti in colonna [code]column[/code]." #: doc/classes/TreeItem.xml #, fuzzy @@ -67300,12 +67430,12 @@ msgid "" msgstr "" #: doc/classes/Vector2.xml doc/classes/Vector3.xml -#, fuzzy msgid "" "Returns [code]true[/code] if the vector is normalized, [code]false[/code] " "otherwise." msgstr "" -"Ritorna [code]true[/code] se il vettore è normalizzato, o falso altrimenti." +"Restituisce [code]true[/code] se il vettore è normalizzato, [code]false[/" +"code] altrimenti." #: doc/classes/Vector2.xml doc/classes/Vector3.xml msgid "Returns the length (magnitude) of this vector." @@ -67332,13 +67462,12 @@ msgid "" msgstr "" #: doc/classes/Vector2.xml doc/classes/Vector3.xml -#, fuzzy msgid "" "Returns a new vector moved toward [code]to[/code] by the fixed [code]delta[/" "code] amount. Will not go past the final value." msgstr "" -"Restituisce [code]true[/code] se [code]a[/code] e [code]b[/code] sono " -"approssimativamente uguali tra di loro." +"Restituisce un nuovo vettore mosso verso [code]to[/code] da una quantità " +"fissa [code]delta[/code]. Non va oltre il valore finale." #: doc/classes/Vector2.xml doc/classes/Vector3.xml msgid "" @@ -68226,10 +68355,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -68240,8 +68374,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -68305,11 +68439,12 @@ msgid "" msgstr "" #: doc/classes/Viewport.xml -#, fuzzy msgid "" "If [code]true[/code], the viewport will use a unique copy of the [World] " "defined in [member world]." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Se [code]true[/code], il viewport utilizzerà una copia unica del [World] " +"definito in [member world]." #: doc/classes/Viewport.xml msgid "" @@ -68399,7 +68534,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -68931,6 +69068,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" @@ -70125,7 +70278,6 @@ msgid "Pi divided by two: [code]1.570796[/code]." msgstr "" #: modules/visual_script/doc_classes/VisualScriptMathConstant.xml -#, fuzzy msgid "Tau: [code]6.283185[/code]." msgstr "Tau: [code]6.283185[/code]." @@ -70140,9 +70292,8 @@ msgid "Square root of two: [code]1.414214[/code]." msgstr "" #: modules/visual_script/doc_classes/VisualScriptMathConstant.xml -#, fuzzy msgid "Infinity: [code]inf[/code]." -msgstr "Infinito: [code]inf[/code]." +msgstr "Infinità : [code]inf[/code]." #: modules/visual_script/doc_classes/VisualScriptMathConstant.xml msgid "Not a number: [code]nan[/code]." @@ -71887,11 +72038,12 @@ msgid "Returns the value of a certain material's parameter." msgstr "" #: doc/classes/VisualServer.xml -#, fuzzy msgid "" "Returns the default value for the param if available. Returns [code]null[/" "code] otherwise." -msgstr "Ritorna [code]true[/code] se [code]s[/code] è zero o quasi zero." +msgstr "" +"Restituisce il valore predefinito per il parametro, se disponibile. " +"Altrimenti restituisce [code]null[/code]." #: doc/classes/VisualServer.xml msgid "" @@ -76974,19 +77126,21 @@ msgid "" "Gets the value of the attribute specified by the index in [code]idx[/code] " "argument." msgstr "" -"Prende il nome dell'attributo specificato dall'indice nell'argomento " +"Prende il valore dell'attributo specificato dall'indice nell'argomento " "[code]idx[/code]." #: doc/classes/XMLParser.xml -#, fuzzy msgid "Gets the current line in the parsed file (currently not implemented)." -msgstr "Prende la linea corrente nel file analizzato (non ancora implementato)" +msgstr "" +"Prende la linea corrente nel file analizzato (non ancora implementato)." #: doc/classes/XMLParser.xml msgid "" "Gets the value of a certain attribute of the current element by name. This " "will raise an error if the element has no such attribute." msgstr "" +"Prende il valore di un certo attributo dell'elemento corrente usando il " +"nome. Questo darà errore se l'elemento non ha tale attributo." #: doc/classes/XMLParser.xml msgid "" @@ -77061,13 +77215,12 @@ msgstr "" "legge il nodo seguente. Questo ritorna un codice errore." #: doc/classes/XMLParser.xml -#, fuzzy msgid "" "Skips the current section. If the node contains other elements, they will be " "ignored and the cursor will go to the closing of the current element." msgstr "" "Salta la sezione corrente. Se il nodo contiene altri elementi, questi " -"saranno ignorati e il cursore andrà alla chiusura dell'elemento corrente" +"saranno ignorati e il cursore andrà alla chiusura dell'elemento corrente." #: doc/classes/XMLParser.xml #, fuzzy diff --git a/doc/translations/ja.po b/doc/translations/ja.po index f5217e9b83..cabf1da54a 100644 --- a/doc/translations/ja.po +++ b/doc/translations/ja.po @@ -12,12 +12,13 @@ # Tarou Yamada <mizuningyou@yahoo.co.jp>, 2021. # sugusan <sugusan.development@gmail.com>, 2022. # Juto <mvobujd237@gmail.com>, 2022. +# ta ko <neji.cion@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-02-14 22:08+0000\n" -"Last-Translator: Wataru Onuki <bettawat@yahoo.co.jp>\n" +"PO-Revision-Date: 2022-11-21 00:47+0000\n" +"Last-Translator: ta ko <neji.cion@gmail.com>\n" "Language-Team: Japanese <https://hosted.weblate.org/projects/godot-engine/" "godot-class-reference/ja/>\n" "Language: ja\n" @@ -25,7 +26,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.11-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -713,8 +714,10 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -729,7 +732,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" "ç¾åœ¨ã®ã‚³ãƒ¼ãƒ«ã‚¹ã‚¿ãƒƒã‚¯ã‚’辞書ã®é…列ã¨ã—ã¦è¿”ã—ã¾ã™ã€‚\n" "[codeblock]\n" @@ -1358,19 +1365,17 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" -"コードä½ç½®ã®ã‚¹ã‚¿ãƒƒã‚¯ãƒˆãƒ©ãƒƒã‚¯ã‚’表示ã—ã¾ã™ã€‚デãƒãƒƒã‚¬ã‚’有効ã«ã—ã¦å®Ÿè¡Œã—ãŸæ™‚ã«ã®" -"ã¿å‹•ä½œã—ã¾ã™ã€‚\n" -"コンソール内ã§ã®å‡ºåŠ›ã¯ã“ã®ã‚ˆã†ã«ãªã‚Šã¾ã™:\n" -"[codeblock]\n" -"Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1600,6 +1605,41 @@ msgid "" "3\n" "[/codeblock]" msgstr "" +":指定ã•ã‚ŒãŸç¯„囲ã®é…列を返ã—ã¾ã™ã€‚[method range] ã¯3ã¤ã®æ–¹æ³•ã§å‘¼ã³å‡ºã™ã“ã¨ãŒã§" +"ãã¾ã™ã€‚\n" +"[code]range(n: int)[/code]:0ã‹ã‚‰å§‹ã¾ã‚Šã€1ãšã¤å¢—åŠ ã—ã€[code]n[/code]ã®[i]å‰ [/" +"i] ã§åœæ¢ã—ã€å¼•æ•°[code]n[/code]ã¯[b]å«ã¾ã‚Œã¾ã›ã‚“[/b]。[i]\n" +"[code]range(b: int, n: int)[/code]:[code]b[/code]ã‹ã‚‰å§‹ã¾ã‚Šã€1ãšã¤å¢—åŠ ã—ã€" +"[code]n[/code]ã® [i] å‰ [/i] ã§åœæ¢ã—ã¾ã™ã€‚引数 [code]b[/code] 㯠[b] å«ã¾ã‚Œ" +"ã¾ã™[/b] ãŒã€ [code]n[/code] 㯠[b]å«ã¾ã‚Œã¾ã›ã‚“[/b] 。\n" +"[code]range(b: int, n: int, s: int)[/code]:[code]b[/code]ã‹ã‚‰å§‹ã¾ã‚Šã€" +"[code]s[/code]ã®ã‚¹ãƒ†ãƒƒãƒ—ã§å¢—åŠ /減少ã—ã€[code]n[/code]ã®[i]å‰ [/i] ã§åœæ¢ã—ã¾" +"ã™ã€‚引数 [code]b[/code] 㯠[b] å«ã¾ã‚Œã¾ã™[/b] ãŒã€ [code]n[/code] 㯠[b]å«ã¾" +"ã‚Œã¾ã›ã‚“[/b] 。。引数 [code]s[/code] [b]can[/b] ã¯è² ã®å€¤ã‚’指定ã§ãã¾ã™ãŒã€" +"[code]0[/code] ã¯æŒ‡å®šã§ãã¾ã›ã‚“。[code]s[/code] ㌠[code]0[/code] ã®å ´åˆã€ã‚¨" +"ラーメッセージãŒå‡ºåŠ›ã•ã‚Œã¾ã™ã€‚\n" +"[method range]ã¯ã€å‡¦ç†å‰ã«ã™ã¹ã¦ã®å¼•æ•°ã‚’[int]ã«å¤‰æ›ã—ã¾ã™\n" +"[b]注:[/b] 値ã®åˆ¶ç´„を満ãŸã™å€¤ãŒãªã„å ´åˆã€ç©ºã®é…列を返ã—ã¾ã™ã€‚(例:" +"[code]range(2, 5, -1)[/code] ã¾ãŸã¯ [code]range(5, 5, 1)[/code])\n" +"Examples:\n" +"[codeblock]\n" +"print(range(4)) # [0, 1, 2, 3]ã¨å‡ºåŠ›ã™ã‚‹\n" +"print(range(2, 5)) # [2, 3, 4]ã¨å‡ºåŠ›ã™ã‚‹\n" +"print(range(0, 6, 2)) # [0, 2, 4]ã¨å‡ºåŠ›ã™ã‚‹\n" +"print(range(4, 1, -1)) # [4, 3, 2]ã¨å‡ºåŠ›ã™ã‚‹\n" +"[/codeblock]\n" +"[Array]を後方ã‹ã‚‰å‚ç…§ã™ã‚‹ã«ã¯\n" +"[codeblock]\n" +"var array = [3, 6, 9]\n" +"for i in range(array.size(), 0, -1):\n" +" print(array[i - 1])\n" +"[/codeblock]\n" +"Output:\n" +"[codeblock]\n" +"9\n" +"6\n" +"3\n" +"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -4465,6 +4505,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "ç”»åƒã¯ãƒã‚¹ãƒ¬ã‚¹åœ§ç¸®ã«ã‚ˆã‚Šåœ§ç¸®ã•ã‚Œã¦ã„ã‚‹ã¨ã„ã†ãƒ’ント。" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" "プãƒãƒ‘ティã¯ã‚·ãƒªã‚¢ãƒ©ã‚¤ã‚ºã•ã‚Œã€ã‚·ãƒ¼ãƒ³ãƒ•ã‚¡ã‚¤ãƒ«ã«ä¿å˜ã•ã‚Œã¾ã™ (デフォルト) 。" @@ -5298,8 +5358,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -9145,7 +9204,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -9370,8 +9432,12 @@ msgstr "" "[code]step[/code]ã¯ã‚¹ãƒ©ã‚¤ã‚¹ä¸ã®ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹é–“ã®å¤‰åŒ–を表ã—ã¾ã™ã€‚" #: doc/classes/Array.xml +#, fuzzy msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -9401,9 +9467,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -12624,12 +12694,14 @@ msgid "Clears the audio sample data buffer." msgstr "byteã§æ ¼ç´ã•ã‚ŒãŸã‚ªãƒ¼ãƒ‡ã‚£ã‚ªãƒ‡ãƒ¼ã‚¿ã§ã™ã€‚" #: doc/classes/AudioStreamGeneratorPlayback.xml +#, fuzzy msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" +"[code]name[/code] ã¨ã„ã†åå‰ã§æŒ‡å®šã—ãŸè¨å®šãŒå˜åœ¨ã™ã‚‹å ´åˆã¯ [code]true[/" +"code]ã€ãã†ã§ãªã„å ´åˆã¯ [code]false[/code] ã‚’è¿”ã—ã¾ã™ã€‚" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" @@ -13234,14 +13306,14 @@ msgstr "" #, fuzzy msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" "ç¾åœ¨è¡¨ç¤ºã•ã‚Œã¦ã„ã‚‹ç”»é¢ã‚’ãƒãƒƒã‚¯ãƒãƒƒãƒ•ã‚¡ãƒªãƒ³ã‚°ã™ã‚‹ãŸã‚ã®ãƒŽãƒ¼ãƒ‰ã€‚BackBufferCopy " @@ -13260,27 +13332,31 @@ msgid "Buffer mode. See [enum CopyMode] constants." msgstr "ãƒãƒƒãƒ•ã‚¡ãƒ¢ãƒ¼ãƒ‰ã€‚ [enum CopyMode]定数をå‚ç…§ã—ã¦ãã ã•ã„。" #: doc/classes/BackBufferCopy.xml +#, fuzzy msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" "BackBufferCopyã§ã‚«ãƒãƒ¼ã•ã‚Œã‚‹é ˜åŸŸã€‚ [member copy_mode]ãŒ[constant " "COPY_MODE_RECT]ã®å ´åˆã«ã®ã¿ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚" #: doc/classes/BackBufferCopy.xml +#, fuzzy msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" "ãƒãƒƒãƒ•ã‚¡ãƒªãƒ³ã‚° モードを無効ã«ã—ã¾ã™ã€‚ã¤ã¾ã‚Šã€BackBufferCopy ノードã¯ã€ã‚«ãƒãƒ¼" "ã™ã‚‹ç”»é¢ã®éƒ¨åˆ†ã‚’直接使用ã—ã¾ã™ã€‚" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +#, fuzzy +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "BackBufferCopyã¯çŸ©å½¢é ˜åŸŸã‚’ãƒãƒƒãƒ•ã‚¡ãƒªãƒ³ã‚°ã—ã¾ã™ã€‚" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +#, fuzzy +msgid "[BackBufferCopy] buffers the entire screen." msgstr "BackBufferCopy ã¯ç”»é¢å…¨ä½“ã‚’ãƒãƒƒãƒ•ã‚¡ãƒªãƒ³ã‚°ã—ã¾ã™ã€‚" #: doc/classes/BakedLightmap.xml @@ -22403,6 +22479,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -25251,7 +25335,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -36132,7 +36219,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -39500,7 +39589,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -39757,7 +39849,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -40489,6 +40584,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -43312,7 +43410,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -43832,11 +43932,11 @@ msgstr "指定ã•ã‚ŒãŸåå‰ã®ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ãƒŽãƒ¼ãƒ‰ã‚’è¿”ã—ã¾ã™ã€‚ #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -43870,11 +43970,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -43896,11 +43996,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -45792,6 +45892,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -53439,15 +53549,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -55065,17 +55182,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -55084,8 +55212,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -57829,7 +57963,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -59676,7 +59814,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -61322,7 +61462,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -61338,7 +61481,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -70808,10 +70953,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -70822,8 +70972,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -70980,7 +71130,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -71521,6 +71673,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/ko.po b/doc/translations/ko.po index a744804896..72a7780a4c 100644 --- a/doc/translations/ko.po +++ b/doc/translations/ko.po @@ -18,12 +18,13 @@ # 김태우 <ogosengi3@gmail.com>, 2022. # ì´ì§€ë¯¼ <jiminaleejung@gmail.com>, 2022. # nulltable <un5450@naver.com>, 2022. +# Godoto <aicompose@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-09-26 05:24+0000\n" -"Last-Translator: nulltable <un5450@naver.com>\n" +"PO-Revision-Date: 2022-10-18 18:00+0000\n" +"Last-Translator: Godoto <aicompose@gmail.com>\n" "Language-Team: Korean <https://hosted.weblate.org/projects/godot-engine/" "godot-class-reference/ko/>\n" "Language: ko\n" @@ -31,7 +32,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.14.1\n" +"X-Generator: Weblate 4.15-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -47,7 +48,7 @@ msgstr "ì†ì„±" #: doc/tools/make_rst.py msgid "Methods" -msgstr "메서드" +msgstr "방법" #: doc/tools/make_rst.py msgid "Theme Properties" @@ -55,11 +56,11 @@ msgstr "테마 ì†ì„±ë“¤" #: doc/tools/make_rst.py msgid "Signals" -msgstr "시그ë„" +msgstr "ì‹ í˜¸" #: doc/tools/make_rst.py msgid "Enumerations" -msgstr "열거형" +msgstr "목ë¡" #: doc/tools/make_rst.py msgid "Constants" @@ -626,7 +627,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -641,7 +643,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -1028,12 +1034,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3659,6 +3669,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4343,8 +4373,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7264,7 +7293,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7449,6 +7481,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7468,9 +7503,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10109,10 +10148,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10644,14 +10682,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10661,22 +10699,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19513,6 +19551,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22408,7 +22454,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -33147,7 +33196,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36475,7 +36526,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36725,7 +36779,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37442,6 +37499,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -40378,7 +40438,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40894,11 +40956,11 @@ msgstr "ë§¤ê°œë³€ìˆ˜ì˜ ì•„í¬ì‚¬ì¸ ê°’ì„ ë°˜í™˜í•©ë‹ˆë‹¤." #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40932,11 +40994,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40958,11 +41020,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42824,6 +42886,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -50425,15 +50497,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -52030,17 +52109,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -52049,8 +52139,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54766,7 +54862,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56603,7 +56703,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57981,7 +58083,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57997,7 +58102,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -67281,10 +67388,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -67295,8 +67407,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -67448,7 +67560,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67980,6 +68094,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/lt.po b/doc/translations/lt.po index f744f60e12..1cf0ffef48 100644 --- a/doc/translations/lt.po +++ b/doc/translations/lt.po @@ -485,7 +485,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -500,7 +501,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -873,12 +878,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3489,6 +3498,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4173,8 +4202,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7091,7 +7119,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7276,6 +7307,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7295,9 +7329,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9935,10 +9973,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10470,14 +10507,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10487,22 +10524,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19282,6 +19319,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22114,7 +22159,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32826,7 +32874,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36124,7 +36174,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36372,7 +36425,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37082,6 +37138,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39888,7 +39947,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40399,11 +40460,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40437,11 +40498,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40463,11 +40524,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42314,6 +42375,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49906,15 +49977,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51510,17 +51588,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51529,8 +51618,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54245,7 +54340,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56082,7 +56181,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57460,7 +57561,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57476,7 +57580,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66713,10 +66819,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66727,8 +66838,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66880,7 +66991,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67412,6 +67525,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/lv.po b/doc/translations/lv.po index 1b6d5f9cd5..fd9ddf6f51 100644 --- a/doc/translations/lv.po +++ b/doc/translations/lv.po @@ -490,7 +490,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -505,7 +506,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -878,12 +883,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3494,6 +3503,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4178,8 +4207,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7096,7 +7124,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7281,6 +7312,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7300,9 +7334,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9940,10 +9978,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10475,14 +10512,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10492,22 +10529,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19287,6 +19324,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22119,7 +22164,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32834,7 +32882,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36132,7 +36182,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36380,7 +36433,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37090,6 +37146,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39896,7 +39955,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40407,11 +40468,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40445,11 +40506,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40471,11 +40532,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42322,6 +42383,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49914,15 +49985,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51518,17 +51596,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51537,8 +51626,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54253,7 +54348,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56090,7 +56189,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57468,7 +57569,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57484,7 +57588,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66721,10 +66827,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66735,8 +66846,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66888,7 +66999,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67420,6 +67533,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/mr.po b/doc/translations/mr.po index 3636dbf68f..19db2e5f94 100644 --- a/doc/translations/mr.po +++ b/doc/translations/mr.po @@ -473,7 +473,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -488,7 +489,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -861,12 +866,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3477,6 +3486,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4161,8 +4190,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7079,7 +7107,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7264,6 +7295,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7283,9 +7317,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9923,10 +9961,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10458,14 +10495,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10475,22 +10512,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19270,6 +19307,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22102,7 +22147,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32814,7 +32862,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36112,7 +36162,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36360,7 +36413,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37070,6 +37126,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39876,7 +39935,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40387,11 +40448,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40425,11 +40486,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40451,11 +40512,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42302,6 +42363,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49894,15 +49965,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51498,17 +51576,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51517,8 +51606,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54233,7 +54328,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56070,7 +56169,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57448,7 +57549,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57464,7 +57568,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66701,10 +66807,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66715,8 +66826,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66868,7 +66979,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67400,6 +67513,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/nb.po b/doc/translations/nb.po index 9a861d8287..3b7f482e48 100644 --- a/doc/translations/nb.po +++ b/doc/translations/nb.po @@ -485,7 +485,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -500,7 +501,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -873,12 +878,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3489,6 +3498,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4173,8 +4202,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7091,7 +7119,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7276,6 +7307,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7295,9 +7329,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9935,10 +9973,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10470,14 +10507,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10487,22 +10524,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19282,6 +19319,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22114,7 +22159,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32826,7 +32874,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36124,7 +36174,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36372,7 +36425,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37082,6 +37138,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39888,7 +39947,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40399,11 +40460,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40437,11 +40498,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40463,11 +40524,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42314,6 +42375,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49906,15 +49977,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51510,17 +51588,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51529,8 +51618,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54245,7 +54340,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56082,7 +56181,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57460,7 +57561,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57476,7 +57580,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66713,10 +66819,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66727,8 +66838,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66880,7 +66991,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67412,6 +67525,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/ne.po b/doc/translations/ne.po index 84cf5c569c..c616f7b4e1 100644 --- a/doc/translations/ne.po +++ b/doc/translations/ne.po @@ -473,7 +473,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -488,7 +489,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -861,12 +866,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3477,6 +3486,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4161,8 +4190,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7079,7 +7107,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7264,6 +7295,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7283,9 +7317,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9923,10 +9961,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10458,14 +10495,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10475,22 +10512,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19270,6 +19307,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22102,7 +22147,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32814,7 +32862,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36112,7 +36162,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36360,7 +36413,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37070,6 +37126,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39876,7 +39935,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40387,11 +40448,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40425,11 +40486,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40451,11 +40512,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42302,6 +42363,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49894,15 +49965,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51498,17 +51576,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51517,8 +51606,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54233,7 +54328,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56070,7 +56169,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57448,7 +57549,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57464,7 +57568,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66701,10 +66807,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66715,8 +66826,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66868,7 +66979,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67400,6 +67513,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/nl.po b/doc/translations/nl.po index 6b89702dec..cf40d032cf 100644 --- a/doc/translations/nl.po +++ b/doc/translations/nl.po @@ -535,7 +535,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -550,7 +551,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -923,12 +928,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3547,6 +3556,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4231,8 +4260,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7149,7 +7177,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7334,6 +7365,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7353,9 +7387,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9993,10 +10031,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10528,14 +10565,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10545,22 +10582,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19340,6 +19377,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22172,7 +22217,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32887,7 +32935,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36185,7 +36235,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36433,7 +36486,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37143,6 +37199,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39949,7 +40008,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40460,11 +40521,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40498,11 +40559,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40524,11 +40585,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42375,6 +42436,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49967,15 +50038,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51571,17 +51649,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51590,8 +51679,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54307,7 +54402,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56144,7 +56243,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57522,7 +57623,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57538,7 +57642,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66775,10 +66881,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66789,8 +66900,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66942,7 +67053,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67474,6 +67587,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/pl.po b/doc/translations/pl.po index 0bc778f703..cd2bedd302 100644 --- a/doc/translations/pl.po +++ b/doc/translations/pl.po @@ -23,13 +23,14 @@ # Katarzyna Twardowska <katarina.twardowska@gmail.com>, 2022. # Mateusz ZdrzaÅ‚ek <matjozohd@gmail.com>, 2022. # Pixel Zone - Godot Engine Tutorials <karoltomaszewskimusic@gmail.com>, 2022. +# Filip GliszczyÅ„ski <filipgliszczynski@gmail.com>, 2022. +# Piotr Åšlusarz <piotrekslusarz@outlook.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-05-15 20:00+0000\n" -"Last-Translator: Pixel Zone - Godot Engine Tutorials " -"<karoltomaszewskimusic@gmail.com>\n" +"PO-Revision-Date: 2022-10-30 01:15+0000\n" +"Last-Translator: Piotr Åšlusarz <piotrekslusarz@outlook.com>\n" "Language-Team: Polish <https://hosted.weblate.org/projects/godot-engine/" "godot-class-reference/pl/>\n" "Language: pl\n" @@ -38,7 +39,7 @@ msgstr "" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 4.13-dev\n" +"X-Generator: Weblate 4.14.2-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -500,7 +501,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Compares two values by checking their actual contents, recursing into any " "[Array] or [Dictionary] up to its deepest level.\n" @@ -523,17 +523,17 @@ msgstr "" "Porównuje dwie wartoÅ›ci, sprawdzajÄ…c ich rzeczywistÄ… zawartość, przechodzÄ…c " "do dowolnej „tablicy†lub „sÅ‚ownika†aż do najgÅ‚Ä™bszego poziomu.\n" "Można to porównać do [code]==[/code] na kilka sposobów:\n" -"— Dla [kod]null[/code], [kod]int[/code], [code]float[/code], [code]String[/" +"— Dla [code]null[/code], [code]int[/code], [code]float[/code], [code]String[/" "code], [code]Object[/code] i [code] RID[/code] zarówno [code]deep_equal[/" "code], jak i [code]==[/code] dziaÅ‚ajÄ… tak samo.\n" "— W przypadku [code]SÅ‚ownik[/code] [code]==[/code] uwzglÄ™dnia równość wtedy " "i tylko wtedy, gdy obie zmienne wskazujÄ… ten sam [code]SÅ‚ownik[/code], bez " "rekurencji lub Å›wiadomoÅ›ci zawartość w ogóle.\n" -"— W przypadku [kod]Tablica[/kod] [kod]==[/kod] uwzglÄ™dnia równość wtedy i " -"tylko wtedy, gdy każdy element w pierwszej [kod]Tablica[/kod] jest równy " -"swojemu odpowiednikowi w drugiej [ kod]Tablica[/kod], jak mówi sam [kod]==[/" -"kod]. Oznacza to, że [code]==[/code] jest rekursywny w [code]Tablicy[/code], " -"ale nie w [code]SÅ‚owniku[/code].\n" +"— W przypadku [code]Tablica[/code] [code]==[/code] uwzglÄ™dnia równość wtedy " +"i tylko wtedy, gdy każdy element w pierwszej [code]Tablica[/code] jest równy " +"swojemu odpowiednikowi w drugiej [code]Tablica[/code], jak mówi sam " +"[code]==[/code]. Oznacza to, że [code]==[/code] jest rekursywny w " +"[code]Tablicy[/code], ale nie w [code]SÅ‚owniku[/code].\n" "Krótko mówiÄ…c, za każdym razem, gdy potencjalnie zaangażowany jest " "[code]SÅ‚ownik[/code], jeÅ›li chcesz prawdziwego porównania uwzglÄ™dniajÄ…cego " "zawartość, musisz użyć [code]deep_equal[/code]." @@ -619,7 +619,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Rounds [code]s[/code] downward (towards negative infinity), returning the " "largest whole number that is not more than [code]s[/code].\n" @@ -633,13 +632,12 @@ msgid "" "[code]s[/code] is a non-negative number, you can use [code]int(s)[/code] " "directly." msgstr "" -"ZaokrÄ…gla [code]s[/code] w dół (do nieskoÅ„czonoÅ›ci ujemnej), zwraca " +"ZaokrÄ…gla [code]s[/code] w dół (do ujemnej nieskoÅ„czonoÅ›ci), zwraca " "najwyższÄ… liczbÄ™ caÅ‚kowitÄ… która jest nie wiÄ™ksza niż [code]s[/code].\n" "[codeblock]\n" -"# a to 2.0\n" -"a = floor(2.99)\n" -"# a to-3.0\n" -"a = floor(-2.99)\n" +"a = floor(2.45) # a to 2.0\n" +"a = floor(2.99) # a to 2.0\n" +"a = floor(-2.99) # a to-3.0\n" "[/codeblock]\n" "[b]Informacja:[/b] Ta metoda zwraca liczbÄ™ zmiennoprzecinkowÄ…, jeżeli chcesz " "liczby caÅ‚kowitej użyj bezpoÅ›rednio metody [code]int(s)[/code]." @@ -725,8 +723,10 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -741,7 +741,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" "Zwraca tablicÄ™ sÅ‚owników reprezentujÄ…cÄ… obecny stos wykonywanych funkcji.\n" "[codeblock]\n" @@ -849,6 +853,26 @@ msgid "" "See also [method lerp] which performs the reverse of this operation, and " "[method range_lerp] to map a continuous series of values to another." msgstr "" +"Zwraca współczynnik interpolacji lub ekstrapolacji w zależnoÅ›ci od zakresu " +"zdefiniowanego w [code]from[/code] i [code]to[/code] oraz wartość " +"interopolowanÄ… zdefiniowanÄ… w [code]weight[/code]. Zwrócona wartość znajduje " +"siÄ™ pomiÄ™dzy [code]0.0[/code] i [code]1.0[/code] jeÅ›li [code]weight[/code] " +"jest pomiÄ™dzy [code]from[/code] i [code]to[/code] (wÅ‚Ä…cznie). JeÅ›li " +"[code]weight[/code] znajduje siÄ™ poza zakresem, współczynnik ekstrapolacji " +"zostanie zwrócony (zwraca wartość mniejszÄ… od [code]0.0[/code] lub wiÄ™kszÄ… " +"od [code]1.0[/code]). Użyj [method clamp] na wyniku [method inverse_lerp] " +"jeÅ›li chcesz tego uniknąć. \n" +"[codeblock] \n" +"# Stosunek interpolacji w zawoÅ‚aniu `lerp()` poniżej to 0.75. \n" +"var middle = lerp(20, 30, 0.75) \n" +"# `middle` ma teraz wartość 27.5. \n" +"# Teraz udajemy że zapomnieliÅ›my oryginalnego stosunku i chcemy go " +"spowrotem. \n" +"var ratio = inverse_lerp(20,30,27.5) \n" +"# `ratio` ma teraz wartość 0.75.\n" +"[/codeblock]\n" +"Zobacz również [method lerp] która powoduje odwrócenie tej operacji i " +"[method range_lerp] aby zmapować ciÄ…gÅ‚Ä… serie wartoÅ›ci do nastÄ™pnej." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1150,6 +1174,22 @@ msgid "" "[code]0[/code] rather than [code]1[/code] for non-positive values of " "[code]value[/code] (in reality, 1 is the smallest integer power of 2)." msgstr "" +"Zwraca najbliższÄ… wartość caÅ‚kowitÄ… [code]value[/code] równÄ… lub wyższÄ… " +"potÄ™dze dwójki.\n" +"Innymi sÅ‚owy, zwraca najmniejszÄ… wartość [code]a[/code] gdzie [code]a = " +"pow(2, n)[/code] wtedy i tylko wtedy gdy [code]value <= a[/code] dla jakiejÅ› " +"dodatniej liczby caÅ‚kowitej [code]n[/code].\n" +"[codeblock]\n" +"nearest_po2(3) # zwraca 4\n" +"nearest_po2(4) # zwraca 4\n" +"nearest_po2(5) # zwraca 8\n" +"\n" +"nearest_po2(0) # zwraca 0 (niekoniecznie czego byÅ› siÄ™ spodziewaÅ‚)\n" +"nearest_po2(-1) # zwraca 0 (niekoniecznie czego byÅ› siÄ™ spodziewaÅ‚)\n" +"[/codeblock]\n" +"[b]UWAGA:[/b] Z powodu sposobu implementacji, ta funkcja zwraca [code]0[/" +"code] w przeciwieÅ„stwie do [code]1[/code] dla ujemnych wartoÅ›ci [code]value[/" +"code] (w rzeczywistoÅ›ci, 1 jest najmniejszÄ… liczbÄ… caÅ‚kowitÄ… dla potÄ™gi z 2)." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1162,6 +1202,13 @@ msgid "" "[/codeblock]\n" "This is the inverse of [method char]." msgstr "" +"Zwraca liczbÄ™ caÅ‚kowitÄ… reprezentujÄ…cÄ… punkt kodu Unicode danego znaku " +"Unicode [code]char[/code]. [codeblock]\n" +"a = ord(\"A\") # a wynosi 65\n" +"a = ord(\"a\") # a wynosi 97\n" +"a = ord(\"€\") # a wynosi 8364\n" +"[/codeblock]\n" +"To jest odwrotność [metody char]." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1302,19 +1349,17 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" -"Wypisuje zrzut stosu w miejscu kodu, dziaÅ‚a tylko przy uruchamianiu z " -"wÅ‚Ä…czonym debuggerem.\n" -"Wynik w konsoli wyglÄ…dać może tak:\n" -"[codeblock]\n" -"Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -3981,6 +4026,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4665,8 +4730,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7593,7 +7657,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7778,6 +7845,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7797,9 +7867,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10438,10 +10512,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10973,14 +11046,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10990,22 +11063,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19814,6 +19887,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22656,7 +22737,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -33427,7 +33511,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36767,7 +36853,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -37023,7 +37112,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37745,6 +37837,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -40555,7 +40650,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -41074,11 +41171,11 @@ msgstr "Zwraca kÄ…t w radianach danego wektora." #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -41112,11 +41209,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -41138,11 +41235,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -43021,6 +43118,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -50624,15 +50731,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -52237,17 +52351,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -52256,8 +52381,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54976,7 +55107,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56814,7 +56949,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -58195,7 +58332,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -58211,7 +58351,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -67513,10 +67655,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -67527,8 +67674,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -67686,7 +67833,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -68218,6 +68367,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/pt.po b/doc/translations/pt.po index fce62b474f..d3d9b9aadf 100644 --- a/doc/translations/pt.po +++ b/doc/translations/pt.po @@ -18,8 +18,8 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-08-25 13:04+0000\n" -"Last-Translator: Baiterson <baiter160@gmail.com>\n" +"PO-Revision-Date: 2022-11-18 16:48+0000\n" +"Last-Translator: ssantos <ssantos@web.de>\n" "Language-Team: Portuguese <https://hosted.weblate.org/projects/godot-engine/" "godot-class-reference/pt/>\n" "Language: pt\n" @@ -27,7 +27,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.14-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -95,7 +95,7 @@ msgstr "Setter" #: doc/tools/make_rst.py msgid "value" -msgstr "valor" +msgstr "Valor" #: doc/tools/make_rst.py msgid "Getter" @@ -721,8 +721,10 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -737,7 +739,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" "Retorna uma list de dicionários representando a pilha de chamada atual.\n" "[codeblock]\n" @@ -1386,19 +1392,17 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" -"Imprime a pilha de chamadas no local do código, só funciona com o depurador " -"ativado.\n" -"SaÃda no console vai parecer assim:\n" -"[codeblock]\n" -"Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -4471,6 +4475,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -5159,8 +5183,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -8090,7 +8113,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -8275,6 +8301,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -8294,9 +8323,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10934,10 +10967,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -11469,14 +11501,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -11486,22 +11518,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -20332,6 +20364,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "A altura do cilindro." @@ -23167,7 +23207,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -24995,7 +25038,7 @@ msgstr "" #: doc/classes/File.xml msgid "File system" -msgstr "" +msgstr "Sistema de arquivos" #: doc/classes/File.xml msgid "" @@ -33909,7 +33952,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -37237,7 +37282,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -37488,7 +37536,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -38205,6 +38256,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -38878,9 +38932,8 @@ msgid "" msgstr "" #: doc/classes/Node.xml -#, fuzzy msgid "Nodes and Scenes" -msgstr "Nós e Cenas" +msgstr "Nós e cenas" #: doc/classes/Node.xml msgid "All Demos" @@ -41015,7 +41068,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -41528,11 +41583,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -41566,11 +41621,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -41592,11 +41647,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -43446,6 +43501,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -51104,15 +51169,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -52708,17 +52780,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -52727,8 +52810,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -55446,7 +55535,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -57285,7 +57378,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -58681,7 +58776,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -58697,7 +58795,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -67998,10 +68098,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -68012,8 +68117,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -68165,7 +68270,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -68697,6 +68804,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/pt_BR.po b/doc/translations/pt_BR.po index f6705f5e4c..463bc9c957 100644 --- a/doc/translations/pt_BR.po +++ b/doc/translations/pt_BR.po @@ -43,12 +43,14 @@ # lucas rossy brasil coelho <lucasrossy270@gmail.com>, 2022. # Felipe Kinoshita <kinofhek@gmail.com>, 2022. # Mr.Albino <ricmorsoleto@gmail.com>, 2022. +# Zer0-Zer0 <dankmemerson@tutanota.com>, 2022. +# Julio Yagami <juliohenrique31501234@hotmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-08-21 06:02+0000\n" -"Last-Translator: Jaide Alonso Ambrosio <jaide.sp@gmail.com>\n" +"PO-Revision-Date: 2022-12-09 19:48+0000\n" +"Last-Translator: Julio Yagami <juliohenrique31501234@hotmail.com>\n" "Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/" "godot-engine/godot-class-reference/pt_BR/>\n" "Language: pt_BR\n" @@ -56,7 +58,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.14-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -527,7 +529,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Compares two values by checking their actual contents, recursing into any " "[Array] or [Dictionary] up to its deepest level.\n" @@ -548,13 +549,13 @@ msgid "" "code]." msgstr "" "Compara dois valores, verificando seu conteúdo real, recorrendo a qualquer " -"`Array` ou `Dicionário` até o seu nÃvel mais profundo.\n" +"[Array] ou [Dictionary] até o seu nÃvel mais profundo.\n" "Isso se compara a [code]==[/code] de várias maneiras:\n" "- Para [code]null[/code], [code]int[/code], [code]float[/code], " "[code]String[/code], [code]Object[/code] e [code]RID[/code] tanto " "[code]deep_equal[/code] quanto [code]==[/code] funcionam da mesma maneira.\n" "- Para [code]Dictionary[/code], [code]==[code] considera igualdade se, e " -"somente se, ambas as variáveis apontarem para o mesmo [code]Dictionary[/" +"somente se, ambas as variáveis apontaram para o mesmo [code]Dictionary[/" "code], sem nenhuma recorrência ou consciência do conteúdo.\n" "- Para [code]Array[/code], [code]==[/code] considera igualdade se, e somente " "se, cada item no primeiro [code]Array[/code] for igual a sua contraparte no " @@ -586,7 +587,6 @@ msgstr "" "inst2dict]), de volta em uma instância. Útil para desserialização." #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns an \"eased\" value of [code]x[/code] based on an easing function " "defined with [code]curve[/code]. This easing function is based on an " @@ -615,7 +615,7 @@ msgstr "" "- Menor que -1.0 (exclusivo): Ease in-out\n" "- 1.0: Linear\n" "- Entre -1.0 e 0.0 (exclusivo): Ease out-in\n" -"- 0.0: Constant\n" +"- 0.0: Constante\n" "- Entre 0.0 e 1.0 (exclusivo): Ease in\n" "- 1.0: Linear\n" "- Maior que 1.0 (exclusivo): Ease out\n" @@ -752,8 +752,10 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -768,7 +770,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" "Retorna uma list de dicionários representando a pilha de chamada atual.\n" "[codeblock]\n" @@ -949,7 +955,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Linearly interpolates between two values by the factor defined in " "[code]weight[/code]. To perform interpolation, [code]weight[/code] should be " @@ -973,24 +978,25 @@ msgid "" msgstr "" "Interpola linearmente entre dois valores pelo fator definido em " "[code]weight[/code]. Para realizar a interpolação, [code]weight[/code] deve " -"estar entre [code]0.0[/code] e [code]1.0[/code] (inclusive). No entanto, " +"estar entre [code]0.0[/code] e [code]1.0[/code] (inclusivo). No entanto, " "valores fora desse intervalo são permitidos e podem ser usados para realizar " -"[i]extrapolação[/i].\n" +"[i]extrapolação[/i]. Use [method clamp] no resultado de [method lerp] se " +"isso não é desejado.\n" "Se os argumentos [code]from[/code] e [code]to[/code] forem do tipo [int] ou " "[float], o valor de retorno será um [float].\n" "Se ambos forem do mesmo tipo de vetor ([Vector2], [Vector3] ou [Color]), o " "valor de retorno será do mesmo tipo([code]lerp[/code] então chama o método " "[code]linear_interpolate[/code] do tipo de vetor).\n" "[codeblock]\n" -"lerp(0, 4, 0,75) # Retorna 3,0\n" +"lerp(0, 4, 0,75) # Retorna 3.0\n" "lerp(Vetor2(1, 5), Vetor2(3, 2), 0.5) # Retorna Vetor2(2, 3.5)\n" "[/codeblock]\n" "Veja também [method inverse_lerp] que realiza o inverso desta operação. Para " "realizar a interpolação facilitada com [method lerp], combine-o com [method " -"ease] ou [method smoothstep]." +"ease] ou [method smoothstep]. Seja também [method range_lerp] para mapear " +"uma serie contÃnua de valores um para o outro." #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Linearly interpolates between two angles (in radians) by a normalized " "value.\n" @@ -1013,19 +1019,30 @@ msgid "" "example, [code]lerp_angle(0, PI, weight)[/code] lerps counter-clockwise, " "while [code]lerp_angle(0, PI + 5 * TAU, weight)[/code] lerps clockwise." msgstr "" -"Faz a interpolação linear entre dois ângulos (em radianos) por um valor " +"Interpola linearmente entre dois ângulos (em radianos) por um valor " "normalizado.\n" "Semelhante à [method lerp], mas faz a interpolação corretamente quando os " -"ângulos passam através de [constant @GDScript.TAU].\n" +"ângulos passam através de [constant @GDScript.TAU]. Para realizar " +"interpolação facilitada com [method lerp_angle], combine com [method ease] " +"ou [method smoothstep].\n" "[codeblock]\n" "extends Sprite\n" -"var elapsed = 0.0\n" +"var tempo_decorrido = 0.0\n" "func _process(delta):\n" -" var min_angle = deg2rad(0.0)\n" -" var max_angle = deg2rad(90.0)\n" -" rotation = lerp_angle(min_angle, max_angle, elapsed)\n" -" elapsed += delta\n" -"[/codeblock]" +" var ângulo_mÃnimo = deg2rad(0.0)\n" +" var ângulo_máximo = deg2rad(90.0)\n" +" rotação = ângulo_interpolação(ângulo_mÃnimo, ângulo_máximo, " +"tempo_decorrido)\n" +" tempo_decorrido += delta\n" +"[/codeblock]\n" +"[b]Nota:[/b] Esse método interpola linearmente através do caminho mais curto " +"entre [code]from[/code] e [code]to[/code]. Entretanto, quando esses dois " +"ângulos estão aproximadamente [code]PI + k * TAU[/code] aparte para qualquer " +"inteiro [code]k[/code], não é óbvio para qual lado eles interpolam devido à " +"erros de precisão de pontos flutuantes. Por exemplo, " +"[code]ângulo_interpolação(0, PI, weight)[/code] interpola no sentido anti-" +"horário, enquanto [code]ângulo_interpolação(0, PI + 5 * TAU, weight)[/code] " +"interpola no sentido horário." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1395,19 +1412,17 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" -"Imprime a pilha de chamadas no local do código, só funciona com o depurador " -"habilitado.\n" -"SaÃda no console vai parecer assim:\n" -"[codeblock]\n" -"Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1645,8 +1660,46 @@ msgid "" "3\n" "[/codeblock]" msgstr "" +"Retorna um [i]array[/i] com o alcance dado. [method range] pode ser chamado " +"de três maneiras:\n" +"[code]range(n: int)[/code]: Começa do 0, aumenta em passos de 1, e para " +"[i]antes[/i] do [code]n[/code]. O argumento [code]n[/code] é [b]exclusivo[/" +"b].\n" +"[code]range(b: int, n: int)[/code]: Começa do [code]b[/code], aumenta em " +"passos de 1, e para [i]antes[/i] do [code]n[/code]. Os argumentos [code]b[/" +"code] e [code]n[/code] são [b]inclusivo[/b] e [b]exclusivo[/b], " +"respectivamente.\n" +"[code]range(b: int, n: int, s: int)[/code]: Começa do [code]b[/code], " +"aumenta/diminui em passos de [code]s[/code], e para [i]antes[/i] do [code]n[/" +"code]. Os argumentos [code]b[/code] e [code]n[/code] são [b]inclusivo[/b] e " +"[b]exclusivo[/b], respectivamente. O argumento [code]s[/code] [b]pode[/b] " +"ser negativo, mas não [code]0[/code]. Se [code]s[/code] é [code]0[/code], " +"uma mensagem de erro é mostrada.\n" +"[method range] converte todos os argumentos para [int] antes de processar.\n" +"[b]Nota:[/b] Retorna um [i]array[/i] vazio se nenhum valor satisfaz o valor " +"exigido (e.g. [code]range(2, 5, -1)[/code] ou [code]range(5, 5, 1)[/code]).\n" +"Exemplos:\n" +"[codeblock]\n" +"print(range(4)) # Imprime [0, 1, 2, 3]\n" +"print(range(2, 5)) # Imprime [2, 3, 4]\n" +"print(range(0, 6, 2)) # Imprime [0, 2, 4]\n" +"print(range(4, 1, -1)) # Imprime [4, 3, 2]\n" +"[/codeblock]\n" +"Para repetir sobre um [Array] ao contrário, use:\n" +"[codeblock]\n" +"var array = [3, 6, 9]\n" +"for i in range(array.size(), 0, -1):\n" +" print(array[i - 1])\n" +"[/codeblock]\n" +"SaÃda:\n" +"[codeblock]\n" +"9\n" +"6\n" +"3\n" +"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" "Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]" "[ostart, ostop][/code]. See also [method lerp] and [method inverse_lerp]. If " @@ -1659,6 +1712,17 @@ msgid "" "For complex use cases where you need multiple ranges, consider using [Curve] " "or [Gradient] instead." msgstr "" +"Mapeia um [code]value[/code] do intervalo [code][istart, istop][/code] para " +"[code][ostart, ostop][/code]. Veja também [method lerp] e [method " +"inverse_lerp]. Se [code]value[/code] estiver fora de [code][istart, istop][/" +"code], então o valor resultante também será fora de [code][ostart, ostop][/" +"code]. Use [method clamp] no resultado de [method range-lerp] se não for " +"desejado.\n" +"[codeblock]\n" +"range_lerp(75, 0, 100, -1, 1) # Retorna 0.5\n" +"[/codeblock]\n" +"Para casos de uso complexos em que você precise de múltiplos intervalos, " +"considere usar [Curve] ou [Gradient]." #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -3956,34 +4020,49 @@ msgstr "" "Windows MR)." #: doc/classes/@GlobalScope.xml +#, fuzzy msgid "" "MIDI note OFF message. See the documentation of [InputEventMIDI] for " "information of how to use MIDI inputs." msgstr "" +"Mensagem de nota MIDI OFF. Veja a documentação sobre [InputEventMIDI] para " +"mais informações sobre como usar entradas MIDI." #: doc/classes/@GlobalScope.xml +#, fuzzy msgid "" "MIDI note ON message. See the documentation of [InputEventMIDI] for " "information of how to use MIDI inputs." msgstr "" +"Mensagem ON da nota MIDI. Veja a documentação do [InputEventMIDI] para mais " +"informações sobre como usar entradas MIDI." #: doc/classes/@GlobalScope.xml msgid "" "MIDI aftertouch message. This message is most often sent by pressing down on " "the key after it \"bottoms out\"." msgstr "" +"Mensagem MIDI de toque posterior. Esta mensagem é geralmente enviada ao " +"pressionar a tecla após ela \"ir de fundo pra fora\"." #: doc/classes/@GlobalScope.xml +#, fuzzy msgid "" "MIDI control change message. This message is sent when a controller value " "changes. Controllers include devices such as pedals and levers." msgstr "" +"Mensagem de alteração do controlador MIDI. Esta mensagem é enviada quando o " +"valor de um controlador muda. Controladores incluem dispositivos como pedais " +"e alavancas." #: doc/classes/@GlobalScope.xml +#, fuzzy msgid "" "MIDI program change message. This message sent when the program patch number " "changes." msgstr "" +"Mensagem de alteração do programa MIDI. Esta mensagem é enviada quando o " +"número de patch do programa muda." #: doc/classes/@GlobalScope.xml msgid "" @@ -4498,6 +4577,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "A propriedade é serializada e salva no arquivo de cena (padrão)." @@ -5195,8 +5294,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -8144,7 +8242,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -8329,6 +8430,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -8348,9 +8452,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10990,10 +11098,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -11525,14 +11632,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -11542,22 +11649,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -15656,7 +15763,7 @@ msgstr "" #: doc/classes/Color.xml msgid "Chocolate color." -msgstr "Cor chocolate" +msgstr "Cor chocolate." #: doc/classes/Color.xml msgid "Coral color." @@ -20442,6 +20549,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "A altura do cilindro." @@ -23280,7 +23395,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -34072,7 +34190,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -37411,7 +37531,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -37664,7 +37787,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -38389,6 +38515,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -41199,7 +41328,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -41716,11 +41847,11 @@ msgstr "Retorna o ângulo para o vetor dado, em radianos." #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -41754,11 +41885,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -41780,11 +41911,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -43666,6 +43797,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -51274,15 +51415,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -52886,17 +53034,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -52905,8 +53064,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -55625,7 +55790,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -57467,7 +57636,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -58866,7 +59037,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -58882,7 +59056,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -68220,10 +68396,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -68234,8 +68415,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -68393,7 +68574,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -68926,6 +69109,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" @@ -77080,10 +77279,10 @@ msgstr "" "Classifique todos os nós filhos com base em suas posições Y. O nó filho deve " "herdar de [CanvasItem] para ser classificado. Os nós que têm uma posição Y " "mais alta serão desenhados mais tarde, então eles aparecerão no topo dos nós " -"que têm uma posição Y mais baixa. O aninhamento de nós YSort é possÃvel. Os " -"nós YSort filhos serão classificados no mesmo espaço que o YSort pai, " -"permitindo organizar melhor uma cena ou dividi-la em várias outras, mas " -"manter a classificação única." +"que têm uma posição Y mais baixa.\n" +"O aninhamento de nós YSort é possÃvel.Os nós YSort filhos serão " +"classificados no mesmo espaço que o YSort pai, permitindo organizar melhor " +"uma cena ou dividi-la em várias outras, mas manter a classificação única." #: doc/classes/YSort.xml msgid "" diff --git a/doc/translations/ro.po b/doc/translations/ro.po index 04f1a17b66..dd88e8d66b 100644 --- a/doc/translations/ro.po +++ b/doc/translations/ro.po @@ -501,7 +501,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -516,7 +517,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -889,12 +894,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3509,6 +3518,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4193,8 +4222,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7111,7 +7139,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7296,6 +7327,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7315,9 +7349,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9955,10 +9993,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10490,14 +10527,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10507,22 +10544,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19302,6 +19339,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22134,7 +22179,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32849,7 +32897,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36147,7 +36197,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36395,7 +36448,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37106,6 +37162,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39912,7 +39971,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40423,11 +40484,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40461,11 +40522,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40487,11 +40548,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42338,6 +42399,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49930,15 +50001,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51534,17 +51612,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51553,8 +51642,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54269,7 +54364,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56106,7 +56205,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57484,7 +57585,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57500,7 +57604,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66737,10 +66843,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66751,8 +66862,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66904,7 +67015,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67436,6 +67549,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/ru.po b/doc/translations/ru.po index b590ff4014..9d569d7760 100644 --- a/doc/translations/ru.po +++ b/doc/translations/ru.po @@ -24,7 +24,7 @@ # Ð§Ñ‚Ð°Ð±Ñ <chtabs2k19@gmail.com>, 2021. # Nikita Blizniuk <BliznyukNM@gmail.com>, 2021. # Сергей Волков <zerosar4@gmail.com>, 2021. -# Alexander Sinitsyn <almoig747@gmail.com>, 2021. +# Alexander Sinitsyn <almoig747@gmail.com>, 2021, 2022. # Ð¢Ð¾Ð»Ñ Ð‘Ð¾Ð³Ð¾Ð¼Ð¾Ð»Ð¾Ð² <tolya.bogomolov2004@gmail.com>, 2021. # Rustam Alieskerov <rustam.aleskerov7@gmail.com>, 2021, 2022. # Vladimir Svity <development.openworld@gmail.com>, 2021. @@ -54,12 +54,15 @@ # Lost Net <pc.mirkn@gmail.com>, 2022. # Vladimir Kirillovskiy <vladimir.kirillovskiy@gmail.com>, 2022. # motismob <evt.mixail@ya.ru>, 2022. +# Handsless coder <yfintktajy1@gmail.com>, 2022. +# Evgeniy Khramov <thejenjagamertjg@gmail.com>, 2022. +# Григорий <bolon667@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-09-16 07:12+0000\n" -"Last-Translator: Rish Alternative <ii4526668@gmail.com>\n" +"PO-Revision-Date: 2022-12-06 11:48+0000\n" +"Last-Translator: Григорий <bolon667@gmail.com>\n" "Language-Team: Russian <https://hosted.weblate.org/projects/godot-engine/" "godot-class-reference/ru/>\n" "Language: ru\n" @@ -68,7 +71,7 @@ msgstr "" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 4.14.1-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -598,7 +601,6 @@ msgstr "" "ÑкземплÑÑ€ объекта. Полезно Ð´Ð»Ñ Ð´ÐµÑериализации." #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns an \"eased\" value of [code]x[/code] based on an easing function " "defined with [code]curve[/code]. This easing function is based on an " @@ -632,7 +634,7 @@ msgstr "" "- Больше 1,0 (не включаÑ): Облегчение вхождениÑ(только вход)\n" "[/codeblock]\n" "[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.4/img/" -"ease_cheatsheet.png]ease() Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ ÐºÑ€Ð¸Ð²Ð¾Ð¹ шпаргалка[/url]\n" +"ease_cheatsheet.png]ease() шпаргалка значений кривой[/url]\n" "См. также [метод smoothstep]. ЕÑли вам нужно выполнить более Ñложные " "переходы, иÑпользуйте [Tween] или [AnimationPlayer]." @@ -764,8 +766,10 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -780,7 +784,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" "Возвращает маÑÑив Ñловарей, предÑтавлÑющий текущий Ñтек вызовов.\n" "[codeblock]\n" @@ -866,7 +874,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns an interpolation or extrapolation factor considering the range " "specified in [code]from[/code] and [code]to[/code], and the interpolated " @@ -890,13 +897,13 @@ msgid "" "[method range_lerp] to map a continuous series of values to another." msgstr "" "Возвращает коÑффициент интерполÑции или ÑкÑтраполÑции Ñ ÑƒÑ‡ÐµÑ‚Ð¾Ð¼ диапазона, " -"указанного в [code]от[/code] и [code]до[/code], и интерполированное " -"значение, указанное в [code]веÑе[/code]. Возвращаемое значение будет " -"находитьÑÑ Ð² диапазоне [code]0.0[/code] and [code]1.0[/code] еÑли [code]веÑ[/" -"code] находитÑÑ Ð¼ÐµÐ¶Ð´Ñƒ [code]от[/code] и [code]до[/code] (включительно). ЕÑли " -"[code]веÑ[/code] находитÑÑ Ð·Ð° пределами Ñтого диапазона, то будет возвращён " -"коÑффициент ÑкÑтраполÑции (возвращаемое значение меньше [code]0.0[/code] или " -"больше [code]1.0[/code]).\n" +"указанного в [code]from[/code] и [code]to[/code], и интерполированное " +"значение, указанное в [code]weight[/code]. Возвращаемое значение будет " +"находитьÑÑ Ð² диапазоне от [code]0.0[/code] до [code]1.0[/code], еÑли " +"[code]weight[/code] находитÑÑ Ð¼ÐµÐ¶Ð´Ñƒ [code]from[/code] и [code]to[/code] " +"(включительно). ЕÑли [code]weight[/code] находитÑÑ Ð·Ð° пределами Ñтого " +"диапазона, то будет возвращён коÑффициент ÑкÑтраполÑции (возвращаемое " +"значение меньше [code]0.0[/code] или больше [code]1.0[/code]).\n" "[codeblock]\n" "# КоÑффициент интерполÑции в приведённом ниже вызове `lerp()` ÑоÑтавлÑет " "0,75.\n" @@ -979,7 +986,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Linearly interpolates between two values by the factor defined in " "[code]weight[/code]. To perform interpolation, [code]weight[/code] should be " @@ -1002,11 +1008,11 @@ msgid "" "continuous series of values to another." msgstr "" "Линейно интерполирует между Ð´Ð²ÑƒÐ¼Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñми Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ коÑффициента, " -"определенного в [code]weight[/code]. Ð”Ð»Ñ Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¸Ð½Ñ‚ÐµÑ€Ð¿Ð¾Ð»Ñции [code]веÑ[/" -"code] должен ÑоÑтавлÑÑ‚ÑŒ от [code]0.0[/code] до [code]1.0[/code] " +"определенного в [code]weight[/code]. Ð”Ð»Ñ Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¸Ð½Ñ‚ÐµÑ€Ð¿Ð¾Ð»Ñции " +"[code]weight[/code] должен быть между [code]0.0[/code] и [code]1.0[/code] " "(включительно). Однако Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð·Ð° пределами Ñтого диапазона разрешены и " "могут быть иÑпользованы Ð´Ð»Ñ Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ [i]ÑкÑтраполÑции[/i].\n" -"ЕÑли аргументы [code]от[/code] и [code]до[/code] имеют тип [int] или " +"ЕÑли аргументы [code]from[/code] и [code]to[/code] имеют тип [int] или " "[float], возвращаемое значение будет [float].\n" "ЕÑли оба Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¸Ð¼ÐµÑŽÑ‚ одинаковый векторный тип ([Vector2], [Vector3] или " "[Color]), возвращаемое значение будет одного типа ([code]lerp[/code], затем " @@ -1432,18 +1438,17 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" -"Печатает трек Ñтека вызовов, работает только еÑли включён отладчик.\n" -"Вывод в конÑоли будет выглÑдеть примерно так:\n" -"[codeblock]\n" -"Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -1814,7 +1819,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns the result of smoothly interpolating the value of [code]s[/code] " "between [code]0[/code] and [code]1[/code], based on the where [code]s[/code] " @@ -1842,33 +1846,28 @@ msgstr "" "Возвращает результат плавной интерполÑции Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ [code]s[/code] между " "[code]0[/code] и [code]1[/code], в завиÑимоÑти от того, где находитÑÑ " "[code]s[/code] отноÑительно [code]from[/code] и [code]to[/code].\n" -"\n" "Возвращаемое значение равно [code]0[/code], еÑли [code]s <= from[/code] и " "[code]1[/code], еÑли[code]s >= to[/code]. ЕÑли [code]s[/code] находитÑÑ " "между [code]from[/code] и [code]to[/code], то возвращаемое значение Ñледует " "S-образной кривой, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ ÑоответÑтвует значению [code]s[/code] между " "[code]0[/code] и [code]1[/code].\n" -"\n" "S-Ð¾Ð±Ñ€Ð°Ð·Ð½Ð°Ñ ÐºÑ€Ð¸Ð²Ð°Ñ ÑвлÑетÑÑ ÐºÑƒÐ±Ð¸Ñ‡ÐµÑким Ñрмитовым Ñплайном, заданным функцией " "[code]f(s) = 3*s^2 - 2*s^3[/code].\n" -"\n" "[codeblock]\n" -"smoothstep(0, 2, -5.0) # Returns 0.0\n" -"smoothstep(0, 2, 0.5) # Returns 0.15625\n" -"smoothstep(0, 2, 1.0) # Returns 0.5\n" -"smoothstep(0, 2, 2.0) # Returns 1.0\n" +"smoothstep(0, 2, -5.0) # Возвращает 0.0\n" +"smoothstep(0, 2, 0.5) # Возвращает 0.15625\n" +"smoothstep(0, 2, 1.0) # Возвращает 0.5\n" +"smoothstep(0, 2, 2.0) # Возвращает 1.0\n" "[/codeblock]\n" -"\n" -"Compared to [method ease] with a curve value of [code]-1.6521[/code], " -"[method smoothstep] returns the smoothest possible curve with no sudden " -"changes in the derivative. If you need to perform more advanced transitions, " -"use [Tween] or [AnimationPlayer].\n" +"Ð’ Ñравнении Ñ [method ease] Ñо значение кривой [code]-1.6521[/code], [метод " +"smoothstep] возвращает наиболее плавную кривую без внезапных изменений " +"производной. ЕÑли вам нужно выполнить более продвинутые перемещениÑ, " +"иÑпользуйте [Tween] или [AnimationPlayer].\n" "[url=https://raw.githubusercontent.com/godotengine/godot-docs/3.5/img/" -"smoothstep_ease_comparison.png]Comparison between smoothstep() and ease(x, " -"-1.6521) return values[/url]" +"smoothstep_ease_comparison.png]Сравнение возвращаемых значений smoothstep() " +"и ease(x, -1.6521)[/url]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns the square root of [code]s[/code], where [code]s[/code] is a non-" "negative number.\n" @@ -1888,7 +1887,6 @@ msgstr "" "Numerics.Complex[/code] в C#." #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns the position of the first non-zero digit, after the decimal point. " "Note that the maximum return value is 10, which is a design decision in the " @@ -1903,12 +1901,9 @@ msgstr "" "внимание, что макÑимальное возвращаемое значение – Ñто 10, что ÑвлÑетÑÑ " "проектным решением при реализации.\n" "[codeblock]\n" -"# n равно 0\n" -"n = step_decimals(5)\n" -"# n равно 4\n" -"n = step_decimals(1.0005)\n" -"# n равно 9\n" -"n = step_decimals(0.000000005)\n" +"n = step_decimals(5) # n равно 0\n" +"n = step_decimals(1.0005) # n равно 4\n" +"n = step_decimals(0.000000005) # n равно 9\n" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml @@ -1952,7 +1947,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Converts a formatted string that was returned by [method var2str] to the " "original value.\n" @@ -1962,8 +1956,8 @@ msgid "" "print(b[\"a\"]) # Prints 1\n" "[/codeblock]" msgstr "" -"Преобразует форматированную Ñтроку, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð±Ñ‹Ð»Ð° возвращена [method var2str] " -"в иÑходное значение.\n" +"Преобразует форматированную Ñтроку, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð±Ñ‹Ð»Ð° возвращена [методом " +"var2str] в иÑходное значение.\n" "[codeblock]\n" "a = '{ \"a\": 1, \"b\": 2 }'\n" "b = str2var(a)\n" @@ -1983,7 +1977,6 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns the hyperbolic tangent of [code]s[/code].\n" "[codeblock]\n" @@ -1994,7 +1987,7 @@ msgstr "" "Возвращает гиперболичеÑкий Ñ‚Ð°Ð½Ð³ÐµÐ½Ñ [code]s[/code].\n" "[codeblock]\n" "a = log(2.0) # Возвращает 0.693147\n" -"tanh(a) # Возвращает 0.6\n" +"b = tanh(a) # Возвращает 0.6\n" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml @@ -2031,7 +2024,6 @@ msgstr "" "См. также [JSON] Ð´Ð»Ñ Ð°Ð»ÑŒÑ‚ÐµÑ€Ð½Ð°Ñ‚Ð¸Ð²Ð½Ð¾Ð³Ð¾ Ð¿Ñ€ÐµÐ¾Ð±Ñ€Ð°Ð·Ð¾Ð²Ð°Ð½Ð¸Ñ [Variant] в JSON Ñтроку." #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Returns whether the given class exists in [ClassDB].\n" "[codeblock]\n" @@ -2041,7 +2033,7 @@ msgid "" msgstr "" "Возвращает, ÑущеÑтвует ли данный клаÑÑ Ð² [ClassDB].\n" "[codeblock]\n" -"type_exists(\"Sprite2D\") # Возвращает true\n" +"type_exists(\"Sprite\") # Возвращает true\n" "type_exists(\"Variant\") # Возвращает false\n" "[/codeblock]" @@ -2092,13 +2084,12 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml -#, fuzzy msgid "" "Encodes a variable value to a byte array. When [code]full_objects[/code] is " "[code]true[/code] encoding objects is allowed (and can potentially include " "code)." msgstr "" -"Кодирует значение переменной в маÑÑив байт. ЕÑли [code]full_objects[/code] " +"Кодирует значение переменной в маÑÑив байтов. ЕÑли [code]full_objects[/code] " "равен [code]true[/code], кодирование объектов разрешено (и потенциально " "может включать код)." @@ -2859,12 +2850,10 @@ msgid "Help key." msgstr "Клавиша помощи." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Left Direction key." msgstr "Клавиша Ð½Ð°Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð²Ð»ÐµÐ²Ð¾." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Right Direction key." msgstr "Клавиша Ð½Ð°Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð²Ð¿Ñ€Ð°Ð²Ð¾." @@ -2876,19 +2865,16 @@ msgstr "" "уÑтройÑтвах Android." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Media forward key." msgstr "Клавиша запиÑи мультимедиа." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Media stop key." msgstr "Клавиша оÑтановки мультимедиа." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Media refresh key." -msgstr "Клавиша запиÑи мультимедиа." +msgstr "Клавиша Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¼ÑƒÐ»ÑŒÑ‚Ð¸Ð¼ÐµÐ´Ð¸Ð°." #: doc/classes/@GlobalScope.xml msgid "Volume down key." @@ -2907,22 +2893,18 @@ msgid "Bass Boost key." msgstr "Клавиша уÑÐ¸Ð»ÐµÐ½Ð¸Ñ Ð½Ð¸Ð·ÐºÐ¸Ñ… чаÑтот." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Bass up key." msgstr "Клавиша ÑƒÐ²ÐµÐ»Ð¸Ñ‡ÐµÐ½Ð¸Ñ Ð±Ð°Ñов." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Bass down key." msgstr "Клавиша ÑƒÐ¼ÐµÐ½ÑŒÑˆÐµÐ½Ð¸Ñ Ð½Ð¸Ð·ÐºÐ¸Ñ… чаÑтот." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Treble up key." msgstr "Клавиша ÑƒÐ²ÐµÐ»Ð¸Ñ‡ÐµÐ½Ð¸Ñ Ð²Ñ‹Ñоких чаÑтот." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Treble down key." msgstr "Клавиша ÑƒÐ¼ÐµÐ½ÑŒÑˆÐµÐ½Ð¸Ñ Ð²Ñ‹Ñоких чаÑтот." @@ -2952,12 +2934,10 @@ msgid "Home page key." msgstr "Клавиша домашней Ñтраницы." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Favorites key." -msgstr "Клавиша избранного." +msgstr "Клавиша \"Избранное\"." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Search key." msgstr "Клавиша поиÑка." @@ -4424,7 +4404,6 @@ msgid "Skip error." msgstr "Ошибка \"Пропущено\"." #: doc/classes/@GlobalScope.xml -#, fuzzy msgid "Help error." msgstr "Ошибка Ñправки." @@ -4661,6 +4640,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "Указывает, что изображение иÑпользует Ñжатие без потерь." #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "СвойÑтво ÑериализируетÑÑ Ð¸ ÑохранÑетÑÑ Ð² файле Ñцены (по умолчанию)." @@ -5007,10 +5006,8 @@ msgstr "" #: doc/classes/AABB.xml doc/classes/Rect2.xml doc/classes/Vector2.xml #: doc/classes/Vector3.xml -#, fuzzy msgid "Vector math" -msgstr "" -"Вектор иÑпользуемый Ð´Ð»Ñ 2D математики иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ñ†ÐµÐ»Ð¾Ñ‡Ð¸Ñленные координаты." +msgstr "Ð’ÐµÐºÑ‚Ð¾Ñ€Ð½Ð°Ñ Ð¼Ð°Ñ‚ÐµÐ¼Ð°Ñ‚Ð¸ÐºÐ°" #: doc/classes/AABB.xml doc/classes/Rect2.xml doc/classes/Vector2.xml #: doc/classes/Vector3.xml @@ -5516,8 +5513,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -6280,11 +6276,11 @@ msgstr "" #: doc/classes/Animation.xml doc/classes/Gradient.xml msgid "Linear interpolation." -msgstr "" +msgstr "Ð›Ð¸Ð½ÐµÐ¹Ð½Ð°Ñ Ð¸Ð½Ñ‚ÐµÑ€Ð¿Ð¾Ð»ÑциÑ." #: doc/classes/Animation.xml doc/classes/Gradient.xml msgid "Cubic interpolation." -msgstr "" +msgstr "КубичеÑÐºÐ°Ñ Ð¸Ð½Ñ‚ÐµÑ€Ð¿Ð¾Ð»ÑциÑ." #: doc/classes/Animation.xml msgid "Update between keyframes." @@ -6510,7 +6506,7 @@ msgstr "" #: doc/classes/AnimationNodeTimeScale.xml #: doc/classes/AnimationNodeTransition.xml msgid "AnimationTree" -msgstr "" +msgstr "Дерево анимации" #: doc/classes/AnimationNodeAdd3.xml doc/classes/AnimationNodeAnimation.xml #: doc/classes/AnimationNodeBlend2.xml @@ -7546,7 +7542,7 @@ msgstr "" #: doc/classes/AnimationTree.xml msgid "Using AnimationTree" -msgstr "" +msgstr "ИÑпользование дерева анимации" #: doc/classes/AnimationTree.xml msgid "Manually advance the animations by the specified time (in seconds)." @@ -7976,43 +7972,43 @@ msgstr "" #: doc/classes/AnimationTreePlayer.xml msgid "Output node." -msgstr "" +msgstr "Выходной узел." #: doc/classes/AnimationTreePlayer.xml msgid "Animation node." -msgstr "" +msgstr "Ðнимационный узел." #: doc/classes/AnimationTreePlayer.xml msgid "OneShot node." -msgstr "" +msgstr "Узел OneShot." #: doc/classes/AnimationTreePlayer.xml msgid "Mix node." -msgstr "" +msgstr "МикÑ-узел." #: doc/classes/AnimationTreePlayer.xml msgid "Blend2 node." -msgstr "" +msgstr "Узел Blend2." #: doc/classes/AnimationTreePlayer.xml msgid "Blend3 node." -msgstr "" +msgstr "Узел Blend3." #: doc/classes/AnimationTreePlayer.xml msgid "Blend4 node." -msgstr "" +msgstr "Узел Blend4." #: doc/classes/AnimationTreePlayer.xml msgid "TimeScale node." -msgstr "" +msgstr "Узел TimeScale." #: doc/classes/AnimationTreePlayer.xml msgid "TimeSeek node." -msgstr "" +msgstr "Узел TimeSeek." #: doc/classes/AnimationTreePlayer.xml msgid "Transition node." -msgstr "" +msgstr "Переходный узел." #: doc/classes/Area.xml msgid "3D area for detection and physics and audio influence." @@ -8702,7 +8698,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -8931,8 +8930,12 @@ msgstr "" "опиÑывает шаг между индекÑами Ñреза." #: doc/classes/Array.xml +#, fuzzy msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -8963,9 +8966,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9357,6 +9364,19 @@ msgid "" "[ARVRServer]. This makes this node ideal to add child nodes to visualize the " "controller." msgstr "" +"Ðто вÑпомогательный проÑтранÑтвенный узел, ÑвÑзанный Ñ Ð¾Ñ‚Ñлеживанием " +"контроллеров. Он также предлагает неÑколько удобных переходов к ÑоÑтоÑнию " +"кнопок и Ñ‚.п. на контроллерах.\n" +"Контроллеры ÑвÑзаны по их ID. Ð’Ñ‹ можете Ñоздавать узлы контроллеров до того, " +"как контроллеры Ñтанут доÑтупны. ЕÑли в вашей игре вÑегда иÑпользуютÑÑ Ð´Ð²Ð° " +"контроллера (по одному Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ руки), вы можете заранее определить " +"контроллеры Ñ ID 1 и 2; они Ñтанут активными, как только контроллеры будут " +"определены. ЕÑли вы ожидаете, что будут иÑпользоватьÑÑ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ñ‹Ðµ " +"контроллеры, вы должны реагировать на Ñигналы и добавить узлы ARVRController " +"в вашу Ñцену.\n" +"Положение узла контроллера автоматичеÑки обновлÑетÑÑ Ñервером [ARVRServer]. " +"Ðто делает данный узел идеальным Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð´Ð¾Ñ‡ÐµÑ€Ð½Ð¸Ñ… узлов Ð´Ð»Ñ " +"визуализации контроллера." #: doc/classes/ARVRController.xml msgid "" @@ -9634,6 +9654,21 @@ msgid "" "be a child node of this car. Or, if you're implementing a teleport system to " "move your character, you should change the position of this node." msgstr "" +"Ðто Ñпециальный узел в ÑиÑтеме AR/VR, который отображает физичеÑкое " +"меÑтоположение центра нашего проÑтранÑтва отÑÐ»ÐµÐ¶Ð¸Ð²Ð°Ð½Ð¸Ñ Ð½Ð° виртуальное " +"меÑтоположение в нашем игровом мире.\n" +"Ð’ вашей Ñцене должен быть только один такой узел, и он обÑзательно должен " +"быть у ваÑ. Ð’Ñе узлы ARVRCamera, ARVRController и ARVRAnchor должны быть " +"прÑмыми дочерними узлами Ñтого узла, чтобы проÑтранÑтвенное отÑлеживание " +"работало правильно.\n" +"Именно положение Ñтого узла вы обновлÑете, когда перÑонажу нужно " +"перемещатьÑÑ Ð¿Ð¾ игровому миру, в то Ð²Ñ€ÐµÐ¼Ñ ÐºÐ°Ðº в реальном мире мы не " +"движемÑÑ. Движение в реальном мире вÑегда проиÑходит отноÑительно Ñтой " +"иÑходной точки.\n" +"Ðапример, еÑли ваш перÑонаж управлÑет автомобилем, узел ARVROrigin должен " +"быть дочерним узлом Ñтого автомобилÑ. Или, еÑли вы реализуете ÑиÑтему " +"телепортации Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ Ð¿ÐµÑ€Ñонажа, вы должны изменить положение Ñтого " +"узла." #: doc/classes/ARVROrigin.xml msgid "" @@ -10176,6 +10211,26 @@ msgid "" "4, 3][/code] instead, because now even though the distance is longer, it's " "\"easier\" to get through point 4 than through point 2." msgstr "" +"Возвращает маÑÑив Ñ Ð¸Ð´ÐµÐ½Ñ‚Ð¸Ñ„Ð¸ÐºÐ°Ñ‚Ð¾Ñ€Ð°Ð¼Ð¸ точек, которые образуют путь, найденный " +"AStar между заданными точками. МаÑÑив упорÑдочен от начальной точки до " +"конечной точки пути.\n" +"[codeblock].\n" +"var astar = AStar.new()\n" +"astar.add_point(1, Vector3(0, 0, 0, 0))\n" +"astar.add_point(2, Vector3(0, 1, 0), 1) # Ð’ÐµÑ Ð¿Ð¾ умолчанию равен 1\n" +"astar.add_point(3, Vector3(1, 1, 0))\n" +"astar.add_point(4, Vector3(2, 0, 0))\n" +"\n" +"astar.connect_points(1, 2, false)\n" +"astar.connect_points(2, 3, false)\n" +"astar.connect_points(4, 3, false)\n" +"astar.connect_points(1, 4, false)\n" +"\n" +"var res = astar.get_id_path(1, 3) # Возвращает [1, 2, 3]\n" +"[/codeblock].\n" +"ЕÑли изменить Ð²ÐµÑ Ð²Ñ‚Ð¾Ñ€Ð¾Ð¹ точки на 3, то результатом будет [code][1, 4, 3][/" +"code], потому что теперь, неÑÐ¼Ð¾Ñ‚Ñ€Ñ Ð½Ð° то, что раÑÑтоÑние больше, \"легче\" " +"пройти через точку 4, чем через точку 2." #: doc/classes/AStar.xml doc/classes/AStar2D.xml msgid "" @@ -10424,6 +10479,22 @@ msgid "" "FLAG_REPEAT] and [constant Texture.FLAG_MIRRORED_REPEAT] flags are ignored " "when using an AtlasTexture." msgstr "" +"РеÑÑƒÑ€Ñ [Texture], который обрезает одну чаÑÑ‚ÑŒ текÑтуры [member atlas], " +"определенной [member region]. ОÑновное применение - вырезание текÑтур из " +"атлаÑа текÑтур, который предÑтавлÑет Ñобой большой файл текÑтуры, Ñодержащий " +"неÑколько текÑтур меньшего размера. СоÑтоит из [Texture] Ð´Ð»Ñ [member atlas], " +"[member region], который определÑет облаÑÑ‚ÑŒ [member atlas] Ð´Ð»Ñ " +"иÑпользованиÑ, и [member margin], который определÑет ширину границы.\n" +"[AtlasTexture] не может иÑпользоватьÑÑ Ð² [AnimatedTexture], не может быть " +"плиточным в узлах, таких как [TextureRect], и не работает должным образом, " +"еÑли иÑпользуетÑÑ Ð²Ð½ÑƒÑ‚Ñ€Ð¸ других реÑурÑов [AtlasTexture]. ÐеÑколько реÑурÑов " +"[AtlasTexture] можно иÑпользовать Ð´Ð»Ñ Ð¾Ð±Ñ€ÐµÐ·ÐºÐ¸ неÑкольких текÑтур из атлаÑа. " +"ИÑпользование атлаÑа текÑтур помогает оптимизировать затраты видеопамÑти и " +"вызовы рендеринга по Ñравнению Ñ Ð¸Ñпользованием неÑкольких небольших " +"файлов.\n" +"[b]Примечание:[/b] AtlasTextures не поддерживают повторение. Флаги [constant " +"Texture.FLAG_REPEAT] и [constant Texture.FLAG_MIRRORED_REPEAT] игнорируютÑÑ " +"при иÑпользовании AtlasTexture." #: doc/classes/AtlasTexture.xml msgid "The texture that contains the atlas. Can be any [Texture] subtype." @@ -10654,6 +10725,21 @@ msgid "" "- Accentuates transients by using a wider attack, making effects sound more " "punchy." msgstr "" +"КомпреÑÑор динамичеÑкого диапазона уменьшает уровень звука, когда амплитуда " +"превышает определенный порог в децибелах. Одно из оÑновных назначений " +"компреÑÑора - увеличение динамичеÑкого диапазона за Ñчет минимального " +"ÐºÐ»Ð¸Ð¿Ð¿Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ (когда звук превышает 0 дБ).\n" +"КомпреÑÑор имеет множеÑтво применений в микÑе:\n" +"- Ð’ маÑтер-шине Ð´Ð»Ñ ÑÐ¶Ð°Ñ‚Ð¸Ñ Ð²Ñего выхода (Ñ…Ð¾Ñ‚Ñ [AudioEffectLimiter], " +"вероÑтно, лучше).\n" +"- Ð’ голоÑовых каналах Ð´Ð»Ñ Ð¾Ð±ÐµÑÐ¿ÐµÑ‡ÐµÐ½Ð¸Ñ Ð¸Ñ… макÑимально ÑбаланÑированного " +"звучаниÑ.\n" +"- Ð’ Ñайдчейне. Ðто позволÑет Ñнизить уровень звука при боковом подключении к " +"другой аудиошине Ð´Ð»Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¿Ð¾Ñ€Ð¾Ð³Ð°. Ðта техника раÑпроÑтранена в " +"микшировании видеоигр Ð´Ð»Ñ ÑÐ½Ð¸Ð¶ÐµÐ½Ð¸Ñ ÑƒÑ€Ð¾Ð²Ð½Ñ Ð¼ÑƒÐ·Ñ‹ÐºÐ¸ и SFX во Ð²Ñ€ÐµÐ¼Ñ Ð·Ð²ÑƒÑ‡Ð°Ð½Ð¸Ñ " +"голоÑов.\n" +"- Подчеркивает переходные процеÑÑÑ‹ за Ñчет более широкой атаки, заÑтавлÑÑ " +"Ñффекты звучать более напориÑто." #: doc/classes/AudioEffectCompressor.xml msgid "" @@ -11632,12 +11718,14 @@ msgid "Clears the audio sample data buffer." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml +#, fuzzy msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" +"Возвращает [code]true[/code] еÑли [code]a[/code] и [code]b[/code] " +"приблизительно равны друг другу." #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" @@ -12168,14 +12256,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -12185,22 +12273,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -12413,7 +12501,7 @@ msgstr "" #: doc/classes/BakedLightmap.xml doc/classes/SpatialMaterial.xml msgid "Currently unused." -msgstr "" +msgstr "Ð’ наÑтоÑщее Ð²Ñ€ÐµÐ¼Ñ Ð½Ðµ иÑпользуетÑÑ." #: doc/classes/BakedLightmap.xml #, fuzzy @@ -12874,7 +12962,7 @@ msgstr "" #: doc/classes/BitMap.xml msgid "Boolean matrix." -msgstr "" +msgstr "ЛогичеÑÐºÐ°Ñ Ð¼Ð°Ñ‚Ñ€Ð¸Ñ†Ð°." #: doc/classes/BitMap.xml msgid "" @@ -13237,6 +13325,29 @@ msgid "" "given time. Use [TouchScreenButton] for buttons that trigger gameplay " "movement or actions, as [TouchScreenButton] supports multitouch." msgstr "" +"Кнопка - Ñто ÑÑ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð°Ñ Ñ‚ÐµÐ¼Ð°Ñ‚Ð¸Ñ‡ÐµÑÐºÐ°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ°. Она может Ñодержать текÑÑ‚ и " +"иконку, и будет отображать их в ÑоответÑтвии Ñ Ñ‚ÐµÐºÑƒÑ‰ÐµÐ¹ темой [Theme].\n" +"[b]Пример ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ ÐºÐ½Ð¾Ð¿ÐºÐ¸ и Ð½Ð°Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð´ÐµÐ¹ÑÑ‚Ð²Ð¸Ñ Ð¿Ñ€Ð¸ нажатии Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ кода:[/" +"b]\n" +"[codeblock].\n" +"func _ready():\n" +" var button = Button.new()\n" +" button.text = \"Ðажмите на менÑ\"\n" +" button.connect(\"pressed\", self, \"_button_pressed\")\n" +" add_child(button)\n" +"\n" +"func _button_pressed():\n" +" print(\"Hello world!\")\n" +"[/codeblock].\n" +"Кнопки (как и вÑе узлы Control) также могут быть Ñозданы в редакторе, но " +"некоторые Ñитуации могут потребовать их ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸Ð· кода.\n" +"См. также [BaseButton], который Ñодержит общие ÑвойÑтва и методы, ÑвÑзанные " +"Ñ Ñтим узлом.\n" +"[b]Примечание: Кнопки[/b] не интерпретируют ÑенÑорный ввод и поÑтому не " +"поддерживают мультитач, поÑкольку ÑмулÑÑ†Ð¸Ñ Ð¼Ñ‹ÑˆÐ¸ позволÑет нажимать только " +"одну кнопку в данный момент времени. ИÑпользуйте [TouchScreenButton] Ð´Ð»Ñ " +"кнопок, запуÑкающих движение или дейÑÑ‚Ð²Ð¸Ñ Ð¸Ð³Ñ€Ð¾Ð²Ð¾Ð³Ð¾ процеÑÑа, поÑкольку " +"[TouchScreenButton] поддерживает мультитач." #: doc/classes/Button.xml doc/classes/Dictionary.xml #: doc/classes/GridContainer.xml doc/classes/OS.xml @@ -13712,6 +13823,20 @@ msgid "" "limits. You can use [method get_camera_screen_center] to get the real " "position." msgstr "" +"Узел камеры Ð´Ð»Ñ 2D-Ñцен. Он заÑтавлÑет Ñкран (текущий Ñлой) прокручиватьÑÑ " +"вÑлед за Ñтим узлом. Ðто позволÑет проще (и быÑтрее) программировать " +"прокручиваемые Ñцены, чем вручную изменÑÑ‚ÑŒ положение узлов на оÑнове " +"[CanvasItem].\n" +"Ðтот узел задуман как проÑтой помощник Ð´Ð»Ñ Ð±Ñ‹Ñтрого начала работы, но Ð´Ð»Ñ " +"Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ камеры может потребоватьÑÑ Ð±Ð¾Ð»ÐµÐµ ÑˆÐ¸Ñ€Ð¾ÐºÐ°Ñ Ñ„ÑƒÐ½ÐºÑ†Ð¸Ð¾Ð½Ð°Ð»ÑŒÐ½Ð¾ÑÑ‚ÑŒ. " +"Чтобы Ñоздать Ñвой ÑобÑтвенный узел камеры, наÑледуйте его от [Node2D] и " +"измените транÑформацию холÑта, уÑтановив [member Viewport.canvas_transform] " +"в [Viewport] (текущий [Viewport] можно получить Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ [method Node." +"get_viewport]).\n" +"Обратите внимание, что положение узла [Camera2D] [code][/code] не отражает " +"фактичеÑкое положение Ñкрана, которое может отличатьÑÑ Ð¸Ð·-за примененного " +"ÑÐ³Ð»Ð°Ð¶Ð¸Ð²Ð°Ð½Ð¸Ñ Ð¸Ð»Ð¸ ограничений. Ð”Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ñ€ÐµÐ°Ð»ÑŒÐ½Ð¾Ð³Ð¾ Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð¶Ð½Ð¾ " +"иÑпользовать [метод get_camera_screen_center]." #: doc/classes/Camera2D.xml doc/classes/TileMap.xml doc/classes/TileSet.xml msgid "2D Isometric Demo" @@ -14028,7 +14153,7 @@ msgstr "" #: doc/classes/CameraFeed.xml msgid "Unspecified position." -msgstr "" +msgstr "ÐÐµÑƒÐºÐ°Ð·Ð°Ð½Ð½Ð°Ñ Ð´Ð¾Ð»Ð¶Ð½Ð¾ÑÑ‚ÑŒ." #: doc/classes/CameraFeed.xml msgid "Camera is mounted at the front of the device." @@ -15921,6 +16046,23 @@ msgid "" "[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/" "color_constants.png]Color constants cheatsheet[/url]" msgstr "" +"Цвет, предÑтавленный краÑным, зеленым, Ñиним и альфа-компонентами (RGBA). " +"Компонент альфа чаÑто иÑпользуетÑÑ Ð´Ð»Ñ Ð½ÐµÐ¿Ñ€Ð¾Ð·Ñ€Ð°Ñ‡Ð½Ð¾Ñти. Ð—Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð·Ð°Ð´Ð°ÑŽÑ‚ÑÑ Ñ " +"плавающей точкой и обычно находÑÑ‚ÑÑ Ð² диапазоне от 0 до 1. Ðекоторые " +"ÑвойÑтва (например, CanvasItem.modulate) могут принимать Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð±Ð¾Ð»ÑŒÑˆÐµ 1 " +"(переÑвет или цвета HDR).\n" +"Ð’Ñ‹ также можете Ñоздать цвет из Ñтандартизированных имен цветов Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ " +"[метода @GDScript.ColorN] или непоÑредÑтвенно иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð½Ñ‹Ðµ здеÑÑŒ " +"цветовые конÑтанты. Стандартизированный набор цветов оÑнован на [url=https://" +"en.wikipedia.org/wiki/X11_color_names]именах цветов X11[/url].\n" +"ЕÑли вы хотите задать Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² диапазоне от 0 до 255, вам Ñледует " +"иÑпользовать [метод @GDScript.Color8].\n" +"[b]Примечание:[/b] Ð’ булевом контекÑте значение Color будет равно " +"[code]false[/code], еÑли оно равно [code]Color(0, 0, 0, 0, 1)[/code] " +"(непрозрачный черный). Ð’ противном Ñлучае значение Color вÑегда будет равно " +"[code]true[/code].\n" +"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/" +"color_constants.png]Шпаргалка по конÑтантам цвета[/url]" #: doc/classes/Color.xml doc/classes/ColorPickerButton.xml msgid "2D GD Paint Demo" @@ -16203,15 +16345,15 @@ msgstr "" #: doc/classes/Color.xml msgid "Aqua color." -msgstr "" +msgstr "Цвет аква." #: doc/classes/Color.xml msgid "Aquamarine color." -msgstr "" +msgstr "Цвет аквамарина." #: doc/classes/Color.xml msgid "Azure color." -msgstr "" +msgstr "Лазурный цвет." #: doc/classes/Color.xml msgid "Beige color." @@ -16219,7 +16361,7 @@ msgstr "Бежевый цвет." #: doc/classes/Color.xml msgid "Bisque color." -msgstr "" +msgstr "Цвет биÑквита." #: doc/classes/Color.xml msgid "Black color." @@ -16251,7 +16393,7 @@ msgstr "" #: doc/classes/Color.xml msgid "Chartreuse color." -msgstr "" +msgstr "Цвет шартрез." #: doc/classes/Color.xml msgid "Chocolate color." @@ -16259,11 +16401,11 @@ msgstr "Шоколадный цвет." #: doc/classes/Color.xml msgid "Coral color." -msgstr "" +msgstr "Коралловый цвет." #: doc/classes/Color.xml msgid "Cornflower color." -msgstr "" +msgstr "ВаÑильковый цвет." #: doc/classes/Color.xml msgid "Corn silk color." @@ -16271,11 +16413,11 @@ msgstr "" #: doc/classes/Color.xml msgid "Crimson color." -msgstr "" +msgstr "Багровый цвет." #: doc/classes/Color.xml msgid "Cyan color." -msgstr "" +msgstr "Голубой цвет." #: doc/classes/Color.xml msgid "Dark blue color." @@ -16363,7 +16505,7 @@ msgstr "" #: doc/classes/Color.xml msgid "Firebrick color." -msgstr "" +msgstr "Кирпичный цвет." #: doc/classes/Color.xml msgid "Floral white color." @@ -16379,7 +16521,7 @@ msgstr "Цвет фукÑии." #: doc/classes/Color.xml msgid "Gainsboro color." -msgstr "" +msgstr "Цвет ГейнÑборо." #: doc/classes/Color.xml msgid "Ghost white color." @@ -16391,7 +16533,7 @@ msgstr "Золотой цвет." #: doc/classes/Color.xml msgid "Goldenrod color." -msgstr "" +msgstr "ЗолотиÑто-рыжий цвет." #: doc/classes/Color.xml msgid "Gray color." @@ -16407,7 +16549,7 @@ msgstr "" #: doc/classes/Color.xml msgid "Honeydew color." -msgstr "" +msgstr "Цвет медовой роÑÑ‹." #: doc/classes/Color.xml msgid "Hot pink color." @@ -16423,15 +16565,15 @@ msgstr "Цвет индиго." #: doc/classes/Color.xml msgid "Ivory color." -msgstr "" +msgstr "Цвет Ñлоновой коÑти." #: doc/classes/Color.xml msgid "Khaki color." -msgstr "" +msgstr "Цвет хаки." #: doc/classes/Color.xml msgid "Lavender color." -msgstr "" +msgstr "Цвет лаванды." #: doc/classes/Color.xml msgid "Lavender blush color." @@ -16499,7 +16641,7 @@ msgstr "" #: doc/classes/Color.xml msgid "Lime color." -msgstr "" +msgstr "Цвет лайма." #: doc/classes/Color.xml msgid "Lime green color." @@ -16507,15 +16649,15 @@ msgstr "" #: doc/classes/Color.xml msgid "Linen color." -msgstr "" +msgstr "Цвет льна." #: doc/classes/Color.xml msgid "Magenta color." -msgstr "" +msgstr "Пурпурный цвет." #: doc/classes/Color.xml msgid "Maroon color." -msgstr "" +msgstr "Бордовый цвет." #: doc/classes/Color.xml msgid "Medium aquamarine color." @@ -16567,7 +16709,7 @@ msgstr "" #: doc/classes/Color.xml msgid "Moccasin color." -msgstr "" +msgstr "Цвет мокаÑин." #: doc/classes/Color.xml msgid "Navajo white color." @@ -16627,7 +16769,7 @@ msgstr "" #: doc/classes/Color.xml msgid "Peru color." -msgstr "" +msgstr "ПеруанÑкий цвет." #: doc/classes/Color.xml msgid "Pink color." @@ -16635,7 +16777,7 @@ msgstr "Розовый цвет." #: doc/classes/Color.xml msgid "Plum color." -msgstr "" +msgstr "Цвет Ñливы." #: doc/classes/Color.xml msgid "Powder blue color." @@ -16667,7 +16809,7 @@ msgstr "" #: doc/classes/Color.xml msgid "Salmon color." -msgstr "" +msgstr "Цвет лоÑоÑÑ." #: doc/classes/Color.xml msgid "Sandy brown color." @@ -16683,11 +16825,11 @@ msgstr "Цвет морÑкой раковины." #: doc/classes/Color.xml msgid "Sienna color." -msgstr "" +msgstr "Цвет Ñиены." #: doc/classes/Color.xml msgid "Silver color." -msgstr "" +msgstr "СеребрÑный цвет." #: doc/classes/Color.xml msgid "Sky blue color." @@ -16703,7 +16845,7 @@ msgstr "" #: doc/classes/Color.xml msgid "Snow color." -msgstr "" +msgstr "Цвет Ñнега." #: doc/classes/Color.xml msgid "Spring green color." @@ -16715,19 +16857,19 @@ msgstr "" #: doc/classes/Color.xml msgid "Tan color." -msgstr "" +msgstr "Цвет загара." #: doc/classes/Color.xml msgid "Teal color." -msgstr "" +msgstr "Цвет тила." #: doc/classes/Color.xml msgid "Thistle color." -msgstr "" +msgstr "Цвет чертополоха." #: doc/classes/Color.xml msgid "Tomato color." -msgstr "" +msgstr "Цвет томатов." #: doc/classes/Color.xml msgid "Transparent color (white with no alpha)." @@ -16735,7 +16877,7 @@ msgstr "" #: doc/classes/Color.xml msgid "Turquoise color." -msgstr "" +msgstr "Бирюзовый цвет." #: doc/classes/Color.xml msgid "Violet color." @@ -16759,11 +16901,11 @@ msgstr "" #: doc/classes/Color.xml msgid "Wheat color." -msgstr "" +msgstr "Цвет пшеницы." #: doc/classes/Color.xml msgid "White color." -msgstr "" +msgstr "Белый цвет." #: doc/classes/Color.xml msgid "White smoke color." @@ -17004,7 +17146,7 @@ msgstr "" #: doc/classes/ColorRect.xml msgid "Colored rectangle." -msgstr "" +msgstr "Цветной прÑмоугольник." #: doc/classes/ColorRect.xml msgid "" @@ -17040,6 +17182,21 @@ msgid "" "Physics the area will not detect any collisions with the concave shape at " "all (this is a known bug)." msgstr "" +"РеÑÑƒÑ€Ñ Ñ„Ð¾Ñ€Ð¼Ñ‹ вогнутого многоугольника, который может быть уÑтановлен в " +"[PhysicsBody] или облаÑÑ‚ÑŒ. Ðта форма ÑоздаетÑÑ Ð¿ÑƒÑ‚ÐµÐ¼ подачи ÑпиÑка " +"треугольников.\n" +"[b]Примечание:[/b] При иÑпользовании Ð´Ð»Ñ Ñтолкновений [ConcavePolygonShape] " +"предназначен Ð´Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ Ñо ÑтатичеÑкими узлами [PhysicsBody], такими как " +"[StaticBody], и не будет работать Ñ [KinematicBody] или [RigidBody] Ñ " +"режимом, отличным от Static.\n" +"[b]Предупреждение:[/b] ИÑпользование Ñтой формы Ð´Ð»Ñ [Area] (через узел " +"[CollisionShape], Ñозданный, например. Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ опции [i]Create Trimesh " +"Collision Sibling[/i] в меню [i]Mesh[/i], которое поÑвлÑетÑÑ Ð¿Ñ€Ð¸ выборе узла " +"[MeshInstance]) может привеÑти к неожиданным результатам: при иÑпользовании " +"Godot Physics облаÑÑ‚ÑŒ будет обнаруживать ÑÑ‚Ð¾Ð»ÐºÐ½Ð¾Ð²ÐµÐ½Ð¸Ñ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ Ñ Ð³Ñ€Ð°Ð½Ñми " +"треугольника в [ConcavePolygonShape] (а не Ñ Ð»ÑŽÐ±Ð¾Ð¹ \"внутренней\" чаÑтью " +"формы, например), а при иÑпользовании Bullet Physics облаÑÑ‚ÑŒ вообще не будет " +"обнаруживать Ñтолкновений Ñ Ð²Ð¾Ð³Ð½ÑƒÑ‚Ð¾Ð¹ формой (Ñто извеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ°)." #: doc/classes/ConcavePolygonShape.xml msgid "Returns the faces (an array of triangles)." @@ -17070,6 +17227,21 @@ msgid "" "the segments in the [ConcavePolygonShape2D] (and not with any \"inside\" of " "the shape, for example)." msgstr "" +"РеÑÑƒÑ€Ñ Ð²Ð¾Ð³Ð½ÑƒÑ‚Ð¾Ð¹ многоугольной 2D формы Ð´Ð»Ñ Ñ„Ð¸Ð·Ð¸ÐºÐ¸. Он ÑоÑтоит из Ñегментов и " +"оптимален Ð´Ð»Ñ Ñложных полигональных вогнутых Ñтолкновений. Однако его не " +"рекомендуетÑÑ Ð¸Ñпользовать Ð´Ð»Ñ ÑƒÐ·Ð»Ð¾Ð² [RigidBody2D]. ВмеÑто него " +"рекомендуетÑÑ Ð¸Ñпользовать CollisionPolygon2D в режиме выпуклого Ñ€Ð°Ð·Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ " +"(твердые тела) или неÑколько выпуклых объектов. Ð’ противном Ñлучае Ð´Ð»Ñ " +"ÑтатичеÑких Ñтолкновений лучше иÑпользовать вогнутую полигональную 2D-" +"форму.\n" +"ОÑновное различие между [ConvexPolygonShape2D] и [ConcavePolygonShape2D] " +"заключаетÑÑ Ð² том, что вогнутый полигон предполагает, что он вогнутый и " +"иÑпользует более Ñложный метод Ð¾Ð±Ð½Ð°Ñ€ÑƒÐ¶ÐµÐ½Ð¸Ñ Ñтолкновений, а выпуклый " +"заÑтавлÑет ÑÐµÐ±Ñ Ð±Ñ‹Ñ‚ÑŒ выпуклым, чтобы уÑкорить обнаружение Ñтолкновений.\n" +"[b]Предупреждение:[/b] ИÑпользование Ñтой фигуры Ð´Ð»Ñ [Area2D] (через узел " +"[CollisionShape2D]) может дать неожиданные результаты: облаÑÑ‚ÑŒ будет " +"обнаруживать ÑÑ‚Ð¾Ð»ÐºÐ½Ð¾Ð²ÐµÐ½Ð¸Ñ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ Ñ Ñегментами в [ConcavePolygonShape2D] (а " +"не Ñ Ð»ÑŽÐ±Ð¾Ð¹ \"внутренней\" чаÑтью фигуры, например)." #: doc/classes/ConcavePolygonShape2D.xml msgid "" @@ -17529,6 +17701,27 @@ msgid "" "[member rect_clip_content] or [method _clips_input] enabled.\n" "[b]Note:[/b] Event position is relative to the control origin." msgstr "" +"Виртуальный метод, который должен быть реализован пользователем. ИÑпользуйте " +"Ñтот метод Ð´Ð»Ñ Ð¾Ð±Ñ€Ð°Ð±Ð¾Ñ‚ÐºÐ¸ и приема входных данных на Ñлементах " +"пользовательÑкого интерфейÑа. См. [метод accept_event].\n" +"Пример: щелчок по Ñлементу управлениÑ.\n" +"[codeblock].\n" +"func _gui_input(event):\n" +" if event is InputEventMouseButton:\n" +" if event.button_index == BUTTON_LEFT and event.pressed:\n" +" print(\"Ðа Ð¼ÐµÐ½Ñ Ð½Ð°Ð¶Ð°Ð»Ð¸ D:\")\n" +"[/codeblock].\n" +"Событие не Ñработает, еÑли:\n" +"* щелчок вне Ñлемента ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ (Ñм. [метод has_point]);\n" +"* у Ñлемента ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ [member mouse_filter] уÑтановлено значение [constant " +"MOUSE_FILTER_IGNORE];\n" +"* Ñлемент ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð·Ð°Ð³Ð¾Ñ€Ð¾Ð¶ÐµÐ½ другим [Control] Ñверху, у которого [member " +"mouse_filter] не уÑтановлен на [constant MOUSE_FILTER_IGNORE];\n" +"* родитель Ñлемента ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸Ð¼ÐµÐµÑ‚ [member mouse_filter], уÑтановленный на " +"[constant MOUSE_FILTER_STOP] или принÑл Ñобытие;\n" +"* Ñобытие проиÑходит вне прÑмоугольника родителÑ, и у Ñ€Ð¾Ð´Ð¸Ñ‚ÐµÐ»Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½ [член " +"rect_clip_content] или [метод _clips_input].\n" +"[b]Примечание:[/b] Положение ÑÐ¾Ð±Ñ‹Ñ‚Ð¸Ñ Ð¾Ñ‚Ð½Ð¾Ñительно начала Ñлемента управлениÑ." #: doc/classes/Control.xml msgid "" @@ -17654,6 +17847,27 @@ msgid "" "$MyButton.add_stylebox_override(\"normal\", null)\n" "[/codeblock]" msgstr "" +"Создает локальное переопределение Ð´Ð»Ñ Ñ‚ÐµÐ¼Ñ‹ [StyleBox] Ñ ÑƒÐºÐ°Ð·Ð°Ð½Ð½Ñ‹Ð¼ " +"[code]именем[/code] . Локальные Ð¿ÐµÑ€ÐµÐ¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð²Ñегда имеют приоритет при " +"получении Ñлементов темы Ð´Ð»Ñ Ñлемента управлениÑ.\n" +"[b]Примечание:[/b] Переопределение можно удалить, приÑвоив ему значение " +"[code]null[/code]. Ðто поведение уÑтарело и будет удалено в верÑии 4.0, " +"иÑпользуйте [метод remove_stylebox_override] вмеÑто Ñтого.\n" +"См. также [метод get_stylebox].\n" +"[b]Пример Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÑвойÑтва в StyleBox путем его дублированиÑ:[/b]\n" +"[codeblock]\n" +"# Ð’ приведенном ниже фрагменте предполагаетÑÑ, что дочернему узлу MyButton " +"назначен StyleBoxFlat.\n" +"# РеÑурÑÑ‹ разделÑÑŽÑ‚ÑÑ Ð¼ÐµÐ¶Ð´Ñƒ ÑкземплÑрами, поÑтому нам нужно продублировать " +"его.\n" +"# чтобы избежать Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ð½ÐµÑˆÐ½ÐµÐ³Ð¾ вида вÑех оÑтальных кнопок.\n" +"var new_stylebox_normal = $MyButton.get_stylebox(\"normal\").duplicate()\n" +"new_stylebox_normal.border_width_top = 3\n" +"new_stylebox_normal.border_color = Color(0, 1, 0.5)\n" +"$MyButton.add_stylebox_override(\"normal\", new_stylebox_normal)\n" +"# Удалите переопределение Ñтилей.\n" +"$MyButton.add_stylebox_override(\"normal\", null)\n" +"[/codeblock]." #: doc/classes/Control.xml msgid "" @@ -18362,6 +18576,27 @@ msgid "" "theme.set_color(\"font_color\", \"TooltipLabel\", Color(0, 1, 1))\n" "[/codeblock]" msgstr "" +"ИзменÑет текÑÑ‚ вÑплывающей подÑказки. ПодÑказка поÑвлÑетÑÑ, когда курÑор " +"мыши Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¿Ñ€Ð¾Ñтаивает над Ñтим Ñлементом ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð² течение " +"неÑкольких мгновений, при уÑловии, что ÑвойÑтво [member mouse_filter] не " +"ÑвлÑетÑÑ [constant MOUSE_FILTER_IGNORE]. Ð’Ñ‹ можете изменить времÑ, " +"необходимое Ð´Ð»Ñ Ð¿Ð¾ÑÐ²Ð»ÐµÐ½Ð¸Ñ Ð²Ñплывающей подÑказки Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ опции [code]gui/" +"timers/tooltip_delay_sec[/code] в ÐаÑтройках проекта.\n" +"Ð’ÑÐ¿Ð»Ñ‹Ð²Ð°ÑŽÑ‰Ð°Ñ Ð¿Ð¾Ð´Ñказка будет иÑпользовать либо реализацию по умолчанию, либо " +"пользовательÑкую, которую вы можете Ñоздать, переопределив [метод " +"_make_custom_tooltip]. Ð’ÑÐ¿Ð»Ñ‹Ð²Ð°ÑŽÑ‰Ð°Ñ Ð¿Ð¾Ð´Ñказка по умолчанию включает " +"[PopupPanel] и [Label], ÑвойÑтва темы которых можно наÑтроить Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ " +"методов [Theme] Ñ [code]\"TooltipPanel\"[/code] и [code]\"TooltipLabel\"[/" +"code] ÑоответÑтвенно. Ðапример:\n" +"[codeblock]\n" +"var style_box = StyleBoxFlat.new()\n" +"style_box.set_bg_color(Color(1, 1, 0))\n" +"style_box.set_border_width_all(2)\n" +"# ЗдеÑÑŒ мы предполагаем, что ÑвойÑтву `theme` была предварительно назначена " +"пользовательÑÐºÐ°Ñ Ñ‚ÐµÐ¼Ð°.\n" +"theme.set_stylebox(\"panel\", \"TooltipPanel\", style_box)\n" +"theme.set_color(\"font_color\", \"TooltipLabel\", Color(0, 1, 1))\n" +"[/codeblock]" #: doc/classes/Control.xml msgid "" @@ -18482,6 +18717,22 @@ msgid "" "[code]yield(get_tree(), \"idle_frame\")[/code] then set its [member " "rect_scale] property." msgstr "" +"МаÑштаб узла отноÑительно его [member rect_size]. Измените Ñто ÑвойÑтво, " +"чтобы изменить маÑштаб узла отноÑительно его [член rect_pivot_offset]. " +"МаÑштаб [member hint_tooltip] Ñлемента ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ñ‚Ð°ÐºÐ¶Ðµ будет изменÑÑ‚ÑŒÑÑ Ð² " +"ÑоответÑтвии Ñ Ñтим значением.\n" +"[b]Примечание:[/b] Ðто ÑвойÑтво в оÑновном предназначено Ð´Ð»Ñ Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð² " +"целÑÑ… анимации. ТекÑÑ‚ внутри Ñлемента ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð±ÑƒÐ´ÐµÑ‚ выглÑдеть " +"пикÑелированным или размытым при маÑштабировании Ñлемента управлениÑ. Ð”Ð»Ñ " +"поддержки неÑкольких разрешений в вашем проекте иÑпользуйте ÑоответÑтвующий " +"режим раÑÑ‚ÑÐ¶ÐµÐ½Ð¸Ñ Ð²Ð¸Ð´Ð¾Ð²Ð¾Ð³Ð¾ Ñкрана, как опиÑано в [url=$DOCS_URL/tutorials/" +"rendering/multiple_resolutions.html]документации[/url] вмеÑто " +"маÑÑˆÑ‚Ð°Ð±Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Controls по отдельноÑти.\n" +"[b]Примечание:[/b] ЕÑли узел Control ÑвлÑетÑÑ Ð´Ð¾Ñ‡ÐµÑ€Ð½Ð¸Ð¼ узлом узла " +"[Container], маÑштаб будет Ñброшен на [code]Vector2(1, 1)[/code] при " +"инÑтанÑировании Ñцены. Чтобы уÑтановить маÑштаб Ñлемента ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸ его " +"инÑтанцировании, подождите один кадр, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ [code]yield(get_tree(), " +"\"idle_frame\")[/code], а затем уÑтановите его ÑвойÑтво [member rect_scale]." #: doc/classes/Control.xml msgid "" @@ -19750,6 +20001,43 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] Not available in HTML5 exports." msgstr "" +"КлаÑÑ Crypto позволÑет вам получить доÑтуп к некоторым более продвинутым " +"криптографичеÑким функциÑм в Godot.\n" +"Ðа данный момент Ñто Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ñ ÐºÑ€Ð¸Ð¿Ñ‚Ð¾Ð³Ñ€Ð°Ñ„Ð¸Ñ‡ÐµÑки безопаÑных Ñлучайных байтов, " +"Ð³ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ñ RSA-ключей и ÑамоподпиÑанных Ñертификатов X509, шифрование/" +"дешифрование аÑимметричных ключей, а также подпиÑание/верификациÑ.\n" +"[codeblock].\n" +"раÑширÑет Node\n" +"\n" +"var crypto = Crypto.new()\n" +"var key = CryptoKey.new()\n" +"var cert = X509Certificate.new()\n" +"\n" +"func _ready():\n" +" # Генерируем новый RSA-ключ.\n" +" key = crypto.generate_rsa(4096)\n" +" # Генерируем новый ÑамоподпиÑанный Ñертификат Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ñ‹Ð¼ ключом.\n" +" cert = crypto.generate_self_signed_certificate(key, \"CN=mydomain.com," +"O=My Game Company,C=IT\")\n" +" # Сохраните ключ и Ñертификат в папке пользователÑ.\n" +" key.save(\"user://generated.key\")\n" +" cert.save(\"user://generated.crt\")\n" +" # Шифрование\n" +" var data = \"Ðекоторые данные\"\n" +" var encrypted = crypto.encrypt(key, data.to_utf8())\n" +" # РаÑшифровка\n" +" var decrypted = crypto.decrypt(key, encrypted)\n" +" # ПодпиÑание\n" +" var signature = crypto.sign(HashingContext.HASH_SHA256, data." +"sha256_buffer(), key)\n" +" # Проверка\n" +" verified = crypto.verify(HashingContext.HASH_SHA256, data." +"sha256_buffer(), signature, key)\n" +" # ПроверÑет\n" +" assert(verified)\n" +" assert(data.to_utf8() == decrypted)\n" +"[/codeblock].\n" +"[b]Примечание:[/b] ÐедоÑтупно в ÑкÑпорте HTML5." #: doc/classes/Crypto.xml msgid "" @@ -19936,6 +20224,19 @@ msgid "" "node also has a significant CPU cost, so it should be avoided during " "gameplay." msgstr "" +"Ð”Ð»Ñ Ñложного раÑÐ¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ñ„Ð¸Ð³ÑƒÑ€ иногда требуетÑÑ Ð´Ð¾Ð±Ð°Ð²Ð¸Ñ‚ÑŒ Ñтруктуру в узлы " +"CSG. Узел CSGCombiner позволÑет Ñоздать такую Ñтруктуру. Узел инкапÑулирует " +"результат операций CSG Ñвоих дочерних узлов. Таким образом, можно выполнить " +"операции над одним набором фигур, которые ÑвлÑÑŽÑ‚ÑÑ Ð´Ð¾Ñ‡ÐµÑ€Ð½Ð¸Ð¼Ð¸ Ñлементами " +"одного узла CSGCombiner, и Ñ€Ñд отдельных операций над вторым набором фигур, " +"которые ÑвлÑÑŽÑ‚ÑÑ Ð´Ð¾Ñ‡ÐµÑ€Ð½Ð¸Ð¼Ð¸ Ñлементами второго узла CSGCombiner, а затем " +"выполнить операцию, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð¸Ñпользует Ñти два конечных результата в " +"качеÑтве входных данных Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¾ÐºÐ¾Ð½Ñ‡Ð°Ñ‚ÐµÐ»ÑŒÐ½Ð¾Ð¹ фигуры.\n" +"[b]Примечание:[/b] CSG-узлы предназначены Ð´Ð»Ñ Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ñ€Ð¸ Ñоздании " +"прототипов уровней. Создание CSG-узлов требует значительных затрат " +"процеÑÑора по Ñравнению Ñ Ñозданием [MeshInstance] Ñ [PrimitiveMesh]. " +"Перемещение узла CSG внутри другого узла CSG также требует значительных " +"затрат процеÑÑора, поÑтому Ñтого Ñледует избегать во Ð²Ñ€ÐµÐ¼Ñ Ð¸Ð³Ñ€Ð¾Ð²Ð¾Ð³Ð¾ процеÑÑа." #: modules/csg/doc_classes/CSGCylinder.xml msgid "A CSG Cylinder shape." @@ -21139,6 +21440,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "Ð’Ñ‹Ñота цилиндра." @@ -21185,7 +21494,7 @@ msgstr "" #: doc/classes/Dictionary.xml msgid "Dictionary type." -msgstr "" +msgstr "Тип ÑловарÑ." #: doc/classes/Dictionary.xml msgid "" @@ -23357,6 +23666,25 @@ msgid "" " return state\n" "[/codeblock]" msgstr "" +"Переопределите Ñтот метод, чтобы предоÑтавить данные ÑоÑтоÑниÑ, которые вы " +"хотите Ñохранить, например, положение вида, наÑтройки Ñетки, Ñворачивание и " +"Ñ‚.д. Ðти данные иÑпользуютÑÑ Ð¿Ñ€Ð¸ Ñохранении Ñцены (чтобы ÑоÑтоÑние " +"ÑохранÑлоÑÑŒ при ее повторном открытии) и при переключении вкладок (чтобы " +"ÑоÑтоÑние можно было воÑÑтановить при возврате на вкладку). Ðти данные " +"автоматичеÑки ÑохранÑÑŽÑ‚ÑÑ Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ Ñцены в файле [code]editstate[/code] в " +"папке метаданных редактора. ЕÑли вы хотите Ñохранить глобальные (незавиÑимые " +"от Ñцены) данные редактора Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ³Ð¾ плагина, вы можете иÑпользовать [метод " +"get_window_layout] вмеÑто Ñтого.\n" +"ИÑпользуйте [method set_state] Ð´Ð»Ñ Ð²Ð¾ÑÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ñохраненного ÑоÑтоÑниÑ.\n" +"[b]Примечание:[/b] Ðтот метод не Ñледует иÑпользовать Ð´Ð»Ñ ÑÐ¾Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð²Ð°Ð¶Ð½Ñ‹Ñ… " +"наÑтроек, которые должны ÑохранÑÑ‚ÑŒÑÑ Ð² проекте.\n" +"[b]Примечание:[/b] Ð”Ð»Ñ ÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð¾Ð³Ð¾ ÑÐ¾Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð¸ воÑÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ ÑоÑтоÑÐ½Ð¸Ñ " +"необходимо реализовать [метод get_plugin_name].\n" +"[codeblock].\n" +"func get_state():\n" +" var state = {\"zoom\": zoom, \"preferred_color\": my_color}\n" +" return state\n" +"[/codeblock]" #: doc/classes/EditorPlugin.xml msgid "" @@ -23907,6 +24235,33 @@ msgid "" "- Binary format in FBX 2017\n" "[/codeblock]" msgstr "" +"Ðто импортер 3D-активов FBX Ñ Ð¿Ð¾Ð»Ð½Ð¾Ð¹ поддержкой большинÑтва функций FBX.\n" +"При ÑкÑпорте FBX-Ñцены из Autodesk Maya иÑпользуйте Ñти наÑтройки ÑкÑпорта " +"FBX:\n" +"[codeblock]\n" +"- Группы ÑглаживаниÑ\n" +"- Сгладить Ñетку\n" +"- Triangluate (Ð´Ð»Ñ Ñеток Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ð¼Ð¸ ÑмешениÑ)\n" +"- Запечь анимацию\n" +"- ÐŸÐ¾Ð²Ñ‚Ð¾Ñ€Ð½Ð°Ñ Ð²Ñ‹Ð±Ð¾Ñ€ÐºÐ°\n" +"- Деформированные модели\n" +"- Скины\n" +"- Фигуры наложениÑ\n" +"- Фильтры кривых\n" +"- Уменьшитель поÑтоÑнного ключа\n" +"- Только автоматичеÑкие каÑательные\n" +"- Ðе отмечайте *Ðе отмечайте* Constraints (так как Ñто приведет к поломке " +"файла)\n" +"- Можно уÑтановить флажок Embed Media (вÑтраивает текÑтуры в ÑкÑпортируемый " +"FBX-файл).\n" +" - Обратите внимание, что при импорте вÑтроенной Ñреды текÑтура и Ñетка " +"будут одним неизменÑемым файлом.\n" +" - Вам придетÑÑ Ð¿Ð¾Ð²Ñ‚Ð¾Ñ€Ð½Ð¾ ÑкÑпортировать и повторно импортировать FBX, еÑли " +"текÑтура изменилаÑÑŒ.\n" +"- Единицы измерениÑ: Сантиметры\n" +"- ОÑÑŒ вверх: Y\n" +"- Двоичный формат в FBX 2017\n" +"[/codeblock]." #: modules/gltf/doc_classes/EditorSceneImporterGLTF.xml msgid "" @@ -23985,7 +24340,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -25032,6 +25390,27 @@ msgid "" "Effects\" by default. It improves the performance on mobile devices, but at " "the same time affects the screen display on mobile devices." msgstr "" +"РеÑÑƒÑ€Ñ Ð´Ð»Ñ ÑƒÐ·Ð»Ð¾Ð² Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸Ñ (например, [WorldEnvironment]), которые " +"определÑÑŽÑ‚ неÑколько операций Ñ Ð¾ÐºÑ€ÑƒÐ¶ÐµÐ½Ð¸ÐµÐ¼ (например, фон [Sky] или [Color], " +"окружающий Ñвет, туман, глубина резкоÑти...). Ðти параметры влиÑÑŽÑ‚ на " +"конечный рендеринг Ñцены. ПорÑдок Ñтих операций Ñледующий:\n" +"- Размытие глубины резкоÑти\n" +"- Свечение\n" +"- Ð¢Ð¾Ð½Ð¾Ð²Ð°Ñ ÐºÐ°Ñ€Ñ‚Ð° (автоÑкÑпозициÑ)\n" +"- Корректировки\n" +"ЕÑли Ð´Ð»Ñ Ñ†ÐµÐ»ÐµÐ²Ð¾Ð³Ð¾ [Viewport] уÑтановлено значение \"2D без выборки\", вÑе " +"Ñффекты поÑтобработки будут недоÑтупны. При уÑтановке \"3D без Ñффектов\" " +"Ñледующие опции будут недоÑтупны:\n" +"- Ssao\n" +"- Ss Reflections\n" +"Ðто можно наÑтроить Ð´Ð»Ñ ÐºÐ¾Ñ€Ð½ÐµÐ²Ð¾Ð³Ð¾ вьюпорта Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ [member ProjectSettings." +"rendering/quality/intended_usage/framebuffer_allocation] или Ð´Ð»Ñ " +"определенных вьюпортов Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ ÑвойÑтва [member Viewport.usage].\n" +"Обратите внимание, что [member ProjectSettings.rendering/quality/" +"intended_usage/framebuffer_allocation] имеет переопределение Ð´Ð»Ñ Ð¼Ð¾Ð±Ð¸Ð»ÑŒÐ½Ñ‹Ñ… " +"платформ, чтобы иÑпользовать \"3D без Ñффектов\" по умолчанию. Ðто улучшает " +"производительноÑÑ‚ÑŒ на мобильных уÑтройÑтвах, но в то же Ð²Ñ€ÐµÐ¼Ñ Ð²Ð»Ð¸Ñет на " +"отображение Ñкрана на мобильных уÑтройÑтвах." #: doc/classes/Environment.xml doc/classes/WorldEnvironment.xml #, fuzzy @@ -26431,6 +26810,22 @@ msgid "" "the [method @GDScript.is_equal_approx] and [method @GDScript.is_zero_approx] " "methods instead of [code]==[/code] to compare [float] values for equality." msgstr "" +"Ð’Ñтроенный тип [float] - Ñто 64-битное чиÑло Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой двойной " +"точноÑти, Ñквивалентное [code]double[/code] в C++. Ðтот тип имеет 14 " +"надежных деÑÑтичных цифр точноÑти. Тип [float] может хранитьÑÑ Ð² [Variant], " +"который ÑвлÑетÑÑ Ð¾Ð±Ñ‰Ð¸Ð¼ типом, иÑпользуемым движком. МакÑимальное значение " +"[float] приблизительно равно [code]1.79769e308[/code], а минимальное - " +"приблизительно [code]-1.79769e308[/code].\n" +"БольшинÑтво методов и ÑвойÑтв в движке иÑпользуют 32-битные чиÑла Ñ " +"плавающей точкой одинарной точноÑти, Ñквивалентные [code]float[/code] в C++, " +"которые имеют 6 надежных деÑÑтичных цифр точноÑти. Ð”Ð»Ñ Ñтруктур данных, " +"таких как [Vector2] и [Vector3], Godot иÑпользует 32-битные чиÑла Ñ " +"плавающей точкой.\n" +"Математика, выполнÑÐµÐ¼Ð°Ñ Ñ Ð¸Ñпользованием типа [float], не гарантирует " +"точноÑти или детерминированноÑти, и чаÑто будет приводить к небольшим " +"ошибкам. Обычно Ð´Ð»Ñ ÑÑ€Ð°Ð²Ð½ÐµÐ½Ð¸Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ð¹ [float] на равенÑтво Ñледует " +"иÑпользовать методы [method @GDScript.is_equal_approx] и [method @GDScript." +"is_zero_approx] вмеÑто [code]==[/code]." #: doc/classes/float.xml msgid "Wikipedia: Double-precision floating-point format" @@ -26502,6 +26897,22 @@ msgid "" "emoji) are [i]not[/i] supported on Windows. They will display as unknown " "characters instead. This will be resolved in Godot 4.0." msgstr "" +"Шрифт Ñодержит набор Ñимволов, ÑовмеÑтимый Ñ Unicode, а также возможноÑÑ‚ÑŒ " +"риÑовать его Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð¾Ð¹ шириной, подъемом, ÑпуÑком и кернингом. О Ñоздании " +"шрифтов из файлов TTF (или других форматов шрифтов) Ñм. раздел \"Поддержка " +"шрифтов редактором\".\n" +"[b]Примечание:[/b] ЕÑли [DynamicFont] не Ñодержит Ñимвол, иÑпользуемый в " +"Ñтроке, то данный Ñимвол будет заменен кодовой точкой [code]0xfffd[/code], " +"еÑли она доÑтупна в [DynamicFont]. ЕÑли Ñтот заменÑющий Ñимвол недоÑтупен в " +"DynamicFont, Ñимвол будет Ñкрыт без Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð·Ð°Ð¼ÐµÐ½Ñющего Ñимвола в " +"Ñтроке.\n" +"[b]Примечание:[/b] ЕÑли [BitmapFont] не Ñодержит Ñимвол, иÑпользуемый в " +"Ñтроке, то данный Ñимвол будет Ñкрыт без Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð·Ð°Ð¼ÐµÐ½Ñющего Ñимвола в " +"Ñтроке.\n" +"[b]Примечание:[/b] Символы Юникода поÑле [code]0xffff[/code] (например, " +"большинÑтво Ñмодзи) [i]не[/i] поддерживаютÑÑ Ð² Windows. ВмеÑто Ñтого они " +"будут отображатьÑÑ ÐºÐ°Ðº неизвеÑтные Ñимволы. Ðта проблема будет решена в " +"верÑии Godot 4.0." #: doc/classes/Font.xml msgid "" @@ -27432,6 +27843,29 @@ msgid "" "150), Vector2(50, 150)]\n" "[/codeblock]" msgstr "" +"Раздувает или Ñдувает [code]многоугольник[/code] на [code]дельту[/code] " +"единиц (пикÑелей). ЕÑли [code]дельта[/code] положительна, полигон " +"увеличиваетÑÑ Ð½Ð°Ñ€ÑƒÐ¶Ñƒ. ЕÑли [code]дельта[/code] отрицательна, полигон " +"уменьшаетÑÑ Ð²Ð½ÑƒÑ‚Ñ€ÑŒ. Возвращает маÑÑив полигонов, так как при раздувании/" +"Ñжатии может получитьÑÑ Ð½ÐµÑколько диÑкретных полигонов. Возвращает пуÑтой " +"маÑÑив, еÑли [code]delta[/code] отрицательна и ее абÑолютное значение " +"приблизительно превышает минимальные размеры ограничивающего прÑмоугольника " +"многоугольника.\n" +"Вершины каждого многоугольника будут округлены в ÑоответÑтвии Ñ Ñ‚Ð¸Ð¿Ð¾Ð¼ " +"[code]join_type[/code], Ñм. [enum PolyJoinType].\n" +"Ð’ результате операции может быть получен внешний многоугольник (граница) и " +"внутренний многоугольник (отверÑтие), которые можно отличить, вызвав [метод " +"is_polygon_clockwise].\n" +"[b]Примечание:[/b] Ð”Ð»Ñ Ñпециального перевода вершин многоугольника " +"иÑпользуйте метод [method Transform2D.xform]:\n" +"[codeblock].\n" +"var polygon = PoolVector2Array([Vector2(0, 0), Vector2(100, 0), Vector2(100, " +"100), Vector2(0, 100)])\n" +"var offset = Vector2(50, 50)\n" +"polygon = Transform2D(0, offset).xform(polygon)\n" +"print(polygon) # печатает [Vector2(50, 50), Vector2(150, 50), Vector2(150, " +"150), Vector2(50, 150)]\n" +"[/codeblock]" #: doc/classes/Geometry.xml msgid "" @@ -27813,6 +28247,23 @@ msgid "" "[code]call_deferred(\"bake\")[/code] instead of calling [method bake] " "directly." msgstr "" +"Запекает Ñффект из вÑех [GeometryInstance]ов, помеченных [member " +"GeometryInstance.use_in_baked_light] и [Light]ов, помеченных либо [constant " +"Light.BAKE_INDIRECT], либо [constant Light.BAKE_ALL]. ЕÑли " +"[code]create_visual_debug[/code] равен [code]true[/code], то поÑле Ð·Ð°Ð¿ÐµÐºÐ°Ð½Ð¸Ñ " +"Ñвета будет Ñгенерирован [MultiMesh], который имеет куб, предÑтавлÑющий " +"каждую твердую Ñчейку, причем каждый куб окрашен в цвет альбедо Ñчейки. Ðто " +"можно иÑпользовать Ð´Ð»Ñ Ð²Ð¸Ð·ÑƒÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ð¸ данных [GIProbe] и отладки любых " +"проблем, которые могут возникнуть.\n" +"[b]Примечание:[/b] [method bake] работает как в редакторе, так и в " +"ÑкÑпортированных проектах. Ðто делает его подходÑщим Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñ†ÐµÐ´ÑƒÑ€Ð½Ð¾ " +"генерируемых или пользовательÑких уровней. Запекание [GIProbe] обычно " +"занимает от 5 до 20 Ñекунд в большинÑтве Ñцен. Уменьшение [member subdiv] " +"может уÑкорить запекание.\n" +"[b]Примечание:[/b] [GeometryInstance]Ñ‹ и [Light]Ñ‹ должны быть полноÑтью " +"готовы до вызова [метода bake]. ЕÑли вы Ñоздаете их процедурно и некоторые " +"Ñетки или оÑвещение отÑутÑтвуют в вашем запекаемом [GIProbe], иÑпользуйте " +"[code]call_deferred(\"bake\")[/code] вмеÑто прÑмого вызова [метода bake]." #: doc/classes/GIProbe.xml msgid "Calls [method bake] with [code]create_visual_debug[/code] enabled." @@ -28180,7 +28631,7 @@ msgstr "" #: doc/classes/GradientTexture.xml msgid "Gradient-filled texture." -msgstr "" +msgstr "ТекÑтура Ñ Ð³Ñ€Ð°Ð´Ð¸ÐµÐ½Ñ‚Ð½Ñ‹Ð¼ заполнением." #: doc/classes/GradientTexture.xml msgid "" @@ -28944,6 +29395,21 @@ msgid "" "light not affect the first layer, the whole GridMap won't be lit by the " "light in question." msgstr "" +"GridMap позволÑет размещать Ñетки на Ñетке в интерактивном режиме. Она " +"работает как из редактора, так и из Ñкриптов, что может помочь вам Ñоздать " +"внутриигровые редакторы уровней.\n" +"GridMap иÑпользует [MeshLibrary], ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ñодержит ÑпиÑок плиток. ÐšÐ°Ð¶Ð´Ð°Ñ " +"плитка - Ñто Ñетка Ñ Ð¼Ð°Ñ‚ÐµÑ€Ð¸Ð°Ð»Ð°Ð¼Ð¸ и дополнительными фигурами Ñтолкновений и " +"навигации.\n" +"GridMap Ñодержит коллекцию Ñчеек. ÐšÐ°Ð¶Ð´Ð°Ñ Ñчейка Ñетки ÑÑылаетÑÑ Ð½Ð° тайл в " +"[MeshLibrary]. Ð’Ñе Ñчейки в карте имеют одинаковые размеры.\n" +"Внутри карта GridMap разбиваетÑÑ Ð½Ð° разреженную коллекцию октантов Ð´Ð»Ñ " +"Ñффективного рендеринга и обработки физики. Каждый октант имеет одинаковые " +"размеры и может Ñодержать неÑколько Ñчеек.\n" +"[b]Примечание:[/b] GridMap не раÑширÑет [VisualInstance] и поÑтому не может " +"быть Ñкрыт или замаÑкирован на оÑнове [member VisualInstance.layers]. ЕÑли " +"Ñделать так, чтобы Ñвет не влиÑл на первый Ñлой, то вÑÑ GridMap не будет " +"оÑвещена данным Ñветом." #: modules/gridmap/doc_classes/GridMap.xml msgid "Using gridmaps" @@ -29168,6 +29634,33 @@ msgid "" " printt(res.hex_encode(), Array(res))\n" "[/codeblock]" msgstr "" +"КлаÑÑ HashingContext предоÑтавлÑет Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð´Ð»Ñ Ð²Ñ‹Ñ‡Ð¸ÑÐ»ÐµÐ½Ð¸Ñ " +"криптографичеÑких Ñ…Ñшей за неÑколько итераций. Ðто полезно, например, при " +"вычиÑлении Ñ…Ñшей больших файлов (чтобы не загружать их вÑе в памÑÑ‚ÑŒ), " +"Ñетевых потоков и потоков данных в целом (чтобы не держать буферы).\n" +"ПеречиÑление [enum HashType] показывает поддерживаемые алгоритмы " +"Ñ…ÑшированиÑ.\n" +"[codeblock]\n" +"const CHUNK_SIZE = 1024\n" +"\n" +"func hash_file(path):\n" +" var ctx = HashingContext.new()\n" +" var file = File.new()\n" +" # ЗапуÑтите контекÑÑ‚ SHA-256.\n" +" ctx.start(HashingContext.HASH_SHA256)\n" +" # Проверьте, ÑущеÑтвует ли файл.\n" +" if not file.file_exists(path):\n" +" return\n" +" # Открываем файл Ð´Ð»Ñ Ñ…ÑшированиÑ.\n" +" file.open(path, File.READ)\n" +" # ОбновлÑем контекÑÑ‚ поÑле Ñ‡Ñ‚ÐµÐ½Ð¸Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ чанка.\n" +" while not file.eof_reached():\n" +" ctx.update(file.get_buffer(CHUNK_SIZE))\n" +" # Получение вычиÑленного Ñ…Ñша.\n" +" var res = ctx.finish()\n" +" # Выведите результат в виде шеÑтнадцатеричной Ñтроки и маÑÑива.\n" +" printt(res.hex_encode(), Array(res))\n" +"[/codeblock]." #: doc/classes/HashingContext.xml msgid "Closes the current context, and return the computed hash." @@ -29453,7 +29946,7 @@ msgstr "" #: doc/classes/HSeparator.xml msgid "Horizontal separator." -msgstr "" +msgstr "Горизонтальный разделитель." #: doc/classes/HSeparator.xml msgid "" @@ -29473,7 +29966,7 @@ msgstr "" #: doc/classes/HSlider.xml msgid "Horizontal slider." -msgstr "" +msgstr "Горизонтальный Ñлайдер." #: doc/classes/HSlider.xml msgid "" @@ -30405,6 +30898,22 @@ msgid "" "url] for more details). As a workaround, you can send data as a query string " "in the URL. See [method String.http_escape] for an example." msgstr "" +"Создает Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð½Ð° базовом [HTTPClient]. ЕÑли нет ошибок конфигурации, " +"пытаетÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡Ð¸Ñ‚ÑŒÑÑ, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ [метод HTTPClient.connect_to_host] и " +"передает параметры в [метод HTTPClient.request].\n" +"Возвращает [constant OK], еÑли Ð·Ð°Ð¿Ñ€Ð¾Ñ ÑƒÑпешно Ñоздан. (Ðто не означает, что " +"Ñервер ответил), [конÑтанта ERR_UNCONFIGURED], еÑли не находитÑÑ Ð² дереве, " +"[конÑтанта ERR_BUSY], еÑли вÑе еще обрабатывает предыдущий запроÑ, " +"[конÑтанта ERR_INVALID_PARAMETER], еÑли Ð·Ð°Ð´Ð°Ð½Ð½Ð°Ñ Ñтрока не ÑвлÑетÑÑ " +"правильным форматом URL, или [конÑтанта ERR_CANT_CONNECT], еÑли не " +"иÑпользуетÑÑ Ð¿Ð¾Ñ‚Ð¾Ðº и [HTTPClient] не может ÑоединитьÑÑ Ñ Ñ…Ð¾Ñтом.\n" +"[b]Примечание:[/b] ЕÑли [code]метод[/code] ÑвлÑетÑÑ [constant HTTPClient." +"METHOD_GET], Ð¿Ð¾Ð»ÐµÐ·Ð½Ð°Ñ Ð½Ð°Ð³Ñ€ÑƒÐ·ÐºÐ°, Ð¾Ñ‚Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ð°Ñ Ñ‡ÐµÑ€ÐµÐ· [code]request_data[/" +"code], может быть проигнорирована Ñервером или даже привеÑти к отклонению " +"запроÑа (подробнее Ñм. [url=https://datatracker.ietf.org/doc/html/" +"rfc7231#section-4.3.1]RFC 7231 раздел 4.3.1[/url]). Ð’ качеÑтве обходного " +"пути вы можете отправить данные в виде Ñтроки запроÑа в URL. Пример Ñм. в " +"[method String.http_escape]." #: doc/classes/HTTPRequest.xml msgid "" @@ -30520,7 +31029,7 @@ msgstr "" #: doc/classes/Image.xml msgid "Image datatype." -msgstr "" +msgstr "Тип данных изображениÑ." #: doc/classes/Image.xml msgid "" @@ -31888,6 +32397,19 @@ msgid "" "recommended to keep it enabled for games which don't require very reactive " "input, as this will decrease CPU usage." msgstr "" +"ЕÑли [code]true[/code], аналогичные входные ÑобытиÑ, поÑылаемые операционной " +"ÑиÑтемой, накапливаютÑÑ. Когда накопление входных данных включено, вÑе " +"входные ÑобытиÑ, генерируемые в течение кадра, будут объединены и выданы " +"поÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ Ñ€ÐµÐ½Ð´ÐµÑ€Ð¸Ð½Ð³Ð° кадра. Таким образом, Ñто ограничивает " +"количеÑтво вызовов метода ввода в Ñекунду до FPS рендеринга.\n" +"Ðакопление ввода можно отключить, чтобы получить немного более точный/" +"реактивный ввод ценой ÑƒÐ²ÐµÐ»Ð¸Ñ‡ÐµÐ½Ð¸Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ процеÑÑора. Ð’ приложениÑÑ…, где " +"требуетÑÑ Ñ€Ð¸Ñовать линии от руки, накопление ввода обычно отключаетÑÑ Ð½Ð° " +"Ð²Ñ€ÐµÐ¼Ñ Ñ€Ð¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð»Ð¸Ð½Ð¸Ð¸ пользователем, чтобы получить результаты, точно " +"ÑоответÑтвующие реальному вводу.\n" +"[b]Примечание:[/b] Ðакопление ввода [i]включено[/i] по умолчанию. " +"РекомендуетÑÑ Ð´ÐµÑ€Ð¶Ð°Ñ‚ÑŒ его включенным в играх, которые не требуют очень " +"реактивного ввода, так как Ñто Ñнизит нагрузку на процеÑÑор." #: doc/classes/Input.xml msgid "Emitted when a joypad device has been connected or disconnected." @@ -32023,7 +32545,7 @@ msgstr "" #: doc/classes/InputEvent.xml msgid "InputEvent" -msgstr "" +msgstr "InputEvent" #: doc/classes/InputEvent.xml msgid "" @@ -32764,6 +33286,25 @@ msgid "" "print(max_int) # -9223372036854775808, we overflowed and wrapped around.\n" "[/codeblock]" msgstr "" +"Знаковый 64-битный целочиÑленный тип.\n" +"Он может принимать Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² интервале [code][-2^63, 2^63 - 1][/code], Ñ‚.е. " +"[code][-9223372036854775808, 9223372036854775807][/code]. Превышение Ñтих " +"границ будет обернуто.\n" +"[int] ÑвлÑетÑÑ Ñ‚Ð¸Ð¿Ð¾Ð¼ [Variant], и поÑтому будет иÑпользоватьÑÑ Ð¿Ñ€Ð¸ " +"приÑвоении целочиÑленного Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ [Variant]. Он также может быть применен Ñ " +"помощью подÑказки типа [code]: int[/code].\n" +"[codeblock].\n" +"var my_variant = 0 # int, значение 0.\n" +"my_variant += 4.2 # float, значение 4.2.\n" +"var my_int: int = 1 # int, значение 1.\n" +"my_int = 4.2 # int, значение 4, правое значение неÑвно приводитÑÑ Ðº int.\n" +"my_int = int(\"6.7\") # int, значение 6, Ñтрока Ñвно приводитÑÑ Ðº int.\n" +"\n" +"var max_int = 9223372036854775807\n" +"print(max_int) # 9223372036854775807, OK.\n" +"max_int += 1\n" +"print(max_int) # -9223372036854775808, мы переполнилиÑÑŒ и обернулиÑÑŒ.\n" +"[/codeblock]" #: doc/classes/int.xml msgid "" @@ -33525,6 +34066,41 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] Only available in the HTML5 platform." msgstr "" +"JavaScriptObject иÑпользуетÑÑ Ð´Ð»Ñ Ð²Ð·Ð°Ð¸Ð¼Ð¾Ð´ÐµÐ¹ÑÑ‚Ð²Ð¸Ñ Ñ Ð¾Ð±ÑŠÐµÐºÑ‚Ð°Ð¼Ð¸ JavaScript, " +"полученными или Ñозданными Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ [метода JavaScript.get_interface], " +"[метода JavaScript.create_object] или [метода JavaScript.create_callback].\n" +"Пример:\n" +"[codeblock]\n" +"раÑширÑет Node\n" +"\n" +"var _my_js_callback = JavaScript.create_callback(self, \"myCallback\") # Ðта " +"ÑÑылка должна быть Ñохранена\n" +"var console = JavaScript.get_interface(\"console\")\n" +"\n" +"func _init():\n" +" var buf = JavaScript.create_object(\"ArrayBuffer\", 10) # новый " +"ArrayBuffer(10)\n" +" print(buf) # печатает [JavaScriptObject:OBJECT_ID]\n" +" var uint8arr = JavaScript.create_object(\"Uint8Array\", buf) # новый " +"Uint8Array(buf)\n" +" uint8arr[1] = 255\n" +" prints(uint8arr[1], uint8arr.byteLength) # печатает 255 10\n" +" console.log(uint8arr) # печатает в конÑоли браузера \"Uint8Array(10) " +"[ 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]\"\n" +"\n" +" # Ðквивалент JavaScript: Array.from(uint8arr).forEach(myCallback)\n" +" JavaScript.get_interface(\"Array\").from(uint8arr)." +"forEach(_my_js_callback)\n" +"\n" +"func myCallback(args):\n" +" # Будет вызван Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°Ð¼Ð¸, переданными в обратный вызов \"forEach\".\n" +" # [0, 0, [JavaScriptObject:1173]]\n" +" # [255, 1, [JavaScriptObject:1173]]\n" +" # ...\n" +" # [0, 9, [JavaScriptObject:1180]]\n" +" print(args)\n" +"[/codeblock].\n" +"[b]Примечание:[/b] ДоÑтупно только в платформе HTML5." #: doc/classes/JNISingleton.xml msgid "" @@ -33714,7 +34290,6 @@ msgid "" msgstr "" #: doc/classes/JSONParseResult.xml -#, fuzzy msgid "" "A [Variant] containing the parsed JSON. Use [method @GDScript.typeof] or the " "[code]is[/code] keyword to check if it is what you expect. For example, if " @@ -33736,25 +34311,25 @@ msgid "" " push_error(\"Unexpected results.\")\n" "[/codeblock]" msgstr "" -"ÐŸÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ð°Ñ ([Variant]), ÑÐ¾Ð´ÐµÑ€Ð¶Ð°Ñ‰Ð°Ñ Ñ€Ð°Ð·Ð¾Ð±Ñ€Ð°Ð½Ð½Ñ‹Ð¹ JSON. ИÑпользуйте [method " -"@GDScript.typeof] или ключевое Ñлово [code]is[/code] чтобы проверить " -"ожидаемый тип. Ðапример, еÑли иÑходный JSON начинаетÑÑ Ñ Ñ„Ð¸Ð³ÑƒÑ€Ð½Ñ‹Ñ… Ñкобок " -"([code]{}[/code]), будет возвращён Ñловарь ([Dictionary]). ЕÑли иÑходный " -"JSON начинаетÑÑ Ñ ÐºÐ²Ð°Ð´Ñ€Ð°Ñ‚Ð½Ñ‹Ñ… Ñкобок ([code][][/code]), будет возвращён " -"маÑÑив ([Array]).\n" -"[b]Примечание:[/b] Ð¡Ð¿ÐµÑ†Ð¸Ñ„Ð¸ÐºÐ°Ñ†Ð¸Ñ JSON не определÑет типы integer и float, " -"только тип[i]number[/i]. Таким образом, при разборе Ñтроки JSON вÑе чиÑловые " -"Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð±ÑƒÐ´ÑƒÑ‚ преобразованы в тип [float].\n" -"[b]Примечание:[/b] JSON-объекты не ÑохранÑÑŽÑ‚ порÑдок ключей как Ñловари " -"Godot, поÑтому вы не должны полагатьÑÑ Ð½Ð° порÑдок ÑÐ»ÐµÐ´Ð¾Ð²Ð°Ð½Ð¸Ñ ÐºÐ»ÑŽÑ‡ÐµÐ¹, еÑли " -"Ñловарь получен из JSON. МаÑÑивы JSON, напротив, ÑохранÑÑŽÑ‚ порÑдок Ñвоих " -"Ñлементов:\n" -"[codeblock]\n" +"Вариант [Variant], Ñодержащий разобранный JSON. ИÑпользуйте [method " +"@GDScript.typeof] или ключевое Ñлово [code]is[/code], чтобы проверить, " +"ÑвлÑетÑÑ Ð»Ð¸ Ñто тем, что вы ожидаете. Ðапример, еÑли иÑточник JSON " +"начинаетÑÑ Ñ Ñ„Ð¸Ð³ÑƒÑ€Ð½Ñ‹Ñ… Ñкобок ([code]{}[/code]), будет возвращен [Словарь]. " +"ЕÑли иÑточник JSON начинаетÑÑ Ñо Ñкобок ([code][][/code]), будет возвращен " +"[МаÑÑив].\n" +"[b]Примечание:[/b] Ð’ Ñпецификации JSON не определены типы integer или float, " +"а только тип [i]number[/i]. ПоÑтому при разборе текÑта JSON вÑе чиÑловые " +"Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð±ÑƒÐ´ÑƒÑ‚ преобразованы в типы [float].\n" +"[b]Примечание:[/b] Объекты JSON не ÑохранÑÑŽÑ‚ порÑдок ключей, как Ñловари " +"Godot, поÑтому не Ñледует полагатьÑÑ Ð½Ð° то, что ключи будут раÑположены в " +"определенном порÑдке, еÑли Ñловарь поÑтроен из JSON. Ðапротив, маÑÑивы JSON " +"ÑохранÑÑŽÑ‚ порÑдок Ñвоих Ñлементов:\n" +"[codeblock].\n" "var p = JSON.parse('[\"hello\", \"world\", \"!\"]')\n" "if typeof(p.result) == TYPE_ARRAY:\n" -" print(p.result[0]) # Выведет \"hello\"\n" +" print(p.result[0]) # Печатает \"hello\".\n" "else:\n" -" push_error(\"Ðеожиданный результат.\")\n" +" push_error(\"Ðеожиданные результаты.\")\n" "[/codeblock]" #: doc/classes/JSONRPC.xml @@ -33849,6 +34424,21 @@ msgid "" "while performing collision tests. This makes them really useful to implement " "characters that collide against a world, but don't require advanced physics." msgstr "" +"КинематичеÑкие тела - Ñто оÑобые типы тел, которые предназначены Ð´Ð»Ñ " +"ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÐµÐ¼. Ðа них вообще не влиÑет физика; Ð´Ð»Ñ Ð´Ñ€ÑƒÐ³Ð¸Ñ… типов " +"тел, таких как перÑонаж или жеÑткое тело, Ñто то же Ñамое, что и ÑтатичеÑкое " +"тело. Однако у них еÑÑ‚ÑŒ два оÑновных применениÑ:\n" +"[b]Ð˜Ð¼Ð¸Ñ‚Ð°Ñ†Ð¸Ñ Ð´Ð²Ð¸Ð¶ÐµÐ½Ð¸Ñ:[/b] Когда Ñти тела перемещаютÑÑ Ð²Ñ€ÑƒÑ‡Ð½ÑƒÑŽ, либо из кода, " +"либо из [AnimationPlayer] (Ñ [member AnimationPlayer.playback_process_mode], " +"уÑтановленным на \"physics\"), физика автоматичеÑки вычиÑлÑет оценку их " +"линейной и угловой ÑкороÑти. Ðто делает их очень полезными Ð´Ð»Ñ Ð´Ð²Ð¸Ð¶ÑƒÑ‰Ð¸Ñ…ÑÑ " +"платформ или других объектов, управлÑемых AnimationPlayer (например, дверь, " +"открывающийÑÑ Ð¼Ð¾ÑÑ‚ и Ñ‚.д.).\n" +"[b]КинематичеÑкие перÑонажи:[/b] KinematicBody также имеет API Ð´Ð»Ñ " +"Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ Ð¾Ð±ÑŠÐµÐºÑ‚Ð¾Ð² (методы [method move_and_collide] и [method " +"move_and_slide]) при выполнении теÑтов на ÑтолкновениÑ. Ðто делает их " +"дейÑтвительно полезными Ð´Ð»Ñ Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ð¸ перÑонажей, которые ÑталкиваютÑÑ Ñ " +"миром, но не требуют продвинутой физики." #: doc/classes/KinematicBody.xml doc/classes/KinematicBody2D.xml msgid "Kinematic character (2D)" @@ -34102,6 +34692,21 @@ msgid "" "while performing collision tests. This makes them really useful to implement " "characters that collide against a world, but don't require advanced physics." msgstr "" +"КинематичеÑкие тела - Ñто оÑобые типы тел, которые предназначены Ð´Ð»Ñ " +"ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÐµÐ¼. Ðа них вообще не влиÑет физика; Ð´Ð»Ñ Ð´Ñ€ÑƒÐ³Ð¸Ñ… типов " +"тел, таких как перÑонаж или жеÑткое тело, Ñто то же Ñамое, что и ÑтатичеÑкое " +"тело. Однако у них еÑÑ‚ÑŒ два оÑновных применениÑ:\n" +"[b]Ð˜Ð¼Ð¸Ñ‚Ð°Ñ†Ð¸Ñ Ð´Ð²Ð¸Ð¶ÐµÐ½Ð¸Ñ:[/b] Когда Ñти тела перемещаютÑÑ Ð²Ñ€ÑƒÑ‡Ð½ÑƒÑŽ, либо из кода, " +"либо из [AnimationPlayer] (Ñ [member AnimationPlayer.playback_process_mode], " +"уÑтановленным на \"physics\"), физика автоматичеÑки вычиÑлÑет оценку их " +"линейной и угловой ÑкороÑти. Ðто делает их очень полезными Ð´Ð»Ñ Ð´Ð²Ð¸Ð¶ÑƒÑ‰Ð¸Ñ…ÑÑ " +"платформ или других объектов, управлÑемых AnimationPlayer (например, дверь, " +"открывающийÑÑ Ð¼Ð¾ÑÑ‚ и Ñ‚.д.).\n" +"[b]КинематичеÑкие перÑонажи:[/b] KinematicBody2D также имеет API Ð´Ð»Ñ " +"Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ Ð¾Ð±ÑŠÐµÐºÑ‚Ð¾Ð² (методы [method move_and_collide] и [method " +"move_and_slide]) при выполнении теÑтов на ÑтолкновениÑ. Ðто делает их " +"дейÑтвительно полезными Ð´Ð»Ñ Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ð¸ перÑонажей, которые ÑталкиваютÑÑ Ñ " +"миром, но не требуют продвинутой физики." #: doc/classes/KinematicBody2D.xml msgid "Using KinematicBody2D" @@ -34791,7 +35396,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -38120,6 +38727,7 @@ msgid "3D agent used in navigation for collision avoidance." msgstr "" #: doc/classes/NavigationAgent.xml +#, fuzzy msgid "" "3D agent that is used in navigation to reach a location while avoiding " "static and dynamic obstacles. The dynamic obstacles are avoided using RVO " @@ -38133,8 +38741,26 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." -msgstr "" +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." +msgstr "" +"3D-агент, который иÑпользуетÑÑ Ð² навигации Ð´Ð»Ñ Ð´Ð¾ÑÑ‚Ð¸Ð¶ÐµÐ½Ð¸Ñ Ð¼ÐµÑтоположениÑ, " +"Ð¸Ð·Ð±ÐµÐ³Ð°Ñ Ð¿Ñ€Ð¸ Ñтом ÑтатичеÑких и динамичеÑких препÑÑ‚Ñтвий. ДинамичеÑкие " +"препÑÑ‚ÑÑ‚Ð²Ð¸Ñ Ð¸Ð·Ð±ÐµÐ³Ð°ÑŽÑ‚ÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ ÑиÑтемы Ð¿Ñ€ÐµÐ´Ð¾Ñ‚Ð²Ñ€Ð°Ñ‰ÐµÐ½Ð¸Ñ Ñтолкновений RVO " +"(Reciprocal Velocity Obstacles). Ð”Ð»Ñ ÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð¾Ð¹ работы агенту необходимы " +"навигационные данные. По умолчанию Ñтот узел региÑтрируетÑÑ Ð½Ð° навигационной " +"карте по умолчанию [Мир]. ЕÑли Ñтот узел ÑвлÑетÑÑ Ð´Ð¾Ñ‡ÐµÑ€Ð½Ð¸Ð¼ узлом " +"[Navigation], он будет региÑтрироватьÑÑ Ð½Ð° навигационной карте " +"навигационного узла, или можно иÑпользовать функцию [method set_navigation], " +"чтобы уÑтановить навигационный узел напрÑмую. [NavigationAgent] ÑвлÑетÑÑ " +"физичеÑки безопаÑным.\n" +"[b]Примечание:[/b] ПоÑле иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ [method set_target_location] " +"необходимо иÑпользовать функцию [method get_next_location] раз в каждый кадр " +"физики Ð´Ð»Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð²Ð½ÑƒÑ‚Ñ€ÐµÐ½Ð½ÐµÐ¹ логики пути NavigationAgent. Ð’Ð¾Ð·Ð²Ñ€Ð°Ñ‰Ð°ÐµÐ¼Ð°Ñ " +"Ð²ÐµÐºÑ‚Ð¾Ñ€Ð½Ð°Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ð¸Ñ Ð¸Ð· Ñтой функции должна иÑпользоватьÑÑ Ð² качеÑтве Ñледующей " +"позиции Ð´Ð²Ð¸Ð¶ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ñ€Ð¾Ð´Ð¸Ñ‚ÐµÐ»ÑŒÑкого узла агента." #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml msgid "" @@ -38373,6 +38999,7 @@ msgid "2D agent used in navigation for collision avoidance." msgstr "" #: doc/classes/NavigationAgent2D.xml +#, fuzzy msgid "" "2D agent that is used in navigation to reach a location while avoiding " "static and dynamic obstacles. The dynamic obstacles are avoided using RVO " @@ -38386,8 +39013,26 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." -msgstr "" +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." +msgstr "" +"2D агент, который иÑпользуетÑÑ Ð² навигации Ð´Ð»Ñ Ð´Ð¾ÑÑ‚Ð¸Ð¶ÐµÐ½Ð¸Ñ Ð¼ÐµÑтоположениÑ, " +"Ð¸Ð·Ð±ÐµÐ³Ð°Ñ Ð¿Ñ€Ð¸ Ñтом ÑтатичеÑких и динамичеÑких препÑÑ‚Ñтвий. ДинамичеÑкие " +"препÑÑ‚ÑÑ‚Ð²Ð¸Ñ Ð¸Ð·Ð±ÐµÐ³Ð°ÑŽÑ‚ÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ ÑиÑтемы Ð¿Ñ€ÐµÐ´Ð¾Ñ‚Ð²Ñ€Ð°Ñ‰ÐµÐ½Ð¸Ñ Ñтолкновений RVO " +"(Reciprocal Velocity Obstacles). Ð”Ð»Ñ ÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð¾Ð¹ работы агенту необходимы " +"навигационные данные. По умолчанию Ñтот узел региÑтрируетÑÑ Ð½Ð° навигационной " +"карте по умолчанию [World2D]. ЕÑли Ñтот узел ÑвлÑетÑÑ Ð´Ð¾Ñ‡ÐµÑ€Ð½Ð¸Ð¼ Ð´Ð»Ñ ÑƒÐ·Ð»Ð° " +"[Navigation2D], он будет региÑтрироватьÑÑ Ð½Ð° навигационной карте " +"навигационного узла, или Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ [method set_navigation] может быть " +"иÑпользована Ð´Ð»Ñ Ð½ÐµÐ¿Ð¾ÑредÑтвенной уÑтановки навигационного узла. " +"[NavigationAgent2D] ÑвлÑетÑÑ Ñ„Ð¸Ð·Ð¸Ñ‡ÐµÑки безопаÑным.\n" +"[b]Примечание:[/b] ПоÑле иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ [method set_target_location] " +"необходимо иÑпользовать функцию [method get_next_location] один раз в каждый " +"кадр физики Ð´Ð»Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð²Ð½ÑƒÑ‚Ñ€ÐµÐ½Ð½ÐµÐ¹ логики пути NavigationAgent. " +"Ð’Ð¾Ð·Ð²Ñ€Ð°Ñ‰Ð°ÐµÐ¼Ð°Ñ Ð²ÐµÐºÑ‚Ð¾Ñ€Ð½Ð°Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ð¸Ñ Ð¸Ð· Ñтой функции должна иÑпользоватьÑÑ Ð² " +"качеÑтве Ñледующей позиции Ð´Ð²Ð¸Ð¶ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ñ€Ð¾Ð´Ð¸Ñ‚ÐµÐ»ÑŒÑкого узла агента." #: doc/classes/NavigationAgent2D.xml #, fuzzy @@ -39113,6 +39758,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39478,6 +40126,21 @@ msgid "" "COMPRESS_NONE]. Nonetheless, mixing engine versions between clients and " "server is not recommended and not officially supported." msgstr "" +"Метод ÑжатиÑ, иÑпользуемый Ð´Ð»Ñ Ñетевых пакетов. Они имеют различные " +"компромиÑÑÑ‹ между ÑкороÑтью ÑÐ¶Ð°Ñ‚Ð¸Ñ Ð¸ пропуÑкной ÑпоÑобноÑтью, вам может " +"потребоватьÑÑ Ð¿Ñ€Ð¾Ð²ÐµÑ€Ð¸Ñ‚ÑŒ, какой из них лучше вÑего подходит Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ³Ð¾ " +"ÑлучаÑ, еÑли вы вообще иÑпользуете Ñжатие.\n" +"[b]Примечание:[/b] Сетевой дизайн большинÑтва игр предполагает чаÑтую " +"отправку множеÑтва небольших пакетов (размером менее 4 КБ каждый). ЕÑли еÑÑ‚ÑŒ " +"ÑомнениÑ, рекомендуетÑÑ Ð¾Ñтавить алгоритм ÑÐ¶Ð°Ñ‚Ð¸Ñ Ð¿Ð¾ умолчанию, так как он " +"лучше вÑего работает Ñ Ñ‚Ð°ÐºÐ¸Ð¼Ð¸ маленькими пакетами.\n" +"[b]Примечание:[/b] [member compression_mode] должен быть уÑтановлен на одно " +"и то же значение как на Ñервере, так и на вÑех его клиентах. Клиенты не " +"Ñмогут подключитьÑÑ, еÑли значение [member compression_mode], уÑтановленное " +"на клиенте, отличаетÑÑ Ð¾Ñ‚ уÑтановленного на Ñервере. До Godot 3.4 по " +"умолчанию [member compression_mode] был [constant COMPRESS_NONE]. Тем не " +"менее, Ñмешивать верÑии движка между клиентами и Ñервером не рекомендуетÑÑ Ð¸ " +"официально не поддерживаетÑÑ." #: modules/enet/doc_classes/NetworkedMultiplayerENet.xml msgid "" @@ -39556,7 +40219,7 @@ msgstr "" #: modules/enet/doc_classes/NetworkedMultiplayerENet.xml msgid "[url=https://facebook.github.io/zstd/]Zstandard[/url] compression." -msgstr "" +msgstr "[url=https://facebook.github.io/zstd/]Zstandard[/url] cжатие." #: doc/classes/NetworkedMultiplayerPeer.xml msgid "A high-level network interface to simplify multiplayer interactions." @@ -39966,6 +40629,20 @@ msgid "" "call with [method request_ready], which may be called anywhere before adding " "the node again." msgstr "" +"ВызываетÑÑ, когда узел \"готов\", Ñ‚.е. когда и узел, и его дочерние Ñлементы " +"вошли в дерево Ñцены. ЕÑли узел имеет дочерние узлы, то Ñначала Ñрабатывают " +"их обратные вызовы [метода _ready], а затем родительÑкий узел получает " +"уведомление о готовноÑти.\n" +"СоответÑтвует уведомлению [constant NOTIFICATION_READY] в [method Object." +"_notification]. См. также ключевое Ñлово [code]onready[/code] Ð´Ð»Ñ " +"переменных.\n" +"Обычно иÑпользуетÑÑ Ð´Ð»Ñ Ð¸Ð½Ð¸Ñ†Ð¸Ð°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ð¸. Ð”Ð»Ñ ÐµÑ‰Ðµ более ранней инициализации " +"можно иÑпользовать [метод Object._init]. См. также [метод _enter_tree].\n" +"[b]Примечание:[/b] [метод _ready] может быть вызван только один раз Ð´Ð»Ñ " +"каждого узла. ПоÑле ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ ÑƒÐ·Ð»Ð° из дерева Ñцены и Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ ÐµÐ³Ð¾ Ñнова, " +"[code]_ready[/code] не будет вызван второй раз. Ðто можно обойти, запроÑив " +"повторный вызов Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ [метода request_ready], который может быть вызван " +"в любом меÑте перед повторным добавлением узла." #: doc/classes/Node.xml msgid "" @@ -40095,6 +40772,21 @@ msgid "" "consider using [method get_node] instead. To avoid using [method find_node] " "too often, consider caching the node reference into a variable." msgstr "" +"Ðаходит потомка Ñтого узла, Ð¸Ð¼Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ð¾Ð³Ð¾ ÑоответÑтвует [code]маÑке[/code] " +"как в [методе String.match] (Ñ‚.е. чувÑтвительно к региÑтру, но [code]\"*\"[/" +"code] ÑоответÑтвует нулю или более Ñимволов, а [code]\"?\"[/code] " +"ÑоответÑтвует любому одиночному Ñимволу, кроме [code]\".\"[/code]). " +"Возвращает [code]null[/code], еÑли не найдено ни одного подходÑщего [узла].\n" +"[b]Примечание:[/b] Ðе ищет ÑÐ¾Ð²Ð¿Ð°Ð´ÐµÐ½Ð¸Ñ Ð¿Ð¾ полному пути, только по именам " +"отдельных узлов.\n" +"ЕÑли [code]owned[/code] is [code]true[/code], Ñтот метод находит только " +"узлы, владельцем которых ÑвлÑетÑÑ Ñтот узел. Ðто оÑобенно важно Ð´Ð»Ñ Ñцен, " +"Ñозданных через Ñценарий, поÑкольку у таких Ñцен нет владельца.\n" +"[b]Примечание:[/b] ПоÑкольку Ñтот метод проходит по вÑем потомкам узла, Ñто " +"Ñамый медленный ÑпоÑоб получить ÑÑылку на другой узел. По возможноÑти " +"иÑпользуйте вмеÑто него [method get_node]. Чтобы не иÑпользовать [метод " +"find_node] Ñлишком чаÑто, подумайте о кÑшировании ÑÑылки на узел в " +"переменной." #: doc/classes/Node.xml msgid "" @@ -40535,6 +41227,20 @@ msgid "" "like [code]server_disconnected[/code] or by checking [code]SceneTree." "network_peer.get_connection_status() == CONNECTION_CONNECTED[/code]." msgstr "" +"ОтправлÑет Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð½Ð° вызов удаленной процедуры Ð´Ð»Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ [code]метода[/" +"code] равным узлам в Ñети (и локально), по желанию отправлÑÑ Ð²Ñе " +"дополнительные аргументы в качеÑтве аргументов метода, вызываемого RPC. " +"Ð—Ð°Ð¿Ñ€Ð¾Ñ Ð²Ñ‹Ð·Ð¾Ð²Ð° будет получен только узлами Ñ Ð¾Ð´Ð¸Ð½Ð°ÐºÐ¾Ð²Ñ‹Ð¼ [NodePath], Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ " +"точно такое же Ð¸Ð¼Ñ ÑƒÐ·Ð»Ð°. Поведение завиÑит от конфигурации RPC Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ " +"метода, Ñм. [method rpc_config]. По умолчанию методы не открыты Ð´Ð»Ñ RPC. См. " +"также [method rset] и [method rset_config] Ð´Ð»Ñ ÑвойÑтв. Возвращает " +"[code]null[/code].\n" +"[b]Примечание:[/b] Ð’Ñ‹ можете безопаÑно иÑпользовать RPC на клиентах только " +"поÑле Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ñигнала [code]connected_to_server[/code] от [SceneTree]. Вам " +"также необходимо отÑлеживать ÑоÑтоÑние ÑоединениÑ, либо по Ñигналам " +"[SceneTree], таким как [code]server_disconnected[/code], либо проверÑÑ " +"[code]SceneTree.network_peer.get_connection_status() == " +"CONNECTION_CONNECTED[/code]." #: doc/classes/Node.xml msgid "" @@ -41079,7 +41785,7 @@ msgstr "Глобальный маÑштаб." #: doc/classes/Node2D.xml msgid "Global [Transform2D]." -msgstr "" +msgstr "Глобальный [Transform2D]." #: doc/classes/Node2D.xml msgid "Position, relative to the node's parent." @@ -41105,7 +41811,7 @@ msgstr "" #: doc/classes/Node2D.xml msgid "Local [Transform2D]." -msgstr "" +msgstr "Локальный [Transform2D]." #: doc/classes/Node2D.xml msgid "" @@ -42011,7 +42717,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -42427,6 +43135,21 @@ msgid "" "the project if it is currently running (since the project is an independent " "child process)." msgstr "" +"Задерживает выполнение текущего потока на [code]мÑек[/code] миллиÑекунд. " +"[code]мÑек[/code] должно быть больше или равно [code]0[/code]. Ð’ противном " +"Ñлучае [метод delay_msec] ничего не Ñделает и выведет Ñообщение об ошибке.\n" +"[b]Примечание:[/b] [method delay_msec] - Ñто [i]блокирующий[/i] ÑпоÑоб " +"задержки Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ ÐºÐ¾Ð´Ð°. Чтобы задержать выполнение кода неблокирующим " +"ÑпоÑобом, Ñмотрите [method SceneTree.create_timer]. Выдача Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ [method " +"SceneTree.create_timer] задержит выполнение кода, размещенного ниже " +"[code]выдачи[/code] без влиÑÐ½Ð¸Ñ Ð½Ð° оÑтальную чаÑÑ‚ÑŒ проекта (или редактора, " +"Ð´Ð»Ñ [EditorPlugin]ов и [EditorScript]ов).\n" +"[b]Примечание:[/b] ЕÑли [метод delay_msec] вызываетÑÑ Ð² главном потоке, он " +"замораживает проект и не позволÑет ему перериÑовывать и региÑтрировать ввод, " +"пока не пройдет задержка. При иÑпользовании [method delay_msec] как чаÑти " +"[EditorPlugin] или [EditorScript], он заморозит редактор, но не заморозит " +"проект, еÑли он запущен (поÑкольку проект ÑвлÑетÑÑ Ð½ÐµÐ·Ð°Ð²Ð¸Ñимым дочерним " +"процеÑÑом)." #: doc/classes/OS.xml msgid "" @@ -42447,6 +43170,21 @@ msgid "" "the project if it is currently running (since the project is an independent " "child process)." msgstr "" +"Задерживает выполнение текущего потока на [code]usec[/code] микроÑекунд. " +"[code]usec[/code] должно быть больше или равно [code]0[/code]. Ð’ противном " +"Ñлучае [метод delay_usec] ничего не Ñделает и выведет Ñообщение об ошибке.\n" +"[b]Примечание:[/b] [method delay_usec] - Ñто [i]блокирующий[/i] ÑпоÑоб " +"задержки Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ ÐºÐ¾Ð´Ð°. Чтобы задержать выполнение кода неблокирующим " +"ÑпоÑобом, Ñмотрите [method SceneTree.create_timer]. Выдача Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ [method " +"SceneTree.create_timer] задержит выполнение кода, размещенного ниже " +"[code]выдачи[/code] без влиÑÐ½Ð¸Ñ Ð½Ð° оÑтальную чаÑÑ‚ÑŒ проекта (или редактора, " +"Ð´Ð»Ñ [EditorPlugin]ов и [EditorScript]ов).\n" +"[b]Примечание:[/b] ЕÑли [метод delay_usec] вызываетÑÑ Ð² главном потоке, он " +"замораживает проект и не позволÑет ему перериÑовывать и региÑтрировать ввод, " +"пока не пройдет задержка. При иÑпользовании [method delay_usec] как чаÑти " +"[EditorPlugin] или [EditorScript], он заморозит редактор, но не заморозит " +"проект, еÑли он запущен (поÑкольку проект ÑвлÑетÑÑ Ð½ÐµÐ·Ð°Ð²Ð¸Ñимым дочерним " +"процеÑÑом)." #: doc/classes/OS.xml msgid "" @@ -42535,11 +43273,11 @@ msgstr "Возвращает вектор привÑзанный к Ñетке Ñ #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42569,15 +43307,38 @@ msgid "" " arguments[argument.lstrip(\"--\")] = \"\"\n" "[/codeblock]" msgstr "" +"Возвращает аргументы командной Ñтроки, переданные движку.\n" +"Ðргументы командной Ñтроки могут быть запиÑаны в любой форме, Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ Ñ„Ð¾Ñ€Ð¼Ñ‹ " +"[code]--key value[/code] и [code]--key=value[/code], чтобы они могли быть " +"правильно разобраны, при уÑловии, что пользовательÑкие аргументы командной " +"Ñтроки не конфликтуют Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ð°Ð¼Ð¸ движка.\n" +"Ð’Ñ‹ также можете включить переменные окружениÑ, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ð¼ÐµÑ‚Ð¾Ð´ [method " +"get_environment].\n" +"Ð’Ñ‹ можете уÑтановить [member ProjectSettings.editor/main_run_args] Ð´Ð»Ñ " +"Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ð¾Ð² командной Ñтроки, которые будут передаватьÑÑ " +"редактором при запуÑке проекта.\n" +"Вот минимальный пример того, как разобрать аргументы командной Ñтроки в " +"Ñловарь, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ñ„Ð¾Ñ€Ð¼Ñƒ [code]--key=value[/code] Ð´Ð»Ñ Ð°Ñ€Ð³ÑƒÐ¼ÐµÐ½Ñ‚Ð¾Ð²:\n" +"[codeblock].\n" +"var arguments = {}\n" +"for argument in OS.get_cmdline_args():\n" +" if argument.find(\"=\") > -1:\n" +" var key_value = argument.split(\"=\")\n" +" arguments[key_value[0].lstrip(\"--\")] = key_value[1]\n" +" else:\n" +" # Опции без аргумента будут приÑутÑтвовать в Ñловаре,\n" +" # Ñо значением, уÑтановленным в пуÑтую Ñтроку.\n" +" arguments[argument.lstrip(\"--\")] = \"\"\n" +"[/codeblock]" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42599,11 +43360,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -43769,9 +44530,8 @@ msgid "Ringtones directory path." msgstr "" #: doc/classes/OS.xml -#, fuzzy msgid "Unknown powerstate." -msgstr "ÐеизвеÑÑ‚Ð½Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ°." +msgstr "ÐеизвеÑтное ÑоÑтоÑние питаниÑ." #: doc/classes/OS.xml msgid "Unplugged, running on battery." @@ -44485,6 +45245,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -45200,7 +45970,7 @@ msgstr "" #: doc/classes/PHashTranslation.xml msgid "Optimized translation." -msgstr "" +msgstr "Оптимизированный перевод." #: doc/classes/PHashTranslation.xml msgid "" @@ -45231,7 +46001,7 @@ msgstr "" #: doc/classes/PhysicsDirectBodyState.xml #: doc/classes/PhysicsDirectSpaceState.xml doc/classes/RayCast.xml msgid "Ray-casting" -msgstr "" +msgstr "ТраÑÑировка лучей" #: doc/classes/Physics2DDirectBodyState.xml doc/classes/RigidBody2D.xml msgid "Adds a constant directional force without affecting rotation." @@ -45448,6 +46218,23 @@ msgid "" "[code]rid[/code]: The intersecting object's [RID].\n" "[code]shape[/code]: The shape index of the colliding shape." msgstr "" +"ПроверÑет переÑÐµÑ‡ÐµÐ½Ð¸Ñ Ñ„Ð¸Ð³ÑƒÑ€Ñ‹, заданной через объект " +"[Physics2DShapeQueryParameters], Ñ Ð¿Ñ€Ð¾ÑтранÑтвом. ЕÑли она переÑекаетÑÑ Ñ " +"более чем одной фигурой, выбираетÑÑ Ð±Ð»Ð¸Ð¶Ð°Ð¹ÑˆÐ°Ñ. ЕÑли фигура ни Ñ Ñ‡ÐµÐ¼ не " +"переÑекаетÑÑ, то возвращаетÑÑ Ð¿ÑƒÑтой Ñловарь.\n" +"[b]Примечание:[/b] Ðтот метод не учитывает ÑвойÑтво [code]движениÑ[/code] " +"объекта. Возвращаемый объект предÑтавлÑет Ñобой Ñловарь, Ñодержащий " +"Ñледующие полÑ:\n" +"[code]collider_id[/code]: ID ÑталкивающегоÑÑ Ð¾Ð±ÑŠÐµÐºÑ‚Ð°.\n" +"[code]linear_velocity[/code]: СкороÑÑ‚ÑŒ объекта ÑÑ‚Ð¾Ð»ÐºÐ½Ð¾Ð²ÐµÐ½Ð¸Ñ [Vector2]. ЕÑли " +"объект ÑвлÑетÑÑ [Area2D], то результатом будет [code](0, 0)[/code].\n" +"[code]метаданные[/code]: Метаданные переÑекающейÑÑ Ñ„Ð¸Ð³ÑƒÑ€Ñ‹. Ðти метаданные " +"отличаютÑÑ Ð¾Ñ‚ [метод Object.get_meta], и уÑтанавливаютÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ [метод " +"Physics2DServer.shape_set_data].\n" +"[code]normal[/code]: Ðормаль поверхноÑти объекта в точке переÑечениÑ.\n" +"[code]точка[/code]: Точка переÑечениÑ.\n" +"[code]rid[/code]: [RID] переÑекающегоÑÑ Ð¾Ð±ÑŠÐµÐºÑ‚Ð°.\n" +"[code]shape[/code]: Ð˜Ð½Ð´ÐµÐºÑ Ñ„Ð¾Ñ€Ð¼Ñ‹ ÑталкивающейÑÑ Ñ„Ð¸Ð³ÑƒÑ€Ñ‹." #: doc/classes/Physics2DDirectSpaceState.xml msgid "" @@ -45472,6 +46259,26 @@ msgid "" "[code]Segments[/code] build mode are not solid shapes. Therefore, they will " "not be detected." msgstr "" +"ПроверÑет, находитÑÑ Ð»Ð¸ точка внутри какой-либо твердой фигуры. Фигуры, " +"внутри которых находитÑÑ Ñ‚Ð¾Ñ‡ÐºÐ°, возвращаютÑÑ Ð² виде маÑÑива, Ñодержащего " +"Ñловари Ñо Ñледующими полÑми:\n" +"[code]collider[/code]: Объект ÑтолкновениÑ.\n" +"[code]collider_id[/code]: ID объекта ÑтолкновениÑ.\n" +"[code]metadata[/code]: Метаданные переÑекающейÑÑ Ñ„Ð¸Ð³ÑƒÑ€Ñ‹. Ðти метаданные " +"отличаютÑÑ Ð¾Ñ‚ [метод Object.get_meta], и уÑтанавливаютÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ [метод " +"Physics2DServer.shape_set_data].\n" +"[code]rid[/code]: [RID] переÑекающегоÑÑ Ð¾Ð±ÑŠÐµÐºÑ‚Ð°.\n" +"[code]shape[/code]: Ð˜Ð½Ð´ÐµÐºÑ Ñ„Ð¾Ñ€Ð¼Ñ‹ ÑталкивающейÑÑ Ñ„Ð¸Ð³ÑƒÑ€Ñ‹.\n" +"КоличеÑтво переÑечений может быть ограничено Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ параметра " +"[code]max_results[/code], чтобы уменьшить Ð²Ñ€ÐµÐ¼Ñ Ð¾Ð±Ñ€Ð°Ð±Ð¾Ñ‚ÐºÐ¸.\n" +"Кроме того, метод может принимать [code]exclude[/code] маÑÑив объектов или " +"[RID]ов, которые должны быть иÑключены из Ñтолкновений, " +"[code]collision_mask[/code] битовую маÑку, предÑтавлÑющую физичеÑкие Ñлои " +"Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ¸, или булевы Ð´Ð»Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ñ‚Ð¾Ð³Ð¾, должен ли луч ÑтолкнутьÑÑ Ñ " +"[PhysicsBody2D]s или [Area2D]s, ÑоответÑтвенно.\n" +"[b]Примечание:[/b] [ConcavePolygonShape2D]s и [CollisionPolygon2D]s в режиме " +"поÑÑ‚Ñ€Ð¾ÐµÐ½Ð¸Ñ [code]Segments[/code] не ÑвлÑÑŽÑ‚ÑÑ Ñ‚Ð²ÐµÑ€Ð´Ñ‹Ð¼Ð¸ фигурами. ПоÑтому они " +"не будут обнаружены." #: doc/classes/Physics2DDirectSpaceState.xml msgid "" @@ -45518,6 +46325,24 @@ msgid "" "determine if the ray should collide with [PhysicsBody2D]s or [Area2D]s, " "respectively." msgstr "" +"ПереÑекает луч в заданном проÑтранÑтве. Возвращаемый объект предÑтавлÑет " +"Ñобой Ñловарь Ñо Ñледующими полÑми:\n" +"[code]collider[/code]: Объект ÑтолкновениÑ.\n" +"[code]collider_id[/code]: Идентификатор объекта ÑтолкновениÑ.\n" +"[code]metadata[/code]: Метаданные переÑекающейÑÑ Ñ„Ð¸Ð³ÑƒÑ€Ñ‹. Ðти метаданные " +"отличаютÑÑ Ð¾Ñ‚ [метод Object.get_meta], и уÑтанавливаютÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ [метод " +"Physics2DServer.shape_set_data].\n" +"[code]normal[/code]: Ðормаль поверхноÑти объекта в точке переÑечениÑ.\n" +"[code]position[/code]: Точка переÑечениÑ.\n" +"[code]rid[/code]: [RID] переÑекающегоÑÑ Ð¾Ð±ÑŠÐµÐºÑ‚Ð°.\n" +"[code]shape[/code]: Ð˜Ð½Ð´ÐµÐºÑ Ñ„Ð¾Ñ€Ð¼Ñ‹ переÑекающегоÑÑ Ð¾Ð±ÑŠÐµÐºÑ‚Ð°.\n" +"ЕÑли луч ни Ñ Ñ‡ÐµÐ¼ не переÑекаетÑÑ, то вмеÑто него возвращаетÑÑ Ð¿ÑƒÑтой " +"Ñловарь.\n" +"Кроме того, метод может принимать [code]exclude[/code] маÑÑив объектов или " +"[RID], которые должны быть иÑключены из Ñтолкновений, [code]collision_mask[/" +"code] битовую маÑку, предÑтавлÑющую физичеÑкие Ñлои Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ¸, или булевы " +"Ð´Ð»Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ñ‚Ð¾Ð³Ð¾, должен ли луч ÑтолкнутьÑÑ Ñ [PhysicsBody2D]s или " +"[Area2D]s, ÑоответÑтвенно." #: doc/classes/Physics2DDirectSpaceState.xml msgid "" @@ -47624,6 +48449,22 @@ msgid "" "will allow for unbounded output. If any positive value is passed, and the " "decompression exceeds that amount in bytes, then an error will be returned." msgstr "" +"Возвращает новый [PoolByteArray] Ñ Ñ€Ð°Ñпакованными данными. УÑтановите режим " +"ÑжатиÑ, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ð¾Ð´Ð½Ñƒ из конÑтант [enum File.CompressionMode]. [b]Ðтот " +"метод принимает только режимы ÑÐ¶Ð°Ñ‚Ð¸Ñ gzip и deflate.[/b]\n" +"Ðтот метод потенциально медленнее, чем [code]decompress[/code], так как ему " +"может потребоватьÑÑ Ð¼Ð½Ð¾Ð³Ð¾ÐºÑ€Ð°Ñ‚Ð½Ð¾Ðµ перераÑпределение выходного буфера во Ð²Ñ€ÐµÐ¼Ñ " +"декомпреÑÑии, в то Ð²Ñ€ÐµÐ¼Ñ ÐºÐ°Ðº [code]decompress[/code] знает размер Ñвоего " +"выходного буфера Ñ Ñамого начала.\n" +"\n" +"GZIP имеет макÑимальный коÑффициент ÑÐ¶Ð°Ñ‚Ð¸Ñ 1032:1, что означает, что очень " +"возможно, что Ð½ÐµÐ±Ð¾Ð»ÑŒÑˆÐ°Ñ ÑÐ¶Ð°Ñ‚Ð°Ñ Ð¿Ð¾Ð»ÐµÐ·Ð½Ð°Ñ Ð½Ð°Ð³Ñ€ÑƒÐ·ÐºÐ° раÑпакуетÑÑ Ð² потенциально " +"очень большой выходной файл. Чтобы защититьÑÑ Ð¾Ñ‚ Ñтого, вы можете указать " +"макÑимальный размер, который Ñтой функции разрешено выделÑÑ‚ÑŒ в байтах через " +"[code]max_output_size[/code]. ЕÑли передать значение -1, то можно выводить " +"неограниченное количеÑтво данных. ЕÑли передано любое положительное " +"значение, и раÑпаковка превышает Ñтот размер в байтах, то будет возвращена " +"ошибка." #: doc/classes/PoolByteArray.xml doc/classes/PoolColorArray.xml #: doc/classes/PoolIntArray.xml doc/classes/PoolRealArray.xml @@ -48695,6 +49536,19 @@ msgid "" "There is no need to place an opposite portal in an adjacent room, links are " "made two-way automatically." msgstr "" +"[Порталы - Ñто оÑобый тип [MeshInstance], который позволÑет ÑиÑтеме отбора " +"порталов \"видеть\" из одной комнаты в другую. Они чаÑто ÑоответÑтвуют " +"дверÑм и окнам в геометрии уровнÑ. ПозволÑÑ [Camera]s видеть только через " +"порталы, Ñто позволÑет ÑиÑтеме отÑеивать вÑе объекты в комнатах, которые не " +"видны через порталы. Ðто одна из форм окклюзионной выборки [b][/b] , ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ " +"может значительно повыÑить производительноÑÑ‚ÑŒ.\n" +"СущеÑтвуют некоторые Ð¾Ð³Ñ€Ð°Ð½Ð¸Ñ‡ÐµÐ½Ð¸Ñ Ð½Ð° форму порталов:\n" +"Они должны быть одноÑторонними выпуклыми многоугольниками, и обычно вы " +"должны ориентировать их передние грани [b]наружу[/b] от [Комнаты], в которой " +"они раÑположены. Вершины должны раÑполагатьÑÑ Ð² одной плоÑкоÑти (Ñ…Ð¾Ñ‚Ñ Ð¸Ñ… " +"раÑположение не обÑзательно должно быть идеальным).\n" +"Ðет необходимоÑти размещать противоположный портал в ÑоÑедней комнате, ÑвÑзи " +"делаютÑÑ Ð´Ð²ÑƒÑторонними автоматичеÑки." #: doc/classes/Portal.xml doc/classes/Room.xml msgid "Sets individual points. Primarily for use by the editor." @@ -49349,6 +50203,21 @@ msgid "" "([code]stderr[/code]) is always flushed when a line is printed to it.\n" "Changes to this setting will only be applied upon restarting the application." msgstr "" +"ЕÑли [code]true[/code], то поток Ñтандартного вывода очищаетÑÑ ÐºÐ°Ð¶Ð´Ñ‹Ð¹ раз, " +"когда печатаетÑÑ Ñтрока. Ðто влиÑет как на ведение журналов в терминале, так " +"и на ведение журналов в файлах.\n" +"При запуÑке проекта Ñтот параметр должен быть включен, еÑли вы хотите, чтобы " +"журналы ÑобиралиÑÑŒ менеджерами Ñлужб, такими как systemd/journalctl. Ðта " +"наÑтройка отключена по умолчанию в Ñборках релизов, поÑкольку промывка " +"каждой напечатанной Ñтроки негативно ÑкажетÑÑ Ð½Ð° производительноÑти, еÑли " +"много Ñтрок печатаетÑÑ Ð² быÑтрой поÑледовательноÑти. Кроме того, еÑли Ñта " +"наÑтройка включена, файлы журналов будут уÑпешно запиÑаны, еÑли приложение " +"аварийно завершено или иным образом убито пользователем (не будучи закрытым " +"\"нормально\").\n" +"[b]Примечание:[/b] ÐезавиÑимо от Ñтой наÑтройки, Ñтандартный поток ошибок " +"([code]stderr[/code]) вÑегда промываетÑÑ, когда в него печатаетÑÑ Ñтрока.\n" +"Ð˜Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð² Ñтой наÑтройке будут применены только поÑле перезапуÑка " +"приложениÑ." #: doc/classes/ProjectSettings.xml msgid "" @@ -51471,6 +52340,23 @@ msgid "" "[b]Note:[/b] This property is only read when the project starts. To change " "the value at runtime, set [member Engine.physics_jitter_fix] instead." msgstr "" +"УправлÑет тем, наÑколько тики физики Ñинхронизированы Ñ Ñ€ÐµÐ°Ð»ÑŒÐ½Ñ‹Ð¼ временем. " +"При значении 0 или меньше тики ÑинхронизируютÑÑ. Такие Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ " +"рекомендуютÑÑ Ð´Ð»Ñ Ñетевых игр, где ÑÐ¸Ð½Ñ…Ñ€Ð¾Ð½Ð¸Ð·Ð°Ñ†Ð¸Ñ Ñ‡Ð°Ñов имеет значение. " +"Большие Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸Ð²Ð¾Ð´ÑÑ‚ к большему отклонению внутриигровых чаÑов от " +"реальных, но позволÑÑŽÑ‚ Ñгладить дрожание кадров. Значение по умолчанию 0,5 " +"должно уÑтраивать большинÑтво; Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð²Ñ‹ÑˆÐµ 2 могут привеÑти к тому, что " +"игра будет реагировать на выпадение кадров Ñ Ð·Ð°Ð¼ÐµÑ‚Ð½Ð¾Ð¹ задержкой, поÑтому не " +"рекомендуетÑÑ.\n" +"[b]Примечание:[/b] Ð”Ð»Ñ Ð´Ð¾ÑÑ‚Ð¸Ð¶ÐµÐ½Ð¸Ñ Ð½Ð°Ð¸Ð»ÑƒÑ‡ÑˆÐ¸Ñ… результатов при иÑпользовании " +"пользовательÑкого Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð¸Ð½Ñ‚ÐµÑ€Ð¿Ð¾Ð»Ñции физики, иÑправление джиттера физики " +"Ñледует отключить, уÑтановив [member physics/common/physics_jitter_fix] на " +"[code]0[/code].\n" +"[b]Примечание:[/b] ФикÑÐ°Ñ†Ð¸Ñ Ð´Ð¶Ð¸Ñ‚Ñ‚ÐµÑ€Ð° автоматичеÑки отключаетÑÑ Ð²Ð¾ Ð²Ñ€ÐµÐ¼Ñ " +"выполнениÑ, еÑли включен [member physics/common/physics_interpolation].\n" +"[b]Примечание:[/b] Ðто ÑвойÑтво ÑчитываетÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ при запуÑке проекта. " +"Чтобы изменить значение во Ð²Ñ€ÐµÐ¼Ñ Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ, уÑтановите [member Engine." +"physics_jitter_fix] вмеÑто Ñтого." #: doc/classes/ProjectSettings.xml msgid "" @@ -52110,6 +52996,23 @@ msgid "" "[b]Note:[/b] This property is only read when the project starts. There is " "currently no way to change this setting at run-time." msgstr "" +"МакÑимальный уровень анизотропного фильтра, иÑпользуемый Ð´Ð»Ñ Ñ‚ÐµÐºÑтур Ñ " +"включенной анизотропией. Более выÑокие Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸Ð²Ð¾Ð´ÑÑ‚ к более четким " +"текÑтурам при проÑмотре под коÑыми углами, но за Ñчет ÑÐ½Ð¸Ð¶ÐµÐ½Ð¸Ñ " +"производительноÑти. За иÑключением [code]1[/code], допуÑтимы только " +"значениÑ, равные двум целым ([code]2[/code], [code]4[/code], [code]8[/code], " +"[code]16[/code]). Значение [code]1[/code] принудительно отключает " +"анизотропную фильтрацию, даже на тех текÑтурах, где она включена.\n" +"[b]Примечание:[/b] По причинам производительноÑти Ð°Ð½Ð¸Ð·Ð¾Ñ‚Ñ€Ð¾Ð¿Ð½Ð°Ñ Ñ„Ð¸Ð»ÑŒÑ‚Ñ€Ð°Ñ†Ð¸Ñ " +"[i]не включена по умолчанию[/i] на текÑтурах. Чтобы Ñта наÑтройка имела " +"Ñффект, анизотропную фильтрацию текÑтуры можно включить, выбрав текÑтуру в " +"доке FileSystem, Ð¿ÐµÑ€ÐµÐ¹Ð´Ñ Ð² док Import, уÑтановив флажок [b]Anisotropic[/b] и " +"нажав [b]Reimport[/b]. Однако Ð°Ð½Ð¸Ð·Ð¾Ñ‚Ñ€Ð¾Ð¿Ð½Ð°Ñ Ñ„Ð¸Ð»ÑŒÑ‚Ñ€Ð°Ñ†Ð¸Ñ Ñ€ÐµÐ´ÐºÐ¾ бывает полезной " +"в 2D, поÑтому включайте ее Ð´Ð»Ñ Ñ‚ÐµÐºÑтур в 2D, только еÑли Ñто дает значимую " +"визуальную разницу.\n" +"[b]Примечание:[/b] Ðто ÑвойÑтво ÑчитываетÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ при запуÑке проекта. Ð’ " +"наÑтоÑщее Ð²Ñ€ÐµÐ¼Ñ Ð½Ðµ ÑущеÑтвует ÑпоÑоба изменить Ñтот параметр во Ð²Ñ€ÐµÐ¼Ñ " +"Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ð°." #: doc/classes/ProjectSettings.xml msgid "" @@ -52131,15 +53034,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -52709,7 +53619,7 @@ msgstr "" #: doc/classes/Quat.xml msgid "Quaternion." -msgstr "" +msgstr "Кватернион." #: doc/classes/Quat.xml msgid "" @@ -52992,6 +53902,24 @@ msgid "" "state], and not the initial seed value, which is going to be fixed in Godot " "4.0." msgstr "" +"Инициализирует ÑоÑтоÑние генератора Ñлучайных чиÑел на оÑнове заданного " +"Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ seed. Заданное значение Ñемени дает воÑпроизводимую " +"поÑледовательноÑÑ‚ÑŒ пÑевдоÑлучайных чиÑел.\n" +"[b]Примечание:[/b] RNG не обладает лавинным Ñффектом и может выдавать " +"похожие Ñлучайные потоки при одинаковых Ñеменах. РаÑÑмотрите возможноÑÑ‚ÑŒ " +"иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ…Ñш-функции Ð´Ð»Ñ ÑƒÐ»ÑƒÑ‡ÑˆÐµÐ½Ð¸Ñ ÐºÐ°Ñ‡ÐµÑтва ÑемÑн, еÑли они получены " +"извне.\n" +"[b]Примечание:[/b] УÑтановка Ñтого ÑвойÑтва приводит к побочному Ñффекту " +"Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ð½ÑƒÑ‚Ñ€ÐµÐ½Ð½ÐµÐ³Ð¾ [member state], поÑтому убедитеÑÑŒ, что ÑÐµÐ¼Ñ " +"инициализировано [i], прежде чем[/i] изменÑÑ‚ÑŒ [member state]:\n" +"[блок кода]\n" +"var rng = RandomNumberGenerator.new()\n" +"rng.seed = hash(\"Godot\")\n" +"rng.state = 100 # ВоÑÑтановление к некоторому ранее Ñохраненному ÑоÑтоÑнию.\n" +"[/codeblock].\n" +"[b]Предупреждение:[/b] геттер Ñтого ÑвойÑтва возвращает предыдущее ÑоÑтоÑние " +"[member state], а не начальное значение seed, что будет иÑправлено в Godot " +"4.0." #: doc/classes/RandomNumberGenerator.xml msgid "" @@ -53131,6 +54059,20 @@ msgid "" "queries are required between physics frames (or during the same frame), use " "[method force_raycast_update] after adjusting the raycast." msgstr "" +"RayCast предÑтавлÑет Ñобой линию от начала координат до меÑта назначениÑ, " +"[code]cast_to[/code]. Он иÑпользуетÑÑ Ð´Ð»Ñ Ð·Ð°Ð¿Ñ€Ð¾Ñа трехмерного проÑтранÑтва, " +"чтобы найти ближайший объект на пути луча.\n" +"RayCast может игнорировать некоторые объекты, добавлÑÑ Ð¸Ñ… в ÑпиÑок " +"иÑключений через [code]add_exception[/code] или уÑÑ‚Ð°Ð½Ð°Ð²Ð»Ð¸Ð²Ð°Ñ Ð½Ð°Ð´Ð»ÐµÐ¶Ð°Ñ‰ÑƒÑŽ " +"фильтрацию Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ Ñлоев Ñтолкновений и маÑок.\n" +"RayCast может быть наÑтроен на Ñообщение о ÑтолкновениÑÑ… Ñ [Area]s ([member " +"collide_with_areas]) и/или [PhysicsBody]s ([member collide_with_bodies]).\n" +"Только включенные лучевые передачи Ñмогут запрашивать проÑтранÑтво и " +"Ñообщать о ÑтолкновениÑÑ….\n" +"RayCast вычиÑлÑет переÑечение каждый кадр физики (Ñм. [Node]), и результат " +"кÑшируетÑÑ, чтобы его можно было иÑпользовать позже, до Ñледующего кадра. " +"ЕÑли требуетÑÑ Ð½ÐµÑколько запроÑов между кадрами физики (или в течение одного " +"кадра), иÑпользуйте [метод force_raycast_update] поÑле наÑтройки Ñ€ÑйкаÑта." #: doc/classes/RayCast.xml doc/classes/RayCast2D.xml msgid "" @@ -53281,6 +54223,22 @@ msgid "" "queries are required between physics frames (or during the same frame) use " "[method force_raycast_update] after adjusting the raycast." msgstr "" +"RayCast предÑтавлÑет Ñобой линию от начала координат до меÑта назначениÑ, " +"[code]cast_to[/code]. Он иÑпользуетÑÑ Ð´Ð»Ñ Ð·Ð°Ð¿Ñ€Ð¾Ñа двумерного проÑтранÑтва Ñ " +"целью найти ближайший объект на пути луча.\n" +"RayCast2D может игнорировать некоторые объекты, добавлÑÑ Ð¸Ñ… в ÑпиÑок " +"иÑключений через [code]add_exception[/code], уÑÑ‚Ð°Ð½Ð°Ð²Ð»Ð¸Ð²Ð°Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½ÑƒÑŽ " +"фильтрацию Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ Ñлоев Ñтолкновений или Ñ„Ð¸Ð»ÑŒÑ‚Ñ€ÑƒÑ Ñ‚Ð¸Ð¿Ñ‹ объектов Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ " +"маÑок типов.\n" +"RayCast2D может быть наÑтроен на Ñообщение о ÑтолкновениÑÑ… Ñ [Area2D]s " +"([member collide_with_areas]) и/или [PhysicsBody2D]s ([member " +"collide_with_bodies]).\n" +"Только включенные лучевые передачи Ñмогут запрашивать проÑтранÑтво и " +"Ñообщать о ÑтолкновениÑÑ….\n" +"RayCast2D вычиÑлÑет переÑечение каждый кадр физики (Ñм. [Node]), и результат " +"кÑшируетÑÑ, чтобы его можно было иÑпользовать позже, до Ñледующего кадра. " +"ЕÑли требуетÑÑ Ð½ÐµÑколько запроÑов между кадрами физики (или в течение одного " +"кадра), иÑпользуйте [метод force_raycast_update] поÑле наÑтройки Ñ€ÑйкаÑта." #: doc/classes/RayCast2D.xml msgid "" @@ -53487,6 +54445,21 @@ msgid "" "free references that are no longer in use. This means that unused references " "will linger on for a while before being removed." msgstr "" +"Базовый клаÑÑ Ð´Ð»Ñ Ð»ÑŽÐ±Ð¾Ð³Ð¾ объекта, который ведет подÑчет ÑÑылок. [Resource] и " +"многие другие вÑпомогательные объекты наÑледуют Ñтот клаÑÑ.\n" +"Ð’ отличие от других типов [Object], ÑÑылки ведут внутренний Ñчетчик ÑÑылок, " +"поÑтому они автоматичеÑки оÑвобождаютÑÑ, когда больше не иÑпользуютÑÑ, и " +"только тогда. ПоÑтому ÑÑылки не нужно оÑвобождать вручную Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ [метода " +"Object.free].\n" +"Ð’ подавлÑющем большинÑтве Ñлучаев инÑтанцирование и иÑпользование " +"[Reference]-производных типов - Ñто вÑе, что вам нужно Ñделать. Методы, " +"предоÑтавлÑемые в Ñтом клаÑÑе, предназначены только Ð´Ð»Ñ Ð¾Ð¿Ñ‹Ñ‚Ð½Ñ‹Ñ… " +"пользователей и могут вызвать проблемы при неправильном иÑпользовании.\n" +"[b]Примечание:[/b] Ð’ C# ÑÑылки не оÑвобождаютÑÑ Ð¼Ð³Ð½Ð¾Ð²ÐµÐ½Ð½Ð¾ поÑле того, как " +"они переÑтают иÑпользоватьÑÑ. ВмеÑто Ñтого Ñборка муÑора будет выполнÑÑ‚ÑŒÑÑ " +"периодичеÑки и оÑвобождать ÑÑылки, которые больше не иÑпользуютÑÑ. Ðто " +"означает, что неиÑпользуемые ÑÑылки будут ÑущеÑтвовать некоторое времÑ, " +"прежде чем будут удалены." #: doc/classes/Reference.xml msgid "" @@ -53789,17 +54762,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -53808,8 +54792,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -53962,10 +54952,24 @@ msgid "" "free resources that are no longer in use. This means that unused resources " "will linger on for a while before being removed." msgstr "" +"Resource - Ñто базовый клаÑÑ Ð´Ð»Ñ Ð²Ñех ÑпецифичеÑких Ð´Ð»Ñ Godot типов " +"реÑурÑов, Ñлужащих в оÑновном в качеÑтве контейнеров данных. ПоÑкольку они " +"наÑледуютÑÑ Ð¾Ñ‚ [Reference], реÑурÑÑ‹ учитываютÑÑ Ð¿Ð¾ ÑÑылкам и оÑвобождаютÑÑ, " +"когда больше не иÑпользуютÑÑ. Они также кÑшируютÑÑ Ð¿Ð¾Ñле загрузки Ñ Ð´Ð¸Ñка, " +"так что вÑе поÑледующие попытки загрузить реÑÑƒÑ€Ñ Ð¿Ð¾ заданному пути будут " +"возвращать ту же ÑÑылку (в отличие от [Node], который не учитываетÑÑ Ð¿Ð¾ " +"ÑÑылкам и может инÑтанцироватьÑÑ Ñ Ð´Ð¸Ñка Ñколько угодно раз). РеÑурÑÑ‹ могут " +"быть Ñохранены на внешнем диÑке или вложены в другой объект, например, " +"[Node] или другой реÑурÑ.\n" +"[b]Примечание:[/b] Ð’ C# реÑурÑÑ‹ не будут оÑвобождатьÑÑ Ð¼Ð³Ð½Ð¾Ð²ÐµÐ½Ð½Ð¾ поÑле того, " +"как они переÑтанут иÑпользоватьÑÑ. ВмеÑто Ñтого Ñборка муÑора будет " +"выполнÑÑ‚ÑŒÑÑ Ð¿ÐµÑ€Ð¸Ð¾Ð´Ð¸Ñ‡ÐµÑки и оÑвобождать реÑурÑÑ‹, которые больше не " +"иÑпользуютÑÑ. Ðто означает, что неиÑпользуемые реÑурÑÑ‹ будут ÑущеÑтвовать " +"некоторое времÑ, прежде чем будут удалены." #: doc/classes/Resource.xml msgid "Resources" -msgstr "" +msgstr "РеÑурÑÑ‹" #: doc/classes/Resource.xml msgid "" @@ -54322,6 +55326,24 @@ msgid "" "be used in most situations, leaving the use of [ResourceLoader] for more " "advanced scenarios." msgstr "" +"Загружает реÑÑƒÑ€Ñ Ð¿Ð¾ заданному [code]пути[/code] , кÑÑˆÐ¸Ñ€ÑƒÑ Ñ€ÐµÐ·ÑƒÐ»ÑŒÑ‚Ð°Ñ‚ Ð´Ð»Ñ " +"поÑледующего доÑтупа.\n" +"ЗарегиÑтрированные [ResourceFormatLoader]Ñ‹ поÑледовательно запрашиваютÑÑ, " +"чтобы найти первый, который может обрабатывать раÑширение файла, и затем " +"выполнÑетÑÑ Ð¿Ð¾Ð¿Ñ‹Ñ‚ÐºÐ° загрузки. ЕÑли загрузка не удалаÑÑŒ, оÑтальные " +"ResourceFormatLoader'Ñ‹ также будут опрошены.\n" +"ÐеобÑзательный [code]type_hint[/code] может быть иÑпользован Ð´Ð»Ñ Ð´Ð°Ð»ÑŒÐ½ÐµÐ¹ÑˆÐµÐ³Ð¾ " +"ÑƒÐºÐ°Ð·Ð°Ð½Ð¸Ñ Ñ‚Ð¸Ð¿Ð° [Resource], который должен обрабатыватьÑÑ " +"[ResourceFormatLoader]. Ð’ качеÑтве подÑказки типа можно иÑпользовать вÑе, " +"что наÑледуетÑÑ Ð¾Ñ‚ [Resource], например [Image].\n" +"ЕÑли [code]no_cache[/code] is [code]true[/code], кÑш реÑурÑа будет обойден и " +"реÑÑƒÑ€Ñ Ð±ÑƒÐ´ÐµÑ‚ загружен заново. Ð’ противном Ñлучае будет возвращен " +"кÑшированный реÑурÑ, еÑли он ÑущеÑтвует.\n" +"Возвращает пуÑтой реÑурÑ, еÑли ни один [ResourceFormatLoader] не Ñмог " +"обработать файл.\n" +"GDScript имеет упрощенный вÑтроенный метод [method @GDScript.load], который " +"можно иÑпользовать в большинÑтве Ñитуаций, оÑтавлÑÑ Ð¸Ñпользование " +"[ResourceLoader] Ð´Ð»Ñ Ð±Ð¾Ð»ÐµÐµ Ñложных Ñценариев." #: doc/classes/ResourceLoader.xml msgid "" @@ -55237,6 +56259,26 @@ msgid "" "[ConcavePolygonShape]. Don't use multiple [CollisionShape]s when using a " "[ConcavePolygonShape] with Bullet physics if you need shape indices." msgstr "" +"ВыдаетÑÑ Ð¿Ñ€Ð¸ Ñтолкновении одного из [Shape] Ñтого RigidBody Ñ Ð´Ñ€ÑƒÐ³Ð¸Ð¼ " +"[PhysicsBody] или [GridMap] [Shape]. ТребуетÑÑ, чтобы [member " +"contact_monitor] был уÑтановлен в [code]true[/code] и [member " +"contacts_reported] был уÑтановлен доÑтаточно выÑоким, чтобы обнаружить вÑе " +"ÑтолкновениÑ. [GridMap]Ñ‹ обнаруживаютÑÑ, еÑли в [MeshLibrary] еÑÑ‚ÑŒ [Shape]Ñ‹ " +"Ñтолкновений.\n" +"[code]body_rid[/code] [RID] другого [PhysicsBody] или [MeshLibrary] " +"[CollisionObject], иÑпользуемого [PhysicsServer].\n" +"[code]body[/code] [Узел], еÑли он ÑущеÑтвует в дереве, другого [PhysicsBody] " +"или [GridMap].\n" +"[code]body_shape_index[/code] Ð¸Ð½Ð´ÐµÐºÑ [Shape] другого [PhysicsBody] или " +"[GridMap], иÑпользуемого [PhysicsServer]. Получите узел [CollisionShape] Ñ " +"помощью [code]body.shape_owner_get_owner(body_shape_index)[/code].\n" +"[code]local_shape_index[/code] Ð¸Ð½Ð´ÐµÐºÑ [Shape] Ñтого RigidBody, иÑпользуемый " +"[PhysicsServer]. Получите узел [CollisionShape] Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ [code]self." +"shape_owner_get_owner(local_shape_index)[/code].\n" +"[b]Примечание:[/b] Физика пули не может определить Ð¸Ð½Ð´ÐµÐºÑ Ñ„Ð¾Ñ€Ð¼Ñ‹ при " +"иÑпользовании [ConcavePolygonShape]. Ðе иÑпользуйте неÑколько " +"[CollisionShape] при иÑпользовании [ConcavePolygonShape] Ñ Ñ„Ð¸Ð·Ð¸ÐºÐ¾Ð¹ Bullet, " +"еÑли вам нужны индекÑÑ‹ формы." #: doc/classes/RigidBody.xml msgid "" @@ -55849,6 +56891,19 @@ msgid "" "your room and object sizes, and movement speeds. The default value should " "work reasonably in most circumstances." msgstr "" +"Чтобы уменьшить обработку данных Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰Ð°ÐµÐ¼Ñ‹Ñ… объектов, к их AABB " +"применÑетÑÑ Ñ€Ð°Ñширение по мере их перемещениÑ. Ðтот раÑширенный объем " +"иÑпользуетÑÑ Ð´Ð»Ñ Ñ€Ð°Ñчета комнат, в которых находитÑÑ Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰Ð°ÐµÐ¼Ñ‹Ð¹ объект. " +"ЕÑли точный AABB объекта вÑе еще находитÑÑ Ð² пределах Ñтого раÑширенного " +"объема при Ñледующем перемещении, нет необходимоÑти повторно обрабатывать " +"объект, что может ÑÑкономить значительное количеÑтво CPU.\n" +"ÐедоÑтатком ÑвлÑетÑÑ Ñ‚Ð¾, что еÑли раÑширение Ñлишком велико, объект может " +"неожиданно раÑпроÑтранитьÑÑ Ð² ÑоÑедние комнаты и поÑвитьÑÑ Ñ‚Ð°Ð¼, где в " +"противном Ñлучае он мог бы быть удален.\n" +"Чтобы ÑбаланÑировать производительноÑÑ‚ÑŒ роуминга и точноÑÑ‚ÑŒ выбраковки, Ñтот " +"Ð·Ð°Ð¿Ð°Ñ Ñ€Ð°ÑÑˆÐ¸Ñ€ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð¶ÐµÑ‚ быть наÑтроен пользователем. Обычно он завиÑит от " +"размеров комнат и объектов, а также от ÑкороÑти передвижениÑ. Значение по " +"умолчанию должно работать разумно в большинÑтве Ñлучаев." #: doc/classes/RoomManager.xml msgid "" @@ -55928,6 +56983,19 @@ msgid "" "[code]extends RootMotionView[/code]. Additionally, it must not be a " "[code]tool[/code] script." msgstr "" +"[i]Корневое движение[/i] отноÑитÑÑ Ðº технике анимации, когда Ñкелет Ñетки " +"иÑпользуетÑÑ Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð´Ð°Ð½Ð¸Ñ Ð¸Ð¼Ð¿ÑƒÐ»ÑŒÑа перÑонажу. При работе Ñ 3D-анимацией " +"популÑрной техникой ÑвлÑетÑÑ Ð¸Ñпользование аниматорами корневой коÑти " +"Ñкелета Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð´Ð°Ð½Ð¸Ñ Ð´Ð²Ð¸Ð¶ÐµÐ½Ð¸Ñ Ð¾Ñтальным чаÑÑ‚Ñм Ñкелета. Ðто позволÑет " +"анимировать перÑонажей таким образом, что шаги фактичеÑки ÑоответÑтвуют полу " +"под ними. Ðто также позволÑет точно взаимодейÑтвовать Ñ Ð¾Ð±ÑŠÐµÐºÑ‚Ð°Ð¼Ð¸ во Ð²Ñ€ÐµÐ¼Ñ " +"кинематографа. См. также [AnimationTree].\n" +"[b]Примечание:[/b] [RootMotionView] виден только в редакторе. Он будет " +"автоматичеÑки Ñкрыт в работающем проекте, а также будет преобразован в " +"обычный [Node] в работающем проекте. Ðто означает, что Ñкрипт, прикрепленный " +"к узлу [RootMotionView] [i]должен[/i] иметь [code]extends Node[/code] вмеÑто " +"[code]extends RootMotionView[/code]. Кроме того, он не должен быть Ñкриптом " +"[code]инÑтрумента[/code]." #: doc/classes/RootMotionView.xml msgid "Using AnimationTree - Root motion" @@ -56530,12 +57598,16 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml msgid "No stretching." -msgstr "" +msgstr "Ðе раÑÑ‚Ñгивать." #: doc/classes/SceneTree.xml msgid "Render stretching in higher resolution (interpolated)." @@ -56579,7 +57651,7 @@ msgstr "" #: doc/classes/SceneTreeTimer.xml msgid "One-shot timer." -msgstr "" +msgstr "Таймер на один Ñнимок." #: doc/classes/SceneTreeTimer.xml msgid "" @@ -56769,6 +57841,23 @@ msgid "" "will always return the final value, regardless of [code]elapsed_time[/code] " "provided." msgstr "" +"Ðтот метод можно иÑпользовать Ð´Ð»Ñ Ñ€ÑƒÑ‡Ð½Ð¾Ð¹ интерполÑции значениÑ, когда вы не " +"хотите, чтобы [SceneTreeTween] выполнÑл анимацию за ваÑ. Он похож на [method " +"@GDScript.lerp], но Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ¾Ð¹ пользовательÑкого перехода и ÑмÑгчениÑ.\n" +"[code]initial_value[/code] - начальное значение интерполÑции.\n" +"[code]delta_value[/code] - Ñто изменение Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð² интерполÑции, Ñ‚.е. оно " +"равно [code]final_value - initial_value[/code].\n" +"[code]elapsed_time[/code] - Ñто Ð²Ñ€ÐµÐ¼Ñ Ð² Ñекундах, прошедшее поÑле начала " +"интерполÑции, которое иÑпользуетÑÑ Ð´Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»Ñ Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¸Ð½Ñ‚ÐµÑ€Ð¿Ð¾Ð»Ñции. " +"Ðапример, еÑли оно равно половине длительноÑти [code][/code] , " +"интерполированное значение будет находитьÑÑ Ð½Ð° полпути между начальным и " +"конечным значениÑми. Ðто значение также может быть больше, чем " +"[code]duration[/code] или меньше, чем 0, что приведет к ÑкÑтраполÑции " +"значениÑ.\n" +"[code]duration[/code] - общее Ð²Ñ€ÐµÐ¼Ñ Ð¸Ð½Ñ‚ÐµÑ€Ð¿Ð¾Ð»Ñции.\n" +"[b]Примечание:[/b] ЕÑли [code]duration[/code] равно [code]0[/code], метод " +"вÑегда будет возвращать конечное значение, незавиÑимо от [code]elapsed_time[/" +"code] предоÑтавленного значениÑ." #: doc/classes/SceneTreeTween.xml msgid "" @@ -57543,6 +58632,22 @@ msgid "" "([code]shape_xform[/code]), and the movement to test onto the other object " "([code]shape_motion[/code])." msgstr "" +"Возвращает ÑпиÑок пар точек ÑоприкоÑновениÑ, где Ð´Ð°Ð½Ð½Ð°Ñ Ñ„Ð¸Ð³ÑƒÑ€Ð° могла бы " +"коÑнутьÑÑ Ð´Ñ€ÑƒÐ³Ð¾Ð¹, еÑли бы было применено заданное движение.\n" +"ЕÑли Ñтолкновений не будет, возвращаемый ÑпиÑок пуÑÑ‚. Ð’ противном Ñлучае, " +"возвращаемый ÑпиÑок Ñодержит попарно раÑположенные точки контакта, в которых " +"чередуютÑÑ Ñ‚Ð¾Ñ‡ÐºÐ¸ на границе данной фигуры и точки на границе " +"[code]with_shape[/code].\n" +"Пара Ñтолкновений A, B может быть иÑпользована Ð´Ð»Ñ Ð²Ñ‹Ñ‡Ð¸ÑÐ»ÐµÐ½Ð¸Ñ Ð½Ð¾Ñ€Ð¼Ð°Ð»Ð¸ " +"ÑÑ‚Ð¾Ð»ÐºÐ½Ð¾Ð²ÐµÐ½Ð¸Ñ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ [code](B - A).normalized()[/code], и глубины " +"ÑÑ‚Ð¾Ð»ÐºÐ½Ð¾Ð²ÐµÐ½Ð¸Ñ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ [code](B - A).length()[/code]. Ðта Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾Ð±Ñ‹Ñ‡Ð½Ð¾ " +"иÑпользуетÑÑ Ð´Ð»Ñ Ñ€Ð°Ð·Ð´ÐµÐ»ÐµÐ½Ð¸Ñ Ñ„Ð¸Ð³ÑƒÑ€, оÑобенно в решателÑÑ… Ñтолкновений.\n" +"Ðтому методу нужна матрица транÑформации Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ð¾Ð¹ фигуры " +"([code]local_xform[/code]), движение Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ¸ Ñтой фигуры " +"([code]local_motion[/code]), фигура Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ¸ Ñтолкновений Ñ Ð½ÐµÐ¹ " +"([code]with_shape[/code]), матрица транÑформации Ñтой фигуры " +"([code]shape_xform[/code]) и движение Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ¸ на другом объекте " +"([code]shape_motion[/code])." #: doc/classes/Shape2D.xml msgid "" @@ -57614,7 +58719,7 @@ msgstr "" #: doc/classes/Skeleton.xml msgid "[i]Deprecated soon.[/i]" -msgstr "" +msgstr "[i]Скоро будет уÑтаревшим.[/i]" #: doc/classes/Skeleton.xml msgid "Clear all the bones in this skeleton." @@ -58374,7 +59479,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -59756,7 +60863,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -59772,7 +60882,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -60780,6 +61892,21 @@ msgid "" "To get a boolean result from a string comparison, use the [code]==[/code] " "operator instead. See also [method nocasecmp_to]." msgstr "" +"ВыполнÑет Ñравнение Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð¹ Ñтрокой Ñ ÑƒÑ‡ÐµÑ‚Ð¾Ð¼ региÑтра. Возвращает [code]-1[/" +"code], еÑли меньше, [code]1[/code], еÑли больше, или [code]0[/code], еÑли " +"равно. \"Меньше\" или \"больше\" определÑÑŽÑ‚ÑÑ [url=https://en.wikipedia.org/" +"wiki/List_of_Unicode_characters]кодовыми точками Unicode[/url] каждой " +"Ñтроки, что примерно ÑоответÑтвует алфавитному порÑдку.\n" +"[b]Поведение при различной длине Ñтроки:[/b] Возвращает [code]1[/code], еÑли " +"\"базоваÑ\" Ñтрока длиннее Ñтрок [code]-[/code] или [code]-1[/code], еÑли " +"\"базоваÑ\" Ñтрока короче Ñтрок [code]-[/code]. Следует помнить, что длина " +"определÑетÑÑ ÐºÐ¾Ð»Ð¸Ñ‡ÐµÑтвом кодовых точек Юникода, [i]а не[/i] реально видимых " +"Ñимволов.\n" +"[b]Поведение Ñ Ð¿ÑƒÑтыми Ñтроками:[/b] Возвращает [code]-1[/code], еÑли " +"\"базоваÑ\" Ñтрока пуÑта, [code]1[/code], еÑли Ñтроки [code]-[/code] пуÑÑ‚Ñ‹, " +"или [code]0[/code], еÑли обе Ñтроки пуÑÑ‚Ñ‹.\n" +"Чтобы получить булев результат ÑÑ€Ð°Ð²Ð½ÐµÐ½Ð¸Ñ Ñтрок, иÑпользуйте вмеÑто Ñтого " +"оператор [code]==[/code]. См. также [метод nocasecmp_to]." #: doc/classes/String.xml msgid "" @@ -61184,6 +62311,22 @@ msgid "" "To get a boolean result from a string comparison, use the [code]==[/code] " "operator instead. See also [method casecmp_to]." msgstr "" +"ВыполнÑет Ñравнение Ñ Ð´Ñ€ÑƒÐ³Ð¾Ð¹ Ñтрокой без учета региÑтра. Возвращает " +"[code]-1[/code], еÑли меньше, [code]1[/code], еÑли больше, или [code]0[/" +"code], еÑли равно. \"Меньше\" или \"больше\" определÑетÑÑ [url=https://en." +"wikipedia.org/wiki/List_of_Unicode_characters]кодовыми точками Unicode[/url] " +"каждой Ñтроки, что примерно ÑоответÑтвует алфавитному порÑдку. При Ñравнении " +"Ñимволы нижнего региÑтра преобразуютÑÑ Ð² верхний региÑÑ‚Ñ€.\n" +"[b]Поведение при различной длине Ñтроки:[/b] Возвращает [code]1[/code], еÑли " +"\"базоваÑ\" Ñтрока длиннее, чем Ñтроки [code]-[/code] или [code]-1[/code], " +"еÑли \"базоваÑ\" Ñтрока короче, чем Ñтроки [code]-[/code]. Следует помнить, " +"что длина определÑетÑÑ ÐºÐ¾Ð»Ð¸Ñ‡ÐµÑтвом кодовых точек Юникода, [i]а не[/i] " +"реально видимых Ñимволов.\n" +"[b]Поведение Ñ Ð¿ÑƒÑтыми Ñтроками:[/b] Возвращает [code]-1[/code], еÑли " +"\"базоваÑ\" Ñтрока пуÑта, [code]1[/code], еÑли Ñтроки [code]-[/code] пуÑÑ‚Ñ‹, " +"или [code]0[/code], еÑли обе Ñтроки пуÑÑ‚Ñ‹.\n" +"Чтобы получить булев результат ÑÑ€Ð°Ð²Ð½ÐµÐ½Ð¸Ñ Ñтрок, иÑпользуйте вмеÑто Ñтого " +"оператор [code]==[/code]. См. также [метод casecmp_to]." #: doc/classes/String.xml msgid "Returns the character code at position [code]at[/code]." @@ -61273,6 +62416,24 @@ msgid "" "print(some_array[1]) # Prints \"Four\"\n" "[/codeblock]" msgstr "" +"РазделÑет Ñтроку по [code]разделителю[/code] и возвращает маÑÑив подÑтрок, " +"Ð½Ð°Ñ‡Ð¸Ð½Ð°Ñ Ñправа.\n" +"Разделители в возвращаемом маÑÑиве ÑортируютÑÑ Ð² том же порÑдке, что и " +"иÑÑ…Ð¾Ð´Ð½Ð°Ñ Ñтрока, Ñлева направо.\n" +"ЕÑли [code]allow_empty[/code] равен [code]true[/code], и в Ñтроке еÑÑ‚ÑŒ два " +"ÑоÑедних разделителÑ, то в маÑÑив подÑтрок в Ñтой позиции будет добавлена " +"пуÑÑ‚Ð°Ñ Ñтрока.\n" +"ЕÑли указано [code]maxsplit[/code], то Ñто определÑет количеÑтво разбиений " +"Ñправа до [code]maxsplit[/code]. Значение по умолчанию 0 означает, что вÑе " +"Ñлементы разделÑÑŽÑ‚ÑÑ, что дает тот же результат, что и [method split].\n" +"Пример:\n" +"[codeblock].\n" +"var some_string = \"One,Two,Three,Four\"\n" +"var some_array = some_string.rsplit(\",\", true, 1)\n" +"print(some_array.size()) # Печатает 2\n" +"print(some_array[0]) # Печатает \"Один, два, три\"\n" +"print(some_array[1]) # Печатает \"Four\"\n" +"[/codeblock]" #: doc/classes/String.xml msgid "" @@ -61341,6 +62502,26 @@ msgid "" "If you need to split strings with more complex rules, use the [RegEx] class " "instead." msgstr "" +"РазделÑет Ñтроку по разделителю [code][/code] и возвращает маÑÑив подÑтрок. " +"Разделитель [code][/code] может быть любой длины.\n" +"ЕÑли [code]allow_empty[/code] равно [code]true[/code], и в Ñтроке еÑÑ‚ÑŒ два " +"ÑоÑедних разделителÑ, то в маÑÑив подÑтрок в Ñтой позиции будет добавлена " +"пуÑÑ‚Ð°Ñ Ñтрока.\n" +"ЕÑли указано [code]maxsplit[/code], то Ñто определÑет количеÑтво разбиений " +"Ñлева до [code]maxsplit[/code]. Значение по умолчанию [code]0[/code] " +"означает, что вÑе Ñлементы разделÑÑŽÑ‚ÑÑ.\n" +"ЕÑли вам нужен только один Ñлемент из маÑÑива по определенному индекÑу, " +"[метод get_slice] ÑвлÑетÑÑ Ð±Ð¾Ð»ÐµÐµ производительным вариантом.\n" +"Пример:\n" +"[codeblock].\n" +"var some_string = \"One,Two,Three,Four\"\n" +"var some_array = some_string.split(\",\", true, 1)\n" +"print(some_array.size()) # Печатает 2\n" +"print(some_array[0]) # Печатает \"Один\"\n" +"print(some_array[1]) # Печатает \"Два, три, четыре\"\n" +"[/codeblock].\n" +"ЕÑли вам нужно разделить Ñтроки по более Ñложным правилам, иÑпользуйте клаÑÑ " +"[RegEx]." #: doc/classes/String.xml msgid "" @@ -62210,7 +63391,7 @@ msgstr "" #: doc/classes/TabContainer.xml msgid "Tabbed container." -msgstr "" +msgstr "Контейнер Ñ Ð²ÐºÐ»Ð°Ð´ÐºÐ°Ð¼Ð¸." #: doc/classes/TabContainer.xml msgid "" @@ -62464,7 +63645,7 @@ msgstr "" #: doc/classes/Tabs.xml msgid "Tabs control." -msgstr "" +msgstr "Управление вкладками." #: doc/classes/Tabs.xml msgid "" @@ -62671,7 +63852,7 @@ msgstr "" #: doc/classes/TCP_Server.xml msgid "Stops listening." -msgstr "" +msgstr "ПереÑтает Ñлушать." #: doc/classes/TCP_Server.xml msgid "" @@ -65704,7 +66885,7 @@ msgstr "" #: doc/classes/TouchScreenButton.xml msgid "Always visible." -msgstr "" +msgstr "Ð’Ñегда видно." #: doc/classes/TouchScreenButton.xml msgid "Visible on touch screens only." @@ -65972,7 +67153,7 @@ msgstr "" #: doc/classes/Translation.xml msgid "Language Translation." -msgstr "" +msgstr "Языковой перевод." #: doc/classes/Translation.xml msgid "" @@ -67797,7 +68978,7 @@ msgstr "" #: modules/upnp/doc_classes/UPNP.xml msgid "Inconsistent parameters." -msgstr "" +msgstr "ÐеÑоответÑтвующие параметры." #: modules/upnp/doc_classes/UPNP.xml msgid "" @@ -67859,39 +69040,39 @@ msgstr "" #: modules/upnp/doc_classes/UPNP.xml msgid "Invalid gateway." -msgstr "" +msgstr "Ðеверный шлюз." #: modules/upnp/doc_classes/UPNP.xml msgid "Invalid port." -msgstr "" +msgstr "Ðеверный порт." #: modules/upnp/doc_classes/UPNP.xml msgid "Invalid protocol." -msgstr "" +msgstr "Ðеверный протокол." #: modules/upnp/doc_classes/UPNP.xml msgid "Invalid duration." -msgstr "" +msgstr "ÐÐµÐ²ÐµÑ€Ð½Ð°Ñ Ð¿Ñ€Ð¾Ð´Ð¾Ð»Ð¶Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð¾ÑÑ‚ÑŒ." #: modules/upnp/doc_classes/UPNP.xml msgid "Invalid arguments." -msgstr "" +msgstr "ÐедопуÑтимые аргументы." #: modules/upnp/doc_classes/UPNP.xml msgid "Invalid response." -msgstr "" +msgstr "Ðеверный ответ." #: modules/upnp/doc_classes/UPNP.xml msgid "Invalid parameter." -msgstr "" +msgstr "ÐедопуÑтимый параметр." #: modules/upnp/doc_classes/UPNP.xml modules/upnp/doc_classes/UPNPDevice.xml msgid "HTTP error." -msgstr "" +msgstr "Ошибка HTTP." #: modules/upnp/doc_classes/UPNP.xml msgid "Socket error." -msgstr "" +msgstr "Ошибка Ñокета." #: modules/upnp/doc_classes/UPNP.xml msgid "Error allocating memory." @@ -67974,11 +69155,11 @@ msgstr "" #: modules/upnp/doc_classes/UPNPDevice.xml msgid "Service type." -msgstr "" +msgstr "Тип уÑлуг." #: modules/upnp/doc_classes/UPNPDevice.xml msgid "OK." -msgstr "" +msgstr "OK." #: modules/upnp/doc_classes/UPNPDevice.xml msgid "Empty HTTP response." @@ -67994,15 +69175,15 @@ msgstr "" #: modules/upnp/doc_classes/UPNPDevice.xml msgid "Disconnected." -msgstr "" +msgstr "Отключен." #: modules/upnp/doc_classes/UPNPDevice.xml msgid "Unknown device." -msgstr "" +msgstr "ÐеизвеÑтное уÑтройÑтво." #: modules/upnp/doc_classes/UPNPDevice.xml msgid "Invalid control." -msgstr "" +msgstr "Ðеверный контроль." #: modules/upnp/doc_classes/UPNPDevice.xml msgid "Memory allocation error." @@ -69302,10 +70483,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -69316,8 +70502,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -69472,7 +70658,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -70008,6 +71196,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" @@ -71197,11 +72401,11 @@ msgstr "" #: modules/visual_script/doc_classes/VisualScriptMathConstant.xml msgid "Unity: [code]1[/code]." -msgstr "" +msgstr "ЕдинÑтво: [code]1[/code]." #: modules/visual_script/doc_classes/VisualScriptMathConstant.xml msgid "Pi: [code]3.141593[/code]." -msgstr "" +msgstr "Пи: [code]3.141593[/code]." #: modules/visual_script/doc_classes/VisualScriptMathConstant.xml msgid "Pi divided by two: [code]1.570796[/code]." @@ -71209,7 +72413,7 @@ msgstr "" #: modules/visual_script/doc_classes/VisualScriptMathConstant.xml msgid "Tau: [code]6.283185[/code]." -msgstr "" +msgstr "Тау: [code]6.283185[/code]." #: modules/visual_script/doc_classes/VisualScriptMathConstant.xml msgid "" @@ -71223,7 +72427,7 @@ msgstr "" #: modules/visual_script/doc_classes/VisualScriptMathConstant.xml msgid "Infinity: [code]inf[/code]." -msgstr "" +msgstr "БеÑконечноÑÑ‚ÑŒ: [code]inf[/code]." #: modules/visual_script/doc_classes/VisualScriptMathConstant.xml msgid "Not a number: [code]nan[/code]." @@ -71525,7 +72729,7 @@ msgstr "" #: modules/visual_script/doc_classes/VisualScriptSceneNode.xml msgid "Node reference." -msgstr "" +msgstr "СÑылка на узел." #: modules/visual_script/doc_classes/VisualScriptSceneNode.xml msgid "" @@ -71686,7 +72890,7 @@ msgstr "" #: modules/visual_script/doc_classes/VisualScriptWhile.xml msgid "Conditional loop." -msgstr "" +msgstr "УÑловный цикл." #: modules/visual_script/doc_classes/VisualScriptWhile.xml msgid "" @@ -72329,7 +73533,7 @@ msgstr "" #: doc/classes/VisualServer.xml msgid "Synchronizes threads." -msgstr "" +msgstr "Синхронизирует потоки." #: doc/classes/VisualServer.xml msgid "Tries to free an object in the VisualServer." @@ -73807,6 +75011,24 @@ msgid "" "manually. For further optimization, see [method " "viewport_set_render_direct_to_screen]." msgstr "" +"Копирует видовой Ñкран в облаÑÑ‚ÑŒ Ñкрана, указанную [code]rect[/code]. ЕÑли " +"[член Viewport.render_direct_to_screen] равен [code]true[/code], то вьюпорт " +"не иÑпользует фреймбуфер и Ñодержимое вьюпорта выводитÑÑ Ð½ÐµÐ¿Ð¾ÑредÑтвенно на " +"Ñкран. Однако обратите внимание, что корневой видовой Ñкран риÑуетÑÑ " +"поÑледним, поÑтому он будет риÑоватьÑÑ Ð¿Ð¾Ð²ÐµÑ€Ñ… Ñкрана. СоответÑтвенно, вы " +"должны уÑтановить корневой видовой Ñкран на облаÑÑ‚ÑŒ, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð½Ðµ покрывает " +"облаÑÑ‚ÑŒ, к которой вы прикрепили Ñтот видовой Ñкран.\n" +"Ðапример, вы можете уÑтановить корневой видовой Ñкран так, чтобы он вообще " +"не отриÑовывалÑÑ, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ñледующий код:\n" +"[codeblock].\n" +"func _ready():\n" +" get_viewport().set_attach_to_screen_rect(Rect2())\n" +" $Viewport.set_attach_to_screen_rect(Rect2(0, 0, 600, 600))\n" +"[/codeblock].\n" +"ИÑпользование Ñтого метода может привеÑти к значительной оптимизации, " +"оÑобенно на уÑтройÑтвах низкого клаÑÑа. Однако за Ñто приходитÑÑ " +"раÑплачиватьÑÑ Ð½ÐµÐ¾Ð±Ñ…Ð¾Ð´Ð¸Ð¼Ð¾Ñтью управлÑÑ‚ÑŒ видовыми Ñкранами вручную. Ð”Ð»Ñ " +"дальнейшей оптимизации Ñмотрите [метод viewport_set_render_direct_to_screen]." #: doc/classes/VisualServer.xml msgid "" @@ -73914,6 +75136,19 @@ msgid "" "will be drawn, no automatic scaling is possible, even if your game scene is " "significantly larger than the window size." msgstr "" +"ЕÑли [code]true[/code], выведите Ñодержимое видового Ñкрана непоÑредÑтвенно " +"на Ñкран. Ðто позволÑет выполнить низкоуровневую оптимизацию, при которой " +"можно пропуÑтить отриÑовку видового Ñкрана в корневой видовой Ñкран. Ð¥Ð¾Ñ‚Ñ " +"Ñта Ð¾Ð¿Ñ‚Ð¸Ð¼Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð¼Ð¾Ð¶ÐµÑ‚ привеÑти к значительному увеличению ÑкороÑти (оÑобенно " +"на Ñтарых уÑтройÑтвах), она обходитÑÑ Ð½ÐµÐ´ÐµÑˆÐµÐ²Ð¾. Когда Ñта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð°, " +"вы не можете читать из облаÑти проÑмотра или из [code]SCREEN_TEXTURE[/code]. " +"Ð’Ñ‹ также терÑете преимущеÑтва некоторых наÑтроек окна, таких как различные " +"режимы раÑÑ‚ÑжениÑ. Еще одно поÑледÑтвие, о котором Ñледует знать, Ñто то, " +"что в 2D рендеринг проиÑходит в координатах окна, поÑтому еÑли у Ð²Ð°Ñ ÐµÑÑ‚ÑŒ " +"облаÑÑ‚ÑŒ проÑмотра, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð² два раза больше окна, и вы уÑтановите Ñто, то " +"будет отриÑована только та чаÑÑ‚ÑŒ, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð¿Ð¾Ð¼ÐµÑ‰Ð°ÐµÑ‚ÑÑ Ð² окно, автоматичеÑкое " +"маÑштабирование невозможно, даже еÑли ваша Ð¸Ð³Ñ€Ð¾Ð²Ð°Ñ Ñцена значительно больше, " +"чем размер окна." #: doc/classes/VisualServer.xml msgid "" @@ -76384,7 +77619,7 @@ msgstr "Возвращает значение, противоположное п #: doc/classes/VisualShaderNodeVectorFunc.xml msgid "Returns [code]1/vector[/code]." -msgstr "" +msgstr "Возвращает [code]1/вектор[/code]." #: doc/classes/VisualShaderNodeVectorFunc.xml msgid "Converts RGB vector to HSV equivalent." @@ -76719,7 +77954,7 @@ msgstr "" #: doc/classes/VSlider.xml msgid "Vertical slider." -msgstr "" +msgstr "Вертикальный Ñлайдер." #: doc/classes/VSlider.xml msgid "" diff --git a/doc/translations/sk.po b/doc/translations/sk.po index e5562df057..3a58e3f2a9 100644 --- a/doc/translations/sk.po +++ b/doc/translations/sk.po @@ -476,7 +476,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -491,7 +492,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -864,12 +869,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3480,6 +3489,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4164,8 +4193,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7082,7 +7110,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7267,6 +7298,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7286,9 +7320,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9926,10 +9964,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10461,14 +10498,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10478,22 +10515,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19273,6 +19310,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22105,7 +22150,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32820,7 +32868,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36118,7 +36168,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36366,7 +36419,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37076,6 +37132,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39882,7 +39941,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40393,11 +40454,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40431,11 +40492,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40457,11 +40518,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42308,6 +42369,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49900,15 +49971,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51504,17 +51582,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51523,8 +51612,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54239,7 +54334,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56076,7 +56175,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57454,7 +57555,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57470,7 +57574,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66707,10 +66813,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66721,8 +66832,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66874,7 +66985,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67406,6 +67519,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/sr_Cyrl.po b/doc/translations/sr_Cyrl.po index e202b72696..2846de07bb 100644 --- a/doc/translations/sr_Cyrl.po +++ b/doc/translations/sr_Cyrl.po @@ -487,7 +487,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -502,7 +503,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -875,12 +880,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3491,6 +3500,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4175,8 +4204,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7093,7 +7121,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7278,6 +7309,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7297,9 +7331,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9937,10 +9975,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10472,14 +10509,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10489,22 +10526,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19284,6 +19321,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22116,7 +22161,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32831,7 +32879,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36129,7 +36179,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36377,7 +36430,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37087,6 +37143,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39893,7 +39952,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40404,11 +40465,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40442,11 +40503,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40468,11 +40529,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42319,6 +42380,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49911,15 +49982,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51515,17 +51593,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51534,8 +51623,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54250,7 +54345,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56087,7 +56186,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57465,7 +57566,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57481,7 +57585,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66718,10 +66824,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66732,8 +66843,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66885,7 +66996,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67417,6 +67530,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/sv.po b/doc/translations/sv.po index 1bd56a7518..65cad9bf8a 100644 --- a/doc/translations/sv.po +++ b/doc/translations/sv.po @@ -477,7 +477,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -492,7 +493,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -865,12 +870,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3481,6 +3490,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4165,8 +4194,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7083,7 +7111,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7268,6 +7299,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7287,9 +7321,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9927,10 +9965,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10462,14 +10499,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10479,22 +10516,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19274,6 +19311,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22106,7 +22151,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32818,7 +32866,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36116,7 +36166,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36364,7 +36417,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37074,6 +37130,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39880,7 +39939,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40391,11 +40452,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40429,11 +40490,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40455,11 +40516,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42306,6 +42367,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -49898,15 +49969,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51502,17 +51580,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51521,8 +51610,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54237,7 +54332,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56074,7 +56173,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57452,7 +57553,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57468,7 +57572,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66705,10 +66811,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66719,8 +66830,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -66872,7 +66983,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67404,6 +67517,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/th.po b/doc/translations/th.po index 6253763623..54fbdbfe27 100644 --- a/doc/translations/th.po +++ b/doc/translations/th.po @@ -554,7 +554,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -569,7 +570,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -949,12 +954,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3574,6 +3583,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4265,8 +4294,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7187,7 +7215,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7372,6 +7403,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7391,9 +7425,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10032,10 +10070,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10567,14 +10604,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10584,22 +10621,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19383,6 +19420,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22215,7 +22260,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32990,7 +33038,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36306,7 +36356,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36555,7 +36608,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37266,6 +37322,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -40125,7 +40184,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40638,11 +40699,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40676,11 +40737,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40702,11 +40763,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42556,6 +42617,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -50159,15 +50230,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51765,17 +51843,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51784,8 +51873,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54501,7 +54596,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56338,7 +56437,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57716,7 +57817,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57732,7 +57836,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66999,10 +67105,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -67013,8 +67124,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -67166,7 +67277,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67698,6 +67811,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/tl.po b/doc/translations/tl.po index 0dae96a014..a9b6a9e2a9 100644 --- a/doc/translations/tl.po +++ b/doc/translations/tl.po @@ -548,7 +548,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -563,7 +564,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -940,12 +945,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3556,6 +3565,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4240,8 +4269,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7158,7 +7186,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7343,6 +7374,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7362,9 +7396,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10006,10 +10044,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10541,14 +10578,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10558,22 +10595,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19356,6 +19393,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22191,7 +22236,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32915,7 +32963,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36231,7 +36281,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36479,7 +36532,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37189,6 +37245,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -39995,7 +40054,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40506,11 +40567,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40544,11 +40605,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40570,11 +40631,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42424,6 +42485,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -50016,15 +50087,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51620,17 +51698,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51639,8 +51728,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54355,7 +54450,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56192,7 +56291,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57570,7 +57671,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57586,7 +57690,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66859,10 +66965,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -66873,8 +66984,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -67026,7 +67137,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67558,6 +67671,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/tr.po b/doc/translations/tr.po index 4e6f4096d5..5d8f2afe29 100644 --- a/doc/translations/tr.po +++ b/doc/translations/tr.po @@ -701,8 +701,10 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -717,7 +719,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" "iÅŸlev yığınını temsil eden sözlük dizisi döndürür.\n" "[codeblock]\n" @@ -1338,19 +1344,17 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" -"Kod içindeki istiflenme konumunu yazdırır ve yanlızca hata ayıklayıcı " -"(debugger) açıkken çalışır.\n" -"Konsoldaki çıktı aÅŸağıdaki gibi bir ÅŸey olacaktır.\n" -"[codeblock]\n" -"Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -4262,6 +4266,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4946,8 +4970,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7866,7 +7889,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -8051,6 +8077,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -8070,9 +8099,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10711,10 +10744,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -11246,14 +11278,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -11263,22 +11295,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -20083,6 +20115,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22920,7 +22960,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -33670,7 +33713,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -37004,7 +37049,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -37254,7 +37302,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37975,6 +38026,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -40785,7 +40839,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -41301,11 +41357,11 @@ msgstr "Verilen bir deÄŸerin ark-sinüsünü döndürür." #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -41339,11 +41395,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -41365,11 +41421,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -43240,6 +43296,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -50843,15 +50909,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -52455,17 +52528,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -52474,8 +52558,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -55191,7 +55281,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -57028,7 +57122,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -58408,7 +58504,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -58424,7 +58523,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -67701,10 +67802,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -67715,8 +67821,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -67872,7 +67978,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -68404,6 +68512,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/uk.po b/doc/translations/uk.po index 613cc32ed3..3714c11d88 100644 --- a/doc/translations/uk.po +++ b/doc/translations/uk.po @@ -15,12 +15,13 @@ # Гліб Соколов <ramithes@i.ua>, 2022. # Yan Chen <cyan97087@gmail.com>, 2022. # Богдан Матвіїв <bomtvv@gmail.com>, 2022. +# Лев ДворÑкий <ne3r0n@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-08-23 03:39+0000\n" -"Last-Translator: Богдан Матвіїв <bomtvv@gmail.com>\n" +"PO-Revision-Date: 2022-11-25 12:13+0000\n" +"Last-Translator: Лев ДворÑкий <ne3r0n@gmail.com>\n" "Language-Team: Ukrainian <https://hosted.weblate.org/projects/godot-engine/" "godot-class-reference/uk/>\n" "Language: uk\n" @@ -29,7 +30,7 @@ msgstr "" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 4.14-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -85,7 +86,6 @@ msgid "Inherited By:" msgstr "УÑпадковано:" #: doc/tools/make_rst.py -#, fuzzy msgid "(overrides %s)" msgstr "(перевизначає %s)" @@ -94,17 +94,14 @@ msgid "Default" msgstr "Типовий" #: doc/tools/make_rst.py -#, fuzzy msgid "Setter" msgstr "Ð’Ñтановлювач" #: doc/tools/make_rst.py -#, fuzzy msgid "value" msgstr "значеннÑ" #: doc/tools/make_rst.py -#, fuzzy msgid "Getter" msgstr "Отримувач" @@ -609,7 +606,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -624,7 +622,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -1001,12 +1003,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3624,6 +3630,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4308,8 +4334,7 @@ msgstr "ÐÐ½Ñ–Ð¼Ð°Ñ†Ñ–Ñ 2D Ñпрайтів" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7234,7 +7259,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7419,6 +7447,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7438,9 +7469,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10079,10 +10114,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10614,14 +10648,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10631,22 +10665,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19445,6 +19479,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22279,7 +22321,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -33015,7 +33060,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36345,7 +36392,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36595,7 +36645,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37312,6 +37365,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -40122,7 +40178,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40638,11 +40696,11 @@ msgstr "Повертає кут до заданого вектора у раді #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40676,11 +40734,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40702,11 +40760,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42571,6 +42629,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -50172,15 +50240,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51777,17 +51852,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51796,8 +51882,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54513,7 +54605,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56351,7 +56447,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57729,7 +57827,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57745,7 +57846,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -67031,10 +67134,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -67045,8 +67153,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -67198,7 +67306,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67730,6 +67840,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/vi.po b/doc/translations/vi.po index 3e74e52436..962440bfab 100644 --- a/doc/translations/vi.po +++ b/doc/translations/vi.po @@ -689,8 +689,10 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -705,7 +707,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" "Trả vá» má»™t mảng từ Ä‘iển đại diện cho chồng đệ quy hiện tại.\n" "[codeblock]\n" @@ -1219,12 +1225,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3908,6 +3918,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4601,8 +4631,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7539,7 +7568,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7724,6 +7756,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7743,9 +7778,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10384,10 +10423,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10919,14 +10957,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10936,22 +10974,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19754,6 +19792,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22589,7 +22635,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -33325,7 +33374,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36655,7 +36706,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36906,7 +36960,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37626,6 +37683,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -40436,7 +40496,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40952,11 +41014,11 @@ msgstr "Trả vá» sin nghịch đảo của tham số." #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40990,11 +41052,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -41016,11 +41078,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42888,6 +42950,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -50497,15 +50569,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -52107,17 +52186,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -52126,8 +52216,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54843,7 +54939,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56682,7 +56782,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -58062,7 +58164,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -58078,7 +58183,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -67357,10 +67464,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -67371,8 +67483,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -67527,7 +67639,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -68063,6 +68177,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/doc/translations/zh_CN.po b/doc/translations/zh_CN.po index cf0267429a..966ec9b0f9 100644 --- a/doc/translations/zh_CN.po +++ b/doc/translations/zh_CN.po @@ -59,11 +59,12 @@ # ErrorDreemurr <diandaokui@qq.com>, 2021. # 烧风 <hk-shao@foxmail.com>, 2022. # Yan Chen <cyan97087@gmail.com>, 2022. +# Caten <catenhu@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-09-26 05:24+0000\n" +"PO-Revision-Date: 2022-12-12 06:48+0000\n" "Last-Translator: Haoyu Qiu <timothyqiu32@gmail.com>\n" "Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/" "godot-engine/godot-class-reference/zh_Hans/>\n" @@ -72,7 +73,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Weblate 4.14.1\n" +"X-Generator: Weblate 4.15-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -685,7 +686,8 @@ msgid "" " 1.5 0.0 0.0\n" "[/codeblock]" msgstr "" -"返回 [code]a/b[/code] 的浮点模数,对æ£è´Ÿæ•°è¿›è¡Œä¸€è‡´çš„循环。\n" +",对æ£è´Ÿæ•°è¿›è¡Œä¸€è‡´çš„循环返回 [code]a/b[/code] 的浮点模数,对æ£è´Ÿæ•°è¿›è¡Œä¸€è‡´çš„" +"循环。\n" "[codeblock]\n" "for i in 7:\n" " var x = 0.5 * i - 1.5\n" @@ -696,10 +698,10 @@ msgstr "" "-1.5 -0.0 0.0\n" "-1.0 -1.0 0.5\n" "-0.5 -0.5 1.0\n" -" 0.0 0.0 0.0\n" -" 0.5 0.5 0.5\n" -" 1.0 1.0 1.0\n" -" 1.5 0.0 0.0\n" +" 0.0 0.0 0.0\n" +" 0.5 0.5 0.5\n" +" 1.0 1.0 1.0\n" +" 1.5 0.0 0.0\n" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml @@ -717,8 +719,8 @@ msgid "" "[/codeblock]" msgstr "" "返回对 [code]instance[/code] 节点ä¸æŒ‡å®šå‡½æ•° [code]funcname[/code] 的引用。由" -"于函数在GDScriptä¸ä¸æ˜¯ä¸€çº§å¯¹è±¡ï¼Œå› æ¤è¯·ä½¿ç”¨ [code]funcref[/code] å°† [FuncRef] " -"å˜å‚¨åœ¨å˜é‡ä¸ï¼Œç„¶åŽå†è°ƒç”¨å®ƒã€‚\n" +"于函数在 GDScript ä¸ä¸æ˜¯ä¸€çº§å¯¹è±¡ï¼Œå› æ¤è¯·ä½¿ç”¨ [code]funcref[/code] å°† " +"[FuncRef] å˜å‚¨åœ¨å˜é‡ä¸ï¼Œç„¶åŽå†è¿›è¡Œè°ƒç”¨ã€‚\n" "[codeblock]\n" "func foo():\n" " return(\"bar\")\n" @@ -728,8 +730,10 @@ msgstr "" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml +#, fuzzy msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -744,7 +748,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" "返回一个表示当å‰è°ƒç”¨å †æ ˆçš„å—典数组。\n" "[codeblock]\n" @@ -1262,10 +1270,10 @@ msgstr "" "-3 0 0\n" "-2 -2 1\n" "-1 -1 2\n" -" 0 0 0\n" -" 1 1 1\n" -" 2 2 2\n" -" 3 0 0\n" +" 0 0 0\n" +" 1 1 1\n" +" 2 2 2\n" +" 3 0 0\n" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml @@ -1348,18 +1356,17 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" -"在代ç ä½ç½®æ‰“å°å †æ ˆè½¨è¿¹ï¼Œä»…在打开调试器的情况下è¿è¡Œã€‚\n" -"控制å°ä¸çš„输出如下所示:\n" -"[codeblock]\n" -"Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" @@ -4382,6 +4389,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "æç¤ºä¸€ä¸ªå›¾ç‰‡ä½¿ç”¨äº†æ— æŸåŽ‹ç¼©è¿›è¡ŒåŽ‹ç¼©ã€‚" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "将属性åºåˆ—化并ä¿å˜åˆ°åœºæ™¯æ–‡ä»¶ä¸ï¼ˆé»˜è®¤ï¼‰ã€‚" @@ -4979,8 +5006,8 @@ msgstr "" "confirmed] ä¿¡å·æ—¶æ‰§è¡Œç±»ä¼¼è¾“入验è¯çš„æ“作,则å¯ä»¥å°†å…¶è®¾ç½®ä¸º [code]false[/" "code],然åŽåœ¨è‡ªå·±çš„逻辑ä¸å¤„ç†å¯¹è¯æ¡†çš„éšè—。\n" "[b]注æ„:[/b]从æ¤ç±»æ´¾ç”Ÿçš„æŸäº›èŠ‚点å¯ä»¥å…·æœ‰ä¸åŒçš„默认值,并且å¯èƒ½æœ‰è‡ªå·±çš„内置逻" -"辑会覆盖æ¤è®¾ç½®ã€‚例如,[FileDialog] 默认其为 [code]false[/code],并在按下确定" -"时实现了自己的输入验è¯ä»£ç ,如果输入有效,最终将éšè—对è¯æ¡†ã€‚å› æ¤ï¼Œä¸èƒ½åœ¨ " +"辑会覆盖æ¤è®¾ç½®ã€‚例如 [FileDialog] 默认其为 [code]false[/code],并在按下确定时" +"实现了自己的输入验è¯ä»£ç ,如果输入有效,最终将éšè—对è¯æ¡†ã€‚å› æ¤ï¼Œä¸èƒ½åœ¨ " "[FileDialog] ä¸ä½¿ç”¨æ¤å±žæ€§æ¥ç¦æ¢åœ¨æŒ‰ç¡®å®šæ—¶éšè—对è¯æ¡†ã€‚" #: doc/classes/AcceptDialog.xml @@ -5169,8 +5196,7 @@ msgstr "2D ç²¾çµåŠ¨ç”»" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "2D Dodge The Creeps 演示" @@ -5577,16 +5603,16 @@ msgid "" "Returns the in handle of the key identified by [code]key_idx[/code]. The " "[code]track_idx[/code] must be the index of a Bezier Track." msgstr "" -"返回由 [code]key_idx[/code] 识别的键的输入å¥æŸ„,[code]track_idx[/code] 必须是" -"è´å¡žå°”轨é“的索引。" +"返回由 [code]key_idx[/code] 识别的键的入点手柄,[code]track_idx[/code] 必须是" +"è´èµ›å°”曲线轨é“的索引。" #: doc/classes/Animation.xml msgid "" "Returns the out handle of the key identified by [code]key_idx[/code]. The " "[code]track_idx[/code] must be the index of a Bezier Track." msgstr "" -"返回由 [code]key_idx[/code] 识别的键的输出å¥æŸ„,[code]track_idx[/code] 必须是" -"è´å¡žå°”轨é“的索引。" +"返回由 [code]key_idx[/code] 识别的键的出点手柄,[code]track_idx[/code] 必须是" +"è´èµ›å°”曲线轨é“的索引。" #: doc/classes/Animation.xml msgid "" @@ -7910,6 +7936,12 @@ msgid "" "[b]Warning:[/b] See [ConcavePolygonShape] (also called \"trimesh\") for a " "warning about possibly unexpected behavior when using that shape for an area." msgstr "" +"3D 区域å¯ä»¥æ£€æµ‹åˆ° [CollisionObject] 节点间的é‡å ã€è¿›å…¥åŠé€€å‡ºã€‚也å¯ä»¥ä¿®æ”¹æˆ–覆" +"盖局部的物ç†å‚数(é‡åŠ›ã€é˜»å°¼ï¼‰ã€å°†éŸ³é¢‘导æµè‡³è‡ªå®šä¹‰çš„音频总线。\n" +"è¦ä¸ºåŒºåŸŸè®¾ç½®å½¢çŠ¶ï¼Œè¯·å°†ä¸€ä¸ª [CollisionShape] 或 [CollisionPolygon] èŠ‚ç‚¹æ·»åŠ ä¸º" +"该区域的[i]直接[/i]åèŠ‚ç‚¹ï¼ˆæˆ–è€…æ·»åŠ å¤šä¸ªè¿™ç§èŠ‚点作为直接å节点)。\n" +"[b]è¦å‘Šï¼š[/b]使用凹多边形(也å«â€œä¸‰è§’å½¢ç½‘æ ¼â€ï¼‰ä½œä¸ºåŒºåŸŸçš„形状时,å¯èƒ½äº§ç”Ÿå‡ºä¹Žé¢„" +"æ–™çš„è¡Œä¸ºï¼Œè§ [ConcavePolygonShape]。" #: doc/classes/Area.xml doc/classes/QuadMesh.xml doc/classes/Viewport.xml #: doc/classes/ViewportTexture.xml @@ -7999,8 +8031,8 @@ msgid "" "multiplies the gravity vector. This is useful to alter the force of gravity " "without altering its direction." msgstr "" -"该区域内的é‡åŠ›å¼ºåº¦ï¼ˆå•ä½ï¼šm/s^2)。这个值是é‡åŠ›å‘é‡çš„å€æ•°ã€‚这个é‡åœ¨æ”¹å˜å¼•åŠ›å¤§" -"å°è€Œä¸æ”¹å˜å…¶æ–¹å‘很有用。" +"该区域内的é‡åŠ›å¼ºåº¦ï¼ˆå•ä½ä¸ºç±³æ¯ç§’的平方)。这个值是é‡åŠ›å‘é‡çš„å€æ•°ã€‚这个é‡åœ¨æ”¹" +"å˜å¼•åŠ›å¤§å°è€Œä¸æ”¹å˜å…¶æ–¹å‘很有用。" #: doc/classes/Area.xml doc/classes/Area2D.xml msgid "" @@ -8233,6 +8265,12 @@ msgid "" "[b]Warning:[/b] See [ConcavePolygonShape2D] for a warning about possibly " "unexpected behavior when using that shape for an area." msgstr "" +"2D 区域å¯ä»¥æ£€æµ‹åˆ° [CollisionObject2D] 节点间的é‡å ã€è¿›å…¥åŠé€€å‡ºã€‚也å¯ä»¥ä¿®æ”¹æˆ–" +"覆盖局部的物ç†å‚数(é‡åŠ›ã€é˜»å°¼ï¼‰ã€å°†éŸ³é¢‘导æµè‡³è‡ªå®šä¹‰çš„音频总线。\n" +"è¦ä¸ºåŒºåŸŸè®¾ç½®å½¢çŠ¶ï¼Œè¯·å°†ä¸€ä¸ª [CollisionShape2D] 或 [CollisionPolygon2D] 节点添" +"åŠ ä¸ºè¯¥åŒºåŸŸçš„[i]直接[/i]åèŠ‚ç‚¹ï¼ˆæˆ–è€…æ·»åŠ å¤šä¸ªè¿™ç§èŠ‚点作为直接å节点)。\n" +"[b]è¦å‘Šï¼š[/b]使用凹多边形(也å«â€œä¸‰è§’å½¢ç½‘æ ¼â€ï¼‰ä½œä¸ºåŒºåŸŸçš„形状时,å¯èƒ½äº§ç”Ÿå‡ºä¹Žé¢„" +"æ–™çš„è¡Œä¸ºï¼Œè§ [ConcavePolygonShape2D]。" #: doc/classes/Area2D.xml msgid "Using Area2D" @@ -8323,7 +8361,7 @@ msgid "" "multiplies the gravity vector. This is useful to alter the force of gravity " "without altering its direction." msgstr "" -"该区域的é‡åŠ›å¼ºåº¦ï¼ˆä»¥åƒç´ /秒的平方为å•ä½ï¼‰ã€‚这个值是é‡åŠ›å‘é‡çš„å€æ•°ã€‚这对改å˜å¼•" +"该区域的é‡åŠ›å¼ºåº¦ï¼ˆå•ä½ä¸ºåƒç´ æ¯ç§’的平方)。这个值是é‡åŠ›å‘é‡çš„å€æ•°ã€‚这对改å˜å¼•" "力大å°è€Œä¸æ”¹å˜å…¶æ–¹å‘很有用。" #: doc/classes/Area2D.xml @@ -8770,6 +8808,7 @@ msgstr "" "è¾ƒæ…¢ã€‚è¿™æ˜¯å› ä¸ºæ‰€æœ‰æ”¾ç½®åœ¨åˆ é™¤å…ƒç´ ä¹‹åŽçš„å…ƒç´ éƒ½å¿…é¡»é‡æ–°ç´¢å¼•ã€‚" #: doc/classes/Array.xml +#, fuzzy msgid "" "Assigns the given value to all elements in the array. This can typically be " "used together with [method resize] to create an array with a given size and " @@ -8778,7 +8817,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" "将该数组ä¸çš„æ‰€æœ‰å…ƒç´ éƒ½è®¾ç½®ä¸ºç»™å®šçš„å€¼ã€‚é€šå¸¸ä¸Ž [method resize] 一起使用,用于创" "建给定大å°æ•°ç»„å¹¶å¯¹å…¶å…ƒç´ è¿›è¡Œåˆå§‹åŒ–:\n" @@ -9034,8 +9076,12 @@ msgstr "" "索引之间的å˜åŒ–。" #: doc/classes/Array.xml +#, fuzzy msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -9055,6 +9101,7 @@ msgstr "" "[/codeblock]" #: doc/classes/Array.xml +#, fuzzy msgid "" "Sorts the array using a custom method. The arguments are an object that " "holds the method and the name of such method. The custom method receives two " @@ -9063,9 +9110,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -9161,7 +9212,6 @@ msgstr "" "åŠ æ›²é¢ä¹‹å‰è°ƒç”¨ã€‚" #: doc/classes/ArrayMesh.xml -#, fuzzy msgid "" "Creates a new surface.\n" "Surfaces are created to be rendered using a [code]primitive[/code], which " @@ -9195,7 +9245,14 @@ msgstr "" "ArrayType]。例如,[code]arrays[0][/code] 是顶点的数组。总是需è¦ç¬¬ä¸€ä¸ªé¡¶ç‚¹åæ•°" "组,其他的å¯é€‰ã€‚æ·»åŠ ä¸€ä¸ªç´¢å¼•æ•°ç»„ä½¿è¿™ä¸ªå‡½æ•°è¿›å…¥â€œç´¢å¼•æ¨¡å¼â€ï¼Œé¡¶ç‚¹å’Œå…¶ä»–数组作为" "æ•°æ®æ¥æºï¼Œç´¢å¼•æ•°ç»„定义其顶点顺åºã€‚所有的å数组必须与顶点数组具有相åŒçš„长度," -"或者为空,如果使用了 [constant ARRAY_INDEX] 时除外。" +"或者为空,如果使用了 [constant ARRAY_INDEX] 时除外。\n" +"[code]compress_flags[/code] 是由 [enum Mesh.ArrayFormat] 枚举值组æˆçš„ä½åŸŸï¼Œé»˜" +"认为 [constant Mesh.ARRAY_COMPRESS_DEFAULT]。\n" +"[b]注æ„:[/b][code]compress_flags[/code] 默认会å¯ç”¨ [constant Mesh." +"ARRAY_COMPRESS_COLOR],所以顶点颜色会作为 8 ä½æ— 符å·æ•´æ•°å˜å‚¨ã€‚这会导致过亮颜" +"色被钳制到 [code]Color(1, 1, 1, 1)[/code],é™ä½Žé¢œè‰²çš„精度。è¦å˜å‚¨ HDR 顶点颜" +"色,请将 [code]Mesh.ARRAY_COMPRESS_DEFAULT ^ Mesh.ARRAY_COMPRESS_COLOR[/" +"code] ä¼ å…¥ [code]compress_flags[/code]ï¼Œç§»é™¤é¡¶ç‚¹é¢œè‰²åŽ‹ç¼©æ ‡å¿—ã€‚" #: doc/classes/ArrayMesh.xml msgid "Removes all blend shapes from this [ArrayMesh]." @@ -9731,10 +9788,10 @@ msgid "" msgstr "" "调用这个æ¥åˆå§‹åŒ–这个接å£ã€‚第一个被åˆå§‹åŒ–的接å£ç¡®å®šä¸ºä¸»æŽ¥å£ï¼Œç”¨äºŽæ¸²æŸ“输出。\n" "在åˆå§‹åŒ–了接å£ä¹‹åŽï¼Œéœ€è¦å¯ç”¨è§†çª—çš„ AR/VR 模å¼ï¼Œå°†å¼€å§‹æ¸²æŸ“。\n" -"[b]注æ„:[/b]对于任何使用 Godot 主输出的设备,如移动 VRï¼Œä½ å¿…é¡»åœ¨ä¸»è§†çª—ä¸Šå¯" +"[b]注æ„:[/b]对于任何使用 Godot 主输出的设备,如移动 VRï¼Œä½ å¿…é¡»åœ¨ä¸»è§†å£ä¸Šå¯" "用 AR/VR 模å¼ã€‚\n" "å¦‚æžœä½ ä¸ºä¸€ä¸ªå¤„ç†è‡ªå·±è¾“出的平å°è¿™æ ·åšï¼ˆå¦‚ OpenVR),Godot 就会在å±å¹•ä¸Šåªæ˜¾ç¤ºä¸€" -"åªçœ¼ç›è€Œä¸å¤±çœŸã€‚å¦å¤–ï¼Œä½ å¯ä»¥åœ¨åœºæ™¯ä¸æ·»åŠ 一个å•ç‹¬çš„视窗节点,在该视窗上å¯ç”¨ " +"åªçœ¼ç›è€Œä¸å¤±çœŸã€‚å¦å¤–ï¼Œä½ å¯ä»¥åœ¨åœºæ™¯ä¸æ·»åŠ 一个å•ç‹¬çš„视å£èŠ‚点,在该视å£ä¸Šå¯ç”¨ " "AR/VR。它将被用æ¥è¾“出到 HMDï¼Œè®©ä½ åœ¨ä¸»çª—å£ä¸åšä½ 喜欢的事情,比如用一个å•ç‹¬çš„相" "机作为æ—观者相机,或者渲染一些完全ä¸åŒçš„东西。\n" "虽然目å‰æ²¡æœ‰ä½¿ç”¨ï¼Œä½†ä½ å¯ä»¥æ¿€æ´»å…¶ä»–接å£ã€‚å¦‚æžœä½ æƒ³è·Ÿè¸ªå…¶ä»–å¹³å°çš„控制器,å¯èƒ½å¸Œ" @@ -12345,15 +12402,14 @@ msgid "Clears the audio sample data buffer." msgstr "æ¸…é™¤éŸ³é¢‘æ ·æœ¬æ•°æ®ç¼“冲区。" #: doc/classes/AudioStreamGeneratorPlayback.xml +#, fuzzy msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" -"返回è¦æ’放的音频数æ®å¸§æ•°ã€‚如果返回的数å—达到 [code]0[/code],音频将åœæ¢æ’放," -"直到å†æ¬¡æ·»åŠ å¸§ã€‚å› æ¤ï¼Œè¯·ç¡®ä¿ä½ 的脚本始终能够以足够快的速度生æˆå’ŒæŽ¨é€æ–°çš„音频" -"帧,以é¿å…éŸ³é¢‘ç ´è£‚ã€‚" +"如果å¯ä»¥å°†å¤§å°ä¸º [code]amount[/code] 的缓冲区推é€åˆ°éŸ³é¢‘é‡‡æ ·æ•°æ®ç¼“冲区而ä¸ä½¿å…¶" +"溢出,则返回 [code]true[/code],å¦åˆ™è¿”回 [code]false[/code]。" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" @@ -12877,8 +12933,8 @@ msgid "" "PCM8 to signed PCM8, subtract 128 from each byte." msgstr "" "包å«ä»¥å—节为å•ä½çš„音频数æ®ã€‚\n" -"[b]注æ„:[/b]æ¤å±žæ€§éœ€è¦æœ‰ç¬¦å·çš„ PCM8æ•°æ®ã€‚è¦å°†æ— 符å·çš„ PCM8转æ¢ä¸ºæœ‰ç¬¦å·çš„ " -"PCM8,需è¦ä»Žæ¯ä¸ªå—节ä¸å‡åŽ»128。" +"[b]注æ„:[/b]æ¤å±žæ€§éœ€è¦æœ‰ç¬¦å·çš„ PCM8 æ•°æ®ã€‚è¦å°†æ— 符å·çš„ PCM8 转æ¢ä¸ºæœ‰ç¬¦å·çš„ " +"PCM8,需è¦ä»Žæ¯ä¸ªå—节ä¸å‡åŽ» 128。" #: doc/classes/AudioStreamSample.xml msgid "Audio format. See [enum Format] constants for values." @@ -12986,16 +13042,17 @@ msgstr "" "[code]texture(SCREEN_TEXTURE, ...)[/code] 函数在ç€è‰²å™¨è„šæœ¬ä¸å¯¹å…¶è¿›è¡Œè®¿é—®ã€‚" #: doc/classes/BackBufferCopy.xml +#, fuzzy msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" "用于对当å‰å±å¹•æ˜¾ç¤ºè¿›è¡ŒåŽå°ç¼“冲的节点。BackBufferCopy 节点ä¸å®šä¹‰çš„区域与其覆盖" @@ -13011,26 +13068,30 @@ msgid "Buffer mode. See [enum CopyMode] constants." msgstr "缓冲区模å¼ã€‚è§ [enum CopyMode] 常é‡ã€‚" #: doc/classes/BackBufferCopy.xml +#, fuzzy msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" "BackBufferCopy 覆盖的区域。åªæœ‰å½“ [member copy_mode] 是 [constant " "COPY_MODE_RECT] æ—¶æ‰ä½¿ç”¨ã€‚" #: doc/classes/BackBufferCopy.xml +#, fuzzy msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" "ç¦ç”¨ç¼“冲模å¼ã€‚è¿™æ„å‘³ç€ BackBufferCopy 节点将直接使用它所覆盖的å±å¹•éƒ¨åˆ†ã€‚" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +#, fuzzy +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "BackBufferCopy 缓冲一个矩形区域。" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +#, fuzzy +msgid "[BackBufferCopy] buffers the entire screen." msgstr "BackBufferCopy 缓冲整个å±å¹•ã€‚" #: doc/classes/BakedLightmap.xml @@ -13419,7 +13480,7 @@ msgid "" "group]." msgstr "" "改å˜æŒ‰é’®çš„ [member pressed] 状æ€ï¼Œä¸è§¦å‘ [signal toggled]ã€‚å½“ä½ åªæƒ³æ”¹å˜æŒ‰é’®çš„" -"状æ€è€Œä¸å‘é€æŒ‰ä¸‹äº‹ä»¶æ—¶ä½¿ç”¨ï¼ˆä¾‹å¦‚,在åˆå§‹åŒ–场景时)。åªæœ‰å½“ [member " +"状æ€è€Œä¸å‘é€æŒ‰ä¸‹äº‹ä»¶æ—¶ä½¿ç”¨ï¼ˆä¾‹å¦‚在åˆå§‹åŒ–场景时)。åªæœ‰å½“ [member " "toggle_mode] 是 [code]true[/code] æ—¶æ‰æœ‰æ•ˆã€‚\n" "[b]注æ„:[/b]这个方法ä¸ä¼šé‡Šæ”¾å…¶æŒ‰é’® [member group] ä¸çš„其他按钮。" @@ -14028,7 +14089,7 @@ msgstr "" #: doc/classes/Bone2D.xml msgid "" "Length of the bone's representation drawn in the editor's viewport in pixels." -msgstr "在编辑器的视窗ä¸ç»˜åˆ¶çš„骨骼的长度,å•ä½ä¸ºåƒç´ 。" +msgstr "在编辑器的视å£ä¸ç»˜åˆ¶çš„骨骼的长度,å•ä½ä¸ºåƒç´ 。" #: doc/classes/Bone2D.xml msgid "" @@ -14735,10 +14796,10 @@ msgstr "" "相机的视野角度,以度为å•ä½ã€‚仅适用于é€è§†æ¨¡å¼ã€‚由于 [member keep_aspect] é”定" "ä¸€ä¸ªè½´ï¼Œå› æ¤ [code]fov[/code] 设置å¦ä¸€ä¸ªè½´çš„视角。\n" "作为å‚考,默认的垂直视野值([code]70.0[/code])相当于以下水平 FOV:\n" -"- 在 4:3 视窗ä¸çº¦86.07 度\n" -"- 在 16:10 视窗ä¸çº¦ 96.50 度\n" -"- 在 16:9 视窗ä¸çº¦102.45 度\n" -"- 在 21:9 视窗ä¸çº¦117.06 度" +"- 在 4:3 视å£ä¸çº¦86.07 度\n" +"- 在 16:10 视å£ä¸çº¦ 96.50 度\n" +"- 在 16:9 视å£ä¸çº¦102.45 度\n" +"- 在 21:9 视å£ä¸çº¦117.06 度" #: doc/classes/Camera.xml msgid "" @@ -15169,9 +15230,9 @@ msgid "" "example, use [code]Vector2(0.5, 0.5)[/code] for a 2× zoom-in, and " "[code]Vector2(4, 4)[/code] for a 4× zoom-out." msgstr "" -"相机相对于视窗的缩放比例。大于 [code]Vector2(1, 1)[/code] 的值会缩å°å†…容,而" -"较å°çš„值会起到放大镜的作用。例如,将 [code]Vector2(0.5, 0.5)[/code] 放大 2 " -"å€ï¼Œç„¶åŽå°† [code]Vector2(4, 4)[/code] 用于 4 å€ç¼©å°ã€‚" +"相机相对于视å£çš„缩放比例。大于 [code]Vector2(1, 1)[/code] 的值会缩å°å†…容,而" +"较å°çš„值会起到放大的作用。例如,将 [code]Vector2(0.5, 0.5)[/code] 放大 2 å€ï¼Œ" +"然åŽå°† [code]Vector2(4, 4)[/code] 用于 4 å€ç¼©å°ã€‚" #: doc/classes/Camera2D.xml msgid "" @@ -15308,11 +15369,11 @@ msgstr "ç§»é™¤æŒ‡å®šçš„ç›¸æœºæº [code]feed[/code]。" #: doc/classes/CameraServer.xml msgid "Emitted when a [CameraFeed] is added (e.g. a webcam is plugged in)." -msgstr "å½“æ·»åŠ [CameraFeed] 时触å‘(例如,æ’入网络摄åƒå¤´ï¼‰ã€‚" +msgstr "å½“æ·»åŠ [CameraFeed] 时触å‘(例如æ’入网络摄åƒå¤´æ—¶ï¼‰ã€‚" #: doc/classes/CameraServer.xml msgid "Emitted when a [CameraFeed] is removed (e.g. a webcam is unplugged)." -msgstr "当移除 [CameraFeed] 时触å‘(例如,拔掉网络摄åƒå¤´ï¼‰ã€‚" +msgstr "当移除 [CameraFeed] 时触å‘(例如拔掉网络摄åƒå¤´æ—¶ï¼‰ã€‚" #: doc/classes/CameraServer.xml msgid "The RGBA camera image." @@ -16592,7 +16653,7 @@ msgstr "" "外观ä¸åŒã€‚为了éµå¾ªç”¨æˆ·ä½“验,建议在切æ¢å®ƒå¯¹æŸäº›ä¸œè¥¿æœ‰[b]直接[/b]å½±å“时使用" "CheckButton。例如,如果切æ¢å®ƒå¯ä»¥å¯ç”¨æˆ–ç¦ç”¨è®¾ç½®è€Œä¸éœ€è¦ç”¨æˆ·æŒ‰ä¸‹ç¡®è®¤æŒ‰é’®æ—¶ï¼Œä½¿" "用它。\n" -"å‚阅[BaseButton],它包å«äº†ä¸Žè¯¥èŠ‚点相关的常规属性和方法。" +"å¦è¯·å‚阅 [BaseButton],它包å«äº†ä¸Žè¯¥èŠ‚点相关的常规属性和方法。" #: doc/classes/CheckButton.xml msgid "The [CheckButton] text's font color." @@ -17030,7 +17091,6 @@ msgid "Removes the given shape owner." msgstr "移除给定形状的所有者。" #: doc/classes/CollisionObject.xml doc/classes/CollisionObject2D.xml -#, fuzzy msgid "" "If [code]value[/code] is [code]true[/code], sets the specified [code]bit[/" "code] in the [member collision_layer].\n" @@ -17039,11 +17099,10 @@ msgid "" msgstr "" "如果 [code]value[/code] 为 [code]true[/code],则设置 [member " "collision_layer] ä¸æŒ‡å®šçš„ [code]bit[/code] ä½ã€‚\n" -"如果 [code]value[/code] 为 [code]false[/code],清除 [member collision_layer] " -"ä¸æŒ‡å®šçš„ [code]bit[/code] ä½ã€‚" +"如果 [code]value[/code] 为 [code]false[/code],则清除 [member " +"collision_layer] ä¸æŒ‡å®šçš„ [code]bit[/code] ä½ã€‚" #: doc/classes/CollisionObject.xml doc/classes/CollisionObject2D.xml -#, fuzzy msgid "" "If [code]value[/code] is [code]true[/code], sets the specified [code]bit[/" "code] in the [member collision_mask].\n" @@ -17052,8 +17111,8 @@ msgid "" msgstr "" "如果 [code]value[/code] 为 [code]true[/code],则设置 [member collision_mask] " "ä¸æŒ‡å®šçš„ [code]bit[/code] ä½ã€‚\n" -"如果 [code]value[/code] 为 [code]false[/code],清除 [member collision_mask] " -"ä¸æŒ‡å®šçš„ [code]bit[/code] ä½ã€‚" +"如果 [code]value[/code] 为 [code]false[/code],则清除 [member " +"collision_mask] ä¸æŒ‡å®šçš„ [code]bit[/code] ä½ã€‚" #: doc/classes/CollisionObject.xml doc/classes/CollisionObject2D.xml msgid "Returns the [code]owner_id[/code] of the given shape." @@ -17427,7 +17486,6 @@ msgid "Node that represents collision shape data in 3D space." msgstr "表示 3D 空间ä¸çš„碰撞形状数æ®çš„节点。" #: doc/classes/CollisionShape.xml -#, fuzzy msgid "" "Editor facility for creating and editing collision shapes in 3D space. Set " "the [member shape] property to configure the shape. [b]IMPORTANT[/b]: this " @@ -17437,10 +17495,11 @@ msgid "" "example, add this to an [Area] to give it a detection shape, or add it to a " "[PhysicsBody] to create a solid object." msgstr "" -"用于在 3D 空间ä¸åˆ›å»ºå’Œç¼–辑碰撞形状的编辑工具。您å¯ä»¥ä½¿ç”¨æ¤èŠ‚点表示å„ç§ç¢°æ’žå½¢" -"çŠ¶ï¼Œä¾‹å¦‚ï¼Œå°†å…¶æ·»åŠ åˆ° [Area] ä»¥ä½¿å…¶å…·æœ‰æ£€æµ‹å½¢çŠ¶ï¼Œæˆ–å°†å…¶æ·»åŠ åˆ°ç‰©ç†ä½“ " -"[PhysicsBody] 以创建实体对象。[b]é‡è¦[/b]:这是一个编辑器专用的创建形状的助" -"手,使用 [method CollisionObject.shape_owner_get_shape] 获å–实际形状。" +"用于在 3D 空间ä¸åˆ›å»ºå’Œç¼–辑碰撞形状的编辑工具。请使用 [member shape] 属性é…ç½®" +"形状。[b]é‡è¦[/b]:这是专为编辑器æ供的形状创建工具,è¦èŽ·å–实际形状,请使用 " +"[method CollisionObject.shape_owner_get_shape]。\n" +"ä½ å¯ä»¥ä½¿ç”¨è¿™ä¸ªèŠ‚点表示å„ç§ç¢°æ’žå½¢çŠ¶ï¼Œä¾‹å¦‚ï¼Œå°†å…¶æ·»åŠ åˆ° [Area] 以使其具有检测形" +"çŠ¶ï¼Œæˆ–å°†å…¶æ·»åŠ åˆ°ç‰©ç†ä½“ [PhysicsBody] 以创建实体对象。" #: doc/classes/CollisionShape.xml doc/classes/CollisionShape2D.xml #: doc/classes/Physics2DDirectBodyState.xml @@ -17475,7 +17534,6 @@ msgid "Node that represents collision shape data in 2D space." msgstr "表示2D空间ä¸çš„碰撞形状数æ®çš„节点。" #: doc/classes/CollisionShape2D.xml -#, fuzzy msgid "" "Editor facility for creating and editing collision shapes in 2D space. Set " "the [member shape] property to configure the shape. [b]IMPORTANT[/b]: this " @@ -17485,10 +17543,11 @@ msgid "" "example, add this to an [Area2D] to give it a detection shape, or add it to " "a [PhysicsBody2D] to create a solid object." msgstr "" -"编辑器功能,用于在2D空间ä¸åˆ›å»ºå’Œç¼–辑碰撞形状。您å¯ä»¥ä½¿ç”¨æ¤èŠ‚点表示å„ç§ç¢°æ’žå½¢" -"çŠ¶ï¼Œä¾‹å¦‚ï¼Œå°†å…¶æ·»åŠ åˆ° [Area2D] 以æä¾›æ£€æµ‹å½¢çŠ¶ï¼Œæˆ–å°†å…¶æ·»åŠ åˆ° [PhysicsBody2D] 以" -"创建实体。[b]é‡è¦äº‹é¡¹[/b]:这是创建形状的仅编辑器助手,请使用 [method " -"CollisionObject2D.shape_owner_get_shape] 获å–实际形状。" +"用于在 2D 空间ä¸åˆ›å»ºå’Œç¼–辑碰撞形状的编辑工具。请使用 [member shape] 属性é…ç½®" +"形状。[b]é‡è¦[/b]:这是专为编辑器æ供的形状创建工具,è¦èŽ·å–实际形状,请使用 " +"[method CollisionObject2D.shape_owner_get_shape]。\n" +"ä½ å¯ä»¥ä½¿ç”¨è¿™ä¸ªèŠ‚点表示å„ç§ç¢°æ’žå½¢çŠ¶ï¼Œä¾‹å¦‚ï¼Œå°†å…¶æ·»åŠ åˆ° [Area2D] 以使其具有检测" +"å½¢çŠ¶ï¼Œæˆ–å°†å…¶æ·»åŠ åˆ°ç‰©ç†ä½“ [PhysicsBody2D] 以创建实体对象。" #: doc/classes/CollisionShape2D.xml doc/classes/KinematicBody2D.xml #: doc/classes/RectangleShape2D.xml doc/classes/TileMap.xml @@ -18827,6 +18886,17 @@ msgid "" "Physics the area will not detect any collisions with the concave shape at " "all (this is a known bug)." msgstr "" +"凹多边形形状资æºï¼Œå¯ä»¥æ”¾åˆ° [PhysicsBody] 和区域之ä¸ã€‚è¿™ç§å½¢çŠ¶æ˜¯é€šè¿‡è¾“入一组三" +"角形æ¥åˆ›å»ºçš„。\n" +"[b]注æ„:[/b]用于碰撞时,[ConcavePolygonShape] 应与 [StaticBody] ç‰é™æ€ " +"[PhysicsBody] 节点一起使用,与 [KinematicBody] å’Œéž Static 模å¼çš„ " +"[RigidBody] ä¸€èµ·ä½¿ç”¨æ˜¯æ— æ³•æ£å¸¸å·¥ä½œçš„。\n" +"[b]è¦å‘Šï¼š[/b]将这ç§å½¢çŠ¶ç”¨äºŽ [Area](通过 [CollisionShape] èŠ‚ç‚¹ï¼Œä¾‹å¦‚é€‰ä¸ " +"[MeshInstance] 节点åŽï¼Œé€šè¿‡å‡ºçŽ°çš„[i]ç½‘æ ¼[/i]èœå•ä¸çš„[i]åˆ›å»ºä¸‰è§’ç½‘æ ¼ç¢°æ’žåŒçº§[/" +"i]æ¥åˆ›å»ºï¼‰å¯èƒ½å¾—到出乎预料的结果:使用 Godot Physics 时,区域åªä¼šæ£€æµ‹ä¸Ž " +"[ConcavePolygonShape] 的三角形é¢äº§ç”Ÿçš„碰撞(ä¸ä¼šæ£€æµ‹è¯¥å½¢çŠ¶çš„“内部â€ï¼Œè¿™é‡Œåªæ˜¯" +"举个例å),使用 Bullet Physics æ—¶æ ¹æœ¬ä¸ä¼šæ£€æµ‹åˆ°ä»»ä½•ä¸Žå‡¹å½¢çŠ¶çš„碰撞(这是已知" +"的问题)。" #: doc/classes/ConcavePolygonShape.xml msgid "Returns the faces (an array of triangles)." @@ -18841,7 +18911,6 @@ msgid "Concave polygon 2D shape resource for physics." msgstr "凹é¢å¤šè¾¹å½¢2D形状资æºç”¨äºŽç‰©ç†ã€‚" #: doc/classes/ConcavePolygonShape2D.xml -#, fuzzy msgid "" "Concave polygon 2D shape resource for physics. It is made out of segments " "and is optimal for complex polygonal concave collisions. However, it is not " @@ -18858,12 +18927,16 @@ msgid "" "the segments in the [ConcavePolygonShape2D] (and not with any \"inside\" of " "the shape, for example)." msgstr "" -"凹é¢å¤šè¾¹å½¢2D形状资æºç”¨äºŽç‰©ç†ã€‚它是由线段组æˆçš„,是å¤æ‚的多边形凹é¢ç¢°æ’žçš„最佳" -"选择。但是,建议ä¸è¦å°†å…¶ç”¨äºŽ[RigidBody2D]节点。建议使用凸分解模å¼ï¼ˆå®žä½“)或多" -"个凸对象的CollisionPolygon2D代替。å¦åˆ™ï¼Œå‡¹å¤šè¾¹å½¢2D形状更适åˆé™æ€ç¢°æ’žã€‚\n" -"[ConvexPolygonShape2D]å’Œ[ConcavePolygonShape2D]之间的主è¦åŒºåˆ«åœ¨äºŽï¼Œå‡¹é¢å¤šè¾¹å½¢" -"å‡å®šå…¶ä¸ºå‡¹é¢ï¼Œå¹¶ä½¿ç”¨æ›´å¤æ‚的碰撞检测方法,而凸é¢å¤šè¾¹å½¢åˆ™å°†è‡ªèº«å¼ºåˆ¶å˜ä¸ºå‡¸é¢ï¼Œ" -"ä»¥åŠ å¿«ç¢°æ’žæ£€æµ‹çš„é€Ÿåº¦ã€‚" +"用于物ç†çš„凹多边形 2D 形状资æºã€‚它是由线段组æˆçš„,是å¤æ‚的多边形凹é¢ç¢°æ’žçš„最" +"佳选择。但是建议ä¸è¦å°†å…¶ç”¨äºŽ [RigidBody2D] 节点。建议使用凸分解模å¼ï¼ˆå®žä½“)或" +"多个凸对象的 CollisionPolygon2D 代替。å¦åˆ™ï¼Œå‡¹å¤šè¾¹å½¢ 2D 形状更适åˆé™æ€ç¢°" +"撞。\n" +"[ConvexPolygonShape2D] å’Œ [ConcavePolygonShape2D] 之间的主è¦åŒºåˆ«åœ¨äºŽï¼Œå‡¹å¤šè¾¹" +"å½¢å‡å®šå…¶ä¸ºå‡¹é¢ï¼Œå¹¶ä½¿ç”¨æ›´å¤æ‚的碰撞检测方法,而凸多边形则将自身强制å˜ä¸ºå‡¸é¢ï¼Œ" +"ä»¥åŠ å¿«ç¢°æ’žæ£€æµ‹çš„é€Ÿåº¦ã€‚\n" +"[b]è¦å‘Šï¼š[/b]将这ç§å½¢çŠ¶ç”¨äºŽ [Area2D](通过 [CollisionShape2D] 节点)å¯èƒ½å¾—到" +"出乎预料的结果:区域åªä¼šæ£€æµ‹ä¸Ž [ConcavePolygonShape2D] 的线段产生的碰撞(ä¸ä¼š" +"检测该形状的“内部â€ï¼Œè¿™é‡Œåªæ˜¯ä¸¾ä¸ªä¾‹å)。" #: doc/classes/ConcavePolygonShape2D.xml msgid "" @@ -19599,7 +19672,7 @@ msgstr "" "时,本地覆盖项始终优先。\n" "[b]注æ„:[/b]为覆盖项设 [code]null[/code] 值å¯å°†å…¶åˆ 除。该行为已废弃,将在 " "4.0 ä¸ç§»é™¤ï¼Œè¯·æ¢æˆ [method remove_stylebox_override]。\n" -"å‚阅 [method get_stylebox]。\n" +"å¦è¯·å‚阅 [method get_stylebox]。\n" "[b]通过å¤åˆ¶æ¥ä¿®æ”¹ StyleBox ä¸çš„属性的示例:[/b]\n" "[codeblock]\n" "# 下é¢çš„代ç 片段å‡è®¾å节点 MyButton 分é…了一个 StyleBoxFlat。\n" @@ -19672,7 +19745,7 @@ msgstr "找到下一个å¯ä»¥æŽ¥å—焦点的 [Control]ï¼Œåœ¨æ ‘çš„ä¸‹æ–¹ã€‚" #: doc/classes/Control.xml msgid "" "Finds the previous (above in the tree) [Control] that can receive the focus." -msgstr "找到å¯ä»¥æŽ¥æ”¶ç„¦ç‚¹çš„上一个 [Control]ï¼Œåœ¨æ ‘çš„ä¸Šæ–¹ã€‚" +msgstr "找到上一个å¯ä»¥æŽ¥å—焦点的 [Control]ï¼Œåœ¨æ ‘çš„ä¸Šæ–¹ã€‚" #: doc/classes/Control.xml msgid "" @@ -19735,11 +19808,11 @@ msgstr "" "code],则使用当å‰æŽ§ä»¶çš„ç±»å作为类型,如果定义了 [member " "theme_type_variation] 则也会使用。如果类型是类å,则还会按继承顺åºæ£€æŸ¥å…¶çˆ¶" "类。\n" -"对于当å‰æŽ§ä»¶ï¼Œé¦–先考虑其本地覆盖项,å‚阅 [method add_color_override],然åŽæ˜¯" -"其分é…çš„ [member theme]。在当å‰æŽ§ä»¶ä¹‹åŽï¼Œè€ƒè™‘æ¯ä¸ªçˆ¶æŽ§ä»¶åŠå…¶åˆ†é…çš„ [member " -"theme];未分é…[member theme]çš„æŽ§ä»¶å°†è¢«è·³è¿‡ã€‚å¦‚æžœåœ¨æ ‘ä¸æ‰¾ä¸åˆ°åŒ¹é…çš„ [Theme]," -"则使用自定义项目 [Theme]和默认的 [Theme],å‚阅 [member ProjectSettings.gui/" -"theme/custom]。\n" +"对于当å‰æŽ§ä»¶ï¼Œä¼šé¦–å…ˆè€ƒè™‘å…¶æœ¬åœ°è¦†ç›–é¡¹ï¼ˆè§ [method add_color_override]),然åŽ" +"å†æ˜¯ä¸ºå…¶åˆ†é…çš„ [member theme]。在当å‰æŽ§ä»¶ä¹‹åŽï¼Œè€ƒè™‘æ¯ä¸ªçˆ¶æŽ§ä»¶åŠå…¶åˆ†é…çš„ " +"[member theme]ï¼›æœªåˆ†é… [member theme] çš„æŽ§ä»¶å°†è¢«è·³è¿‡ã€‚å¦‚æžœåœ¨æ ‘ä¸æ‰¾ä¸åˆ°åŒ¹é…çš„ " +"[Theme],则使用自定义项目 [Theme]ï¼ˆè§ [member ProjectSettings.gui/theme/" +"custom])和默认的 [Theme]。\n" "[codeblock]\n" "func _ready():\n" " # 获å–为当å‰æŽ§ä»¶ç±»å®šä¹‰çš„å—体颜色(如果å˜åœ¨ï¼‰ã€‚\n" @@ -19925,12 +19998,11 @@ msgid "" "be clicked instead\n" "[/codeblock]" msgstr "" -"创建一个[InputEventMouseButton],å°è¯•ç‚¹å‡»æŽ§ä»¶ã€‚如果接收到该事件,控件就会获得" -"焦点。\n" +"创建å°è¯•ç‚¹å‡»è¯¥æŽ§ä»¶çš„ [InputEventMouseButton]。如果接收到该事件,该控件就会获" +"得焦点。\n" "[codeblock]\n" "func _process(delta):\n" -" grab_click_focus() #when clicking another Control node, this node will " -"be clicked instead\n" +" grab_click_focus() # 点击其它 Control 节点时,实际会点到这个节点\n" "[/codeblock]" #: doc/classes/Control.xml @@ -19991,7 +20063,7 @@ msgid "" "Returns [code]true[/code] if this is the current focused control. See " "[member focus_mode]." msgstr "" -"如果这是当å‰çš„焦点控件,则返回 [code]true[/code]。å‚阅[member focus_mode]。" +"如果这是当å‰çš„焦点控件,则返回 [code]true[/code]ã€‚è§ [member focus_mode]。" #: doc/classes/Control.xml msgid "" @@ -20057,7 +20129,7 @@ msgid "" msgstr "" "å¦‚æžœæ¤ [Control] 节点ä¸å…·æœ‰æŒ‡å®š [code]name[/code] 的主题ç€è‰²å™¨å˜åœ¨æœ¬åœ°è¦†ç›–" "项,则返回 [code]true[/code]。\n" -"å‚阅[method add_shader_override]。" +"è§ [method add_shader_override]。" #: doc/classes/Control.xml msgid "" @@ -20078,7 +20150,7 @@ msgid "" msgstr "" "å¦‚æžœåœ¨æ¤ [Control] 节点ä¸å…·æœ‰æŒ‡å®š [code]name[/code] 的主题 [StyleBox] 的本地" "覆盖项,则返回 [code]true[/code]。\n" -"å‚阅 [method add_stylebox_override]。" +"è§ [method add_stylebox_override]。" #: doc/classes/Control.xml msgid "" @@ -20148,15 +20220,15 @@ msgid "" "[code]push_opposite_anchor[/code] was [code]false[/code], the left anchor " "would get value 0.5." msgstr "" -"将由[enum Margin]枚举的[code]margin[/code]常é‡æ ‡è¯†çš„锚设置为值[code]anchor[/" -"code]。用于[member anchor_bottom],[member anchor_left],[member " -"anchor_right]å’Œ[member anchor_top]çš„setter方法。\n" -"如果[code]keep_margin[/code]为 [code]true[/code],则在执行æ¤æ“作åŽä¸ä¼šæ›´æ–°è¾¹" -"è·ã€‚\n" -"如果[code]push_opposite_anchor[/code]为 [code]true[/code],并且相对的锚点与该" -"锚点é‡å ,则相对的锚点将覆盖其值。例如,当将左锚点设置为1且å³é”šç‚¹çš„值为0.5" -"时,å³é”šç‚¹çš„值也将为1。如果[code]push_opposite_anchor[/code]为 [code]false[/" -"code],则左锚点将得到值0.5。" +"将由 [code]margin[/code] 常é‡æ ‡è¯†çš„锚点设置为值 [code]anchor[/code],å–值为 " +"[enum Margin] 枚举。这是 [member anchor_bottom]ã€[member anchor_left]ã€" +"[member anchor_right]ã€[member anchor_top] çš„ setter 方法。\n" +"如果 [code]keep_margin[/code] 为 [code]true[/code],则在执行æ¤æ“作åŽä¸ä¼šæ›´æ–°" +"è¾¹è·ã€‚\n" +"如果 [code]push_opposite_anchor[/code] 为 [code]true[/code],并且相对的锚点与" +"该锚点é‡å ,则相对的锚点将覆盖其值。例如,当将左锚点设置为 1 且å³é”šç‚¹çš„值为 " +"0.5 时,å³é”šç‚¹çš„值也将为 1。如果 [code]push_opposite_anchor[/code] 为 " +"[code]false[/code],则左锚点将得到值 0.5。" #: doc/classes/Control.xml msgid "" @@ -20165,15 +20237,14 @@ msgid "" "offset yourself (see [method set_margin])." msgstr "" "与 [method set_anchor] 的工作原ç†ç›¸åŒï¼Œä½†æ˜¯å®ƒä»£æ›¿ [code]keep_margin[/code] å‚" -"数和边è·çš„自动更新,它å…许您自己设置边è·å移é‡ï¼ˆè¯·å‚阅 [method " -"set_margin])。" +"数和边è·çš„自动更新,它å…许您自己设置边è·å移é‡ï¼ˆè§ [method set_margin])。" #: doc/classes/Control.xml msgid "" "Sets both anchor preset and margin preset. See [method set_anchors_preset] " "and [method set_margins_preset]." msgstr "" -"设置锚点预设和边è·é¢„设。请å‚阅 [method set_anchors_preset] å’Œ [method " +"设置锚点预设和边è·é¢„è®¾ã€‚è§ [method set_anchors_preset] å’Œ [method " "set_margins_preset]。" #: doc/classes/Control.xml @@ -20193,7 +20264,7 @@ msgid "" "Sets [member margin_left] and [member margin_top] at the same time. " "Equivalent of changing [member rect_position]." msgstr "" -"åŒæ—¶è®¾ç½®[member margin_left]å’Œ[member margin_top]。ç‰æ•ˆäºŽæ›´æ”¹[member " +"åŒæ—¶è®¾ç½® [member margin_left] å’Œ [member margin_top]。ç‰æ•ˆäºŽæ›´æ”¹ [member " "rect_position]。" #: doc/classes/Control.xml @@ -20285,7 +20356,7 @@ msgstr "" #: doc/classes/Control.xml msgid "Sets [member margin_right] and [member margin_bottom] at the same time." -msgstr "åŒæ—¶è®¾ç½®[member margin_right]å’Œ[member margin_bottom]。" +msgstr "åŒæ—¶è®¾ç½® [member margin_right] å’Œ [member margin_bottom]。" #: doc/classes/Control.xml msgid "" @@ -20305,9 +20376,9 @@ msgid "" "If [code]keep_margins[/code] is [code]true[/code], control's anchors will be " "updated instead of margins." msgstr "" -"å°†[member rect_global_position]设置为给定的[code]position[/code]。\n" -"如果[code]keep_margins[/code]为 [code]true[/code],则控件的锚点将被更新,而ä¸" -"是边è·ã€‚" +"å°† [member rect_global_position] 设置为给定的 [code]position[/code]。\n" +"如果 [code]keep_margins[/code] 为 [code]true[/code],则更新的是控件的锚点,而" +"ä¸æ˜¯è¾¹è·ã€‚" #: doc/classes/Control.xml msgid "" @@ -20345,9 +20416,9 @@ msgid "" "If [code]keep_margins[/code] is [code]true[/code], control's anchors will be " "updated instead of margins." msgstr "" -"å°†[member rect_position]设置为给定的[code]position[/code]。\n" -"如果[code]keep_margins[/code]为 [code]true[/code],则控件的锚点将被更新,而ä¸" -"是边è·ã€‚" +"å°† [member rect_position] 设置为给定的 [code]position[/code]。\n" +"如果 [code]keep_margins[/code] 为 [code]true[/code],则更新的是控件的锚点,而" +"ä¸æ˜¯è¾¹è·ã€‚" #: doc/classes/Control.xml msgid "Sets the rotation (in radians)." @@ -20431,8 +20502,8 @@ msgid "" "The focus access mode for the control (None, Click or All). Only one Control " "can be focused at the same time, and it will receive keyboard signals." msgstr "" -"控件的焦点访问模å¼ï¼ˆâ€œæ— â€ï¼Œâ€œå•å‡»â€æˆ–“全部â€ï¼‰ã€‚åªèƒ½åŒæ—¶é›†ä¸ä¸€ä¸ªæŽ§ä»¶ï¼Œå®ƒå°†æŽ¥æ”¶é”®" -"盘信å·ã€‚" +"控件的焦点访问模å¼ï¼ˆâ€œæ— â€â€œå•å‡»â€æˆ–“全部â€ï¼‰ã€‚åªèƒ½åŒæ—¶èšç„¦ä¸€ä¸ªæŽ§ä»¶ï¼Œè¯¥æŽ§ä»¶ä¼šæ”¶åˆ°" +"键盘信å·ã€‚" #: doc/classes/Control.xml msgid "" @@ -20740,7 +20811,7 @@ msgstr "" msgid "" "The size of the node's bounding rectangle, in pixels. [Container] nodes " "update this property automatically." -msgstr "节点边界矩形的大å°ï¼Œä»¥åƒç´ 为å•ä½ã€‚[Container]节点会自动更新æ¤å±žæ€§ã€‚" +msgstr "节点边界矩形的大å°ï¼Œä»¥åƒç´ 为å•ä½ã€‚[Container] 节点会自动更新æ¤å±žæ€§ã€‚" #: doc/classes/Control.xml msgid "" @@ -20907,11 +20978,11 @@ msgstr "当节点更改大å°æ—¶å‘é€ã€‚使用 [member rect_size] 获å–新大å #: doc/classes/Control.xml msgid "Sent when the mouse pointer enters the node." -msgstr "å½“é¼ æ ‡æŒ‡é’ˆè¿›å…¥èŠ‚ç‚¹æ—¶å‘é€ã€‚" +msgstr "å½“é¼ æ ‡æŒ‡é’ˆè¿›å…¥è¯¥èŠ‚ç‚¹æ—¶å‘é€ã€‚" #: doc/classes/Control.xml msgid "Sent when the mouse pointer exits the node." -msgstr "å½“é¼ æ ‡æŒ‡é’ˆé€€å‡ºèŠ‚ç‚¹æ—¶å‘é€ã€‚" +msgstr "å½“é¼ æ ‡æŒ‡é’ˆé€€å‡ºè¯¥èŠ‚ç‚¹æ—¶å‘é€ã€‚" #: doc/classes/Control.xml msgid "Sent when the node grabs focus." @@ -20927,8 +20998,8 @@ msgid "" "control. Happens when you call one of the [code]add_*_override[/code] " "methods." msgstr "" -"当节点的 [member theme] 改å˜æ—¶ï¼Œå°±åœ¨Godoté‡ç»˜æŽ§ä»¶ä¹‹å‰å‘é€ã€‚å½“ä½ è°ƒç”¨" -"[code]add_*_override[/code]方法之一时å‘生。" +"当节点的 [member theme] 改å˜æ—¶ï¼Œå°±åœ¨ Godot é‡ç»˜æŽ§ä»¶ä¹‹å‰å‘é€ã€‚å½“ä½ è°ƒç”¨ " +"[code]add_*_override[/code] 方法之一时å‘生。" #: doc/classes/Control.xml msgid "Sent when an open modal dialog closes. See [method show_modal]." @@ -20960,8 +21031,8 @@ msgid "" "beam pointer has a shape similar to \"I\". It tells the user they can " "highlight or insert text." msgstr "" -"当用户将节点悬åœæ—¶ï¼Œæ˜¾ç¤ºç³»ç»Ÿçš„Iåž‹å…‰æŸé¼ æ ‡å…‰æ ‡ã€‚å·¥å—æ¢æŒ‡é’ˆçš„形状类似于“Iâ€ã€‚它" -"告诉用户他们å¯ä»¥çªå‡ºæ˜¾ç¤ºæˆ–æ’入文本。" +"当用户将节点悬åœæ—¶ï¼Œæ˜¾ç¤ºç³»ç»Ÿçš„ I åž‹å…‰æŸé¼ æ ‡å…‰æ ‡ã€‚å·¥å—æ¢æŒ‡é’ˆçš„形状类似于“Iâ€ã€‚" +"它告诉用户他们å¯ä»¥çªå‡ºæ˜¾ç¤ºæˆ–æ’入文本。" #: doc/classes/Control.xml msgid "" @@ -21000,7 +21071,7 @@ msgid "" "grabbing, like a node in the Scene dock." msgstr "" "当用户悬åœèŠ‚点时,显示系统的è½åœ°é¼ æ ‡å…‰æ ‡ã€‚å®ƒå¯ä»¥æ˜¯ä¸€ä¸ªå¼ 开的手。它告诉用户å¯" -"以放下一个他们当å‰æ£åœ¨æŠ“å–的物å“,比如场景dockä¸çš„一个节点。" +"以放下一个他们当å‰æ£åœ¨æŠ“å–的物å“,比如场景é¢æ¿ä¸çš„一个节点。" #: doc/classes/Control.xml msgid "" @@ -21053,8 +21124,8 @@ msgid "" "2 double-headed arrows at a 90 degree angle. It tells the user they can move " "a UI element freely." msgstr "" -"当用户将节点悬åœæ—¶ï¼Œæ˜¾ç¤ºç³»ç»Ÿçš„ç§»åŠ¨é¼ æ ‡å…‰æ ‡ã€‚å®ƒä»¥90度角显示2个åŒå‘ç®å¤´ã€‚它告诉" -"用户他们å¯ä»¥è‡ªç”±ç§»åŠ¨ UI å…ƒç´ ã€‚" +"当用户将节点悬åœæ—¶ï¼Œæ˜¾ç¤ºç³»ç»Ÿçš„ç§»åŠ¨é¼ æ ‡å…‰æ ‡ã€‚å®ƒä»¥ 90 度角显示 2 个åŒå‘ç®å¤´ã€‚它" +"告诉用户他们å¯ä»¥è‡ªç”±ç§»åŠ¨ UI å…ƒç´ ã€‚" #: doc/classes/Control.xml msgid "" @@ -21240,8 +21311,8 @@ msgid "" "the available space without pushing any other node. Use with [member " "size_flags_horizontal] and [member size_flags_vertical]." msgstr "" -"告诉父[Container]扩展æ¤èŠ‚点的边界,以在ä¸æŽ¨å…¶ä»–节点的情况下填充所有å¯ç”¨ç©ºé—´ã€‚" -"使用[member size_flags_horizontal]å’Œ[member size_flags_vertical]。" +"告诉父 [Container] 扩展æ¤èŠ‚点的边界,以在ä¸æŽ¨å…¶ä»–节点的情况下填充所有å¯ç”¨ç©º" +"间。用于 [member size_flags_horizontal] å’Œ [member size_flags_vertical]。" #: doc/classes/Control.xml msgid "" @@ -21251,17 +21322,17 @@ msgid "" "size_flags_stretch_ratio]. Use with [member size_flags_horizontal] and " "[member size_flags_vertical]." msgstr "" -"告诉父级[Container]让该节点å ç”¨æ‚¨æ ‡è®°çš„è½´ä¸Šçš„æ‰€æœ‰å¯ç”¨ç©ºé—´ã€‚如果将多个相邻节点" -"è®¾ç½®ä¸ºæ‰©å±•ï¼Œå®ƒä»¬å°†æ ¹æ®å…¶æ‹‰ä¼¸æ¯”共享空间。å‚阅[member " -"size_flags_stretch_ratio]。与[member size_flags_horizontal]å’Œ[member " -"size_flags_vertical]一起使用。" +"告诉父级 [Container] 让该节点å ç”¨æ‚¨æ ‡è®°çš„è½´ä¸Šçš„æ‰€æœ‰å¯ç”¨ç©ºé—´ã€‚如果将多个相邻节" +"ç‚¹è®¾ç½®ä¸ºæ‰©å±•ï¼Œå®ƒä»¬å°†æ ¹æ®å…¶æ‹‰ä¼¸æ¯”å…±äº«ç©ºé—´ã€‚è§ [member " +"size_flags_stretch_ratio]。用于 [member size_flags_horizontal] å’Œ [member " +"size_flags_vertical]。" #: doc/classes/Control.xml msgid "" "Sets the node's size flags to both fill and expand. See the 2 constants " "above for more information." msgstr "" -"将节点的大å°æ ‡å¿—设置为åŒæ—¶å¡«å……和扩展。有关更多信æ¯ï¼Œè¯·å‚阅上é¢çš„2个常é‡ã€‚" +"将节点的大å°æ ‡å¿—设置为åŒæ—¶å¡«å……和扩展。有关更多信æ¯ï¼Œè¯·å‚阅上é¢çš„ 2 个常é‡ã€‚" #: doc/classes/Control.xml msgid "" @@ -21271,8 +21342,8 @@ msgid "" "size_flags_vertical]." msgstr "" "告诉父级 [Container] 使节点本身居ä¸ã€‚它基于控件的包围框居ä¸ï¼Œå› æ¤å®ƒä¸é€‚用于 " -"fill 或 expand å°ºå¯¸æ ‡å¿—ã€‚ä¸Ž [member size_flags_horizontal] å’Œ [member " -"size_flags_vertical] 一起使用。" +"fill 或 expand å°ºå¯¸æ ‡å¿—ã€‚ç”¨äºŽ [member size_flags_horizontal] å’Œ [member " +"size_flags_vertical]。" #: doc/classes/Control.xml msgid "" @@ -21282,8 +21353,8 @@ msgid "" "size_flags_vertical]." msgstr "" "告诉父级 [Container] 将节点与其末端(底部或å³ä¾§ï¼‰å¯¹é½ã€‚它ä¸é€‚用于 fill 或 " -"expand size æ ‡å¿—ã€‚ä¸Ž [member size_flags_horizontal] å’Œ [member " -"size_flags_vertical] 一起使用。" +"expand size æ ‡å¿—ã€‚ç”¨äºŽ [member size_flags_horizontal] å’Œ [member " +"size_flags_vertical]。" #: doc/classes/Control.xml msgid "" @@ -21440,7 +21511,8 @@ msgid "" "and doesn't need to be configured by the user." msgstr "" "基于 CPU çš„ 3D ç²’å节点,用于创建å„ç§ç²’å系统和效果。\n" -"å‚阅 [Particles]ï¼Œå®ƒæ˜¯ä»¥ç¡¬ä»¶åŠ é€Ÿæ供相åŒçš„功能,但å¯èƒ½æ— 法在旧设备上è¿è¡Œã€‚\n" +"å¦è¯·å‚阅 [Particles]ï¼Œå®ƒæ˜¯ä»¥ç¡¬ä»¶åŠ é€Ÿæ供相åŒçš„功能,但å¯èƒ½æ— 法在旧设备上è¿" +"行。\n" "[b]注æ„:[/b]与 [Particles] ä¸åŒï¼Œå…¶å¯è§æ€§çŸ©å½¢æ˜¯å³æ—¶ç”Ÿæˆçš„,ä¸éœ€è¦ç”¨æˆ·é…置。" #: doc/classes/CPUParticles.xml @@ -21703,7 +21775,7 @@ msgstr "" #: doc/classes/CPUParticles.xml doc/classes/CPUParticles2D.xml #: doc/classes/ParticlesMaterial.xml msgid "Align Y axis of particle with the direction of its velocity." -msgstr "将粒åçš„Y轴与其速度方å‘对é½ã€‚" +msgstr "将粒åçš„ Y 轴与其速度方å‘对é½ã€‚" #: doc/classes/CPUParticles.xml doc/classes/ParticlesMaterial.xml msgid "If [code]true[/code], particles will not move on the z axis." @@ -24007,6 +24079,14 @@ msgid "Cylinder shape for collisions." msgstr "碰撞用的圆柱体形状。" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "圆柱体的高度。" @@ -25459,7 +25539,7 @@ msgstr "AssetLib 选项å¡ã€‚如果ç¦ç”¨æ¤åŠŸèƒ½ï¼Œåˆ™ä¸ä¼šæ˜¾ç¤º AssetLib é€ msgid "" "Scene tree editing. If this feature is disabled, the Scene tree dock will " "still be visible but will be read-only." -msgstr "åœºæ™¯æ ‘ç¼–è¾‘ã€‚å¦‚æžœç¦ç”¨æ¤åŠŸèƒ½ï¼Œåœºæ™¯æ ‘åœé 点ä»å°†å¯è§ï¼Œä½†å°†æ˜¯åªè¯»çš„。" +msgstr "åœºæ™¯æ ‘ç¼–è¾‘ã€‚å¦‚æžœç¦ç”¨æ¤åŠŸèƒ½ï¼Œåœºæ™¯æ ‘é¢æ¿ä»å°†å¯è§ï¼Œä½†å°†æ˜¯åªè¯»çš„。" #: doc/classes/EditorFeatureProfile.xml msgid "" @@ -26049,7 +26129,7 @@ msgstr "" #: doc/classes/EditorInspector.xml msgid "A control used to edit properties of an object." -msgstr "用于编辑所选节点属性的控件。" +msgstr "用于编辑对象属性的控件。" #: doc/classes/EditorInspector.xml msgid "" @@ -26654,9 +26734,9 @@ msgid "" "custom gizmos to the 3D preview viewport for a [Spatial].\n" "See [method add_inspector_plugin] for an example of how to register a plugin." msgstr "" -"注册一个新的空间辅助器æ’件 [EditorSpatialGizmoPlugin]。Gizmoæ’件用于为 " -"[Spatial] çš„ 3Dé¢„è§ˆè§†çª—æ·»åŠ è‡ªå®šä¹‰çš„ gizmos。\n" -"å‚è§ [method add_inspector_plugin] 以了解如何注册一个æ’件的例å。" +"注册一个新的 [EditorSpatialGizmoPlugin]。å°å·¥å…·æ’件å¯ä»¥åœ¨ 3D 预览视区ä¸ä¸º " +"[Spatial] æ·»åŠ è‡ªå®šä¹‰çš„å°å·¥å…·ã€‚\n" +"注册æ’ä»¶çš„ç¤ºä¾‹è§ [method add_inspector_plugin]。" #: doc/classes/EditorPlugin.xml msgid "" @@ -27143,7 +27223,7 @@ msgstr "åˆ é™¤ç”± [method add_scene_import_plugin] 注册的场景导入器。" #: doc/classes/EditorPlugin.xml msgid "Removes a gizmo plugin registered by [method add_spatial_gizmo_plugin]." -msgstr "åˆ é™¤ç”± [method add_spatial_gizmo_plugin] 注册的控制器æ’件。" +msgstr "åˆ é™¤ç”± [method add_spatial_gizmo_plugin] 注册的å°å·¥å…·æ’件。" #: doc/classes/EditorPlugin.xml msgid "Removes a menu [code]name[/code] from [b]Project > Tools[/b]." @@ -27810,6 +27890,7 @@ msgid "Base script that can be used to add extension functions to the editor." msgstr "å¯ç”¨äºŽä¸ºç¼–è¾‘å™¨æ·»åŠ æ‰©å±•åŠŸèƒ½çš„åŸºç¡€è„šæœ¬ã€‚" #: doc/classes/EditorScript.xml +#, fuzzy msgid "" "Scripts extending this class and implementing its [method _run] method can " "be executed from the Script Editor's [b]File > Run[/b] menu option (or by " @@ -27827,7 +27908,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" "扩展该类并实现其 [method _run] 方法的脚本å¯ä»¥åœ¨ç¼–辑器è¿è¡Œæ—¶é€šè¿‡è„šæœ¬ç¼–辑器的" "[b]文件 > è¿è¡Œ[/b]èœå•é€‰é¡¹ï¼ˆæˆ–按 [code]Ctrl+Shift+X[/code]ï¼‰æ‰§è¡Œã€‚è¿™å¯¹äºŽå‘ " @@ -28165,7 +28249,7 @@ msgstr "" #: doc/classes/EditorSpatialGizmo.xml msgid "Custom gizmo for editing Spatial objects." -msgstr "用于编辑空间对象的自定义å°å·¥å…·ã€‚" +msgstr "用于编辑 Spatial 对象的自定义å°å·¥å…·ã€‚" #: doc/classes/EditorSpatialGizmo.xml msgid "" @@ -28181,7 +28265,7 @@ msgid "" "Adds the specified [code]segments[/code] to the gizmo's collision shape for " "picking. Call this function during [method redraw]." msgstr "" -"将指定的 [code]segments[/code] æ·»åŠ åˆ° gizmo 的碰撞形状ä¸ï¼Œä»¥ä¾¿æŒ‘选。在 " +"将指定的线段 [code]segments[/code] æ·»åŠ åˆ°å°å·¥å…·çš„碰撞形状ä¸ï¼Œç”¨äºŽç‚¹é€‰ã€‚请在 " "[method redraw] 时调用æ¤å‡½æ•°ã€‚" #: doc/classes/EditorSpatialGizmo.xml @@ -28190,8 +28274,8 @@ msgid "" "generated from a regular [Mesh] too. Call this function during [method " "redraw]." msgstr "" -"å°†ç¢°æ’žä¸‰è§’å½¢æ·»åŠ åˆ°å°å·¥å…·ä¸ï¼Œä¾›æŒ‘选。也å¯ä»¥ä»Žæ™®é€šçš„ [Mesh] ç”Ÿæˆ " -"[TriangleMesh]。在 [method redraw] 时调用æ¤å‡½æ•°ã€‚" +"å°†ç¢°æ’žä¸‰è§’å½¢æ·»åŠ åˆ°å°å·¥å…·ä¸ï¼Œç”¨äºŽç‚¹é€‰ã€‚也å¯ä»¥ä»Žæ™®é€šçš„ [Mesh] ç”Ÿæˆ " +"[TriangleMesh]。请在 [method redraw] 时调用æ¤å‡½æ•°ã€‚" #: doc/classes/EditorSpatialGizmo.xml msgid "" @@ -28200,8 +28284,8 @@ msgid "" "There are virtual functions which will be called upon editing of these " "handles. Call this function during [method redraw]." msgstr "" -"æ·»åŠ ä¸€ä¸ªå¥æŸ„(点)列表,å¯ä»¥ç”¨æ¥å¯¹ç¼–辑的对象进行å˜å½¢ã€‚\n" -"有一些虚函数将在编辑这些å¥æŸ„时被调用。在 [method redraw]时调用这个函数。" +"æ·»åŠ åˆ—è¡¨ä¸çš„手柄(点),å¯ä»¥ç”¨æ¥å¯¹ç¼–辑的对象进行å˜å½¢ã€‚\n" +"编辑这些手柄时会调用一些虚函数。请在 [method redraw] 时调用这个函数。" #: doc/classes/EditorSpatialGizmo.xml msgid "" @@ -28209,8 +28293,8 @@ msgid "" "lines are used for visualizing the gizmo. Call this function during [method " "redraw]." msgstr "" -"用给定的æ质在å°å·¥å…·ä¸Šæ·»åŠ 线æ¡åˆ° gizmo(作为 2 个点的集åˆï¼‰ã€‚线æ¡ç”¨äºŽå¯è§†åŒ– " -"gizmo。在 [method redraw] 时调用æ¤å‡½æ•°ã€‚" +"在å°å·¥å…·ä¸Šæ·»åŠ 使用给定æ质的线æ¡ï¼ˆå½¢å¼ä¸º 2 个点的集åˆï¼‰ã€‚线æ¡å°†ç”¨äºŽæ˜¾ç¤ºå°å·¥" +"具。请在 [method redraw] 时调用æ¤å‡½æ•°ã€‚" #: doc/classes/EditorSpatialGizmo.xml msgid "" @@ -28219,10 +28303,10 @@ msgid "" "is [code]true[/code], the mesh will rotate to always face the camera. Call " "this function during [method redraw]." msgstr "" -"以指定的 [code]billboard[/code] 状æ€ã€[code]skeleton[/code] å’Œ " -"[code]materia[/code] æ·»åŠ ç½‘æ ¼åˆ°å°å·¥å…·ã€‚如果 [code]billboard[/code] 为 " -"[code]true[/code]ï¼Œåˆ™ç½‘æ ¼å°†æ—‹è½¬ä¸ºå§‹ç»ˆé¢å‘相机。在 [method redraw] 时调用æ¤å‡½" -"数。" +"在å°å·¥å…·ä¸Šæ·»åŠ æŒ‡å®šçš„ç½‘æ ¼ï¼Œç½‘æ ¼ä½¿ç”¨çš„æ˜¯æŒ‡å®šçš„ [code]billboard[/code] 状æ€ã€" +"[code]skeleton[/code] å’Œ [code]materia[/code]。如果 [code]billboard[/code] " +"为 [code]true[/code]ï¼Œåˆ™ç½‘æ ¼å°†æ—‹è½¬ä¸ºå§‹ç»ˆé¢å‘相机。请在 [method redraw] 时调用" +"æ¤å‡½æ•°ã€‚" #: doc/classes/EditorSpatialGizmo.xml msgid "" @@ -28233,7 +28317,7 @@ msgstr "æ·»åŠ ä¸€ä¸ªæœªç¼©æ”¾çš„å¹¿å‘Šç‰Œä»¥å®žçŽ°å¯è§†åŒ–。在 [method redraw #: doc/classes/EditorSpatialGizmo.xml msgid "" "Removes everything in the gizmo including meshes, collisions and handles." -msgstr "移除å°å·¥å…·ä¸çš„ä¸€åˆ‡ï¼ŒåŒ…æ‹¬ç½‘æ ¼ã€ç¢°æ’žå’Œå¥æŸ„。" +msgstr "移除å°å·¥å…·ä¸çš„ä¸€åˆ‡ï¼ŒåŒ…æ‹¬ç½‘æ ¼ã€ç¢°æ’žå’Œæ‰‹æŸ„。" #: doc/classes/EditorSpatialGizmo.xml msgid "" @@ -28242,9 +28326,9 @@ msgid "" "If the [code]cancel[/code] parameter is [code]true[/code], an option to " "restore the edited value to the original is provided." msgstr "" -"æ交一个æ£åœ¨ç¼–辑的å¥æŸ„(å¥æŸ„必须是之å‰é€šè¿‡[method add_handles]æ·»åŠ çš„ï¼‰ã€‚\n" -"如果[code]cancel[/code]å‚数是[code]true[/code],则æ供了一个将编辑åŽçš„值æ¢å¤" -"到原始值的选项。" +"æ交æ£åœ¨ç¼–辑的手柄(手柄必须是之å‰é€šè¿‡ [method add_handles] æ·»åŠ çš„ï¼‰ã€‚\n" +"如果 [code]cancel[/code] å‚数为 [code]true[/code],则会æ供一个将编辑åŽçš„值æ¢" +"å¤åˆ°åŽŸå§‹å€¼çš„选项。" #: doc/classes/EditorSpatialGizmo.xml msgid "" @@ -28252,16 +28336,16 @@ msgid "" "by [method add_handles]).\n" "Handles can be named for reference to the user when editing." msgstr "" -"获å–已编辑的å¥æŸ„çš„å称(å¥æŸ„必须是之å‰é€šè¿‡[method add_handles]æ·»åŠ çš„ï¼‰ã€‚\n" -"å¥æŸ„çš„å称å¯ä»¥åœ¨ç¼–辑时被命å作为用户å‚考。" +"获å–编辑的手柄的å称(手柄必须是之å‰é€šè¿‡ [method add_handles] æ·»åŠ çš„ï¼‰ã€‚\n" +"手柄的å称å¯ä»¥åœ¨ç¼–辑时被命å作为用户å‚考。" #: doc/classes/EditorSpatialGizmo.xml msgid "" "Gets actual value of a handle. This value can be anything and used for " "eventually undoing the motion when calling [method commit_handle]." msgstr "" -"获å–一个å¥æŸ„的实际值,这个值å¯ä»¥æ˜¯ä»»ä½•ä¸œè¥¿ï¼Œç”¨äºŽåœ¨è°ƒç”¨[method commit_handle]" -"时最终撤销动作。这个值å¯ä»¥æ˜¯ä»»ä½•ä¸œè¥¿ï¼Œç”¨äºŽåœ¨è°ƒç”¨[method commit_handle]时最终" +"获å–手柄的实际值。这个值å¯ä»¥æ˜¯ä»»ä½•ä¸œè¥¿ï¼Œç”¨äºŽåœ¨è°ƒç”¨ [method commit_handle] æ—¶" +"最终撤销动作。这个值å¯ä»¥æ˜¯ä»»ä½•ä¸œè¥¿ï¼Œç”¨äºŽåœ¨è°ƒç”¨ [method commit_handle] 时最终" "撤销动作。" #: doc/classes/EditorSpatialGizmo.xml @@ -28281,15 +28365,16 @@ msgid "" "Returns [code]true[/code] if the handle at index [code]index[/code] is " "highlighted by being hovered with the mouse." msgstr "" -"å¦‚æžœé¼ æ ‡æ‚¬åœç´¢å¼•ä¸º [code]index[/code] çš„å¥æŸ„高亮,则返回 [code]true[/code]。" +"å¦‚æžœé¼ æ ‡æ‚¬åœåœ¨ç´¢å¼•ä¸º [code]index[/code] 的手柄上使之高亮,则返回 [code]true[/" +"code]。" #: doc/classes/EditorSpatialGizmo.xml msgid "" "This function is called when the [Spatial] this gizmo refers to changes (the " "[method Spatial.update_gizmo] is called)." msgstr "" -"当这个工具所指 [Spatial] çš„å˜åŒ–时([method Spatial.update_gizmo] 函数被调" -"用)。" +"这个å°å·¥å…·æ‰€å¼•ç”¨çš„ [Spatial] å‘生å˜åŒ–时([method Spatial.update_gizmo] 函数被" +"调用)会调用这个函数。" #: doc/classes/EditorSpatialGizmo.xml msgid "" @@ -28298,8 +28383,8 @@ msgid "" "The [Camera] is also provided so screen coordinates can be converted to " "raycasts." msgstr "" -"当用户在å±å¹•åæ ‡ä¸æ‹–动一个 gizmo 工具手柄时(之å‰ç”¨ [method add_handles] æ·»åŠ " -"的),就会使用这个函数。\n" +"当用户在å±å¹•åæ ‡ä¸æ‹–动å°å·¥å…·æ‰‹æŸ„时(之å‰ç”¨ [method add_handles] æ·»åŠ ï¼‰ï¼Œå°±ä¼š" +"使用这个函数。\n" "还æ供了相机 [Camera],以便将å±å¹•åæ ‡è½¬æ¢ä¸ºå°„线投影。" #: doc/classes/EditorSpatialGizmo.xml @@ -28307,18 +28392,19 @@ msgid "" "Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be " "hidden. If [code]false[/code], it will be shown." msgstr "" -"设置工具的éšè—状æ€ã€‚如果为 [code]true[/code],则å°æŽ§ä»¶å°†è¢«éšè—。如果为 " -"[code]false[/code],将显示它。" +"设置该å°å·¥å…·çš„éšè—状æ€ã€‚如果为 [code]true[/code],则该å°å·¥å…·å°†è¢«éšè—。如果为 " +"[code]false[/code] 则会显示。" #: doc/classes/EditorSpatialGizmo.xml msgid "" "Sets the reference [Spatial] node for the gizmo. [code]node[/code] must " "inherit from [Spatial]." -msgstr "设置工具的å‚考 [Spatial] 节点。[code]node[/code]必须继承自 [Spatial]。" +msgstr "" +"设置该å°å·¥å…·æ‰€å¼•ç”¨çš„ [Spatial] 节点。[code]node[/code]必须继承自 [Spatial]。" #: doc/classes/EditorSpatialGizmoPlugin.xml msgid "Used by the editor to define Spatial gizmo types." -msgstr "由编辑部用于定义空间å°å·¥å…·çš„类型。" +msgstr "由编辑部用于定义 Spatial å°å·¥å…·çš„类型。" #: doc/classes/EditorSpatialGizmoPlugin.xml msgid "" @@ -28329,8 +28415,8 @@ msgid "" "To use [EditorSpatialGizmoPlugin], register it using the [method " "EditorPlugin.add_spatial_gizmo_plugin] method first." msgstr "" -"[EditorSpatialGizmoPlugin] å¯ç”¨äºŽå®šä¹‰æ–°çš„æŽ§åˆ¶å™¨ç±»åž‹ã€‚è¿™æ ·åšçš„主è¦æ–¹æ³•æœ‰ä¸¤ç§ï¼š" -"比较简å•çš„控制器å¯ä»¥æ‰©å±• [EditorSpatialGizmoPlugin],或者å¯ä»¥åˆ›å»ºæ–°çš„ " +"[EditorSpatialGizmoPlugin] å¯ç”¨äºŽå®šä¹‰æ–°çš„å°å·¥å…·ç±»åž‹ã€‚è¿™æ ·åšçš„主è¦æ–¹æ³•æœ‰ä¸¤ç§ï¼š" +"比较简å•çš„å°å·¥å…·å¯ä»¥æ‰©å±• [EditorSpatialGizmoPlugin],或者å¯ä»¥åˆ›å»ºæ–°çš„ " "[EditorSpatialGizmo] 类型。有关更多信æ¯ï¼Œè¯·å‚阅文档ä¸çš„教程。\n" "è¦ä½¿ç”¨ [EditorSpatialGizmoPlugin],请先用 [method EditorPlugin." "add_spatial_gizmo_plugin] 注册。" @@ -28348,13 +28434,13 @@ msgid "" "Override this method to define whether the gizmo can be hidden or not. " "Returns [code]true[/code] if not overridden." msgstr "" -"é‡å†™æ¤æ–¹æ³•ä»¥å®šä¹‰æ˜¯å¦å¯ä»¥éšè— Gizmo。如果未覆盖,则返回 [code]true[/code]。" +"é‡å†™æ¤æ–¹æ³•ä»¥å®šä¹‰æ˜¯å¦å¯ä»¥éšè—该å°å·¥å…·ã€‚如果未覆盖,则返回 [code]true[/code]。" #: doc/classes/EditorSpatialGizmoPlugin.xml msgid "" "Override this method to commit gizmo handles. Called for this plugin's " "active gizmos." -msgstr "é‡å†™æ¤æ–¹æ³•ä»¥æ交 Gizmo å¥æŸ„。调用æ¤æ’件的活动辅助工具。" +msgstr "é‡å†™æ¤æ–¹æ³•ä»¥æ交å°å·¥å…·æ‰‹æŸ„。会为这个æ’件的活动å°å·¥å…·è¿›è¡Œè°ƒç”¨ã€‚" #: doc/classes/EditorSpatialGizmoPlugin.xml msgid "" @@ -28405,13 +28491,13 @@ msgstr "" msgid "" "Override this method to provide gizmo's handle names. Called for this " "plugin's active gizmos." -msgstr "é‡å†™æ¤æ–¹æ³•ä»¥æä¾› Gizmo çš„å¥æŸ„å称。调用æ¤æ’件的活动工具。" +msgstr "é‡å†™æ¤æ–¹æ³•ä»¥æä¾›å°å·¥å…·çš„手柄å称。会为这个æ’件的活动å°å·¥å…·è¿›è¡Œè°ƒç”¨ã€‚" #: doc/classes/EditorSpatialGizmoPlugin.xml msgid "" "Gets actual value of a handle from gizmo. Called for this plugin's active " "gizmos." -msgstr "从 Gizmo 获å–å¥æŸ„的实际值。调用æ¤æ’件的活动工具。" +msgstr "从å°å·¥å…·èŽ·å–手柄的实际值。会为这个æ’件的活动å°å·¥å…·è¿›è¡Œè°ƒç”¨ã€‚" #: doc/classes/EditorSpatialGizmoPlugin.xml msgid "" @@ -28426,7 +28512,7 @@ msgstr "" msgid "" "Override this method to provide the name that will appear in the gizmo " "visibility menu." -msgstr "é‡å†™æ¤æ–¹æ³•ä»¥æ供将出现在工具å¯è§æ€§èœå•ä¸çš„å称。" +msgstr "é‡å†™æ¤æ–¹æ³•ä»¥æ供将出现在å°å·¥å…·å¯è§æ€§èœå•ä¸çš„å称。" #: doc/classes/EditorSpatialGizmoPlugin.xml msgid "" @@ -28437,10 +28523,10 @@ msgid "" "overridden, this method will return [code]0[/code], which means custom " "gizmos will automatically override built-in gizmos." msgstr "" -"é‡å†™æ¤æ–¹æ³•å¯ä»¥è®¾ç½®å·¥å…·çš„优先级。值越高,优先级越高。如果具有较高优先级的工具" -"与å¦ä¸€ä¸ªå·¥å…·å‘生冲çªï¼Œåˆ™ä»…使用具有较高优先级的工具。\n" -"所有内置编辑器å°æŽ§ä»¶å‡è¿”回 [code]-1[/code]优先级。如果未é‡å†™ï¼Œåˆ™æ¤æ–¹æ³•å°†è¿”回 " -"[code]0[/code],这æ„味ç€è‡ªå®šä¹‰æŽ§ä»¶å°†è‡ªåŠ¨è¦†ç›–内置控件。" +"é‡å†™æ¤æ–¹æ³•å¯ä»¥è®¾ç½®å°å·¥å…·çš„优先级。值越高,优先级越高。如果具有较高优先级的å°" +"工具与å¦ä¸€ä¸ªå°å·¥å…·å‘生冲çªï¼Œåˆ™ä»…使用具有较高优先级的å°å·¥å…·ã€‚\n" +"所有内置编辑器å°å·¥å…·å‡è¿”回 [code]-1[/code] 优先级。如果未é‡å†™ï¼Œåˆ™æ¤æ–¹æ³•å°†è¿”" +"回 [code]0[/code],这æ„味ç€è‡ªå®šä¹‰æŽ§ä»¶å°†è‡ªåŠ¨è¦†ç›–内置å°å·¥å…·ã€‚" #: doc/classes/EditorSpatialGizmoPlugin.xml msgid "" @@ -28449,34 +28535,36 @@ msgid "" "if it returns [code]true[/code] the node gets a generic [EditorSpatialGizmo] " "assigned and is added to this plugin's list of active gizmos." msgstr "" -"覆盖这个方法æ¥å®šä¹‰å“ªäº›ç©ºé—´èŠ‚点有这个æ’件的 gizmo。æ¯å½“一个 [Spatial] 节点被添" -"åŠ åˆ°ä¸€ä¸ªåœºæ™¯ä¸æ—¶ï¼Œè¿™ä¸ªæ–¹æ³•å°±ä¼šè¢«è°ƒç”¨ï¼Œå¦‚果它返回 [code]true[/code],该节点就" -"会被分é…一个通用的 [EditorSpatialGizmo]ï¼Œå¹¶è¢«æ·»åŠ åˆ°è¿™ä¸ªæ’件的激活 Gizmos列表" -"ä¸ã€‚" +"覆盖这个方法æ¥å®šä¹‰å“ªäº› Spatial 节点有这个æ’件的å°å·¥å…·ã€‚æ¯å½“一个 [Spatial] 节" +"ç‚¹è¢«æ·»åŠ åˆ°ä¸€ä¸ªåœºæ™¯ä¸æ—¶ï¼Œè¿™ä¸ªæ–¹æ³•å°±ä¼šè¢«è°ƒç”¨ï¼Œå¦‚果它返回 [code]true[/code],该" +"节点就会被分é…一个通用的 [EditorSpatialGizmo]ï¼Œå¹¶è¢«æ·»åŠ åˆ°è¿™ä¸ªæ’件的激活å°å·¥å…·" +"列表ä¸ã€‚" #: doc/classes/EditorSpatialGizmoPlugin.xml msgid "" "Gets whether a handle is highlighted or not. Called for this plugin's active " "gizmos." -msgstr "获å–å¥æŸ„是å¦é«˜äº®æ˜¾ç¤ºã€‚调用æ¤æ’件的活动工具。" +msgstr "获å–手柄是å¦é«˜äº®æ˜¾ç¤ºã€‚会为这个æ’件的活动å°å·¥å…·è¿›è¡Œè°ƒç”¨ã€‚" #: doc/classes/EditorSpatialGizmoPlugin.xml msgid "" "Override this method to define whether a Spatial with this gizmo should be " "selectable even when the gizmo is hidden." -msgstr "覆盖æ¤æ–¹æ³•ï¼Œä»¥å®šä¹‰å…·æœ‰æ¤å·¥å…·çš„空间是å¦åº”该在工具被éšè—时也å¯ä»¥è¢«é€‰æ‹©ã€‚" +msgstr "" +"覆盖æ¤æ–¹æ³•ï¼Œä»¥å®šä¹‰å…·æœ‰æ¤å°å·¥å…·çš„ Spatial 是å¦åº”该在å°å·¥å…·è¢«éšè—时也å¯ä»¥è¢«é€‰" +"择。" #: doc/classes/EditorSpatialGizmoPlugin.xml msgid "" "Callback to redraw the provided gizmo. Called for this plugin's active " "gizmos." -msgstr "回调以é‡æ–°ç»˜åˆ¶æ供的工具。调用æ¤æ’件的活动工具。" +msgstr "用以é‡ç»˜ç»™å®šçš„å°å·¥å…·çš„回调。会为这个æ’件的活动å°å·¥å…·è¿›è¡Œè°ƒç”¨ã€‚" #: doc/classes/EditorSpatialGizmoPlugin.xml msgid "" "Update the value of a handle after it has been updated. Called for this " "plugin's active gizmos." -msgstr "æ›´æ–°å¥æŸ„åŽæ›´æ–°å…¶å€¼ã€‚调用æ¤æ’件的活动工具。" +msgstr "更新手柄åŽæ›´æ–°å…¶å€¼ã€‚会为这个æ’件的活动å°å·¥å…·è¿›è¡Œè°ƒç”¨ã€‚" #: doc/classes/EditorSpinSlider.xml msgid "Godot editor's control for editing numeric values." @@ -28902,8 +28990,8 @@ msgid "" "here.\n" "[/codeblock]" msgstr "" -"返回自引擎åˆå§‹åŒ–以æ¥çš„总帧数,在æ¯ä¸ª[b]空闲帧[/b]éƒ½ä¼šè¿›è¡Œï¼Œæ— è®ºæ¸²æŸ“å¾ªçŽ¯æ˜¯å¦è¢«" -"å¯ç”¨ã€‚å‚阅 [method get_frames_drawn] å’Œ [method get_physics_frames]。\n" +"返回自引擎åˆå§‹åŒ–以æ¥çš„æ€»å¸§æ•°ï¼Œæ— è®ºæ˜¯å¦å¯ç”¨æ¸²æŸ“循环,æ¯ä¸ª[b]空闲帧[/b]都会增" +"长。å¦è¯·å‚阅 [method get_frames_drawn] å’Œ [method get_physics_frames]。\n" "[method get_idle_frames] å¯ä»¥ç”¨æ¥å‡å°‘è¿è¡Œé«˜æ¶ˆè€—逻辑的次数,而ä¸éœ€è¦ä¾é " "[Timer]。\n" "[codeblock]\n" @@ -29143,14 +29231,14 @@ msgstr "" "ä¿¡æ¯å¯èƒ½ä¼šè¢«éšè—,å³ä½¿å®ƒä»¬æ˜¯ç”±å…¶ä»–脚本触å‘。如果在 [code]tool[/code] 脚本ä¸æŠŠ" "这个设置为 [code]false[/code],这也会影å“到编辑器本身。在确ä¿é”™è¯¯ä¿¡æ¯è¢«å¯ç”¨ä¹‹" "å‰ï¼Œ[i]请勿[/i]æŠ¥å‘Šé”™è¯¯ï¼ˆå› ä¸ºé»˜è®¤æƒ…å†µä¸‹æ˜¯ä¼šçš„ï¼‰ã€‚\n" -"[b]注æ„:[/b]当从编辑器è¿è¡Œä¸€ä¸ªé¡¹ç›®æ—¶ï¼Œè¿™ä¸ªå±žæ€§ä¸å½±å“编辑器的错误选项å¡ã€‚" +"[b]注æ„:[/b]从编辑器è¿è¡Œé¡¹ç›®æ—¶ï¼Œè¿™ä¸ªå±žæ€§ä¸å½±å“编辑器的错误选项å¡ã€‚" #: doc/classes/Engine.xml msgid "" "The desired frames per second. If the hardware cannot keep up, this setting " "may not be respected. A value of 0 means no limit." msgstr "" -"所需的æ¯ç§’å¸§æ•°ã€‚å¦‚æžœç¡¬ä»¶æ— æ³•è·Ÿä¸Šï¼Œåˆ™å¯èƒ½ä¸éµå®ˆæ¤è®¾ç½®ã€‚值为0表示没有é™åˆ¶ã€‚" +"所需的æ¯ç§’å¸§æ•°ã€‚å¦‚æžœç¡¬ä»¶æ— æ³•è·Ÿä¸Šï¼Œåˆ™å¯èƒ½ä¸éµå®ˆæ¤è®¾ç½®ã€‚值为 0 表示没有é™åˆ¶ã€‚" #: doc/classes/Engine.xml msgid "" @@ -29863,7 +29951,7 @@ msgid "" msgstr "" "使用自定义的é€æ˜Žé¢œè‰²æ¸…除背景,并å…许定义天空的阴影和å射。这ç§æ¨¡å¼æ¯” " "[constant BG_SKY] ç¨å¿«ï¼Œåº”是在å¯ä»¥çœ‹åˆ°å射,但天空本身ä¸å¯è§çš„场景ä¸çš„首选" -"(例如,自上而下的相机)。" +"(例如俯视角相机)。" #: doc/classes/Environment.xml msgid "Displays a [CanvasLayer] in the background." @@ -30830,7 +30918,7 @@ msgid "" "will change the window title to \"Open a File\")." msgstr "" "如果为 [code]true[/code],更改 [code]Mode[/code] 属性将相应地设置窗å£æ ‡é¢˜ï¼ˆä¾‹" -"如,将模å¼è®¾ç½®ä¸º [constant MODE_OPEN_FILE] 会将窗å£æ ‡é¢˜æ›´æ”¹ä¸ºâ€œæ‰“开文件â€ï¼‰ã€‚" +"如将模å¼è®¾ç½®ä¸º [constant MODE_OPEN_FILE] 会将窗å£æ ‡é¢˜æ›´æ”¹ä¸ºâ€œæ‰“开文件â€ï¼‰ã€‚" #: doc/classes/FileDialog.xml msgid "If [code]true[/code], the dialog will show hidden files." @@ -36983,7 +37071,7 @@ msgstr "原始纹ç†ï¼ˆåœ¨åŽ‹ç¼©å‰ï¼‰ä½¿ç”¨ sRGB 空间。" msgid "" "Source texture (before compression) is a normal texture (e.g. it can be " "compressed into two channels)." -msgstr "原始纹ç†ï¼ˆåœ¨åŽ‹ç¼©å‰ï¼‰æ˜¯æ³•çº¿çº¹ç†ï¼ˆä¾‹å¦‚,å¯ä»¥åŽ‹ç¼©ä¸ºä¸¤ä¸ªé€šé“)。" +msgstr "原始纹ç†ï¼ˆåœ¨åŽ‹ç¼©å‰ï¼‰æ˜¯æ³•çº¿çº¹ç†ï¼ˆä¾‹å¦‚å¯ä»¥åŽ‹ç¼©ä¸ºä¸¤ä¸ªé€šé“)。" #: doc/classes/Image.xml msgid "Source texture (before compression) is a [TextureLayered]." @@ -41441,11 +41529,14 @@ msgstr "" "如果为 [code]true[/code],则光线的效果会逆转,使区域å˜æš—并投射明亮的阴影。" #: doc/classes/Light.xml +#, fuzzy msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" "ç¯å…‰çš„大å°ï¼Œä½¿ç”¨ Godot çš„å•ä½ã€‚åªåœ¨çƒ˜ç„™çš„光照贴图ä¸è€ƒè™‘,并且åªåœ¨ [member " "light_bake_mode] 被设置为 [constant BAKE_ALL] æ—¶è€ƒè™‘ã€‚å¢žåŠ è¿™ä¸ªå€¼ä¼šä½¿é˜´å½±çœ‹èµ·" @@ -43128,8 +43219,8 @@ msgstr "" "点击åŽä¼šå¼¹å‡º [PopupMenu] 的特殊按钮。\n" "å¯ä»¥ä½¿ç”¨ [code]get_popup().add_item(\"èœå•é¡¹ç›®å称\")[/code] 在这个 " "[PopupMenu] ä¸åˆ›å»ºæ–°é¡¹ç›®ã€‚ä½ ä¹Ÿå¯ä»¥ç›´æŽ¥ä»Žç¼–辑器ä¸åˆ›å»ºå®ƒä»¬ã€‚è¦åšåˆ°è¿™ç‚¹ï¼Œé€‰æ‹© " -"[MenuButton] 节点,然åŽåœ¨ 2D 编辑器顶部的工具æ ä¸ï¼Œç‚¹å‡»[b]项目[/b],然åŽç‚¹å‡»" -"弹出窗å£ä¸çš„[b]æ·»åŠ [/b]ã€‚ä½ å°†èƒ½å¤Ÿèµ‹äºˆæ¯ä¸ªé¡¹ç›®æ–°çš„属性。\n" +"[MenuButton] 节点,然åŽåœ¨ 2D 编辑器顶部的工具æ ä¸ï¼Œç‚¹å‡»[b]列表项[/b],然åŽç‚¹" +"击弹出窗å£ä¸çš„[b]æ·»åŠ [/b]ã€‚ä½ å°†èƒ½å¤Ÿèµ‹äºˆæ¯ä¸ªé¡¹ç›®æ–°çš„属性。\n" "与该节点相关的常用属性和方法请å‚阅 [BaseButton]。" #: doc/classes/MenuButton.xml doc/classes/OptionButton.xml @@ -43286,23 +43377,23 @@ msgstr "" msgid "" "Returns all the vertices that make up the faces of the mesh. Each three " "vertices represent one triangle." -msgstr "è¿”å›žæ‰€æœ‰åœ¨è¿™ä¸ªç½‘æ ¼ä¸ï¼Œæž„æˆé¢çš„顶点。æ¯ä¸‰ä¸ªé¡¶ç‚¹ä»£è¡¨ä¸€ä¸ªä¸‰è§’形。" +msgstr "è¿”å›žç½‘æ ¼ä¸æ‰€æœ‰æž„æˆé¢çš„顶点。æ¯ä¸‰ä¸ªé¡¶ç‚¹ä»£è¡¨ä¸€ä¸ªä¸‰è§’形。" #: doc/classes/Mesh.xml msgid "Returns the amount of surfaces that the [Mesh] holds." -msgstr "è¿”å›žè¯¥ç½‘æ ¼çš„é¢æ•°ã€‚" +msgstr "返回该 [Mesh] ä¸è¡¨é¢çš„个数。" #: doc/classes/Mesh.xml msgid "" "Returns the arrays for the vertices, normals, uvs, etc. that make up the " "requested surface (see [method ArrayMesh.add_surface_from_arrays])." msgstr "" -"返回所有组æˆé¢æ‰€éœ€çš„东西构æˆçš„数组的数组,例如顶点,法å‘,UVç‰ã€‚(å‚阅" -"[method ArrayMesh.add_surface_from_arrays])。" +"返回构æˆè¯·æ±‚表é¢çš„顶点ã€æ³•çº¿ã€UV ç‰æ•°ç»„ã€‚ï¼ˆè§ [method ArrayMesh." +"add_surface_from_arrays])。" #: doc/classes/Mesh.xml msgid "Returns the blend shape arrays for the requested surface." -msgstr "返回所需é¢çš„æ··åˆå½¢çŠ¶æ•°ç»„。" +msgstr "返回请求表é¢çš„æ··åˆå½¢çŠ¶æ•°ç»„。" #: doc/classes/Mesh.xml msgid "" @@ -43326,31 +43417,31 @@ msgstr "" #: doc/classes/Mesh.xml msgid "Render array as points (one vertex equals one point)." -msgstr "将顶点数组渲染为点阵(一个顶点对应一个点阵ä¸çš„点)。" +msgstr "将数组渲染为点(一个顶点对应一个点)。" #: doc/classes/Mesh.xml msgid "Render array as lines (every two vertices a line is created)." -msgstr "将顶点组渲染为线æ¡ï¼ˆæ¯ä¸¤ä¸ªé¡¶ç‚¹ä¹‹é—´åˆ›å»ºä¸€æ¡è¿žçº¿ï¼‰ã€‚" +msgstr "将数组渲染为线(æ¯ä¸¤ä¸ªé¡¶ç‚¹åˆ›å»ºä¸€æ¡è¿žçº¿ï¼‰ã€‚" #: doc/classes/Mesh.xml msgid "Render array as line strip." -msgstr "将顶点组渲染为线æ¡ã€‚" +msgstr "将数组渲染为线æ¡ã€‚" #: doc/classes/Mesh.xml msgid "Render array as line loop (like line strip, but closed)." -msgstr "将数组渲染æˆçº¿çŠ¶çŽ¯ï¼ˆåƒçº¿æ¡ï¼Œä½†æ˜¯å°é—的)。" +msgstr "将数组渲染为线环(类似线æ¡ï¼Œä½†æ˜¯å°é—的)。" #: doc/classes/Mesh.xml msgid "Render array as triangles (every three vertices a triangle is created)." -msgstr "将顶点组渲染为三角形(æ¯ä¸‰ä¸ªç›¸é‚»é¡¶ç‚¹åˆ›å»ºä¸€ä¸ªä¸‰è§’形)。" +msgstr "将数组渲染为三角形(æ¯ä¸‰ä¸ªé¡¶ç‚¹åˆ›å»ºä¸€ä¸ªä¸‰è§’形)。" #: doc/classes/Mesh.xml msgid "Render array as triangle strips." -msgstr "将顶点组渲染为三角形线框。" +msgstr "将数组渲染为三角形æ¡ã€‚" #: doc/classes/Mesh.xml msgid "Render array as triangle fans." -msgstr "将数组渲染æˆä¸‰è§’形扇形。" +msgstr "将数组渲染为三角形扇。" #: doc/classes/Mesh.xml doc/classes/VisualServer.xml msgid "Blend shapes are normalized." @@ -43358,46 +43449,45 @@ msgstr "æ··åˆå½¢çŠ¶æ˜¯è¢«å½’一化了的。" #: doc/classes/Mesh.xml doc/classes/VisualServer.xml msgid "Blend shapes are relative to base weight." -msgstr "æ··åˆå½¢çŠ¶ç›¸å¯¹äºŽåŸºç¡€çš„æƒé‡ã€‚" +msgstr "æ··åˆå½¢çŠ¶æ˜¯ç›¸å¯¹äºŽåŸºç¡€çš„æƒé‡ã€‚" #: doc/classes/Mesh.xml msgid "" "Mesh array contains vertices. All meshes require a vertex array so this " "should always be present." -msgstr "" -"ç½‘æ ¼ç»„åŒ…å«è®¸å¤šé¡¶ç‚¹ã€‚æ¯ä¸€ä¸ªç½‘æ ¼éƒ½éœ€è¦ä¸€ä¸ªé¡¶ç‚¹æ•°ç»„,所以这应该æŒä¹…化储å˜ã€‚" +msgstr "ç½‘æ ¼æ•°ç»„åŒ…å«é¡¶ç‚¹ã€‚æ‰€æœ‰ç½‘æ ¼éƒ½éœ€è¦æœ‰é¡¶ç‚¹æ•°ç»„,所以这应该始终å˜åœ¨ã€‚" #: doc/classes/Mesh.xml msgid "Mesh array contains normals." -msgstr "ç½‘æ ¼ç»„åŒ…å«æ³•çº¿ã€‚" +msgstr "ç½‘æ ¼æ•°ç»„åŒ…å«æ³•çº¿ã€‚" #: doc/classes/Mesh.xml msgid "Mesh array contains tangents." -msgstr "ç½‘æ ¼ç»„åŒ…å«åˆ‡å‘。" +msgstr "ç½‘æ ¼æ•°ç»„åŒ…å«åˆ‡çº¿ã€‚" #: doc/classes/Mesh.xml msgid "Mesh array contains colors." -msgstr "ç½‘æ ¼ç»„åŒ…å«é¢œè‰²ã€‚" +msgstr "ç½‘æ ¼æ•°ç»„åŒ…å«é¢œè‰²ã€‚" #: doc/classes/Mesh.xml msgid "Mesh array contains UVs." -msgstr "ç½‘æ ¼ç»„åŒ…å« UV。" +msgstr "ç½‘æ ¼æ•°ç»„åŒ…å« UV。" #: doc/classes/Mesh.xml msgid "Mesh array contains second UV." -msgstr "ç½‘æ ¼ç»„åŒ…å«ç¬¬äºŒå¥— UV。" +msgstr "ç½‘æ ¼æ•°ç»„åŒ…å«ç¬¬äºŒå¥— UV。" #: doc/classes/Mesh.xml msgid "Mesh array contains bones." -msgstr "ç½‘æ ¼ç»„åŒ…å«éª¨éª¼ã€‚" +msgstr "ç½‘æ ¼æ•°ç»„åŒ…å«éª¨éª¼ã€‚" #: doc/classes/Mesh.xml msgid "Mesh array contains bone weights." -msgstr "ç½‘æ ¼ç»„åŒ…å«éª¨éª¼æƒé‡ã€‚" +msgstr "ç½‘æ ¼æ•°ç»„åŒ…å«éª¨éª¼æƒé‡ã€‚" #: doc/classes/Mesh.xml msgid "Mesh array uses indices." -msgstr "ç½‘æ ¼ç»„ä½¿ç”¨ç´¢å¼•ã€‚" +msgstr "ç½‘æ ¼æ•°ç»„ä½¿ç”¨ç´¢å¼•ã€‚" #: doc/classes/Mesh.xml msgid "" @@ -43411,11 +43501,11 @@ msgstr "ç”¨äºŽæ ‡è®°åŽ‹ç¼©ï¼ˆåŠç²¾åº¦æµ®ç‚¹ï¼‰é¡¶ç‚¹æ•°ç»„çš„æ ‡å¿—ã€‚" #: doc/classes/Mesh.xml doc/classes/VisualServer.xml msgid "Flag used to mark a compressed (half float) normal array." -msgstr "曾ç»ç”¨äºŽæ ‡è®°åŽ‹ç¼©ï¼ˆåŠç²¾åº¦æµ®ç‚¹ï¼‰æ³•å‘æ•°ç»„çš„æ ‡å¿—ã€‚" +msgstr "ç”¨äºŽæ ‡è®°åŽ‹ç¼©ï¼ˆåŠç²¾åº¦æµ®ç‚¹ï¼‰æ³•å‘æ•°ç»„çš„æ ‡å¿—ã€‚" #: doc/classes/Mesh.xml doc/classes/VisualServer.xml msgid "Flag used to mark a compressed (half float) tangent array." -msgstr "曾ç»ç”¨äºŽæ ‡è®°åŽ‹ç¼©ï¼ˆåŠç²¾åº¦æµ®ç‚¹ï¼‰åˆ‡å‘æ•°ç»„çš„æ ‡å¿—ã€‚" +msgstr "ç”¨äºŽæ ‡è®°åŽ‹ç¼©ï¼ˆåŠç²¾åº¦æµ®ç‚¹ï¼‰åˆ‡çº¿æ•°ç»„çš„æ ‡å¿—ã€‚" #: doc/classes/Mesh.xml msgid "" @@ -43424,16 +43514,19 @@ msgid "" "unsigned integers. This will clamp overbright colors to [code]Color(1, 1, 1, " "1)[/code] and reduce colors' precision." msgstr "" +"ç”¨äºŽæ ‡è®°åŽ‹ç¼©ï¼ˆåŠç²¾åº¦æµ®ç‚¹ï¼‰é¢œè‰²æ•°ç»„çš„æ ‡å¿—ã€‚\n" +"[b]注æ„:[/b]如果å¯ç”¨è¿™ä¸ªæ ‡å¿—,顶点颜色会作为 8 ä½æ— 符å·æ•´æ•°å˜å‚¨ã€‚这会导致过" +"亮颜色被钳制到 [code]Color(1, 1, 1, 1)[/code],é™ä½Žé¢œè‰²çš„精度。" #: doc/classes/Mesh.xml doc/classes/VisualServer.xml msgid "Flag used to mark a compressed (half float) UV coordinates array." -msgstr "æ›¾ç”¨äºŽæ ‡è®°åŽ‹ç¼©ï¼ˆåŠç²¾åº¦æµ®ç‚¹ï¼‰UV åæ ‡æ•°ç»„çš„æ ‡å¿—ã€‚" +msgstr "ç”¨äºŽæ ‡è®°åŽ‹ç¼©ï¼ˆåŠç²¾åº¦æµ®ç‚¹ï¼‰UV åæ ‡æ•°ç»„çš„æ ‡å¿—ã€‚" #: doc/classes/Mesh.xml doc/classes/VisualServer.xml msgid "" "Flag used to mark a compressed (half float) UV coordinates array for the " "second UV coordinates." -msgstr "æ›¾ç”¨äºŽæ ‡è®°ç¬¬äºŒå¥— UV åæ ‡çš„åŽ‹ç¼©ï¼ˆåŠç²¾åº¦æµ®ç‚¹ï¼‰UV åæ ‡æ•°ç»„çš„æ ‡å¿—ã€‚" +msgstr "ç”¨äºŽæ ‡è®°ç¬¬äºŒå¥— UV åæ ‡çš„åŽ‹ç¼©ï¼ˆåŠç²¾åº¦æµ®ç‚¹ï¼‰UV åæ ‡æ•°ç»„çš„æ ‡å¿—ã€‚" #: doc/classes/Mesh.xml doc/classes/VisualServer.xml msgid "Flag used to mark a compressed bone array." @@ -43445,11 +43538,11 @@ msgstr "ç”¨äºŽæ ‡è®°åŽ‹ç¼©ï¼ˆåŠç²¾åº¦æµ®ç‚¹ï¼‰æƒé‡æ•°ç»„çš„æ ‡å¿—ã€‚" #: doc/classes/Mesh.xml doc/classes/VisualServer.xml msgid "Flag used to mark a compressed index array." -msgstr "æ›¾ç”¨äºŽæ ‡è®°åŽ‹ç¼©ç´¢å¼•æ•°ç»„çš„æ ‡å¿—ã€‚" +msgstr "ç”¨äºŽæ ‡è®°åŽ‹ç¼©ç´¢å¼•æ•°ç»„çš„æ ‡å¿—ã€‚" #: doc/classes/Mesh.xml doc/classes/VisualServer.xml msgid "Flag used to mark that the array contains 2D vertices." -msgstr "æ›¾ç”¨äºŽæ ‡è®°åŒ…å« 2D é¡¶ç‚¹çš„æ•°ç»„çš„æ ‡å¿—ã€‚" +msgstr "ç”¨äºŽæ ‡è®°åŒ…å« 2D é¡¶ç‚¹çš„æ•°ç»„çš„æ ‡å¿—ã€‚" #: doc/classes/Mesh.xml doc/classes/VisualServer.xml msgid "Flag used to mark that the array uses 16-bit bones instead of 8-bit." @@ -43462,7 +43555,6 @@ msgid "" msgstr "æ ‡å¿—ç”¨äºŽæ ‡è®°æ•°ç»„ä½¿ç”¨æ³•çº¿å’Œåˆ‡çº¿å‘é‡çš„å…«é¢è¡¨ç¤ºæ³•ï¼Œè€Œä¸æ˜¯ç¬›å¡å°”å¼ã€‚" #: doc/classes/Mesh.xml -#, fuzzy msgid "" "Used to set flags [constant ARRAY_COMPRESS_VERTEX], [constant " "ARRAY_COMPRESS_NORMAL], [constant ARRAY_COMPRESS_TANGENT], [constant " @@ -43477,7 +43569,10 @@ msgstr "" "ARRAY_COMPRESS_NORMAL]ã€[constant ARRAY_COMPRESS_TANGENT]ã€[constant " "ARRAY_COMPRESS_COLOR]ã€[constant ARRAY_COMPRESS_TEX_UV]ã€[constant " "ARRAY_COMPRESS_TEX_UV2]ã€[constant ARRAY_COMPRESS_WEIGHTS]ã€[constant " -"ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION] 。" +"ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION] 。\n" +"[b]注æ„:[/b]å› ä¸ºè¿™ä¸ªæ ‡å¿—ä¼šå¯ç”¨ [constant ARRAY_COMPRESS_COLOR],所以顶点颜色" +"会作为 8 ä½æ— 符å·æ•´æ•°å˜å‚¨ã€‚这会导致过亮颜色被钳制到 [code]Color(1, 1, 1, 1)[/" +"code],é™ä½Žé¢œè‰²çš„精度。" #: doc/classes/Mesh.xml msgid "Array of vertices." @@ -43489,7 +43584,7 @@ msgstr "法线数组。" #: doc/classes/Mesh.xml msgid "Array of tangents as an array of floats, 4 floats per tangent." -msgstr "切å‘数组。æ¯ä¸€ä¸ªåˆ‡å‘æ•°æ®ç”±å››ä¸ª float å˜é‡æ述。" +msgstr "åˆ‡çº¿æ•°ç»„ï¼Œæ˜¯æµ®ç‚¹æ•°æ•°ç»„ï¼Œæ¯ 4 个浮点数表示一æ¡åˆ‡çº¿ã€‚" #: doc/classes/Mesh.xml msgid "Array of colors." @@ -43505,7 +43600,7 @@ msgstr "第二套 UV åæ ‡æ•°ç»„ã€‚" #: doc/classes/Mesh.xml msgid "Array of bone data." -msgstr "骨骼数æ®çš„数组。" +msgstr "骨骼数æ®æ•°ç»„。" #: doc/classes/Mesh.xml msgid "Array of weights." @@ -43517,7 +43612,7 @@ msgstr "索引数组。" #: doc/classes/MeshDataTool.xml msgid "Helper tool to access and edit [Mesh] data." -msgstr "用于帮助编辑和使用 [Mesh] ç½‘æ ¼æ•°æ®çš„工具。" +msgstr "用于访问和编辑 [Mesh] æ•°æ®çš„辅助工具。" #: doc/classes/MeshDataTool.xml msgid "" @@ -43587,7 +43682,7 @@ msgstr "å°†å½“å‰ MeshDataTool ä¸æ‰€æœ‰çš„æ•°æ®å…¨éƒ¨æ¸…除。" #: doc/classes/MeshDataTool.xml msgid "Adds a new surface to specified [Mesh] with edited data." -msgstr "使用编辑åŽçš„æ•°æ®ï¼Œå‘特定的[Mesh]ä¸æ·»åŠ 一个新的é¢ã€‚" +msgstr "使用编辑åŽçš„æ•°æ®ï¼Œå‘指定的 [Mesh] ä¸æ·»åŠ 一个新的表é¢ã€‚" #: doc/classes/MeshDataTool.xml msgid "" @@ -43595,11 +43690,11 @@ msgid "" "Requires [Mesh] with primitive type [constant Mesh.PRIMITIVE_TRIANGLES]." msgstr "" "使用给定 [Mesh] 的指定表é¢æ¥å¡«å…… MeshDataTool çš„æ•°æ®ã€‚\n" -"è¦æ±‚ [Mesh] 具有基本类型 [constant Mesh.PRIMITIVE_TRIANGLES]。" +"è¦æ±‚ [Mesh] 的图元类型为 [constant Mesh.PRIMITIVE_TRIANGLES]。" #: doc/classes/MeshDataTool.xml msgid "Returns the number of edges in this [Mesh]." -msgstr "返回这个[Mesh]的边数。" +msgstr "返回这个 [Mesh] 的边数。" #: doc/classes/MeshDataTool.xml msgid "Returns array of faces that touch given edge." @@ -43656,15 +43751,15 @@ msgid "" "ARRAY_FORMAT_NORMAL] is [code]2[/code].\n" "See [enum ArrayMesh.ArrayFormat] for a list of format flags." msgstr "" -"返回 [Mesh] çš„æ ¼å¼ï¼Œè¯¥æ ¼å¼æ˜¯ç”± [Mesh] æ ¼å¼æ ‡è¯†ç»„åˆè€Œæˆçš„整数。例如,一个åŒæ—¶" -"包å«é¡¶ç‚¹å’Œæ³•çº¿çš„ç½‘æ ¼å°†è¿”å›ž [code]3[/code]æ ¼å¼ï¼Œå› 为 [constant ArrayMesh." -"ARRAY_FORMAT_VERTEX] = [code]1[/code],[constant ArrayMesh." -"ARRAY_FORMAT_NORMAL] = [code]2[/code]。\n" -"å‚阅 [enum ArrayMesh.ArrayFormat] çš„æ ¼å¼æ ‡è¯†åˆ—表。" +"返回该 [Mesh] çš„æ ¼å¼ï¼Œè¯¥æ ¼å¼æ˜¯ç”± [Mesh] æ ¼å¼æ ‡è¯†ç»„åˆè€Œæˆçš„整数。例如,一个åŒ" +"时包å«é¡¶ç‚¹å’Œæ³•çº¿çš„ç½‘æ ¼è¿”å›žçš„æ ¼å¼æ˜¯ [code]3[/code]ï¼Œå› ä¸º [constant ArrayMesh." +"ARRAY_FORMAT_VERTEX] 是 [code]1[/code] 而 [constant ArrayMesh." +"ARRAY_FORMAT_NORMAL] 是 [code]2[/code]。\n" +"æ ¼å¼æ ‡å¿—åˆ—è¡¨è§ [enum ArrayMesh.ArrayFormat]。" #: doc/classes/MeshDataTool.xml msgid "Returns the material assigned to the [Mesh]." -msgstr "返回分é…ç»™ [Mesh] çš„æ质。" +msgstr "返回分é…给该 [Mesh] çš„æ质。" #: doc/classes/MeshDataTool.xml msgid "Returns the vertex at given index." @@ -43672,7 +43767,7 @@ msgstr "返回给定索引处的顶点。" #: doc/classes/MeshDataTool.xml msgid "Returns the bones of the given vertex." -msgstr "返回给定顶点的骨架。" +msgstr "返回给定顶点的骨骼。" #: doc/classes/MeshDataTool.xml msgid "Returns the color of the given vertex." @@ -43700,7 +43795,7 @@ msgstr "返回给定顶点的法线。" #: doc/classes/MeshDataTool.xml msgid "Returns the tangent of the given vertex." -msgstr "返回给定顶点的æ£åˆ‡å€¼ã€‚" +msgstr "返回给定顶点的切线。" #: doc/classes/MeshDataTool.xml msgid "Returns the UV of the given vertex." @@ -43732,7 +43827,7 @@ msgstr "设置给定顶点的ä½ç½®ã€‚" #: doc/classes/MeshDataTool.xml msgid "Sets the bones of the given vertex." -msgstr "设置给定顶点的骨架。" +msgstr "设置给定顶点的骨骼。" #: doc/classes/MeshDataTool.xml msgid "Sets the color of the given vertex." @@ -43805,7 +43900,7 @@ msgid "" "calculated from the mesh geometry. It's mainly used for testing." msgstr "" "这个辅助工具创建 [MeshInstance] å节点,在æ¯ä¸ªé¡¶ç‚¹éƒ½æœ‰æ ¹æ®ç½‘æ ¼å‡ ä½•å½¢çŠ¶è®¡ç®—çš„" -"辅助线框。其主è¦ç”¨äºŽæµ‹è¯•ã€‚" +"å°å·¥å…·ã€‚其主è¦ç”¨äºŽæµ‹è¯•ã€‚" #: doc/classes/MeshInstance.xml msgid "" @@ -43954,7 +44049,7 @@ msgstr "" #: doc/classes/MeshInstance2D.xml msgid "The [Mesh] that will be drawn by the [MeshInstance2D]." -msgstr "[Mesh] 将由 [MeshInstance2D] 绘制。" +msgstr "该 [MeshInstance2D] 绘制的 [Mesh]。" #: doc/classes/MeshInstance2D.xml doc/classes/MultiMeshInstance2D.xml msgid "" @@ -44009,15 +44104,15 @@ msgstr "" #: doc/classes/MeshLibrary.xml msgid "Returns the first item with the given name." -msgstr "返回第一个指定å称的 item。" +msgstr "返回第一个具有指定å称的项。" #: doc/classes/MeshLibrary.xml msgid "Returns the list of item IDs in use." -msgstr "返回æ£åœ¨ä½¿ç”¨çš„ item id 列表。" +msgstr "返回æ£åœ¨ä½¿ç”¨çš„项目 ID 列表。" #: doc/classes/MeshLibrary.xml msgid "Returns the item's mesh." -msgstr "返回该 item çš„ç½‘æ ¼æ¨¡åž‹ã€‚" +msgstr "è¿”å›žè¯¥é¡¹ç›®çš„ç½‘æ ¼ã€‚" #: doc/classes/MeshLibrary.xml msgid "Returns the transform applied to the item's mesh." @@ -44025,7 +44120,7 @@ msgstr "è¿”å›žåº”ç”¨åˆ°é¡¹ç›®ç½‘æ ¼çš„å˜æ¢ã€‚" #: doc/classes/MeshLibrary.xml msgid "Returns the item's name." -msgstr "返回项的å称。" +msgstr "返回该项的å称。" #: doc/classes/MeshLibrary.xml msgid "Returns the item's navigation mesh." @@ -44082,7 +44177,7 @@ msgstr "" #: doc/classes/MeshLibrary.xml msgid "Sets the item's navigation mesh." -msgstr "设置æ¤é¡¹çš„å¯¼èˆªç½‘æ ¼ã€‚" +msgstr "è®¾ç½®è¯¥é¡¹çš„å¯¼èˆªç½‘æ ¼ã€‚" #: doc/classes/MeshLibrary.xml msgid "Sets the transform to apply to the item's navigation mesh." @@ -44117,7 +44212,7 @@ msgstr "" #: doc/classes/MeshTexture.xml msgid "Sets the base texture that the Mesh will use to draw." -msgstr "è®¾ç½®ç½‘æ ¼ç”¨æ¥ç»˜åˆ¶çš„基础纹ç†ã€‚" +msgstr "设置该 Mesh 用æ¥ç»˜åˆ¶çš„基础纹ç†ã€‚" #: doc/classes/MeshTexture.xml msgid "Sets the size of the image, needed for reference." @@ -44211,7 +44306,7 @@ msgstr "显示器与设备内部镜片之间的è·ç¦»ï¼Œå•ä½ä¸ºåŽ˜ç±³ã€‚" #: modules/mobile_vr/doc_classes/MobileVRInterface.xml msgid "The width of the display in centimeters." -msgstr "显示器的宽度,以厘米为å•ä½ã€‚" +msgstr "显示器的宽度,å•ä½ä¸ºåŽ˜ç±³ã€‚" #: modules/mobile_vr/doc_classes/MobileVRInterface.xml msgid "" @@ -44244,7 +44339,7 @@ msgid "" "performance." msgstr "" "è¿‡é‡‡æ ·è®¾ç½®ã€‚ç”±äºŽé•œå¤´å¤±çœŸï¼Œæˆ‘ä»¬å¿…é¡»ä»¥æ¯”å±å¹•è‡ªç„¶åˆ†è¾¨çŽ‡æ›´é«˜çš„è´¨é‡æ¸²æŸ“我们的缓冲" -"区。介于1.5å’Œ2.0之间的值通常å¯ä»¥æ供良好的结果,但会牺牲性能。" +"区。介于 1.5 å’Œ 2.0 之间的值通常å¯ä»¥æ供良好的结果,但会牺牲性能。" #: doc/classes/MultiMesh.xml msgid "Provides high-performance mesh instancing." @@ -44281,7 +44376,7 @@ msgstr "" #: doc/classes/MultiMesh.xml msgid "Gets a specific instance's color." -msgstr "获å–一个特定实例的颜色。" +msgstr "获å–特定实例的颜色。" #: doc/classes/MultiMesh.xml msgid "Returns the custom data that has been set for a specific instance." @@ -44289,7 +44384,7 @@ msgstr "返回已ç»ä¸ºç‰¹å®šå®žä¾‹è®¾ç½®çš„自定义数æ®ã€‚" #: doc/classes/MultiMesh.xml msgid "Returns the [Transform] of a specific instance." -msgstr "返回一个特定实例的 [Transform]。" +msgstr "返回特定实例的 [Transform]。" #: doc/classes/MultiMesh.xml msgid "Returns the [Transform2D] of a specific instance." @@ -44423,7 +44518,7 @@ msgid "" "Limits the number of instances drawn, -1 draws all instances. Changing this " "does not change the sizes of the buffers." msgstr "" -"é™åˆ¶ç»˜åˆ¶çš„实例数é‡ï¼Œ-1会绘制所有的实例。改å˜è¿™ä¸€ç‚¹å¹¶ä¸æ”¹å˜ç¼“冲区的大å°ã€‚" +"é™åˆ¶ç»˜åˆ¶çš„实例数é‡ï¼Œ-1 会绘制所有的实例。改å˜è¿™ä¸€ç‚¹å¹¶ä¸æ”¹å˜ç¼“冲区的大å°ã€‚" #: doc/classes/MultiMesh.xml msgid "Use this when using 2D transforms." @@ -44501,7 +44596,7 @@ msgid "" msgstr "" "[MultiMeshInstance] 是特有的节点,用于基于 [MultiMesh] 资æºçš„ " "[GeometryInstance] 的实例。\n" -"è¿™å¯¹äºŽä¼˜åŒ–ç»™å®šç½‘æ ¼çš„å¤§é‡å®žä¾‹çš„渲染是éžå¸¸æœ‰ç”¨çš„(例如,森林ä¸çš„æ ‘æœ¨æˆ–è‰ä¸›ï¼‰ã€‚" +"è¿™å¯¹äºŽä¼˜åŒ–ç»™å®šç½‘æ ¼çš„å¤§é‡å®žä¾‹çš„渲染是éžå¸¸æœ‰ç”¨çš„(例如森林ä¸çš„æ ‘æœ¨æˆ–è‰ä¸›ï¼‰ã€‚" #: doc/classes/MultiMeshInstance.xml msgid "" @@ -45452,6 +45547,7 @@ msgid "3D agent used in navigation for collision avoidance." msgstr "在导航ä¸ç”¨äºŽé˜²æ’žçš„ 3D 代ç†ã€‚" #: doc/classes/NavigationAgent.xml +#, fuzzy msgid "" "3D agent that is used in navigation to reach a location while avoiding " "static and dynamic obstacles. The dynamic obstacles are avoided using RVO " @@ -45465,7 +45561,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" "导航ä¸ä½¿ç”¨çš„ 3D 代ç†ï¼Œå¯ä»¥åœ¨å‰å¾€æŸä¸ªä½ç½®æ—¶èº²é¿é™æ€å’ŒåŠ¨æ€éšœç¢ç‰©ã€‚躲é¿åŠ¨æ€éšœç¢" "物使用的是 RVO(Reciprocal Velocity Obstacles,相对速度障ç¢ç‰©ï¼‰é˜²æ’žç®—法。代ç†" @@ -45768,6 +45867,7 @@ msgid "2D agent used in navigation for collision avoidance." msgstr "在导航ä¸ç”¨äºŽé˜²æ’žçš„ 2D 代ç†ã€‚" #: doc/classes/NavigationAgent2D.xml +#, fuzzy msgid "" "2D agent that is used in navigation to reach a location while avoiding " "static and dynamic obstacles. The dynamic obstacles are avoided using RVO " @@ -45781,7 +45881,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" "导航ä¸ä½¿ç”¨çš„ 2D 代ç†ï¼Œå¯ä»¥åœ¨å‰å¾€æŸä¸ªä½ç½®æ—¶èº²é¿é™æ€å’ŒåŠ¨æ€éšœç¢ç‰©ã€‚躲é¿åŠ¨æ€éšœç¢" "物使用的是 RVO(Reciprocal Velocity Obstacles,相对速度障ç¢ç‰©ï¼‰é˜²æ’žç®—法。代ç†" @@ -46660,6 +46763,7 @@ msgid "Server interface for low-level 3D navigation access." msgstr "访问底层 3D 导航的æœåŠ¡å™¨æŽ¥å£ã€‚" #: doc/classes/NavigationServer.xml +#, fuzzy msgid "" "NavigationServer is the server responsible for all 3D navigation. It handles " "several objects, namely maps, regions and agents.\n" @@ -46680,6 +46784,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -46899,19 +47006,19 @@ msgid "" "code] is specified, the client will also listen to the given port; this is " "useful for some NAT traversal techniques." msgstr "" -"创建客户端,使用指定的[code]端å£[/code]连接到[code]地å€[/code]çš„æœåŠ¡å™¨ä¸Šã€‚ç»™" -"定的地å€éœ€è¦æ˜¯ä¸€ä¸ªå®Œå…¨åˆæ ¼çš„域å(例如,[code]\"www.example.com\"[/code])或" -"一个IPv4或IPv6æ ¼å¼çš„IP地å€ï¼ˆä¾‹å¦‚,[code]\"192.168.1.1\"[/code])。" -"[code]port[/code]是æœåŠ¡å™¨æ‰€ç›‘å¬çš„端å£ã€‚[code]in_bandwidth[/code]å’Œ" -"[code]out_bandwidth[/code]å‚æ•°å¯ç”¨äºŽå°†ä¼ å…¥å’Œä¼ å‡ºçš„å¸¦å®½é™åˆ¶åœ¨ç»™å®šçš„å—节数/秒。" -"默认的0æ„味ç€æ— é™çš„带宽。请注æ„,ENet会在对ç‰ä½“之间连接的特定一侧战略性地丢弃" -"æ•°æ®åŒ…,以确ä¿å¯¹ç‰ä½“的带宽ä¸è¢«æ·¹æ²¡ã€‚带宽å‚数也决定了连接的窗å£å¤§å°ï¼Œå®ƒé™åˆ¶äº†" -"在任何给定时间内å¯èƒ½æ£åœ¨ä¼ 输的å¯é æ•°æ®åŒ…çš„æ•°é‡ã€‚如果创建了一个客户端,返回" -"[constant OK];如果这个NetworkedMultiplayerENet实例已ç»æœ‰ä¸€ä¸ªå¼€æ”¾çš„连接(在这" -"ç§æƒ…å†µä¸‹ï¼Œä½ éœ€è¦å…ˆè°ƒç”¨[method close_connection]),返回[constant " -"ERR_CANT_CREATE];如果ä¸èƒ½åˆ›å»ºå®¢æˆ·ç«¯ï¼Œè¿”回[constant ERR_CANT_CREATE]。如果指" -"定了[code]client_port[/code],客户端也将监å¬ç»™å®šçš„端å£ï¼›è¿™å¯¹ä¸€äº›NAT穿越技术很" -"有用。" +"创建客户端,使用指定的 [code]port[/code]连接到[code]address[/code]çš„æœåŠ¡å™¨" +"上。给定的地å€éœ€è¦æ˜¯ä¸€ä¸ªå®Œå…¨åˆæ ¼çš„域å(例如 [code]\"www.example.com\"[/" +"code])或一个 IPv4 或 IPv6 æ ¼å¼çš„ IP 地å€ï¼ˆä¾‹å¦‚ [code]\"192.168.1.1\"[/" +"code])。[code]port[/code] 是æœåŠ¡å™¨æ‰€ç›‘å¬çš„端å£ã€‚[code]in_bandwidth[/code] " +"å’Œ [code]out_bandwidth[/code] å‚æ•°å¯ç”¨äºŽå°†ä¼ å…¥å’Œä¼ å‡ºçš„å¸¦å®½é™åˆ¶åœ¨ç»™å®šçš„å—节数/" +"秒。默认的 0 æ„味ç€æ— é™çš„带宽。请注æ„,ENet 会在对ç‰ä½“之间连接的特定一侧战略" +"性地丢弃数æ®åŒ…,以确ä¿å¯¹ç‰ä½“的带宽ä¸è¢«æ·¹æ²¡ã€‚带宽å‚数也决定了连接的窗å£å¤§å°ï¼Œ" +"它é™åˆ¶äº†åœ¨ä»»ä½•ç»™å®šæ—¶é—´å†…å¯èƒ½æ£åœ¨ä¼ 输的å¯é æ•°æ®åŒ…çš„æ•°é‡ã€‚如果创建了一个客户" +"端,返回 [constant OK];如果这个 NetworkedMultiplayerENet 实例已ç»æœ‰ä¸€ä¸ªå¼€æ”¾" +"的连接(在这ç§æƒ…å†µä¸‹ï¼Œä½ éœ€è¦å…ˆè°ƒç”¨ [method close_connection]),返回 " +"[constant ERR_CANT_CREATE];如果ä¸èƒ½åˆ›å»ºå®¢æˆ·ç«¯ï¼Œåˆ™è¿”回 [constant " +"ERR_CANT_CREATE]。如果指定了 [code]client_port[/code],客户端也将监å¬ç»™å®šçš„端" +"å£ï¼›è¿™å¯¹ä¸€äº› NAT 穿越技术很有用。" #: modules/enet/doc_classes/NetworkedMultiplayerENet.xml msgid "" @@ -46930,16 +47037,16 @@ msgid "" "case you need to call [method close_connection] first) or [constant " "ERR_CANT_CREATE] if the server could not be created." msgstr "" -"创建æœåŠ¡å™¨ï¼Œé€šè¿‡[code]port[/code]监å¬è¿žæŽ¥ã€‚该端å£éœ€è¦æ˜¯ä¸€ä¸ªå¯ç”¨çš„ã€æœªä½¿ç”¨çš„端" -"å£ï¼Œåœ¨0到65535之间。注æ„,低于1024的端å£æ˜¯ç‰¹æƒç«¯å£ï¼Œæ ¹æ®å¹³å°çš„ä¸åŒå¯èƒ½éœ€è¦æ" -"高æƒé™ã€‚è¦æ”¹å˜æœåŠ¡å™¨ç›‘å¬çš„接å£ï¼Œè¯·ä½¿ç”¨[method set_bind_ip]。默认IP是通é…符" -"[code]\"*\"[/code],它监å¬æ‰€æœ‰å¯ç”¨çš„接å£ã€‚[code]max_clients[/code]是å…许åŒæ—¶" -"进行的最大客户数,å¯ä»¥ä½¿ç”¨ä»»ä½•æ•°å—,最高å¯è¾¾4095,尽管å¯å®žçŽ°çš„åŒæ—¶è¿›è¡Œçš„客户" -"æ•°å¯èƒ½è¦ä½Žå¾—多,并且å–决于应用。关于带宽å‚数的其他细节,è§[method " -"create_client]。如果æœåŠ¡å™¨è¢«åˆ›å»ºï¼Œè¿”回[constant OK];如果这个" -"NetworkedMultiplayerENet实例已ç»æœ‰ä¸€ä¸ªå¼€æ”¾çš„连接(在这ç§æƒ…å†µä¸‹ï¼Œä½ éœ€è¦å…ˆè°ƒç”¨" -"[method close_connection]),返回[constant ERR_CANT_CREATE];如果æœåŠ¡å™¨ä¸èƒ½è¢«" -"创建,返回[constant ERR_CANT_CREATE]。" +"创建æœåŠ¡å™¨ï¼Œé€šè¿‡ [code]port[/code] 监å¬è¿žæŽ¥ã€‚该端å£éœ€è¦æ˜¯ä¸€ä¸ªå¯ç”¨çš„ã€æœªä½¿ç”¨çš„" +"端å£ï¼Œåœ¨ 0 到 65535 之间。注æ„,低于 1024 的端å£æ˜¯ç‰¹æƒç«¯å£ï¼Œæ ¹æ®å¹³å°çš„ä¸åŒå¯" +"能需è¦æ高æƒé™ã€‚è¦æ”¹å˜æœåŠ¡å™¨ç›‘å¬çš„接å£ï¼Œè¯·ä½¿ç”¨ [method set_bind_ip]。默认 IP " +"是通é…符 [code]\"*\"[/code],会监å¬æ‰€æœ‰å¯ç”¨çš„接å£ã€‚[code]max_clients[/code] " +"是å…许åŒæ—¶è¿›è¡Œçš„最大客户数,å¯ä»¥ä½¿ç”¨ä»»ä½•æ•°å—,最高å¯è¾¾ 4095,尽管å¯å®žçŽ°çš„åŒæ—¶" +"进行的客户数å¯èƒ½è¦ä½Žå¾—多,并且å–决于应用。关于带宽å‚æ•°çš„å…¶ä»–ç»†èŠ‚ï¼Œè§ [method " +"create_client]。如果æœåŠ¡å™¨è¢«åˆ›å»ºï¼Œåˆ™è¿”回 [constant OK];如果这个 " +"NetworkedMultiplayerENet 实例已ç»æœ‰ä¸€ä¸ªå¼€æ”¾çš„连接(在这ç§æƒ…å†µä¸‹ï¼Œä½ éœ€è¦å…ˆè°ƒ" +"用 [method close_connection]),则返回 [constant ERR_CANT_CREATE];如果æœåŠ¡å™¨" +"ä¸èƒ½è¢«åˆ›å»ºï¼Œåˆ™è¿”回 [constant ERR_CANT_CREATE]。" #: modules/enet/doc_classes/NetworkedMultiplayerENet.xml msgid "" @@ -50429,7 +50536,7 @@ msgstr "" "[OccluderShape] 是 [Occluder] 节点所使用的资æºï¼Œç”¨äºŽå‡ 何é®æŒ¡å‰”除。\n" "è¯¥å¤šè¾¹å½¢å¿…é¡»æ˜¯å‡¸å¤šè¾¹å½¢ã€‚å¤šè¾¹å½¢é¡¶ç‚¹çš„åˆ›å»ºä¸Žåˆ é™¤å¯ä»¥åœ¨ç¼–辑器的检查器ä¸è¿›è¡Œï¼Œä¹Ÿ" "å¯ä»¥é€šè¿‡è°ƒç”¨ [code]set_polygon_points[/code] 实现。æ¯ä¸€æ¡è¾¹çš„顶点都å¯ä»¥é€šè¿‡åœ¨" -"编辑器视窗ä¸æ‹–拽å¥æŸ„设置。\n" +"编辑器视窗ä¸æ‹–拽手柄设置。\n" "å¦å¤–,æ¯ä¸€ä¸ªå¤šè¾¹å½¢é®æŒ¡å™¨éƒ½å¯ä»¥æ”¯æŒå•ä¸ªç©ºæ´žã€‚å¦‚æžœä½ åœ¨ç¼–è¾‘å™¨çš„æ£€æŸ¥å™¨ä¸ä¸ºç©ºæ´žæ·»" "åŠ è‡³å°‘ä¸‰ä¸ªé¡¶ç‚¹ï¼Œå°±å¯ä»¥åœ¨ç¼–辑器视窗ä¸æ‹–拽空洞边缘顶点的å¥æŸ„。\n" "一般而言,多边形以åŠç©ºæ´žçš„边数越少,è¿è¡Œæ—¶ç³»ç»Ÿçš„处ç†é€Ÿåº¦å°±è¶Šå¿«ï¼Œæ‰€ä»¥åœ¨å¤§å¤šæ•°" @@ -50525,11 +50632,14 @@ msgstr "" "光的衰å‡ï¼ˆä¸‹é™ï¼‰æ›²çº¿ã€‚在[b]检查器[/b]ä¸ï¼Œé€šè¿‡å³é”®ç‚¹å‡»æ›²çº¿ï¼Œå¯ä»¥èŽ·å¾—许多预设。" #: doc/classes/OmniLight.xml +#, fuzzy msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" "光的åŠå¾„。请注æ„,有效的照明区域å¯èƒ½çœ‹èµ·æ¥æ›´å°ï¼Œè¿™å–决于使用的 [member " "omni_attenuation]ã€‚æ— è®ºä½¿ç”¨ä½•ç§ [member omni_attenuation],光线都ä¸ä¼šåˆ°è¾¾è¿™ä¸ª" @@ -51187,13 +51297,14 @@ msgid "Returns the audio driver name for the given index." msgstr "返回给定索引的音频驱动程åºå称。" #: doc/classes/OS.xml +#, fuzzy msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -51251,13 +51362,14 @@ msgstr "" "[/codeblock]" #: doc/classes/OS.xml +#, fuzzy msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -51286,13 +51398,14 @@ msgid "" msgstr "返回当å‰ä½¿ç”¨çš„视频驱动程åºï¼Œä½¿ç”¨[enum VideoDriver]ä¸çš„一个值。" #: doc/classes/OS.xml +#, fuzzy msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -53747,6 +53860,17 @@ msgid "Particle systems (2D)" msgstr "ç²’å系统(2D)" #: doc/classes/Particles2D.xml +#, fuzzy +msgid "2D Particles Demo" +msgstr "2D å¹³å°è·³è·ƒæ¼”示" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "返回一个包å«æ‰€æœ‰çŽ°å˜ç²’åä½ç½®çš„矩形。" @@ -58864,7 +58988,7 @@ msgid "" "visual size by using the gizmo in the 2D editor while the node is selected." msgstr "" "用于编辑的通用 2D ä½ç½®æ示。它就åƒä¸€ä¸ªæ™®é€šçš„ [Node2D],但它在 2D 编辑器ä¸å§‹ç»ˆ" -"显示为一个åå—。选择节点时,å¯ä»¥ä½¿ç”¨ 2D 编辑器ä¸çš„å°æŽ§ä»¶æ¥è®¾ç½®åå—的视觉大" +"显示为一个åå—。选ä¸èŠ‚点时,å¯ä»¥ä½¿ç”¨ 2D 编辑器ä¸çš„å°å·¥å…·æ¥è®¾ç½®åå—的视觉大" "å°ã€‚" #: doc/classes/Position3D.xml @@ -61824,7 +61948,7 @@ msgid "" "Physics2DServer.AREA_PARAM_GRAVITY, 98)\n" "[/codeblock]" msgstr "" -"2D ä¸é»˜è®¤çš„é‡åŠ›å¼ºåº¦ï¼ˆå•ä½ï¼šæ¯ç§’平方åƒç´ )。\n" +"2D ä¸é»˜è®¤çš„é‡åŠ›å¼ºåº¦ï¼ˆå•ä½ä¸ºåƒç´ æ¯ç§’的平方)。\n" "[b]注æ„:[/b]这个属性åªåœ¨é¡¹ç›®å¯åŠ¨æ—¶è¢«è¯»å–。è¦åœ¨è¿è¡Œæ—¶æ”¹å˜é»˜è®¤çš„é‡åŠ›ï¼Œè¯·ä½¿ç”¨ä»¥" "下代ç 示例:\n" "[codeblock]\n" @@ -61980,7 +62104,7 @@ msgid "" "PhysicsServer.AREA_PARAM_GRAVITY, 9.8)\n" "[/codeblock]" msgstr "" -"3D ä¸çš„默认é‡åŠ›å¼ºåº¦ï¼Œå•ä½ï¼šç±³/秒平方。\n" +"3D ä¸çš„默认é‡åŠ›å¼ºåº¦ï¼ˆå•ä½ä¸ºç±³æ¯ç§’的平方)。\n" "[b]注æ„:[/b]该属性仅在项目å¯åŠ¨æ—¶è¯»å–。è¦åœ¨è¿è¡Œæ—¶æ›´æ”¹é»˜è®¤é‡åŠ›ï¼Œè¯·ä½¿ç”¨ä»¥ä¸‹ä»£ç " "示例:\n" "[codeblock]\n" @@ -63080,17 +63204,25 @@ msgstr "" "的值通常会给出最好的结果。å¦è§ [member rendering/quality/filters/use_fxaa]。" #: doc/classes/ProjectSettings.xml +#, fuzzy msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" "如果为 [code]true[/code],则使用快速åŽå¤„ç†è¿‡æ»¤å™¨ä½¿æ¡å¸¦æ˜Žæ˜¾ä¸é‚£ä¹ˆæ˜Žæ˜¾ã€‚在æŸäº›" "情况下,去带å¯èƒ½ä¼šå¼•å…¥ç¨å¾®æ˜Žæ˜¾çš„抖动模å¼ã€‚建议仅在实际需è¦æ—¶å¯ç”¨åŽ»æ¡å¸¦ï¼Œå› 为" @@ -65231,33 +65363,45 @@ msgstr "返回æ¤å¯¹è±¡æ˜¯å¦åˆ†é…了有效的æœç´¢æ¨¡å¼ã€‚" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" -"在文本ä¸æœç´¢ç¼–译åŽçš„模å¼ã€‚如果找到,返回第一个匹é…结果的 [RegExMatch] 容器," -"å¦åˆ™è¿”回 [code]null[/code]。å¯ä»¥æŒ‡å®šè¦æœç´¢çš„区域,而ä¸éœ€è¦ä¿®æ”¹å¼€å§‹å’Œç»“æŸé”šç‚¹" -"çš„ä½ç½®ã€‚" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" -"在文本ä¸æœç´¢ç¼–译过的模å¼ã€‚为æ¯ä¸ªä¸é‡å 的结果返回一个 [RegExMatch] 容器数组。" -"如果没有å‘现任何结果,则返回一个空数组。å¯ä»¥æŒ‡å®šè¦æœç´¢çš„区域,而ä¸éœ€è¦ä¿®æ”¹å¼€" -"始和结æŸé”šç‚¹çš„ä½ç½®ã€‚" #: modules/regex/doc_classes/RegEx.xml +#, fuzzy msgid "" "Searches the text for the compiled pattern and replaces it with the " "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" "æœç´¢æ–‡æœ¬ä¸çš„编译模å¼ï¼Œå¹¶å°†å…¶æ›¿æ¢ä¸ºæŒ‡å®šçš„å—符串。诸如 [code]$1[/code] å’Œ " "[code]$name[/code] ç‰è½¬ä¹‰å’Œåå‘引用会被展开和解决。默认情况下,åªæœ‰ç¬¬ä¸€ä¸ªå®žä¾‹" @@ -67799,7 +67943,6 @@ msgstr "" "以é¿å…混淆。有关 portal 模å¼çš„完整说明,请å‚阅 [CullInstance]。" #: doc/classes/RoomManager.xml -#, fuzzy msgid "" "Switches the portal culling system on and off.\n" "It is important to note that when portal culling is active, it is " @@ -67814,11 +67957,13 @@ msgid "" "[VisualInstance] are expected to show when the system is active." msgstr "" "打开和关é—å…¥å£å‰”除系统。\n" -"需è¦æ³¨æ„的是,当入å£å‰”除处于活动状æ€æ—¶ï¼Œå®ƒè´Ÿè´£[b]所有[/b] 3d 剔除。æŸäº›ç¼–辑器" -"功能å¯èƒ½æ›´éš¾ä½¿ç”¨ï¼Œå› æ¤åˆ‡æ¢æ´»åŠ¨æ ‡å¿—旨在确ä¿æ‚¨çš„ [Room] / [Portal] 布局在编辑器" -"ä¸å·¥ä½œã€‚\n" +"需è¦æ³¨æ„的是,当入å£å‰”除处于活动状æ€æ—¶ï¼Œå®ƒè´Ÿè´£è¿›è¡Œ[b]所有[/b] 3d 剔除。活动状" +"æ€ä¸‹ï¼Œå¯èƒ½æ— 法使用编辑器ä¸çš„部分å¯è§†åŒ–è°ƒè¯•å·¥å…·ï¼Œå› æ¤æ´»åŠ¨æ ‡å¿—的开关的目的åªæ˜¯" +"ç¡®ä¿æ‚¨çš„ [Room] / [Portal] 布局在编辑器ä¸èƒ½å¤Ÿæ£å¸¸å·¥ä½œã€‚\n" "当 [code]room graph[/code] 被å¸è½½ï¼ˆç©ºé—´å°šæœªè½¬æ¢ï¼‰æ—¶ï¼Œåˆ‡æ¢åˆ° [code]active[/" -"code] å°†ä¸èµ·ä½œç”¨ã€‚" +"code] å°†ä¸èµ·ä½œç”¨ã€‚\n" +"[b]注æ„:[/b]出于效率的考虑,入å£ç³»ç»Ÿåœ¨è®¾è®¡æ—¶åªè€ƒè™‘äº†æ ¸å¿ƒå¯è§†å¯¹è±¡ç±»åž‹ã€‚具体æ¥" +"说,就是åªæœ‰ç»§æ‰¿è‡ª [VisualInstance] 的节点æ‰ä¼šåœ¨è¯¥ç³»ç»Ÿå¯ç”¨æ—¶æ˜¾ç¤ºã€‚" #: doc/classes/RoomManager.xml msgid "" @@ -67999,7 +68144,7 @@ msgstr "" #: doc/classes/RoomManager.xml msgid "Shows the [Portal] margins when the portal gizmo is used in the editor." -msgstr "当在编辑器ä¸ä½¿ç”¨å…¥å£å·¥å…·æ—¶ï¼Œæ˜¾ç¤º [Portal] 的边界。" +msgstr "当在编辑器ä¸ä½¿ç”¨å…¥å£å°å·¥å…·æ—¶ï¼Œæ˜¾ç¤º [Portal] 的边界。" #: doc/classes/RoomManager.xml msgid "" @@ -68834,8 +68979,12 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "对组进行调用时,立å³æ‰§è¡Œï¼ˆæ£å¸¸æƒ…况下是在空闲时调用的)。" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." -msgstr "对组进行调用时,å³ä¾¿æ‰§è¡Œäº†å¤šæ¬¡è°ƒç”¨ä¹Ÿåªè°ƒç”¨ä¸€æ¬¡ã€‚" +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." +msgstr "" #: doc/classes/SceneTree.xml msgid "No stretching." @@ -68928,7 +69077,6 @@ msgid "" msgstr "通过脚本进行通用动画的轻é‡çº§å¯¹è±¡ï¼Œä½¿ç”¨ [Tweener]。" #: doc/classes/SceneTreeTween.xml -#, fuzzy msgid "" "[SceneTreeTween] is a tween managed by the scene tree. As opposed to " "[Tween], it does not require the instantiation of a node.\n" @@ -69065,6 +69213,16 @@ msgstr "" " tween.tween_property(sprite, \"position\", Vector2(0, 0), 1)\n" "[/codeblock]\n" "上é¢çš„示例ä¸ï¼Œè¯¥èŠ‚点的所有å节点都会ä¾æ¬¡è¢«ç§»åŠ¨åˆ° (0, 0)。\n" +"ä½ åº”è¯¥é¿å…在对象的åŒä¸€ä¸ªå±žæ€§ä¸Šä½¿ç”¨å¤šä¸ª [SceneTreeTween]。如果对æŸä¸ªå±žæ€§åŒæ—¶è¿›" +"行两个或者更多的补间动画,会优先使用最åŽåˆ›å»ºçš„é‚£ä¸ªè®¾ç½®æœ€ç»ˆçš„å€¼ã€‚å¦‚æžœä½ æƒ³è¦ä¸" +"æ–并é‡å¯åŠ¨ç”»ï¼Œè¯·è€ƒè™‘将该 [SceneTreeTween] 赋给å˜é‡ï¼š\n" +"[codeblock]\n" +"var tween\n" +"func animate():\n" +" if tween:\n" +" tween.kill() # 终æ¢ä¹‹å‰çš„补间动画。\n" +" tween = create_tween()\n" +"[/codeblock]\n" "一些 [Tweener] 会用到过渡和缓动。å‰è€…æŽ¥å— [enum Tween.TransitionType] 常é‡ï¼Œ" "指的是如何处ç†è¯¥åŠ¨ç”»çš„æ—¶é—´ï¼ˆç¤ºä¾‹è§ [url=https://easings.net/]easings.net[/" "url])。第二个接å—的是 [enum Tween.EaseType] 常é‡ï¼ŒæŽ§åˆ¶ [code]trans_type[/" @@ -69074,7 +69232,10 @@ msgstr "" "[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/" "tween_cheatsheet.png]补间缓动与过渡类型速查表[/url]\n" "[b]注æ„:[/b]所有 [SceneTreeTween] 都默认会自动å¯åŠ¨ã€‚如果è¦é˜»æ¢æŸä¸ª " -"[SceneTreeTween] 自动å¯åŠ¨ï¼Œä½ å¯ä»¥åœ¨åˆ›å»ºåŽç«‹å³è°ƒç”¨ [method stop]。" +"[SceneTreeTween] 自动å¯åŠ¨ï¼Œä½ å¯ä»¥åœ¨åˆ›å»ºåŽç«‹å³è°ƒç”¨ [method stop]。\n" +"[b]注æ„:[/b][SceneTreeTween] 的处ç†æ—¶æœºåœ¨å½“å‰å¸§çš„所有节点之åŽï¼Œå³åœ¨ [method " +"Node._process] 或 [method Node._physics_process] 之åŽï¼ˆå–决于 [enum Tween." +"TweenProcessMode])。" #: doc/classes/SceneTreeTween.xml msgid "" @@ -70806,9 +70967,9 @@ msgid "" "the optional [code]attachment_path[/code] can define a [Spatial] the pinned " "vertex will be attached to." msgstr "" -"设置表é¢é¡¶ç‚¹çš„固定状æ€ã€‚当设置为 [code]true[/code] 时,å¯é€‰çš„" -"[code]attachment_path[/code]å¯ä»¥å®šä¹‰ä¸€ä¸ªç©ºé—´[Spatial],被固定的顶点将连接到这" -"个空间。" +"设置表é¢é¡¶ç‚¹çš„固定状æ€ã€‚当设置为 [code]true[/code] 时,å¯é€‰çš„ " +"[code]attachment_path[/code] å¯ä»¥å®šä¹‰ä¸€ä¸ª [Spatial],被固定的顶点将连接到这个" +"节点。" #: doc/classes/SoftBody.xml msgid "" @@ -71114,7 +71275,7 @@ msgid "" "editor context and it has a valid gizmo." msgstr "" "设置节点是å¦é€šçŸ¥å…¶å…¨å±€å’Œå±€éƒ¨å˜æ¢çš„å˜åŒ–。[Spatial] 默认情况下ä¸ä¼šä¼ æ’,除éžæ˜¯" -"在编辑器上下文ä¸ï¼Œå¹¶ä¸”它有一个有效的控制器。" +"在编辑器上下文ä¸ï¼Œå¹¶ä¸”它有一个有效的å°å·¥å…·ã€‚" #: doc/classes/Spatial.xml msgid "" @@ -71219,12 +71380,15 @@ msgid "" msgstr "旋转部分局部å˜æ¢ä¸ºåº¦ï¼ŒæŒ‰ YXZ-Euler è§’æ ¼å¼æŒ‡å®šï¼ˆX 角ã€Y 角ã€Z 角)。" #: doc/classes/Spatial.xml +#, fuzzy msgid "" "Scale part of the local transformation.\n" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" "局部å˜æ¢çš„缩放部分。\n" "[b]注æ„:[/b]3D ä¸ï¼Œå˜æ¢çŸ©é˜µæ˜¯æ— 法分解出æ£è´Ÿæ··åˆçš„缩放的。由于 Godot ä¸ä½¿ç”¨å˜" @@ -71273,39 +71437,41 @@ msgid "" "need to ask for it, with [method set_notify_transform]. The notification is " "also sent if the node is in the editor context and it has a valid gizmo." msgstr "" -"当空间节点的全局å˜æ¢å‘生å˜åŒ–时,空间节点会收到这个通知。这æ„味ç€å½“å‰èŠ‚点或父" -"节点改å˜äº†å®ƒçš„å˜æ¢ã€‚\n" +"当 Spatial 节点的全局å˜æ¢å‘生å˜åŒ–时会收到这个通知。这æ„味ç€å½“å‰èŠ‚点或父节点改" +"å˜äº†å®ƒçš„å˜æ¢ã€‚\n" "为了使 [constant NOTIFICATION_TRANSFORM_CHANGED] 生效,用户首先需è¦ç”¨ " "[method set_notify_transform] å‘é€è¯·æ±‚。如果节点是在编辑器的上下文ä¸ï¼Œå¹¶ä¸”它" -"有一个有效的控制器(Gizmo),那么该通知也会被å‘é€ã€‚" +"有一个有效的å°å·¥å…·ï¼Œé‚£ä¹ˆè¯¥é€šçŸ¥ä¹Ÿä¼šè¢«å‘é€ã€‚" #: doc/classes/Spatial.xml msgid "" "Spatial nodes receives this notification when they are registered to new " "[World] resource." -msgstr "空间节点在注册到新的 [World] 资æºæ—¶ä¼šæ”¶åˆ°æ¤é€šçŸ¥ã€‚" +msgstr "Spatial 节点在注册到新的 [World] 资æºæ—¶ä¼šæ”¶åˆ°æ¤é€šçŸ¥ã€‚" #: doc/classes/Spatial.xml msgid "" "Spatial nodes receives this notification when they are unregistered from " "current [World] resource." -msgstr "当空间节点从当å‰çš„ [World] 资æºä¸å–消注册时,它们会收到æ¤é€šçŸ¥ã€‚" +msgstr "当 Spatial 节点从当å‰çš„ [World] 资æºä¸å–消注册时,它们会收到æ¤é€šçŸ¥ã€‚" #: doc/classes/Spatial.xml msgid "Spatial nodes receives this notification when their visibility changes." -msgstr "空间节点在其å¯è§æ€§å‘生å˜åŒ–时会收到æ¤é€šçŸ¥ã€‚" +msgstr "Spatial 节点在其å¯è§æ€§å‘生å˜åŒ–时会收到æ¤é€šçŸ¥ã€‚" #: doc/classes/Spatial.xml msgid "" "Spatial nodes receives this notification if the portal system gameplay " "monitor detects they have entered the gameplay area." -msgstr "如果入å£ç³»ç»Ÿæ¸¸æˆç›‘视器检测到它们已进入游æˆåŒºåŸŸï¼Œç©ºé—´èŠ‚点会收到æ¤é€šçŸ¥ã€‚" +msgstr "" +"如果入å£ç³»ç»Ÿæ¸¸æˆç›‘视器检测到它们已进入游æˆåŒºåŸŸï¼ŒSpatial 节点会收到æ¤é€šçŸ¥ã€‚" #: doc/classes/Spatial.xml msgid "" "Spatial nodes receives this notification if the portal system gameplay " "monitor detects they have exited the gameplay area." -msgstr "如果入å£ç³»ç»Ÿæ¸¸æˆç›‘视器检测到它们已退出游æˆåŒºåŸŸï¼Œç©ºé—´èŠ‚点会收到æ¤é€šçŸ¥ã€‚" +msgstr "" +"如果入å£ç³»ç»Ÿæ¸¸æˆç›‘视器检测到它们已退出游æˆåŒºåŸŸï¼ŒSpatial 节点会收到æ¤é€šçŸ¥ã€‚" #: doc/classes/SpatialMaterial.xml msgid "Default 3D rendering material." @@ -72867,8 +73033,11 @@ msgstr "" "max_lights_per_object],以ç€è‰²å™¨ç¼–译时间为代价。" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." -msgstr "èšå…‰ç¯çš„角度,å•ä½æ˜¯åº¦ã€‚" +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." +msgstr "" #: doc/classes/SpotLight.xml msgid "The spotlight's angular attenuation curve." @@ -72879,11 +73048,14 @@ msgid "The spotlight's light energy attenuation curve." msgstr "èšå…‰ç¯çš„å…‰é‡è¡°å‡æ›²çº¿ã€‚" #: doc/classes/SpotLight.xml +#, fuzzy msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" "èšå…‰ç¯å¯ä»¥è¾¾åˆ°çš„最大范围。请注æ„ï¼Œæ ¹æ®ä½¿ç”¨çš„ [member spot_attenuation],有效" "照明区域å¯èƒ½çœ‹èµ·æ¥æ›´å°ã€‚æ— è®ºä½¿ç”¨[member spot_attenuation],光都ä¸ä¼šåˆ°è¾¾æ¤èŒƒå›´" @@ -77961,55 +78133,49 @@ msgid "Clears all values on the theme." msgstr "清除主题上的所有值。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Clears the [Color] at [code]name[/code] if the theme has [code]theme_type[/" "code]." msgstr "" -"å¦‚æžœä¸»é¢˜åŒ…å« [code]node_type[/code],则清除å为 [code]name[/code] çš„ [Color]" +"å¦‚æžœä¸»é¢˜åŒ…å« [code]theme_type[/code],则清除å为 [code]name[/code] çš„ [Color]" "颜色。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Clears the constant at [code]name[/code] if the theme has [code]theme_type[/" "code]." msgstr "" -"å¦‚æžœä¸»é¢˜åŒ…å« [code]node_type[/code],则清除å为 [code]name[/code] 的常é‡ã€‚" +"å¦‚æžœä¸»é¢˜åŒ…å« [code]theme_type[/code],则清除å为 [code]name[/code] 的常é‡ã€‚" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Clears the [Font] at [code]name[/code] if the theme has [code]theme_type[/" "code]." msgstr "" -"å¦‚æžœä¸»é¢˜åŒ…å« [code]node_type[/code],则清除å为 [code]name[/code] çš„ [Font]å—" -"体。" +"å¦‚æžœä¸»é¢˜åŒ…å« [code]theme_type[/code],则清除å为 [code]name[/code] çš„ [Font]" +"å—体。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Clears the icon at [code]name[/code] if the theme has [code]theme_type[/" "code]." msgstr "" -"å¦‚æžœä¸»é¢˜åŒ…å« [code]node_type[/code],则清除å为 [code]name[/code] çš„å›¾æ ‡ã€‚" +"å¦‚æžœä¸»é¢˜åŒ…å« [code]theme_type[/code],则清除å为 [code]name[/code] çš„å›¾æ ‡ã€‚" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Clears [StyleBox] at [code]name[/code] if the theme has [code]theme_type[/" "code]." msgstr "" -"å¦‚æžœä¸»é¢˜åŒ…å« [code]node_type[/code],则清除å为 [code]name[/code] çš„ " +"å¦‚æžœä¸»é¢˜åŒ…å« [code]theme_type[/code],则清除å为 [code]name[/code] çš„ " "[StyleBox]æ ·å¼ç›’。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Clears the theme item of [code]data_type[/code] at [code]name[/code] if the " "theme has [code]theme_type[/code]." msgstr "" -"如果主题具有 [code]node_type[/code],则清除 [code]name[/code] 处的 " +"如果主题具有 [code]theme_type[/code],则清除 [code]name[/code] 处的 " "[code]data_type[/code] 主题项。" #: doc/classes/Theme.xml @@ -78029,21 +78195,20 @@ msgid "Sets the theme's values to a copy of a given theme." msgstr "将主题的å–值设置为指定主题的副本。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns the [Color] at [code]name[/code] if the theme has [code]theme_type[/" "code]." -msgstr "如果主题有[code]node_type[/code],返回 [code]name[/code]处的[Color]。" +msgstr "" +"如果主题有 [code]theme_type[/code],返回 [code]name[/code] 处的 [Color]。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns all the [Color]s as a [PoolStringArray] filled with each [Color]'s " "name, for use in [method get_color], if the theme has [code]theme_type[/" "code]." msgstr "" -"如果主题有[code]node_type[/code],将所有的[Color]作为[PoolStringArray]返回," -"并填充æ¯ä¸ª[Color]çš„å称,用于[method get_color]使用。" +"如果主题有 [code]theme_type[/code],将所有的 [Color] 作为 [PoolStringArray] " +"返回,并填充æ¯ä¸ª [Color] çš„å称,用于 [method get_color] 使用。" #: doc/classes/Theme.xml msgid "" @@ -78054,20 +78219,18 @@ msgstr "" "[method get_color] å’Œ/或 [method get_color_list] 使用。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns the constant at [code]name[/code] if the theme has [code]theme_type[/" "code]." -msgstr "如果主题有 [code]node_type[/code],返回 [code]name[/code] 处的常é‡ã€‚" +msgstr "如果主题有 [code]theme_type[/code],返回 [code]name[/code] 处的常é‡ã€‚" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns all the constants as a [PoolStringArray] filled with each constant's " "name, for use in [method get_constant], if the theme has [code]theme_type[/" "code]." msgstr "" -"如果主题有 [code]node_type[/code],将所有常é‡ä½œä¸º [PoolStringArray] 返回,并" +"如果主题有 [code]theme_type[/code],将所有常é‡ä½œä¸º [PoolStringArray] 返回,并" "å¡«å……æ¯ä¸ªå¸¸é‡çš„å称,以供 [method get_constant] 使用。" #: doc/classes/Theme.xml @@ -78080,23 +78243,21 @@ msgstr "" "get_constant]å’Œ/或[method get_constant_list]使用。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns the [Font] at [code]name[/code] if the theme has [code]theme_type[/" "code]. If such item does not exist and [member default_font] is set on the " "theme, the default font will be returned." msgstr "" -"如果主题有 [code]node_type[/code],则返回å为 [code]name[/code] çš„ [Font]。如" -"æžœä¸å˜åœ¨è¿™æ ·çš„项目,而该主题设置了 [member default_font],则会返回该默认å—" +"如果主题有 [code]theme_type[/code],则返回å为 [code]name[/code] çš„ [Font]。" +"如果ä¸å˜åœ¨è¿™æ ·çš„项目,而该主题设置了 [member default_font],则会返回该默认å—" "体。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns all the [Font]s as a [PoolStringArray] filled with each [Font]'s " "name, for use in [method get_font], if the theme has [code]theme_type[/code]." msgstr "" -"如果主题有 [code]node_type[/code],将所有的 [Font] 作为 [PoolStringArray] è¿”" +"如果主题有 [code]theme_type[/code],将所有的 [Font] 作为 [PoolStringArray] è¿”" "回,并填入æ¯ä¸ª [Font] çš„å称,以供 [method get_font] 使用。" #: doc/classes/Theme.xml @@ -78108,21 +78269,20 @@ msgstr "" "get_font]å’Œ/或[method get_font_list]使用。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns the icon [Texture] at [code]name[/code] if the theme has " "[code]theme_type[/code]." msgstr "" -"如果主题有[code]node_type[/code],返回 [code]name[/code]å¤„çš„å›¾æ ‡[Texture]。" +"如果主题有 [code]theme_type[/code],返回 [code]name[/code] å¤„çš„å›¾æ ‡ " +"[Texture]。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns all the icons as a [PoolStringArray] filled with each [Texture]'s " "name, for use in [method get_icon], if the theme has [code]theme_type[/code]." msgstr "" -"如果主题有[code]node_type[/code]ï¼Œåˆ™è¿”å›žæ‰€æœ‰çš„å›¾æ ‡ä¸ºä¸€ä¸ª[PoolStringArray],并" -"å¡«å…¥æ¯ä¸ª[Texture]çš„å称,以供[method get_icon]使用。" +"如果主题有 [code]theme_type[/code]ï¼Œåˆ™è¿”å›žæ‰€æœ‰çš„å›¾æ ‡ä¸ºä¸€ä¸ª " +"[PoolStringArray],并填入æ¯ä¸ª [Texture] çš„å称,以供 [method get_icon] 使用。" #: doc/classes/Theme.xml msgid "" @@ -78133,7 +78293,6 @@ msgstr "" "get_icon]å’Œ/或[method get_icon_list]使用。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns the [StyleBox] at [code]name[/code] if the theme has " "[code]theme_type[/code].\n" @@ -78141,12 +78300,12 @@ msgid "" "Valid [code]theme_type[/code]s may be found using [method " "get_stylebox_types]." msgstr "" -"如果主题有[code]node_type[/code],返回 [code]name[/code]处的[StyleBox]。\n" -"å¯ä»¥ä½¿ç”¨[method get_stylebox_list]找到有效的[code]name[/code]。å¯ä»¥é€šè¿‡" -"[method get_stylebox_types]æ¥æ‰¾åˆ°æœ‰æ•ˆçš„[code]node_type[/code]。" +"如果主题有 [code]theme_type[/code],返回 [code]name[/code] 处的 " +"[StyleBox]。\n" +"å¯ä»¥ä½¿ç”¨ [method get_stylebox_list] 找到有效的 [code]name[/code]。å¯ä»¥é€šè¿‡ " +"[method get_stylebox_types] æ¥æ‰¾åˆ°æœ‰æ•ˆçš„ [code]theme_type[/code]。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns all the [StyleBox]s as a [PoolStringArray] filled with each " "[StyleBox]'s name, for use in [method get_stylebox], if the theme has " @@ -78154,9 +78313,10 @@ msgid "" "Valid [code]theme_type[/code]s may be found using [method " "get_stylebox_types]." msgstr "" -"如果主题有[code]node_type[/code],则返回所有[StyleBox]çš„[PoolStringArray],并" -"å¡«å…¥æ¯ä¸ª[StyleBox]çš„å称,以供[method get_stylebox]使用。\n" -"å¯ä»¥ä½¿ç”¨[method get_stylebox_types]找到有效的[code]node_type[/code]。" +"如果主题有 [code]theme_type[/code],则返回所有 [StyleBox] çš„ " +"[PoolStringArray],并填入æ¯ä¸ª [StyleBox] çš„å称,以供 [method get_stylebox] " +"使用。\n" +"å¯ä»¥ä½¿ç”¨ [method get_stylebox_types] 找到有效的 [code]theme_type[/code]。" #: doc/classes/Theme.xml msgid "" @@ -78168,7 +78328,6 @@ msgstr "" "[method get_stylebox]å’Œ/或[method get_stylebox_list]使用。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns the theme item of [code]data_type[/code] at [code]name[/code] if the " "theme has [code]theme_type[/code].\n" @@ -78176,14 +78335,13 @@ msgid "" "a data type specific method. Valid [code]theme_type[/code]s may be found " "using [method get_theme_item_types] or a data type specific method." msgstr "" -"如果主题有 [code]node_type[/code],则以 [code]name[/code] 返回 " +"如果主题有 [code]theme_type[/code],则以 [code]name[/code] 返回 " "[code]data_type[/code] 的主题项目。\n" "使用 [method get_theme_item_list] 或数æ®ç±»åž‹ç‰¹å®šæ–¹æ³•ï¼Œå¯èƒ½ä¼šæ‰¾åˆ°æœ‰æ•ˆçš„ " "[code]name[/code]。å¯ä»¥ä½¿ç”¨ [method get_theme_item_types] 或数æ®ç±»åž‹ç‰¹å®šæ–¹" -"法,找到有效的 [code]node_type[/code]。" +"法,找到有效的 [code]theme_type[/code]。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns all the theme items of [code]data_type[/code] as a [PoolStringArray] " "filled with each theme items's name, for use in [method get_theme_item] or a " @@ -78191,11 +78349,11 @@ msgid "" "Valid [code]theme_type[/code]s may be found using [method " "get_theme_item_types] or a data type specific method." msgstr "" -"返回所有[code]data_type[/code]的主题项目,以[PoolStringArray]çš„å½¢å¼å¡«å…¥æ¯ä¸ªä¸»" -"题项目的å称,如果主题有[code]node_type[/code],å¯ä»¥åœ¨[method get_theme_item]" -"或特定数æ®ç±»åž‹æ–¹æ³•ä¸ä½¿ç”¨ã€‚\n" -"å¯ä»¥é€šè¿‡[method get_theme_item_types]或特定数æ®ç±»åž‹çš„方法找到有效的" -"[code]node_type[/code]。" +"返回所有 [code]data_type[/code] 的主题项目,以 [PoolStringArray] çš„å½¢å¼å¡«å…¥æ¯" +"个主题项目的å称,如果主题有 [code]theme_type[/code],å¯ä»¥åœ¨ [method " +"get_theme_item] 或特定数æ®ç±»åž‹æ–¹æ³•ä¸ä½¿ç”¨ã€‚\n" +"å¯ä»¥é€šè¿‡ [method get_theme_item_types] 或特定数æ®ç±»åž‹çš„方法找到有效的 " +"[code]theme_type[/code]。" #: doc/classes/Theme.xml msgid "" @@ -78208,16 +78366,15 @@ msgstr "" "或数æ®ç±»åž‹ç‰¹å®šæ–¹æ³•ä½¿ç”¨ã€‚" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns all the theme types as a [PoolStringArray] filled with unique type " "names, for use in other [code]get_*[/code] functions of this theme.\n" "[b]Note:[/b] [code]theme_type[/code] has no effect and will be removed in " "future version." msgstr "" -"将所有的主题类型作为一个[PoolStringArray]返回,其ä¸å¡«å…¥äº†å”¯ä¸€çš„类型å称,以供" -"这个主题的其他[code]get_*[/code]函数使用。\n" -"[b]注æ„:[/b][code]node_type[/code]没有生效,在未æ¥çš„版本ä¸ä¼šè¢«åˆ 除。" +"将所有的主题类型作为一个 [PoolStringArray] 返回,其ä¸å¡«å…¥äº†å”¯ä¸€çš„类型å称,以" +"供这个主题的其他 [code]get_*[/code] 函数使用。\n" +"[b]注æ„:[/b][code]theme_type[/code] 没有生效,在未æ¥çš„版本ä¸ä¼šè¢«åˆ 除。" #: doc/classes/Theme.xml msgid "" @@ -78233,28 +78390,26 @@ msgid "" msgstr "返回给定的基础类型 [code]base_type[/code] 的所有类型å˜ç§ã€‚" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns [code]true[/code] if [Color] with [code]name[/code] is in " "[code]theme_type[/code].\n" "Returns [code]false[/code] if the theme does not have [code]theme_type[/" "code]." msgstr "" -"如果带有[code]name[/code]çš„[Color]在[code]node_type[/code]ä¸ï¼Œåˆ™è¿”回 " +"如果 [code]theme_type[/code] ä¸å˜åœ¨å为 [code]name[/code] çš„ [Color],则返回 " "[code]true[/code]。\n" -"如果主题没有[code]node_type[/code],则返回 [code]false[/code]。" +"如果主题没有 [code]theme_type[/code],则返回 [code]false[/code]。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns [code]true[/code] if constant with [code]name[/code] is in " "[code]theme_type[/code].\n" "Returns [code]false[/code] if the theme does not have [code]theme_type[/" "code]." msgstr "" -"如果带有[code]name[/code]的常é‡åœ¨[code]node_type[/code]ä¸ï¼Œåˆ™è¿”回 " +"如果 [code]theme_type[/code] ä¸å˜åœ¨å为 [code]name[/code] 的常é‡ï¼Œåˆ™è¿”回 " "[code]true[/code]。\n" -"如果主题没有[code]node_type[/code],则返回 [code]false[/code]。" +"如果主题没有[code]theme_type[/code],则返回 [code]false[/code]。" #: doc/classes/Theme.xml msgid "" @@ -78264,52 +78419,48 @@ msgstr "" "如果这个主题有一个有效的[member default_font]值,返回 [code]true[/code]。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns [code]true[/code] if [Font] with [code]name[/code] is in " "[code]theme_type[/code].\n" "Returns [code]false[/code] if the theme does not have [code]theme_type[/" "code]." msgstr "" -"如果带有[code]name[/code]çš„[Font]在[code]node_type[/code]ä¸ï¼Œåˆ™è¿”回 " +"如果 [code]theme_type[/code] ä¸å˜åœ¨å为 [code]name[/code] çš„ [Font],则返回 " "[code]true[/code]。\n" -"如果主题没有[code]node_type[/code],则返回 [code]false[/code]。" +"如果主题没有[code]theme_type[/code],则返回 [code]false[/code]。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns [code]true[/code] if icon [Texture] with [code]name[/code] is in " "[code]theme_type[/code].\n" "Returns [code]false[/code] if the theme does not have [code]theme_type[/" "code]." msgstr "" -"如果带有[code]name[/code]çš„å›¾æ ‡[Texture]在[code]node_type[/code]ä¸ï¼Œåˆ™è¿”回 " -"[code]true[/code]。\n" -"如果主题没有[code]node_type[/code],则返回 [code]false[/code]。" +"如果 [code]theme_type[/code] ä¸å˜åœ¨å为 [code]name[/code] çš„å›¾æ ‡ [Texture]," +"则返回 [code]true[/code]。\n" +"如果主题没有[code]theme_type[/code],则返回 [code]false[/code]。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns [code]true[/code] if [StyleBox] with [code]name[/code] is in " "[code]theme_type[/code].\n" "Returns [code]false[/code] if the theme does not have [code]theme_type[/" "code]." msgstr "" -"如果带有[code]name[/code]çš„[StyleBox]在[code]node_type[/code]ä¸ï¼Œè¿”回 " -"[code]true[/code]。\n" -"如果主题没有[code]node_type[/code],则返回 [code]false[/code]。" +"如果 [code]theme_type[/code] ä¸å˜åœ¨å为 [code]name[/code] çš„ [StyleBox],则返" +"回 [code]true[/code]。\n" +"如果主题没有[code]theme_type[/code],则返回 [code]false[/code]。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Returns [code]true[/code] if a theme item of [code]data_type[/code] with " "[code]name[/code] is in [code]theme_type[/code].\n" "Returns [code]false[/code] if the theme does not have [code]theme_type[/" "code]." msgstr "" -"如果一个 [code]data_type[/code] 的主题项目与 [code]name[/code] 在 " -"[code]node_type[/code] ä¸ï¼Œåˆ™è¿”回 [code]true[/code]。\n" -"如果该主题没有 [code]node_type[/code],则返回 [code]false[/code]。" +"如果 [code]theme_type[/code] ä¸å˜åœ¨å为 [code]name[/code] çš„ " +"[code]data_type[/code] 类型的主题项目,则返回 [code]true[/code]。\n" +"如果该主题没有 [code]theme_type[/code],则返回 [code]false[/code]。" #: doc/classes/Theme.xml msgid "" @@ -78341,123 +78492,111 @@ msgstr "" "被消除。如果该类型为类型å˜ç§çš„基础类型,则那些å˜ç§ä¼šå¤±åŽ»å…¶åŸºç¡€ç±»åž‹ã€‚" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Renames the [Color] at [code]old_name[/code] to [code]name[/code] if the " "theme has [code]theme_type[/code]. If [code]name[/code] is already taken, " "this method fails." msgstr "" -"如果主题有 [code]node_type[/code],则将 [code]old_name[/code] çš„ [Color] é‡å‘½" -"å为 [code]name[/code]。如果 [code]name[/code] å·²ç»è¢«å 用,则æ¤æ–¹æ³•å°†å¤±è´¥ã€‚" +"如果主题有 [code]theme_type[/code],则将 [code]old_name[/code] çš„ [Color] é‡" +"命å为 [code]name[/code]。如果 [code]name[/code] å·²ç»è¢«å 用,则æ¤æ–¹æ³•å°†å¤±è´¥ã€‚" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Renames the constant at [code]old_name[/code] to [code]name[/code] if the " "theme has [code]theme_type[/code]. If [code]name[/code] is already taken, " "this method fails." msgstr "" -"如果主题有 [code]node_type[/code],则将 [code]old_name[/code] 的常é‡é‡å‘½å为 " -"[code]name[/code]。如果 [code]name[/code] å·²ç»è¢«å 用,则æ¤æ–¹æ³•å¤±è´¥ã€‚" +"如果主题有 [code]theme_type[/code],则将 [code]old_name[/code] 的常é‡é‡å‘½å" +"为 [code]name[/code]。如果 [code]name[/code] å·²ç»è¢«å 用,则æ¤æ–¹æ³•å¤±è´¥ã€‚" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Renames the [Font] at [code]old_name[/code] to [code]name[/code] if the " "theme has [code]theme_type[/code]. If [code]name[/code] is already taken, " "this method fails." msgstr "" -"如果主题有 [code]node_type[/code],则将 [code]old_name[/code] çš„ [Font] é‡å‘½" +"如果主题有 [code]theme_type[/code],则将 [code]old_name[/code] çš„ [Font] é‡å‘½" "å为 [code]name[/code]。如果 [code]name[/code] å·²ç»è¢«å 用,则æ¤æ–¹æ³•å¤±è´¥ã€‚" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Renames the icon at [code]old_name[/code] to [code]name[/code] if the theme " "has [code]theme_type[/code]. If [code]name[/code] is already taken, this " "method fails." msgstr "" -"如果主题有 [code]node_type[/code],则将 [code]old_name[/code] çš„å›¾æ ‡é‡å‘½å为 " -"[code]name[/code]。如果 [code]name[/code] å·²ç»è¢«å 用,则æ¤æ–¹æ³•å¤±è´¥ã€‚" +"如果主题有 [code]theme_type[/code],则将 [code]old_name[/code] çš„å›¾æ ‡é‡å‘½å" +"为 [code]name[/code]。如果 [code]name[/code] å·²ç»è¢«å 用,则æ¤æ–¹æ³•å¤±è´¥ã€‚" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Renames [StyleBox] at [code]old_name[/code] to [code]name[/code] if the " "theme has [code]theme_type[/code]. If [code]name[/code] is already taken, " "this method fails." msgstr "" -"如果主题有 [code]node_type[/code],则将 [StyleBox] 在 [code]old_name[/code] " +"如果主题有 [code]theme_type[/code],则将 [StyleBox] 在 [code]old_name[/code] " "é‡å‘½å为 [code]name[/code]。如果 [code]name[/code] å·²ç»è¢«å 用,æ¤æ–¹æ³•ä¼šå¤±è´¥ã€‚" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Renames the theme item of [code]data_type[/code] at [code]old_name[/code] to " "[code]name[/code] if the theme has [code]theme_type[/code]. If [code]name[/" "code] is already taken, this method fails." msgstr "" -"如果主题具有 [code]node_type[/code],则将 [code]old_name[/code] 处的 " +"如果主题具有 [code]theme_type[/code],则将 [code]old_name[/code] 处的 " "[code]data_type[/code] 的主题项é‡å‘½å为 [code]name[/code]。如果 [code]name[/" "code] å·²ç»è¢«å 用,则æ¤æ–¹æ³•å¤±è´¥ã€‚" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Sets the theme's [Color] to [code]color[/code] at [code]name[/code] in " "[code]theme_type[/code].\n" "Creates [code]theme_type[/code] if the theme does not have it." msgstr "" -"在 [code]node_type[/code] ä¸çš„ [code]name[/code] 处,设置主题的[Color]为" -"[code]color[/code]。\n" -"如果主题没有[code]node_type[/code],则创建该节点。" +"在主题的 [code]theme_type[/code] ä¸ï¼Œå°†å为 [code]name[/code] çš„ [Color] 设置" +"为 [code]color[/code]。\n" +"如果该主题没有 [code]theme_type[/code],会创建该主题类型。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Sets the theme's constant to [code]constant[/code] at [code]name[/code] in " "[code]theme_type[/code].\n" "Creates [code]theme_type[/code] if the theme does not have it." msgstr "" -"在 [code]node_type[/code] ä¸çš„ [code]name[/code] 处,将主题的常é‡è®¾ç½®ä¸º" +"在主题的 [code]theme_type[/code] ä¸ï¼Œå°†å为 [code]name[/code] 的常é‡è®¾ç½®ä¸º " "[code]constant[/code]。\n" -"如果主题没有,则创建[code]node_type[/code]。" +"如果该主题没有 [code]theme_type[/code],会创建该主题类型。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Sets the theme's [Font] to [code]font[/code] at [code]name[/code] in " "[code]theme_type[/code].\n" "Creates [code]theme_type[/code] if the theme does not have it." msgstr "" -"在 [code]node_type[/code] ä¸çš„ [code]name[/code] 处将主题的 [Font] 设置为" -"[code]font[/code]。\n" -"如果主题没有[code]node_type[/code],则创建该节点。" +"在主题的 [code]theme_type[/code] ä¸ï¼Œå°†å为 [code]name[/code] çš„ [Font] 设置" +"为 [code]font[/code]。\n" +"如果该主题没有 [code]theme_type[/code],会创建该主题类型。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Sets the theme's icon [Texture] to [code]texture[/code] at [code]name[/code] " "in [code]theme_type[/code].\n" "Creates [code]theme_type[/code] if the theme does not have it." msgstr "" -"在 [code]node_type[/code] ä¸çš„ [code]name[/code] å¤„è®¾ç½®ä¸»é¢˜çš„å›¾æ ‡[Texture]为" -"[code]texture[/code]。\n" -"如果主题没有[code]node_type[/code],则创建该节点。" +"在主题的 [code]theme_type[/code] ä¸ï¼Œå°†å为 [code]name[/code] çš„å›¾æ ‡ " +"[Texture] 设置为 [code]texture[/code]。\n" +"如果该主题没有 [code]theme_type[/code],会创建该主题类型。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Sets theme's [StyleBox] to [code]stylebox[/code] at [code]name[/code] in " "[code]theme_type[/code].\n" "Creates [code]theme_type[/code] if the theme does not have it." msgstr "" -"将主题的[StyleBox]设置为[code]stylebox[/code],在[code]node_type[/code]çš„" -"[code]name[/code]处。\n" -"如果主题没有[code]node_type[/code],则创建该节点。" +"在主题的 [code]theme_type[/code] ä¸ï¼Œå°†å为 [code]name[/code] çš„ [StyleBox] " +"设置为 [code]stylebox[/code]。\n" +"如果该主题没有 [code]theme_type[/code],会创建该主题类型。" #: doc/classes/Theme.xml -#, fuzzy msgid "" "Sets the theme item of [code]data_type[/code] to [code]value[/code] at " "[code]name[/code] in [code]theme_type[/code].\n" @@ -78465,10 +78604,11 @@ msgid "" "code].\n" "Creates [code]theme_type[/code] if the theme does not have it." msgstr "" -"å°†[code]data_type[/code]的主题项目设置为[code]value[/code],在" -"[code]node_type[/code]ä¸çš„[code]name[/code]。\n" -"如果[code]value[/code]类型与[code]data_type[/code]ä¸åŒ¹é…,则ä¸åšä»»ä½•å¤„ç†ã€‚\n" -"如果主题没有[code]node_type[/code],则创建该类型。" +"在主题的 [code]theme_type[/code] ä¸ï¼Œå°†å为 [code]name[/code] çš„ " +"[code]data_type[/code] 类型的主题项目设置为 [code]value[/code]。\n" +"如果 [code]value[/code]类型与 [code]data_type[/code]ä¸åŒ¹é…,则ä¸åšä»»ä½•å¤„" +"ç†ã€‚\n" +"如果该主题没有 [code]theme_type[/code],会创建该主题类型。" #: doc/classes/Theme.xml msgid "" @@ -78743,7 +78883,7 @@ msgid "" "Optionally, the tilemap's half offset can be ignored." msgstr "" "返回与指定的图å—åœ°å›¾ï¼ˆåŸºäºŽç½‘æ ¼ï¼‰åæ ‡ç›¸å¯¹åº”çš„å•å…ƒæ ¼å·¦ä¸Šè§’的局部åæ ‡ã€‚\n" -"è¦èŽ·å¾—全局åæ ‡ï¼Œè¯·ä½¿ç”¨[method Node2D.to_global]。\n" +"è¦èŽ·å¾—全局ä½ç½®ï¼Œè¯·ä½¿ç”¨ [method Node2D.to_global]:\n" "[codeblock]\n" "var local_position = my_tilemap.map_to_world(map_position)\n" "var global_position = my_tilemap.to_global(local_position)\n" @@ -78807,17 +78947,18 @@ msgstr "" #: doc/classes/TileMap.xml msgid "Sets the given collision layer bit." -msgstr "设置指定碰撞层bitä½ã€‚" +msgstr "设置指定碰撞层比特ä½ã€‚" #: doc/classes/TileMap.xml msgid "Sets the given collision mask bit." -msgstr "设置指定碰撞é®ç½©bitä½ã€‚" +msgstr "设置指定碰撞é®ç½©æ¯”特ä½ã€‚" #: doc/classes/TileMap.xml msgid "" "Applies autotiling rules to the cell (and its adjacent cells) referenced by " "its grid-based X and Y coordinates." -msgstr "å¯¹åŸºäºŽç½‘æ ¼çš„Xå’ŒYåæ ‡æ‰€å¼•ç”¨çš„å•å…ƒæ ¼ï¼ŒåŠå…¶ç›¸é‚»å•å…ƒæ ¼ï¼Œåº”用自动平移规则。" +msgstr "" +"å¯¹åŸºäºŽç½‘æ ¼çš„ X å’Œ Y åæ ‡æ‰€å¼•ç”¨çš„å•å…ƒæ ¼ï¼ˆåŠå…¶ç›¸é‚»å•å…ƒæ ¼ï¼‰åº”用自动平移规则。" #: doc/classes/TileMap.xml msgid "" @@ -78826,8 +78967,8 @@ msgid "" "Calling with invalid (or missing) parameters applies autotiling rules for " "the entire tilemap." msgstr "" -"对指定区域内的å•å…ƒæ ¼åº”ç”¨è‡ªåŠ¨å¹³ç§»è§„åˆ™ï¼Œç”±åŸºäºŽç½‘æ ¼çš„Xå’ŒYåæ ‡æŒ‡å®šã€‚\n" -"ç”¨æ— æ•ˆçš„æˆ–ç¼ºå¤±çš„å‚数调用时,自动平铺规则应用于整个图å—地图。" +"对指定区域内的å•å…ƒæ ¼åº”ç”¨è‡ªåŠ¨å¹³ç§»è§„åˆ™ï¼ˆç”±åŸºäºŽç½‘æ ¼çš„ X å’Œ Y åæ ‡æŒ‡å®šï¼‰ã€‚\n" +"ç”¨æ— æ•ˆï¼ˆæˆ–ç¼ºå¤±ï¼‰çš„å‚数调用时,自动平铺规则应用于整个图å—地图。" #: doc/classes/TileMap.xml msgid "" @@ -78875,15 +79016,15 @@ msgstr "ä¾æ¬¡æŽ’列的图å—çš„å移é‡ã€‚å¯èƒ½çš„å–å€¼è§ [enum HalfOffset] msgid "" "The TileMap's quadrant size. Optimizes drawing by batching, using chunks of " "this size." -msgstr "图å—地图的象é™å¤§å°ã€‚使用这个尺寸的图å—,通过批处ç†ä¼˜åŒ–绘制。" +msgstr "该 TileMap 的象é™å¤§å°ã€‚会使用这个大å°çš„区å—对绘制进行批处ç†ä¼˜åŒ–。" #: doc/classes/TileMap.xml msgid "The TileMap's cell size." -msgstr "图å—地图的å•å…ƒå¤§å°ã€‚" +msgstr "该 TileMap çš„å•å…ƒæ ¼å¤§å°ã€‚" #: doc/classes/TileMap.xml msgid "Position for tile origin. See [enum TileOrigin] for possible values." -msgstr "图å—原点的åæ ‡ã€‚å¯èƒ½çš„å–å€¼è§ [enum TileOrigin]。" +msgstr "图å—原点的ä½ç½®ã€‚å¯èƒ½çš„å–å€¼è§ [enum TileOrigin]。" #: doc/classes/TileMap.xml msgid "" @@ -83220,9 +83361,9 @@ msgid "" "result at position [code]weight[/code]. [code]weight[/code] is on the range " "of 0.0 to 1.0, representing the amount of interpolation." msgstr "" -"用[code]pre_a[/code]å’Œ[code]post_b[/code]作为å¥æŸ„,在这个å‘é‡å’Œ[code]b[/code]" -"之间进行三次æ’值,并在[code]weight[/code]ä½ç½®è¿”回结果。[code]weight[/code]çš„" -"范围是0.0 到 1.0,表示æ’值的é‡ã€‚" +"用 [code]pre_a[/code] å’Œ [code]post_b[/code] 作为控制柄,在这个å‘é‡å’Œ " +"[code]b[/code] 之间进行三次æ’值,并在 [code]weight[/code] ä½ç½®è¿”回结果。" +"[code]weight[/code] 的范围是 0.0 到 1.0,表示æ’值的é‡ã€‚" #: doc/classes/Vector2.xml doc/classes/Vector3.xml msgid "" @@ -83501,9 +83642,9 @@ msgid "" "result at position [code]weight[/code]. [code]weight[/code] is on the range " "of 0.0 to 1.0, representing the amount of interpolation." msgstr "" -"用 [code]pre_a[/code] å’Œ [code]post_b[/code] 作为å¥æŸ„,在这个å‘é‡å’Œ [code]b[/" -"code] 之间进行三次æ’值,并在 [code]weight[/code] ä½ç½®è¿”回结果。[code]weight[/" -"code] 的范围是 0.0 到 1.0,表示æ’值的é‡ã€‚" +"用 [code]pre_a[/code] å’Œ [code]post_b[/code] 作为控制柄,在这个å‘é‡å’Œ " +"[code]b[/code] 之间进行三次æ’值,并在 [code]weight[/code] ä½ç½®è¿”回结果。" +"[code]weight[/code] 的范围是 0.0 到 1.0,表示æ’值的é‡ã€‚" #: doc/classes/Vector3.xml msgid "Returns the distance between this vector and [code]b[/code]." @@ -83524,11 +83665,11 @@ msgid "" "[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]." msgstr "" "返回æ¤å‘é‡ä¸Ž [code]b[/code] 的点积。这å¯ä»¥ç”¨æ¥æ¯”较两个å‘é‡ä¹‹é—´çš„角度。例如," -"è¿™å¯ä»¥ç”¨æ¥ç¡®å®šä¸€ä¸ªæ•Œäººæ˜¯å¦æ£é¢å¯¹çŽ©å®¶ã€‚\n" -"对于直角 90 度,点积将是 [code]0[/code],对于窄于 90 度的角度,点积大于 0,对" -"于宽于 90 度的角度,点积å°äºŽ 0。\n" -"当使用归一化å•ä½å‘é‡ï¼Œå‘é‡æœå‘相åæ–¹å‘时,结果总是在 [code]-1.0[/code](180 " -"度角)和 [code]1.0[/code](0 度角)之间,当å‘é‡å¯¹é½ã€‚\n" +"è¿™å¯ä»¥ç”¨æ¥ç¡®å®šæ•Œäººæ˜¯å¦é¢å¯¹çŽ©å®¶ã€‚\n" +"直角(90 度)的点积是 [code]0[/code],夹角å°äºŽ 90 度点积大于 0,夹角大于 90 " +"度点积å°äºŽ 0。\n" +"使用å•ä½ï¼ˆå½’一化)å‘é‡æ—¶ï¼Œç»“果总是在表示方å‘相åçš„ [code]-1.0[/code](180 度" +"角)和表示方å‘相åŒçš„ [code]1.0[/code](0 度角)之间。\n" "[b]注æ„:[/b][code]a.dot(b)[/code] 与 [code]b.dot(a)[/code] ç‰ä»·ã€‚" #: doc/classes/Vector3.xml @@ -83554,8 +83695,8 @@ msgid "" "constants. If all components are equal, this method returns [constant " "AXIS_X]." msgstr "" -"返回å‘é‡çš„最大值的轴。å‚阅 [code]AXIS_*[/code] 常é‡ã€‚如果所有分é‡éƒ½ç›¸ç‰ï¼Œè¯¥æ–¹" -"法返回 [constant AXIS_X]。" +"返回该å‘é‡ä¸å€¼æœ€å¤§çš„è½´ã€‚è§ [code]AXIS_*[/code] 常é‡ã€‚如果所有分é‡éƒ½ç›¸ç‰ï¼Œåˆ™è¯¥" +"方法返回 [constant AXIS_X]。" #: doc/classes/Vector3.xml msgid "" @@ -83563,8 +83704,8 @@ msgid "" "constants. If all components are equal, this method returns [constant " "AXIS_Z]." msgstr "" -"返回矢é‡çš„最å°å€¼çš„轴。å‚阅 [code]AXIS_*[/code] 常é‡ã€‚如果所有分é‡éƒ½ç›¸ç‰ï¼Œæœ¬æ–¹" -"法返回 [constant AXIS_Z]。" +"返回该å‘é‡ä¸å€¼æœ€å°çš„è½´ã€‚è§ [code]AXIS_*[/code] 常é‡ã€‚如果所有分é‡éƒ½ç›¸ç‰ï¼Œåˆ™è¯¥" +"方法返回 [constant AXIS_Z]。" #: doc/classes/Vector3.xml msgid "Returns the outer product with [code]b[/code]." @@ -83589,8 +83730,8 @@ msgid "" "clockwise direction when viewed from the side specified by the [code]axis[/" "code]." msgstr "" -"返回给定å‘é‡çš„带符å·çš„角度,å•ä½æ˜¯å¼§åº¦ã€‚当从[code]axis[/code]指定的一侧看,该" -"角度的符å·åœ¨é€†æ—¶é’ˆæ–¹å‘是æ£çš„,在顺时针方å‘是负的。" +"返回给定å‘é‡çš„带符å·çš„角度,å•ä½æ˜¯å¼§åº¦ã€‚当从 [code]axis[/code] 指定的一侧看," +"该角度的符å·åœ¨é€†æ—¶é’ˆæ–¹å‘是æ£çš„,在顺时针方å‘是负的。" #: doc/classes/Vector3.xml msgid "" @@ -83701,8 +83842,8 @@ msgid "" "value in the 25 - 30 range for hard braking." msgstr "" "é€šè¿‡æ–½åŠ ä¸€ä¸ªåˆ¶åŠ¨åŠ›ä½¿è½¦è¾†å‡é€Ÿã€‚åªæœ‰å½“车轮接触到表é¢æ—¶ï¼Œè½¦è¾†æ‰ä¼šå‡é€Ÿã€‚ä½ éœ€è¦æ–½" -"åŠ å¤šå°‘åŠ›æ¥ä½¿ä½ 的车辆充分å‡é€Ÿï¼Œå–决于车辆的[member RigidBody.mass]。对于一个质" -"é‡è®¾ç½®ä¸º1000的车辆,å°è¯•åœ¨25-30的范围内进行硬制动。" +"åŠ å¤šå°‘åŠ›æ¥ä½¿ä½ 的车辆充分å‡é€Ÿï¼Œå–决于车辆的 [member RigidBody.mass]。对于一个" +"è´¨é‡è®¾ç½®ä¸º 1000 的车辆,å°è¯•åœ¨ 25 到 30 的范围内进行硬制动。" #: doc/classes/VehicleBody.xml msgid "" @@ -83718,8 +83859,8 @@ msgid "" msgstr "" "é€šè¿‡æ–½åŠ ä¸€ä¸ªå¼•æ“ŽåŠ›æ¥åŠ 速车辆。åªæœ‰å½“ [member VehicleWheel.use_as_traction] 设" "置为 [code]true[/code] 并与表é¢æŽ¥è§¦çš„车轮æ‰ä¼šåŠ 速。车辆的 [member RigidBody." -"mass] å¯¹è½¦è¾†çš„åŠ é€Ÿåº¦æœ‰å½±å“。对于一个质é‡è®¾ç½®ä¸º 1000 的车辆,å¯ä»¥å°è¯•åœ¨ 25-50 " -"çš„èŒƒå›´å†…é€‰æ‹©åŠ é€Ÿåº¦çš„å€¼ã€‚\n" +"mass] å¯¹è½¦è¾†çš„åŠ é€Ÿåº¦æœ‰å½±å“。对于一个质é‡è®¾ç½®ä¸º 1000 的车辆,å¯ä»¥å°è¯•åœ¨ 25 到 " +"50 çš„èŒƒå›´å†…é€‰æ‹©åŠ é€Ÿåº¦çš„å€¼ã€‚\n" "[b]注æ„:[/b]模拟ä¸è€ƒè™‘齿轮的影å“ï¼Œå¦‚æžœä½ æƒ³æ¨¡æ‹Ÿé½¿è½®ï¼Œå°†éœ€è¦ä¸ºå…¶æ·»åŠ 逻辑。\n" "负值将导致车辆倒车。" @@ -83730,8 +83871,8 @@ msgid "" "VehicleWheel.use_as_steering] set to [code]true[/code] will automatically be " "rotated." msgstr "" -"车辆的转å‘角。将æ¤è®¾ç½®ä¸ºéžé›¶å€¼å°†å¯¼è‡´è½¦è¾†åœ¨ç§»åŠ¨æ—¶è½¬å‘。将[member VehicleWheel." -"use_as_steering]设置为 [code]true[/code]的车轮会自动旋转。" +"车辆的转å‘角。将æ¤è®¾ç½®ä¸ºéžé›¶å€¼å°†å¯¼è‡´è½¦è¾†åœ¨ç§»åŠ¨æ—¶è½¬å‘。将 [member " +"VehicleWheel.use_as_steering] 设置为 [code]true[/code] 的车轮会自动旋转。" #: doc/classes/VehicleWheel.xml msgid "Physics object that simulates the behavior of a wheel." @@ -83802,9 +83943,9 @@ msgid "" "car will keep bouncing as the spring keeps its energy. A good value for this " "is around 0.3 for a normal car, 0.5 for a race car." msgstr "" -"当弹簧被压缩时,应用在弹簧上的阻尼。这个值应该在0.0ï¼ˆæ— é˜»å°¼ï¼‰å’Œ1.0之间。0.0çš„" -"值æ„味ç€æ±½è½¦å°†æŒç»å¼¹è·³ï¼Œå› 为弹簧将ä¿æŒå…¶èƒ½é‡ã€‚一个好的值是,普通汽车0.3å·¦å³ï¼Œ" -"赛车0.5å·¦å³ã€‚" +"当弹簧被压缩时,应用在弹簧上的阻尼。这个值应该在 0.0ï¼ˆæ— é˜»å°¼ï¼‰å’Œ 1.0 之间。" +"0.0 的值æ„味ç€æ±½è½¦å°†æŒç»å¼¹è·³ï¼Œå› 为弹簧将ä¿æŒå…¶èƒ½é‡ã€‚普通汽车 0.3 å·¦å³ï¼Œèµ›è½¦ " +"0.5 å·¦å³æ¯”较好。" #: doc/classes/VehicleWheel.xml msgid "" @@ -83813,9 +83954,9 @@ msgid "" "higher than the [member damping_compression] property. For a [member " "damping_compression] value of 0.3, try a relaxation value of 0.5." msgstr "" -"放æ¾æ—¶æ–½åŠ 在弹簧上的阻尼。这个值应该在0.0ï¼ˆæ— é˜»å°¼ï¼‰å’Œ1.0之间。这个值应该总是" -"比 [member damping_compression] 属性ç¨é«˜ã€‚对于 [member damping_compression] " -"值0.3,å°è¯•æ”¾æ¾å€¼ä¸º0.5。" +"放æ¾æ—¶æ–½åŠ 在弹簧上的阻尼。这个值应该在 0.0ï¼ˆæ— é˜»å°¼ï¼‰å’Œ 1.0 之间。这个值应该总" +"是比 [member damping_compression] 属性ç¨é«˜ã€‚对于 [member " +"damping_compression] 值 0.3,å°è¯•æ”¾æ¾å€¼ä¸º 0.5。" #: doc/classes/VehicleWheel.xml msgid "" @@ -83846,9 +83987,9 @@ msgid "" "will not carry the weight of the vehicle. Good results are often obtained by " "a value that is about 3× to 4× this number." msgstr "" -"弹簧所能抵抗的最大力。æ¤å€¼åº”该高于[VehicleBody]çš„[member RigidBody.mass]çš„å››" -"分之一,å¦åˆ™å¼¹ç°§å°†æ— 法承载车辆的é‡é‡ã€‚通常由大约3×到4×这个数å—的值,以获得良" -"好的效果。" +"弹簧所能抵抗的最大力。æ¤å€¼åº”该高于 [VehicleBody] çš„ [member RigidBody.mass] " +"的四分之一,å¦åˆ™å¼¹ç°§å°†æ— 法承载车辆的é‡é‡ã€‚通常由大约 3× 到 4× 这个数å—的值," +"以获得良好的效果。" #: doc/classes/VehicleWheel.xml msgid "" @@ -83856,8 +83997,8 @@ msgid "" "50 for an off-road car, a value between 50 and 100 for a race car and try " "something around 200 for something like a Formula 1 car." msgstr "" -"这个值定义了悬架的刚度。越野车使用低于50的值,赛车使用50至100的值,åƒä¸€çº§æ–¹ç¨‹" -"å¼èµ›è½¦åˆ™å°è¯•200å·¦å³çš„值。" +"这个值定义了悬架的刚度。越野车使用低于 50 的值,赛车使用 50 至 100 的值,åƒä¸€" +"级方程å¼èµ›è½¦åˆ™å°è¯• 200 å·¦å³çš„值。" #: doc/classes/VehicleWheel.xml msgid "" @@ -83898,10 +84039,10 @@ msgid "" "simulate tire wear.\n" "It's best to set this to 1.0 when starting out." msgstr "" -"这决定了这个轮å的抓地力有多大。它与车轮所接触的表é¢çš„摩擦力设置相结åˆã€‚0.0æ„" -"味ç€æ²¡æœ‰æŠ“地力,1.0是æ£å¸¸æŠ“地力。对于漂移车的设置,å°è¯•å°†åŽè½®çš„抓地力设置得比" -"å‰è½®ç•¥ä½Žï¼Œæˆ–者使用较低的数值æ¥æ¨¡æ‹Ÿè½®èƒŽçš„磨æŸã€‚\n" -"在开始时最好将其设置为1.0。" +"这决定了这个轮å的抓地力有多大。它与车轮所接触的表é¢çš„摩擦力设置相结åˆã€‚0.0 " +"æ„味ç€æ²¡æœ‰æŠ“地力,1.0 是æ£å¸¸æŠ“地力。对于漂移车的设置,å°è¯•å°†åŽè½®çš„抓地力设置" +"得比å‰è½®ç•¥ä½Žï¼Œæˆ–者使用较低的数值æ¥æ¨¡æ‹Ÿè½®èƒŽçš„磨æŸã€‚\n" +"在开始时最好将其设置为 1.0。" #: doc/classes/VehicleWheel.xml msgid "The radius of the wheel in meters." @@ -83915,9 +84056,9 @@ msgid "" "will take when bottoming out, then use the rest length to move the wheel " "down to the position it should be in when the car is in rest." msgstr "" -"这是轮å从原点下é™çš„è·ç¦»ï¼Œä»¥ç±³ä¸ºå•ä½ã€‚ä¸è¦æŠŠè¿™ä¸ªè®¾ç½®ä¸º0.0,然åŽæŠŠè½¦è½®ç§»åˆ°ä½ç½®" -"上,而是把车轮的原点(Godotä¸çš„Gizmo)移到车轮触底时的ä½ç½®ï¼Œç„¶åŽä½¿ç”¨å‰©ä½™é•¿åº¦" -"将轮åå‘下移动到汽车é™æ¢æ—¶å®ƒåº”该所处ä½ç½®ã€‚" +"这是轮å从原点下é™çš„è·ç¦»ï¼Œä»¥ç±³ä¸ºå•ä½ã€‚ä¸è¦æŠŠè¿™ä¸ªè®¾ç½®ä¸º 0.0,然åŽæŠŠè½¦è½®ç§»åˆ°ä½" +"置上,而是把车轮的原点(Godot ä¸çš„å°å·¥å…·ï¼‰ç§»åˆ°è½¦è½®è§¦åº•æ—¶çš„ä½ç½®ï¼Œç„¶åŽä½¿ç”¨å‰©ä½™" +"长度将轮åå‘下移动到汽车é™æ¢æ—¶å®ƒåº”该所处ä½ç½®ã€‚" #: doc/classes/VehicleWheel.xml msgid "" @@ -83925,8 +84066,8 @@ msgid "" "your vehicle will be prone to rolling over, while a value of 0.0 will resist " "body roll." msgstr "" -"这个值会影å“车辆的滚动。如果所有车轮都设置为1.0,车辆将容易翻车,而0.0的值将" -"阻æ¢è½¦èº«ä¾§å€¾ã€‚" +"这个值会影å“车辆的滚动。如果所有车轮都设置为 1.0,车辆将容易翻车,而 0.0 的值" +"将阻æ¢è½¦èº«ä¾§å€¾ã€‚" #: doc/classes/VFlowContainer.xml msgid "Vertical flow container." @@ -83970,21 +84111,21 @@ msgstr "" #: doc/classes/VideoPlayer.xml msgid "Returns the current frame as a [Texture]." -msgstr "将当å‰å¸§ä½œä¸º[Texture]返回。" +msgstr "将当å‰å¸§ä½œä¸º [Texture] 返回。" #: doc/classes/VideoPlayer.xml msgid "" "Returns [code]true[/code] if the video is playing.\n" "[b]Note:[/b] The video is still considered playing if paused during playback." msgstr "" -"如果视频æ£åœ¨æ’放,返回 [code]true[/code] 。\n" +"如果视频æ£åœ¨æ’放,返回 [code]true[/code]。\n" "[b]注æ„:[/b]如果在æ’放过程ä¸æš‚åœï¼Œè§†é¢‘ä»è¢«è®¤ä¸ºåœ¨æ’放。" #: doc/classes/VideoPlayer.xml msgid "" "Starts the video playback from the beginning. If the video is paused, this " "will not unpause the video." -msgstr "从头开始æ’放视频。如果视频暂åœï¼Œè¿™ä¸ä¼šå–消暂åœã€‚" +msgstr "从头开始æ’放视频。如果视频处于暂åœçŠ¶æ€ï¼Œä¸ä¼šå–消暂åœã€‚" #: doc/classes/VideoPlayer.xml msgid "" @@ -83992,8 +84133,8 @@ msgid "" "[b]Note:[/b] Although the stream position will be set to 0, the first frame " "of the video stream won't become the current frame." msgstr "" -"åœæ¢è§†é¢‘æ’放并将视频æµä½ç½®è®¾ç½®ä¸º0。\n" -"[b]注æ„:[/b]虽然视频æµä½ç½®å°†è¢«è®¾ç½®ä¸º0,但视频æµçš„第一帧ä¸ä¼šæˆä¸ºå½“å‰å¸§ã€‚" +"åœæ¢è§†é¢‘æ’放并将视频æµä½ç½®è®¾ç½®ä¸º 0。\n" +"[b]注æ„:[/b]虽然视频æµä½ç½®å°†è¢«è®¾ç½®ä¸º 0,但视频æµçš„第一帧ä¸ä¼šæˆä¸ºå½“å‰å¸§ã€‚" #: doc/classes/VideoPlayer.xml msgid "The embedded audio track to play." @@ -84044,7 +84185,7 @@ msgstr "音频音é‡ä¸ºçº¿æ€§å€¼ã€‚" #: doc/classes/VideoPlayer.xml msgid "Audio volume in dB." -msgstr "音频音é‡ï¼Œå•ä½æ˜¯dB。" +msgstr "音频音é‡ï¼Œå•ä½æ˜¯ dB。" #: doc/classes/VideoPlayer.xml msgid "Emitted when playback is finished." @@ -84060,8 +84201,8 @@ msgid "" "[VideoStream] can all be used as resource types to play back videos in " "[VideoPlayer]." msgstr "" -"所有视频æµçš„资æºç±»åž‹åŸºç±»ã€‚派生自[VideoStream]的类都å¯ä»¥ä½œä¸ºèµ„æºç±»åž‹ï¼Œåœ¨" -"[VideoPlayer]ä¸æ’放视频。" +"所有视频æµçš„资æºç±»åž‹åŸºç±»ã€‚派生自 [VideoStream] 的类都å¯ä»¥ä½œä¸ºèµ„æºç±»åž‹ï¼Œåœ¨ " +"[VideoPlayer] ä¸æ’放视频。" #: modules/gdnative/doc_classes/VideoStreamGDNative.xml msgid "[VideoStream] resource for video formats implemented via GDNative." @@ -84081,7 +84222,7 @@ msgstr "" #: modules/gdnative/doc_classes/VideoStreamGDNative.xml msgid "Returns the video file handled by this [VideoStreamGDNative]." -msgstr "返回由这个[VideoStreamGDNative]处ç†çš„视频文件。" +msgstr "返回由这个 [VideoStreamGDNative] 处ç†çš„视频文件。" #: modules/gdnative/doc_classes/VideoStreamGDNative.xml msgid "" @@ -84089,12 +84230,12 @@ msgid "" "supported extensions depend on the GDNative plugins used to expose video " "formats." msgstr "" -"设置æ¤[VideoStreamGDNative]资æºå¤„ç†çš„视频文件。支æŒçš„扩展å–决于,用于公开视频" -"æ ¼å¼çš„GDNativeæ’件。" +"è®¾ç½®æ¤ [VideoStreamGDNative] 资æºå¤„ç†çš„视频文件。支æŒçš„扩展å–决于,用于公开视" +"é¢‘æ ¼å¼çš„ GDNative æ’件。" #: modules/theora/doc_classes/VideoStreamTheora.xml msgid "[VideoStream] resource for Ogg Theora videos." -msgstr "[VideoStream] Ogg Theora视频的资æºã€‚" +msgstr "[VideoStream] Ogg Theora 视频的资æºã€‚" #: modules/theora/doc_classes/VideoStreamTheora.xml msgid "" @@ -84227,7 +84368,7 @@ msgid "" "Returns the first valid [World] for this viewport, searching the [member " "world] property of itself and any Viewport ancestor." msgstr "" -"返回该视窗的首个有效 [World],在它自身åŠä»»ä½• Viewport 祖先节点的 [member " +"返回该视å£çš„首个有效 [World],在它自身åŠä»»ä½• Viewport 祖先节点的 [member " "world] 属性ä¸æŸ¥æ‰¾ã€‚" #: doc/classes/Viewport.xml @@ -84235,7 +84376,7 @@ msgid "" "Returns the first valid [World2D] for this viewport, searching the [member " "world_2d] property of itself and any Viewport ancestor." msgstr "" -"返回该视窗的首个有效 [World2D],在它自身åŠä»»ä½• Viewport 祖先节点的 [member " +"返回该视å£çš„首个有效 [World2D],在它自身åŠä»»ä½• Viewport 祖先节点的 [member " "world_2d] 属性ä¸æŸ¥æ‰¾ã€‚" #: doc/classes/Viewport.xml @@ -84290,7 +84431,7 @@ msgstr "" #: doc/classes/Viewport.xml msgid "Returns the viewport's RID from the [VisualServer]." -msgstr "从 [VisualServer] 返回该视窗的 RID。" +msgstr "从 [VisualServer] 返回该视å£çš„ RID。" #: doc/classes/Viewport.xml msgid "Returns the visible rectangle in global screen coordinates." @@ -84327,8 +84468,7 @@ msgid "" "Returns [code]true[/code] if the size override is enabled. See [method " "set_size_override]." msgstr "" -"如果å¯ç”¨äº†å°ºå¯¸è¦†ç›–,则返回 [code]true[/code]。请å‚阅 [method " -"set_size_override]。" +"如果å¯ç”¨äº†å°ºå¯¸è¦†ç›–,则返回 [code]true[/code]ã€‚è§ [method set_size_override]。" #: doc/classes/Viewport.xml msgid "" @@ -84363,7 +84503,7 @@ msgid "" "size. If the size parameter is [code](-1, -1)[/code], it won't update the " "size." msgstr "" -"设置该视窗的尺寸覆盖。如果 [code]enable[/code] å‚数是 [code]true[/code],就会" +"设置该视å£çš„尺寸覆盖。如果 [code]enable[/code] å‚数是 [code]true[/code],就会" "使用覆盖,å¦åˆ™å°±ä½¿ç”¨é»˜è®¤å°ºå¯¸ã€‚如果尺寸å‚数是 [code](-1, -1)[/code],它将ä¸ä¼š" "更新尺寸。" @@ -84380,15 +84520,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "If [code]true[/code], the viewport will be used in AR/VR process." -msgstr "如果为 [code]true[/code],该视窗将用于AR/VR进程。" +msgstr "如果为 [code]true[/code],该视å£å°†ç”¨äºŽAR/VR进程。" #: doc/classes/Viewport.xml msgid "If [code]true[/code], the viewport will process 2D audio streams." -msgstr "如果为 [code]true[/code]ï¼Œè¯¥è§†çª—å°†å¤„ç† 2D 音频æµã€‚" +msgstr "如果为 [code]true[/code],该视å£å°†å¤„ç† 2D 音频æµã€‚" #: doc/classes/Viewport.xml msgid "If [code]true[/code], the viewport will process 3D audio streams." -msgstr "如果为 [code]true[/code]ï¼Œè¯¥è§†çª—å°†å¤„ç† 3D 音频æµã€‚" +msgstr "如果为 [code]true[/code],该视å£å°†å¤„ç† 3D 音频æµã€‚" #: doc/classes/Viewport.xml msgid "" @@ -84396,16 +84536,22 @@ msgid "" "positions of all child [CanvasItem]s. This is relative to the global canvas " "transform of the viewport." msgstr "" -"该视窗的画布å˜æ¢ï¼Œå¯¹æ”¹å˜æ‰€æœ‰å [CanvasItem] çš„å±å¹•ä½ç½®å¾ˆæœ‰ç”¨ã€‚相对于该视窗的" +"该视å£çš„画布å˜æ¢ï¼Œå¯¹æ”¹å˜æ‰€æœ‰å [CanvasItem] çš„å±å¹•ä½ç½®å¾ˆæœ‰ç”¨ã€‚相对于该视å£çš„" "全局画布å˜æ¢ã€‚" #: doc/classes/Viewport.xml +#, fuzzy msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -84420,11 +84566,12 @@ msgid "The overlay mode for test rendered geometry in debug purposes." msgstr "åœ¨è°ƒè¯•æ—¶ï¼Œç”¨äºŽæµ‹è¯•æ¸²æŸ“çš„å‡ ä½•å›¾å½¢çš„å åŠ æ¨¡å¼ã€‚" #: doc/classes/Viewport.xml +#, fuzzy msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" -"如果为 [code]true[/code],该视窗将ç¦ç”¨ 3D 渲染。对于实际ç¦ç”¨ï¼Œä½¿ç”¨ " +"如果为 [code]true[/code],该视å£å°†ç¦ç”¨ 3D 渲染。对于实际ç¦ç”¨ï¼Œä½¿ç”¨ " "[code]usage[/code]。" #: doc/classes/Viewport.xml @@ -84438,24 +84585,24 @@ msgid "" msgstr "" "å¯ç”¨å¿«é€Ÿè¿‘似抗锯齿。FXAA 是一ç§æµè¡Œçš„å±å¹•ç©ºé—´æŠ—锯齿方法,它的速度很快,但会使" "图åƒçœ‹èµ·æ¥å¾ˆæ¨¡ç³Šï¼Œç‰¹åˆ«æ˜¯åœ¨è¾ƒä½Žçš„分辨率。在 1440p å’Œ 4K è¿™æ ·çš„å¤§åˆ†è¾¨çŽ‡ä¸‹ï¼Œå®ƒä»" -"然å¯ä»¥è¾ƒå¥½å·¥ä½œã€‚一些æŸå¤±çš„é”度å¯ä»¥é€šè¿‡å¯ç”¨å¯¹æ¯”度适应性é”化æ¥æ¢å¤ï¼Œå‚阅 " -"[member sharpen_intensity]。" +"然å¯ä»¥è¾ƒå¥½å·¥ä½œã€‚一些æŸå¤±çš„é”度å¯ä»¥é€šè¿‡å¯ç”¨å¯¹æ¯”度适应性é”化æ¥æ¢å¤ï¼ˆè§ [member " +"sharpen_intensity])。" #: doc/classes/Viewport.xml msgid "" "The global canvas transform of the viewport. The canvas transform is " "relative to this." -msgstr "该视窗的全局画布å˜æ¢ã€‚画布å˜æ¢æ˜¯ç›¸å¯¹äºŽè¿™ä¸ªçš„。" +msgstr "该视å£çš„全局画布å˜æ¢ã€‚画布å˜æ¢æ˜¯ç›¸å¯¹äºŽè¿™ä¸ªçš„。" #: doc/classes/Viewport.xml msgid "If [code]true[/code], the viewport will not receive input events." -msgstr "如果为 [code]true[/code],该视窗将ä¸æŽ¥æ”¶è¾“入事件。" +msgstr "如果为 [code]true[/code],该视å£å°†ä¸æŽ¥æ”¶è¾“入事件。" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], the GUI controls on the viewport will lay pixel " "perfectly." -msgstr "如果为 [code]true[/code],该视窗上的 GUI 控件将完美地放置åƒç´ 。" +msgstr "如果为 [code]true[/code],该视å£ä¸Šçš„ GUI 控件将完美地放置åƒç´ 。" #: doc/classes/Viewport.xml msgid "" @@ -84468,7 +84615,7 @@ msgid "" "[constant USAGE_3D_NO_EFFECTS], since HDR is not supported for 2D.\n" "[b]Note:[/b] Only available on the GLES3 backend." msgstr "" -"如果为 [code]true[/code],视窗的渲染将获益于高动æ€èŒƒå›´ç®—法。高动æ€èŒƒå›´å…许视" +"如果为 [code]true[/code],视å£çš„渲染将获益于高动æ€èŒƒå›´ç®—法。高动æ€èŒƒå›´å…许视" "窗接收 0-1 范围以外的数值。在 Godot ä¸ HDR 默认使用åŠç²¾åº¦æµ®ç‚¹æ•°ï¼ˆ16 ä½ï¼‰ã€‚è¦" "使用全精度浮点数(32 ä½ï¼‰ï¼Œè¯·å¯ç”¨ [member use_32_bpc_depth]。\n" "[b]注æ„:[/b]需è¦å°† [member usage] 设置为 [constant USAGE_3D] 或 [constant " @@ -84488,11 +84635,11 @@ msgid "" "require input in linear color space!" msgstr "" "如果为 [code]true[/code],3D 渲染åŽçš„结果将ä¸ä¼šåº”用线性到 sRGB 的颜色转æ¢ã€‚当" -"è§†çª—è¢«ç”¨ä½œæ¸²æŸ“ç›®æ ‡æ—¶ï¼Œè¿™ç‚¹å¾ˆé‡è¦ï¼Œå› 为渲染结果会被用作å¦ä¸€ä¸ªè§†çª—ä¸æ¸²æŸ“çš„ 3D " -"物体的纹ç†ã€‚如果视窗被用æ¥åˆ›å»ºä¸åŸºäºŽé¢œè‰²çš„æ•°æ®ï¼Œå™ªå£°ã€é«˜åº¦å›¾ã€é‡‡å›¾ç‰ï¼Œè¿™ä¹Ÿå¾ˆ" -"é‡è¦ã€‚当视窗被用作 2D 对象的纹ç†æ—¶ï¼Œæˆ–è€…è§†çª—æ˜¯ä½ çš„æœ€ç»ˆè¾“å‡ºæ—¶ï¼Œè¯·ä¸è¦å¯ç”¨è¿™ä¸ª" +"视å£è¢«ç”¨ä½œæ¸²æŸ“ç›®æ ‡æ—¶ï¼Œè¿™ç‚¹å¾ˆé‡è¦ï¼Œå› 为渲染结果会被用作å¦ä¸€ä¸ªè§†çª—ä¸æ¸²æŸ“çš„ 3D " +"物体的纹ç†ã€‚如果视å£è¢«ç”¨æ¥åˆ›å»ºä¸åŸºäºŽé¢œè‰²çš„æ•°æ®ï¼Œå™ªå£°ã€é«˜åº¦å›¾ã€é‡‡å›¾ç‰ï¼Œè¿™ä¹Ÿå¾ˆ" +"é‡è¦ã€‚当视å£è¢«ç”¨ä½œ 2D 对象的纹ç†æ—¶ï¼Œæˆ–者视å£æ˜¯ä½ 的最终输出时,请ä¸è¦å¯ç”¨è¿™ä¸ª" "功能。对于 GLES2 驱动æ¥è¯´ï¼Œè¿™å°†æŠŠ sRGB 输出转æ¢ä¸ºçº¿æ€§è¾“出,这应该åªç”¨äºŽéœ€è¦çº¿" -"性色彩空间输入的VRæ’件!" +"性色彩空间输入的 VR æ’件!" #: doc/classes/Viewport.xml msgid "" @@ -84500,22 +84647,22 @@ msgid "" "edges at the cost of significantly worse performance. A value of 4 is best " "unless targeting very high-end systems." msgstr "" -"多é‡é‡‡æ ·æŠ—锯齿模å¼ã€‚一个较高的数å—会使边缘更平滑,但代价是性能明显下é™ã€‚除éž" -"是针对éžå¸¸é«˜ç«¯çš„系统,å¦åˆ™æ•°å€¼ä¸º4是最好的。" +"多é‡é‡‡æ ·æŠ—锯齿模å¼ã€‚æ•°å—越高边缘越平滑,但代价是性能明显下é™ã€‚除éžæ˜¯é’ˆå¯¹éžå¸¸" +"高端的系统,å¦åˆ™æ•°å€¼ä¸º 4 是最好的。" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], the viewport will use a unique copy of the [World] " "defined in [member world]." msgstr "" -"如果为 [code]true[/code],该视窗将使用 [member world] ä¸å®šä¹‰çš„ [World] 的唯一" +"如果为 [code]true[/code],该视å£å°†ä½¿ç”¨ [member world] ä¸å®šä¹‰çš„ [World] 的唯一" "副本。" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], the objects rendered by viewport become subjects of " "mouse picking process." -msgstr "如果为 [code]true[/code],该视窗渲染的对象将æˆä¸ºé¼ æ ‡æ‹¾å–过程的对象。" +msgstr "如果为 [code]true[/code],该视å£æ¸²æŸ“的对象将æˆä¸ºé¼ æ ‡æ‹¾å–过程的对象。" #: doc/classes/Viewport.xml msgid "" @@ -84526,7 +84673,7 @@ msgid "" "information see [method VisualServer.viewport_set_render_direct_to_screen]." msgstr "" "如果为 [code]true[/code],会直接将该 Viewport 渲染到å±å¹•ä¸Šï¼Œè€Œä¸æ˜¯æ¸²æŸ“åˆ°æ ¹è§†" -"窗上。åªåœ¨ GLES2 ä¸å¯ç”¨ã€‚这是一个低级别的优化,在大多数情况下ä¸åº”该使用。如果" +"å£ä¸Šã€‚åªåœ¨ GLES2 ä¸å¯ç”¨ã€‚这是一个低级别的优化,在大多数情况下ä¸åº”该使用。如果" "使用,从该 Viewport 或从 [code]SCREEN_TEXTURE[/code] 读å–å°†å˜å¾—ä¸å¯ç”¨ã€‚更多信" "æ¯å‚阅 [method VisualServer.viewport_set_render_direct_to_screen]。" @@ -84535,12 +84682,12 @@ msgid "" "The clear mode when viewport used as a render target.\n" "[b]Note:[/b] This property is intended for 2D usage." msgstr "" -"è§†çª—ç”¨ä½œæ¸²æŸ“ç›®æ ‡æ—¶çš„æ¸…é™¤æ¨¡å¼ã€‚\n" +"视å£ç”¨ä½œæ¸²æŸ“ç›®æ ‡æ—¶çš„æ¸…é™¤æ¨¡å¼ã€‚\n" "[b]注æ„:[/b]æ¤å±žæ€§é€‚用于 2D 使用。" #: doc/classes/Viewport.xml msgid "The update mode when viewport used as a render target." -msgstr "è§†çª—ç”¨ä½œæ¸²æŸ“ç›®æ ‡æ—¶çš„æ›´æ–°æ¨¡å¼ã€‚" +msgstr "视å£ç”¨ä½œæ¸²æŸ“ç›®æ ‡æ—¶çš„æ›´æ–°æ¨¡å¼ã€‚" #: doc/classes/Viewport.xml msgid "" @@ -84598,7 +84745,7 @@ msgid "" "The width and height of viewport. Must be set to a value greater than or " "equal to 2 pixels on both dimensions. Otherwise, nothing will be displayed." msgstr "" -"视窗的宽度和高度。必须在两个维度上设置为大于或ç‰äºŽ 2 åƒç´ 的值。å¦åˆ™ï¼Œå°†ä¸ä¼šæ˜¾" +"视å£çš„宽度和高度。必须在两个维度上设置为大于或ç‰äºŽ 2 åƒç´ 的值。å¦åˆ™ï¼Œå°†ä¸ä¼šæ˜¾" "示任何东西。" #: doc/classes/Viewport.xml @@ -84609,11 +84756,14 @@ msgstr "如果为 [code]true[/code],尺寸é‡å†™ä¹Ÿä¼šå½±å“拉伸。" msgid "" "If [code]true[/code], the viewport should render its background as " "transparent." -msgstr "如果为 [code]true[/code],该视区应使其背景渲染为é€æ˜Žã€‚" +msgstr "如果为 [code]true[/code],该视å£åº”使其背景渲染为é€æ˜Žã€‚" #: doc/classes/Viewport.xml +#, fuzzy msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -84657,7 +84807,7 @@ msgid "" "Emitted when the size of the viewport is changed, whether by [method " "set_size_override], resize of window, or some other means." msgstr "" -"当视窗的大å°è¢«æ”¹å˜æ—¶ï¼Œæ— 论是通过 [method set_size_override]ã€è°ƒæ•´çª—å£çš„大å°ï¼Œ" +"当视å£çš„大å°è¢«æ”¹å˜æ—¶ï¼Œæ— 论是通过 [method set_size_override]ã€è°ƒæ•´çª—å£çš„大å°ï¼Œ" "还是其他方å¼ï¼Œéƒ½ä¼šè§¦å‘。" #: doc/classes/Viewport.xml @@ -84877,10 +85027,10 @@ msgid "" "[b]Note:[/b] [member stretch] must be [code]true[/code] for this property to " "work." msgstr "" -"将视窗的有效分辨率除以这个值,åŒæ—¶ä¿ç•™å…¶æ¯”例。这å¯ä»¥ç”¨æ¥åŠ 快渲染速度。\n" -"例如,一个1280×720的视窗,如果[member stretch_shrink]设置为[code]2[/code],将" -"以640×360的尺寸进行渲染,åŒæ—¶åœ¨å®¹å™¨ä¸å æ®åŒæ ·çš„尺寸。\n" -"[b]注æ„:[/b][member stretch]拉伸必须是[code]true[/code],这个属性æ‰èƒ½å‘挥作" +"将视å£çš„有效分辨率除以这个值,åŒæ—¶ä¿ç•™å…¶æ¯”例。这å¯ä»¥ç”¨æ¥åŠ 快渲染速度。\n" +"例如,将 1280×720 的视å£çš„ [member stretch_shrink] 设置为 [code]2[/code],将" +"以 640×360 的尺寸进行渲染,åŒæ—¶åœ¨å®¹å™¨ä¸å æ®åŒæ ·çš„尺寸。\n" +"[b]注æ„:[/b][member stretch] 必须是 [code]true[/code],这个属性æ‰èƒ½å‘挥作" "用。" #: doc/classes/ViewportTexture.xml @@ -84945,27 +85095,27 @@ msgstr "返回由给定的 [enum Enabler] 常é‡æ ‡è¯†çš„å¯ç”¨ç¨‹åºæ˜¯å¦å¤„äº #: doc/classes/VisibilityEnabler.xml doc/classes/VisibilityEnabler2D.xml msgid "" "Sets active state of the enabler identified by given [enum Enabler] constant." -msgstr "设置由给定的[enum Enabler]常é‡è¯†åˆ«çš„å¯ç”¨ç¨‹åºçš„活动状æ€ã€‚" +msgstr "设置由给定的 [enum Enabler] 常é‡è¯†åˆ«çš„å¯ç”¨ç¨‹åºçš„活动状æ€ã€‚" #: doc/classes/VisibilityEnabler.xml msgid "If [code]true[/code], [RigidBody] nodes will be paused." -msgstr "如果为 [code]true[/code],[RigidBody]节点将被暂åœã€‚" +msgstr "如果为 [code]true[/code],[RigidBody] 节点将被暂åœã€‚" #: doc/classes/VisibilityEnabler.xml doc/classes/VisibilityEnabler2D.xml msgid "If [code]true[/code], [AnimationPlayer] nodes will be paused." -msgstr "如果为 [code]true[/code],[AnimationPlayer]节点将被暂åœã€‚" +msgstr "如果为 [code]true[/code],[AnimationPlayer] 节点将被暂åœã€‚" #: doc/classes/VisibilityEnabler.xml doc/classes/VisibilityEnabler2D.xml msgid "This enabler will pause [AnimationPlayer] nodes." -msgstr "这个å¯ç”¨ç¨‹åºå°†æš‚åœ[AnimationPlayer]节点。" +msgstr "这个å¯ç”¨ç¨‹åºå°†æš‚åœ [AnimationPlayer] 节点。" #: doc/classes/VisibilityEnabler.xml msgid "This enabler will freeze [RigidBody] nodes." -msgstr "这个å¯ç”¨ç¨‹åºå°†å†»ç»“[RigidBody]节点。" +msgstr "这个å¯ç”¨ç¨‹åºå°†å†»ç»“ [RigidBody] 节点。" #: doc/classes/VisibilityEnabler.xml doc/classes/VisibilityEnabler2D.xml msgid "Represents the size of the [enum Enabler] enum." -msgstr "表示[enum Enabler]枚举的大å°ã€‚" +msgstr "表示 [enum Enabler] 枚举的大å°ã€‚" #: doc/classes/VisibilityEnabler2D.xml msgid "" @@ -84981,38 +85131,39 @@ msgid "" "[b]Note:[/b] VisibilityEnabler2D will not affect nodes added after scene " "initialization." msgstr "" -"VisibilityEnabler2D会在[RigidBody2D]ã€[AnimationPlayer]和其他节点ä¸å¯è§æ—¶ç¦ç”¨" -"它们。它åªä¼šå½±å“与VisibilityEnabler2Dçš„æ ¹èŠ‚ç‚¹ç›¸åŒçš„节点,以åŠæ ¹èŠ‚点本身。\n" -"å¦‚æžœä½ åªæƒ³æŽ¥æ”¶é€šçŸ¥ï¼Œè¯·ä½¿ç”¨[VisibilityNotifier2D]代替。\n" -"[b]注æ„:[/b]ç”±äºŽæ€§èƒ½åŽŸå› ï¼ŒVisibilityEnabler2D使用一个近似的å¯å‘å¼æ–¹æ³•ï¼Œå…¶ç²¾" +"VisibilityEnabler2D 会在 [RigidBody2D]ã€[AnimationPlayer] 和其他节点ä¸å¯è§æ—¶" +"ç¦ç”¨å®ƒä»¬ã€‚它åªä¼šå½±å“与 VisibilityEnabler2D çš„æ ¹èŠ‚ç‚¹ç›¸åŒçš„节点,以åŠæ ¹èŠ‚点本" +"身。\n" +"å¦‚æžœä½ åªæƒ³æŽ¥æ”¶é€šçŸ¥ï¼Œè¯·ä½¿ç”¨ [VisibilityNotifier2D] 代替。\n" +"[b]注æ„:[/b]ç”±äºŽæ€§èƒ½åŽŸå› ï¼ŒVisibilityEnabler2D 使用一个近似的å¯å‘å¼æ–¹æ³•ï¼Œå…¶ç²¾" "度由 [member ProjectSettings.world/2d/cell_size] å†³å®šã€‚å¦‚æžœä½ éœ€è¦ç²¾ç¡®çš„å¯è§æ€§" -"检查,请使用å¦ä¸€ç§æ–¹æ³•ï¼Œä¾‹å¦‚æ·»åŠ ä¸€ä¸ª[Area2D]节点作为[Camera2D]节点的å节" +"检查,请使用å¦ä¸€ç§æ–¹æ³•ï¼Œä¾‹å¦‚æ·»åŠ ä¸€ä¸ª [Area2D] 节点作为 [Camera2D] 节点的å节" "点。\n" -"[b]注æ„:[/b]VisibilityEnabler2Dä¸ä¼šå½±å“场景åˆå§‹åŒ–åŽæ·»åŠ 的节点。" +"[b]注æ„:[/b]VisibilityEnabler2D ä¸ä¼šå½±å“场景åˆå§‹åŒ–åŽæ·»åŠ 的节点。" #: doc/classes/VisibilityEnabler2D.xml msgid "If [code]true[/code], [RigidBody2D] nodes will be paused." -msgstr "如果为 [code]true[/code],[RigidBody2D]节点将被暂åœã€‚" +msgstr "如果为 [code]true[/code],[RigidBody2D] 节点将被暂åœã€‚" #: doc/classes/VisibilityEnabler2D.xml msgid "If [code]true[/code], [AnimatedSprite] nodes will be paused." -msgstr "如果为 [code]true[/code],[AnimatedSprite]节点将被暂åœã€‚" +msgstr "如果为 [code]true[/code],[AnimatedSprite] 节点将被暂åœã€‚" #: doc/classes/VisibilityEnabler2D.xml msgid "If [code]true[/code], [Particles2D] nodes will be paused." -msgstr "如果为 [code]true[/code],[Particles2D]节点将被暂åœã€‚" +msgstr "如果为 [code]true[/code],[Particles2D] 节点将被暂åœã€‚" #: doc/classes/VisibilityEnabler2D.xml msgid "" "If [code]true[/code], the parent's [method Node._physics_process] will be " "stopped." msgstr "" -"如果为 [code]true[/code],父级的[method Node._physics_process]将被åœæ¢ã€‚" +"如果为 [code]true[/code],父级的 [method Node._physics_process] 将被åœæ¢ã€‚" #: doc/classes/VisibilityEnabler2D.xml msgid "" "If [code]true[/code], the parent's [method Node._process] will be stopped." -msgstr "如果为 [code]true[/code],父级的[method Node._process]将被åœæ¢ã€‚" +msgstr "如果为 [code]true[/code],父级的 [method Node._process] 将被åœæ¢ã€‚" #: doc/classes/VisibilityEnabler2D.xml msgid "This enabler will freeze [RigidBody2D] nodes." @@ -85075,7 +85226,7 @@ msgstr "" #: doc/classes/VisibilityNotifier.xml msgid "The VisibilityNotifier's bounding box." -msgstr "VisibilityNotifier的边界框。" +msgstr "VisibilityNotifier 的边界框。" #: doc/classes/VisibilityNotifier.xml msgid "" @@ -85093,19 +85244,19 @@ msgstr "" #: doc/classes/VisibilityNotifier.xml msgid "Emitted when the VisibilityNotifier enters a [Camera]'s view." -msgstr "当VisibilityNotifier进入[Camera]的视图时触å‘。" +msgstr "当 VisibilityNotifier 进入 [Camera] 的视图时触å‘。" #: doc/classes/VisibilityNotifier.xml msgid "Emitted when the VisibilityNotifier exits a [Camera]'s view." -msgstr "当VisibilityNotifier退出[Camera]的视图时触å‘。" +msgstr "当 VisibilityNotifier 退出 [Camera] 的视图时触å‘。" #: doc/classes/VisibilityNotifier.xml msgid "Emitted when the VisibilityNotifier enters the screen." -msgstr "当VisibilityNotifier进入å±å¹•æ—¶è§¦å‘。" +msgstr "当 VisibilityNotifier 进入å±å¹•æ—¶è§¦å‘。" #: doc/classes/VisibilityNotifier.xml msgid "Emitted when the VisibilityNotifier exits the screen." -msgstr "当VisibilityNotifier退出å±å¹•æ—¶è§¦å‘。" +msgstr "当 VisibilityNotifier 退出å±å¹•æ—¶è§¦å‘。" #: doc/classes/VisibilityNotifier2D.xml msgid "" @@ -85119,12 +85270,13 @@ msgid "" "world/2d/cell_size]. If you need precise visibility checking, use another " "method such as adding an [Area2D] node as a child of a [Camera2D] node." msgstr "" -"VisibilityNotifier2D检测它在å±å¹•ä¸Šæ˜¯å¦å¯è§ã€‚当它的边界矩形进入或退出å±å¹•æˆ–视" -"窗时,它也会å‘出通知。\n" -"å¦‚æžœä½ æƒ³è®©èŠ‚ç‚¹åœ¨é€€å‡ºå±å¹•æ—¶è‡ªåŠ¨ç¦ç”¨ï¼Œè¯·ä½¿ç”¨[VisibilityEnabler2D]代替。\n" -"[b]注æ„:[/b]ç”±äºŽæ€§èƒ½åŽŸå› ï¼ŒVisibilityNotifier2D使用一个近似的å¯å‘å¼æ–¹æ³•ï¼Œå…¶ç²¾" -"度由 [member ProjectSettings.world/2d/cell_size] å†³å®šã€‚å¦‚æžœä½ éœ€è¦ç²¾ç¡®çš„å¯è§æ€§" -"检查,请使用å¦ä¸€ç§æ–¹æ³•ï¼Œå¦‚æ·»åŠ ä¸€ä¸ª[Area2D]节点作为[Camera2D]节点的å节点。" +"VisibilityNotifier2D 检测它在å±å¹•ä¸Šæ˜¯å¦å¯è§ã€‚当它的边界矩形进入或退出å±å¹•æˆ–视" +"å£æ—¶ï¼Œå®ƒä¹Ÿä¼šå‘出通知。\n" +"å¦‚æžœä½ æƒ³è®©èŠ‚ç‚¹åœ¨é€€å‡ºå±å¹•æ—¶è‡ªåŠ¨ç¦ç”¨ï¼Œè¯·ä½¿ç”¨ [VisibilityEnabler2D] 代替。\n" +"[b]注æ„:[/b]ç”±äºŽæ€§èƒ½åŽŸå› ï¼ŒVisibilityNotifier2D 使用一个近似的å¯å‘å¼æ–¹æ³•ï¼Œå…¶" +"精度由 [member ProjectSettings.world/2d/cell_size] å†³å®šã€‚å¦‚æžœä½ éœ€è¦ç²¾ç¡®çš„å¯è§" +"性检查,请使用å¦ä¸€ç§æ–¹æ³•ï¼Œå¦‚æ·»åŠ ä¸€ä¸ª [Area2D] 节点作为 [Camera2D] 节点的å节" +"点。" #: doc/classes/VisibilityNotifier2D.xml msgid "" @@ -85140,27 +85292,27 @@ msgstr "" #: doc/classes/VisibilityNotifier2D.xml msgid "The VisibilityNotifier2D's bounding rectangle." -msgstr "VisibilityNotifier2D的边界矩形。" +msgstr "VisibilityNotifier2D 的边界矩形。" #: doc/classes/VisibilityNotifier2D.xml msgid "Emitted when the VisibilityNotifier2D enters the screen." -msgstr "当VisibilityNotifier2D进入å±å¹•æ—¶è§¦å‘。" +msgstr "当 VisibilityNotifier2D 进入å±å¹•æ—¶è§¦å‘。" #: doc/classes/VisibilityNotifier2D.xml msgid "Emitted when the VisibilityNotifier2D exits the screen." -msgstr "当VisibilityNotifier2D退出å±å¹•æ—¶è§¦å‘。" +msgstr "当 VisibilityNotifier2D 退出å±å¹•æ—¶è§¦å‘。" #: doc/classes/VisibilityNotifier2D.xml msgid "Emitted when the VisibilityNotifier2D enters a [Viewport]'s view." -msgstr "当VisibilityNotifier2D进入[Viewport]的视图时触å‘。" +msgstr "当 VisibilityNotifier2D 进入 [Viewport] 的视图时触å‘。" #: doc/classes/VisibilityNotifier2D.xml msgid "Emitted when the VisibilityNotifier2D exits a [Viewport]'s view." -msgstr "当VisibilityNotifier2D退出[Viewport]的视图时触å‘。" +msgstr "当 VisibilityNotifier2D 退出 [Viewport] 的视图时触å‘。" #: doc/classes/VisualInstance.xml msgid "Parent of all visual 3D nodes." -msgstr "所有å¯è§†3D节点的父节点。" +msgstr "所有å¯è§† 3D 节点的父节点。" #: doc/classes/VisualInstance.xml msgid "" @@ -85181,7 +85333,7 @@ msgid "" "Returns the [AABB] (also known as the bounding box) for this " "[VisualInstance]. See also [method get_transformed_aabb]." msgstr "" -"返回æ¤[VisualInstance]çš„[AABB],也称为边界框。å‚阅[method " +"è¿”å›žæ¤ [VisualInstance] çš„ [AABB],也称为边界框。å¦è¯·å‚阅 [method " "get_transformed_aabb]。" #: doc/classes/VisualInstance.xml @@ -85190,8 +85342,8 @@ msgid "" "example, if the Node is a [MeshInstance], this will return the RID of the " "associated [Mesh]." msgstr "" -"返回与æ¤[VisualInstance]相关的资æºçš„RID。例如,如果该节点是一个" -"[MeshInstance],这将返回相关的[Mesh]çš„RID。" +"è¿”å›žä¸Žæ¤ [VisualInstance] 相关的资æºçš„ RID。例如,如果该节点是一个 " +"[MeshInstance],这将返回相关的 [Mesh] çš„ RID。" #: doc/classes/VisualInstance.xml msgid "" @@ -85199,9 +85351,9 @@ msgid "" "by [method VisualServer.instance_create]. This RID is needed if you want to " "call [VisualServer] functions directly on this [VisualInstance]." msgstr "" -"返回这个实例的RID。这个RID与[method VisualServer.instance_create]所返回的RID" -"相åŒã€‚å¦‚æžœä½ æƒ³åœ¨è¿™ä¸ª[VisualInstance]上直接调用[VisualServer]函数,就需è¦è¿™ä¸ª" -"RID。" +"返回这个实例的 RID。这个 RID 与 [method VisualServer.instance_create] 所返回" +"çš„ RID 相åŒã€‚å¦‚æžœä½ æƒ³åœ¨è¿™ä¸ª [VisualInstance] 上直接调用 [VisualServer] 函数," +"就需è¦è¿™ä¸ª RID。" #: doc/classes/VisualInstance.xml msgid "" @@ -85218,9 +85370,9 @@ msgid "" "Transformed in this case means the [AABB] plus the position, rotation, and " "scale of the [Spatial]'s [Transform]. See also [method get_aabb]." msgstr "" -"返回æ¤[VisualInstance]çš„å˜æ¢åŽçš„[AABB],也称为边界框。\n" -"这里的å˜æ¢æ˜¯æŒ‡[AABB]åŠ ä¸Š[Spatial]çš„[Transform]çš„ä½ç½®ã€æ—‹è½¬å’Œç¼©æ”¾ã€‚å‚阅" -"[method get_aabb]。" +"è¿”å›žæ¤ [VisualInstance] çš„å˜æ¢åŽçš„ [AABB],也称为边界框。\n" +"这里的å˜æ¢æ˜¯æŒ‡ [AABB] åŠ ä¸Š [Spatial] çš„ [Transform] çš„ä½ç½®ã€æ—‹è½¬å’Œç¼©æ”¾ã€‚å¦è¯·" +"å‚阅 [method get_aabb]。" #: doc/classes/VisualInstance.xml msgid "" @@ -85242,7 +85394,23 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" "ç»˜åˆ¶æ¤ [VisualInstance] 的渲染层。\n" -"æ¤å¯¹è±¡ä»…对[Camera]å¯è§ï¼Œå…¶å‰”除é®ç½©åŒ…括æ¤[VisualInstance]设置的渲染对象。" +"æ¤å¯¹è±¡ä»…对 [Camera]å¯è§ï¼Œå…¶å‰”除é®ç½©åŒ…æ‹¬æ¤ [VisualInstance] 设置的渲染对象。" + +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." @@ -85320,13 +85488,13 @@ msgid "" "[code]from_port[/code] would be fed into [code]to_node[/code]'s " "[code]to_port[/code]." msgstr "" -"连接两个数æ®ç«¯å£ã€‚[code]from_node[/code]çš„[code]from_port[/code]的值将被输入" -"[code]to_node[/code]çš„[code]to_port[/code]。" +"连接两个数æ®ç«¯å£ã€‚[code]from_node[/code] çš„ [code]from_port[/code] 的值将被输" +"å…¥ [code]to_node[/code] çš„ [code]to_port[/code]。" #: modules/visual_script/doc_classes/VisualScript.xml msgid "" "Disconnect two data ports previously connected with [method data_connect]." -msgstr "æ–开之å‰ç”¨[method data_connect]连接的两个数æ®ç«¯å£ã€‚" +msgstr "æ–开之å‰ç”¨ [method data_connect] 连接的两个数æ®ç«¯å£ã€‚" #: modules/visual_script/doc_classes/VisualScript.xml msgid "Returns the id of a function's entry point node." @@ -85346,7 +85514,7 @@ msgstr "返回节点的åæ ‡ï¼Œå•ä½æ˜¯åƒç´ 。" #: modules/visual_script/doc_classes/VisualScript.xml msgid "Returns the default (initial) value of a variable." -msgstr "返回å˜é‡çš„åˆå§‹é»˜è®¤å€¼ã€‚" +msgstr "返回å˜é‡çš„默认(åˆå§‹ï¼‰å€¼ã€‚" #: modules/visual_script/doc_classes/VisualScript.xml msgid "Returns whether a variable is exported." @@ -85418,10 +85586,10 @@ msgid "" "Unlike [method data_connect], there isn't a [code]to_port[/code], since the " "target node can have only one sequence port." msgstr "" -"连接两个åºåˆ—端å£ã€‚执行将从[code]from_node[/code]çš„[code]from_output[/code]输" -"å…¥[code]to_node[/code]。\n" -"与[method data_connect]ä¸åŒï¼Œæ²¡æœ‰[code]to_port[/code]ï¼Œå› ä¸ºç›®æ ‡èŠ‚ç‚¹åªèƒ½æœ‰ä¸€ä¸ª" -"åºåˆ—端å£ã€‚" +"连接两个åºåˆ—端å£ã€‚执行将从 [code]from_node[/code] çš„ [code]from_output[/" +"code] 输入 [code]to_node[/code]。\n" +"与 [method data_connect] ä¸åŒï¼Œæ²¡æœ‰ [code]to_port[/code]ï¼Œå› ä¸ºç›®æ ‡èŠ‚ç‚¹åªèƒ½æœ‰" +"一个åºåˆ—端å£ã€‚" #: modules/visual_script/doc_classes/VisualScript.xml msgid "" @@ -94604,8 +94772,8 @@ msgid "" "scenario, a navigation map and a sound space. Spatial nodes register their " "resources into the current world." msgstr "" -"拥有与世界相关的一切的类。物ç†ç©ºé—´ã€è§†è§‰åœºæ™¯ã€å¯¼èˆªåœ°å›¾å’Œå£°éŸ³ç©ºé—´ã€‚空间节点将" -"其资æºæ³¨å†Œåˆ°å½“å‰ä¸–ç•Œä¸ã€‚" +"拥有与世界相关的一切的类。物ç†ç©ºé—´ã€è§†è§‰åœºæ™¯ã€å¯¼èˆªåœ°å›¾å’Œå£°éŸ³ç©ºé—´ã€‚Spatial 节" +"点将其资æºæ³¨å†Œåˆ°å½“å‰ä¸–ç•Œä¸ã€‚" #: doc/classes/World.xml msgid "" diff --git a/doc/translations/zh_TW.po b/doc/translations/zh_TW.po index fb62e692a7..a64bd25054 100644 --- a/doc/translations/zh_TW.po +++ b/doc/translations/zh_TW.po @@ -4,7 +4,7 @@ # This file is distributed under the same license as the Godot source code. # # binotaliu <binota@protonmail.ch>, 2020. -# BinotaLIU <me@binota.org>, 2020. +# BinotaLIU <me@binota.org>, 2020, 2022. # Eric K <eric900601@gmail.com>, 2020. # Pierre Stempin <pierre.stempin@gmail.com>, 2020. # Lihan Zhu <lihan@proctorio.com>, 2021. @@ -19,8 +19,8 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-08-25 13:04+0000\n" -"Last-Translator: Hugel <qihu@nfschina.com>\n" +"PO-Revision-Date: 2022-10-12 06:50+0000\n" +"Last-Translator: BinotaLIU <me@binota.org>\n" "Language-Team: Chinese (Traditional) <https://hosted.weblate.org/projects/" "godot-engine/godot-class-reference/zh_Hant/>\n" "Language: zh_TW\n" @@ -28,7 +28,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.14-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -88,7 +88,7 @@ msgstr "" #: doc/tools/make_rst.py msgid "Default" -msgstr "默èª" +msgstr "é è¨" #: doc/tools/make_rst.py msgid "Setter" @@ -120,7 +120,7 @@ msgstr "" #: doc/tools/make_rst.py msgid "This method is used to construct a type." -msgstr "æ¤æ–¹æ³•ç”¨æ–¼æ§‹é€ 類型。" +msgstr "æ¤æ–¹æ³•ç”¨æ–¼å»ºæ§‹åž‹åˆ¥ã€‚" #: doc/tools/make_rst.py msgid "" @@ -570,7 +570,8 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Returns an array of dictionaries representing the current call stack.\n" +"Returns an array of dictionaries representing the current call stack. See " +"also [method print_stack].\n" "[codeblock]\n" "func _ready():\n" " foo()\n" @@ -585,7 +586,11 @@ msgid "" "[codeblock]\n" "[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, " "source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method get_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"get_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -965,12 +970,16 @@ msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml msgid "" -"Prints a stack track at code location, only works when running with debugger " -"turned on.\n" +"Prints a stack trace at the current code location. See also [method " +"get_stack].\n" "Output in the console would look something like this:\n" "[codeblock]\n" "Frame 0 - res://test.gd:16 in function '_process'\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] [method print_stack] only works if the running instance is " +"connected to a debugging server (i.e. an editor instance). [method " +"print_stack] will not work in projects exported in release mode, or in " +"projects exported in debug mode if not connected to a debugging server." msgstr "" #: modules/gdscript/doc_classes/@GDScript.xml @@ -3589,6 +3598,26 @@ msgid "Hints that an image is compressed using lossless compression." msgstr "" #: doc/classes/@GlobalScope.xml +msgid "" +"Hint that a property represents a particular type. If a property is " +"[constant TYPE_STRING], allows to set a type from the create dialog. If you " +"need to create an [Array] to contain elements of a specific type, the " +"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] " +"and [code]\"/\"[/code] for specifying [Resource] types. For instance:\n" +"[codeblock]\n" +"hint_string = \"%s:\" % [TYPE_INT] # Array of inteters.\n" +"hint_string = \"%s:%s:\" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array " +"of floats.\n" +"hint_string = \"%s/%s:Resource\" % [TYPE_OBJECT, TYPE_OBJECT] # Array of " +"resources.\n" +"hint_string = \"%s:%s/%s:Resource\" % [TYPE_ARRAY, TYPE_OBJECT, TYPE_OBJECT] " +"# Two-dimensional array of resources.\n" +"[/codeblock]\n" +"[b]Note:[/b] The final colon is required to specify for properly detecting " +"built-in types." +msgstr "" + +#: doc/classes/@GlobalScope.xml msgid "The property is serialized and saved in the scene file (default)." msgstr "" @@ -4273,8 +4302,7 @@ msgstr "" #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml #: doc/classes/CanvasLayer.xml doc/classes/CollisionShape2D.xml #: doc/classes/ColorRect.xml doc/classes/Input.xml doc/classes/InputEvent.xml -#: doc/classes/InputEventAction.xml doc/classes/Label.xml -#: doc/classes/Particles2D.xml doc/classes/Timer.xml +#: doc/classes/InputEventAction.xml doc/classes/Label.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml msgid "2D Dodge The Creeps Demo" msgstr "" @@ -7196,7 +7224,10 @@ msgid "" "var array = []\n" "array.resize(10)\n" "array.fill(0) # Initialize the 10 elements to 0.\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]Note:[/b] If [code]value[/code] is of a reference type ([Object]-derived, " +"[Array], [Dictionary], etc.) then the array is filled with the references to " +"the same object, i.e. no duplicates are created." msgstr "" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml @@ -7381,6 +7412,9 @@ msgstr "" #: doc/classes/Array.xml msgid "" "Sorts the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method sort].\n" "[b]Note:[/b] Strings are sorted in alphabetical order (as opposed to natural " "order). This may lead to unexpected behavior when sorting an array of " "strings ending with a sequence of numbers. Consider the following example:\n" @@ -7400,9 +7434,13 @@ msgid "" "For two elements [code]a[/code] and [code]b[/code], if the given method " "returns [code]true[/code], element [code]b[/code] will be after element " "[code]a[/code] in the array.\n" +"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/" +"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values " +"considered equal may have their order changed when using [method " +"sort_custom].\n" "[b]Note:[/b] You cannot randomize the return value as the heapsort algorithm " -"expects a deterministic result. Doing so will result in unexpected " -"behavior.\n" +"expects a deterministic result. Randomizing the return value will result in " +"unexpected behavior.\n" "[codeblock]\n" "class MyCustomSorter:\n" " static func sort_ascending(a, b):\n" @@ -10041,10 +10079,9 @@ msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "" -"Returns the number of audio data frames left to play. If this returned " -"number reaches [code]0[/code], the audio will stop playing until frames are " -"added again. Therefore, make sure your script can always generate and push " -"new audio frames fast enough to avoid audio cracking." +"Returns the number of frames that can be pushed to the audio sample data " +"buffer without overflowing it. If the result is [code]0[/code], the buffer " +"is full." msgstr "" #: doc/classes/AudioStreamGeneratorPlayback.xml @@ -10576,14 +10613,14 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" "Node for back-buffering the currently-displayed screen. The region defined " -"in the BackBufferCopy node is buffered with the content of the screen it " +"in the [BackBufferCopy] node is buffered with the content of the screen it " "covers, or the entire screen according to the copy mode set. Use the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to " "access the buffer.\n" "[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), " "anchors and margins won't apply to child [Control]-derived nodes. This can " "be problematic when resizing the window. To avoid this, add [Control]-" -"derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of " +"derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of " "adding them as children." msgstr "" @@ -10593,22 +10630,22 @@ msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"The area covered by the BackBufferCopy. Only used if [member copy_mode] is " +"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is " "[constant COPY_MODE_RECT]." msgstr "" #: doc/classes/BackBufferCopy.xml msgid "" -"Disables the buffering mode. This means the BackBufferCopy node will " +"Disables the buffering mode. This means the [BackBufferCopy] node will " "directly use the portion of screen it covers." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers a rectangular region." +msgid "[BackBufferCopy] buffers a rectangular region." msgstr "" #: doc/classes/BackBufferCopy.xml -msgid "BackBufferCopy buffers the entire screen." +msgid "[BackBufferCopy] buffers the entire screen." msgstr "" #: doc/classes/BakedLightmap.xml @@ -19407,6 +19444,14 @@ msgid "Cylinder shape for collisions." msgstr "" #: doc/classes/CylinderShape.xml +msgid "" +"Cylinder shape for collisions.\n" +"[b]Note:[/b] When using GodotPhysics instead of the default Bullet physics " +"engine, there are several known bugs with cylinder collision shapes. Using " +"[CapsuleShape] or [BoxShape] instead is recommended." +msgstr "" + +#: doc/classes/CylinderShape.xml msgid "The cylinder's height." msgstr "" @@ -22241,7 +22286,10 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] The script is run in the Editor context, which means the output " "is visible in the console window started with the Editor (stdout) instead of " -"the usual Godot [b]Output[/b] dock." +"the usual Godot [b]Output[/b] dock.\n" +"[b]Note:[/b] EditorScript is reference counted, meaning it is destroyed when " +"nothing references it. This can cause errors during asynchronous operations " +"if there are no references to the script." msgstr "" #: doc/classes/EditorScript.xml @@ -32980,7 +33028,9 @@ msgid "" "The size of the light in Godot units. Only considered in baked lightmaps and " "only if [member light_bake_mode] is set to [constant BAKE_ALL]. Increasing " "this value will make the shadows appear blurrier. This can be used to " -"simulate area lights to an extent." +"simulate area lights to an extent.\n" +"[b]Note:[/b] [member light_size] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/Light.xml @@ -36309,7 +36359,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml @@ -36559,7 +36612,10 @@ msgid "" "use the [method get_next_location] function once every physics frame to " "update the internal path logic of the NavigationAgent. The returned vector " "position from this function should be used as the next movement position for " -"the agent's parent Node." +"the agent's parent Node.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues." msgstr "" #: doc/classes/NavigationAgent2D.xml @@ -37276,6 +37332,9 @@ msgid "" "modified velocity as-is might lead to pushing and agent outside of a " "navigable area. This is a limitation of the collision avoidance system, any " "more complex situation may require the use of the physics engine.\n" +"[b]Note:[/b] By default, the expensive calculations for avoidance are done " +"in a thread. In HTML5 exports without thread support, they will be done on " +"the main thread, which can lead to performance issues.\n" "This server keeps tracks of any call and executes them during the sync " "phase. This means that you can request any change to the map, using any " "thread, without worrying." @@ -40086,7 +40145,9 @@ msgid "" "The light's radius. Note that the effectively lit area may appear to be " "smaller depending on the [member omni_attenuation] in use. No matter the " "[member omni_attenuation] in use, the light will never reach anything " -"outside this radius." +"outside this radius.\n" +"[b]Note:[/b] [member omni_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/OmniLight.xml @@ -40602,11 +40663,11 @@ msgstr "回傳åƒæ•¸çš„æ£åˆ‡å€¼ã€‚" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] cache data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_CACHE_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_config_dir] and [method get_data_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_CACHE_HOME[/code] environment variable before starting the " +"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_config_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40640,11 +40701,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user configuration directory according to the " -"operating system's standards. On desktop platforms, this path can be " -"overridden by setting the [code]XDG_CONFIG_HOME[/code] environment variable " -"before starting the project. See [url=$DOCS_URL/tutorials/io/data_paths." -"html]File paths in Godot projects[/url] in the documentation for more " -"information. See also [method get_cache_dir] and [method get_data_dir].\n" +"operating system's standards. On Linux, this path can be overridden by " +"setting the [code]XDG_CONFIG_HOME[/code] environment variable before " +"starting the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File " +"paths in Godot projects[/url] in the documentation for more information. See " +"also [method get_cache_dir] and [method get_data_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -40666,11 +40727,11 @@ msgstr "" #: doc/classes/OS.xml msgid "" "Returns the [i]global[/i] user data directory according to the operating " -"system's standards. On desktop platforms, this path can be overridden by " -"setting the [code]XDG_DATA_HOME[/code] environment variable before starting " -"the project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in " -"Godot projects[/url] in the documentation for more information. See also " -"[method get_cache_dir] and [method get_config_dir].\n" +"system's standards. On Linux, this path can be overridden by setting the " +"[code]XDG_DATA_HOME[/code] environment variable before starting the project. " +"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot " +"projects[/url] in the documentation for more information. See also [method " +"get_cache_dir] and [method get_config_dir].\n" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" @@ -42532,6 +42593,16 @@ msgid "Particle systems (2D)" msgstr "" #: doc/classes/Particles2D.xml +msgid "2D Particles Demo" +msgstr "" + +#: doc/classes/Particles2D.xml +msgid "" +"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the " +"player)" +msgstr "" + +#: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." msgstr "" @@ -50133,15 +50204,22 @@ msgstr "" #: doc/classes/ProjectSettings.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member rendering/quality/" +"intended_usage/framebuffer_allocation] must also be set to [b]3D[/b].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member rendering/quality/" "depth/hdr] must also be [code]true[/code] for debanding to be effective.\n" "[b]Note:[/b] There are known issues with debanding breaking rendering on " "mobile platforms. Due to this, it is recommended to leave this option " -"disabled when targeting mobile platforms." +"disabled when targeting mobile platforms.\n" +"[b]Note:[/b] This property is only read when the project starts. To set " +"debanding at run-time, set [member Viewport.debanding] on the root " +"[Viewport] instead." msgstr "" #: doc/classes/ProjectSettings.xml @@ -51738,17 +51816,28 @@ msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns a [RegExMatch] container " -"of the first matching result if found, otherwise [code]null[/code]. The " -"region to search within can be specified without modifying where the start " -"and end anchor would be." +"of the first matching result if found, otherwise [code]null[/code].\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml msgid "" "Searches the text for the compiled pattern. Returns an array of [RegExMatch] " "containers for each non-overlapping result. If no results were found, an " -"empty array is returned instead. The region to search within can be " -"specified without modifying where the start and end anchor would be." +"empty array is returned instead.\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegEx.xml @@ -51757,8 +51846,14 @@ msgid "" "specified string. Escapes and backreferences such as [code]$1[/code] and " "[code]$name[/code] are expanded and resolved. By default, only the first " "instance is replaced, but it can be changed for all instances (global " -"replacement). The region to search within can be specified without modifying " -"where the start and end anchor would be." +"replacement).\n" +"The region to search within can be specified with [code]offset[/code] and " +"[code]end[/code]. This is useful when searching for another match in the " +"same [code]subject[/code] by calling this method again after a previous " +"success. Setting these parameters differs from passing over a shortened " +"string. For example, the start anchor [code]^[/code] is not affected by " +"[code]offset[/code], and the character before [code]offset[/code] will be " +"checked for the word boundary [code]\\b[/code]." msgstr "" #: modules/regex/doc_classes/RegExMatch.xml @@ -54474,7 +54569,11 @@ msgid "Call a group immediately (calls are normally made on idle)." msgstr "" #: doc/classes/SceneTree.xml -msgid "Call a group only once even if the call is executed many times." +msgid "" +"Call a group only once even if the call is executed many times.\n" +"[b]Note:[/b] Arguments are not taken into account when deciding whether the " +"call is unique or not. Therefore when the same method is called with " +"different arguments, only the first call will be performed." msgstr "" #: doc/classes/SceneTree.xml @@ -56312,7 +56411,9 @@ msgid "" "[b]Note:[/b] Mixed negative scales in 3D are not decomposable from the " "transformation matrix. Due to the way scale is represented with " "transformation matrices in Godot, the scale values will either be all " -"positive or all negative." +"positive or all negative.\n" +"[b]Note:[/b] Not all nodes are visually scaled by the [member scale] " +"property. For example, [Light]s are not visually affected by [member scale]." msgstr "" #: doc/classes/Spatial.xml @@ -57690,7 +57791,10 @@ msgid "" msgstr "" #: doc/classes/SpotLight.xml -msgid "The spotlight's angle in degrees." +msgid "" +"The spotlight's angle in degrees.\n" +"[b]Note:[/b] [member spot_angle] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpotLight.xml @@ -57706,7 +57810,9 @@ msgid "" "The maximal range that can be reached by the spotlight. Note that the " "effectively lit area may appear to be smaller depending on the [member " "spot_attenuation] in use. No matter the [member spot_attenuation] in use, " -"the light will never reach anything outside this range." +"the light will never reach anything outside this range.\n" +"[b]Note:[/b] [member spot_range] is not affected by [member Spatial.scale] " +"(the light's scale or its parent's scale)." msgstr "" #: doc/classes/SpringArm.xml @@ -66994,10 +67100,15 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " -"significantly less visible. In some cases, debanding may introduce a " -"slightly noticeable dithering pattern. It's recommended to enable debanding " -"only when actually needed since the dithering pattern will make lossless-" -"compressed screenshots larger.\n" +"significantly less visible in 3D. 2D rendering is [i]not[/i] affected by " +"debanding unless the [member Environment.background_mode] is [constant " +"Environment.BG_CANVAS]. In this case, [member usage] must also be set to " +"[constant USAGE_3D]. See also [member ProjectSettings.rendering/quality/" +"filters/use_debanding].\n" +"In some cases, debanding may introduce a slightly noticeable dithering " +"pattern. It's recommended to enable debanding only when actually needed " +"since the dithering pattern will make lossless-compressed screenshots " +"larger.\n" "[b]Note:[/b] Only available on the GLES3 backend. [member hdr] must also be " "[code]true[/code] for debanding to be effective." msgstr "" @@ -67008,8 +67119,8 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"If [code]true[/code], the viewport will disable 3D rendering. For actual " -"disabling use [code]usage[/code]." +"If [code]true[/code], the viewport will disable 3D rendering. To actually " +"disable allocation of 3D buffers, set [member usage] instead." msgstr "" #: doc/classes/Viewport.xml @@ -67161,7 +67272,9 @@ msgstr "" #: doc/classes/Viewport.xml msgid "" -"The rendering mode of viewport.\n" +"The viewport's rendering mode. This controls which buffers are allocated for " +"the viewport (2D only, or 2D + 3D). 2D-only options can reduce memory usage " +"and improve performance slightly, especially on low-end devices.\n" "[b]Note:[/b] If set to [constant USAGE_2D] or [constant " "USAGE_2D_NO_SAMPLING], [member hdr] will have no effect when enabled since " "HDR is not supported for 2D." @@ -67693,6 +67806,22 @@ msgid "" "render object this [VisualInstance] is set to." msgstr "" +#: doc/classes/VisualInstance.xml +msgid "" +"The sorting offset used by this [VisualInstance]. Adjusting it to a higher " +"value will make the [VisualInstance] reliably draw on top of other " +"[VisualInstance]s that are otherwise positioned at the same spot." +msgstr "" + +#: doc/classes/VisualInstance.xml +msgid "" +"If [code]true[/code], the object is sorted based on the [AABB] center. " +"Sorted based on the global position otherwise.\n" +"The [AABB] center based sorting is generally more accurate for 3D models. " +"The position based sorting instead allows to better control the drawing " +"order when working with [Particles] and [CPUParticles]." +msgstr "" + #: modules/visual_script/doc_classes/VisualScript.xml msgid "A script implemented in the Visual Script programming environment." msgstr "" diff --git a/drivers/gles3/effects/copy_effects.cpp b/drivers/gles3/effects/copy_effects.cpp index b552b52cd5..58cdc90a7c 100644 --- a/drivers/gles3/effects/copy_effects.cpp +++ b/drivers/gles3/effects/copy_effects.cpp @@ -148,8 +148,8 @@ void CopyEffects::bilinear_blur(GLuint p_source_texture, int p_mipmap_count, con dest_region.size.y = MAX(1, dest_region.size.y >> 1); glBindFramebuffer(GL_DRAW_FRAMEBUFFER, framebuffers[i % 2]); glFramebufferTexture2D(GL_DRAW_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, p_source_texture, i); - glBlitFramebuffer(source_region.position.x, source_region.position.y, source_region.size.x, source_region.size.y, - dest_region.position.x, dest_region.position.y, dest_region.size.x, dest_region.size.y, GL_COLOR_BUFFER_BIT, GL_LINEAR); + glBlitFramebuffer(source_region.position.x, source_region.position.y, source_region.position.x + source_region.size.x, source_region.position.y + source_region.size.y, + dest_region.position.x, dest_region.position.y, dest_region.position.x + dest_region.size.x, dest_region.position.y + dest_region.size.y, GL_COLOR_BUFFER_BIT, GL_LINEAR); glBindFramebuffer(GL_READ_FRAMEBUFFER, framebuffers[i % 2]); source_region = dest_region; } diff --git a/drivers/gles3/rasterizer_canvas_gles3.cpp b/drivers/gles3/rasterizer_canvas_gles3.cpp index c7e7227916..7b39641029 100644 --- a/drivers/gles3/rasterizer_canvas_gles3.cpp +++ b/drivers/gles3/rasterizer_canvas_gles3.cpp @@ -588,10 +588,12 @@ void RasterizerCanvasGLES3::_render_items(RID p_to_render_target, int p_item_cou material = default_clip_children_material; } } else { - if (ci->canvas_group->mode == RS::CANVAS_GROUP_MODE_CLIP_ONLY) { - material = default_clip_children_material; - } else { - material = default_canvas_group_material; + if (material.is_null()) { + if (ci->canvas_group->mode == RS::CANVAS_GROUP_MODE_CLIP_ONLY) { + material = default_clip_children_material; + } else { + material = default_canvas_group_material; + } } } } diff --git a/drivers/gles3/rasterizer_scene_gles3.cpp b/drivers/gles3/rasterizer_scene_gles3.cpp index b75fdf5f71..ae5515e249 100644 --- a/drivers/gles3/rasterizer_scene_gles3.cpp +++ b/drivers/gles3/rasterizer_scene_gles3.cpp @@ -1068,10 +1068,6 @@ void RasterizerSceneGLES3::environment_glow_set_use_bicubic_upscale(bool p_enabl glow_bicubic_upscale = p_enable; } -void RasterizerSceneGLES3::environment_glow_set_use_high_quality(bool p_enable) { - glow_high_quality = p_enable; -} - void RasterizerSceneGLES3::environment_set_ssr_roughness_quality(RS::EnvironmentSSRRoughnessQuality p_quality) { } diff --git a/drivers/gles3/rasterizer_scene_gles3.h b/drivers/gles3/rasterizer_scene_gles3.h index 255e62fc33..65cc8606b8 100644 --- a/drivers/gles3/rasterizer_scene_gles3.h +++ b/drivers/gles3/rasterizer_scene_gles3.h @@ -497,7 +497,6 @@ protected: float ssao_fadeout_to = 300.0; bool glow_bicubic_upscale = false; - bool glow_high_quality = false; RS::EnvironmentSSRRoughnessQuality ssr_roughness_quality = RS::ENV_SSR_ROUGHNESS_QUALITY_LOW; /* Sky */ @@ -610,7 +609,6 @@ public: /* ENVIRONMENT API */ void environment_glow_set_use_bicubic_upscale(bool p_enable) override; - void environment_glow_set_use_high_quality(bool p_enable) override; void environment_set_ssr_roughness_quality(RS::EnvironmentSSRRoughnessQuality p_quality) override; diff --git a/editor/animation_track_editor_plugins.cpp b/editor/animation_track_editor_plugins.cpp index a5f6f449a6..704935e163 100644 --- a/editor/animation_track_editor_plugins.cpp +++ b/editor/animation_track_editor_plugins.cpp @@ -857,18 +857,14 @@ void AnimationTrackEditTypeAudio::draw_key(int p_index, float p_pixels_sec, int float start_ofs = get_animation()->audio_track_get_key_start_offset(get_track(), p_index); float end_ofs = get_animation()->audio_track_get_key_end_offset(get_track(), p_index); + int px_offset = 0; if (len_resizing && p_index == len_resizing_index) { - float ofs_local = -len_resizing_rel / get_timeline()->get_zoom_scale(); + float ofs_local = len_resizing_rel / get_timeline()->get_zoom_scale(); if (len_resizing_start) { start_ofs += ofs_local; - if (start_ofs < 0) { - start_ofs = 0; - } + px_offset = ofs_local * p_pixels_sec; } else { - end_ofs += ofs_local; - if (end_ofs < 0) { - end_ofs = 0; - } + end_ofs -= ofs_local; } } @@ -897,8 +893,8 @@ void AnimationTrackEditTypeAudio::draw_key(int p_index, float p_pixels_sec, int int pixel_len = len * p_pixels_sec; - int pixel_begin = p_x; - int pixel_end = p_x + pixel_len; + int pixel_begin = px_offset + p_x; + int pixel_end = px_offset + p_x + pixel_len; if (pixel_end < p_clip_left) { return; @@ -1061,9 +1057,6 @@ void AnimationTrackEditTypeAudio::gui_input(const Ref<InputEvent> &p_event) { len -= end_ofs; len -= start_ofs; - if (len <= 0.001) { - len = 0.001; - } if (get_animation()->track_get_key_count(get_track()) > i + 1) { len = MIN(len, get_animation()->track_get_key_time(get_track(), i + 1) - get_animation()->track_get_key_time(get_track(), i)); @@ -1078,6 +1071,13 @@ void AnimationTrackEditTypeAudio::gui_input(const Ref<InputEvent> &p_event) { int end = ofs + len * get_timeline()->get_zoom_scale(); if (end >= get_timeline()->get_name_limit() && end <= get_size().width - get_timeline()->get_buttons_width() && ABS(mm->get_position().x - end) < 5 * EDSCALE) { + len_resizing_start = false; + use_hsize_cursor = true; + len_resizing_index = i; + } + + if (ofs >= get_timeline()->get_name_limit() && ofs <= get_size().width - get_timeline()->get_buttons_width() && ABS(mm->get_position().x - ofs) < 5 * EDSCALE) { + len_resizing_start = true; use_hsize_cursor = true; len_resizing_index = i; } @@ -1086,8 +1086,25 @@ void AnimationTrackEditTypeAudio::gui_input(const Ref<InputEvent> &p_event) { } if (len_resizing && mm.is_valid()) { + // Rezising index is some. len_resizing_rel += mm->get_relative().x; - len_resizing_start = mm->is_shift_pressed(); + float ofs_local = len_resizing_rel / get_timeline()->get_zoom_scale(); + float prev_ofs_start = get_animation()->audio_track_get_key_start_offset(get_track(), len_resizing_index); + float prev_ofs_end = get_animation()->audio_track_get_key_end_offset(get_track(), len_resizing_index); + Ref<AudioStream> stream = get_animation()->audio_track_get_key_stream(get_track(), len_resizing_index); + float len = stream->get_length(); + if (len == 0) { + Ref<AudioStreamPreview> preview = AudioStreamPreviewGenerator::get_singleton()->generate_preview(stream); + float preview_len = preview->get_length(); + len = preview_len; + } + + if (len_resizing_start) { + len_resizing_rel = CLAMP(ofs_local, -prev_ofs_start, len - prev_ofs_end - prev_ofs_start) * get_timeline()->get_zoom_scale(); + } else { + len_resizing_rel = CLAMP(ofs_local, -(len - prev_ofs_end - prev_ofs_start), prev_ofs_end) * get_timeline()->get_zoom_scale(); + } + queue_redraw(); accept_event(); return; @@ -1096,7 +1113,11 @@ void AnimationTrackEditTypeAudio::gui_input(const Ref<InputEvent> &p_event) { Ref<InputEventMouseButton> mb = p_event; if (mb.is_valid() && mb->is_pressed() && mb->get_button_index() == MouseButton::LEFT && over_drag_position) { len_resizing = true; - len_resizing_start = mb->is_shift_pressed(); + // In case if resizing index is not set yet reset the flag. + if (len_resizing_index < 0) { + len_resizing = false; + return; + } len_resizing_from_px = mb->get_position().x; len_resizing_rel = 0; queue_redraw(); @@ -1106,23 +1127,42 @@ void AnimationTrackEditTypeAudio::gui_input(const Ref<InputEvent> &p_event) { Ref<EditorUndoRedoManager> &undo_redo = EditorNode::get_undo_redo(); if (len_resizing && mb.is_valid() && !mb->is_pressed() && mb->get_button_index() == MouseButton::LEFT) { - float ofs_local = -len_resizing_rel / get_timeline()->get_zoom_scale(); + if (len_resizing_rel == 0 || len_resizing_index < 0) { + len_resizing = false; + return; + } + if (len_resizing_start) { + float ofs_local = len_resizing_rel / get_timeline()->get_zoom_scale(); float prev_ofs = get_animation()->audio_track_get_key_start_offset(get_track(), len_resizing_index); - undo_redo->create_action(TTR("Change Audio Track Clip Start Offset")); - undo_redo->add_do_method(get_animation().ptr(), "audio_track_set_key_start_offset", get_track(), len_resizing_index, prev_ofs + ofs_local); - undo_redo->add_undo_method(get_animation().ptr(), "audio_track_set_key_start_offset", get_track(), len_resizing_index, prev_ofs); - undo_redo->commit_action(); + float prev_time = get_animation()->track_get_key_time(get_track(), len_resizing_index); + float new_ofs = prev_ofs + ofs_local; + float new_time = prev_time + ofs_local; + if (prev_time != new_time) { + undo_redo->create_action(TTR("Change Audio Track Clip Start Offset")); + + undo_redo->add_do_method(get_animation().ptr(), "track_set_key_time", get_track(), len_resizing_index, new_time); + undo_redo->add_undo_method(get_animation().ptr(), "track_set_key_time", get_track(), len_resizing_index, prev_time); + + undo_redo->add_do_method(get_animation().ptr(), "audio_track_set_key_start_offset", get_track(), len_resizing_index, new_ofs); + undo_redo->add_undo_method(get_animation().ptr(), "audio_track_set_key_start_offset", get_track(), len_resizing_index, prev_ofs); + undo_redo->commit_action(); + } } else { + float ofs_local = -len_resizing_rel / get_timeline()->get_zoom_scale(); float prev_ofs = get_animation()->audio_track_get_key_end_offset(get_track(), len_resizing_index); - undo_redo->create_action(TTR("Change Audio Track Clip End Offset")); - undo_redo->add_do_method(get_animation().ptr(), "audio_track_set_key_end_offset", get_track(), len_resizing_index, prev_ofs + ofs_local); - undo_redo->add_undo_method(get_animation().ptr(), "audio_track_set_key_end_offset", get_track(), len_resizing_index, prev_ofs); - undo_redo->commit_action(); + float new_ofs = prev_ofs + ofs_local; + if (prev_ofs != new_ofs) { + undo_redo->create_action(TTR("Change Audio Track Clip End Offset")); + undo_redo->add_do_method(get_animation().ptr(), "audio_track_set_key_end_offset", get_track(), len_resizing_index, new_ofs); + undo_redo->add_undo_method(get_animation().ptr(), "audio_track_set_key_end_offset", get_track(), len_resizing_index, prev_ofs); + undo_redo->commit_action(); + } } len_resizing_index = -1; + len_resizing = false; queue_redraw(); accept_event(); return; diff --git a/editor/debugger/editor_debugger_node.cpp b/editor/debugger/editor_debugger_node.cpp index 610f467faa..0a0f0cf90a 100644 --- a/editor/debugger/editor_debugger_node.cpp +++ b/editor/debugger/editor_debugger_node.cpp @@ -36,6 +36,7 @@ #include "editor/editor_log.h" #include "editor/editor_node.h" #include "editor/editor_settings.h" +#include "editor/editor_undo_redo_manager.h" #include "editor/inspector_dock.h" #include "editor/plugins/editor_debugger_plugin.h" #include "editor/plugins/script_editor_plugin.h" @@ -274,6 +275,7 @@ void EditorDebuggerNode::stop(bool p_force) { }); _break_state_changed(); breakpoints.clear(); + EditorNode::get_undo_redo()->clear_history(false, EditorUndoRedoManager::REMOTE_HISTORY); set_process(false); } diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp index 463e8f6bdc..4c3c9973cb 100644 --- a/editor/editor_node.cpp +++ b/editor/editor_node.cpp @@ -437,8 +437,6 @@ void EditorNode::_update_from_settings() { bool glow_bicubic = int(GLOBAL_GET("rendering/environment/glow/upscale_mode")) > 0; RS::get_singleton()->environment_set_ssil_quality(RS::EnvironmentSSILQuality(int(GLOBAL_GET("rendering/environment/ssil/quality"))), GLOBAL_GET("rendering/environment/ssil/half_size"), GLOBAL_GET("rendering/environment/ssil/adaptive_target"), GLOBAL_GET("rendering/environment/ssil/blur_passes"), GLOBAL_GET("rendering/environment/ssil/fadeout_from"), GLOBAL_GET("rendering/environment/ssil/fadeout_to")); RS::get_singleton()->environment_glow_set_use_bicubic_upscale(glow_bicubic); - bool glow_high_quality = GLOBAL_GET("rendering/environment/glow/use_high_quality"); - RS::get_singleton()->environment_glow_set_use_high_quality(glow_high_quality); RS::EnvironmentSSRRoughnessQuality ssr_roughness_quality = RS::EnvironmentSSRRoughnessQuality(int(GLOBAL_GET("rendering/environment/screen_space_reflection/roughness_quality"))); RS::get_singleton()->environment_set_ssr_roughness_quality(ssr_roughness_quality); RS::SubSurfaceScatteringQuality sss_quality = RS::SubSurfaceScatteringQuality(int(GLOBAL_GET("rendering/environment/subsurface_scattering/subsurface_scattering_quality"))); diff --git a/editor/editor_settings.cpp b/editor/editor_settings.cpp index c44fe04442..79b03febdc 100644 --- a/editor/editor_settings.cpp +++ b/editor/editor_settings.cpp @@ -734,6 +734,7 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { // TRANSLATORS: Project Manager here refers to the tool used to create/manage Godot projects. EDITOR_SETTING(Variant::INT, PROPERTY_HINT_ENUM, "project_manager/sorting_order", 0, "Last Edited,Name,Path") + EDITOR_SETTING(Variant::STRING, PROPERTY_HINT_NONE, "project_manager/default_renderer", "forward_plus", "forward_plus,mobile,gl_compatibility") if (p_extra_config.is_valid()) { if (p_extra_config->has_section("init_projects") && p_extra_config->has_section_key("init_projects", "list")) { diff --git a/editor/editor_undo_redo_manager.cpp b/editor/editor_undo_redo_manager.cpp index 4bfa9b686c..ab33b2d051 100644 --- a/editor/editor_undo_redo_manager.cpp +++ b/editor/editor_undo_redo_manager.cpp @@ -33,6 +33,7 @@ #include "core/io/resource.h" #include "core/os/os.h" #include "core/templates/local_vector.h" +#include "editor/debugger/editor_debugger_inspector.h" #include "editor/debugger/editor_debugger_node.h" #include "editor/editor_log.h" #include "editor/editor_node.h" @@ -59,6 +60,10 @@ UndoRedo *EditorUndoRedoManager::get_history_undo_redo(int p_idx) const { int EditorUndoRedoManager::get_history_id_for_object(Object *p_object) const { int history_id = INVALID_HISTORY; + if (Object::cast_to<EditorDebuggerRemoteObject>(p_object)) { + return REMOTE_HISTORY; + } + if (Node *node = Object::cast_to<Node>(p_object)) { Node *edited_scene = EditorNode::get_singleton()->get_edited_scene(); @@ -278,6 +283,14 @@ bool EditorUndoRedoManager::undo() { } { + History &history = get_or_create_history(REMOTE_HISTORY); + if (!history.undo_stack.is_empty() && history.undo_stack.back()->get().timestamp > global_timestamp) { + selected_history = history.id; + global_timestamp = history.undo_stack.back()->get().timestamp; + } + } + + { History &history = get_or_create_history(EditorNode::get_editor_data().get_current_edited_scene_history_id()); if (!history.undo_stack.is_empty() && history.undo_stack.back()->get().timestamp > global_timestamp) { selected_history = history.id; @@ -323,6 +336,14 @@ bool EditorUndoRedoManager::redo() { } { + History &history = get_or_create_history(REMOTE_HISTORY); + if (!history.redo_stack.is_empty() && history.redo_stack.back()->get().timestamp < global_timestamp) { + selected_history = history.id; + global_timestamp = history.redo_stack.back()->get().timestamp; + } + } + + { History &history = get_or_create_history(EditorNode::get_editor_data().get_current_edited_scene_history_id()); if (!history.redo_stack.is_empty() && history.redo_stack.back()->get().timestamp < global_timestamp) { selected_history = history.id; @@ -367,7 +388,7 @@ bool EditorUndoRedoManager::is_history_unsaved(int p_id) { bool EditorUndoRedoManager::has_undo() { for (const KeyValue<int, History> &E : history_map) { - if ((E.key == GLOBAL_HISTORY || E.key == EditorNode::get_editor_data().get_current_edited_scene_history_id()) && !E.value.undo_stack.is_empty()) { + if ((E.key == GLOBAL_HISTORY || E.key == REMOTE_HISTORY || E.key == EditorNode::get_editor_data().get_current_edited_scene_history_id()) && !E.value.undo_stack.is_empty()) { return true; } } @@ -376,7 +397,7 @@ bool EditorUndoRedoManager::has_undo() { bool EditorUndoRedoManager::has_redo() { for (const KeyValue<int, History> &E : history_map) { - if ((E.key == GLOBAL_HISTORY || E.key == EditorNode::get_editor_data().get_current_edited_scene_history_id()) && !E.value.redo_stack.is_empty()) { + if ((E.key == GLOBAL_HISTORY || E.key == REMOTE_HISTORY || E.key == EditorNode::get_editor_data().get_current_edited_scene_history_id()) && !E.value.redo_stack.is_empty()) { return true; } } @@ -385,7 +406,11 @@ bool EditorUndoRedoManager::has_redo() { void EditorUndoRedoManager::clear_history(bool p_increase_version, int p_idx) { if (p_idx != INVALID_HISTORY) { - get_or_create_history(p_idx).undo_redo->clear_history(p_increase_version); + History &history = get_or_create_history(p_idx); + history.undo_redo->clear_history(p_increase_version); + history.undo_stack.clear(); + history.redo_stack.clear(); + if (!p_increase_version) { set_history_as_saved(p_idx); } @@ -415,6 +440,14 @@ String EditorUndoRedoManager::get_current_action_name() { } { + History &history = get_or_create_history(REMOTE_HISTORY); + if (!history.undo_stack.is_empty() && history.undo_stack.back()->get().timestamp > global_timestamp) { + selected_history = &history; + global_timestamp = history.undo_stack.back()->get().timestamp; + } + } + + { History &history = get_or_create_history(EditorNode::get_editor_data().get_current_edited_scene_history_id()); if (!history.undo_stack.is_empty() && history.undo_stack.back()->get().timestamp > global_timestamp) { selected_history = &history; @@ -477,6 +510,7 @@ void EditorUndoRedoManager::_bind_methods() { ADD_SIGNAL(MethodInfo("version_changed")); BIND_ENUM_CONSTANT(GLOBAL_HISTORY); + BIND_ENUM_CONSTANT(REMOTE_HISTORY); BIND_ENUM_CONSTANT(INVALID_HISTORY); } diff --git a/editor/editor_undo_redo_manager.h b/editor/editor_undo_redo_manager.h index 60bcd059df..08482b6e2d 100644 --- a/editor/editor_undo_redo_manager.h +++ b/editor/editor_undo_redo_manager.h @@ -41,6 +41,7 @@ class EditorUndoRedoManager : public RefCounted { public: enum SpecialHistory { GLOBAL_HISTORY = 0, + REMOTE_HISTORY = -9, INVALID_HISTORY = -99, }; diff --git a/editor/import/dynamic_font_import_settings.cpp b/editor/import/dynamic_font_import_settings.cpp index 75d0abbb0c..afcfacdf75 100644 --- a/editor/import/dynamic_font_import_settings.cpp +++ b/editor/import/dynamic_font_import_settings.cpp @@ -954,9 +954,18 @@ void DynamicFontImportSettings::_re_import() { Dictionary preload_config; preload_config["name"] = vars_item->get_text(0); + Size2i conf_size = Vector2i(16, 0); for (const KeyValue<StringName, Variant> &E : import_variation_data->settings) { - preload_config[E.key] = E.value; + if (E.key == "size") { + conf_size.x = E.value; + } + if (E.key == "outline_size") { + conf_size.y = E.value; + } else { + preload_config[E.key] = E.value; + } } + preload_config["size"] = conf_size; Array chars; for (const char32_t &E : import_variation_data->selected_chars) { diff --git a/editor/plugins/animation_blend_space_1d_editor.cpp b/editor/plugins/animation_blend_space_1d_editor.cpp index e64b80abbd..7d64055cc3 100644 --- a/editor/plugins/animation_blend_space_1d_editor.cpp +++ b/editor/plugins/animation_blend_space_1d_editor.cpp @@ -46,6 +46,11 @@ StringName AnimationNodeBlendSpace1DEditor::get_blend_position_path() const { } void AnimationNodeBlendSpace1DEditor::_blend_space_gui_input(const Ref<InputEvent> &p_event) { + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; + } + Ref<InputEventKey> k = p_event; if (tool_select->is_pressed() && k.is_valid() && k->is_pressed() && k->get_keycode() == Key::KEY_DELETE && !k->is_echo()) { @@ -71,11 +76,8 @@ void AnimationNodeBlendSpace1DEditor::_blend_space_gui_input(const Ref<InputEven menu->add_submenu_item(TTR("Add Animation"), "animations"); - AnimationTree *gp = AnimationTreeEditor::get_singleton()->get_animation_tree(); - ERR_FAIL_COND(!gp); - - if (gp->has_node(gp->get_animation_player())) { - AnimationPlayer *ap = Object::cast_to<AnimationPlayer>(gp->get_node(gp->get_animation_player())); + if (tree->has_node(tree->get_animation_player())) { + AnimationPlayer *ap = Object::cast_to<AnimationPlayer>(tree->get_node(tree->get_animation_player())); if (ap) { List<StringName> names; @@ -180,7 +182,7 @@ void AnimationNodeBlendSpace1DEditor::_blend_space_gui_input(const Ref<InputEven blend_pos *= blend_space->get_max_space() - blend_space->get_min_space(); blend_pos += blend_space->get_min_space(); - AnimationTreeEditor::get_singleton()->get_animation_tree()->set(get_blend_position_path(), blend_pos); + tree->set(get_blend_position_path(), blend_pos); blend_space_draw->queue_redraw(); } @@ -203,13 +205,18 @@ void AnimationNodeBlendSpace1DEditor::_blend_space_gui_input(const Ref<InputEven blend_pos *= blend_space->get_max_space() - blend_space->get_min_space(); blend_pos += blend_space->get_min_space(); - AnimationTreeEditor::get_singleton()->get_animation_tree()->set(get_blend_position_path(), blend_pos); + tree->set(get_blend_position_path(), blend_pos); blend_space_draw->queue_redraw(); } } void AnimationNodeBlendSpace1DEditor::_blend_space_draw() { + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; + } + Color linecolor = get_theme_color(SNAME("font_color"), SNAME("Label")); Color linecolor_soft = linecolor; linecolor_soft.a *= 0.5; @@ -301,7 +308,7 @@ void AnimationNodeBlendSpace1DEditor::_blend_space_draw() { color.a *= 0.5; } - float point = AnimationTreeEditor::get_singleton()->get_animation_tree()->get(get_blend_position_path()); + float point = tree->get(get_blend_position_path()); point = (point - blend_space->get_min_space()) / (blend_space->get_max_space() - blend_space->get_min_space()); point *= s.width; @@ -575,12 +582,17 @@ void AnimationNodeBlendSpace1DEditor::_notification(int p_what) { } break; case NOTIFICATION_PROCESS: { + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; + } + String error; - if (!AnimationTreeEditor::get_singleton()->get_animation_tree()->is_active()) { + if (!tree->is_active()) { error = TTR("AnimationTree is inactive.\nActivate to enable playback, check node warnings if activation fails."); - } else if (AnimationTreeEditor::get_singleton()->get_animation_tree()->is_state_invalid()) { - error = AnimationTreeEditor::get_singleton()->get_animation_tree()->get_invalid_state_reason(); + } else if (tree->is_state_invalid()) { + error = tree->get_invalid_state_reason(); } if (error != error_label->get_text()) { diff --git a/editor/plugins/animation_blend_space_2d_editor.cpp b/editor/plugins/animation_blend_space_2d_editor.cpp index 4d8e972883..526f69732b 100644 --- a/editor/plugins/animation_blend_space_2d_editor.cpp +++ b/editor/plugins/animation_blend_space_2d_editor.cpp @@ -95,6 +95,11 @@ StringName AnimationNodeBlendSpace2DEditor::get_blend_position_path() const { } void AnimationNodeBlendSpace2DEditor::_blend_space_gui_input(const Ref<InputEvent> &p_event) { + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; + } + Ref<InputEventKey> k = p_event; if (tool_select->is_pressed() && k.is_valid() && k->is_pressed() && k->get_keycode() == Key::KEY_DELETE && !k->is_echo()) { if (selected_point != -1 || selected_triangle != -1) { @@ -118,10 +123,8 @@ void AnimationNodeBlendSpace2DEditor::_blend_space_gui_input(const Ref<InputEven ClassDB::get_inheriters_from_class("AnimationRootNode", &classes); menu->add_submenu_item(TTR("Add Animation"), "animations"); - AnimationTree *gp = AnimationTreeEditor::get_singleton()->get_animation_tree(); - ERR_FAIL_COND(!gp); - if (gp && gp->has_node(gp->get_animation_player())) { - AnimationPlayer *ap = Object::cast_to<AnimationPlayer>(gp->get_node(gp->get_animation_player())); + if (tree->has_node(tree->get_animation_player())) { + AnimationPlayer *ap = Object::cast_to<AnimationPlayer>(tree->get_node(tree->get_animation_player())); if (ap) { List<StringName> names; ap->get_animation_list(&names); @@ -275,7 +278,7 @@ void AnimationNodeBlendSpace2DEditor::_blend_space_gui_input(const Ref<InputEven blend_pos *= (blend_space->get_max_space() - blend_space->get_min_space()); blend_pos += blend_space->get_min_space(); - AnimationTreeEditor::get_singleton()->get_animation_tree()->set(get_blend_position_path(), blend_pos); + tree->set(get_blend_position_path(), blend_pos); blend_space_draw->queue_redraw(); } @@ -311,7 +314,7 @@ void AnimationNodeBlendSpace2DEditor::_blend_space_gui_input(const Ref<InputEven blend_pos *= (blend_space->get_max_space() - blend_space->get_min_space()); blend_pos += blend_space->get_min_space(); - AnimationTreeEditor::get_singleton()->get_animation_tree()->set(get_blend_position_path(), blend_pos); + tree->set(get_blend_position_path(), blend_pos); blend_space_draw->queue_redraw(); } @@ -438,6 +441,11 @@ void AnimationNodeBlendSpace2DEditor::_tool_switch(int p_tool) { } void AnimationNodeBlendSpace2DEditor::_blend_space_draw() { + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; + } + Color linecolor = get_theme_color(SNAME("font_color"), SNAME("Label")); Color linecolor_soft = linecolor; linecolor_soft.a *= 0.5; @@ -596,7 +604,7 @@ void AnimationNodeBlendSpace2DEditor::_blend_space_draw() { color.a *= 0.5; } - Vector2 blend_pos = AnimationTreeEditor::get_singleton()->get_animation_tree()->get(get_blend_position_path()); + Vector2 blend_pos = tree->get(get_blend_position_path()); Vector2 point = blend_pos; point = (point - blend_space->get_min_space()) / (blend_space->get_max_space() - blend_space->get_min_space()); @@ -806,14 +814,19 @@ void AnimationNodeBlendSpace2DEditor::_notification(int p_what) { } break; case NOTIFICATION_PROCESS: { + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; + } + String error; - if (!AnimationTreeEditor::get_singleton()->get_animation_tree()) { + if (!tree) { error = TTR("BlendSpace2D does not belong to an AnimationTree node."); - } else if (!AnimationTreeEditor::get_singleton()->get_animation_tree()->is_active()) { + } else if (!tree->is_active()) { error = TTR("AnimationTree is inactive.\nActivate to enable playback, check node warnings if activation fails."); - } else if (AnimationTreeEditor::get_singleton()->get_animation_tree()->is_state_invalid()) { - error = AnimationTreeEditor::get_singleton()->get_animation_tree()->get_invalid_state_reason(); + } else if (tree->is_state_invalid()) { + error = tree->get_invalid_state_reason(); } else if (blend_space->get_triangle_count() == 0) { error = TTR("No triangles exist, so no blending can take place."); } diff --git a/editor/plugins/animation_blend_tree_editor_plugin.cpp b/editor/plugins/animation_blend_tree_editor_plugin.cpp index dbd1b12a94..509caa78ef 100644 --- a/editor/plugins/animation_blend_tree_editor_plugin.cpp +++ b/editor/plugins/animation_blend_tree_editor_plugin.cpp @@ -99,6 +99,9 @@ Size2 AnimationNodeBlendTreeEditor::get_minimum_size() const { void AnimationNodeBlendTreeEditor::_property_changed(const StringName &p_property, const Variant &p_value, const String &p_field, bool p_changing) { AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; + } updating = true; Ref<EditorUndoRedoManager> &undo_redo = EditorNode::get_undo_redo(); undo_redo->create_action(TTR("Parameter Changed:") + " " + String(p_property), UndoRedo::MERGE_ENDS); @@ -115,6 +118,11 @@ void AnimationNodeBlendTreeEditor::update_graph() { return; } + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; + } + visible_properties.clear(); graph->set_scroll_ofs(blend_tree->get_graph_offset() * EDSCALE); @@ -177,10 +185,10 @@ void AnimationNodeBlendTreeEditor::update_graph() { continue; } String base_path = AnimationTreeEditor::get_singleton()->get_base_path() + String(E) + "/" + F.name; - EditorProperty *prop = EditorInspector::instantiate_property_editor(AnimationTreeEditor::get_singleton()->get_animation_tree(), F.type, base_path, F.hint, F.hint_string, F.usage); + EditorProperty *prop = EditorInspector::instantiate_property_editor(tree, F.type, base_path, F.hint, F.hint_string, F.usage); if (prop) { prop->set_read_only(read_only); - prop->set_object_and_property(AnimationTreeEditor::get_singleton()->get_animation_tree(), base_path); + prop->set_object_and_property(tree, base_path); prop->update_property(); prop->set_name_split_ratio(0); prop->connect("property_changed", callable_mp(this, &AnimationNodeBlendTreeEditor::_property_changed)); @@ -228,9 +236,8 @@ void AnimationNodeBlendTreeEditor::update_graph() { ProgressBar *pb = memnew(ProgressBar); - AnimationTree *player = AnimationTreeEditor::get_singleton()->get_animation_tree(); - if (player->has_node(player->get_animation_player())) { - AnimationPlayer *ap = Object::cast_to<AnimationPlayer>(player->get_node(player->get_animation_player())); + if (tree->has_node(tree->get_animation_player())) { + AnimationPlayer *ap = Object::cast_to<AnimationPlayer>(tree->get_node(tree->get_animation_player())); if (ap) { List<StringName> anims; ap->get_animation_list(&anims); @@ -601,14 +608,19 @@ bool AnimationNodeBlendTreeEditor::_update_filters(const Ref<AnimationNode> &ano return false; } - NodePath player_path = AnimationTreeEditor::get_singleton()->get_animation_tree()->get_animation_player(); + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return false; + } + + NodePath player_path = tree->get_animation_player(); - if (!AnimationTreeEditor::get_singleton()->get_animation_tree()->has_node(player_path)) { + if (!tree->has_node(player_path)) { EditorNode::get_singleton()->show_warning(TTR("No animation player set, so unable to retrieve track names.")); return false; } - AnimationPlayer *player = Object::cast_to<AnimationPlayer>(AnimationTreeEditor::get_singleton()->get_animation_tree()->get_node(player_path)); + AnimationPlayer *player = Object::cast_to<AnimationPlayer>(tree->get_node(player_path)); if (!player) { EditorNode::get_singleton()->show_warning(TTR("Player path set is invalid, so unable to retrieve track names.")); return false; @@ -839,12 +851,17 @@ void AnimationNodeBlendTreeEditor::_notification(int p_what) { } break; case NOTIFICATION_PROCESS: { + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; // Node has been changed. + } + String error; - if (!AnimationTreeEditor::get_singleton()->get_animation_tree()->is_active()) { + if (!tree->is_active()) { error = TTR("AnimationTree is inactive.\nActivate to enable playback, check node warnings if activation fails."); - } else if (AnimationTreeEditor::get_singleton()->get_animation_tree()->is_state_invalid()) { - error = AnimationTreeEditor::get_singleton()->get_animation_tree()->get_invalid_state_reason(); + } else if (tree->is_state_invalid()) { + error = tree->get_invalid_state_reason(); } if (error != error_label->get_text()) { @@ -861,16 +878,15 @@ void AnimationNodeBlendTreeEditor::_notification(int p_what) { for (const AnimationNodeBlendTree::NodeConnection &E : conns) { float activity = 0; StringName path = AnimationTreeEditor::get_singleton()->get_base_path() + E.input_node; - if (AnimationTreeEditor::get_singleton()->get_animation_tree() && !AnimationTreeEditor::get_singleton()->get_animation_tree()->is_state_invalid()) { - activity = AnimationTreeEditor::get_singleton()->get_animation_tree()->get_connection_activity(path, E.input_index); + if (!tree->is_state_invalid()) { + activity = tree->get_connection_activity(path, E.input_index); } graph->set_connection_activity(E.output_node, 0, E.input_node, E.input_index, activity); } - AnimationTree *graph_player = AnimationTreeEditor::get_singleton()->get_animation_tree(); AnimationPlayer *player = nullptr; - if (graph_player->has_node(graph_player->get_animation_player())) { - player = Object::cast_to<AnimationPlayer>(graph_player->get_node(graph_player->get_animation_player())); + if (tree->has_node(tree->get_animation_player())) { + player = Object::cast_to<AnimationPlayer>(tree->get_node(tree->get_animation_player())); } if (player) { @@ -883,7 +899,7 @@ void AnimationNodeBlendTreeEditor::_notification(int p_what) { E.value->set_max(anim->get_length()); //StringName path = AnimationTreeEditor::get_singleton()->get_base_path() + E.input_node; StringName time_path = AnimationTreeEditor::get_singleton()->get_base_path() + String(E.key) + "/time"; - E.value->set_value(AnimationTreeEditor::get_singleton()->get_animation_tree()->get(time_path)); + E.value->set_value(tree->get(time_path)); } } } @@ -937,6 +953,11 @@ void AnimationNodeBlendTreeEditor::_node_renamed(const String &p_text, Ref<Anima return; } + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; + } + String prev_name = blend_tree->get_node_name(p_node); ERR_FAIL_COND(prev_name.is_empty()); GraphNode *gn = Object::cast_to<GraphNode>(graph->get_node(prev_name)); @@ -965,8 +986,8 @@ void AnimationNodeBlendTreeEditor::_node_renamed(const String &p_text, Ref<Anima undo_redo->create_action(TTR("Node Renamed")); undo_redo->add_do_method(blend_tree.ptr(), "rename_node", prev_name, name); undo_redo->add_undo_method(blend_tree.ptr(), "rename_node", name, prev_name); - undo_redo->add_do_method(AnimationTreeEditor::get_singleton()->get_animation_tree(), "rename_parameter", base_path + prev_name, base_path + name); - undo_redo->add_undo_method(AnimationTreeEditor::get_singleton()->get_animation_tree(), "rename_parameter", base_path + name, base_path + prev_name); + undo_redo->add_do_method(tree, "rename_parameter", base_path + prev_name, base_path + name); + undo_redo->add_undo_method(tree, "rename_parameter", base_path + name, base_path + prev_name); undo_redo->add_do_method(this, "update_graph"); undo_redo->add_undo_method(this, "update_graph"); undo_redo->commit_action(); diff --git a/editor/plugins/animation_state_machine_editor.cpp b/editor/plugins/animation_state_machine_editor.cpp index ef9477abea..66a0c746d9 100644 --- a/editor/plugins/animation_state_machine_editor.cpp +++ b/editor/plugins/animation_state_machine_editor.cpp @@ -79,7 +79,12 @@ void AnimationNodeStateMachineEditor::edit(const Ref<AnimationNode> &p_node) { } void AnimationNodeStateMachineEditor::_state_machine_gui_input(const Ref<InputEvent> &p_event) { - Ref<AnimationNodeStateMachinePlayback> playback = AnimationTreeEditor::get_singleton()->get_animation_tree()->get(AnimationTreeEditor::get_singleton()->get_base_path() + "playback"); + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; + } + + Ref<AnimationNodeStateMachinePlayback> playback = tree->get(AnimationTreeEditor::get_singleton()->get_base_path() + "playback"); if (playback.is_null()) { return; } @@ -736,6 +741,11 @@ void AnimationNodeStateMachineEditor::_ungroup_selected_nodes() { } void AnimationNodeStateMachineEditor::_open_menu(const Vector2 &p_position) { + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; + } + menu->clear(); animations_menu->clear(); animations_to_add.clear(); @@ -745,10 +755,8 @@ void AnimationNodeStateMachineEditor::_open_menu(const Vector2 &p_position) { ClassDB::get_inheriters_from_class("AnimationRootNode", &classes); menu->add_submenu_item(TTR("Add Animation"), "animations"); - AnimationTree *gp = AnimationTreeEditor::get_singleton()->get_animation_tree(); - ERR_FAIL_COND(!gp); - if (gp && gp->has_node(gp->get_animation_player())) { - AnimationPlayer *ap = Object::cast_to<AnimationPlayer>(gp->get_node(gp->get_animation_player())); + if (tree->has_node(tree->get_animation_player())) { + AnimationPlayer *ap = Object::cast_to<AnimationPlayer>(tree->get_node(tree->get_animation_player())); if (ap) { List<StringName> names; ap->get_animation_list(&names); @@ -1192,7 +1200,12 @@ void AnimationNodeStateMachineEditor::_clip_dst_line_to_rect(const Vector2 &p_fr } void AnimationNodeStateMachineEditor::_state_machine_draw() { - Ref<AnimationNodeStateMachinePlayback> playback = AnimationTreeEditor::get_singleton()->get_animation_tree()->get(AnimationTreeEditor::get_singleton()->get_base_path() + "playback"); + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; + } + + Ref<AnimationNodeStateMachinePlayback> playback = tree->get(AnimationTreeEditor::get_singleton()->get_base_path() + "playback"); Ref<StyleBoxFlat> style = get_theme_stylebox(SNAME("state_machine_frame"), SNAME("GraphNode")); Ref<StyleBoxFlat> style_selected = get_theme_stylebox(SNAME("state_machine_selected_frame"), SNAME("GraphNode")); @@ -1380,7 +1393,7 @@ void AnimationNodeStateMachineEditor::_state_machine_draw() { } StringName fullpath = AnimationTreeEditor::get_singleton()->get_base_path() + String(tl.advance_condition_name); - if (tl.advance_condition_name != StringName() && bool(AnimationTreeEditor::get_singleton()->get_animation_tree()->get(fullpath))) { + if (tl.advance_condition_name != StringName() && bool(tree->get(fullpath))) { tl.advance_condition_state = true; tl.auto_advance = true; } @@ -1495,7 +1508,12 @@ void AnimationNodeStateMachineEditor::_state_machine_draw() { } void AnimationNodeStateMachineEditor::_state_machine_pos_draw() { - Ref<AnimationNodeStateMachinePlayback> playback = AnimationTreeEditor::get_singleton()->get_animation_tree()->get(AnimationTreeEditor::get_singleton()->get_base_path() + "playback"); + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; + } + + Ref<AnimationNodeStateMachinePlayback> playback = tree->get(AnimationTreeEditor::get_singleton()->get_base_path() + "playback"); if (!playback.is_valid() || !playback->is_playing()) { return; @@ -1587,17 +1605,22 @@ void AnimationNodeStateMachineEditor::_notification(int p_what) { } break; case NOTIFICATION_PROCESS: { + AnimationTree *tree = AnimationTreeEditor::get_singleton()->get_animation_tree(); + if (!tree) { + return; + } + String error; - Ref<AnimationNodeStateMachinePlayback> playback = AnimationTreeEditor::get_singleton()->get_animation_tree()->get(AnimationTreeEditor::get_singleton()->get_base_path() + "playback"); + Ref<AnimationNodeStateMachinePlayback> playback = tree->get(AnimationTreeEditor::get_singleton()->get_base_path() + "playback"); if (error_time > 0) { error = error_text; error_time -= get_process_delta_time(); - } else if (!AnimationTreeEditor::get_singleton()->get_animation_tree()->is_active()) { + } else if (!tree->is_active()) { error = TTR("AnimationTree is inactive.\nActivate to enable playback, check node warnings if activation fails."); - } else if (AnimationTreeEditor::get_singleton()->get_animation_tree()->is_state_invalid()) { - error = AnimationTreeEditor::get_singleton()->get_animation_tree()->get_invalid_state_reason(); + } else if (tree->is_state_invalid()) { + error = tree->get_invalid_state_reason(); /*} else if (state_machine->get_parent().is_valid() && state_machine->get_parent()->is_class("AnimationNodeStateMachine")) { if (state_machine->get_start_node() == StringName() || state_machine->get_end_node() == StringName()) { error = TTR("Start and end nodes are needed for a sub-transition."); @@ -1649,7 +1672,7 @@ void AnimationNodeStateMachineEditor::_notification(int p_what) { break; } - bool acstate = transition_lines[i].advance_condition_name != StringName() && bool(AnimationTreeEditor::get_singleton()->get_animation_tree()->get(AnimationTreeEditor::get_singleton()->get_base_path() + String(transition_lines[i].advance_condition_name))); + bool acstate = transition_lines[i].advance_condition_name != StringName() && bool(tree->get(AnimationTreeEditor::get_singleton()->get_base_path() + String(transition_lines[i].advance_condition_name))); if (transition_lines[i].advance_condition_state != acstate) { state_machine_draw->queue_redraw(); @@ -1704,7 +1727,7 @@ void AnimationNodeStateMachineEditor::_notification(int p_what) { Ref<AnimationNodeStateMachinePlayback> current_node_playback; while (anodesm.is_valid()) { - current_node_playback = AnimationTreeEditor::get_singleton()->get_animation_tree()->get(AnimationTreeEditor::get_singleton()->get_base_path() + next + "/playback"); + current_node_playback = tree->get(AnimationTreeEditor::get_singleton()->get_base_path() + next + "/playback"); next += "/" + current_node_playback->get_current_node(); anodesm = anodesm->get_node(current_node_playback->get_current_node()); } diff --git a/editor/plugins/animation_tree_editor_plugin.cpp b/editor/plugins/animation_tree_editor_plugin.cpp index 61aa861a3f..c31a2689ec 100644 --- a/editor/plugins/animation_tree_editor_plugin.cpp +++ b/editor/plugins/animation_tree_editor_plugin.cpp @@ -77,6 +77,7 @@ void AnimationTreeEditor::edit(AnimationTree *p_tree) { void AnimationTreeEditor::_node_removed(Node *p_node) { if (p_node == tree) { tree = nullptr; + _clear_editors(); } } @@ -151,7 +152,6 @@ void AnimationTreeEditor::edit_path(const Vector<String> &p_path) { } else { current_root = ObjectID(); edited_path = button_path; - for (int i = 0; i < editors.size(); i++) { editors[i]->edit(Ref<AnimationNode>()); editors[i]->hide(); @@ -161,6 +161,17 @@ void AnimationTreeEditor::edit_path(const Vector<String> &p_path) { _update_path(); } +void AnimationTreeEditor::_clear_editors() { + button_path.clear(); + current_root = ObjectID(); + edited_path = button_path; + for (int i = 0; i < editors.size(); i++) { + editors[i]->edit(Ref<AnimationNode>()); + editors[i]->hide(); + } + _update_path(); +} + Vector<String> AnimationTreeEditor::get_edited_path() const { return button_path; } diff --git a/editor/plugins/animation_tree_editor_plugin.h b/editor/plugins/animation_tree_editor_plugin.h index e1d9536f03..b933523057 100644 --- a/editor/plugins/animation_tree_editor_plugin.h +++ b/editor/plugins/animation_tree_editor_plugin.h @@ -60,6 +60,7 @@ class AnimationTreeEditor : public VBoxContainer { Vector<AnimationTreeNodeEditorPlugin *> editors; void _update_path(); + void _clear_editors(); ObjectID current_root; void _path_button_pressed(int p_path); diff --git a/editor/plugins/node_3d_editor_plugin.cpp b/editor/plugins/node_3d_editor_plugin.cpp index f5dd893377..363ad273a8 100644 --- a/editor/plugins/node_3d_editor_plugin.cpp +++ b/editor/plugins/node_3d_editor_plugin.cpp @@ -463,6 +463,15 @@ void Node3DEditorViewport::_view_settings_confirmed(real_t p_interp_delta) { _update_camera(p_interp_delta); } +void Node3DEditorViewport::_update_navigation_controls_visibility() { + bool show_viewport_rotation_gizmo = EDITOR_GET("editors/3d/navigation/show_viewport_rotation_gizmo") && (!previewing_cinema && !previewing_camera); + rotation_control->set_visible(show_viewport_rotation_gizmo); + + bool show_viewport_navigation_gizmo = EDITOR_GET("editors/3d/navigation/show_viewport_navigation_gizmo") && (!previewing_cinema && !previewing_camera); + position_control->set_visible(show_viewport_navigation_gizmo); + look_control->set_visible(show_viewport_navigation_gizmo); +} + void Node3DEditorViewport::_update_camera(real_t p_interp_delta) { bool is_orthogonal = camera->get_projection() == Camera3D::PROJECTION_ORTHOGONAL; @@ -2642,9 +2651,6 @@ void Node3DEditorViewport::_notification(int p_what) { set_freelook_active(false); } call_deferred(SNAME("update_transform_gizmo_view")); - rotation_control->set_visible(EDITOR_GET("editors/3d/navigation/show_viewport_rotation_gizmo")); - position_control->set_visible(EDITOR_GET("editors/3d/navigation/show_viewport_navigation_gizmo")); - look_control->set_visible(EDITOR_GET("editors/3d/navigation/show_viewport_navigation_gizmo")); } break; case NOTIFICATION_RESIZED: { @@ -2662,6 +2668,7 @@ void Node3DEditorViewport::_notification(int p_what) { } } + _update_navigation_controls_visibility(); _update_freelook(delta); Node *scene_root = SceneTreeDock::get_singleton()->get_editor_data()->get_edited_scene_root(); @@ -3566,9 +3573,8 @@ void Node3DEditorViewport::_toggle_camera_preview(bool p_activate) { ERR_FAIL_COND(p_activate && !preview); ERR_FAIL_COND(!p_activate && !previewing); - rotation_control->set_visible(!p_activate); - position_control->set_visible(!p_activate); - look_control->set_visible(!p_activate); + previewing_camera = p_activate; + _update_navigation_controls_visibility(); if (!p_activate) { previewing->disconnect("tree_exiting", callable_mp(this, &Node3DEditorViewport::_preview_exited_scene)); @@ -3589,9 +3595,7 @@ void Node3DEditorViewport::_toggle_camera_preview(bool p_activate) { void Node3DEditorViewport::_toggle_cinema_preview(bool p_activate) { previewing_cinema = p_activate; - rotation_control->set_visible(!p_activate); - position_control->set_visible(!p_activate); - look_control->set_visible(!p_activate); + _update_navigation_controls_visibility(); if (!previewing_cinema) { if (previewing != nullptr) { @@ -8429,8 +8433,8 @@ Node3DEditor::Node3DEditor() { EditorSettings::get_singleton()->add_property_hint(PropertyInfo(Variant::INT, "editors/3d/manipulator_gizmo_size", PROPERTY_HINT_RANGE, "16,160,1")); EDITOR_DEF("editors/3d/manipulator_gizmo_opacity", 0.9); EditorSettings::get_singleton()->add_property_hint(PropertyInfo(Variant::FLOAT, "editors/3d/manipulator_gizmo_opacity", PROPERTY_HINT_RANGE, "0,1,0.01")); - EDITOR_DEF_RST("editors/3d/navigation/show_viewport_rotation_gizmo", true); - EDITOR_DEF_RST("editors/3d/navigation/show_viewport_navigation_gizmo", DisplayServer::get_singleton()->is_touchscreen_available()); + EDITOR_DEF("editors/3d/navigation/show_viewport_rotation_gizmo", true); + EDITOR_DEF("editors/3d/navigation/show_viewport_navigation_gizmo", DisplayServer::get_singleton()->is_touchscreen_available()); current_hover_gizmo_handle = -1; current_hover_gizmo_handle_secondary = false; diff --git a/editor/plugins/node_3d_editor_plugin.h b/editor/plugins/node_3d_editor_plugin.h index fc252822c4..53e167ace6 100644 --- a/editor/plugins/node_3d_editor_plugin.h +++ b/editor/plugins/node_3d_editor_plugin.h @@ -384,6 +384,7 @@ private: void _view_settings_confirmed(real_t p_interp_delta); void _update_camera(real_t p_interp_delta); + void _update_navigation_controls_visibility(); Transform3D to_camera_transform(const Cursor &p_cursor) const; void _draw(); @@ -399,6 +400,7 @@ private: Camera3D *previewing = nullptr; Camera3D *preview = nullptr; + bool previewing_camera; bool previewing_cinema; bool _is_node_locked(const Node *p_node); void _preview_exited_scene(); diff --git a/editor/plugins/packed_scene_editor_plugin.cpp b/editor/plugins/packed_scene_editor_plugin.cpp new file mode 100644 index 0000000000..0a1b96dccb --- /dev/null +++ b/editor/plugins/packed_scene_editor_plugin.cpp @@ -0,0 +1,81 @@ +/*************************************************************************/ +/* packed_scene_editor_plugin.cpp */ +/*************************************************************************/ +/* This file is part of: */ +/* GODOT ENGINE */ +/* https://godotengine.org */ +/*************************************************************************/ +/* Copyright (c) 2007-2022 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2022 Godot Engine contributors (cf. AUTHORS.md). */ +/* */ +/* Permission is hereby granted, free of charge, to any person obtaining */ +/* a copy of this software and associated documentation files (the */ +/* "Software"), to deal in the Software without restriction, including */ +/* without limitation the rights to use, copy, modify, merge, publish, */ +/* distribute, sublicense, and/or sell copies of the Software, and to */ +/* permit persons to whom the Software is furnished to do so, subject to */ +/* the following conditions: */ +/* */ +/* The above copyright notice and this permission notice shall be */ +/* included in all copies or substantial portions of the Software. */ +/* */ +/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */ +/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ +/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ +/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */ +/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */ +/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */ +/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ +/*************************************************************************/ + +#include "packed_scene_editor_plugin.h" + +#include "editor/editor_node.h" +#include "scene/gui/button.h" +#include "scene/resources/packed_scene.h" +#include "scene/scene_string_names.h" + +void PackedSceneEditor::_on_open_scene_pressed() { + // Using deferred call because changing scene updates the Inspector and thus destroys this plugin. + callable_mp(EditorNode::get_singleton(), &EditorNode::open_request).call_deferred(packed_scene->get_path()); +} + +void PackedSceneEditor::_notification(int p_what) { + switch (p_what) { + case NOTIFICATION_ENTER_TREE: + case NOTIFICATION_THEME_CHANGED: { + open_scene_button->set_icon(get_theme_icon(SNAME("PackedScene"), SNAME("EditorIcons"))); + } break; + } +} + +PackedSceneEditor::PackedSceneEditor(Ref<PackedScene> &p_packed_scene) { + packed_scene = p_packed_scene; + + open_scene_button = EditorInspector::create_inspector_action_button(TTR("Open Scene")); + open_scene_button->connect(SNAME("pressed"), callable_mp(this, &PackedSceneEditor::_on_open_scene_pressed)); + open_scene_button->set_disabled(!packed_scene->get_path().get_file().is_valid_filename()); + add_child(open_scene_button); + + add_child(memnew(Control)); // Add padding before the regular properties. +} + +/////////////////////// + +bool EditorInspectorPluginPackedScene::can_handle(Object *p_object) { + return Object::cast_to<PackedScene>(p_object) != nullptr; +} + +void EditorInspectorPluginPackedScene::parse_begin(Object *p_object) { + Ref<PackedScene> packed_scene(p_object); + PackedSceneEditor *editor = memnew(PackedSceneEditor(packed_scene)); + add_custom_control(editor); +} + +/////////////////////// + +PackedSceneEditorPlugin::PackedSceneEditorPlugin() { + Ref<EditorInspectorPluginPackedScene> plugin; + plugin.instantiate(); + add_inspector_plugin(plugin); +} diff --git a/editor/plugins/packed_scene_editor_plugin.h b/editor/plugins/packed_scene_editor_plugin.h new file mode 100644 index 0000000000..0912030180 --- /dev/null +++ b/editor/plugins/packed_scene_editor_plugin.h @@ -0,0 +1,68 @@ +/*************************************************************************/ +/* packed_scene_editor_plugin.h */ +/*************************************************************************/ +/* This file is part of: */ +/* GODOT ENGINE */ +/* https://godotengine.org */ +/*************************************************************************/ +/* Copyright (c) 2007-2022 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2022 Godot Engine contributors (cf. AUTHORS.md). */ +/* */ +/* Permission is hereby granted, free of charge, to any person obtaining */ +/* a copy of this software and associated documentation files (the */ +/* "Software"), to deal in the Software without restriction, including */ +/* without limitation the rights to use, copy, modify, merge, publish, */ +/* distribute, sublicense, and/or sell copies of the Software, and to */ +/* permit persons to whom the Software is furnished to do so, subject to */ +/* the following conditions: */ +/* */ +/* The above copyright notice and this permission notice shall be */ +/* included in all copies or substantial portions of the Software. */ +/* */ +/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */ +/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ +/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ +/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */ +/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */ +/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */ +/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ +/*************************************************************************/ + +#ifndef PACKED_SCENE_EDITOR_PLUGIN_H +#define PACKED_SCENE_EDITOR_PLUGIN_H + +#include "editor/editor_inspector.h" +#include "editor/editor_plugin.h" +#include "scene/gui/box_container.h" + +class PackedSceneEditor : public VBoxContainer { + GDCLASS(PackedSceneEditor, VBoxContainer); + + Ref<PackedScene> packed_scene; + Button *open_scene_button; + + void _on_open_scene_pressed(); + +protected: + void _notification(int p_what); + +public: + PackedSceneEditor(Ref<PackedScene> &p_packed_scene); +}; + +class EditorInspectorPluginPackedScene : public EditorInspectorPlugin { + GDCLASS(EditorInspectorPluginPackedScene, EditorInspectorPlugin); + +public: + virtual bool can_handle(Object *p_object) override; + virtual void parse_begin(Object *p_object) override; +}; + +class PackedSceneEditorPlugin : public EditorPlugin { + GDCLASS(PackedSceneEditorPlugin, EditorPlugin); + +public: + PackedSceneEditorPlugin(); +}; + +#endif // PACKED_SCENE_EDITOR_PLUGIN_H diff --git a/editor/plugins/path_3d_editor_plugin.cpp b/editor/plugins/path_3d_editor_plugin.cpp index 63ca78d6c0..7a9e50e482 100644 --- a/editor/plugins/path_3d_editor_plugin.cpp +++ b/editor/plugins/path_3d_editor_plugin.cpp @@ -274,13 +274,10 @@ void Path3DGizmo::redraw() { // Fish Bone. v3p.push_back(p1); - v3p.push_back(p1 + (side - forward) * 0.06); + v3p.push_back(p1 + (side - forward + up * 0.3) * 0.06); v3p.push_back(p1); - v3p.push_back(p1 + (-side - forward) * 0.06); - - v3p.push_back(p1); - v3p.push_back(p1 + up * 0.03); + v3p.push_back(p1 + (-side - forward + up * 0.3) * 0.06); } add_lines(v3p, path_material); diff --git a/editor/plugins/tiles/tile_map_editor.cpp b/editor/plugins/tiles/tile_map_editor.cpp index 0331e3f69e..4131c06745 100644 --- a/editor/plugins/tiles/tile_map_editor.cpp +++ b/editor/plugins/tiles/tile_map_editor.cpp @@ -55,7 +55,7 @@ void TileMapEditorTilesPlugin::tile_set_changed() { } void TileMapEditorTilesPlugin::_on_random_tile_checkbox_toggled(bool p_pressed) { - scatter_spinbox->set_editable(p_pressed); + scatter_controls_container->set_visible(p_pressed); } void TileMapEditorTilesPlugin::_on_scattering_spinbox_changed(double p_value) { @@ -2124,10 +2124,12 @@ TileMapEditorTilesPlugin::TileMapEditorTilesPlugin() { tools_settings->add_child(random_tile_toggle); // Random tile scattering. + scatter_controls_container = memnew(HBoxContainer); + scatter_label = memnew(Label); scatter_label->set_tooltip_text(TTR("Defines the probability of painting nothing instead of a randomly selected tile.")); scatter_label->set_text(TTR("Scattering:")); - tools_settings->add_child(scatter_label); + scatter_controls_container->add_child(scatter_label); scatter_spinbox = memnew(SpinBox); scatter_spinbox->set_min(0.0); @@ -2136,7 +2138,8 @@ TileMapEditorTilesPlugin::TileMapEditorTilesPlugin() { scatter_spinbox->set_tooltip_text(TTR("Defines the probability of painting nothing instead of a randomly selected tile.")); scatter_spinbox->get_line_edit()->add_theme_constant_override("minimum_character_width", 4); scatter_spinbox->connect("value_changed", callable_mp(this, &TileMapEditorTilesPlugin::_on_scattering_spinbox_changed)); - tools_settings->add_child(scatter_spinbox); + scatter_controls_container->add_child(scatter_spinbox); + tools_settings->add_child(scatter_controls_container); _on_random_tile_checkbox_toggled(false); diff --git a/editor/plugins/tiles/tile_map_editor.h b/editor/plugins/tiles/tile_map_editor.h index ad27795437..9700e26e01 100644 --- a/editor/plugins/tiles/tile_map_editor.h +++ b/editor/plugins/tiles/tile_map_editor.h @@ -91,6 +91,8 @@ private: VSeparator *tools_settings_vsep_2 = nullptr; CheckBox *bucket_contiguous_checkbox = nullptr; Button *random_tile_toggle = nullptr; + + HBoxContainer *scatter_controls_container = nullptr; float scattering = 0.0; Label *scatter_label = nullptr; SpinBox *scatter_spinbox = nullptr; diff --git a/editor/plugins/tiles/tile_set_atlas_source_editor.cpp b/editor/plugins/tiles/tile_set_atlas_source_editor.cpp index a6cb48cb5d..34bbfa2c7e 100644 --- a/editor/plugins/tiles/tile_set_atlas_source_editor.cpp +++ b/editor/plugins/tiles/tile_set_atlas_source_editor.cpp @@ -807,9 +807,7 @@ void TileSetAtlasSourceEditor::_update_tile_data_editors() { } else { tile_data_editor_dropdown_button->set_text(TTR("Select a property editor")); } - tile_data_editors_label->set_visible(is_visible); - tile_data_editors_tree->set_visible(is_visible); - tile_data_painting_editor_container->set_visible(is_visible); + tile_data_editors_scroll->set_visible(is_visible); } void TileSetAtlasSourceEditor::_update_current_tile_data_editor() { @@ -2428,17 +2426,26 @@ TileSetAtlasSourceEditor::TileSetAtlasSourceEditor() { middle_vbox_container->add_child(tile_inspector_no_tile_selected_label); // Property values palette. + tile_data_editors_scroll = memnew(ScrollContainer); + tile_data_editors_scroll->set_horizontal_scroll_mode(ScrollContainer::SCROLL_MODE_DISABLED); + tile_data_editors_scroll->set_v_size_flags(SIZE_EXPAND_FILL); + middle_vbox_container->add_child(tile_data_editors_scroll); + + VBoxContainer *tile_data_editors_vbox = memnew(VBoxContainer); + tile_data_editors_vbox->set_h_size_flags(SIZE_EXPAND_FILL); + tile_data_editors_scroll->add_child(tile_data_editors_vbox); + tile_data_editors_popup = memnew(Popup); tile_data_editors_label = memnew(Label); tile_data_editors_label->set_text(TTR("Paint Properties:")); tile_data_editors_label->set_theme_type_variation("HeaderSmall"); - middle_vbox_container->add_child(tile_data_editors_label); + tile_data_editors_vbox->add_child(tile_data_editors_label); tile_data_editor_dropdown_button = memnew(Button); tile_data_editor_dropdown_button->connect("draw", callable_mp(this, &TileSetAtlasSourceEditor::_tile_data_editor_dropdown_button_draw)); tile_data_editor_dropdown_button->connect("pressed", callable_mp(this, &TileSetAtlasSourceEditor::_tile_data_editor_dropdown_button_pressed)); - middle_vbox_container->add_child(tile_data_editor_dropdown_button); + tile_data_editors_vbox->add_child(tile_data_editor_dropdown_button); tile_data_editor_dropdown_button->add_child(tile_data_editors_popup); tile_data_editors_tree = memnew(Tree); @@ -2451,7 +2458,7 @@ TileSetAtlasSourceEditor::TileSetAtlasSourceEditor() { tile_data_painting_editor_container = memnew(VBoxContainer); tile_data_painting_editor_container->set_h_size_flags(SIZE_EXPAND_FILL); - middle_vbox_container->add_child(tile_data_painting_editor_container); + tile_data_editors_vbox->add_child(tile_data_painting_editor_container); // Atlas source inspector. atlas_source_proxy_object = memnew(TileSetAtlasSourceProxyObject()); diff --git a/editor/plugins/tiles/tile_set_atlas_source_editor.h b/editor/plugins/tiles/tile_set_atlas_source_editor.h index 2e25841248..eede2ec086 100644 --- a/editor/plugins/tiles/tile_set_atlas_source_editor.h +++ b/editor/plugins/tiles/tile_set_atlas_source_editor.h @@ -120,6 +120,7 @@ private: bool tile_set_changed_needs_update = false; // -- Properties painting -- + ScrollContainer *tile_data_editors_scroll = nullptr; VBoxContainer *tile_data_painting_editor_container = nullptr; Label *tile_data_editors_label = nullptr; Button *tile_data_editor_dropdown_button = nullptr; diff --git a/editor/project_manager.cpp b/editor/project_manager.cpp index 249504b6e8..a1b2aa3089 100644 --- a/editor/project_manager.cpp +++ b/editor/project_manager.cpp @@ -94,6 +94,7 @@ private: Container *path_container; Container *install_path_container; Container *renderer_container; + Label *renderer_info; HBoxContainer *default_files_container; Ref<ButtonGroup> renderer_button_group; Label *msg; @@ -426,6 +427,35 @@ private: ok_pressed(); } + void _renderer_selected() { + String renderer_type = renderer_button_group->get_pressed_button()->get_meta(SNAME("rendering_method")); + + if (renderer_type == "forward_plus") { + renderer_info->set_text( + String::utf8("• ") + TTR("Supports desktop platforms only.") + + String::utf8("\n• ") + TTR("Advanced 3D graphics available.") + + String::utf8("\n• ") + TTR("Can scale to large complex scenes.") + + String::utf8("\n• ") + TTR("Uses RenderingDevice backend.") + + String::utf8("\n• ") + TTR("Slower rendering of simple scenes.")); + } else if (renderer_type == "mobile") { + renderer_info->set_text( + String::utf8("• ") + TTR("Supports desktop + mobile platforms.") + + String::utf8("\n• ") + TTR("Less advanced 3D graphics.") + + String::utf8("\n• ") + TTR("Less scalable for complex scenes.") + + String::utf8("\n• ") + TTR("Uses RenderingDevice backend.") + + String::utf8("\n• ") + TTR("Fast rendering of simple scenes.")); + } else if (renderer_type == "gl_compatibility") { + renderer_info->set_text( + String::utf8("• ") + TTR("Supports desktop, mobile, + web platforms.") + + String::utf8("\n• ") + TTR("Least advanced 3D graphics.") + + String::utf8("\n• ") + TTR("Intended for low-end/older devices.") + + String::utf8("\n• ") + TTR("Uses OpenGL 3 backend (OpenGL 3.3/ES 3.0/WebGL2).") + + String::utf8("\n• ") + TTR("Fastest rendering of simple scenes.")); + } else { + WARN_PRINT("Unknown renderer type. Please report this as a bug on GitHub."); + } + } + void ok_pressed() override { String dir = project_path->get_text(); @@ -483,10 +513,15 @@ private: String renderer_type = renderer_button_group->get_pressed_button()->get_meta(SNAME("rendering_method")); initial_settings["rendering/renderer/rendering_method"] = renderer_type; + EditorSettings::get_singleton()->set("project_manager/default_renderer", renderer_type); + EditorSettings::get_singleton()->save(); + if (renderer_type == "forward_plus") { project_features.push_back("Forward Plus"); } else if (renderer_type == "mobile") { project_features.push_back("Mobile"); + } else if (renderer_type == "gl_compatibility") { + project_features.push_back("GL Compatibility"); } else { WARN_PRINT("Unknown renderer type. Please report this as a bug on GitHub."); } @@ -860,42 +895,55 @@ public: renderer_container->add_child(rshc); renderer_button_group.instantiate(); + // Left hand side, used for checkboxes to select renderer. Container *rvb = memnew(VBoxContainer); - rvb->set_h_size_flags(Control::SIZE_EXPAND_FILL); rshc->add_child(rvb); + + String default_renderer_type = "forward_plus"; + if (EditorSettings::get_singleton()->has_setting("project_manager/default_renderer")) { + default_renderer_type = EditorSettings::get_singleton()->get_setting("project_manager/default_renderer"); + } + Button *rs_button = memnew(CheckBox); rs_button->set_button_group(renderer_button_group); rs_button->set_text(TTR("Forward+")); rs_button->set_meta(SNAME("rendering_method"), "forward_plus"); - rs_button->set_pressed(true); + rs_button->connect("pressed", callable_mp(this, &ProjectDialog::_renderer_selected)); rvb->add_child(rs_button); - l = memnew(Label); - l->set_text( - String::utf8("• ") + TTR("Supports desktop platforms only.") + - String::utf8("\n• ") + TTR("Advanced 3D graphics available.") + - String::utf8("\n• ") + TTR("Can scale to large complex scenes.") + - String::utf8("\n• ") + TTR("Slower rendering of simple scenes.")); - l->set_modulate(Color(1, 1, 1, 0.7)); - rvb->add_child(l); - - rshc->add_child(memnew(VSeparator)); + if (default_renderer_type == "forward_plus") { + rs_button->set_pressed(true); + } - rvb = memnew(VBoxContainer); - rvb->set_h_size_flags(Control::SIZE_EXPAND_FILL); - rshc->add_child(rvb); rs_button = memnew(CheckBox); rs_button->set_button_group(renderer_button_group); rs_button->set_text(TTR("Mobile")); rs_button->set_meta(SNAME("rendering_method"), "mobile"); + rs_button->connect("pressed", callable_mp(this, &ProjectDialog::_renderer_selected)); rvb->add_child(rs_button); - l = memnew(Label); - l->set_text( - String::utf8("• ") + TTR("Supports desktop + mobile platforms.") + - String::utf8("\n• ") + TTR("Less advanced 3D graphics.") + - String::utf8("\n• ") + TTR("Less scalable for complex scenes.") + - String::utf8("\n• ") + TTR("Faster rendering of simple scenes.")); - l->set_modulate(Color(1, 1, 1, 0.7)); - rvb->add_child(l); + if (default_renderer_type == "mobile") { + rs_button->set_pressed(true); + } + + rs_button = memnew(CheckBox); + rs_button->set_button_group(renderer_button_group); + rs_button->set_text(TTR("Compatibility")); + rs_button->set_meta(SNAME("rendering_method"), "gl_compatibility"); + rs_button->connect("pressed", callable_mp(this, &ProjectDialog::_renderer_selected)); + rvb->add_child(rs_button); + if (default_renderer_type == "gl_compatibility") { + rs_button->set_pressed(true); + } + + rshc->add_child(memnew(VSeparator)); + + // Right hand side, used for text explaining each choice. + rvb = memnew(VBoxContainer); + rvb->set_h_size_flags(Control::SIZE_EXPAND_FILL); + rshc->add_child(rvb); + renderer_info = memnew(Label); + renderer_info->set_modulate(Color(1, 1, 1, 0.7)); + rvb->add_child(renderer_info); + _renderer_selected(); l = memnew(Label); l->set_text(TTR("The renderer can be changed later, but scenes may need to be adjusted.")); diff --git a/editor/register_editor_types.cpp b/editor/register_editor_types.cpp index f301ff5c6b..247d5e1717 100644 --- a/editor/register_editor_types.cpp +++ b/editor/register_editor_types.cpp @@ -79,6 +79,7 @@ #include "editor/plugins/navigation_polygon_editor_plugin.h" #include "editor/plugins/node_3d_editor_gizmos.h" #include "editor/plugins/occluder_instance_3d_editor_plugin.h" +#include "editor/plugins/packed_scene_editor_plugin.h" #include "editor/plugins/path_2d_editor_plugin.h" #include "editor/plugins/path_3d_editor_plugin.h" #include "editor/plugins/physical_bone_3d_editor_plugin.h" @@ -175,6 +176,7 @@ void register_editor_types() { EditorPlugins::add_by_type<MeshLibraryEditorPlugin>(); EditorPlugins::add_by_type<MultiMeshEditorPlugin>(); EditorPlugins::add_by_type<OccluderInstance3DEditorPlugin>(); + EditorPlugins::add_by_type<PackedSceneEditorPlugin>(); EditorPlugins::add_by_type<Path3DEditorPlugin>(); EditorPlugins::add_by_type<PhysicalBone3DEditorPlugin>(); EditorPlugins::add_by_type<Polygon3DEditorPlugin>(); diff --git a/editor/translations/af.po b/editor/translations/af.po index 8ada9c3379..a705eb58fb 100644 --- a/editor/translations/af.po +++ b/editor/translations/af.po @@ -13115,9 +13115,10 @@ msgstr "EnkelHouer" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14517,13 +14518,13 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "" +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Kan nie '%s' oopmaak nie." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -23582,6 +23583,15 @@ msgstr "Fout terwyl laai:" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Skep Vouer" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/ar.po b/editor/translations/ar.po index adaef249f8..204dd9a41b 100644 --- a/editor/translations/ar.po +++ b/editor/translations/ar.po @@ -69,13 +69,14 @@ # عبد الرØمن أبو سعدة ||Abd Alrahman abo saada <abdalrahmanabs2005@gmail.com>, 2022. # xX-Void-Xx <arandomdude75@gmail.com>, 2022. # Ø£Øمد النور <ahmed2699@gmail.com>, 2022. +# Commander Gordon <gordoncommander@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-08 07:39+0000\n" -"Last-Translator: Ø£Øمد النور <ahmed2699@gmail.com>\n" +"PO-Revision-Date: 2022-10-29 23:55+0000\n" +"Last-Translator: Commander Gordon <gordoncommander@gmail.com>\n" "Language-Team: Arabic <https://hosted.weblate.org/projects/godot-engine/" "godot/ar/>\n" "Language: ar\n" @@ -84,7 +85,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.14.1-dev\n" +"X-Generator: Weblate 4.14.2-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -524,7 +525,7 @@ msgstr "السرعة" #: core/os/input_event.cpp editor/project_settings_editor.cpp #: scene/3d/sprite_3d.cpp msgid "Axis" -msgstr "Ù…Øاور" +msgstr "Ù…Øور" #: core/os/input_event.cpp msgid "Axis Value" @@ -714,9 +715,8 @@ msgid "Version Control Autoload On Startup" msgstr "التØميل التلقائي للتØكم ÙÙŠ الإصدار عند بدء التشغيل" #: core/project_settings.cpp -#, fuzzy msgid "Version Control Plugin Name" -msgstr "إدارة الإصدارات (Version Control)" +msgstr "اسم مدير اصدار الاضاÙØ©" #: core/project_settings.cpp scene/2d/collision_object_2d.cpp #: scene/3d/collision_object.cpp scene/gui/control.cpp @@ -797,9 +797,8 @@ msgid "3D" msgstr "ثلاثي الأبعاد 3D" #: core/project_settings.cpp -#, fuzzy msgid "Smooth Trimesh Collision" -msgstr "إنشاء متصادم تراميش قريب" +msgstr "إنشاء متصادم ترام" #: core/project_settings.cpp drivers/gles2/rasterizer_canvas_base_gles2.cpp #: drivers/gles2/rasterizer_scene_gles2.cpp @@ -1194,7 +1193,7 @@ msgstr "توطين" #: scene/3d/remote_transform.cpp scene/3d/spatial.cpp scene/gui/control.cpp #, fuzzy msgid "Rotation" -msgstr "خطوة الدوران:" +msgstr "خطوة الدوران" #: editor/animation_track_editor.cpp editor/script_editor_debugger.cpp #: modules/visual_script/visual_script_nodes.cpp scene/gui/range.cpp @@ -1204,7 +1203,7 @@ msgstr "قيمة" #: editor/animation_track_editor.cpp #, fuzzy msgid "Arg Count" -msgstr "الكمية:" +msgstr "الكمية" #: editor/animation_track_editor.cpp main/main.cpp #: modules/mono/mono_gd/gd_mono.cpp @@ -1238,12 +1237,12 @@ msgstr "المجرى (Stream)" #: editor/animation_track_editor.cpp #, fuzzy msgid "Start Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: editor/animation_track_editor.cpp #, fuzzy msgid "End Offset" -msgstr "المÙعادل:" +msgstr "المÙعادل" #: editor/animation_track_editor.cpp editor/editor_settings.cpp #: editor/import/resource_importer_scene.cpp @@ -1373,7 +1372,7 @@ msgstr "الوقت(ثواني):" #: editor/animation_track_editor.cpp #, fuzzy msgid "Position:" -msgstr "مكان الرصيÙ" +msgstr "مكان الرصيÙ:" #: editor/animation_track_editor.cpp #, fuzzy @@ -1397,27 +1396,27 @@ msgstr "نوع:" #: editor/animation_track_editor.cpp #, fuzzy msgid "(Invalid, expected type: %s)" -msgstr "إدارة قوالب التصدير:" +msgstr "إدارة قوالب التصدير" #: editor/animation_track_editor.cpp #, fuzzy msgid "Easing:" -msgstr "تسارع بعد بداية بطيئة" +msgstr "تسارع بعد بداية بطيئة:" #: editor/animation_track_editor.cpp #, fuzzy msgid "In-Handle:" -msgstr "Øدد المعامل" +msgstr "Øدد المعامل:" #: editor/animation_track_editor.cpp #, fuzzy msgid "Out-Handle:" -msgstr "Øدد المعامل" +msgstr "Øدد المعامل:" #: editor/animation_track_editor.cpp #, fuzzy msgid "Stream:" -msgstr "عنصر Ø®Ùيار" +msgstr "عنصر Ø®Ùيار:" #: editor/animation_track_editor.cpp #, fuzzy @@ -2613,7 +2612,7 @@ msgstr "لا يوجد مل٠'%s'." #: editor/editor_audio_buses.cpp #, fuzzy msgid "Layout:" -msgstr "المخطط" +msgstr "المخطط:" #: editor/editor_audio_buses.cpp msgid "Invalid file, not an audio bus layout." @@ -2821,7 +2820,7 @@ msgstr "تصدير المشروع لمنصة:" #: editor/editor_export.cpp #, fuzzy msgid "Completed with warnings." -msgstr "نسخ مسار العÙقدة" +msgstr "نسخ مسار العÙقدة." #: editor/editor_export.cpp #, fuzzy @@ -2831,7 +2830,7 @@ msgstr "اكتمل بنجاØ." #: editor/editor_export.cpp #, fuzzy msgid "Failed." -msgstr "Ùشل:" +msgstr "Ùشل." #: editor/editor_export.cpp msgid "Storing File:" @@ -2858,12 +2857,12 @@ msgstr "لا يمكن إنشاء المجلد." #: editor/editor_export.cpp #, fuzzy msgid "Failed to export project files." -msgstr "لم نتمكن من تصدير ملÙات المشروع" +msgstr "لم نتمكن من تصدير ملÙات المشروع." #: editor/editor_export.cpp #, fuzzy msgid "Can't open file to read from path \"%s\"." -msgstr "لا يمكن ÙØªØ Ø§Ù„Ù…Ù„Ù Ù„Ù„ÙƒØªØ§Ø¨Ø©:" +msgstr "لا يمكن ÙØªØ Ø§Ù„Ù…Ù„Ù Ù„Ù„ÙƒØªØ§Ø¨Ø©." #: editor/editor_export.cpp #, fuzzy @@ -2998,17 +2997,17 @@ msgstr "إدارة القوالب" #: editor/editor_export.cpp platform/osx/export/export.cpp #, fuzzy msgid "The given export path doesn't exist." -msgstr "مسار التصدير المÙزود غير موجود:" +msgstr "مسار التصدير المÙزود غير موجود." #: editor/editor_export.cpp platform/javascript/export/export.cpp #, fuzzy msgid "Template file not found: \"%s\"." -msgstr "مل٠النموذج غير موجود:" +msgstr "مل٠النموذج غير موجود: ." #: editor/editor_export.cpp #, fuzzy msgid "Failed to copy export template." -msgstr "إدارة قوالب التصدير:" +msgstr "إدارة قوالب التصدير." #: editor/editor_export.cpp platform/windows/export/export.cpp #: platform/x11/export/export.cpp @@ -3304,7 +3303,7 @@ msgstr "الوصول (للملÙ)" #: editor/editor_file_dialog.cpp editor/editor_settings.cpp #, fuzzy msgid "Display Mode" -msgstr "وضع التشغيل:" +msgstr "وضع التشغيل" #: editor/editor_file_dialog.cpp #: editor/import/resource_importer_layered_texture.cpp @@ -3324,17 +3323,17 @@ msgstr "وضع السØب" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp #, fuzzy msgid "Current Dir" -msgstr "الØالي:" +msgstr "الØالي" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp #, fuzzy msgid "Current File" -msgstr "المل٠(النسخة) الØالية:" +msgstr "المل٠(النسخة) الØالية" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp #, fuzzy msgid "Current Path" -msgstr "الØالي:" +msgstr "الØالي" #: editor/editor_file_dialog.cpp editor/editor_settings.cpp #: scene/gui/file_dialog.cpp @@ -3661,7 +3660,7 @@ msgstr "عنصر Ù…ÙÙعل" #: editor/editor_inspector.cpp #, fuzzy msgid "Draw Red" -msgstr "استدعاءات الرسم:" +msgstr "استدعاءات الرسم" #: editor/editor_inspector.cpp #, fuzzy @@ -4429,7 +4428,7 @@ msgstr "Ù…ÙتÙØص" #: editor/editor_node.cpp #, fuzzy msgid "Default Property Name Style" -msgstr "مسار المشروع:" +msgstr "مسار المشروع" #: editor/editor_node.cpp msgid "Default Float Step" @@ -5278,7 +5277,7 @@ msgstr "ÙØªØ Ø§Ù„ÙƒÙˆØ¯ البرمجي" #: editor/editor_resource_picker.cpp #, fuzzy msgid "Script Owner" -msgstr "اسم النص البرمجي:" +msgstr "اسم النص البرمجي" #: editor/editor_run_native.cpp msgid "" @@ -5454,12 +5453,12 @@ msgstr "الاتجاهات" #: editor/editor_settings.cpp #, fuzzy msgid "Autoscan Project Path" -msgstr "مسار المشروع:" +msgstr "مسار المشروع" #: editor/editor_settings.cpp #, fuzzy msgid "Default Project Path" -msgstr "مسار المشروع:" +msgstr "مسار المشروع" #: editor/editor_settings.cpp msgid "On Save" @@ -5482,7 +5481,7 @@ msgstr "ناÙذة XForm" #: editor/editor_settings.cpp #, fuzzy msgid "Thumbnail Size" -msgstr "الصورة المصغرة..." +msgstr "الصورة المصغرة" #: editor/editor_settings.cpp msgid "Docks" @@ -5612,12 +5611,12 @@ msgstr "المظهر" #: editor/editor_settings.cpp scene/gui/text_edit.cpp msgid "Show Line Numbers" -msgstr "اضهار رقم الخط" +msgstr "اظهار رقم الخط" #: editor/editor_settings.cpp #, fuzzy msgid "Line Numbers Zero Padded" -msgstr "رقم الخط:" +msgstr "رقم الخط" #: editor/editor_settings.cpp msgid "Show Bookmark Gutter" @@ -5837,12 +5836,12 @@ msgstr "شكل" #: editor/editor_settings.cpp #, fuzzy msgid "Primary Grid Steps" -msgstr "خطوة الشبكة:" +msgstr "خطوة الشبكة" #: editor/editor_settings.cpp #, fuzzy msgid "Grid Size" -msgstr "خطوة الشبكة:" +msgstr "خطوة الشبكة" #: editor/editor_settings.cpp msgid "Grid Division Level Max" @@ -6027,7 +6026,7 @@ msgstr "إعادة تسمية عنصر اللون" #: editor/editor_settings.cpp #, fuzzy msgid "Bone Selected Color" -msgstr "عدل على الØساب الØالي:" +msgstr "عدل على الØساب الØالي" #: editor/editor_settings.cpp msgid "Bone IK Color" @@ -6040,7 +6039,7 @@ msgstr "لون Øدود العظام" #: editor/editor_settings.cpp #, fuzzy msgid "Bone Outline Size" -msgstr "Øجم الخطوط:" +msgstr "Øجم الخطوط" #: editor/editor_settings.cpp msgid "Viewport Border Color" @@ -6061,7 +6060,7 @@ msgstr "التمرير للتØريك" #: editor/editor_settings.cpp #, fuzzy msgid "Pan Speed" -msgstr "السرعة:" +msgstr "السرعة" #: editor/editor_settings.cpp editor/plugins/polygon_2d_editor_plugin.cpp #, fuzzy @@ -6136,7 +6135,7 @@ msgstr "الاقتطاع التلقائي" #: editor/editor_settings.cpp #, fuzzy msgid "Save Before Running" -msgstr "اØÙظ المشهد قبل التشغيل..." +msgstr "اØÙظ المشهد قبل التشغيل" #: editor/editor_settings.cpp #, fuzzy @@ -6182,7 +6181,7 @@ msgstr "مدير المشروع" #: editor/editor_settings.cpp #, fuzzy msgid "Sorting Order" -msgstr "إعادة تسمية مجلد:" +msgstr "إعادة تسمية مجلد" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Symbol Color" @@ -6216,19 +6215,19 @@ msgstr "لون التعليق" #: editor/editor_settings.cpp #, fuzzy msgid "String Color" -msgstr "تخزين الملÙ:" +msgstr "تخزين الملÙ" #: editor/editor_settings.cpp platform/javascript/export/export.cpp #: platform/uwp/export/export.cpp #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Background Color" -msgstr "لون خلÙية غير صالØ." +msgstr "لون خلÙية غير صالØ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Completion Background Color" -msgstr "لون خلÙية غير صالØ." +msgstr "لون خلÙية غير صالØ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -6255,12 +6254,12 @@ msgstr "الطابق التالي" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Line Number Color" -msgstr "رقم الخط:" +msgstr "رقم الخط" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Safe Line Number Color" -msgstr "رقم الخط:" +msgstr "رقم الخط" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Caret Color" @@ -6269,7 +6268,7 @@ msgstr "لون علامة الإقØام" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Caret Background Color" -msgstr "لون خلÙية غير صالØ." +msgstr "لون خلÙية غير صالØ" #: editor/editor_settings.cpp #, fuzzy @@ -7047,7 +7046,7 @@ msgstr "Ù…Øدد" #: editor/import/resource_importer_layered_texture.cpp #, fuzzy msgid "ColorCorrect" -msgstr "الوظيÙØ© البرمجية للون." +msgstr "الوظيÙØ© البرمجية للون" #: editor/import/resource_importer_layered_texture.cpp msgid "No BPTC If RGB" @@ -7072,7 +7071,7 @@ msgstr "كرر" #: scene/gui/control.cpp #, fuzzy msgid "Filter" -msgstr "مرشØات:" +msgstr "مرشØات" #: editor/import/resource_importer_layered_texture.cpp #: editor/import/resource_importer_texture.cpp @@ -7101,7 +7100,7 @@ msgstr "الاقتطاع التلقائي" #: scene/resources/style_box.cpp #, fuzzy msgid "Horizontal" -msgstr "عَرضياً:" +msgstr "عَرضياً" #: editor/import/resource_importer_layered_texture.cpp #: scene/gui/aspect_ratio_container.cpp scene/gui/control.cpp @@ -7109,7 +7108,7 @@ msgstr "عَرضياً:" #: scene/resources/style_box.cpp #, fuzzy msgid "Vertical" -msgstr "شاقولياً:" +msgstr "شاقولياً" #: editor/import/resource_importer_obj.cpp #, fuzzy @@ -7124,7 +7123,7 @@ msgstr "وضع التØجيم" #: editor/import/resource_importer_obj.cpp #, fuzzy msgid "Offset Mesh" -msgstr "المÙعادل:" +msgstr "المÙعادل" #: editor/import/resource_importer_obj.cpp #: editor/import/resource_importer_scene.cpp @@ -7205,7 +7204,7 @@ msgstr "قص العÙقد" #: editor/import/resource_importer_scene.cpp scene/resources/texture.cpp #, fuzzy msgid "Storage" -msgstr "تخزين الملÙ:" +msgstr "تخزين الملÙ" #: editor/import/resource_importer_scene.cpp msgid "Use Legacy Names" @@ -7214,7 +7213,7 @@ msgstr "استخدم الأسماء القديمة" #: editor/import/resource_importer_scene.cpp modules/gltf/gltf_state.cpp #, fuzzy msgid "Materials" -msgstr "تغيرات المادة:" +msgstr "تغيرات المادة" #: editor/import/resource_importer_scene.cpp #, fuzzy @@ -7294,12 +7293,12 @@ msgstr "تÙعيل" #: editor/import/resource_importer_scene.cpp #, fuzzy msgid "Max Linear Error" -msgstr "أقصي أخطاء خطية:" +msgstr "أقصي أخطاء خطية" #: editor/import/resource_importer_scene.cpp #, fuzzy msgid "Max Angular Error" -msgstr "أقصي أخطاء زواية:" +msgstr "أقصي أخطاء زواية" #: editor/import/resource_importer_scene.cpp #, fuzzy @@ -7321,7 +7320,7 @@ msgstr "مقاطع الرسوم المتØركة" #: scene/3d/particles.cpp scene/resources/environment.cpp #, fuzzy msgid "Amount" -msgstr "الكمية:" +msgstr "الكمية" #: editor/import/resource_importer_scene.cpp #: editor/plugins/mesh_library_editor_plugin.cpp @@ -7435,7 +7434,7 @@ msgstr "رأس" #: editor/import/resource_importer_texture.cpp #, fuzzy msgid "Normal Map Invert Y" -msgstr "Øجم عشوائي:" +msgstr "Øجم عشوائي" #: editor/import/resource_importer_texture.cpp msgid "Size Limit" @@ -7461,12 +7460,12 @@ msgstr "" #: editor/import/resource_importer_texture_atlas.cpp #, fuzzy msgid "Atlas File" -msgstr "Øجم الخطوط:" +msgstr "Øجم الخطوط" #: editor/import/resource_importer_texture_atlas.cpp #, fuzzy msgid "Import Mode" -msgstr "وضع التصدير:" +msgstr "وضع التصدير" #: editor/import/resource_importer_texture_atlas.cpp #, fuzzy @@ -7603,7 +7602,7 @@ msgstr "Ùشل تØميل المورد." #: editor/inspector_dock.cpp #, fuzzy msgid "Property Name Style" -msgstr "اسم المشروع:" +msgstr "اسم المشروع" #: editor/inspector_dock.cpp scene/gui/color_picker.cpp msgid "Raw" @@ -8627,7 +8626,7 @@ msgstr "خطأ ÙÙŠ التØميل" #: editor/plugins/asset_library_editor_plugin.cpp #, fuzzy msgid "Available URLs" -msgstr "الملÙات المتواÙرة:" +msgstr "الملÙات المتواÙرة" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Download for this asset is already in progress!" @@ -8763,7 +8762,9 @@ msgstr "لا يمكن انشاء خرائط الضوء, تاكد من ان ال٠#: editor/plugins/baked_lightmap_editor_plugin.cpp msgid "Failed determining lightmap size. Maximum lightmap size too small?" -msgstr "Ùشل تØديد Øجم الخريطة الضوئية. الØجم الأقصى للخريطة المضيئة صغير جدًا؟" +msgstr "" +"Ùشل تØديد Øجم الخريطة الضوئية (lightmap). هل الØجم الأقصى للخريطة الضوئية " +"صغير جدًا؟" #: editor/plugins/baked_lightmap_editor_plugin.cpp msgid "" @@ -9688,7 +9689,7 @@ msgstr "بطاقة تعريÙ" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Separator" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" @@ -10839,7 +10840,7 @@ msgstr "" #: editor/plugins/script_editor_plugin.cpp #, fuzzy msgid "Current Script Background Color" -msgstr "لون خلÙية غير صالØ." +msgstr "لون خلÙية غير صالØ" #: editor/plugins/script_editor_plugin.cpp #, fuzzy @@ -10854,7 +10855,7 @@ msgstr "إنشاء نص برمجي" #: editor/plugins/script_editor_plugin.cpp #, fuzzy msgid "List Script Names As" -msgstr "اسم النص البرمجي:" +msgstr "اسم النص البرمجي" #: editor/plugins/script_editor_plugin.cpp msgid "Exec Flags" @@ -13036,12 +13037,13 @@ msgstr "إعدادت المØاذاة" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" -msgstr "المÙعادل:" +msgstr "المÙعادل" #: editor/plugins/tile_set_editor_plugin.cpp editor/rename_dialog.cpp #: scene/gui/range.cpp scene/resources/animation.cpp @@ -13054,7 +13056,7 @@ msgstr "الخطوة" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Separation" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: editor/plugins/tile_set_editor_plugin.cpp #, fuzzy @@ -13075,14 +13077,14 @@ msgstr "نص" #: editor/plugins/tile_set_editor_plugin.cpp #, fuzzy msgid "Tex Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: editor/plugins/tile_set_editor_plugin.cpp modules/csg/csg_shape.cpp #: scene/2d/canvas_item.cpp scene/2d/particles_2d.cpp #: scene/3d/mesh_instance.cpp scene/resources/primitive_meshes.cpp #, fuzzy msgid "Material" -msgstr "تغيرات المادة:" +msgstr "تغيرات المادة" #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/canvas_item.cpp #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp scene/resources/style_box.cpp @@ -13103,7 +13105,7 @@ msgstr "وضع قناع-البÙت" #: editor/plugins/tile_set_editor_plugin.cpp #, fuzzy msgid "Subtile Size" -msgstr "Øجم الخطوط:" +msgstr "Øجم الخطوط" #: editor/plugins/tile_set_editor_plugin.cpp #, fuzzy @@ -13123,7 +13125,7 @@ msgstr "وضع التنقل" #: editor/plugins/tile_set_editor_plugin.cpp #, fuzzy msgid "Shape Offset" -msgstr "المÙعادل:" +msgstr "المÙعادل" #: editor/plugins/tile_set_editor_plugin.cpp #, fuzzy @@ -13242,7 +13244,7 @@ msgstr "أختر مسار المÙØªØ§Ø Ø§Ù„Ø®Ø§Øµ Ù„SSH" #: editor/plugins/version_control_editor_plugin.cpp msgid "SSH Passphrase" -msgstr "كلمة مرور SSH" +msgstr "كلمة المرور Ù„(SSH)" #: editor/plugins/version_control_editor_plugin.cpp msgid "Detect new changes" @@ -14395,12 +14397,12 @@ msgstr "تØريك إلي..." #: editor/project_export.cpp #, fuzzy msgid "Export PCK/Zip..." -msgstr "تصدير PCK/ مل٠مضغوط Zip" +msgstr "تصدير PCK/ مل٠مضغوط Zip..." #: editor/project_export.cpp #, fuzzy msgid "Export Project..." -msgstr "تصدير المشروع" +msgstr "تصدير المشروع..." #: editor/project_export.cpp msgid "Export All" @@ -14409,12 +14411,12 @@ msgstr "تصدير الكÙÙ„" #: editor/project_export.cpp #, fuzzy msgid "Choose an export mode:" -msgstr "من Ùضلك اختر Ù…Ùجلداً Ùارغاً." +msgstr "من Ùضلك اختر Ù…Ùجلداً Ùارغاً:" #: editor/project_export.cpp #, fuzzy msgid "Export All..." -msgstr "تصدير الكÙÙ„" +msgstr "تصدير الكÙÙ„..." #: editor/project_export.cpp editor/project_manager.cpp msgid "ZIP File" @@ -14497,15 +14499,16 @@ msgid "Invalid project path (changed anything?)." msgstr "مسار مشروع غير ØµØ§Ù„Ø (أعدلت شيء؟)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "لم يتم تØميل project.godot من مسار المشروع (خطأ %d). قد يكون Ù…Ùقوداً أو تالÙاً." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "لا قدرة على تØرير project.godot ÙÙŠ مسار المشروع." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "لا يمكن ÙØªØ Ø§Ù„Ù…Ø´Ø±ÙˆØ¹ ÙÙŠ '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -15541,7 +15544,7 @@ msgstr "اجعله Ù…Øلياً" #: editor/scene_tree_dock.cpp #, fuzzy msgid "Enable Scene Unique Name(s)" -msgstr "إسم العقدة:" +msgstr "إسم العقدة" #: editor/scene_tree_dock.cpp #, fuzzy @@ -15551,7 +15554,7 @@ msgstr "لقد تم استخدام هذا الاسم ÙÙŠ وظيÙØ© Ø¨Ø±Ù…Ø¬ÙŠØ #: editor/scene_tree_dock.cpp #, fuzzy msgid "Disable Scene Unique Name(s)" -msgstr "إسم العقدة:" +msgstr "إسم العقدة" #: editor/scene_tree_dock.cpp msgid "New Scene Root" @@ -15752,7 +15755,7 @@ msgstr "مجموعة الأزرار" #: editor/scene_tree_editor.cpp #, fuzzy msgid "Disable Scene Unique Name" -msgstr "إسم العقدة:" +msgstr "إسم العقدة" #: editor/scene_tree_editor.cpp msgid "(Connecting From)" @@ -16634,7 +16637,7 @@ msgstr "الØجم الكامل" #: main/main.cpp scene/resources/dynamic_font.cpp #, fuzzy msgid "Use Filter" -msgstr "تصÙية:" +msgstr "تصÙية" #: main/main.cpp scene/resources/style_box.cpp #, fuzzy @@ -16683,7 +16686,7 @@ msgstr "" #: main/main.cpp #, fuzzy msgid "Tooltip Position Offset" -msgstr "مقدار إزاØØ© الدوران:" +msgstr "مقدار إزاØØ© الدوران" #: main/main.cpp modules/mono/mono_gd/gd_mono.cpp #, fuzzy @@ -16698,7 +16701,7 @@ msgstr "Ù…ÙÙ†Ù‚Ø Ø§Ù„Ø£Ø®Ø·Ø§Ø¡" #: main/main.cpp modules/mono/mono_gd/gd_mono.cpp #, fuzzy msgid "Wait Timeout" -msgstr "انتهت المهلة." +msgstr "انتهت المهلة" #: main/main.cpp msgid "Runtime" @@ -16808,12 +16811,12 @@ msgstr "اقلب الوجوه" #: scene/resources/sphere_shape.cpp #, fuzzy msgid "Radius" -msgstr "نص٠القطر:" +msgstr "نص٠القطر" #: modules/csg/csg_shape.cpp scene/resources/primitive_meshes.cpp #, fuzzy msgid "Radial Segments" -msgstr "معاملات المشهد الرئيس:" +msgstr "معاملات المشهد الرئيس" #: modules/csg/csg_shape.cpp scene/resources/primitive_meshes.cpp msgid "Rings" @@ -16878,7 +16881,7 @@ msgstr "" #: modules/csg/csg_shape.cpp #, fuzzy msgid "Path Rotation" -msgstr "دوران عشوائي:" +msgstr "دوران عشوائي" #: modules/csg/csg_shape.cpp #, fuzzy @@ -16897,7 +16900,7 @@ msgstr "المسار المØلي" #: modules/csg/csg_shape.cpp #, fuzzy msgid "Path Joined" -msgstr "دوران عشوائي:" +msgstr "دوران عشوائي" #: modules/enet/networked_multiplayer_enet.cpp msgid "Compression Mode" @@ -17020,12 +17023,12 @@ msgstr "مكتبات:" #: modules/gdnative/nativescript/nativescript.cpp #, fuzzy msgid "Class Name" -msgstr "اسم الÙئة:" +msgstr "اسم الÙئة" #: modules/gdnative/nativescript/nativescript.cpp #, fuzzy msgid "Script Class" -msgstr "اسم النص البرمجي:" +msgstr "اسم النص البرمجي" #: modules/gdnative/nativescript/nativescript.cpp msgid "Icon Path" @@ -17134,7 +17137,7 @@ msgstr "الواجهة View الخلÙية" #: modules/gltf/gltf_accessor.cpp modules/gltf/gltf_buffer_view.cpp #, fuzzy msgid "Byte Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: modules/gltf/gltf_accessor.cpp msgid "Component Type" @@ -17147,7 +17150,7 @@ msgstr "" #: modules/gltf/gltf_accessor.cpp #, fuzzy msgid "Count" -msgstr "الكمية:" +msgstr "الكمية" #: modules/gltf/gltf_accessor.cpp scene/resources/visual_shader_nodes.cpp msgid "Min" @@ -17173,7 +17176,7 @@ msgstr "" #: modules/gltf/gltf_accessor.cpp #, fuzzy msgid "Sparse Indices Component Type" -msgstr "توزيع الأشكال الهندسية..." +msgstr "توزيع الأشكال الهندسية" #: modules/gltf/gltf_accessor.cpp msgid "Sparse Values Buffer View" @@ -17252,7 +17255,7 @@ msgstr "طبخ (إعداد) خرائط الضوء" #: modules/gltf/gltf_mesh.cpp #, fuzzy msgid "Instance Materials" -msgstr "تغيرات المادة:" +msgstr "تغيرات المادة" #: modules/gltf/gltf_node.cpp scene/3d/skeleton.cpp msgid "Parent" @@ -17808,7 +17811,7 @@ msgstr "ضوضاء" #: modules/opensimplex/noise_texture.cpp #, fuzzy msgid "Noise Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: modules/opensimplex/open_simplex_noise.cpp msgid "Octaves" @@ -18363,7 +18366,7 @@ msgstr "اعادة التعيين للإÙتراضيات" #: modules/visual_script/visual_script_func_nodes.cpp #, fuzzy msgid "Validate" -msgstr "الأØر٠الصالØØ©:" +msgstr "الأØر٠الصالØØ©" #: modules/visual_script/visual_script_func_nodes.cpp #, fuzzy @@ -18457,7 +18460,7 @@ msgstr "تغيير Øجم المصÙÙˆÙØ©" #: scene/resources/visual_shader_nodes.cpp #, fuzzy msgid "Operator" -msgstr "Ù…Ùشغل التراكم." +msgstr "Ù…Ùشغل التراكم" #: modules/visual_script/visual_script_nodes.cpp msgid "Invalid argument of type:" @@ -18703,7 +18706,7 @@ msgstr "إخلاء سلسلة IK" #: modules/websocket/websocket_server.cpp #, fuzzy msgid "Handshake Timeout" -msgstr "انتهت المهلة." +msgstr "انتهت المهلة" #: modules/webxr/webxr_interface.cpp #, fuzzy @@ -18713,12 +18716,12 @@ msgstr "وضع الأقليم" #: modules/webxr/webxr_interface.cpp #, fuzzy msgid "Required Features" -msgstr "المزايا الرئيسية:" +msgstr "المزايا الرئيسية" #: modules/webxr/webxr_interface.cpp #, fuzzy msgid "Optional Features" -msgstr "المزايا الرئيسية:" +msgstr "المزايا الرئيسية" #: modules/webxr/webxr_interface.cpp msgid "Requested Reference Space Types" @@ -18825,7 +18828,7 @@ msgstr "مسار التصدير" #: platform/android/export/export_plugin.cpp #, fuzzy msgid "Min SDK" -msgstr "Øجم الخطوط:" +msgstr "Øجم الخطوط" #: platform/android/export/export_plugin.cpp #, fuzzy @@ -18883,7 +18886,7 @@ msgstr "ÙŠÙŽØزم\"ينتج المل٠المضغوط\"" #: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp #, fuzzy msgid "Unique Name" -msgstr "إسم العقدة:" +msgstr "إسم العقدة" #: platform/android/export/export_plugin.cpp #, fuzzy @@ -18893,7 +18896,7 @@ msgstr "الإشاراة" #: platform/android/export/export_plugin.cpp #, fuzzy msgid "Classify As Game" -msgstr "اسم الÙئة:" +msgstr "اسم الÙئة" #: platform/android/export/export_plugin.cpp msgid "Retain Data On Uninstall" @@ -18907,7 +18910,7 @@ msgstr "Øذ٠العÙقد" #: platform/android/export/export_plugin.cpp #, fuzzy msgid "Graphics" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: platform/android/export/export_plugin.cpp #, fuzzy @@ -18979,7 +18982,7 @@ msgstr "المجتمع" #: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp #, fuzzy msgid "Extra Args" -msgstr "وسائط إستدعاء إضاÙية :" +msgstr "وسائط إستدعاء إضاÙية" #: platform/android/export/export_plugin.cpp #, fuzzy @@ -19283,7 +19286,7 @@ msgstr "" msgid "" "Unable to overwrite res://android/build/res/*.xml files with project name." msgstr "" -"تعذرت كتابة overwrite ملÙات res://android/build/res/*.xml مع اسم المشروع" +"تعذرت كتابة overwrite ملÙات res://android/build/res/*.xml مع اسم المشروع." #: platform/android/export/export_plugin.cpp msgid "Could not export project files to gradle project." @@ -19318,7 +19321,7 @@ msgstr "تعذر نسخ وإعادة تسمية المل٠المصدر، تÙÙ‚ #: platform/android/export/export_plugin.cpp #, fuzzy msgid "Package not found: \"%s\"." -msgstr "لم يتم إيجاد الرسم المتØرك: '%s'" +msgstr "لم يتم إيجاد الرسم المتØرك: '%s'." #: platform/android/export/export_plugin.cpp #, fuzzy @@ -19347,7 +19350,7 @@ msgstr "إضاÙØ© %s..." #: platform/android/export/export_plugin.cpp #, fuzzy msgid "Could not export project files." -msgstr "لم نتمكن من تصدير ملÙات المشروع" +msgstr "لم نتمكن من تصدير ملÙات المشروع." #: platform/android/export/export_plugin.cpp msgid "Aligning APK..." @@ -19445,7 +19448,7 @@ msgstr "" #: platform/iphone/export/export.cpp #, fuzzy msgid "Export Method Release" -msgstr "وضع التصدير:" +msgstr "وضع التصدير" #: platform/iphone/export/export.cpp msgid "Targeted Device Family" @@ -19458,7 +19461,7 @@ msgstr "" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp #, fuzzy msgid "Identifier" -msgstr "Ù…ÙØدد غير صالØ:" +msgstr "Ù…ÙØدد غير صالØ" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp #, fuzzy @@ -19488,7 +19491,7 @@ msgstr "الوصول للواي-Ùاي" #: platform/iphone/export/export.cpp #, fuzzy msgid "Push Notifications" -msgstr "دوران عشوائي:" +msgstr "دوران عشوائي" #: platform/iphone/export/export.cpp #, fuzzy @@ -19629,17 +19632,17 @@ msgstr "شغل مل٠HTML المÙصدر ÙÙŠ المتصÙØ Ø§Ù„Ø¥Ùتراضي #: platform/javascript/export/export.cpp #, fuzzy msgid "Could not open template for export: \"%s\"." -msgstr "لا يمكن ÙØªØ Ø§Ù„Ù‚Ø§Ù„Ø¨ من أجل التصدير:" +msgstr "لا يمكن ÙØªØ Ø§Ù„Ù‚Ø§Ù„Ø¨ من أجل التصدير: ." #: platform/javascript/export/export.cpp #, fuzzy msgid "Invalid export template: \"%s\"." -msgstr "إدارة قوالب التصدير:" +msgstr "إدارة قوالب التصدير: ." #: platform/javascript/export/export.cpp #, fuzzy msgid "Could not write file: \"%s\"." -msgstr "لا يمكن كتابة الملÙ:" +msgstr "لا يمكن كتابة الملÙ: ." #: platform/javascript/export/export.cpp platform/osx/export/export.cpp #, fuzzy @@ -19649,7 +19652,7 @@ msgstr "تØديد الهامش" #: platform/javascript/export/export.cpp #, fuzzy msgid "Could not read file: \"%s\"." -msgstr "لا يمكن كتابة الملÙ:" +msgstr "لا يمكن كتابة الملÙ: ." #: platform/javascript/export/export.cpp msgid "PWA" @@ -19658,7 +19661,7 @@ msgstr "" #: platform/javascript/export/export.cpp #, fuzzy msgid "Variant" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: platform/javascript/export/export.cpp #, fuzzy @@ -19732,17 +19735,17 @@ msgstr "" #: platform/javascript/export/export.cpp #, fuzzy msgid "Could not read HTML shell: \"%s\"." -msgstr "لا يمكن قراءة مل٠HTML مخصص:" +msgstr "لا يمكن قراءة مل٠HTML مخصص: ." #: platform/javascript/export/export.cpp #, fuzzy msgid "Could not create HTTP server directory: %s." -msgstr "لا يمكن إنشاء مجلد خادم ال HTTP:" +msgstr "لا يمكن إنشاء مجلد خادم ال HTTP: ." #: platform/javascript/export/export.cpp #, fuzzy msgid "Error starting HTTP server: %d." -msgstr "خطأ ÙÙŠ بدء تشغيل خادم HTTP:" +msgstr "خطأ ÙÙŠ بدء تشغيل خادم HTTP: ." #: platform/javascript/export/export.cpp msgid "Web" @@ -19848,7 +19851,7 @@ msgstr "" #: platform/osx/export/export.cpp #, fuzzy msgid "App Category" -msgstr "الÙئة:" +msgstr "الÙئة" #: platform/osx/export/export.cpp msgid "High Res" @@ -20044,7 +20047,7 @@ msgstr "" #: platform/osx/export/export.cpp #, fuzzy msgid "Could not open icon file \"%s\"." -msgstr "لم نتمكن من تصدير ملÙات المشروع" +msgstr "لم نتمكن من تصدير ملÙات المشروع." #: platform/osx/export/export.cpp msgid "Could not start xcrun executable." @@ -20053,7 +20056,7 @@ msgstr "تعذر بدء تشغيل xcrun." #: platform/osx/export/export.cpp #, fuzzy msgid "Notarization failed." -msgstr "توطين" +msgstr "توطين." #: platform/osx/export/export.cpp msgid "Notarization request UUID: \"%s\"" @@ -20108,7 +20111,7 @@ msgstr "لم توجد ايقونات." #: platform/osx/export/export.cpp #, fuzzy msgid "Cannot sign file %s." -msgstr "خطأ ÙÙŠ تØميل الملÙ: %s" +msgstr "خطأ ÙÙŠ تØميل المل٠%s." #: platform/osx/export/export.cpp msgid "Relative symlinks are not supported, exported \"%s\" might be broken!" @@ -20139,12 +20142,12 @@ msgstr "ينشئ الصورة المصغرة" #: platform/osx/export/export.cpp #, fuzzy msgid "Could not find template app to export: \"%s\"." -msgstr "لم يتم إيجاد قالب التطبيق (Template app) للتصدير:" +msgstr "لم يتم إيجاد قالب التطبيق (Template app) للتصدير: ." #: platform/osx/export/export.cpp #, fuzzy msgid "Invalid export format." -msgstr "إدارة قوالب التصدير:" +msgstr "إدارة قوالب التصدير." #: platform/osx/export/export.cpp msgid "" @@ -20331,7 +20334,7 @@ msgstr "إظهار الكل" #: platform/uwp/export/export.cpp #, fuzzy msgid "Short Name" -msgstr "اسم النص البرمجي:" +msgstr "اسم النص البرمجي" #: platform/uwp/export/export.cpp msgid "Publisher" @@ -20340,12 +20343,12 @@ msgstr "" #: platform/uwp/export/export.cpp #, fuzzy msgid "Publisher Display Name" -msgstr "اسم الناشر المعروض للرÙزمة غير صالØ." +msgstr "اسم الناشر المعروض للرÙزمة غير صالØ" #: platform/uwp/export/export.cpp #, fuzzy msgid "Product GUID" -msgstr "Ù…Ùعر٠GUID (المÙعرّ٠الÙريد العالمي) للمنتج غير صالØ." +msgstr "Ù…Ùعر٠GUID (المÙعرّ٠الÙريد العالمي) للمنتج غير صالØ" #: platform/uwp/export/export.cpp #, fuzzy @@ -20360,7 +20363,7 @@ msgstr "الإشاراة" #: platform/uwp/export/export.cpp #, fuzzy msgid "Certificate" -msgstr "القمم:" +msgstr "القمم" #: platform/uwp/export/export.cpp #, fuzzy @@ -20387,7 +20390,7 @@ msgstr "تØديد التعبير" #: platform/uwp/export/export.cpp msgid "Landscape" -msgstr "" +msgstr "بشكل اÙقي (Landscape)" #: platform/uwp/export/export.cpp #, fuzzy @@ -20430,7 +20433,7 @@ msgstr "" #: platform/uwp/export/export.cpp #, fuzzy msgid "Splash Screen" -msgstr "استدعاءات الرسم:" +msgstr "استدعاءات الرسم" #: platform/uwp/export/export.cpp #, fuzzy @@ -20528,7 +20531,7 @@ msgstr "Ù…ÙÙ†Ù‚Ø Ø§Ù„Ø£Ø®Ø·Ø§Ø¡" #: platform/windows/export/export.cpp #, fuzzy msgid "Failed to rename temporary file \"%s\"." -msgstr "لا يمكن Øذ٠مل٠مؤقت:" +msgstr "لا يمكن Øذ٠مل٠مؤقت." #: platform/windows/export/export.cpp msgid "Identity Type" @@ -20556,17 +20559,17 @@ msgstr "الإصدار" #: platform/windows/export/export.cpp #, fuzzy msgid "Product Version" -msgstr "Ù…Ùعر٠GUID (المÙعرّ٠الÙريد العالمي) للمنتج غير صالØ:" +msgstr "Ù…Ùعر٠GUID (المÙعرّ٠الÙريد العالمي) للمنتج غير صالØ" #: platform/windows/export/export.cpp #, fuzzy msgid "Company Name" -msgstr "إسم العقدة:" +msgstr "إسم العقدة" #: platform/windows/export/export.cpp #, fuzzy msgid "Product Name" -msgstr "اسم المشروع:" +msgstr "اسم المشروع" #: platform/windows/export/export.cpp #, fuzzy @@ -20580,7 +20583,7 @@ msgstr "" #: platform/windows/export/export.cpp #, fuzzy msgid "Resources Modification" -msgstr "دوران عشوائي:" +msgstr "دوران عشوائي" #: platform/windows/export/export.cpp #, fuzzy @@ -20617,7 +20620,7 @@ msgstr "لا يمكن العثور على Ù…ÙØªØ§Ø Ø§Ù„Ù…ØªØ¬Ø±ØŒ لا يمك٠#: platform/windows/export/export.cpp #, fuzzy msgid "Invalid identity type." -msgstr "Ù…ÙØدد غير صالØ:" +msgstr "Ù…ÙØدد غير صالØ." #: platform/windows/export/export.cpp #, fuzzy @@ -20639,7 +20642,7 @@ msgstr "صيغة غير صالØØ©." #: platform/windows/export/export.cpp #, fuzzy msgid "Failed to remove temporary file \"%s\"." -msgstr "لا يمكن Øذ٠مل٠مؤقت:" +msgstr "لا يمكن Øذ٠مل٠مؤقت." #: platform/windows/export/export.cpp msgid "" @@ -20690,8 +20693,9 @@ msgid "Osslsigncode" msgstr "" #: platform/windows/export/export.cpp +#, fuzzy msgid "Wine" -msgstr "" +msgstr "طبقة المعالجة Wine" #: platform/x11/export/export.cpp msgid "32-bit executables cannot have embedded data >= 4 GiB." @@ -20828,7 +20832,7 @@ msgstr "" #: scene/resources/material.cpp #, fuzzy msgid "Max Distance" -msgstr "اختر المساÙØ©:" +msgstr "اختر المساÙØ©" #: scene/2d/audio_stream_player_2d.cpp scene/3d/light.cpp #, fuzzy @@ -20858,13 +20862,13 @@ msgstr "وضع الأيقونة" #: scene/2d/camera_2d.cpp #, fuzzy msgid "Rotating" -msgstr "خطوة الدوران:" +msgstr "خطوة الدوران" #: scene/2d/camera_2d.cpp scene/2d/listener_2d.cpp scene/3d/camera.cpp #: scene/3d/listener.cpp scene/animation/animation_blend_tree.cpp #, fuzzy msgid "Current" -msgstr "الØالي:" +msgstr "الØالي" #: scene/2d/camera_2d.cpp scene/gui/graph_edit.cpp #, fuzzy @@ -20948,12 +20952,12 @@ msgstr "تØديد الهامش" #: scene/2d/camera_2d.cpp #, fuzzy msgid "Draw Screen" -msgstr "استدعاءات الرسم:" +msgstr "استدعاءات الرسم" #: scene/2d/camera_2d.cpp #, fuzzy msgid "Draw Limits" -msgstr "استدعاءات الرسم:" +msgstr "استدعاءات الرسم" #: scene/2d/camera_2d.cpp #, fuzzy @@ -21150,7 +21154,7 @@ msgstr "" #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp #, fuzzy msgid "Emitting" -msgstr "الإعدادات:" +msgstr "الإعدادات" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp @@ -21178,7 +21182,7 @@ msgstr "" #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp #, fuzzy msgid "Randomness" -msgstr "إعادة تشغيل عشوائية (ثواني):" +msgstr "إعادة تشغيل عشوائية (ثواني)" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21351,7 +21355,7 @@ msgstr "إغلاق المنØنى" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #, fuzzy msgid "Scale Amount" -msgstr "الكمية:" +msgstr "الكمية" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp msgid "Scale Amount Random" @@ -21377,25 +21381,25 @@ msgstr "" #: scene/resources/particles_material.cpp #, fuzzy msgid "Hue Variation" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp #, fuzzy msgid "Variation" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp #, fuzzy msgid "Variation Random" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp #, fuzzy msgid "Variation Curve" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21413,7 +21417,7 @@ msgstr "تقسيم المنØنى" #: scene/resources/particles_material.cpp #, fuzzy msgid "Offset Random" -msgstr "المÙعادل:" +msgstr "المÙعادل" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21612,12 +21616,12 @@ msgstr "وضع الأقليم" #: scene/2d/line_2d.cpp #, fuzzy msgid "End Cap Mode" -msgstr "وضع المØاذاة:" +msgstr "وضع المØاذاة" #: scene/2d/line_2d.cpp scene/2d/polygon_2d.cpp scene/resources/style_box.cpp #, fuzzy msgid "Border" -msgstr "إعادة تسمية مجلد:" +msgstr "إعادة تسمية مجلد" #: scene/2d/line_2d.cpp msgid "Sharp Limit" @@ -21646,7 +21650,7 @@ msgstr "" #: scene/2d/navigation_2d.cpp scene/3d/navigation.cpp #, fuzzy msgid "Edge Connection Margin" -msgstr "تعديل الإتصال:" +msgstr "تعديل الإتصال" #: scene/2d/navigation_2d.cpp msgid "" @@ -21663,7 +21667,7 @@ msgstr "الربط" #: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp #, fuzzy msgid "Path Desired Distance" -msgstr "اختر المساÙØ©:" +msgstr "اختر المساÙØ©" #: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp msgid "Target Desired Distance" @@ -21672,7 +21676,7 @@ msgstr "" #: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp #, fuzzy msgid "Path Max Distance" -msgstr "اختر المساÙØ©:" +msgstr "اختر المساÙØ©" #: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp #, fuzzy @@ -21700,7 +21704,7 @@ msgstr "القلب Ø£Ùقياً" #: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp #, fuzzy msgid "Max Speed" -msgstr "السرعة:" +msgstr "السرعة" #: scene/2d/navigation_agent_2d.cpp msgid "" @@ -21744,7 +21748,7 @@ msgstr "السÙر" #: scene/main/canvas_layer.cpp #, fuzzy msgid "Rotation Degrees" -msgstr "ÙŠÙدير %s من الدرجات." +msgstr "ÙŠÙدير %s من الدرجات" #: scene/2d/node_2d.cpp scene/3d/spatial.cpp #, fuzzy @@ -21754,12 +21758,12 @@ msgstr "ثابت" #: scene/2d/node_2d.cpp #, fuzzy msgid "Global Rotation Degrees" -msgstr "ÙŠÙدير %s من الدرجات." +msgstr "ÙŠÙدير %s من الدرجات" #: scene/2d/node_2d.cpp #, fuzzy msgid "Global Scale" -msgstr "Øجم عشوائي:" +msgstr "Øجم عشوائي" #: scene/2d/node_2d.cpp scene/3d/spatial.cpp #, fuzzy @@ -21779,7 +21783,7 @@ msgstr "" #: scene/2d/parallax_background.cpp #, fuzzy msgid "Base Offset" -msgstr "المÙعادل:" +msgstr "المÙعادل" #: scene/2d/parallax_background.cpp #, fuzzy @@ -21878,17 +21882,17 @@ msgstr "" #: scene/2d/path_2d.cpp scene/3d/path.cpp #, fuzzy msgid "Unit Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: scene/2d/path_2d.cpp scene/3d/camera.cpp scene/3d/path.cpp #, fuzzy msgid "H Offset" -msgstr "المÙعادل:" +msgstr "المÙعادل" #: scene/2d/path_2d.cpp scene/3d/camera.cpp scene/3d/path.cpp #, fuzzy msgid "V Offset" -msgstr "المÙعادل:" +msgstr "المÙعادل" #: scene/2d/path_2d.cpp scene/3d/path.cpp msgid "Cubic Interp" @@ -21951,7 +21955,7 @@ msgstr "" #: scene/2d/physics_body_2d.cpp #, fuzzy msgid "Inertia" -msgstr "شاقولياً:" +msgstr "شاقولياً" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #, fuzzy @@ -21990,7 +21994,7 @@ msgstr "المØاذاة الذكية" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #, fuzzy msgid "Can Sleep" -msgstr "السرعة:" +msgstr "السرعة" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Damp" @@ -22037,7 +22041,7 @@ msgstr "البنية (اللاØقة)" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #, fuzzy msgid "Remainder" -msgstr "Ù…ÙØرك الإخراج البصري:" +msgstr "Ù…ÙØرك الإخراج البصري" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #, fuzzy @@ -22239,7 +22243,7 @@ msgstr "وضع الأولية" #: scene/2d/tile_map.cpp #, fuzzy msgid "Centered Textures" -msgstr "المزايا الرئيسية:" +msgstr "المزايا الرئيسية" #: scene/2d/tile_map.cpp msgid "Cell Clip UV" @@ -22371,7 +22375,7 @@ msgstr "" #: scene/3d/arvr_nodes.cpp servers/arvr_server.cpp #, fuzzy msgid "World Scale" -msgstr "Øجم عشوائي:" +msgstr "Øجم عشوائي" #: scene/3d/audio_stream_player_3d.cpp #, fuzzy @@ -22402,7 +22406,7 @@ msgstr "الوان الإنبعاث" #: scene/3d/audio_stream_player_3d.cpp #, fuzzy msgid "Degrees" -msgstr "ÙŠÙدير %s من الدرجات." +msgstr "ÙŠÙدير %s من الدرجات" #: scene/3d/audio_stream_player_3d.cpp #, fuzzy @@ -22489,7 +22493,7 @@ msgstr "" #: scene/3d/baked_lightmap.cpp #, fuzzy msgid "Use Denoiser" -msgstr "تصÙية:" +msgstr "تصÙية" #: scene/3d/baked_lightmap.cpp scene/resources/texture.cpp msgid "Use HDR" @@ -22518,7 +22522,7 @@ msgstr "عام" #: scene/3d/baked_lightmap.cpp #, fuzzy msgid "Max Size" -msgstr "الØجم:" +msgstr "الØجم" #: scene/3d/baked_lightmap.cpp #, fuzzy @@ -22528,7 +22532,7 @@ msgstr "قص العÙقد" #: scene/3d/baked_lightmap.cpp #, fuzzy msgid "Custom Sky Rotation Degrees" -msgstr "ÙŠÙدير %s من الدرجات." +msgstr "ÙŠÙدير %s من الدرجات" #: scene/3d/baked_lightmap.cpp scene/3d/ray_cast.cpp #, fuzzy @@ -22562,7 +22566,7 @@ msgstr "مع البيانات" #: scene/3d/bone_attachment.cpp scene/3d/physics_body.cpp #, fuzzy msgid "Bone Name" -msgstr "إسم العقدة:" +msgstr "إسم العقدة" #: scene/3d/camera.cpp msgid "Keep Aspect" @@ -22589,7 +22593,7 @@ msgstr "" #: scene/3d/camera.cpp #, fuzzy msgid "Frustum Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: scene/3d/camera.cpp #, fuzzy @@ -22853,7 +22857,7 @@ msgstr "الخطوط" #: scene/3d/label_3d.cpp scene/resources/primitive_meshes.cpp #, fuzzy msgid "Horizontal Alignment" -msgstr "عَرضياً:" +msgstr "عَرضياً" #: scene/3d/label_3d.cpp #, fuzzy @@ -22919,7 +22923,7 @@ msgstr "Ùصل المسار" #: scene/3d/light.cpp #, fuzzy msgid "Blend Splits" -msgstr "أوقات الدمج:" +msgstr "أوقات الدمج" #: scene/3d/light.cpp #, fuzzy @@ -22965,7 +22969,7 @@ msgstr "" #: scene/3d/mesh_instance.cpp #, fuzzy msgid "Transform Normals" -msgstr "أجهض التØول." +msgstr "أجهض التØول" #: scene/3d/navigation.cpp msgid "" @@ -23058,12 +23062,12 @@ msgstr "تشغيل/إطÙاء الوضوØية Visibility" #: scene/3d/particles.cpp #, fuzzy msgid "Draw Passes" -msgstr "استدعاءات الرسم:" +msgstr "استدعاءات الرسم" #: scene/3d/particles.cpp #, fuzzy msgid "Passes" -msgstr "استدعاءات الرسم:" +msgstr "استدعاءات الرسم" #: scene/3d/path.cpp msgid "PathFollow only works when set as a child of a Path node." @@ -23161,7 +23165,7 @@ msgstr "" #: scene/3d/vehicle_body.cpp #, fuzzy msgid "Relaxation" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: scene/3d/physics_body.cpp #, fuzzy @@ -23176,7 +23180,7 @@ msgstr "خطي" #: scene/3d/physics_body.cpp #, fuzzy msgid "Angular Limit Lower" -msgstr "أقصي أخطاء زواية:" +msgstr "أقصي أخطاء زواية" #: scene/3d/physics_body.cpp #, fuzzy @@ -23309,7 +23313,7 @@ msgstr "" #: scene/3d/physics_body.cpp #, fuzzy msgid "Body Offset" -msgstr "المÙعادل:" +msgstr "المÙعادل" #: scene/3d/physics_joint.cpp msgid "Node A and Node B must be PhysicsBodies" @@ -23342,7 +23346,7 @@ msgstr "استثناء العÙقد" #: scene/3d/physics_joint.cpp #, fuzzy msgid "Params" -msgstr "لقد تم تغيير المَعلم:" +msgstr "لقد تم تغيير المَعلم" #: scene/3d/physics_joint.cpp msgid "Angular Limit" @@ -23370,7 +23374,7 @@ msgstr "تØريك المسار لليمين" #: scene/3d/physics_joint.cpp #, fuzzy msgid "Max Impulse" -msgstr "السرعة:" +msgstr "السرعة" #: scene/3d/physics_joint.cpp #, fuzzy @@ -23380,12 +23384,12 @@ msgstr "خطي" #: scene/3d/physics_joint.cpp #, fuzzy msgid "Upper Distance" -msgstr "اختر المساÙØ©:" +msgstr "اختر المساÙØ©" #: scene/3d/physics_joint.cpp #, fuzzy msgid "Lower Distance" -msgstr "اختر المساÙØ©:" +msgstr "اختر المساÙØ©" #: scene/3d/physics_joint.cpp #, fuzzy @@ -23418,7 +23422,7 @@ msgstr "رسوم متØركة" #: scene/3d/physics_joint.cpp #, fuzzy msgid "Angular Ortho" -msgstr "أقصي أخطاء زواية:" +msgstr "أقصي أخطاء زواية" #: scene/3d/physics_joint.cpp #, fuzzy @@ -23433,7 +23437,7 @@ msgstr "الشروع" #: scene/3d/physics_joint.cpp #, fuzzy msgid "Force Limit" -msgstr "استدعاءات الرسم:" +msgstr "استدعاءات الرسم" #: scene/3d/physics_joint.cpp #, fuzzy @@ -23533,7 +23537,7 @@ msgstr "" #: scene/3d/portal.cpp #, fuzzy msgid "Linked Room" -msgstr "جذر التعديل المباشر:" +msgstr "جذر التعديل المباشر" #: scene/3d/portal.cpp #, fuzzy @@ -23552,7 +23556,7 @@ msgstr "" #: scene/3d/proximity_group.cpp #, fuzzy msgid "Grid Radius" -msgstr "نص٠القطر:" +msgstr "نص٠القطر" #: scene/3d/ray_cast.cpp #, fuzzy @@ -23570,7 +23574,7 @@ msgstr "وضع التØديث" #: scene/3d/reflection_probe.cpp #, fuzzy msgid "Origin Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: scene/3d/reflection_probe.cpp #, fuzzy @@ -23823,12 +23827,12 @@ msgstr "إنشاء Ù…Ùضلع التصادم" #: scene/3d/soft_body.cpp #, fuzzy msgid "Simulation Precision" -msgstr "شجرة التØريك غير صالØØ©." +msgstr "شجرة التØريك غير صالØØ©" #: scene/3d/soft_body.cpp #, fuzzy msgid "Total Mass" -msgstr "المجموع الكلي:" +msgstr "المجموع الكلي" #: scene/3d/soft_body.cpp msgid "Linear Stiffness" @@ -23945,7 +23949,7 @@ msgstr "" #: scene/3d/vehicle_body.cpp #, fuzzy msgid "Use As Traction" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: scene/3d/vehicle_body.cpp msgid "Use As Steering" @@ -23978,6 +23982,16 @@ msgstr "خطأ" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "ترتيب" + +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Use AABB Center" +msgstr "استخدم Ambient" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" @@ -23991,7 +24005,7 @@ msgstr "يتجاوز" #: scene/3d/visual_instance.cpp #, fuzzy msgid "Material Overlay" -msgstr "تغيرات المادة:" +msgstr "تغيرات المادة" #: scene/3d/visual_instance.cpp #, fuzzy @@ -24001,7 +24015,7 @@ msgstr "إنشاء عÙقدة تظليل" #: scene/3d/visual_instance.cpp #, fuzzy msgid "Extra Cull Margin" -msgstr "وسائط إستدعاء إضاÙية :" +msgstr "وسائط إستدعاء إضاÙية" #: scene/3d/visual_instance.cpp #, fuzzy @@ -24026,7 +24040,7 @@ msgstr "" #: scene/resources/material.cpp #, fuzzy msgid "Min Distance" -msgstr "اختر المساÙØ©:" +msgstr "اختر المساÙØ©" #: scene/3d/visual_instance.cpp msgid "Min Hysteresis" @@ -24075,12 +24089,12 @@ msgstr "عقدة الخلط" #: scene/animation/animation_blend_tree.cpp #, fuzzy msgid "Fadein Time" -msgstr "وقت التلاشي X (ثواني):" +msgstr "وقت التلاشي X (ثواني)" #: scene/animation/animation_blend_tree.cpp #, fuzzy msgid "Fadeout Time" -msgstr "وقت التلاشي X (ثواني):" +msgstr "وقت التلاشي X (ثواني)" #: scene/animation/animation_blend_tree.cpp msgid "Auto Restart" @@ -24097,17 +24111,17 @@ msgstr "" #: scene/animation/animation_blend_tree.cpp #, fuzzy msgid "Random Delay" -msgstr "إمالة عشوائية:" +msgstr "إمالة عشوائية" #: scene/animation/animation_blend_tree.cpp #, fuzzy msgid "Add Amount" -msgstr "الكمية:" +msgstr "الكمية" #: scene/animation/animation_blend_tree.cpp #, fuzzy msgid "Blend Amount" -msgstr "الكمية:" +msgstr "الكمية" #: scene/animation/animation_blend_tree.cpp #, fuzzy @@ -24123,7 +24137,7 @@ msgstr "أض٠منÙØ° أدخال" #: scene/animation/animation_node_state_machine.cpp #, fuzzy msgid "Xfade Time" -msgstr "وقت التلاشي X (ثواني):" +msgstr "وقت التلاشي X (ثواني)" #: scene/animation/animation_node_state_machine.cpp #, fuzzy @@ -24171,7 +24185,7 @@ msgstr "أضÙØ© نقطة الرسوم المتØركة" #: scene/animation/animation_player.cpp #, fuzzy msgid "Playback Options" -msgstr "إعدادات الص٠(Class):" +msgstr "إعدادات الص٠(Class)" #: scene/animation/animation_player.cpp #, fuzzy @@ -24214,7 +24228,7 @@ msgstr "العÙقدة الرئيسة لمÙشغل الرسومات المتØر #: scene/animation/animation_tree.cpp #, fuzzy msgid "Tree Root" -msgstr "إنشاء العÙقدة الرئيسة (الجذر):" +msgstr "إنشاء العÙقدة الرئيسة (الجذر)" #: scene/animation/animation_tree.cpp #, fuzzy @@ -24475,12 +24489,12 @@ msgstr "الاتجاهات" #: scene/gui/control.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Min Size" -msgstr "Øجم الخطوط:" +msgstr "Øجم الخطوط" #: scene/gui/control.cpp #, fuzzy msgid "Pivot Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: scene/gui/control.cpp #, fuzzy @@ -24533,7 +24547,7 @@ msgstr "" #: scene/gui/control.cpp #, fuzzy msgid "Default Cursor Shape" -msgstr "تØميل نسق المسار الإÙتراضي." +msgstr "تØميل نسق المسار الإÙتراضي" #: scene/gui/control.cpp msgid "Pass On Modal Close Click" @@ -24591,12 +24605,12 @@ msgstr "قطع الاتصال" #: scene/gui/graph_edit.cpp #, fuzzy msgid "Scroll Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: scene/gui/graph_edit.cpp #, fuzzy msgid "Snap Distance" -msgstr "اختر المساÙØ©:" +msgstr "اختر المساÙØ©" #: scene/gui/graph_edit.cpp #, fuzzy @@ -24696,7 +24710,7 @@ msgstr "" #: scene/gui/item_list.cpp #, fuzzy msgid "Icon Scale" -msgstr "Øجم عشوائي:" +msgstr "Øجم عشوائي" #: scene/gui/item_list.cpp #, fuzzy @@ -24711,7 +24725,7 @@ msgstr "ألØÙ‚" #: scene/gui/label.cpp scene/gui/rich_text_label.cpp #, fuzzy msgid "Visible Characters" -msgstr "الأØر٠الصالØØ©:" +msgstr "الأØر٠الصالØØ©" #: scene/gui/label.cpp scene/gui/rich_text_label.cpp #, fuzzy @@ -24737,7 +24751,7 @@ msgstr "" #: scene/gui/line_edit.cpp #, fuzzy msgid "Secret Character" -msgstr "الأØر٠الصالØØ©:" +msgstr "الأØر٠الصالØØ©" #: scene/gui/line_edit.cpp msgid "Expand To Text Length" @@ -24803,7 +24817,7 @@ msgstr "" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp #, fuzzy msgid "Blink Speed" -msgstr "السرعة:" +msgstr "السرعة" #: scene/gui/link_button.cpp msgid "Underline" @@ -24887,7 +24901,7 @@ msgstr "بØØ«" #: scene/gui/progress_bar.cpp #, fuzzy msgid "Percent" -msgstr "الØالي:" +msgstr "الØالي" #: scene/gui/range.cpp msgid "If \"Exp Edit\" is enabled, \"Min Value\" must be greater than 0." @@ -24948,7 +24962,7 @@ msgstr "مساÙØ© بادئة تلقائية" #: scene/gui/rich_text_effect.cpp #, fuzzy msgid "Elapsed Time" -msgstr "أوقات الدمج:" +msgstr "أوقات الدمج" #: scene/gui/rich_text_effect.cpp #, fuzzy @@ -24958,7 +24972,7 @@ msgstr "النهاية" #: scene/gui/rich_text_effect.cpp #, fuzzy msgid "Character" -msgstr "الأØر٠الصالØØ©:" +msgstr "الأØر٠الصالØØ©" #: scene/gui/rich_text_label.cpp msgid "BBCode" @@ -24971,7 +24985,7 @@ msgstr "" #: scene/gui/rich_text_label.cpp #, fuzzy msgid "Tab Size" -msgstr "الØجم:" +msgstr "الØجم" #: scene/gui/rich_text_label.cpp #, fuzzy @@ -24994,7 +25008,7 @@ msgstr "المØدد Ùقط" #: scene/gui/rich_text_label.cpp scene/gui/text_edit.cpp #, fuzzy msgid "Override Selected Font Color" -msgstr "عدل على الØساب الØالي:" +msgstr "عدل على الØساب الØالي" #: scene/gui/rich_text_label.cpp #, fuzzy @@ -25024,7 +25038,7 @@ msgstr "تزويد السطØ" #: scene/gui/scroll_container.cpp #, fuzzy msgid "Horizontal Enabled" -msgstr "عَرضياً:" +msgstr "عَرضياً" #: scene/gui/scroll_container.cpp #, fuzzy @@ -25047,22 +25061,22 @@ msgstr "اختر لوناً" #: scene/gui/slider.cpp #, fuzzy msgid "Ticks On Borders" -msgstr "إعادة تسمية مجلد:" +msgstr "إعادة تسمية مجلد" #: scene/gui/spin_box.cpp #, fuzzy msgid "Prefix" -msgstr "بادئة:" +msgstr "بادئة" #: scene/gui/spin_box.cpp #, fuzzy msgid "Suffix" -msgstr "لاØقة:" +msgstr "لاØقة" #: scene/gui/split_container.cpp #, fuzzy msgid "Split Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: scene/gui/split_container.cpp scene/gui/tree.cpp #, fuzzy @@ -25081,7 +25095,7 @@ msgstr "" #: scene/gui/tab_container.cpp scene/gui/tabs.cpp #, fuzzy msgid "Current Tab" -msgstr "الØالي:" +msgstr "الØالي" #: scene/gui/tab_container.cpp #, fuzzy @@ -25095,7 +25109,7 @@ msgstr "" #: scene/gui/tab_container.cpp scene/gui/tabs.cpp #, fuzzy msgid "Drag To Rearrange Enabled" -msgstr "إسØب وأسقط لإعادة الترتيب." +msgstr "إسØب وأسقط لإعادة الترتيب" #: scene/gui/tab_container.cpp msgid "Use Hidden Tabs For Min Size" @@ -25126,7 +25140,7 @@ msgstr "تخطي نقاط التكسّر" #: scene/gui/text_edit.cpp #, fuzzy msgid "Fold Gutter" -msgstr "مجلد:" +msgstr "مجلد" #: scene/gui/text_edit.cpp #, fuzzy @@ -25146,17 +25160,17 @@ msgstr "تÙعيل" #: scene/gui/text_edit.cpp #, fuzzy msgid "Scroll Vertical" -msgstr "شاقولياً:" +msgstr "شاقولياً" #: scene/gui/text_edit.cpp #, fuzzy msgid "Scroll Horizontal" -msgstr "عَرضياً:" +msgstr "عَرضياً" #: scene/gui/text_edit.cpp #, fuzzy msgid "Draw" -msgstr "استدعاءات الرسم:" +msgstr "استدعاءات الرسم" #: scene/gui/text_edit.cpp #, fuzzy @@ -25216,7 +25230,7 @@ msgstr "" #: scene/gui/texture_progress.cpp #, fuzzy msgid "Fill Mode" -msgstr "وضع التشغيل:" +msgstr "وضع التشغيل" #: scene/gui/texture_progress.cpp scene/resources/material.cpp msgid "Tint" @@ -25234,7 +25248,7 @@ msgstr "الشروع" #: scene/gui/texture_progress.cpp #, fuzzy msgid "Fill Degrees" -msgstr "ÙŠÙدير %s من الدرجات." +msgstr "ÙŠÙدير %s من الدرجات" #: scene/gui/texture_progress.cpp scene/resources/primitive_meshes.cpp #, fuzzy @@ -25287,7 +25301,7 @@ msgstr "زر معطّل" #: scene/gui/tree.cpp #, fuzzy msgid "Hide Root" -msgstr "إنشاء العÙقدة الرئيسة (الجذر):" +msgstr "إنشاء العÙقدة الرئيسة (الجذر)" #: scene/gui/tree.cpp msgid "Drop Mode Flags" @@ -25342,7 +25356,7 @@ msgstr "" #: scene/main/http_request.cpp #, fuzzy msgid "Timeout" -msgstr "انتهت المهلة." +msgstr "انتهت المهلة" #: scene/main/node.cpp msgid "" @@ -25387,17 +25401,17 @@ msgstr "إعادة التسمية" #: scene/main/node.cpp #, fuzzy msgid "Owner" -msgstr "ملاك:" +msgstr "ملاك" #: scene/main/node.cpp scene/main/scene_tree.cpp #, fuzzy msgid "Multiplayer" -msgstr "تØديد التكرار:" +msgstr "تØديد التكرار" #: scene/main/node.cpp #, fuzzy msgid "Custom Multiplayer" -msgstr "تØديد التكرار:" +msgstr "تØديد التكرار" #: scene/main/node.cpp msgid "Process Priority" @@ -25434,7 +25448,7 @@ msgstr "" #: scene/main/scene_tree.cpp #, fuzzy msgid "Multiplayer Poll" -msgstr "تØديد التكرار:" +msgstr "تØديد التكرار" #: scene/main/scene_tree.cpp scene/resources/mesh_library.cpp #: scene/resources/shape_2d.cpp @@ -25470,12 +25484,12 @@ msgstr "أنشئ الØد" #: scene/main/scene_tree.cpp servers/visual_server.cpp msgid "Reflections" -msgstr "الانعكاسات" +msgstr "انعكاسات" #: scene/main/scene_tree.cpp #, fuzzy msgid "Atlas Size" -msgstr "Øجم الخطوط:" +msgstr "Øجم الخطوط" #: scene/main/scene_tree.cpp msgid "Atlas Subdiv" @@ -25530,7 +25544,7 @@ msgstr "" #: scene/main/timer.cpp #, fuzzy msgid "Autostart" -msgstr "إعادة تشغيل تلقائية:" +msgstr "إعادة تشغيل تلقائية" #: scene/main/viewport.cpp #, fuzzy @@ -25615,7 +25629,7 @@ msgstr "تصØÙŠØ Ø§Ù„Ø£Ø®Ø·Ø§Ø¡" #: scene/main/viewport.cpp #, fuzzy msgid "Render Target" -msgstr "Ù…ÙØرك الإخراج البصري:" +msgstr "Ù…ÙØرك الإخراج البصري" #: scene/main/viewport.cpp msgid "V Flip" @@ -25736,7 +25750,7 @@ msgstr "" #: scene/resources/concave_polygon_shape_2d.cpp #, fuzzy msgid "Segments" -msgstr "معاملات المشهد الرئيس:" +msgstr "معاملات المشهد الرئيس" #: scene/resources/curve.cpp #, fuzzy @@ -25779,7 +25793,7 @@ msgstr "القص Clip Ù…Ùعطّل" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "H Separation" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -25849,7 +25863,7 @@ msgstr "عنصر معطّل" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Off" -msgstr "المÙعادل:" +msgstr "المÙعادل" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -25869,12 +25883,12 @@ msgstr "الاجبار على التعديل الابيض" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Shadow Offset X" -msgstr "معادل الشبكة على المØور الأÙقي X:" +msgstr "معادل الشبكة على المØور الأÙقي X" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Shadow Offset Y" -msgstr "معادل الشبكة على المØور Y:" +msgstr "معادل الشبكة على المØور Y" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -25934,12 +25948,12 @@ msgstr "المشهد الرئيس" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Folded" -msgstr "مجلد:" +msgstr "مجلد" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Fold" -msgstr "مجلد:" +msgstr "مجلد" #: scene/resources/default_theme/default_theme.cpp msgid "Font Color Readonly" @@ -26060,12 +26074,12 @@ msgstr "الاتجاهات" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Close H Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Close V Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26095,7 +26109,7 @@ msgstr "Ùاصل Ù…Ùسمّى" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Font Separator" -msgstr "Ù…Ùشغّل اللون." +msgstr "Ù…Ùشغّل اللون" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26105,12 +26119,12 @@ msgstr "إعادة تسمية عنصر اللون" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Font Color Separator" -msgstr "Ù…Ùشغّل اللون." +msgstr "Ù…Ùشغّل اللون" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "V Separation" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26155,17 +26169,17 @@ msgstr "الألوان" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Title Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Close Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Port Offset" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26277,12 +26291,12 @@ msgstr "أظهر الموجهات" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Scroll Border" -msgstr "شاقولياً:" +msgstr "شاقولياً" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Scroll Speed" -msgstr "مقدار إزاØØ© الشبكة:" +msgstr "مقدار إزاØØ© الشبكة" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26292,7 +26306,7 @@ msgstr "تØديد الهامش" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Line Separation" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26354,7 +26368,7 @@ msgstr "الهدÙ" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Folder" -msgstr "مجلد:" +msgstr "مجلد" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26394,7 +26408,7 @@ msgstr "بالعرض يساراً" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Screen Picker" -msgstr "Ù…Ùشغل الشاشة." +msgstr "Ù…Ùشغل الشاشة" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26457,12 +26471,12 @@ msgstr "المشهد الرئيس" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Table H Separation" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Table V Separation" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26557,7 +26571,7 @@ msgstr "مسار التركيز" #: scene/resources/dynamic_font.cpp #, fuzzy msgid "Outline Size" -msgstr "Øجم الخطوط:" +msgstr "Øجم الخطوط" #: scene/resources/dynamic_font.cpp #, fuzzy @@ -26572,12 +26586,12 @@ msgstr "الإشارات" #: scene/resources/dynamic_font.cpp #, fuzzy msgid "Extra Spacing" -msgstr "خيارات إضاÙية:" +msgstr "خيارات إضاÙية" #: scene/resources/dynamic_font.cpp #, fuzzy msgid "Char" -msgstr "الأØر٠الصالØØ©:" +msgstr "الأØر٠الصالØØ©" #: scene/resources/dynamic_font.cpp #, fuzzy @@ -26605,12 +26619,12 @@ msgstr "الوثائق الإلكترونية" #: scene/resources/environment.cpp #, fuzzy msgid "Sky Rotation" -msgstr "خطوة الدوران:" +msgstr "خطوة الدوران" #: scene/resources/environment.cpp #, fuzzy msgid "Sky Rotation Degrees" -msgstr "ÙŠÙدير %s من الدرجات." +msgstr "ÙŠÙدير %s من الدرجات" #: scene/resources/environment.cpp msgid "Canvas Max Layer" @@ -26637,12 +26651,12 @@ msgstr "" #: scene/resources/environment.cpp #, fuzzy msgid "Sun Color" -msgstr "تخزين الملÙ:" +msgstr "تخزين الملÙ" #: scene/resources/environment.cpp #, fuzzy msgid "Sun Amount" -msgstr "الكمية:" +msgstr "الكمية" #: scene/resources/environment.cpp #, fuzzy @@ -26733,12 +26747,12 @@ msgstr "الخطوة" #: scene/resources/environment.cpp #, fuzzy msgid "Fade In" -msgstr "تلاشي ÙÙŠ البداية (ثواني):" +msgstr "تلاشي ÙÙŠ البداية (ثواني)" #: scene/resources/environment.cpp #, fuzzy msgid "Fade Out" -msgstr "تلاشي من النهاية (ثواني):" +msgstr "تلاشي من النهاية (ثواني)" #: scene/resources/environment.cpp #, fuzzy @@ -26756,7 +26770,7 @@ msgstr "" #: scene/resources/environment.cpp #, fuzzy msgid "Radius 2" -msgstr "نص٠القطر:" +msgstr "نص٠القطر" #: scene/resources/environment.cpp msgid "Intensity 2" @@ -26787,7 +26801,7 @@ msgstr "" #: scene/resources/environment.cpp scene/resources/material.cpp #, fuzzy msgid "Distance" -msgstr "اختر المساÙØ©:" +msgstr "اختر المساÙØ©" #: scene/resources/environment.cpp msgid "Transition" @@ -26871,17 +26885,17 @@ msgstr "ضوء" #: scene/resources/environment.cpp #, fuzzy msgid "Saturation" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: scene/resources/environment.cpp #, fuzzy msgid "Color Correction" -msgstr "الوظيÙØ© البرمجية للون." +msgstr "الوظيÙØ© البرمجية للون" #: scene/resources/font.cpp #, fuzzy msgid "Ascent" -msgstr "الØالي:" +msgstr "الØالي" #: scene/resources/font.cpp #, fuzzy @@ -26896,7 +26910,7 @@ msgstr "العمق" #: scene/resources/gradient.cpp #, fuzzy msgid "Offsets" -msgstr "المÙعادل:" +msgstr "المÙعادل" #: scene/resources/height_map_shape.cpp msgid "Map Width" @@ -26960,7 +26974,7 @@ msgstr "المساÙØ© البادئة يميناً" #: scene/resources/material.cpp #, fuzzy msgid "Ensure Correct Normals" -msgstr "أجهض التØول." +msgstr "أجهض التØول" #: scene/resources/material.cpp msgid "Albedo Tex MSDF" @@ -26982,7 +26996,7 @@ msgstr "" #: scene/resources/material.cpp servers/visual_server.cpp #, fuzzy msgid "Parameters" -msgstr "لقد تم تغيير المَعلم:" +msgstr "لقد تم تغيير المَعلم" #: scene/resources/material.cpp #, fuzzy @@ -27026,7 +27040,7 @@ msgstr "" #: scene/resources/material.cpp #, fuzzy msgid "Grow Amount" -msgstr "الكمية:" +msgstr "الكمية" #: scene/resources/material.cpp msgid "Use Alpha Scissor" @@ -27133,7 +27147,7 @@ msgstr "الإنتقال" #: scene/resources/material.cpp #, fuzzy msgid "Refraction" -msgstr "التباعÙدات:" +msgstr "التباعÙدات" #: scene/resources/material.cpp msgid "Detail" @@ -27198,12 +27212,12 @@ msgstr "Ù…ØÙˆ التَØَوّل" #: scene/resources/multimesh.cpp #, fuzzy msgid "Color Format" -msgstr "Ù…Ùشغّل اللون." +msgstr "Ù…Ùشغّل اللون" #: scene/resources/multimesh.cpp #, fuzzy msgid "Transform Format" -msgstr "أجهض التØول." +msgstr "أجهض التØول" #: scene/resources/multimesh.cpp msgid "Custom Data Format" @@ -27221,7 +27235,7 @@ msgstr "" #: scene/resources/navigation_mesh.cpp #, fuzzy msgid "Sampling" -msgstr "تØجيم:" +msgstr "تØجيم" #: scene/resources/navigation_mesh.cpp #, fuzzy @@ -27231,7 +27245,7 @@ msgstr "Øدد نوع المتغير" #: scene/resources/navigation_mesh.cpp #, fuzzy msgid "Parsed Geometry Type" -msgstr "توزيع الأشكال الهندسية..." +msgstr "توزيع الأشكال الهندسية" #: scene/resources/navigation_mesh.cpp msgid "Source Geometry Mode" @@ -27249,7 +27263,7 @@ msgstr "" #: scene/resources/navigation_mesh.cpp #, fuzzy msgid "Agents" -msgstr "معاملات المشهد الرئيس:" +msgstr "معاملات المشهد الرئيس" #: scene/resources/navigation_mesh.cpp msgid "Max Climb" @@ -27290,7 +27304,7 @@ msgstr "أظهر الإÙتراضي" #: scene/resources/navigation_mesh.cpp #, fuzzy msgid "Sample Distance" -msgstr "اختر المساÙØ©:" +msgstr "اختر المساÙØ©" #: scene/resources/navigation_mesh.cpp #, fuzzy @@ -27317,7 +27331,7 @@ msgstr "توليد AABB" #: scene/resources/navigation_mesh.cpp #, fuzzy msgid "Baking AABB Offset" -msgstr "المÙعادل:" +msgstr "المÙعادل" #: scene/resources/occluder_shape.cpp msgid "Spheres" @@ -27362,7 +27376,7 @@ msgstr "Ù…Ùعدّل تباطؤ الرؤية الØÙرة" #: scene/resources/particles_material.cpp #, fuzzy msgid "Point Texture" -msgstr "نقاط الانبعاث:" +msgstr "نقاط الانبعاث" #: scene/resources/particles_material.cpp msgid "Normal Texture" @@ -27381,7 +27395,7 @@ msgstr "أض٠منÙØ° أدخال" #: scene/resources/particles_material.cpp #, fuzzy msgid "Scale Random" -msgstr "نسبة التكبير:" +msgstr "نسبة التكبير" #: scene/resources/particles_material.cpp #, fuzzy @@ -27399,7 +27413,7 @@ msgstr "" #: scene/resources/plane_shape.cpp #, fuzzy msgid "Plane" -msgstr "التبويت:" +msgstr "التبويت" #: scene/resources/primitive_meshes.cpp #, fuzzy @@ -27425,7 +27439,7 @@ msgstr "" #: scene/resources/primitive_meshes.cpp #, fuzzy msgid "Top Radius" -msgstr "نص٠القطر:" +msgstr "نص٠القطر" #: scene/resources/primitive_meshes.cpp #, fuzzy @@ -27476,7 +27490,7 @@ msgstr "العظام" #: scene/resources/sky.cpp #, fuzzy msgid "Radiance Size" -msgstr "Øجم الخطوط:" +msgstr "Øجم الخطوط" #: scene/resources/sky.cpp msgid "Panorama" @@ -27490,7 +27504,7 @@ msgstr "الطابق التالي" #: scene/resources/sky.cpp #, fuzzy msgid "Horizon Color" -msgstr "تخزين الملÙ:" +msgstr "تخزين الملÙ" #: scene/resources/sky.cpp #, fuzzy @@ -27601,7 +27615,7 @@ msgstr "التقاط" #: scene/resources/texture.cpp #, fuzzy msgid "From" -msgstr "وضع التشغيل:" +msgstr "وضع التشغيل" #: scene/resources/texture.cpp #, fuzzy @@ -27769,7 +27783,7 @@ msgstr "أختبار" #: scene/resources/world.cpp scene/resources/world_2d.cpp #, fuzzy msgid "Default Edge Connection Margin" -msgstr "تعديل الإتصال:" +msgstr "تعديل الإتصال" #: scene/resources/world_2d.cpp msgid "Canvas" @@ -27805,7 +27819,7 @@ msgstr "عنصر Ø®Ùيار" #: servers/audio/audio_stream.cpp #, fuzzy msgid "Random Pitch" -msgstr "إمالة عشوائية:" +msgstr "إمالة عشوائية" #: servers/audio/effects/audio_effect_capture.cpp #: servers/audio/effects/audio_effect_spectrum_analyzer.cpp @@ -27857,7 +27871,7 @@ msgstr "" #: servers/audio/effects/audio_effect_panner.cpp #, fuzzy msgid "Pan" -msgstr "التبويت:" +msgstr "التبويت" #: servers/audio/effects/audio_effect_compressor.cpp #: servers/audio/effects/audio_effect_filter.cpp @@ -27955,7 +27969,7 @@ msgstr "" #: servers/audio/effects/audio_effect_spectrum_analyzer.cpp #, fuzzy msgid "FFT Size" -msgstr "الØجم:" +msgstr "الØجم" #: servers/audio/effects/audio_effect_reverb.cpp msgid "Predelay" @@ -27985,7 +27999,7 @@ msgstr "" #: servers/audio/effects/audio_effect_stereo_enhance.cpp #, fuzzy msgid "Time Pullout (ms)" -msgstr "انتهت المهلة." +msgstr "انتهت المهلة" #: servers/audio/effects/audio_effect_stereo_enhance.cpp msgid "Surround" @@ -28053,7 +28067,7 @@ msgstr "" #: servers/physics_2d/physics_2d_server_sw.cpp #, fuzzy msgid "BP Hash Table Size" -msgstr "الØجم:" +msgstr "الØجم" #: servers/physics_2d/physics_2d_server_sw.cpp msgid "Large Object Surface Threshold In Cells" @@ -28179,7 +28193,7 @@ msgstr "لا يمكن تعديل الثوابت." #: servers/visual/visual_server_scene.cpp #, fuzzy msgid "Spatial Partitioning" -msgstr "تجزئة..." +msgstr "تجزئة" #: servers/visual_server.cpp #, fuzzy @@ -28369,7 +28383,7 @@ msgstr "" #: servers/visual_server.cpp #, fuzzy msgid "Batching" -msgstr "جاري البØØ«..." +msgstr "جاري البØØ«" #: servers/visual_server.cpp msgid "Use Batching" @@ -28399,7 +28413,7 @@ msgstr "" #: servers/visual_server.cpp #, fuzzy msgid "Max Join Items" -msgstr "إدارة العناصر..." +msgstr "إدارة العناصر" #: servers/visual_server.cpp msgid "Batch Buffer Size" diff --git a/editor/translations/az.po b/editor/translations/az.po index d4ffe0665e..b6b36d99e5 100644 --- a/editor/translations/az.po +++ b/editor/translations/az.po @@ -12593,9 +12593,10 @@ msgstr "Yapışdır(Snap):" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13952,12 +13953,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22688,6 +22688,15 @@ msgstr "Maks. XÉ™tti XÉ™ta:" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Ä°nterpolasiya rejimi" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/bg.po b/editor/translations/bg.po index a6a8b72ea5..262a6825a6 100644 --- a/editor/translations/bg.po +++ b/editor/translations/bg.po @@ -17,13 +17,14 @@ # Ivan Gechev <ivan_banov@abv.bg>, 2022. # BigHomieDripDrop <bartu.bali@gmail.com>, 2022. # xaio <xaio666@gmail.com>, 2022. +# Vosh <vosh4k@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-22 15:26+0000\n" -"Last-Translator: xaio <xaio666@gmail.com>\n" +"PO-Revision-Date: 2022-10-25 15:43+0000\n" +"Last-Translator: Vosh <vosh4k@gmail.com>\n" "Language-Team: Bulgarian <https://hosted.weblate.org/projects/godot-engine/" "godot/bg/>\n" "Language: bg\n" @@ -31,7 +32,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.14.1\n" +"X-Generator: Weblate 4.14.2-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -437,19 +438,16 @@ msgid "Button Mask" msgstr "Бутон" #: core/os/input_event.cpp scene/2d/node_2d.cpp scene/gui/control.cpp -#, fuzzy msgid "Global Position" -msgstr "Глобална конÑтанта" +msgstr "Глобална позициÑ" #: core/os/input_event.cpp -#, fuzzy msgid "Factor" -msgstr "Вектор" +msgstr "Фактор" #: core/os/input_event.cpp -#, fuzzy msgid "Button Index" -msgstr "Бутон" +msgstr "Ð˜Ð½Ð´ÐµÐºÑ Ð½Ð° бутона" #: core/os/input_event.cpp msgid "Doubleclick" @@ -485,9 +483,8 @@ msgid "Axis" msgstr "ОÑ" #: core/os/input_event.cpp -#, fuzzy msgid "Axis Value" -msgstr "Закачане на ÑтойноÑтта" +msgstr "СтойноÑÑ‚ на оÑта" #: core/os/input_event.cpp modules/visual_script/visual_script_func_nodes.cpp #, fuzzy @@ -510,14 +507,12 @@ msgid "Delta" msgstr "Делта" #: core/os/input_event.cpp -#, fuzzy msgid "Channel" -msgstr "ПромÑна на филтъра" +msgstr "Канал" #: core/os/input_event.cpp main/main.cpp -#, fuzzy msgid "Message" -msgstr "Съобщение за подаването" +msgstr "Съобщение" #: core/os/input_event.cpp #, fuzzy @@ -527,9 +522,8 @@ msgstr "Скалиране" #: core/os/input_event.cpp scene/2d/cpu_particles_2d.cpp #: scene/2d/physics_body_2d.cpp scene/3d/cpu_particles.cpp #: scene/3d/physics_body.cpp scene/resources/particles_material.cpp -#, fuzzy msgid "Velocity" -msgstr "Орбитален изглед отдÑÑно" +msgstr "СкороÑÑ‚" #: core/os/input_event.cpp msgid "Instrument" @@ -547,14 +541,12 @@ msgstr "СтойноÑÑ‚ на контролер" #: core/project_settings.cpp editor/editor_node.cpp main/main.cpp #: platform/iphone/export/export.cpp platform/osx/export/export.cpp #: platform/windows/export/export.cpp -#, fuzzy msgid "Application" -msgstr "ДейÑтвие" +msgstr "Приложение" #: core/project_settings.cpp main/main.cpp -#, fuzzy msgid "Config" -msgstr "ÐаÑтройване на прилепването" +msgstr "КонфигурациÑ" #: core/project_settings.cpp #, fuzzy @@ -617,9 +609,8 @@ msgstr "Име на перÑонална потребителÑка катего #: core/project_settings.cpp main/main.cpp #: platform/javascript/export/export.cpp platform/osx/export/export.cpp #: platform/uwp/os_uwp.cpp -#, fuzzy msgid "Display" -msgstr "Показване на вÑичко" +msgstr "Покажи" #: core/project_settings.cpp main/main.cpp modules/csg/csg_shape.cpp #: modules/opensimplex/noise_texture.cpp scene/2d/line_2d.cpp @@ -669,9 +660,8 @@ msgid "Main Run Args" msgstr "" #: core/project_settings.cpp -#, fuzzy msgid "Scene Naming" -msgstr "Път на Ñцената:" +msgstr "Ðаименование на Ñцена" #: core/project_settings.cpp msgid "Search In File Extensions" @@ -682,9 +672,8 @@ msgid "Script Templates Search Path" msgstr "Път за Ñ‚ÑŠÑ€Ñене на Ñкриптови шаблони" #: core/project_settings.cpp -#, fuzzy msgid "Version Control Autoload On Startup" -msgstr "Контрол на верÑиите" +msgstr "Стартирай контрол на верÑиите при Ñтартиране" #: core/project_settings.cpp #, fuzzy @@ -1053,7 +1042,7 @@ msgstr "Скалиране" #: drivers/gles3/rasterizer_scene_gles3.cpp msgid "Follow Surface" -msgstr "" +msgstr "Следвай повърхноÑÑ‚" #: drivers/gles3/rasterizer_scene_gles3.cpp msgid "Weight Samples" @@ -1143,9 +1132,8 @@ msgstr "ПромÑна на повикана Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ (ÐнимациÑ)" #: editor/animation_track_editor.cpp scene/2d/animated_sprite.cpp #: scene/2d/sprite.cpp scene/3d/sprite_3d.cpp #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Frame" -msgstr "ДобавÑне на кадър" +msgstr "Кадър" #: editor/animation_track_editor.cpp editor/editor_profiler.cpp #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp @@ -1156,9 +1144,8 @@ msgstr "Време" #: editor/animation_track_editor.cpp editor/import/resource_importer_scene.cpp #: platform/osx/export/export.cpp -#, fuzzy msgid "Location" -msgstr "Стъпка при завъртане:" +msgstr "МеÑтоположение" #: editor/animation_track_editor.cpp modules/gltf/gltf_node.cpp #: scene/2d/polygon_2d.cpp scene/2d/remote_transform_2d.cpp @@ -1339,19 +1326,16 @@ msgid "Remove this track." msgstr "Премахване на тази пътечка." #: editor/animation_track_editor.cpp -#, fuzzy msgid "Time (s):" -msgstr "Време (Ñек): " +msgstr "Време (Ñек):" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Position:" -msgstr "Създаване на функциÑ" +msgstr "ПозициÑ:" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Rotation:" -msgstr "Стъпка при завъртане:" +msgstr "Завъртане:" #: editor/animation_track_editor.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp @@ -1646,7 +1630,7 @@ msgstr "" #: editor/animation_track_editor.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Clipboard is empty!" -msgstr "" +msgstr "Клипбордът е празен!" #: editor/animation_track_editor.cpp msgid "Paste Tracks" @@ -12795,9 +12779,10 @@ msgstr "ÐаÑтройки за прилепването" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "ОтмеÑтване:" @@ -14158,16 +14143,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Ðеправилен път до проекта (ПроменÑли ли Ñте нещо?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Файлът „project.godot“ не може да бъде зареден от Ð¿ÑŠÑ‚Ñ Ð½Ð° проекта (грешка " "%d). Възможно е той да липÑва или да е повреден." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "" +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Ðе може да бъде отворен проектът в „%s“." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -23350,6 +23336,15 @@ msgstr "Грешка от %s" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Сортиране" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/bn.po b/editor/translations/bn.po index f32a090f27..df79cd5d84 100644 --- a/editor/translations/bn.po +++ b/editor/translations/bn.po @@ -13807,9 +13807,10 @@ msgstr "অà§à¦¯à¦¾à¦¨à¦¿à¦®à§‡à¦¶à¦¨à§‡à¦° সিদà§à¦§à¦¾à¦¨à§à¦¤à¦¸à¦®à§ #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "অফসেট/à¦à¦¾à¦°à¦¸à¦¾à¦®à§à¦¯:" @@ -15277,14 +15278,13 @@ msgstr "অকারà§à¦¯à¦•à¦° পà§à¦°à¦•à¦²à§à¦ªà§‡à¦° পথ (কোনৠ#: editor/project_manager.cpp #, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "পà§à¦°à¦•à¦²à§à¦ªà§‡à¦° পথে engine.cfg তৈরি করা সমà§à¦à¦¬ হয়নি।" #: editor/project_manager.cpp #, fuzzy -msgid "Couldn't edit project.godot in project path." -msgstr "পà§à¦°à¦•à¦²à§à¦ªà§‡à¦° পথে engine.cfg তৈরি করা সমà§à¦à¦¬ হয়নি।" +msgid "Couldn't save project at '%s' (error %d)." +msgstr "সংযোগ..." #: editor/project_manager.cpp #, fuzzy @@ -24888,6 +24888,15 @@ msgstr "সমসà§à¦¯à¦¾/à¦à§à¦²" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "সাজান:" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/br.po b/editor/translations/br.po index 7b92059104..0cfc29b4d1 100644 --- a/editor/translations/br.po +++ b/editor/translations/br.po @@ -12459,9 +12459,10 @@ msgstr "Tro Fiñvskeudenn" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13803,12 +13804,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22459,6 +22459,15 @@ msgstr "Melezour" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Mod Interpoladur" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/ca.po b/editor/translations/ca.po index b08b3be823..d3ced0a876 100644 --- a/editor/translations/ca.po +++ b/editor/translations/ca.po @@ -13232,9 +13232,10 @@ msgstr "Opcions d'Ajustament" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "òfset:" @@ -14752,16 +14753,17 @@ msgid "Invalid project path (changed anything?)." msgstr "El Camà del Projecte no és và lid (S'ha produit algun canvi?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "No es pot carregar el fitxer 'project.godot' en el camà del projecte (error " "%d). Pot ser que falti o que estigui malmès." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "No es pot editar el fitxer 'project.godot' en el camà del projecte." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "No es pot obrir el projecte a '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -24377,6 +24379,15 @@ msgstr "Error" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Ordena" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/cs.po b/editor/translations/cs.po index 01c28b207e..173d38c85c 100644 --- a/editor/translations/cs.po +++ b/editor/translations/cs.po @@ -32,13 +32,14 @@ # JoeMoos <josephmoose13@gmail.com>, 2022. # Mirinek <mirek.nozicka77@gmail.com>, 2022. # LubomÃr Baloun <lubosbaloun@gmail.com>, 2022. +# OndÅ™ej Pavelka <flamekick97@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-19 05:22+0000\n" -"Last-Translator: LubomÃr Baloun <lubosbaloun@gmail.com>\n" +"PO-Revision-Date: 2022-12-12 09:46+0000\n" +"Last-Translator: OndÅ™ej Pavelka <flamekick97@gmail.com>\n" "Language-Team: Czech <https://hosted.weblate.org/projects/godot-engine/godot/" "cs/>\n" "Language: cs\n" @@ -46,11 +47,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -"X-Generator: Weblate 4.14.1\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" -msgstr "OvladaÄ Grafického Tabletu" +msgstr "OvladaÄe grafického tabletu" #: core/bind/core_bind.cpp msgid "Clipboard" @@ -65,9 +66,8 @@ msgid "Exit Code" msgstr "Kód pro ukonÄenà (exit code)" #: core/bind/core_bind.cpp -#, fuzzy msgid "V-Sync Enabled" -msgstr "V-Sync Zapnutý" +msgstr "V-Sync zapnutý" #: core/bind/core_bind.cpp main/main.cpp msgid "V-Sync Via Compositor" @@ -93,22 +93,20 @@ msgstr "Nechat ladÃcà program otevÅ™ený" #: core/bind/core_bind.cpp msgid "Min Window Size" -msgstr "Minimálnà Velikost Okna" +msgstr "Minimálnà velikost okna" #: core/bind/core_bind.cpp msgid "Max Window Size" -msgstr "Maximálnà Velikost Okna" +msgstr "Maximálnà velikost okna" #: core/bind/core_bind.cpp -#, fuzzy msgid "Screen Orientation" -msgstr "Operátor screen." +msgstr "Orientace obrazovky" #: core/bind/core_bind.cpp core/project_settings.cpp main/main.cpp #: platform/uwp/os_uwp.cpp -#, fuzzy msgid "Window" -msgstr "Nové okno" +msgstr "Okno" #: core/bind/core_bind.cpp core/project_settings.cpp #, fuzzy @@ -127,7 +125,7 @@ msgstr "PÅ™epnout celou obrazovku" #: core/bind/core_bind.cpp msgid "Maximized" -msgstr "" +msgstr "Maximalizováno" #: core/bind/core_bind.cpp #, fuzzy @@ -224,7 +222,7 @@ msgstr "Paměť" #: modules/webrtc/webrtc_data_channel.h modules/websocket/websocket_macros.h #: servers/visual_server.cpp msgid "Limits" -msgstr "" +msgstr "Limity" #: core/command_queue_mt.cpp #, fuzzy @@ -284,9 +282,8 @@ msgid "Read Chunk Size" msgstr "" #: core/io/marshalls.cpp -#, fuzzy msgid "Object ID" -msgstr "Kreslené objekty:" +msgstr "ID Objektu" #: core/io/multiplayer_api.cpp core/io/packet_peer.cpp #, fuzzy @@ -407,7 +404,7 @@ msgstr "Status" #: core/message_queue.cpp msgid "Message Queue" -msgstr "" +msgstr "Fronta zpráv" #: core/message_queue.cpp msgid "Max Size (KB)" @@ -445,7 +442,7 @@ msgstr "Správa verzÃ" #: core/os/input_event.cpp msgid "Meta" -msgstr "" +msgstr "Meta" #: core/os/input_event.cpp #, fuzzy @@ -519,7 +516,7 @@ msgstr "Profil" #: core/os/input_event.cpp msgid "Pen Inverted" -msgstr "" +msgstr "Tužka invertována" #: core/os/input_event.cpp #, fuzzy @@ -589,7 +586,7 @@ msgstr "Inicializovat" #: core/os/input_event.cpp msgid "Instrument" -msgstr "" +msgstr "Nástroj" #: core/os/input_event.cpp #, fuzzy @@ -663,8 +660,9 @@ msgid "Use Hidden Project Data Directory" msgstr "" #: core/project_settings.cpp +#, fuzzy msgid "Use Custom User Dir" -msgstr "" +msgstr "PoužÃt vlastnà uživatelské dir" #: core/project_settings.cpp msgid "Custom User Dir Name" @@ -1054,8 +1052,9 @@ msgstr "Vyrovnávacà PamÄ›ti" #: drivers/gles2/rasterizer_canvas_base_gles2.cpp #: drivers/gles3/rasterizer_canvas_base_gles3.cpp +#, fuzzy msgid "Canvas Polygon Buffer Size (KB)" -msgstr "" +msgstr "Velikost zásobnÃku polygonového plátna (v KB)" #: drivers/gles2/rasterizer_canvas_base_gles2.cpp #: drivers/gles3/rasterizer_canvas_base_gles3.cpp @@ -1108,7 +1107,7 @@ msgstr "" #: drivers/gles3/rasterizer_scene_gles3.cpp msgid "Max Renderable Lights" -msgstr "" +msgstr "Maximálnà poÄet renderovatelných svÄ›tel" #: drivers/gles3/rasterizer_scene_gles3.cpp #, fuzzy @@ -1116,8 +1115,9 @@ msgid "Max Renderable Reflections" msgstr "Vycentrovat výbÄ›r" #: drivers/gles3/rasterizer_scene_gles3.cpp +#, fuzzy msgid "Max Lights Per Object" -msgstr "" +msgstr "Maximálnà poÄet svÄ›tel na objekt" #: drivers/gles3/rasterizer_scene_gles3.cpp msgid "Subsurface Scattering" @@ -1266,7 +1266,7 @@ msgstr "MnožstvÃ:" #: editor/animation_track_editor.cpp main/main.cpp #: modules/mono/mono_gd/gd_mono.cpp msgid "Args" -msgstr "" +msgstr "Argumenty" #: editor/animation_track_editor.cpp editor/editor_settings.cpp #: editor/script_editor_debugger.cpp modules/gltf/gltf_accessor.cpp @@ -1289,8 +1289,9 @@ msgstr "Nastavit úchyt" #: editor/import/resource_importer_texture.cpp #: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp #: scene/audio/audio_stream_player.cpp scene/gui/video_player.cpp +#, fuzzy msgid "Stream" -msgstr "" +msgstr "Stream" #: editor/animation_track_editor.cpp #, fuzzy @@ -1577,9 +1578,8 @@ msgstr "Odstranit stopu animace" #: editor/plugins/tile_map_editor_plugin.cpp editor/scene_tree_dock.cpp #: editor/spatial_editor_gizmos.cpp modules/csg/csg_gizmos.cpp #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Editors" -msgstr "Editor" +msgstr "Editory" #: editor/animation_track_editor.cpp editor/editor_settings.cpp #, fuzzy @@ -2323,7 +2323,7 @@ msgstr "OtevÅ™Ãt" #: editor/dependency_editor.cpp msgid "Owners of: %s (Total: %d)" -msgstr "" +msgstr "VlastnÃci: %s (Dohromady: %d)" #: editor/dependency_editor.cpp msgid "" @@ -2884,8 +2884,9 @@ msgid "Choose" msgstr "Vyberte" #: editor/editor_export.cpp +#, fuzzy msgid "Project export for platform:" -msgstr "" +msgstr "Exportovat projekt pro platformu:" #: editor/editor_export.cpp #, fuzzy @@ -3015,8 +3016,9 @@ msgid "Binary Format" msgstr "Operátor barvy." #: editor/editor_export.cpp +#, fuzzy msgid "64 Bits" -msgstr "" +msgstr "64 Bitů" #: editor/editor_export.cpp msgid "Embed PCK" @@ -3029,19 +3031,19 @@ msgstr "Oblast textury" #: editor/editor_export.cpp msgid "BPTC" -msgstr "" +msgstr "BPTC" #: editor/editor_export.cpp platform/osx/export/export.cpp msgid "S3TC" -msgstr "" +msgstr "S3TC" #: editor/editor_export.cpp platform/osx/export/export.cpp msgid "ETC" -msgstr "" +msgstr "ETC" #: editor/editor_export.cpp platform/osx/export/export.cpp msgid "ETC2" -msgstr "" +msgstr "ETC2" #: editor/editor_export.cpp msgid "No BPTC Fallbacks" @@ -3090,8 +3092,9 @@ msgid "On 32-bit exports the embedded PCK cannot be bigger than 4 GiB." msgstr "PÅ™i 32-bitovým exportu vestavÄ›né PCK nemůže být vÄ›tÅ¡Ã než 4 GiB." #: editor/editor_export.cpp +#, fuzzy msgid "Convert Text Resources To Binary On Export" -msgstr "" +msgstr "Konvertovat textové zdroje do binárky pÅ™i exportu" #: editor/editor_feature_profile.cpp msgid "3D Editor" @@ -3414,8 +3417,9 @@ msgid "Show Hidden Files" msgstr "Zobrazit skryté soubory" #: editor/editor_file_dialog.cpp +#, fuzzy msgid "Disable Overwrite Warning" -msgstr "" +msgstr "Vypnout varovánà pÅ™i pÅ™epsánÃ" #: editor/editor_file_dialog.cpp msgid "Go Back" @@ -3517,8 +3521,9 @@ msgid "(Re)Importing Assets" msgstr "(Re)Importovánà assetů" #: editor/editor_file_system.cpp +#, fuzzy msgid "Reimport Missing Imported Files" -msgstr "" +msgstr "Znovu importovat chybÄ›jÃcà importované soubory" #: editor/editor_help.cpp scene/2d/camera_2d.cpp scene/gui/control.cpp #: scene/gui/nine_patch_rect.cpp scene/resources/dynamic_font.cpp @@ -3620,9 +3625,8 @@ msgstr "" #: editor/plugins/script_text_editor.cpp #: modules/gdscript/editor/gdscript_highlighter.cpp #: modules/gdscript/gdscript_editor.cpp -#, fuzzy msgid "Text Editor" -msgstr "OtevÅ™Ãt editor" +msgstr "Editor textu" #: editor/editor_help.cpp editor/editor_node.cpp editor/editor_settings.cpp #: editor/plugins/shader_editor_plugin.cpp @@ -3631,7 +3635,7 @@ msgstr "NápovÄ›da" #: editor/editor_help.cpp msgid "Sort Functions Alphabetically" -msgstr "" +msgstr "TÅ™Ãdit funkce abecednÄ›" #: editor/editor_help_search.cpp editor/editor_node.cpp #: editor/plugins/script_editor_plugin.cpp @@ -3751,10 +3755,12 @@ msgstr "(hodnota)" msgid "" "Pinning a value forces it to be saved even if it's equal to the default." msgstr "" +"PÅ™ipnutà hodnoty vynutà jejà uloženÃ, i když bude shodná s výchozà hodnotou." #: editor/editor_inspector.cpp +#, fuzzy msgid "Pin value [Disabled because '%s' is editor-only]" -msgstr "" +msgstr "PÅ™ipnout hodnotu [vypnuto jelikož '%s' je pouze v editoru]" #: editor/editor_inspector.cpp #: editor/plugins/gradient_texture_2d_editor_plugin.cpp @@ -3771,11 +3777,11 @@ msgstr "Nastavit vÃce:" #: editor/editor_inspector.cpp msgid "Pinned %s" -msgstr "" +msgstr "PÅ™ipnuté %s" #: editor/editor_inspector.cpp msgid "Unpinned %s" -msgstr "" +msgstr "NepÅ™ipnuté %s" #: editor/editor_inspector.cpp #, fuzzy @@ -4415,80 +4421,73 @@ msgstr "%d vÃce souborů" msgid "" "Unable to write to file '%s', file in use, locked or lacking permissions." msgstr "" +"Nenà možné zapisovat do souboru '%s', soubour je použÃván, uzamÄen nebo " +"chybà oprávnÄ›nÃ." #: editor/editor_node.cpp editor/editor_settings.cpp editor/scene_tree_dock.cpp #: servers/arvr/arvr_interface.cpp -#, fuzzy msgid "Interface" -msgstr "Uživatelské rozhranÃ" +msgstr "RozhranÃ" #: editor/editor_node.cpp editor/editor_settings.cpp -#, fuzzy msgid "Scene Tabs" -msgstr "PÅ™epnout záložku scény" +msgstr "Karty scén" #: editor/editor_node.cpp -#, fuzzy msgid "Always Show Close Button" -msgstr "Vždy zobrazit mřÞku" +msgstr "Vždy zobrazit tlaÄÃtko zavÅ™enÃ" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Resize If Many Tabs" -msgstr "" +msgstr "ZmÄ›nit velikost pÅ™i velkém poÄtu záložek" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Minimum Width" -msgstr "" +msgstr "Minimálnà šÃÅ™ka" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Output" msgstr "Výstup" #: editor/editor_node.cpp editor/editor_settings.cpp -#, fuzzy msgid "Always Clear Output On Play" -msgstr "Vymazat výstup" +msgstr "Vždy vymazat výstup pÅ™i spuÅ¡tÄ›nÃ" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Always Open Output On Play" -msgstr "" +msgstr "Vždy otevÅ™Ãt výstup pÅ™i spuÅ¡tÄ›nÃ" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Always Close Output On Stop" -msgstr "" +msgstr "Vždy zavÅ™Ãt výstup pÅ™i ukonÄenÃ" #: editor/editor_node.cpp msgid "Save On Focus Loss" msgstr "" #: editor/editor_node.cpp editor/editor_settings.cpp -#, fuzzy msgid "Save Each Scene On Quit" -msgstr "Uložit vÄ›tev jako scénu" +msgstr "Uložit vÅ¡echny scény pÅ™i vypnutÃ" #: editor/editor_node.cpp editor/editor_settings.cpp -#, fuzzy msgid "Quit Confirmation" -msgstr "Zobrazit informace" +msgstr "Potvrzenà pÅ™i vypnutÃ" #: editor/editor_node.cpp -#, fuzzy msgid "Show Update Spinner" -msgstr "Schovat aktualizaÄnà koleÄko" +msgstr "Zobrazit aktualizaÄnà koleÄko" #: editor/editor_node.cpp msgid "Update Continuously" msgstr "Aktualizovat průběžnÄ›" #: editor/editor_node.cpp -#, fuzzy msgid "Update Vital Only" -msgstr "ZmÄ›ny materiálu:" +msgstr "Aktualizovat pouze důležité" #: editor/editor_node.cpp -#, fuzzy msgid "Localize Settings" -msgstr "Lokalizace" +msgstr "LokalizaÄnà nastavenÃ" #: editor/editor_node.cpp #, fuzzy @@ -4497,7 +4496,7 @@ msgstr "Uzel TimeSeek" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Show Thumbnail On Hover" -msgstr "" +msgstr "Zobrazit náhled pÅ™i pÅ™ekrytÃ" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Inspector" @@ -5399,69 +5398,64 @@ msgid "Did you forget the '_run' method?" msgstr "NezapomÄ›l jste metodu '_run'?" #: editor/editor_settings.cpp -#, fuzzy msgid "Editor Language" -msgstr "Rozloženà editoru" +msgstr "Jazyk editoru" #: editor/editor_settings.cpp -#, fuzzy msgid "Display Scale" -msgstr "Zobrazit vÅ¡echny" +msgstr "Å kálovánà zobrazenÃ" #: editor/editor_settings.cpp msgid "Custom Display Scale" -msgstr "" +msgstr "Vlastnà škálovánà zobrazenÃ" #: editor/editor_settings.cpp msgid "Main Font Size" -msgstr "" +msgstr "Velikost pÃsma editoru" #: editor/editor_settings.cpp msgid "Code Font Size" -msgstr "" +msgstr "Velikost pÃsma kódu" #: editor/editor_settings.cpp msgid "Font Antialiased" -msgstr "" +msgstr "Vyhlazovánà pÃsma" #: editor/editor_settings.cpp msgid "Font Hinting" -msgstr "" +msgstr "Hinting pÃsma" #: editor/editor_settings.cpp -#, fuzzy msgid "Main Font" -msgstr "Hlavnà scéna" +msgstr "Font editoru" #: editor/editor_settings.cpp msgid "Main Font Bold" -msgstr "" +msgstr "TuÄný font editoru" #: editor/editor_settings.cpp -#, fuzzy msgid "Code Font" -msgstr "PÅ™idat bod uzlu" +msgstr "Font kódu" #: editor/editor_settings.cpp msgid "Dim Editor On Dialog Popup" -msgstr "" +msgstr "Ztmavit editor pÅ™i zobrazenà dialogového okna" #: editor/editor_settings.cpp main/main.cpp msgid "Low Processor Mode Sleep (µsec)" -msgstr "" +msgstr "Režim spánku s nÃzkým využitÃm procesoru (µs)" #: editor/editor_settings.cpp msgid "Unfocused Low Processor Mode Sleep (µsec)" -msgstr "" +msgstr "Nezaměřený režim spánku s nÃzkým využitÃm procesoru (µs)" #: editor/editor_settings.cpp -#, fuzzy msgid "Separate Distraction Mode" -msgstr "NerozptylujÃcà režitm" +msgstr "OddÄ›lit nerozptylujÃcà režim" #: editor/editor_settings.cpp msgid "Automatically Open Screenshots" -msgstr "" +msgstr "Automaticky otevÅ™Ãt snÃmky obrazovky" #: editor/editor_settings.cpp msgid "Max Array Dictionary Items Per Page" @@ -5475,58 +5469,54 @@ msgstr "Téma" #: editor/editor_settings.cpp editor/import_dock.cpp msgid "Preset" -msgstr "Profil" +msgstr "PÅ™edvolba" #: editor/editor_settings.cpp msgid "Icon And Font Color" -msgstr "" +msgstr "Barva ikon a pÃsma" #: editor/editor_settings.cpp -#, fuzzy msgid "Base Color" -msgstr "Barvy" +msgstr "Základnà barva" #: editor/editor_settings.cpp -#, fuzzy msgid "Accent Color" -msgstr "Vyberte barvu" +msgstr "Barva zvýraznÄ›nÃ" #: editor/editor_settings.cpp scene/resources/environment.cpp msgid "Contrast" -msgstr "" +msgstr "Kontrast" #: editor/editor_settings.cpp +#, fuzzy msgid "Relationship Line Opacity" -msgstr "" +msgstr "Průhlednost linky relace" #: editor/editor_settings.cpp -#, fuzzy msgid "Highlight Tabs" -msgstr "Ukládám svÄ›telné mapy" +msgstr "Zvýraznit karty" #: editor/editor_settings.cpp -#, fuzzy msgid "Border Size" -msgstr "HraniÄnà pixely" +msgstr "Velikost okrajů" #: editor/editor_settings.cpp +#, fuzzy msgid "Use Graph Node Headers" -msgstr "" +msgstr "PoužÃt uzly záhlavà grafů" #: editor/editor_settings.cpp #, fuzzy msgid "Additional Spacing" -msgstr "Opakovánà animace" +msgstr "PÅ™Ãdavné mezerovánÃ" #: editor/editor_settings.cpp -#, fuzzy msgid "Custom Theme" -msgstr "Motiv editoru" +msgstr "Vlastnà téma" #: editor/editor_settings.cpp -#, fuzzy msgid "Show Script Button" -msgstr "Pravé tlaÄÃtko koleÄka" +msgstr "Ukázat tlaÄÃtko skriptu" #: editor/editor_settings.cpp #, fuzzy @@ -5539,9 +5529,8 @@ msgid "Autoscan Project Path" msgstr "Cesta k projektu:" #: editor/editor_settings.cpp -#, fuzzy msgid "Default Project Path" -msgstr "Cesta k projektu:" +msgstr "Výchozà cesta k projektu" #: editor/editor_settings.cpp #, fuzzy @@ -5563,9 +5552,8 @@ msgid "File Dialog" msgstr "XForm dialog" #: editor/editor_settings.cpp -#, fuzzy msgid "Thumbnail Size" -msgstr "Náhled..." +msgstr "Velikost náhledu" #: editor/editor_settings.cpp msgid "Docks" @@ -5578,83 +5566,73 @@ msgstr "Úpravy stromu scény" #: editor/editor_settings.cpp msgid "Start Create Dialog Fully Expanded" -msgstr "" +msgstr "PlnÄ› rozbalit dialog vytvoÅ™enà pÅ™i spuÅ¡tÄ›nÃ" #: editor/editor_settings.cpp -#, fuzzy msgid "Always Show Folders" -msgstr "Vždy zobrazit mřÞku" +msgstr "Vždy zobrazit složky" #: editor/editor_settings.cpp -#, fuzzy msgid "Property Editor" -msgstr "Editor skupin" +msgstr "Editor oblasti" #: editor/editor_settings.cpp msgid "Auto Refresh Interval" -msgstr "" +msgstr "Automatický interval obnovenÃ" #: editor/editor_settings.cpp -#, fuzzy msgid "Subresource Hue Tint" -msgstr "DÃlÄà zdroje" +msgstr "Podzdroj odstÃnu" #: editor/editor_settings.cpp -#, fuzzy msgid "Color Theme" -msgstr "Motiv editoru" +msgstr "Barevné téma" #: editor/editor_settings.cpp scene/3d/label_3d.cpp #: scene/resources/default_theme/default_theme.cpp msgid "Line Spacing" -msgstr "" +msgstr "ŘádkovánÃ" #: editor/editor_settings.cpp editor/plugins/script_text_editor.cpp #: modules/gdscript/editor/gdscript_highlighter.cpp -#, fuzzy msgid "Highlighting" -msgstr "PÅ™Ãmé osvÄ›tlenÃ" +msgstr "ZvýrazňovánÃ" #: editor/editor_settings.cpp scene/gui/text_edit.cpp -#, fuzzy msgid "Syntax Highlighting" -msgstr "ZvýrazňovaÄ syntaxe" +msgstr "Zvýrazňovánà syntaxe" #: editor/editor_settings.cpp scene/gui/text_edit.cpp msgid "Highlight All Occurrences" -msgstr "" +msgstr "Zvýraznit vÅ¡echny výskyty" #: editor/editor_settings.cpp scene/gui/text_edit.cpp msgid "Highlight Current Line" -msgstr "" +msgstr "Zvýraznit aktuálnà řádek" #: editor/editor_settings.cpp editor/plugins/script_text_editor.cpp msgid "Highlight Type Safe Lines" msgstr "" #: editor/editor_settings.cpp -#, fuzzy msgid "Indent" -msgstr "Odsadit zleva" +msgstr "OdsazenÃ" #: editor/editor_settings.cpp editor/plugins/script_text_editor.cpp msgid "Auto Indent" msgstr "Automatické odsazenÃ" #: editor/editor_settings.cpp -#, fuzzy msgid "Convert Indent On Save" -msgstr "PÅ™evést odsazenà na mezery" +msgstr "Konvertovat odsazenà pÅ™i uloženÃ" #: editor/editor_settings.cpp scene/gui/text_edit.cpp -#, fuzzy msgid "Draw Tabs" -msgstr "Vykreslovacà volánÃ:" +msgstr "Vykreslit taby" #: editor/editor_settings.cpp scene/gui/text_edit.cpp -#, fuzzy msgid "Draw Spaces" -msgstr "Vykreslovacà volánÃ:" +msgstr "Vykreslit mezery" #: editor/editor_settings.cpp editor/plugins/spatial_editor_plugin.cpp #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/tile_map.cpp @@ -5665,47 +5643,43 @@ msgstr "Navigace" #: editor/editor_settings.cpp scene/gui/text_edit.cpp msgid "Smooth Scrolling" -msgstr "" +msgstr "Plynulé posouvánÃ" #: editor/editor_settings.cpp scene/gui/text_edit.cpp msgid "V Scroll Speed" -msgstr "" +msgstr "Vertikálnà rychlost posouvánÃ" #: editor/editor_settings.cpp -#, fuzzy msgid "Show Minimap" -msgstr "Zobrazit poÄátek" +msgstr "Zobrazit minimapu" #: editor/editor_settings.cpp msgid "Minimap Width" -msgstr "" +msgstr "Å ÃÅ™ka minimapy" #: editor/editor_settings.cpp msgid "Mouse Extra Buttons Navigate History" -msgstr "" +msgstr "NavigaÄnà historie extra tlaÄÃtek myÅ¡i" #: editor/editor_settings.cpp -#, fuzzy msgid "Drag And Drop Selection" -msgstr "GridMap Vyplnit výbÄ›r" +msgstr "VýbÄ›r pÅ™etaženÃm" #: editor/editor_settings.cpp msgid "Stay In Script Editor On Node Selected" -msgstr "" +msgstr "Zůstat v editoru skriptu pÅ™i výbÄ›ru uzlu" #: editor/editor_settings.cpp msgid "Appearance" -msgstr "" +msgstr "Vzhled" #: editor/editor_settings.cpp scene/gui/text_edit.cpp -#, fuzzy msgid "Show Line Numbers" -msgstr "ÄŒÃslo řádku:" +msgstr "Zobrazit ÄÃsla řádků" #: editor/editor_settings.cpp -#, fuzzy msgid "Line Numbers Zero Padded" -msgstr "ÄŒÃslo řádku:" +msgstr "Vyplnit ÄÃsla řádků nulami" #: editor/editor_settings.cpp msgid "Show Bookmark Gutter" @@ -5722,32 +5696,31 @@ msgstr "" #: editor/editor_settings.cpp msgid "Code Folding" -msgstr "" +msgstr "Složenà kódu" #: editor/editor_settings.cpp msgid "Word Wrap" -msgstr "" +msgstr "ZalamovánÃ" #: editor/editor_settings.cpp msgid "Show Line Length Guidelines" -msgstr "" +msgstr "Zobrazit vodÃcà Äáry délky řádků" #: editor/editor_settings.cpp msgid "Line Length Guideline Soft Column" -msgstr "" +msgstr "MÄ›kký sloupec Äáry délky řádku" #: editor/editor_settings.cpp msgid "Line Length Guideline Hard Column" -msgstr "" +msgstr "Tvrdý sloupec Äáry délky řádku" #: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Script List" -msgstr "Editor skriptů" +msgstr "Seznam skriptů" #: editor/editor_settings.cpp msgid "Show Members Overview" -msgstr "" +msgstr "Zobrazit pÅ™ehled Älenů" #: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp #, fuzzy @@ -5932,9 +5905,8 @@ msgid "Primary Grid Steps" msgstr "Krok mřÞky:" #: editor/editor_settings.cpp -#, fuzzy msgid "Grid Size" -msgstr "Krok mřÞky:" +msgstr "Velikost mřÞky" #: editor/editor_settings.cpp msgid "Grid Division Level Max" @@ -6192,9 +6164,8 @@ msgid "Onion Layers Future Color" msgstr "" #: editor/editor_settings.cpp -#, fuzzy msgid "Visual Editors" -msgstr "Editor skupin" +msgstr "Vizuálnà editory" #: editor/editor_settings.cpp msgid "Minimap Opacity" @@ -6279,76 +6250,70 @@ msgstr "PÅ™ejmenovánà složky:" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Symbol Color" -msgstr "" +msgstr "Barva znaků" #: editor/editor_settings.cpp msgid "Keyword Color" -msgstr "" +msgstr "Barva klÃÄových slov" #: editor/editor_settings.cpp msgid "Control Flow Keyword Color" msgstr "" #: editor/editor_settings.cpp -#, fuzzy msgid "Base Type Color" -msgstr "ZmÄ›nit základnà typ" +msgstr "Barva základnÃho typu" #: editor/editor_settings.cpp msgid "Engine Type Color" -msgstr "" +msgstr "Barva typu enginu" #: editor/editor_settings.cpp msgid "User Type Color" -msgstr "" +msgstr "Barva typu uživatele" #: editor/editor_settings.cpp msgid "Comment Color" -msgstr "" +msgstr "Barva komentářů" #: editor/editor_settings.cpp -#, fuzzy msgid "String Color" -msgstr "Ukládám soubor:" +msgstr "Barva Å™etÄ›zců" #: editor/editor_settings.cpp platform/javascript/export/export.cpp #: platform/uwp/export/export.cpp #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Background Color" -msgstr "Neplatná barva pozadÃ." +msgstr "Barva pozadÃ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Completion Background Color" -msgstr "Neplatná barva pozadÃ." +msgstr "Barva výplnÄ› pozadÃ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Completion Selected Color" -msgstr "Importovat vybrané" +msgstr "Barva výplnÄ› výbÄ›ru" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp +#, fuzzy msgid "Completion Existing Color" -msgstr "" +msgstr "Barva výbÄ›ru existence" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Completion Scroll Color" -msgstr "" +msgstr "Barva výplnÄ› scrollu" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Completion Font Color" -msgstr "" +msgstr "Barva výplnÄ› fontu" #: editor/editor_settings.cpp -#, fuzzy msgid "Text Color" -msgstr "Dalšàpatro" +msgstr "Barva textu" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Line Number Color" -msgstr "ÄŒÃslo řádku:" +msgstr "Barva ÄÃsla řádku" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -6357,82 +6322,73 @@ msgstr "ÄŒÃslo řádku:" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Caret Color" -msgstr "" +msgstr "Barva vynechávky" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Caret Background Color" -msgstr "Neplatná barva pozadÃ." +msgstr "Barva pozadà vynechávky" #: editor/editor_settings.cpp -#, fuzzy msgid "Text Selected Color" -msgstr "Smazat vybraný" +msgstr "Barva vybraného textu" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Selection Color" -msgstr "Pouze výbÄ›r" +msgstr "Barva výbÄ›ru" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Brace Mismatch Color" -msgstr "" +msgstr "Barva neshody závorek" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Current Line Color" -msgstr "Aktuálnà scéna" +msgstr "Barva aktuálnÃho řádku" #: editor/editor_settings.cpp msgid "Line Length Guideline Color" -msgstr "" +msgstr "Barva Äáry délky řádku" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Word Highlighted Color" -msgstr "ZvýrazňovaÄ syntaxe" +msgstr "Barva zvýraznÄ›ného slova" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Number Color" -msgstr "" +msgstr "Barva ÄÃsel" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Function Color" -msgstr "Funkce" +msgstr "Barva funkcÃ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp #, fuzzy msgid "Member Variable Color" -msgstr "PÅ™ejmenovat promÄ›nnou" +msgstr "Barva promÄ›nného Älena" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Mark Color" -msgstr "Vyberte barvu" +msgstr "Barva oznaÄenÃ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Bookmark Color" -msgstr "Záložky" +msgstr "Barva záložky" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Breakpoint Color" -msgstr "Breakpointy" +msgstr "Barva bodu pÅ™eruÅ¡enà (Breakpointu)" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp +#, fuzzy msgid "Executing Line Color" -msgstr "" +msgstr "Barva provádÄ›jÃcà se linky" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Code Folding Color" -msgstr "" +msgstr "Barva složenà kódu" #: editor/editor_settings.cpp -#, fuzzy msgid "Search Result Color" -msgstr "Výsledky hledánÃ" +msgstr "Barva výsledků hledánÃ" #: editor/editor_settings.cpp #, fuzzy @@ -6749,7 +6705,7 @@ msgstr "" #: editor/plugins/version_control_editor_plugin.cpp #: platform/uwp/export/export.cpp platform/windows/export/export.cpp msgid "Password" -msgstr "" +msgstr "Heslo" #: editor/filesystem_dock.cpp msgid "Favorites" @@ -7489,7 +7445,7 @@ msgstr "Pevné pixely" #: editor/import/resource_importer_texture.cpp scene/resources/texture.cpp msgid "Lossy Quality" -msgstr "" +msgstr "Ztrátová kvalita" #: editor/import/resource_importer_texture.cpp #, fuzzy @@ -7498,14 +7454,14 @@ msgstr "Režim výbÄ›ru" #: editor/import/resource_importer_texture.cpp msgid "BPTC LDR" -msgstr "" +msgstr "BPTC LDR" #: editor/import/resource_importer_texture.cpp #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/cpu_particles_2d.cpp #: scene/2d/mesh_instance_2d.cpp scene/2d/multimesh_instance_2d.cpp #: scene/2d/particles_2d.cpp scene/2d/sprite.cpp scene/resources/style_box.cpp msgid "Normal Map" -msgstr "" +msgstr "Normálová mapa" #: editor/import/resource_importer_texture.cpp #, fuzzy @@ -7542,7 +7498,7 @@ msgstr "Velikost: " #: editor/import/resource_importer_texture.cpp msgid "Detect 3D" -msgstr "" +msgstr "Detekovat 3D" #: editor/import/resource_importer_texture.cpp #, fuzzy @@ -7554,6 +7510,8 @@ msgid "" "Warning, no suitable PC VRAM compression enabled in Project Settings. This " "texture will not display correctly on PC." msgstr "" +"UpozornÄ›nÃ, žádná vhodná PC VRAM komprese nenà povolena v nastavenà " +"projektu. Tato textura se na PC nebude zobrazovat správnÄ›." #: editor/import/resource_importer_texture_atlas.cpp #, fuzzy @@ -7571,8 +7529,9 @@ msgid "Crop To Region" msgstr "Nastavit oblast textury" #: editor/import/resource_importer_texture_atlas.cpp +#, fuzzy msgid "Trim Alpha Border From Region" -msgstr "" +msgstr "OÅ™Ãznout ohraniÄenà alfa z oblasti" #: editor/import/resource_importer_wav.cpp scene/2d/physics_body_2d.cpp #, fuzzy @@ -7580,8 +7539,9 @@ msgid "Force" msgstr "Vnutit nahrátÃ" #: editor/import/resource_importer_wav.cpp +#, fuzzy msgid "8 Bit" -msgstr "" +msgstr "8 Bit" #: editor/import/resource_importer_wav.cpp main/main.cpp #: modules/mono/editor/csharp_project.cpp modules/mono/godotsharp_dirs.cpp @@ -7601,7 +7561,7 @@ msgstr "Uzel Mix" #: editor/import/resource_importer_wav.cpp msgid "Trim" -msgstr "" +msgstr "OÅ™Ãznout" #: editor/import/resource_importer_wav.cpp #, fuzzy @@ -7694,6 +7654,8 @@ msgid "" "Select a resource file in the filesystem or in the inspector to adjust " "import settings." msgstr "" +"Vyberte zdrojový soubor v prohlÞeÄi souboru nebo v inspektoru k úpravÄ› " +"nastavenà importu." #: editor/inspector_dock.cpp msgid "Failed to load resource." @@ -7720,7 +7682,7 @@ msgstr "Jazyky" #: editor/inspector_dock.cpp msgid "Localization not available for current language." -msgstr "" +msgstr "Lokalizace nenà dostupná pro aktuálnà jazyk." #: editor/inspector_dock.cpp msgid "Copy Properties" @@ -8592,7 +8554,7 @@ msgstr "Filtry..." #: editor/plugins/asset_library_editor_plugin.cpp scene/main/http_request.cpp msgid "Use Threads" -msgstr "" +msgstr "PoužÃt vlákna" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Contents:" @@ -8825,7 +8787,7 @@ msgstr "Testované" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Failed to get repository configuration." -msgstr "" +msgstr "NepodaÅ™ilo se zÃskat konfiguraci repozitáře." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Assets ZIP File" @@ -8883,7 +8845,7 @@ msgstr "Zapéct lightmapy" #: editor/plugins/baked_lightmap_editor_plugin.cpp msgid "LightMap Bake" -msgstr "" +msgstr "Zapéct lightmapu" #: editor/plugins/baked_lightmap_editor_plugin.cpp msgid "Select lightmap bake file:" @@ -9234,7 +9196,7 @@ msgstr "Režim Å¡kálovánÃ" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Shift: Scale proportionally." -msgstr "" +msgstr "Shift: ZvÄ›tÅ¡ovat proporÄnÄ›." #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -9400,11 +9362,11 @@ msgstr "Zobrazit mřÞku" #: editor/plugins/canvas_item_editor_plugin.cpp #, fuzzy msgid "Show When Snapping" -msgstr "Chytré pÅ™ichcovánÃ" +msgstr "Zobrazit pÅ™i skoku" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Hide" -msgstr "" +msgstr "Schovat" #: editor/plugins/canvas_item_editor_plugin.cpp #, fuzzy @@ -9789,7 +9751,7 @@ msgstr "Ikona" #: editor/plugins/item_list_editor_plugin.cpp msgid "ID" -msgstr "" +msgstr "ID" #: editor/plugins/item_list_editor_plugin.cpp #: scene/resources/default_theme/default_theme.cpp @@ -10916,11 +10878,11 @@ msgstr "Výsledky hledánÃ" #: editor/plugins/script_editor_plugin.cpp msgid "Open Dominant Script On Scene Change" -msgstr "" +msgstr "OtevÅ™Ãt dominantnà skript pÅ™i zmÄ›nÄ› scény" #: editor/plugins/script_editor_plugin.cpp msgid "External" -msgstr "" +msgstr "ExternÃ" #: editor/plugins/script_editor_plugin.cpp #, fuzzy @@ -10933,37 +10895,32 @@ msgid "Exec Path" msgstr "Exportovat cestu" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Script Temperature Enabled" -msgstr "Vybrat soubor Å¡ablony" +msgstr "Povolit teplotu skriptu" #: editor/plugins/script_editor_plugin.cpp msgid "Highlight Current Script" -msgstr "" +msgstr "Zvýraznit aktuálnà skript" #: editor/plugins/script_editor_plugin.cpp msgid "Script Temperature History Size" -msgstr "" +msgstr "Velikost historie teploty skriptu" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Current Script Background Color" -msgstr "Neplatná barva pozadÃ." +msgstr "Barva pozadà momentálnÃho skriptu" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Group Help Pages" -msgstr "Seskupit vybrané" +msgstr "Seskupit stránky s nápovÄ›dou" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Sort Scripts By" -msgstr "VytvoÅ™it skript" +msgstr "SeÅ™adit skripty podle" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "List Script Names As" -msgstr "Název skriptu:" +msgstr "Zobrazit názvy seznamu skriptů jako" #: editor/plugins/script_editor_plugin.cpp msgid "Exec Flags" @@ -11667,11 +11624,11 @@ msgstr "PÅ™epnout volný pohled" #: editor/plugins/spatial_editor_plugin.cpp msgid "Decrease Field of View" -msgstr "" +msgstr "ZmenÅ¡it zorné pole" #: editor/plugins/spatial_editor_plugin.cpp msgid "Increase Field of View" -msgstr "" +msgstr "ZvÄ›tÅ¡it zorné pole" #: editor/plugins/spatial_editor_plugin.cpp #, fuzzy @@ -12255,9 +12212,8 @@ msgid "Select all Theme items with item data." msgstr "" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Deselect All" -msgstr "Vybrat vÅ¡e" +msgstr "ZruÅ¡it vÅ¡echen výbÄ›r" #: editor/plugins/theme_editor_plugin.cpp msgid "Deselect all Theme items." @@ -13188,9 +13144,10 @@ msgstr "Možnosti pÅ™ichycenÃ" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Offset(Posun):" @@ -14639,16 +14596,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Neplatná cesta k projektu (nÄ›co se zmÄ›nilo?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Nelze naÄÃst project.godot v umÃstÄ›nà projektu (chyba %d). Může chybÄ›t nebo " "být poÅ¡kozený." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "Nelze upravit project.godot v umÃstÄ›nà projektu." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Nelze otevÅ™Ãt projekt v '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -15852,13 +15810,12 @@ msgid "Clear Inheritance? (No Undo!)" msgstr "Vymazat dÄ›diÄnost? (Nelze vrátit zpÄ›t!)" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Show Scene Tree Root Selection" -msgstr "Vycentrovat výbÄ›r" +msgstr "Zobrazit výbÄ›r Tree Root ze scény" #: editor/scene_tree_dock.cpp msgid "Derive Script Globals By Name" -msgstr "" +msgstr "NaÄÃtat globálnà promÄ›nné skritpu podle názvu" #: editor/scene_tree_dock.cpp #, fuzzy @@ -16767,7 +16724,7 @@ msgstr "" #: main/main.cpp msgid "Fullsize" -msgstr "" +msgstr "Plná velikost" #: main/main.cpp scene/resources/dynamic_font.cpp #, fuzzy @@ -16805,9 +16762,8 @@ msgid "Emulate Mouse From Touch" msgstr "" #: main/main.cpp -#, fuzzy msgid "Mouse Cursor" -msgstr "TlaÄÃtko myÅ¡i" +msgstr "Kurzor myÅ¡i" #: main/main.cpp #, fuzzy @@ -16881,7 +16837,7 @@ msgstr "PÅ™ichytit ke stranám uzlu" #: main/main.cpp msgid "Dynamic Fonts" -msgstr "" +msgstr "Dynamické fonty" #: main/main.cpp msgid "Use Oversampling" @@ -16921,21 +16877,18 @@ msgid "Calculate Tangents" msgstr "" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Use Collision" -msgstr "Kolize" +msgstr "PoužÃt kolize" #: modules/csg/csg_shape.cpp servers/physics_2d_server.cpp -#, fuzzy msgid "Collision Layer" -msgstr "Koliznà režim" +msgstr "Koliznà vrstva" #: modules/csg/csg_shape.cpp scene/2d/ray_cast_2d.cpp scene/3d/camera.cpp #: scene/3d/ray_cast.cpp scene/3d/spring_arm.cpp #: scene/resources/navigation_mesh.cpp servers/physics_server.cpp -#, fuzzy msgid "Collision Mask" -msgstr "Koliznà režim" +msgstr "Koliznà maska" #: modules/csg/csg_shape.cpp #, fuzzy @@ -16950,9 +16903,8 @@ msgstr "ZmÄ›nit velikost pÃsmen" #: scene/resources/cylinder_shape.cpp scene/resources/environment.cpp #: scene/resources/navigation_mesh.cpp scene/resources/primitive_meshes.cpp #: scene/resources/sphere_shape.cpp -#, fuzzy msgid "Radius" -msgstr "PolomÄ›r:" +msgstr "PolomÄ›r" #: modules/csg/csg_shape.cpp scene/resources/primitive_meshes.cpp #, fuzzy @@ -17278,7 +17230,7 @@ msgstr "" #: modules/gdscript/language_server/gdscript_language_server.cpp msgid "Use Thread" -msgstr "" +msgstr "PoužÃt vlákno" #: modules/gltf/editor_scene_exporter_gltf_plugin.cpp #, fuzzy @@ -17310,9 +17262,8 @@ msgid "Normalized" msgstr "Formát" #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Count" -msgstr "MnožstvÃ:" +msgstr "MnožstvÃ" #: modules/gltf/gltf_accessor.cpp scene/resources/visual_shader_nodes.cpp #, fuzzy @@ -17370,9 +17321,8 @@ msgid "Indices" msgstr "VÅ¡echna zaÅ™ÃzenÃ" #: modules/gltf/gltf_camera.cpp -#, fuzzy msgid "FOV Size" -msgstr "Velikost:" +msgstr "Velikost pohledu" #: modules/gltf/gltf_camera.cpp msgid "Zfar" @@ -19442,9 +19392,8 @@ msgid "Invalid filename! Android APK requires the *.apk extension." msgstr "Neplatné jméno souboru! Android APK vyžaduje pÅ™Ãponu *.apk." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Unsupported export format!" -msgstr "Nepodporovaný formát exportu!\n" +msgstr "Nepodporovaný formát exportu!" #: platform/android/export/export_plugin.cpp msgid "" @@ -19455,15 +19404,12 @@ msgstr "" "verzi. PÅ™einstalujte jej z nabÃdky \"Projekt\"." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Android build version mismatch: Template installed: %s, Godot version: %s. " "Please reinstall Android build template from 'Project' menu." msgstr "" -"Neshoda verzà Android buildu:\n" -" Å ablona nainstalována: %s\n" -" Verze Godot: %s\n" -"PÅ™einstalujte Å¡ablonu pro sestavenà systému Android z nabÃdky \"Projekt\"." +"Neshoda verzà Android buildu: Å ablona nainstalována: %s, Verze Godotu: %s. " +"ProsÃm, pÅ™einstalujte Android build Å¡ablonu z nabÃdky \"Projekt\"." #: platform/android/export/export_plugin.cpp msgid "" @@ -19471,9 +19417,8 @@ msgid "" msgstr "" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Could not export project files to gradle project." -msgstr "Nelze exportovat soubory projektu do projektu gradle\n" +msgstr "Nelze exportovat soubory projektu do projektu gradle." #: platform/android/export/export_plugin.cpp msgid "Could not write expansion package file!" @@ -19484,12 +19429,11 @@ msgid "Building Android Project (gradle)" msgstr "Buildovánà projektu pro Android (gradle)" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Building of Android project failed, check output for the error. " "Alternatively visit docs.godotengine.org for Android build documentation." msgstr "" -"Buildovánà projektu pro Android se nezdaÅ™ilo, zkontrolujte chybový výstup.\n" +"Buildovánà projektu pro Android se nezdaÅ™ilo, zkontrolujte chybový výstup. " "PÅ™ÃpadnÄ› navÅ¡tivte dokumentaci o build pro Android na docs.godotengine.org." #: platform/android/export/export_plugin.cpp @@ -19514,11 +19458,8 @@ msgid "Creating APK..." msgstr "VytvářÃm APK..." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Could not find template APK to export: \"%s\"." -msgstr "" -"NepodaÅ™ilo se najÃt Å¡ablonu APK pro export:\n" -"%s" +msgstr "NepodaÅ™ilo se najÃt Å¡ablonu APK pro export: \"%s\"" #: platform/android/export/export_plugin.cpp msgid "" @@ -19640,7 +19581,7 @@ msgstr "" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp msgid "Info" -msgstr "" +msgstr "Info" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp #, fuzzy @@ -21384,7 +21325,7 @@ msgstr "MÃstnà projekty" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp msgid "Draw Order" -msgstr "" +msgstr "PoÅ™adà vykreslovánÃ" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21424,7 +21365,7 @@ msgstr "SmÄ›ry" #: scene/resources/particles_material.cpp #: servers/audio/effects/audio_effect_reverb.cpp msgid "Spread" -msgstr "" +msgstr "RozÅ¡ÃÅ™it" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21442,7 +21383,7 @@ msgstr "Inicializovat" #: scene/resources/particles_material.cpp servers/physics_2d_server.cpp #: servers/physics_server.cpp msgid "Angular Velocity" -msgstr "" +msgstr "Úhlová rychlost" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21494,12 +21435,12 @@ msgstr "" #: scene/resources/particles_material.cpp #: servers/audio/effects/audio_effect_reverb.cpp msgid "Damping" -msgstr "" +msgstr "TlumenÃ" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Damping Random" -msgstr "" +msgstr "Náhodné tlumenÃ" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21510,12 +21451,12 @@ msgstr "RozdÄ›lit kÅ™ivku" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp scene/3d/light.cpp #: scene/resources/particles_material.cpp msgid "Angle" -msgstr "" +msgstr "Úhel" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Angle Random" -msgstr "" +msgstr "Náhodný úhel" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21529,8 +21470,9 @@ msgid "Scale Amount" msgstr "MnožstvÃ:" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp +#, fuzzy msgid "Scale Amount Random" -msgstr "" +msgstr "Å kálovat náhodnou hodnotu" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #, fuzzy @@ -21639,12 +21581,12 @@ msgstr "Deaktivované tlaÄÃtko" #: scene/2d/joints_2d.cpp scene/3d/physics_body.cpp scene/3d/physics_joint.cpp msgid "Softness" -msgstr "" +msgstr "MÄ›kkost" #: scene/2d/joints_2d.cpp scene/resources/animation.cpp #: scene/resources/ray_shape.cpp scene/resources/segment_shape_2d.cpp msgid "Length" -msgstr "" +msgstr "Délka" #: scene/2d/joints_2d.cpp #, fuzzy @@ -21657,7 +21599,7 @@ msgstr "" #: scene/2d/joints_2d.cpp scene/3d/physics_joint.cpp scene/3d/vehicle_body.cpp msgid "Stiffness" -msgstr "" +msgstr "Tuhost" #: scene/2d/light_2d.cpp msgid "" @@ -21679,15 +21621,15 @@ msgstr "Oblast textury" #: scene/3d/light.cpp scene/resources/environment.cpp #: scene/resources/material.cpp scene/resources/sky.cpp msgid "Energy" -msgstr "" +msgstr "Energie" #: scene/2d/light_2d.cpp msgid "Z Min" -msgstr "" +msgstr "Z Min" #: scene/2d/light_2d.cpp msgid "Z Max" -msgstr "" +msgstr "Z Max" #: scene/2d/light_2d.cpp #, fuzzy @@ -21754,8 +21696,9 @@ msgid "Default Color" msgstr "VýchozÃ" #: scene/2d/line_2d.cpp scene/resources/texture.cpp +#, fuzzy msgid "Fill" -msgstr "" +msgstr "Výplň" #: scene/2d/line_2d.cpp scene/resources/texture.cpp #, fuzzy @@ -23678,9 +23621,8 @@ msgid "A RoomGroup should not be a child or grandchild of a Portal." msgstr "" #: scene/3d/portal.cpp -#, fuzzy msgid "Portal Active" -msgstr " [aktivnà portály]" +msgstr "Aktivnà portál" #: scene/3d/portal.cpp scene/resources/occluder_shape_polygon.cpp msgid "Two Way" @@ -23820,8 +23762,9 @@ msgid "There should only be one RoomManager in the SceneTree." msgstr "" #: scene/3d/room_manager.cpp +#, fuzzy msgid "Main" -msgstr "" +msgstr "HlavnÃ" #: scene/3d/room_manager.cpp scene/animation/animation_blend_tree.cpp #: scene/animation/animation_player.cpp scene/animation/animation_tree.cpp @@ -23833,7 +23776,7 @@ msgstr "Akce" #: scene/3d/room_manager.cpp msgid "Roomlist" -msgstr "" +msgstr "Seznam mÃstnostÃ" #: scene/3d/room_manager.cpp servers/visual_server.cpp #, fuzzy @@ -23852,7 +23795,7 @@ msgstr "Soubor ZIP" #: scene/3d/room_manager.cpp servers/visual_server.cpp msgid "Gameplay" -msgstr "" +msgstr "Hratelnost" #: scene/3d/room_manager.cpp #, fuzzy @@ -23909,8 +23852,9 @@ msgid "" msgstr "" #: scene/3d/room_manager.cpp +#, fuzzy msgid "RoomList contains no Rooms, aborting." -msgstr "" +msgstr "Seznam mÃstnostà neobsahuje žádné mÃstnosti, pÅ™eruÅ¡ovánÃ." #: scene/3d/room_manager.cpp msgid "Misnamed nodes detected, check output log for details. Aborting." @@ -24135,6 +24079,15 @@ msgstr "Chyba" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "SeÅ™adit" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" @@ -24711,7 +24664,7 @@ msgstr "Vlastnosti motivu" #: scene/gui/dialogs.cpp msgid "Window Title" -msgstr "" +msgstr "Název okna" #: scene/gui/dialogs.cpp #, fuzzy @@ -24777,7 +24730,7 @@ msgstr "Zobrazit kosti" #: scene/gui/graph_edit.cpp scene/gui/text_edit.cpp #: scene/resources/default_theme/default_theme.cpp msgid "Minimap" -msgstr "" +msgstr "Minimapa" #: scene/gui/graph_edit.cpp msgid "Enable grid minimap." @@ -24830,7 +24783,7 @@ msgstr "Vyplnit výbÄ›r" #: scene/gui/item_list.cpp msgid "Max Text Lines" -msgstr "" +msgstr "Maximálnà poÄet řádků textu" #: scene/gui/item_list.cpp #, fuzzy @@ -24839,15 +24792,15 @@ msgstr "Testované" #: scene/gui/item_list.cpp msgid "Max Columns" -msgstr "" +msgstr "Maximálnà poÄet sloupců" #: scene/gui/item_list.cpp msgid "Same Column Width" -msgstr "" +msgstr "Stejná Å¡ÃÅ™ka sloupce" #: scene/gui/item_list.cpp msgid "Fixed Column Width" -msgstr "" +msgstr "Pevná Å¡ÃÅ™ka sloupce" #: scene/gui/item_list.cpp #, fuzzy @@ -24876,15 +24829,16 @@ msgstr "PÅ™epnout viditelnost" #: scene/gui/label.cpp msgid "Lines Skipped" -msgstr "" +msgstr "PÅ™eskoÄené řádky" #: scene/gui/label.cpp +#, fuzzy msgid "Max Lines Visible" -msgstr "" +msgstr "Maximálnà poÄet viditelných řádků" #: scene/gui/line_edit.cpp scene/resources/navigation_mesh.cpp msgid "Max Length" -msgstr "" +msgstr "Maximálnà délka" #: scene/gui/line_edit.cpp msgid "Secret" @@ -25290,7 +25244,7 @@ msgstr "Složka:" #: scene/gui/text_edit.cpp #, fuzzy msgid "Drag And Drop Selection Enabled" -msgstr "Pouze výbÄ›r" +msgstr "VýbÄ›r pÅ™etaženÃm povolen" #: scene/gui/text_edit.cpp #, fuzzy @@ -25956,9 +25910,8 @@ msgid "H Separation" msgstr "OddÄ›lenÃ:" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Underline Spacing" -msgstr "Opakovánà animace" +msgstr "Mezera podtrženÃ" #: scene/resources/default_theme/default_theme.cpp msgid "Arrow" diff --git a/editor/translations/da.po b/editor/translations/da.po index e83ef150e4..bb158fcada 100644 --- a/editor/translations/da.po +++ b/editor/translations/da.po @@ -18,13 +18,14 @@ # Autowinto <happymansi@hotmail.com>, 2020, 2021. # Mikkel Mouridsen <mikkelmouridsen@me.com>, 2020, 2021, 2022. # snakatk <snaqii@live.dk>, 2021. +# Mattis Møl Kristensen <mattismoel@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-04-08 07:29+0000\n" -"Last-Translator: Mikkel Mouridsen <mikkelmouridsen@me.com>\n" +"PO-Revision-Date: 2022-11-02 18:47+0000\n" +"Last-Translator: Mattis Møl Kristensen <mattismoel@gmail.com>\n" "Language-Team: Danish <https://hosted.weblate.org/projects/godot-engine/" "godot/da/>\n" "Language: da\n" @@ -32,7 +33,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.12-dev\n" +"X-Generator: Weblate 4.14.2-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -147,7 +148,7 @@ msgstr "Redaktør" #: core/bind/core_bind.cpp msgid "Print Error Messages" -msgstr "" +msgstr "Udskriv fejlmeddelelser" #: core/bind/core_bind.cpp #, fuzzy @@ -13427,9 +13428,10 @@ msgstr "Singleton" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14855,13 +14857,13 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "" +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Kan ikke Ã¥bne projekt" #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -24174,6 +24176,15 @@ msgstr "Fejl!" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Sorter" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/de.po b/editor/translations/de.po index 7244c02cc1..61a5a51b9c 100644 --- a/editor/translations/de.po +++ b/editor/translations/de.po @@ -86,13 +86,14 @@ # Tim <sakul8826@gmail.com>, 2022. # Anonynonymouse <tom.spaine60388@gmail.com>, 2022. # Felix Bitsch <felix.a.bitsch@gmail.com>, 2022. +# miguel <miguel-gonzalez@gmx.de>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-11 22:22+0000\n" -"Last-Translator: So Wieso <sowieso@dukun.de>\n" +"PO-Revision-Date: 2022-12-13 13:21+0000\n" +"Last-Translator: ‎ <artism90@googlemail.com>\n" "Language-Team: German <https://hosted.weblate.org/projects/godot-engine/" "godot/de/>\n" "Language: de\n" @@ -100,7 +101,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.14.1-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -12889,9 +12890,10 @@ msgstr "Einrasteinstellungen" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "Versatz" @@ -13069,7 +13071,7 @@ msgstr "Pfad des privaten SSH-Schlüssels auswählen" #: editor/plugins/version_control_editor_plugin.cpp msgid "SSH Passphrase" -msgstr "SSH-Passphrase" +msgstr "SSH Schlüsseltext" #: editor/plugins/version_control_editor_plugin.cpp msgid "Detect new changes" @@ -14306,16 +14308,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Ungültiger Projektpfad (etwas geändert?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Die Datei project.godot im Projektpfad konnte nicht geladen werden (Fehler " "%d). Sie könnte fehlen oder beschädigt sein." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "project.godot des Projektpfads konnte nicht bearbeitet werden." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Projekt in ‚%s‘ kann nicht geöffnet werden." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -16312,7 +16315,7 @@ msgstr "Ausrichtung" #: main/main.cpp scene/gui/scroll_container.cpp scene/gui/text_edit.cpp #: scene/main/scene_tree.cpp scene/register_scene_types.cpp msgid "Common" -msgstr "Gewöhnlich" +msgstr "Allgemein" #: main/main.cpp msgid "Physics FPS" @@ -23251,6 +23254,16 @@ msgstr "Max Kraft" msgid "AABB" msgstr "AABB" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Sortiere" + +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Use AABB Center" +msgstr "Ambient verwenden" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "Geometrie" diff --git a/editor/translations/editor.pot b/editor/translations/editor.pot index fb76a2c2c7..7b7bfd71cc 100644 --- a/editor/translations/editor.pot +++ b/editor/translations/editor.pot @@ -12352,9 +12352,10 @@ msgstr "" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13683,12 +13684,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22180,6 +22180,14 @@ msgstr "" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +msgid "Sorting" +msgstr "" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/el.po b/editor/translations/el.po index 3ab08f3dbd..98873c7d40 100644 --- a/editor/translations/el.po +++ b/editor/translations/el.po @@ -13281,9 +13281,10 @@ msgstr "ΕπιλογÎÏ‚ Î Ïοσκόλλησης" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Μετατόπιση:" @@ -14747,17 +14748,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Μη ÎγκυÏη διαδÏομή ÎÏγου (Αλλάξατε τίποτα;)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "ΑδÏνατη η φόÏτωση του project.godot (σφάλμα %d). ΜποÏεί να λείπει ή να είναι " "κατεστÏαμÎνο." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "" -"Δεν ήταν δυνατή η επεξεÏγασία του project.godot στη διαδÏομή του ÎÏγου." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Αδυνατό το άνοιγμα του ÎÏγου στο «%s»." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -24321,6 +24322,15 @@ msgstr "Σφάλμα" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Ταξινόμηση" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/en_Shaw.po b/editor/translations/en_Shaw.po index 63ce9ca3d5..60caed0d9d 100644 --- a/editor/translations/en_Shaw.po +++ b/editor/translations/en_Shaw.po @@ -12406,9 +12406,10 @@ msgstr "ð‘¨ð‘¯ð‘¦ð‘¥ð‘±ð‘–ð‘©ð‘¯ ð‘¤ð‘µð‘ð‘¦ð‘™" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13745,12 +13746,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22359,6 +22359,15 @@ msgstr "ð‘¥ð‘¦ð‘®ð‘¼" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "ð‘¦ð‘¯ð‘‘ð‘»ð‘ð‘©ð‘¤ð‘±ð‘–ð‘©ð‘¯ ð‘¥ð‘´ð‘›" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/eo.po b/editor/translations/eo.po index 2bcbc62274..04205e10d6 100644 --- a/editor/translations/eo.po +++ b/editor/translations/eo.po @@ -13088,9 +13088,10 @@ msgstr "Opcioj de kaptado" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Krada deÅovo:" @@ -14472,16 +14473,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Nevalida dosierindiko de projekto (ÅanÄis ion ajn?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Ne eblas Åargi project.godot en projekta dosierindiko (eraro %d). Äœi eble " "estas manka aÅ difektita." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "Ne eblas redakti project.godot en projekta dosierindiko." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Ne eblas malfermi projekton ĉe '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -23733,6 +23735,15 @@ msgstr "Eraro!" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Enportas:" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/es.po b/editor/translations/es.po index 629b36eea7..5d683058c3 100644 --- a/editor/translations/es.po +++ b/editor/translations/es.po @@ -43,7 +43,7 @@ # Dario <darlex259@gmail.com>, 2019. # Adolfo Jayme Barrientos <fitojb@ubuntu.com>, 2019. # Julián Luini <jluini@gmail.com>, 2020. -# Victor S. <victorstancioiu@gmail.com>, 2020, 2021. +# Victor S. <victorstancioiu@gmail.com>, 2020, 2021, 2022. # henry rujano herrera <rujhen@gmail.com>, 2020. # Megamega53 <Christopher.Morales21@myhunter.cuny.edu>, 2020. # Serk Lintur <serk.lintur@gmail.com>, 2020. @@ -60,7 +60,7 @@ # Lucasdelpiero <lucasdelpiero98@gmail.com>, 2021. # SteamGoblin <SteamGoblin860@gmail.com>, 2021. # Francisco C <pruebasfrancisco17@gmail.com>, 2021. -# Cam <cameron.toms@gmail.com>, 2021. +# Cam <cameron.toms@gmail.com>, 2021, 2022. # Juan camilo <jugarciago01@gmail.com>, 2021. # Manuel González <mgoopazo@gmail.com>, 2021. # softonicblip <blazeawardspace@gmail.com>, 2021. @@ -89,12 +89,14 @@ # Fernando Joaquin Manzano Lopez <ticantin12@gmail.com>, 2022. # M3CG <cgmario1999@gmail.com>, 2022. # Chalan <Valentin06ch@outlook.com>, 2022. +# Luis Miguel Soto Sánchez <luismiguelsoto@jerez.es>, 2022. +# Victor Stancioiu <victorstancioiu@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-27 21:37+0000\n" +"PO-Revision-Date: 2022-11-16 22:47+0000\n" "Last-Translator: Javier Ocampos <xavier.ocampos@gmail.com>\n" "Language-Team: Spanish <https://hosted.weblate.org/projects/godot-engine/" "godot/es/>\n" @@ -103,7 +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.14.1\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -9706,7 +9708,7 @@ msgstr "" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "Create Simplified Convex Collision Sibling" -msgstr "Crear Forma de Colisión Conexa Hermana" +msgstr "Crear Collider Conexo Hermano" #: editor/plugins/mesh_instance_editor_plugin.cpp msgid "" @@ -12886,9 +12888,10 @@ msgstr "Opciones de Ajuste" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "Offset" @@ -14305,16 +14308,17 @@ msgid "Invalid project path (changed anything?)." msgstr "La ruta del proyecto no es correcta (¿has cambiado algo?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "No se pudo cargar project.godot desde la ruta de proyecto (error %d). La " "ruta no existe o está corrupta." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "No se pudo editar project.godot en la ruta del proyecto." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "No se puede abrir el proyecto en '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -16336,7 +16340,7 @@ msgstr "Imprimir FPS" #: main/main.cpp msgid "Verbose stdout" -msgstr "" +msgstr "Stdout Extendido" #: main/main.cpp scene/main/scene_tree.cpp scene/resources/multimesh.cpp msgid "Physics Interpolation" @@ -16507,7 +16511,7 @@ msgstr "Aceptar Cierre Del Programa Automáticamente" #: main/main.cpp scene/main/scene_tree.cpp msgid "Quit On Go Back" -msgstr "Salir y Regresar" +msgstr "Salir al Ir Atrás" #: main/main.cpp scene/main/viewport.cpp msgid "Snap Controls To Pixels" @@ -19557,7 +19561,7 @@ msgstr "Depuración" #: platform/osx/export/export.cpp msgid "App Sandbox" -msgstr "App Sandbox" +msgstr "Sandbox de App" #: platform/osx/export/export.cpp msgid "Network Server" @@ -19675,6 +19679,8 @@ msgid "" "Could not start codesign executable, make sure Xcode command line tools are " "installed." msgstr "" +"No se ha podido iniciar el ejecutable de codificación, asegúrate de que las " +"herramientas de lÃnea de comandos de Xcode están instaladas." #: platform/osx/export/export.cpp platform/windows/export/export.cpp msgid "No identity found." @@ -19700,11 +19706,11 @@ msgstr "No se ha podido iniciar el ejecutable hdiutil." #: platform/osx/export/export.cpp msgid "`hdiutil create` failed - file exists." -msgstr "" +msgstr "`hdiutil create` falló - el archivo ya existe." #: platform/osx/export/export.cpp msgid "`hdiutil create` failed." -msgstr "" +msgstr "`hdiutil create` falló." #: platform/osx/export/export.cpp msgid "Creating app bundle" @@ -19918,11 +19924,11 @@ msgstr "" #: platform/osx/export/export.cpp msgid "macOS" -msgstr "" +msgstr "macOS" #: platform/osx/export/export.cpp msgid "Force Builtin Codesign" -msgstr "" +msgstr "Forzar Codificación Integrada" #: platform/uwp/export/export.cpp msgid "Architecture" @@ -19938,7 +19944,7 @@ msgstr "Nombre Corto" #: platform/uwp/export/export.cpp msgid "Publisher" -msgstr "" +msgstr "Editor" #: platform/uwp/export/export.cpp msgid "Publisher Display Name" @@ -19966,11 +19972,11 @@ msgstr "Algoritmo" #: platform/uwp/export/export.cpp msgid "Major" -msgstr "" +msgstr "Mayor" #: platform/uwp/export/export.cpp msgid "Minor" -msgstr "" +msgstr "Menor" #: platform/uwp/export/export.cpp msgid "Build" @@ -19982,7 +19988,7 @@ msgstr "Revisión" #: platform/uwp/export/export.cpp msgid "Landscape" -msgstr "" +msgstr "Landscape" #: platform/uwp/export/export.cpp msgid "Portrait" @@ -19990,11 +19996,11 @@ msgstr "Retrato" #: platform/uwp/export/export.cpp msgid "Landscape Flipped" -msgstr "" +msgstr "Landscape Volteado" #: platform/uwp/export/export.cpp msgid "Portrait Flipped" -msgstr "" +msgstr "Retrato Invertido" #: platform/uwp/export/export.cpp msgid "Store Logo" @@ -20002,23 +20008,23 @@ msgstr "Logo de Tienda" #: platform/uwp/export/export.cpp msgid "Square 44 X 44 Logo" -msgstr "" +msgstr "Logo Cuadrado 44 X 44" #: platform/uwp/export/export.cpp msgid "Square 71 X 71 Logo" -msgstr "" +msgstr "Logo Cuadrado 71 X 71" #: platform/uwp/export/export.cpp msgid "Square 150 X 150 Logo" -msgstr "" +msgstr "Logo Cuadrado 150 X 150" #: platform/uwp/export/export.cpp msgid "Square 310 X 310 Logo" -msgstr "" +msgstr "Logo Cuadrado 310x310" #: platform/uwp/export/export.cpp msgid "Wide 310 X 150 Logo" -msgstr "" +msgstr "Logotipo Panorámico 310 X 150" #: platform/uwp/export/export.cpp msgid "Splash Screen" @@ -20030,15 +20036,15 @@ msgstr "Tiles" #: platform/uwp/export/export.cpp msgid "Show Name On Square 150 X 150" -msgstr "" +msgstr "Mostrar Nombre en Cuadrado 150 X 150" #: platform/uwp/export/export.cpp msgid "Show Name On Wide 310 X 150" -msgstr "" +msgstr "Mostrar Nombre en Panorámico 310 X 150" #: platform/uwp/export/export.cpp msgid "Show Name On Square 310 X 310" -msgstr "" +msgstr "Mostrar Nombre en Cuadrado 310 X 310" #: platform/uwp/export/export.cpp msgid "" @@ -20113,7 +20119,7 @@ msgstr "" #: platform/uwp/export/export.cpp msgid "UWP" -msgstr "" +msgstr "UWP" #: platform/uwp/export/export.cpp platform/windows/export/export.cpp msgid "Signtool" @@ -20121,7 +20127,7 @@ msgstr "Signtool" #: platform/uwp/export/export.cpp msgid "Debug Certificate" -msgstr "" +msgstr "Certificado de Depuración" #: platform/uwp/export/export.cpp msgid "Debug Algorithm" @@ -20133,11 +20139,11 @@ msgstr "Fallo al renombrar el archivo temporal \"%s\"." #: platform/windows/export/export.cpp msgid "Identity Type" -msgstr "" +msgstr "Tipo de Identidad" #: platform/windows/export/export.cpp msgid "Timestamp Server URL" -msgstr "" +msgstr "URL del Servidor de Marcas de Tiempo" #: platform/windows/export/export.cpp msgid "Digest Algorithm" @@ -20169,7 +20175,7 @@ msgstr "Descripción del Archivo" #: platform/windows/export/export.cpp msgid "Trademarks" -msgstr "" +msgstr "Marcas comerciales" #: platform/windows/export/export.cpp msgid "Resources Modification" @@ -20254,7 +20260,7 @@ msgstr "Versión de producto no válida:" #: platform/windows/export/export.cpp msgid "Windows executables cannot be >= 4 GiB." -msgstr "" +msgstr "Los ejecutables de Windows no pueden ser >= 4 GiB." #: platform/windows/export/export.cpp platform/x11/export/export.cpp msgid "Failed to open executable file \"%s\"." @@ -20262,11 +20268,11 @@ msgstr "Fallo al abrir el archivo ejecutable \"%s\"." #: platform/windows/export/export.cpp platform/x11/export/export.cpp msgid "Executable file header corrupted." -msgstr "" +msgstr "La cabecera del archivo ejecutable está corrupta." #: platform/windows/export/export.cpp platform/x11/export/export.cpp msgid "Executable \"pck\" section not found." -msgstr "" +msgstr "No se encuentra la sección ejecutable \"pck\"." #: platform/windows/export/export.cpp msgid "Windows" @@ -20274,19 +20280,19 @@ msgstr "Windows" #: platform/windows/export/export.cpp msgid "Rcedit" -msgstr "" +msgstr "Rcedit" #: platform/windows/export/export.cpp msgid "Osslsigncode" -msgstr "" +msgstr "Osslsigncode" #: platform/windows/export/export.cpp msgid "Wine" -msgstr "" +msgstr "Wine" #: platform/x11/export/export.cpp msgid "32-bit executables cannot have embedded data >= 4 GiB." -msgstr "" +msgstr "Los ejecutables de 32 bits no pueden tener datos embebidos >= 4 GiB." #: scene/2d/animated_sprite.cpp scene/3d/sprite_3d.cpp #: scene/resources/texture.cpp @@ -20319,12 +20325,12 @@ msgstr "Centrado" #: scene/2d/animated_sprite.cpp scene/2d/sprite.cpp scene/3d/sprite_3d.cpp #: scene/gui/texture_button.cpp scene/gui/texture_rect.cpp msgid "Flip H" -msgstr "" +msgstr "Voltear H" #: scene/2d/animated_sprite.cpp scene/2d/sprite.cpp scene/3d/sprite_3d.cpp #: scene/gui/texture_button.cpp scene/gui/texture_rect.cpp msgid "Flip V" -msgstr "" +msgstr "Voltear V" #: scene/2d/area_2d.cpp scene/3d/area.cpp msgid "Monitoring" @@ -20357,7 +20363,7 @@ msgstr "Velocidad de la Gravedad" #: scene/2d/area_2d.cpp scene/2d/cpu_particles_2d.cpp scene/3d/area.cpp #: scene/3d/cpu_particles.cpp scene/resources/particles_material.cpp msgid "Gravity" -msgstr "" +msgstr "Gravedad" #: scene/2d/area_2d.cpp scene/3d/area.cpp msgid "Linear Damp" @@ -20365,7 +20371,7 @@ msgstr "Amortiguación Lineal" #: scene/2d/area_2d.cpp scene/3d/area.cpp msgid "Angular Damp" -msgstr "" +msgstr "Amortiguación Angular" #: scene/2d/area_2d.cpp scene/3d/area.cpp msgid "Audio Bus" @@ -20394,7 +20400,7 @@ msgstr "Reproducción Automática" #: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp #: scene/audio/audio_stream_player.cpp msgid "Stream Paused" -msgstr "" +msgstr "Stream Pausado" #: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp #: scene/3d/light.cpp scene/3d/reflection_probe.cpp @@ -20414,7 +20420,7 @@ msgstr "Bus" #: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp msgid "Area Mask" -msgstr "" +msgstr "Máscara de Ãrea" #: scene/2d/back_buffer_copy.cpp msgid "Copy Mode" @@ -20489,7 +20495,7 @@ msgstr "Suavizar" #: scene/2d/camera_2d.cpp msgid "H" -msgstr "" +msgstr "H" #: scene/2d/camera_2d.cpp msgid "V" @@ -20526,11 +20532,11 @@ msgstr "Animación de PartÃculas" #: scene/2d/canvas_item.cpp msgid "Particles Anim H Frames" -msgstr "" +msgstr "Animación de partÃculas Fotogramas H" #: scene/2d/canvas_item.cpp msgid "Particles Anim V Frames" -msgstr "" +msgstr "Animación de partÃculas Fotogramas V" #: scene/2d/canvas_item.cpp msgid "Particles Anim Loop" @@ -20551,7 +20557,7 @@ msgstr "Modulación Automática" #: scene/2d/canvas_item.cpp msgid "Show Behind Parent" -msgstr "" +msgstr "Mostrar detrás del padre" #: scene/2d/canvas_item.cpp msgid "Show On Top" @@ -20564,7 +20570,7 @@ msgstr "Máscara de Luz" #: scene/2d/canvas_item.cpp msgid "Use Parent Material" -msgstr "" +msgstr "Usar el material del padre" #: scene/2d/canvas_modulate.cpp msgid "" @@ -20686,7 +20692,7 @@ msgstr "Emitiendo" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp msgid "Lifetime" -msgstr "" +msgstr "Tiempo de vida" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp scene/main/timer.cpp @@ -20701,7 +20707,7 @@ msgstr "Preproceso" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp msgid "Explosiveness" -msgstr "" +msgstr "Explosividad" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp @@ -20711,7 +20717,7 @@ msgstr "Aleatoriedad" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Lifetime Randomness" -msgstr "" +msgstr "Aleatoriedad para siempre" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp @@ -20721,12 +20727,12 @@ msgstr "FPS Fijos" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp msgid "Fract Delta" -msgstr "" +msgstr "Fracción Delta" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp msgid "Drawing" -msgstr "" +msgstr "Dibujo" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp @@ -20736,7 +20742,7 @@ msgstr "Coordenadas Locales" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp msgid "Draw Order" -msgstr "" +msgstr "Orden de dibujo" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -20770,7 +20776,7 @@ msgstr "Dirección" #: scene/resources/particles_material.cpp #: servers/audio/effects/audio_effect_reverb.cpp msgid "Spread" -msgstr "" +msgstr "Propagación" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -20786,7 +20792,7 @@ msgstr "Velocidad Aleatoria" #: scene/resources/particles_material.cpp servers/physics_2d_server.cpp #: servers/physics_server.cpp msgid "Angular Velocity" -msgstr "" +msgstr "Velocidad angular" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -20811,7 +20817,7 @@ msgstr "Aceleración" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Accel Random" -msgstr "" +msgstr "Aceleración aleatoria" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -20821,12 +20827,12 @@ msgstr "Curva de Aceleración" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Radial Accel" -msgstr "" +msgstr "Aceleración radial" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Tangential Accel" -msgstr "" +msgstr "Aceleración tangencial" #: scene/2d/cpu_particles_2d.cpp scene/2d/joints_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/physics_body.cpp @@ -20834,12 +20840,12 @@ msgstr "" #: scene/resources/particles_material.cpp #: servers/audio/effects/audio_effect_reverb.cpp msgid "Damping" -msgstr "" +msgstr "Amortiguación" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Damping Random" -msgstr "" +msgstr "Amortiguación Aleatoria" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -20849,12 +20855,12 @@ msgstr "Curva de Amortiguación" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp scene/3d/light.cpp #: scene/resources/particles_material.cpp msgid "Angle" -msgstr "" +msgstr "Ãngulo" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Angle Random" -msgstr "" +msgstr "Ãngulo aleatorio" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -20867,7 +20873,7 @@ msgstr "Cantidad de Escala" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp msgid "Scale Amount Random" -msgstr "" +msgstr "Cantidad de escalado aleatoria" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp msgid "Scale Amount Curve" @@ -20881,7 +20887,7 @@ msgstr "Rampa de Color" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Color Initial Ramp" -msgstr "" +msgstr "Color Rampa Inicial" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -20955,7 +20961,7 @@ msgstr "Nodo B" #: scene/3d/light.cpp scene/3d/physics_body.cpp scene/3d/physics_joint.cpp #: scene/resources/environment.cpp msgid "Bias" -msgstr "" +msgstr "Tendencia" #: scene/2d/joints_2d.cpp msgid "Disable Collision" @@ -20963,12 +20969,12 @@ msgstr "Desactivar Colisión" #: scene/2d/joints_2d.cpp scene/3d/physics_body.cpp scene/3d/physics_joint.cpp msgid "Softness" -msgstr "" +msgstr "Suavidad" #: scene/2d/joints_2d.cpp scene/resources/animation.cpp #: scene/resources/ray_shape.cpp scene/resources/segment_shape_2d.cpp msgid "Length" -msgstr "" +msgstr "Longitud" #: scene/2d/joints_2d.cpp msgid "Initial Offset" @@ -20976,11 +20982,11 @@ msgstr "Offset Inicial" #: scene/2d/joints_2d.cpp scene/3d/vehicle_body.cpp msgid "Rest Length" -msgstr "" +msgstr "Duración de Reposo" #: scene/2d/joints_2d.cpp scene/3d/physics_joint.cpp scene/3d/vehicle_body.cpp msgid "Stiffness" -msgstr "" +msgstr "Rigidez" #: scene/2d/light_2d.cpp msgid "" @@ -21002,15 +21008,15 @@ msgstr "Escala de Textura" #: scene/3d/light.cpp scene/resources/environment.cpp #: scene/resources/material.cpp scene/resources/sky.cpp msgid "Energy" -msgstr "" +msgstr "EnergÃa" #: scene/2d/light_2d.cpp msgid "Z Min" -msgstr "" +msgstr "Z MÃn" #: scene/2d/light_2d.cpp msgid "Z Max" -msgstr "" +msgstr "Z Máx" #: scene/2d/light_2d.cpp msgid "Layer Min" @@ -21022,7 +21028,7 @@ msgstr "Capa Máxima" #: scene/2d/light_2d.cpp msgid "Item Cull Mask" -msgstr "" +msgstr "Ãtem Cull Mask" #: scene/2d/light_2d.cpp scene/3d/light.cpp scene/resources/style_box.cpp msgid "Shadow" @@ -21103,11 +21109,11 @@ msgstr "Borde" #: scene/2d/line_2d.cpp msgid "Sharp Limit" -msgstr "" +msgstr "LÃmite de nitidez" #: scene/2d/line_2d.cpp msgid "Round Precision" -msgstr "" +msgstr "Precisión redondeada" #: scene/2d/line_2d.cpp scene/2d/polygon_2d.cpp #: scene/resources/dynamic_font.cpp @@ -21122,7 +21128,7 @@ msgstr "Multimesh" #: scene/3d/navigation.cpp scene/animation/root_motion_view.cpp #: scene/resources/world_2d.cpp servers/physics_2d/physics_2d_server_sw.cpp msgid "Cell Size" -msgstr "" +msgstr "Tamaño de la casilla" #: scene/2d/navigation_2d.cpp scene/3d/navigation.cpp msgid "Edge Connection Margin" @@ -21134,6 +21140,9 @@ msgid "" "will be removed in a future version. Use 'Navigation2DServer.map_get_path()' " "instead." msgstr "" +"El nodo 'Navigation2D' y 'Navigation2D.get_simple_path()' están deprecados y " +"serán eliminados en una versión future. En su lugar, usa 'Navigation2DServer." +"map_get_path()'." #: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp msgid "Pathfinding" @@ -21328,7 +21337,7 @@ msgstr "Visibilidad Rect" #: scene/2d/particles_2d.cpp scene/3d/particles.cpp msgid "Process Material" -msgstr "" +msgstr "Material de Proceso" #: scene/2d/path_2d.cpp scene/3d/path.cpp scene/resources/sky.cpp #: scene/resources/texture.cpp @@ -21354,11 +21363,11 @@ msgstr "Offset V" #: scene/2d/path_2d.cpp scene/3d/path.cpp msgid "Cubic Interp" -msgstr "" +msgstr "Interp. Cúbica" #: scene/2d/path_2d.cpp msgid "Lookahead" -msgstr "" +msgstr "Preveer" #: scene/2d/physics_body_2d.cpp scene/3d/visual_instance.cpp msgid "Layers" @@ -21380,11 +21389,11 @@ msgstr "Fricción" #: scene/2d/physics_body_2d.cpp scene/2d/tile_map.cpp scene/3d/physics_body.cpp #: scene/resources/physics_material.cpp msgid "Bounce" -msgstr "" +msgstr "Rebotar" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Physics Material Override" -msgstr "" +msgstr "Reemplazar el material de fÃsicas" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #: scene/resources/world.cpp scene/resources/world_2d.cpp @@ -21403,7 +21412,7 @@ msgstr "" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Mass" -msgstr "" +msgstr "Masa" #: scene/2d/physics_body_2d.cpp msgid "Inertia" @@ -21415,7 +21424,7 @@ msgstr "Peso" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Gravity Scale" -msgstr "" +msgstr "Escala de gravedad" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Custom Integrator" @@ -21427,7 +21436,7 @@ msgstr "CD Continuo" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Contacts Reported" -msgstr "" +msgstr "Contactos reportados" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Contact Monitor" @@ -21444,19 +21453,19 @@ msgstr "Puede Dormir" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Damp" -msgstr "" +msgstr "Humedad" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Angular" -msgstr "" +msgstr "Angular" #: scene/2d/physics_body_2d.cpp msgid "Applied Forces" -msgstr "" +msgstr "Fuerzas aplicadas" #: scene/2d/physics_body_2d.cpp msgid "Torque" -msgstr "" +msgstr "Torsión" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Safe Margin" @@ -21472,7 +21481,7 @@ msgstr "Plataforma Móvil" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Apply Velocity On Leave" -msgstr "" +msgstr "Aplicar velocidad al salir" #: scene/2d/physics_body_2d.cpp scene/2d/touch_screen_button.cpp #: scene/3d/physics_body.cpp scene/gui/texture_button.cpp @@ -21497,7 +21506,7 @@ msgstr "Colisionador" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Collider ID" -msgstr "" +msgstr "ID de colisionador" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #: servers/physics_2d_server.cpp servers/physics_server.cpp @@ -21520,11 +21529,11 @@ msgstr "Velocidad del Colisionador" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Collider Metadata" -msgstr "" +msgstr "Metadatos del colisionador" #: scene/2d/polygon_2d.cpp msgid "Invert" -msgstr "" +msgstr "Invertir" #: scene/2d/polygon_2d.cpp msgid "Vertex Colors" @@ -21540,7 +21549,7 @@ msgstr "Extensión de Gizmos" #: scene/2d/ray_cast_2d.cpp scene/3d/ray_cast.cpp msgid "Exclude Parent" -msgstr "" +msgstr "Excluir Padre" #: scene/2d/ray_cast_2d.cpp scene/3d/ray_cast.cpp msgid "Cast To" @@ -21548,15 +21557,15 @@ msgstr "Lanzar A" #: scene/2d/ray_cast_2d.cpp scene/3d/ray_cast.cpp msgid "Collide With" -msgstr "" +msgstr "Colisionar con" #: scene/2d/ray_cast_2d.cpp scene/3d/camera.cpp scene/3d/ray_cast.cpp msgid "Areas" -msgstr "" +msgstr "Ãreas" #: scene/2d/ray_cast_2d.cpp scene/3d/camera.cpp scene/3d/ray_cast.cpp msgid "Bodies" -msgstr "" +msgstr "Cuerpos" #: scene/2d/remote_transform_2d.cpp msgid "Path property must point to a valid Node2D node to work." @@ -21596,11 +21605,11 @@ msgstr "" #: scene/2d/sprite.cpp scene/3d/sprite_3d.cpp msgid "Hframes" -msgstr "" +msgstr "Fotogramas H" #: scene/2d/sprite.cpp scene/3d/sprite_3d.cpp msgid "Vframes" -msgstr "" +msgstr "Fotogramas V" #: scene/2d/sprite.cpp scene/3d/sprite_3d.cpp msgid "Frame Coords" @@ -21658,7 +21667,7 @@ msgstr "Texturas Centradas" #: scene/2d/tile_map.cpp msgid "Cell Clip UV" -msgstr "" +msgstr "Clip de Celda UV" #: scene/2d/tile_map.cpp msgid "Use Parent" @@ -21666,7 +21675,7 @@ msgstr "Usar Padres" #: scene/2d/tile_map.cpp msgid "Use Kinematic" -msgstr "" +msgstr "Usar cinemática" #: scene/2d/touch_screen_button.cpp msgid "Shape Centered" @@ -21678,7 +21687,7 @@ msgstr "Forma Visible" #: scene/2d/touch_screen_button.cpp msgid "Passby Press" -msgstr "" +msgstr "Prensa de paso" #: scene/2d/touch_screen_button.cpp msgid "Visibility Mode" @@ -21698,7 +21707,7 @@ msgstr "Pausar Animaciones" #: scene/2d/visibility_notifier_2d.cpp scene/3d/visibility_notifier.cpp msgid "Freeze Bodies" -msgstr "" +msgstr "Congelar cuerpos" #: scene/2d/visibility_notifier_2d.cpp msgid "Pause Particles" @@ -21714,11 +21723,11 @@ msgstr "Procesamiento de los Padres" #: scene/2d/visibility_notifier_2d.cpp msgid "Physics Process Parent" -msgstr "" +msgstr "Procesado de FÃsicas Padre" #: scene/3d/area.cpp msgid "Reverb Bus" -msgstr "" +msgstr "Bus de reverberación" #: scene/3d/area.cpp msgid "Uniformity" @@ -21730,11 +21739,11 @@ msgstr "ARVRCamera tiene que tener un nodo ARVROrigin como padre." #: scene/3d/arvr_nodes.cpp msgid "Controller ID" -msgstr "" +msgstr "ID del controlador" #: scene/3d/arvr_nodes.cpp servers/arvr/arvr_positional_tracker.cpp msgid "Rumble" -msgstr "" +msgstr "Retumbar" #: scene/3d/arvr_nodes.cpp msgid "ARVRController must have an ARVROrigin node as its parent." @@ -21778,19 +21787,19 @@ msgstr "Modelo de Atenuación" #: scene/3d/audio_stream_player_3d.cpp msgid "Unit dB" -msgstr "" +msgstr "dB de la unidad" #: scene/3d/audio_stream_player_3d.cpp msgid "Unit Size" -msgstr "" +msgstr "Tamaño de la unidad" #: scene/3d/audio_stream_player_3d.cpp msgid "Max dB" -msgstr "" +msgstr "dB Máx" #: scene/3d/audio_stream_player_3d.cpp msgid "Out Of Range Mode" -msgstr "" +msgstr "Modo fuera de rango" #: scene/3d/audio_stream_player_3d.cpp msgid "Emission Angle" @@ -21806,13 +21815,13 @@ msgstr "Filtro de Atenuación dB" #: scene/3d/audio_stream_player_3d.cpp msgid "Attenuation Filter" -msgstr "" +msgstr "Filtro de atenuación" #: scene/3d/audio_stream_player_3d.cpp #: servers/audio/effects/audio_effect_chorus.cpp #: servers/audio/effects/audio_effect_filter.cpp msgid "Cutoff Hz" -msgstr "" +msgstr "Hz de cierre" #: scene/3d/audio_stream_player_3d.cpp #: servers/audio/effects/audio_effect_filter.cpp @@ -21830,7 +21839,7 @@ msgstr "Seguimiento" #: scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp #: scene/3d/reflection_probe.cpp msgid "Interior" -msgstr "" +msgstr "Interior" #: scene/3d/baked_lightmap.cpp msgid "Finding meshes and lights" @@ -21864,15 +21873,15 @@ msgstr "Extensiones" #: scene/3d/baked_lightmap.cpp msgid "Tweaks" -msgstr "" +msgstr "Retoques" #: scene/3d/baked_lightmap.cpp msgid "Bounces" -msgstr "" +msgstr "Rebotes" #: scene/3d/baked_lightmap.cpp msgid "Bounce Indirect Energy" -msgstr "" +msgstr "EnergÃa indirecta del rebote" #: scene/3d/baked_lightmap.cpp msgid "Use Denoiser" @@ -21880,7 +21889,7 @@ msgstr "Usar Eliminador de Ruido" #: scene/3d/baked_lightmap.cpp scene/resources/texture.cpp msgid "Use HDR" -msgstr "" +msgstr "Usar HDR" #: scene/3d/baked_lightmap.cpp msgid "Use Color" @@ -21940,11 +21949,11 @@ msgstr "Nombre del Hueso" #: scene/3d/camera.cpp msgid "Keep Aspect" -msgstr "" +msgstr "Mantener aspecto" #: scene/3d/camera.cpp scene/3d/light.cpp scene/3d/reflection_probe.cpp msgid "Cull Mask" -msgstr "" +msgstr "Cull Mask" #: scene/3d/camera.cpp msgid "Doppler Tracking" @@ -21956,7 +21965,7 @@ msgstr "Proyección" #: scene/3d/camera.cpp msgid "FOV" -msgstr "" +msgstr "FOV" #: scene/3d/camera.cpp msgid "Frustum Offset" @@ -21968,7 +21977,7 @@ msgstr "Cercano" #: scene/3d/camera.cpp msgid "Far" -msgstr "" +msgstr "Lejos" #: scene/3d/camera.cpp scene/3d/collision_polygon.cpp scene/3d/spring_arm.cpp #: scene/gui/control.cpp scene/resources/default_theme/default_theme.cpp @@ -21984,7 +21993,7 @@ msgstr "Recortar A" #: scene/3d/collision_object.cpp scene/3d/soft_body.cpp msgid "Ray Pickable" -msgstr "" +msgstr "Seleccionable por Rayo" #: scene/3d/collision_object.cpp msgid "Capture On Drag" @@ -22089,7 +22098,7 @@ msgstr "Desactivar Z" #: scene/3d/cpu_particles.cpp scene/resources/particles_material.cpp msgid "Flatness" -msgstr "" +msgstr "Llanura" #: scene/3d/cull_instance.cpp servers/visual_server.cpp msgid "Portals" @@ -22101,11 +22110,11 @@ msgstr "Modo Portal" #: scene/3d/cull_instance.cpp msgid "Include In Bound" -msgstr "" +msgstr "Incluir en lÃmite" #: scene/3d/cull_instance.cpp msgid "Allow Merging" -msgstr "" +msgstr "Permitir fusión" #: scene/3d/cull_instance.cpp msgid "Autoplace Priority" @@ -22139,7 +22148,7 @@ msgstr "" #: scene/3d/gi_probe.cpp msgid "Subdiv" -msgstr "" +msgstr "Subdividir" #: scene/3d/gi_probe.cpp msgid "Dynamic Range" @@ -22147,7 +22156,7 @@ msgstr "Rango Dinámico" #: scene/3d/gi_probe.cpp scene/3d/light.cpp msgid "Normal Bias" -msgstr "" +msgstr "Tendencia normal" #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp #: scene/resources/primitive_meshes.cpp @@ -22156,7 +22165,7 @@ msgstr "Tamaño de PÃxeles" #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp msgid "Billboard" -msgstr "" +msgstr "Billboard" #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp msgid "Shaded" @@ -22164,11 +22173,11 @@ msgstr "Sombreado" #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp msgid "Double Sided" -msgstr "" +msgstr "Doble cara" #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp scene/resources/material.cpp msgid "No Depth Test" -msgstr "" +msgstr "Sin test de profundidad" #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp scene/resources/material.cpp msgid "Fixed Size" @@ -22176,11 +22185,11 @@ msgstr "Tamaño Fijo" #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp msgid "Alpha Cut" -msgstr "" +msgstr "Corte alfa" #: scene/3d/label_3d.cpp scene/resources/material.cpp msgid "Alpha Scissor Threshold" -msgstr "" +msgstr "Umbral de recorte alfa" #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp scene/resources/material.cpp msgid "Render Priority" @@ -22266,7 +22275,7 @@ msgstr "Rango de Profundidad" #: scene/3d/light.cpp msgid "Omni" -msgstr "" +msgstr "Omni" #: scene/3d/light.cpp msgid "Shadow Mode" @@ -22283,7 +22292,7 @@ msgstr "" #: scene/3d/light.cpp msgid "Spot" -msgstr "" +msgstr "Ubicar" #: scene/3d/light.cpp msgid "Angle Attenuation" @@ -22303,6 +22312,9 @@ msgid "" "be removed in a future version. Use 'NavigationServer.map_get_path()' " "instead." msgstr "" +"El nodo 'Navigation' y 'Navigation.get_simple_path()' están obsoletos y " +"serán eliminados en una futura versión. Utiliza en su lugar " +"'NavigationServer.map_get_path()'." #: scene/3d/navigation.cpp scene/resources/curve.cpp msgid "Up Vector" @@ -22471,7 +22483,7 @@ msgstr "Restringir Articulaciones" #: scene/3d/physics_body.cpp scene/3d/physics_joint.cpp msgid "Impulse Clamp" -msgstr "" +msgstr "Restricción de Impulso" #: scene/3d/physics_body.cpp scene/3d/physics_joint.cpp msgid "Swing Span" @@ -22479,7 +22491,7 @@ msgstr "Expansión de Swing" #: scene/3d/physics_body.cpp scene/3d/physics_joint.cpp msgid "Twist Span" -msgstr "" +msgstr "Extensión de Torsión" #: scene/3d/physics_body.cpp scene/3d/physics_joint.cpp #: scene/3d/vehicle_body.cpp @@ -22632,7 +22644,7 @@ msgstr "El nodo A y el nodo B deben ser diferentes PhysicsBody" #: scene/3d/physics_joint.cpp msgid "Solver" -msgstr "" +msgstr "Resolver" #: scene/3d/physics_joint.cpp msgid "Exclude Nodes" @@ -22644,7 +22656,7 @@ msgstr "Parámetros" #: scene/3d/physics_joint.cpp msgid "Angular Limit" -msgstr "" +msgstr "LÃmite Angular" #: scene/3d/physics_joint.cpp msgid "Upper" @@ -22724,15 +22736,15 @@ msgstr "Amortiguación Lineal X" #: scene/3d/physics_joint.cpp msgid "Equilibrium Point" -msgstr "" +msgstr "Punto de Equilibrio" #: scene/3d/physics_joint.cpp msgid "Angular Limit X" -msgstr "" +msgstr "LÃmite Angular X" #: scene/3d/physics_joint.cpp msgid "Angular Motor X" -msgstr "" +msgstr "Motor Angular X" #: scene/3d/physics_joint.cpp msgid "Angular Spring X" @@ -22752,11 +22764,11 @@ msgstr "Amortiguación Lineal Y" #: scene/3d/physics_joint.cpp msgid "Angular Limit Y" -msgstr "" +msgstr "LÃmite Angular Y" #: scene/3d/physics_joint.cpp msgid "Angular Motor Y" -msgstr "" +msgstr "Motor Angular Y" #: scene/3d/physics_joint.cpp msgid "Angular Spring Y" @@ -22776,11 +22788,11 @@ msgstr "Amortiguación Lineal Z" #: scene/3d/physics_joint.cpp msgid "Angular Limit Z" -msgstr "" +msgstr "LÃmite Angular Z" #: scene/3d/physics_joint.cpp msgid "Angular Motor Z" -msgstr "" +msgstr "Motor Angular Z" #: scene/3d/physics_joint.cpp msgid "Angular Spring Z" @@ -22804,7 +22816,7 @@ msgstr "Portal Activo" #: scene/3d/portal.cpp scene/resources/occluder_shape_polygon.cpp msgid "Two Way" -msgstr "" +msgstr "Doble VÃa" #: scene/3d/portal.cpp msgid "Linked Room" @@ -22820,7 +22832,7 @@ msgstr "Nombre del Grupo" #: scene/3d/proximity_group.cpp msgid "Dispatch Mode" -msgstr "" +msgstr "Modo de Entrega" #: scene/3d/proximity_group.cpp msgid "Grid Radius" @@ -22832,7 +22844,7 @@ msgstr "Depurar Shape" #: scene/3d/ray_cast.cpp scene/resources/style_box.cpp msgid "Thickness" -msgstr "" +msgstr "Espesor" #: scene/3d/reflection_probe.cpp scene/main/viewport.cpp msgid "Update Mode" @@ -22897,11 +22909,11 @@ msgstr "Usar Simplificación Predeterminada" #: scene/3d/room.cpp scene/3d/room_manager.cpp msgid "Room Simplify" -msgstr "" +msgstr "Simplificar Room" #: scene/3d/room.cpp msgid "Bound" -msgstr "" +msgstr "Conectado" #: scene/3d/room_group.cpp msgid "Roomgroup Priority" @@ -22933,7 +22945,7 @@ msgstr "Sólo debe haber un RoomManager en el SceneTree." #: scene/3d/room_manager.cpp msgid "Main" -msgstr "" +msgstr "Principal" #: scene/3d/room_manager.cpp scene/animation/animation_blend_tree.cpp #: scene/animation/animation_player.cpp scene/animation/animation_tree.cpp @@ -22960,7 +22972,7 @@ msgstr "Nombre del Archivo PVS" #: scene/3d/room_manager.cpp servers/visual_server.cpp msgid "Gameplay" -msgstr "" +msgstr "Gameplay" #: scene/3d/room_manager.cpp msgid "Gameplay Monitor" @@ -22984,7 +22996,7 @@ msgstr "Depurar Extensión" #: scene/3d/room_manager.cpp msgid "Overlap Warning Threshold" -msgstr "" +msgstr "Umbral de Advertencia de Solapamiento" #: scene/3d/room_manager.cpp msgid "Preview Camera" @@ -22992,7 +23004,7 @@ msgstr "Vista previa de la Cámara" #: scene/3d/room_manager.cpp msgid "Portal Depth Limit" -msgstr "" +msgstr "LÃmite de Profundidad del Portal" #: scene/3d/room_manager.cpp msgid "Default Portal Margin" @@ -23074,7 +23086,7 @@ msgstr "Ãndice de Puntos" #: scene/3d/soft_body.cpp msgid "Spatial Attachment Path" -msgstr "" +msgstr "Ruta del Adjunto Espacial" #: scene/3d/soft_body.cpp msgid "Physics Enabled" @@ -23094,31 +23106,31 @@ msgstr "Masa Total" #: scene/3d/soft_body.cpp msgid "Linear Stiffness" -msgstr "" +msgstr "Rigidez Lineal" #: scene/3d/soft_body.cpp msgid "Areaangular Stiffness" -msgstr "" +msgstr "Rigidez Ãrea-angular" #: scene/3d/soft_body.cpp msgid "Volume Stiffness" -msgstr "" +msgstr "Rigidez de volumen" #: scene/3d/soft_body.cpp msgid "Pressure Coefficient" -msgstr "" +msgstr "Coeficiente de presión" #: scene/3d/soft_body.cpp msgid "Damping Coefficient" -msgstr "" +msgstr "Coeficiente de amortización" #: scene/3d/soft_body.cpp msgid "Drag Coefficient" -msgstr "" +msgstr "Coeficiente de resistencia" #: scene/3d/soft_body.cpp msgid "Pose Matching Coefficient" -msgstr "" +msgstr "Coeficiente de Adaptación de la Pose" #: scene/3d/soft_body.cpp msgid "This body will be ignored until you set a mesh." @@ -23156,7 +23168,7 @@ msgstr "Cantidad de Amortiguación" #: scene/3d/sprite_3d.cpp scene/gui/graph_edit.cpp msgid "Opacity" -msgstr "" +msgstr "Opacidad" #: scene/3d/sprite_3d.cpp scene/resources/material.cpp msgid "Transparent" @@ -23188,15 +23200,15 @@ msgstr "Fuerza del Motor" #: scene/3d/vehicle_body.cpp msgid "Brake" -msgstr "" +msgstr "Freno" #: scene/3d/vehicle_body.cpp msgid "Steering" -msgstr "" +msgstr "Dirección" #: scene/3d/vehicle_body.cpp msgid "VehicleBody Motion" -msgstr "" +msgstr "Movimiento del VehicleBody" #: scene/3d/vehicle_body.cpp msgid "Use As Traction" @@ -23204,7 +23216,7 @@ msgstr "Usar Como Tracción" #: scene/3d/vehicle_body.cpp msgid "Use As Steering" -msgstr "" +msgstr "Usar Como Dirección" #: scene/3d/vehicle_body.cpp msgid "Wheel" @@ -23212,7 +23224,7 @@ msgstr "Rueda" #: scene/3d/vehicle_body.cpp msgid "Roll Influence" -msgstr "" +msgstr "Influencia del Rodaje" #: scene/3d/vehicle_body.cpp msgid "Friction Slip" @@ -23230,6 +23242,16 @@ msgstr "Fuerza Máxima" msgid "AABB" msgstr "AABB" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Ordenar" + +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Use AABB Center" +msgstr "Usar Ambiente" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "GeometrÃa" @@ -23260,7 +23282,7 @@ msgstr "Generar Lightmap" #: scene/3d/visual_instance.cpp msgid "Lightmap Scale" -msgstr "" +msgstr "Escala de Lightmap" #: scene/3d/visual_instance.cpp msgid "LOD" @@ -23273,11 +23295,11 @@ msgstr "Distancia MÃnima" #: scene/3d/visual_instance.cpp msgid "Min Hysteresis" -msgstr "" +msgstr "Histéresis MÃnima" #: scene/3d/visual_instance.cpp msgid "Max Hysteresis" -msgstr "" +msgstr "Histéresis Máxima" #: scene/3d/world_environment.cpp msgid "" @@ -23333,7 +23355,7 @@ msgstr "Reinicio Automático" #: scene/animation/animation_blend_tree.cpp msgid "Delay" -msgstr "" +msgstr "Retraso" #: scene/animation/animation_blend_tree.cpp msgid "Random Delay" @@ -23386,7 +23408,7 @@ msgstr "Animación Asignada" #: scene/animation/animation_player.cpp msgid "Reset On Save" -msgstr "" +msgstr "Restablecer Al Guardar" #: scene/animation/animation_player.cpp msgid "Current Animation Length" @@ -23406,7 +23428,7 @@ msgstr "Tiempo de Mezcla Predeterminado" #: scene/animation/animation_player.cpp msgid "Method Call Mode" -msgstr "" +msgstr "Modo de Llamada de Método" #: scene/animation/animation_tree.cpp msgid "In node '%s', invalid animation: '%s'." @@ -23448,7 +23470,7 @@ msgstr "Reproductor de Animación" #: scene/animation/animation_tree.cpp msgid "Root Motion" -msgstr "" +msgstr "Movimiento de la RaÃz" #: scene/animation/animation_tree.cpp msgid "Track" @@ -23496,11 +23518,11 @@ msgstr "Anular Base de la Punta" #: scene/animation/skeleton_ik.cpp msgid "Use Magnet" -msgstr "" +msgstr "Usar Imán" #: scene/animation/skeleton_ik.cpp msgid "Magnet" -msgstr "" +msgstr "Imán" #: scene/animation/skeleton_ik.cpp msgid "Target Node" @@ -23512,7 +23534,7 @@ msgstr "Iteraciones Máximas" #: scene/animation/tween.cpp msgid "Playback Process Mode" -msgstr "" +msgstr "Modo de Proceso de Reproducción" #: scene/animation/tween.cpp msgid "Playback Speed" @@ -23534,7 +23556,7 @@ msgstr "Modo de Estiramiento" #: scene/gui/aspect_ratio_container.cpp scene/gui/box_container.cpp msgid "Alignment" -msgstr "" +msgstr "Alineamiento" #: scene/gui/base_button.cpp msgid "Shortcut In Tooltip" @@ -23546,11 +23568,11 @@ msgstr "Modo de Acción" #: scene/gui/base_button.cpp msgid "Enabled Focus Mode" -msgstr "" +msgstr "Modo de Concentración Activado" #: scene/gui/base_button.cpp msgid "Keep Pressed Outside" -msgstr "" +msgstr "Mantener presionado al exterior" #: scene/gui/base_button.cpp scene/gui/shortcut.cpp msgid "Shortcut" @@ -23677,7 +23699,7 @@ msgstr "Contenido del Clip" #: scene/gui/control.cpp scene/resources/visual_shader_nodes.cpp msgid "Hint" -msgstr "" +msgstr "Indicio" #: scene/gui/control.cpp msgid "Tooltip" @@ -23713,7 +23735,7 @@ msgstr "Anterior" #: scene/gui/control.cpp msgid "Mouse" -msgstr "" +msgstr "Ratón" #: scene/gui/control.cpp msgid "Default Cursor Shape" @@ -23721,7 +23743,7 @@ msgstr "Forma del Cursor Predeterminado" #: scene/gui/control.cpp msgid "Pass On Modal Close Click" -msgstr "" +msgstr "Pasar Clic Al Cerrar Modal" #: scene/gui/control.cpp msgid "Size Flags" @@ -23737,7 +23759,7 @@ msgstr "Propiedades del Tema" #: scene/gui/dialogs.cpp msgid "Window Title" -msgstr "" +msgstr "TÃtulo de Ventana" #: scene/gui/dialogs.cpp msgid "Dialog" @@ -23745,7 +23767,7 @@ msgstr "Diálogo" #: scene/gui/dialogs.cpp msgid "Hide On OK" -msgstr "" +msgstr "Ocultar Al Aceptar" #: scene/gui/dialogs.cpp msgid "Alert!" @@ -23794,7 +23816,7 @@ msgstr "Mostrar Etiqueta Zoom" #: scene/gui/graph_edit.cpp scene/gui/text_edit.cpp #: scene/resources/default_theme/default_theme.cpp msgid "Minimap" -msgstr "" +msgstr "Minimapa" #: scene/gui/graph_edit.cpp msgid "Enable grid minimap." @@ -23815,7 +23837,7 @@ msgstr "Comentario" #: scene/gui/graph_node.cpp msgid "Overlay" -msgstr "" +msgstr "Overlay" #: scene/gui/grid_container.cpp scene/gui/item_list.cpp scene/gui/tree.cpp msgid "Columns" @@ -23828,19 +23850,19 @@ msgstr "Temporizadores" #: scene/gui/item_list.cpp scene/gui/popup_menu.cpp scene/gui/tree.cpp msgid "Incremental Search Max Interval Msec" -msgstr "" +msgstr "Intervalo Máx. de Búsqueda Incremental Msec" #: scene/gui/item_list.cpp scene/gui/tree.cpp msgid "Allow Reselect" -msgstr "Permitir Volver A Seleccionar" +msgstr "Permitir Reselección" #: scene/gui/item_list.cpp scene/gui/tree.cpp msgid "Allow RMB Select" -msgstr "Permitir Selección Con Botón Derecho Del Ratón" +msgstr "Permitir Selección Con Botón Derecho Del Mouse" #: scene/gui/item_list.cpp msgid "Max Text Lines" -msgstr "" +msgstr "LÃneas de Texto Máximas" #: scene/gui/item_list.cpp msgid "Auto Height" @@ -23848,15 +23870,15 @@ msgstr "Altura Automática" #: scene/gui/item_list.cpp msgid "Max Columns" -msgstr "" +msgstr "Columnas Máximas" #: scene/gui/item_list.cpp msgid "Same Column Width" -msgstr "" +msgstr "Misma Anchura de Columna" #: scene/gui/item_list.cpp msgid "Fixed Column Width" -msgstr "" +msgstr "Anchura de Columna Fija" #: scene/gui/item_list.cpp msgid "Icon Scale" @@ -23880,19 +23902,19 @@ msgstr "Porcentaje Visible" #: scene/gui/label.cpp msgid "Lines Skipped" -msgstr "" +msgstr "LÃneas Omitidas" #: scene/gui/label.cpp msgid "Max Lines Visible" -msgstr "" +msgstr "Máximo de LÃneas Visibles" #: scene/gui/line_edit.cpp scene/resources/navigation_mesh.cpp msgid "Max Length" -msgstr "" +msgstr "Máxima Longitud" #: scene/gui/line_edit.cpp msgid "Secret" -msgstr "" +msgstr "Secreto" #: scene/gui/line_edit.cpp msgid "Secret Character" @@ -23900,7 +23922,7 @@ msgstr "Caracter Secreto" #: scene/gui/line_edit.cpp msgid "Expand To Text Length" -msgstr "" +msgstr "Expandir a la Longitud del Texto" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Context Menu Enabled" @@ -23929,7 +23951,7 @@ msgstr "Selección Activada" #: scene/gui/line_edit.cpp scene/gui/rich_text_label.cpp #: scene/gui/text_edit.cpp msgid "Deselect On Focus Loss Enabled" -msgstr "" +msgstr "Deselección al perder el focus activada" #: scene/gui/line_edit.cpp msgid "Right Icon" @@ -23941,15 +23963,15 @@ msgstr "Marcador" #: scene/gui/line_edit.cpp msgid "Alpha" -msgstr "" +msgstr "Alpha" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Caret" -msgstr "" +msgstr "Caret" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Blink" -msgstr "" +msgstr "Parpardeo" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Blink Speed" @@ -23957,7 +23979,7 @@ msgstr "Velocidad de Parpadeo" #: scene/gui/link_button.cpp msgid "Underline" -msgstr "" +msgstr "Subrayar" #: scene/gui/menu_button.cpp msgid "Switch On Hover" @@ -23977,7 +23999,7 @@ msgstr "Parche de Margen" #: scene/gui/nine_patch_rect.cpp scene/resources/style_box.cpp msgid "Axis Stretch" -msgstr "" +msgstr "Estiramiento de Eje" #: scene/gui/nine_patch_rect.cpp msgid "" @@ -24023,7 +24045,7 @@ msgstr "Ocultar Al Seleccionar Elemento de Estado" #: scene/gui/popup_menu.cpp msgid "Submenu Popup Delay" -msgstr "" +msgstr "Retraso en la Aparición del Submenú" #: scene/gui/popup_menu.cpp msgid "Allow Search" @@ -24059,11 +24081,11 @@ msgstr "Redondeado" #: scene/gui/range.cpp msgid "Allow Greater" -msgstr "" +msgstr "Permitir Más" #: scene/gui/range.cpp msgid "Allow Lesser" -msgstr "" +msgstr "Permitir Menos" #: scene/gui/reference_rect.cpp msgid "Border Color" @@ -24095,11 +24117,11 @@ msgstr "Carácter" #: scene/gui/rich_text_label.cpp msgid "BBCode" -msgstr "" +msgstr "BBCode" #: scene/gui/rich_text_label.cpp msgid "Meta Underlined" -msgstr "" +msgstr "Meta Subrayados" #: scene/gui/rich_text_label.cpp msgid "Tab Size" @@ -24111,11 +24133,11 @@ msgstr "Ajustar Altura Del Contenido" #: scene/gui/rich_text_label.cpp msgid "Scroll Active" -msgstr "" +msgstr "Scroll Activo" #: scene/gui/rich_text_label.cpp msgid "Scroll Following" -msgstr "" +msgstr "Seguir el Scroll" #: scene/gui/rich_text_label.cpp msgid "Selection Enabled" @@ -24161,15 +24183,15 @@ msgstr "Zona Muerta Predeterminada del Scroll" #: scene/gui/slider.cpp msgid "Scrollable" -msgstr "" +msgstr "Desplazable" #: scene/gui/slider.cpp msgid "Tick Count" -msgstr "Cantidad De Marcas" +msgstr "Contador de Marcas" #: scene/gui/slider.cpp msgid "Ticks On Borders" -msgstr "Ticks En Bordes" +msgstr "Marcas En Los Bordes" #: scene/gui/spin_box.cpp msgid "Prefix" @@ -24193,7 +24215,7 @@ msgstr "Visibilidad de los Arrastradores" #: scene/gui/tab_container.cpp scene/gui/tabs.cpp msgid "Tab Align" -msgstr "" +msgstr "Alineamiento de Pestaña" #: scene/gui/tab_container.cpp scene/gui/tabs.cpp msgid "Current Tab" @@ -24205,7 +24227,7 @@ msgstr "Pestañas Visibles" #: scene/gui/tab_container.cpp msgid "All Tabs In Front" -msgstr "" +msgstr "Todas las Pestañas al Frente" #: scene/gui/tab_container.cpp scene/gui/tabs.cpp msgid "Drag To Rearrange Enabled" @@ -24213,31 +24235,31 @@ msgstr "Arrastrar Para Reordenar Habilitado" #: scene/gui/tab_container.cpp msgid "Use Hidden Tabs For Min Size" -msgstr "" +msgstr "Usar Pestañas Ocultas Para Tamaño MÃnimo" #: scene/gui/tabs.cpp msgid "Tab Close Display Policy" -msgstr "" +msgstr "PolÃtica de Botón de Cerrar Pestaña" #: scene/gui/tabs.cpp msgid "Scrolling Enabled" -msgstr "" +msgstr "Desplazamiento Activado" #: scene/gui/text_edit.cpp msgid "Readonly" -msgstr "" +msgstr "Solo Lectura" #: scene/gui/text_edit.cpp msgid "Bookmark Gutter" -msgstr "Canalón de Marcadores" +msgstr "Marca del Umbral" #: scene/gui/text_edit.cpp msgid "Breakpoint Gutter" -msgstr "Canalón de Puntos de Ruptura" +msgstr "Umbral de Ruptura" #: scene/gui/text_edit.cpp msgid "Fold Gutter" -msgstr "Canalón Plegable" +msgstr "Pliegue del Umbral" #: scene/gui/text_edit.cpp msgid "Drag And Drop Selection Enabled" @@ -24269,19 +24291,19 @@ msgstr "Modo Bloque" #: scene/gui/text_edit.cpp msgid "Moving By Right Click" -msgstr "" +msgstr "Mover Con Clic Derecho" #: scene/gui/text_edit.cpp msgid "Text Edit Idle Detect (sec)" -msgstr "" +msgstr "Detección de Inactividad en la Edición de Texto (seg.)" #: scene/gui/text_edit.cpp msgid "Text Edit Undo Stack Max Size" -msgstr "" +msgstr "Número máximo de acciones recordados para deshacer" #: scene/gui/texture_button.cpp scene/resources/default_theme/default_theme.cpp msgid "Hover" -msgstr "" +msgstr "Hover" #: scene/gui/texture_button.cpp msgid "Focused" @@ -24298,7 +24320,7 @@ msgstr "Expandir" #: scene/gui/texture_progress.cpp msgid "Under" -msgstr "" +msgstr "Debajo" #: scene/gui/texture_progress.cpp msgid "Over" @@ -24318,11 +24340,11 @@ msgstr "Modo de Relleno" #: scene/gui/texture_progress.cpp scene/resources/material.cpp msgid "Tint" -msgstr "" +msgstr "Tinte" #: scene/gui/texture_progress.cpp msgid "Radial Fill" -msgstr "" +msgstr "Relleno Radial" #: scene/gui/texture_progress.cpp msgid "Initial Angle" @@ -24358,7 +24380,7 @@ msgstr "Estiramiento de Margen Inferior" #: scene/gui/tree.cpp msgid "Custom Minimum Height" -msgstr "" +msgstr "Altura MÃnima Personalizada" #: scene/gui/tree.cpp msgid "(Other)" @@ -24378,7 +24400,7 @@ msgstr "Ocultar RaÃz" #: scene/gui/tree.cpp msgid "Drop Mode Flags" -msgstr "" +msgstr "Indicadores del Modo de CaÃda" #: scene/gui/video_player.cpp msgid "Audio Track" @@ -24414,11 +24436,11 @@ msgstr "Descargar Tamaño del Fragmento" #: scene/main/http_request.cpp msgid "Body Size Limit" -msgstr "" +msgstr "LÃmite del Tamaño del Cuerpo" #: scene/main/http_request.cpp msgid "Max Redirects" -msgstr "" +msgstr "Redireccionamientos Máximos" #: scene/main/http_request.cpp msgid "Timeout" @@ -24429,6 +24451,8 @@ msgid "" "Setting node name '%s' to be unique within scene for '%s', but it's already " "claimed by '%s'. This node is no longer set unique." msgstr "" +"El nombre de nodo '%s' fue establecido como único en la escena de '%s', pero " +"ya está en uso por '%s'. Éste nodo ya no está como único." #: scene/main/node.cpp msgid "Name Num Separator" @@ -24436,7 +24460,7 @@ msgstr "Separador Numérico del Nombre" #: scene/main/node.cpp msgid "Name Casing" -msgstr "" +msgstr "Capitalización de Nombre" #: scene/main/node.cpp msgid "Editor Description" @@ -24488,7 +24512,7 @@ msgstr "Sugerencia de Depuración de Navegación" #: scene/main/scene_tree.cpp msgid "Use Font Oversampling" -msgstr "" +msgstr "Usar Sobremuestreo de Fuente" #: scene/main/scene_tree.cpp msgid "Edited Scene Root" @@ -24496,7 +24520,7 @@ msgstr "Escena RaÃz Editada" #: scene/main/scene_tree.cpp msgid "Root" -msgstr "" +msgstr "RaÃz" #: scene/main/scene_tree.cpp msgid "Multiplayer Poll" @@ -24505,11 +24529,11 @@ msgstr "Encuesta Multijugador" #: scene/main/scene_tree.cpp scene/resources/mesh_library.cpp #: scene/resources/shape_2d.cpp msgid "Shapes" -msgstr "" +msgstr "Formas" #: scene/main/scene_tree.cpp msgid "Shape Color" -msgstr "" +msgstr "Color de la Forma" #: scene/main/scene_tree.cpp msgid "Contact Color" @@ -24517,7 +24541,7 @@ msgstr "Color de Contacto" #: scene/main/scene_tree.cpp msgid "Geometry Color" -msgstr "" +msgstr "Color de la GeometrÃa" #: scene/main/scene_tree.cpp msgid "Disabled Geometry Color" @@ -24525,7 +24549,7 @@ msgstr "Color de la GeometrÃa Desactivada" #: scene/main/scene_tree.cpp msgid "Max Contacts Displayed" -msgstr "" +msgstr "Núm. Máx. de Contactos Mostrados" #: scene/main/scene_tree.cpp scene/resources/shape_2d.cpp msgid "Draw 2D Outlines" @@ -24541,27 +24565,27 @@ msgstr "Tamaño de Atlas" #: scene/main/scene_tree.cpp msgid "Atlas Subdiv" -msgstr "" +msgstr "Subdivisión del Atlas" #: scene/main/scene_tree.cpp scene/main/viewport.cpp msgid "MSAA" -msgstr "" +msgstr "MSAA" #: scene/main/scene_tree.cpp msgid "Use FXAA" -msgstr "" +msgstr "Usar FXAA" #: scene/main/scene_tree.cpp msgid "Use Debanding" -msgstr "" +msgstr "Usar Debanding" #: scene/main/scene_tree.cpp scene/main/viewport.cpp msgid "HDR" -msgstr "" +msgstr "HDR" #: scene/main/scene_tree.cpp scene/main/viewport.cpp msgid "Use 32 BPC Depth" -msgstr "" +msgstr "Usar Profundidad de 32 BPC" #: scene/main/scene_tree.cpp msgid "Default Environment" @@ -24681,7 +24705,7 @@ msgstr "Objetivo de Renderizado" #: scene/main/viewport.cpp msgid "V Flip" -msgstr "" +msgstr "Reflejo V" #: scene/main/viewport.cpp msgid "Clear Mode" @@ -24709,19 +24733,19 @@ msgstr "Sombra del Atlas" #: scene/main/viewport.cpp msgid "Quad 0" -msgstr "" +msgstr "Cuadrángulo 0" #: scene/main/viewport.cpp msgid "Quad 1" -msgstr "" +msgstr "Cuadrángulo 1" #: scene/main/viewport.cpp msgid "Quad 2" -msgstr "" +msgstr "Cuadrángulo 2" #: scene/main/viewport.cpp msgid "Quad 3" -msgstr "" +msgstr "Cuadrángulo 3" #: scene/main/viewport.cpp msgid "Canvas Transform" @@ -24737,7 +24761,7 @@ msgstr "Retraso del Tooltip (sec)" #: scene/register_scene_types.cpp msgid "Swap OK Cancel" -msgstr "Cancelar" +msgstr "Intercambiar Aceptar con Cancelar" #: scene/register_scene_types.cpp msgid "Layer Names" @@ -24769,7 +24793,7 @@ msgstr "Navegación 3D" #: scene/register_scene_types.cpp msgid "Use hiDPI" -msgstr "" +msgstr "Usar hiDPI" #: scene/register_scene_types.cpp msgid "Custom" @@ -24786,7 +24810,7 @@ msgstr "Tasa de Mezcla" #: scene/resources/audio_stream_sample.cpp msgid "Stereo" -msgstr "" +msgstr "Estéreo" #: scene/resources/concave_polygon_shape_2d.cpp msgid "Segments" @@ -24798,11 +24822,11 @@ msgstr "Bakear Resolución" #: scene/resources/curve.cpp msgid "Bake Interval" -msgstr "" +msgstr "Intervalo de Bakeado" #: scene/resources/default_theme/default_theme.cpp msgid "Panel" -msgstr "" +msgstr "Panel" #: scene/resources/default_theme/default_theme.cpp msgid "Font Color" @@ -24834,7 +24858,7 @@ msgstr "Espaciado del Subrayado" #: scene/resources/default_theme/default_theme.cpp msgid "Arrow" -msgstr "" +msgstr "Flecha" #: scene/resources/default_theme/default_theme.cpp msgid "Arrow Margin" @@ -24866,19 +24890,19 @@ msgstr "Radio Marcado Desactivado" #: scene/resources/default_theme/default_theme.cpp msgid "Radio Unchecked" -msgstr "" +msgstr "Radio Desmarcado" #: scene/resources/default_theme/default_theme.cpp msgid "Radio Unchecked Disabled" -msgstr "" +msgstr "Radio Desmarcado Desactivado" #: scene/resources/default_theme/default_theme.cpp msgid "Font Color Hover Pressed" -msgstr "" +msgstr "Color de Fuente Hover Pulsado" #: scene/resources/default_theme/default_theme.cpp msgid "Check V Adjust" -msgstr "" +msgstr "Comprobar Ajuste V" #: scene/resources/default_theme/default_theme.cpp msgid "On Disabled" @@ -24918,7 +24942,7 @@ msgstr "Color de Fuente Seleccionada" #: scene/resources/default_theme/default_theme.cpp msgid "Font Color Uneditable" -msgstr "" +msgstr "Color de Fuente No Editable" #: scene/resources/default_theme/default_theme.cpp msgid "Cursor Color" @@ -24942,7 +24966,7 @@ msgstr "BG" #: scene/resources/default_theme/default_theme.cpp msgid "FG" -msgstr "" +msgstr "FG" #: scene/resources/default_theme/default_theme.cpp msgid "Tab" @@ -24964,7 +24988,7 @@ msgstr "Plegar" #: scene/resources/default_theme/default_theme.cpp msgid "Font Color Readonly" -msgstr "" +msgstr "Color de Fuente de Sólo LeÃda" #: scene/resources/default_theme/default_theme.cpp msgid "Completion Lines" @@ -24984,7 +25008,7 @@ msgstr "Enfoque de Scroll" #: scene/resources/default_theme/default_theme.cpp msgid "Grabber" -msgstr "" +msgstr "Grabber" #: scene/resources/default_theme/default_theme.cpp msgid "Grabber Highlight" @@ -25004,11 +25028,11 @@ msgstr "Incremento Resaltado" #: scene/resources/default_theme/default_theme.cpp msgid "Increment Pressed" -msgstr "" +msgstr "Incremento Pulsado" #: scene/resources/default_theme/default_theme.cpp msgid "Decrement" -msgstr "" +msgstr "Decremento" #: scene/resources/default_theme/default_theme.cpp msgid "Decrement Highlight" @@ -25016,7 +25040,7 @@ msgstr "Decremento Resaltado" #: scene/resources/default_theme/default_theme.cpp msgid "Decrement Pressed" -msgstr "" +msgstr "Decremento Pulsado" #: scene/resources/default_theme/default_theme.cpp msgid "Slider" @@ -25024,11 +25048,11 @@ msgstr "Deslizador" #: scene/resources/default_theme/default_theme.cpp msgid "Grabber Area" -msgstr "" +msgstr "Ãrea de Grabber" #: scene/resources/default_theme/default_theme.cpp msgid "Grabber Area Highlight" -msgstr "" +msgstr "Resaltado del Ãrea de Grabber" #: scene/resources/default_theme/default_theme.cpp msgid "Grabber Disabled" @@ -25036,7 +25060,7 @@ msgstr "Agarre Desactivado" #: scene/resources/default_theme/default_theme.cpp msgid "Tick" -msgstr "" +msgstr "Marcar" #: scene/resources/default_theme/default_theme.cpp msgid "Updown" @@ -25160,7 +25184,7 @@ msgstr "Enfoque Seleccionado" #: scene/resources/default_theme/default_theme.cpp msgid "Cursor Unfocused" -msgstr "" +msgstr "Cursor Desenfocado" #: scene/resources/default_theme/default_theme.cpp msgid "Button Pressed" @@ -25220,7 +25244,7 @@ msgstr "Color de la LÃnea de Relación" #: scene/resources/default_theme/default_theme.cpp msgid "Custom Button Font Highlight" -msgstr "" +msgstr "Fuente Personalizada de Botón Resaltado" #: scene/resources/default_theme/default_theme.cpp msgid "Item Margin" @@ -25268,7 +25292,7 @@ msgstr "Pestaña Desactivada" #: scene/resources/default_theme/default_theme.cpp msgid "Menu" -msgstr "" +msgstr "Menú" #: scene/resources/default_theme/default_theme.cpp msgid "Menu Highlight" @@ -25292,15 +25316,15 @@ msgstr "Margen Superior" #: scene/resources/default_theme/default_theme.cpp msgid "Label V Align FG" -msgstr "" +msgstr "Etiqueta V Alinear FG" #: scene/resources/default_theme/default_theme.cpp msgid "Label V Align BG" -msgstr "" +msgstr "Etiqueta V Alinear BG" #: scene/resources/default_theme/default_theme.cpp msgid "Large" -msgstr "Largo" +msgstr "Grande" #: scene/resources/default_theme/default_theme.cpp msgid "Folder" @@ -25356,11 +25380,11 @@ msgstr "Preset BG" #: scene/resources/default_theme/default_theme.cpp msgid "Overbright Indicator" -msgstr "" +msgstr "Indicador de Exceso de Brillo" #: scene/resources/default_theme/default_theme.cpp msgid "Preset FG" -msgstr "Preset FG" +msgstr "FG Preestablecido" #: scene/resources/default_theme/default_theme.cpp msgid "Preset BG Icon" @@ -25416,11 +25440,11 @@ msgstr "Ocultar Automáticamente" #: scene/resources/default_theme/default_theme.cpp msgid "Minus" -msgstr "" +msgstr "Menos" #: scene/resources/default_theme/default_theme.cpp msgid "More" -msgstr "" +msgstr "Más" #: scene/resources/default_theme/default_theme.cpp msgid "Grid Minor" @@ -25452,7 +25476,7 @@ msgstr "Bezier Len Neg" #: scene/resources/default_theme/default_theme.cpp msgid "Port Grab Distance Horizontal" -msgstr "" +msgstr "Distancia de Agarre Horizontal del Puerto" #: scene/resources/default_theme/default_theme.cpp msgid "Port Grab Distance Vertical" @@ -25460,7 +25484,7 @@ msgstr "Distancia Vertical del Puerto de Agarre" #: scene/resources/dynamic_font.cpp msgid "Hinting" -msgstr "" +msgstr "Hinting" #: scene/resources/dynamic_font.cpp msgid "Override Oversampling" @@ -25496,11 +25520,11 @@ msgstr "Datos de la Fuente" #: scene/resources/environment.cpp msgid "Background" -msgstr "" +msgstr "Fondo" #: scene/resources/environment.cpp scene/resources/sky.cpp msgid "Sky" -msgstr "" +msgstr "Cielo" #: scene/resources/environment.cpp msgid "Sky Custom FOV" @@ -25536,7 +25560,7 @@ msgstr "Contribución del Cielo" #: scene/resources/environment.cpp msgid "Fog" -msgstr "" +msgstr "Niebla" #: scene/resources/environment.cpp msgid "Sun Color" @@ -25596,19 +25620,19 @@ msgstr "Exposición" #: scene/resources/environment.cpp msgid "White" -msgstr "" +msgstr "Blanco" #: scene/resources/environment.cpp msgid "Auto Exposure" -msgstr "" +msgstr "Exposición Auto" #: scene/resources/environment.cpp msgid "Min Luma" -msgstr "" +msgstr "Luma MÃnimo" #: scene/resources/environment.cpp msgid "Max Luma" -msgstr "" +msgstr "Luma Máximo" #: scene/resources/environment.cpp msgid "SS Reflections" @@ -25632,11 +25656,11 @@ msgstr "Tolerancia de Profundidad" #: scene/resources/environment.cpp scene/resources/material.cpp msgid "Roughness" -msgstr "" +msgstr "Aspereza" #: scene/resources/environment.cpp msgid "SSAO" -msgstr "" +msgstr "SSAO" #: scene/resources/environment.cpp msgid "Radius 2" @@ -25644,7 +25668,7 @@ msgstr "Radio 2" #: scene/resources/environment.cpp msgid "Intensity 2" -msgstr "" +msgstr "Intensidad 2" #: scene/resources/environment.cpp scene/resources/material.cpp msgid "Light Affect" @@ -25656,11 +25680,11 @@ msgstr "Influencia del Canal AO" #: scene/resources/environment.cpp msgid "Blur" -msgstr "" +msgstr "Blur" #: scene/resources/environment.cpp msgid "Edge Sharpness" -msgstr "" +msgstr "Nitidez de Borde" #: scene/resources/environment.cpp msgid "DOF Far Blur" @@ -25680,7 +25704,7 @@ msgstr "" #: scene/resources/environment.cpp msgid "Glow" -msgstr "" +msgstr "Brillo" #: scene/resources/environment.cpp msgid "Levels" @@ -25720,15 +25744,15 @@ msgstr "7" #: scene/resources/environment.cpp msgid "Bloom" -msgstr "" +msgstr "Resplandor" #: scene/resources/environment.cpp msgid "HDR Threshold" -msgstr "" +msgstr "Umbral de HDR" #: scene/resources/environment.cpp msgid "HDR Luminance Cap" -msgstr "" +msgstr "Luminancia de HDR Máxima" #: scene/resources/environment.cpp msgid "HDR Scale" @@ -25740,7 +25764,7 @@ msgstr "" #: scene/resources/environment.cpp msgid "Adjustments" -msgstr "" +msgstr "Ajustes" #: scene/resources/environment.cpp msgid "Brightness" @@ -25772,7 +25796,7 @@ msgstr "Offsets" #: scene/resources/height_map_shape.cpp msgid "Map Width" -msgstr "" +msgstr "Anchura del Mapa" #: scene/resources/height_map_shape.cpp msgid "Map Depth" @@ -25784,7 +25808,7 @@ msgstr "Datos del Mapa" #: scene/resources/line_shape_2d.cpp msgid "D" -msgstr "" +msgstr "D" #: scene/resources/material.cpp msgid "Next Pass" @@ -25812,11 +25836,11 @@ msgstr "" #: scene/resources/material.cpp msgid "Albedo Tex Force sRGB" -msgstr "" +msgstr "Forzar sRGB en Textura Albedo" #: scene/resources/material.cpp msgid "Do Not Receive Shadows" -msgstr "" +msgstr "No Recibir Sombras" #: scene/resources/material.cpp msgid "Disable Ambient Light" @@ -25828,7 +25852,7 @@ msgstr "Asegurar Normales Correctas" #: scene/resources/material.cpp msgid "Albedo Tex MSDF" -msgstr "" +msgstr "MSDF en Textura Albedo" #: scene/resources/material.cpp msgid "Vertex Color" @@ -25836,11 +25860,11 @@ msgstr "Color del Vértice" #: scene/resources/material.cpp msgid "Use As Albedo" -msgstr "" +msgstr "Usar Como Albedo" #: scene/resources/material.cpp msgid "Is sRGB" -msgstr "" +msgstr "Es sRGB" #: scene/resources/material.cpp servers/visual_server.cpp msgid "Parameters" @@ -25876,15 +25900,15 @@ msgstr "Mantener Escala del Billboard" #: scene/resources/material.cpp msgid "Grow" -msgstr "" +msgstr "Expandir" #: scene/resources/material.cpp msgid "Grow Amount" -msgstr "Cantidad de Crecimiento" +msgstr "Cantidad de Expansión" #: scene/resources/material.cpp msgid "Use Alpha Scissor" -msgstr "" +msgstr "Usar Corte Alpha" #: scene/resources/material.cpp msgid "Particles Anim" @@ -25900,11 +25924,11 @@ msgstr "Cuadros V" #: scene/resources/material.cpp msgid "Albedo" -msgstr "" +msgstr "Albedo" #: scene/resources/material.cpp msgid "Metallic" -msgstr "" +msgstr "Metálico" #: scene/resources/material.cpp msgid "Texture Channel" @@ -25916,15 +25940,15 @@ msgstr "Emisión" #: scene/resources/material.cpp msgid "On UV2" -msgstr "" +msgstr "En UV2" #: scene/resources/material.cpp msgid "NormalMap" -msgstr "" +msgstr "Mapa Normal" #: scene/resources/material.cpp msgid "Rim" -msgstr "" +msgstr "Borde" #: scene/resources/material.cpp msgid "Clearcoat" @@ -25932,15 +25956,15 @@ msgstr "Transparencia" #: scene/resources/material.cpp msgid "Gloss" -msgstr "" +msgstr "Brillo" #: scene/resources/material.cpp msgid "Anisotropy" -msgstr "" +msgstr "AnisotropÃa" #: scene/resources/material.cpp msgid "Flowmap" -msgstr "" +msgstr "Flowmap" #: scene/resources/material.cpp msgid "Ambient Occlusion" @@ -25948,7 +25972,7 @@ msgstr "Oclusión Ambiental" #: scene/resources/material.cpp msgid "Deep Parallax" -msgstr "" +msgstr "Paralaje Profundo" #: scene/resources/material.cpp msgid "Min Layers" @@ -25960,7 +25984,7 @@ msgstr "Capas Máximas" #: scene/resources/material.cpp msgid "Flip Tangent" -msgstr "" +msgstr "Voltear Tangente" #: scene/resources/material.cpp msgid "Flip Binormal" @@ -25980,7 +26004,7 @@ msgstr "Refracción" #: scene/resources/material.cpp msgid "Detail" -msgstr "" +msgstr "Detalle" #: scene/resources/material.cpp msgid "UV Layer" @@ -25992,11 +26016,11 @@ msgstr "UV1" #: scene/resources/material.cpp msgid "Triplanar" -msgstr "" +msgstr "Triplanar" #: scene/resources/material.cpp msgid "Triplanar Sharpness" -msgstr "" +msgstr "Nitidez Triplanar" #: scene/resources/material.cpp msgid "UV2" @@ -26008,7 +26032,7 @@ msgstr "Desvanecimiento de Proximidad" #: scene/resources/material.cpp msgid "Distance Fade" -msgstr "" +msgstr "Fade al Distanciarse" #: scene/resources/material.cpp msgid "Async Mode" @@ -26020,7 +26044,7 @@ msgstr "Sugerencia de Tamaño del Lightmap" #: scene/resources/mesh.cpp scene/resources/primitive_meshes.cpp msgid "Custom AABB" -msgstr "" +msgstr "AABB Personalizado" #: scene/resources/mesh_library.cpp msgid "Mesh Transform" @@ -26040,7 +26064,7 @@ msgstr "Formato de Transformación" #: scene/resources/multimesh.cpp msgid "Custom Data Format" -msgstr "" +msgstr "Formato de Datos Personalizado" #: scene/resources/multimesh.cpp msgid "Instance Count" @@ -26048,7 +26072,7 @@ msgstr "Conteo de Instancias" #: scene/resources/multimesh.cpp msgid "Visible Instance Count" -msgstr "" +msgstr "Número de Instancias Visible" #: scene/resources/navigation_mesh.cpp msgid "Sampling" @@ -26064,7 +26088,7 @@ msgstr "Tipo de GeometrÃa Parseada" #: scene/resources/navigation_mesh.cpp msgid "Source Geometry Mode" -msgstr "" +msgstr "Modo de GeometrÃa de Origen" #: scene/resources/navigation_mesh.cpp msgid "Source Group Name" @@ -26072,7 +26096,7 @@ msgstr "Nombre del Grupo de Origen" #: scene/resources/navigation_mesh.cpp msgid "Cells" -msgstr "" +msgstr "Celdas" #: scene/resources/navigation_mesh.cpp msgid "Agents" @@ -26080,11 +26104,11 @@ msgstr "Agentes" #: scene/resources/navigation_mesh.cpp msgid "Max Climb" -msgstr "" +msgstr "Escalada Máxima" #: scene/resources/navigation_mesh.cpp msgid "Max Slope" -msgstr "" +msgstr "Pendiente Máxima" #: scene/resources/navigation_mesh.cpp msgid "Regions" @@ -26096,7 +26120,7 @@ msgstr "Tamaño de Unión" #: scene/resources/navigation_mesh.cpp msgid "Edges" -msgstr "" +msgstr "Aristas" #: scene/resources/navigation_mesh.cpp msgid "Max Error" @@ -26104,7 +26128,7 @@ msgstr "Error Máximo" #: scene/resources/navigation_mesh.cpp msgid "Verts Per Poly" -msgstr "" +msgstr "Vértices por Poly" #: scene/resources/navigation_mesh.cpp msgid "Details" @@ -26120,7 +26144,7 @@ msgstr "Error Máximo de Muestra" #: scene/resources/navigation_mesh.cpp msgid "Low Hanging Obstacles" -msgstr "" +msgstr "Obstáculos Colgando Bajo" #: scene/resources/navigation_mesh.cpp msgid "Ledge Spans" @@ -26140,7 +26164,7 @@ msgstr "Bakear Offset AABB" #: scene/resources/occluder_shape.cpp msgid "Spheres" -msgstr "" +msgstr "Esferas" #: scene/resources/occluder_shape.cpp msgid "OccluderShapeSphere Set Spheres" @@ -26156,11 +26180,11 @@ msgstr "Puntos de Rotura" #: scene/resources/packed_scene.cpp msgid "Bundled" -msgstr "" +msgstr "Empaquetado" #: scene/resources/particles_material.cpp msgid "Trail" -msgstr "" +msgstr "Rastro" #: scene/resources/particles_material.cpp msgid "Divisor" @@ -26200,11 +26224,11 @@ msgstr "Curva de Escala" #: scene/resources/physics_material.cpp msgid "Rough" -msgstr "" +msgstr "Ãspero" #: scene/resources/physics_material.cpp msgid "Absorbent" -msgstr "" +msgstr "Absorbente" #: scene/resources/plane_shape.cpp msgid "Plane" @@ -26216,19 +26240,19 @@ msgstr "Voltear Caras" #: scene/resources/primitive_meshes.cpp msgid "Mid Height" -msgstr "" +msgstr "Altura Mediana" #: scene/resources/primitive_meshes.cpp msgid "Subdivide Width" -msgstr "" +msgstr "Anchura de Subdivisión" #: scene/resources/primitive_meshes.cpp msgid "Subdivide Height" -msgstr "" +msgstr "Altura de Subdivisión" #: scene/resources/primitive_meshes.cpp msgid "Subdivide Depth" -msgstr "" +msgstr "Profundidad de Subdivisión" #: scene/resources/primitive_meshes.cpp msgid "Top Radius" @@ -26244,7 +26268,7 @@ msgstr "De Izquierda a Derecha" #: scene/resources/primitive_meshes.cpp msgid "Is Hemisphere" -msgstr "" +msgstr "Es Hemisfera" #: scene/resources/primitive_meshes.cpp msgid "Curve Step" @@ -26252,15 +26276,15 @@ msgstr "Paso de Curva" #: scene/resources/ray_shape.cpp scene/resources/segment_shape_2d.cpp msgid "Slips On Slope" -msgstr "" +msgstr "Resbala en Pendiente" #: scene/resources/segment_shape_2d.cpp msgid "A" -msgstr "" +msgstr "A" #: scene/resources/shape_2d.cpp msgid "Custom Solver Bias" -msgstr "" +msgstr "Bias de Solución Personalizado" #: scene/resources/skin.cpp msgid "Bind Count" @@ -26280,7 +26304,7 @@ msgstr "Tamaño de Resplandor" #: scene/resources/sky.cpp msgid "Panorama" -msgstr "" +msgstr "Panorama" #: scene/resources/sky.cpp msgid "Top Color" @@ -26308,15 +26332,15 @@ msgstr "Latitud" #: scene/resources/sky.cpp msgid "Longitude" -msgstr "" +msgstr "Longitud" #: scene/resources/sky.cpp msgid "Angle Min" -msgstr "" +msgstr "Ãngulo MÃnimo" #: scene/resources/sky.cpp msgid "Angle Max" -msgstr "" +msgstr "Ãngulo Máximo" #: scene/resources/style_box.cpp msgid "Content Margin" @@ -26328,7 +26352,7 @@ msgstr "Expandir Margen" #: scene/resources/style_box.cpp msgid "Skew" -msgstr "" +msgstr "Sesgo" #: scene/resources/style_box.cpp msgid "Corner Radius" @@ -26336,19 +26360,19 @@ msgstr "Radio de Esquina" #: scene/resources/style_box.cpp msgid "Corner Detail" -msgstr "" +msgstr "Detalle de Esquina" #: scene/resources/style_box.cpp msgid "Anti Aliasing" -msgstr "" +msgstr "Antialias" #: scene/resources/style_box.cpp msgid "Grow Begin" -msgstr "" +msgstr "Inicio de Expansión" #: scene/resources/style_box.cpp msgid "Grow End" -msgstr "" +msgstr "Fin de Expansión" #: scene/resources/texture.cpp msgid "Load Path" @@ -26404,7 +26428,7 @@ msgstr "Pausa" #: scene/resources/texture.cpp msgid "Which Feed" -msgstr "" +msgstr "Cuál Feed" #: scene/resources/texture.cpp msgid "Camera Is Active" @@ -26416,7 +26440,7 @@ msgstr "Fuente Predeterminada" #: scene/resources/visual_shader.cpp msgid "Output Port For Preview" -msgstr "" +msgstr "Puerto de Salida para Previsualización" #: scene/resources/visual_shader.cpp msgid "Depth Draw" @@ -26468,7 +26492,7 @@ msgstr "Tipo de Textura" #: scene/resources/visual_shader_nodes.cpp msgid "Cube Map" -msgstr "" +msgstr "Mapa de Cubo" #: scene/resources/visual_shader_nodes.cpp msgid "Default Value Enabled" @@ -26500,7 +26524,7 @@ msgstr "Mapa de Navegación" #: scene/resources/world.cpp scene/resources/world_2d.cpp msgid "Direct Space State" -msgstr "" +msgstr "Estado de Espacio Directo" #: scene/resources/world.cpp scene/resources/world_2d.cpp msgid "Default Gravity Vector" @@ -26536,7 +26560,7 @@ msgstr "Lienzo" #: servers/arvr/arvr_interface.cpp msgid "Is Primary" -msgstr "" +msgstr "Es Primario" #: servers/arvr/arvr_interface.cpp msgid "Is Initialized" @@ -26544,11 +26568,11 @@ msgstr "Inicializado" #: servers/arvr/arvr_interface.cpp msgid "AR" -msgstr "" +msgstr "AR" #: servers/arvr/arvr_interface.cpp msgid "Is Anchor Detection Enabled" -msgstr "" +msgstr "Detección de Anclaje Está Activada" #: servers/arvr_server.cpp msgid "Primary Interface" @@ -26566,36 +26590,36 @@ msgstr "Tono Aleatorio" #: servers/audio/effects/audio_effect_spectrum_analyzer.cpp #: servers/audio/effects/audio_stream_generator.cpp msgid "Buffer Length" -msgstr "" +msgstr "Longitud de Buffer" #: servers/audio/effects/audio_effect_chorus.cpp msgid "Voice Count" -msgstr "" +msgstr "Número de Voces" #: servers/audio/effects/audio_effect_chorus.cpp #: servers/audio/effects/audio_effect_delay.cpp #: servers/audio/effects/audio_effect_reverb.cpp msgid "Dry" -msgstr "" +msgstr "Seco" #: servers/audio/effects/audio_effect_chorus.cpp #: servers/audio/effects/audio_effect_reverb.cpp msgid "Wet" -msgstr "" +msgstr "Mojado" #: servers/audio/effects/audio_effect_chorus.cpp msgid "Voice" -msgstr "" +msgstr "Voz" #: servers/audio/effects/audio_effect_chorus.cpp #: servers/audio/effects/audio_effect_delay.cpp msgid "Delay (ms)" -msgstr "" +msgstr "Retraso (ms)" #: servers/audio/effects/audio_effect_chorus.cpp #: servers/audio/effects/audio_effect_phaser.cpp msgid "Rate Hz" -msgstr "" +msgstr "Velocidad en Hz" #: servers/audio/effects/audio_effect_chorus.cpp msgid "Depth (ms)" @@ -26604,7 +26628,7 @@ msgstr "Profundidad (ms)" #: servers/audio/effects/audio_effect_chorus.cpp #: servers/audio/effects/audio_effect_delay.cpp msgid "Level dB" -msgstr "" +msgstr "Nivel en dB" #: servers/audio/effects/audio_effect_chorus.cpp #: servers/audio/effects/audio_effect_delay.cpp @@ -26615,11 +26639,11 @@ msgstr "Pan" #: servers/audio/effects/audio_effect_compressor.cpp #: servers/audio/effects/audio_effect_filter.cpp msgid "Gain" -msgstr "" +msgstr "Ganancia" #: servers/audio/effects/audio_effect_compressor.cpp msgid "Attack (µs)" -msgstr "" +msgstr "Ataque (µs)" #: servers/audio/effects/audio_effect_compressor.cpp msgid "Release (ms)" @@ -26635,11 +26659,11 @@ msgstr "" #: servers/audio/effects/audio_effect_delay.cpp msgid "Tap 1" -msgstr "" +msgstr "Toque 1" #: servers/audio/effects/audio_effect_delay.cpp msgid "Tap 2" -msgstr "" +msgstr "Toque 2" #: servers/audio/effects/audio_effect_delay.cpp #: servers/audio/effects/audio_effect_phaser.cpp @@ -26653,15 +26677,15 @@ msgstr "Paso Bajo" #: servers/audio/effects/audio_effect_distortion.cpp msgid "Pre Gain" -msgstr "" +msgstr "Pre-Ganancia" #: servers/audio/effects/audio_effect_distortion.cpp msgid "Keep Hf Hz" -msgstr "" +msgstr "Mantener Hz Altas" #: servers/audio/effects/audio_effect_distortion.cpp msgid "Drive" -msgstr "" +msgstr "Drive" #: servers/audio/effects/audio_effect_distortion.cpp msgid "Post Gain" @@ -26673,11 +26697,11 @@ msgstr "Resonancia" #: servers/audio/effects/audio_effect_limiter.cpp msgid "Ceiling dB" -msgstr "" +msgstr "dB Tope" #: servers/audio/effects/audio_effect_limiter.cpp msgid "Threshold dB" -msgstr "" +msgstr "Umbral dB" #: servers/audio/effects/audio_effect_limiter.cpp msgid "Soft Clip dB" @@ -26689,15 +26713,15 @@ msgstr "" #: servers/audio/effects/audio_effect_phaser.cpp msgid "Range Min Hz" -msgstr "" +msgstr "Rango Hz MÃnimo" #: servers/audio/effects/audio_effect_phaser.cpp msgid "Range Max Hz" -msgstr "" +msgstr "Rango Hz Máximo" #: servers/audio/effects/audio_effect_pitch_shift.cpp msgid "Oversampling" -msgstr "" +msgstr "Sobremuestreo" #: servers/audio/effects/audio_effect_pitch_shift.cpp #: servers/audio/effects/audio_effect_spectrum_analyzer.cpp @@ -26710,11 +26734,11 @@ msgstr "" #: servers/audio/effects/audio_effect_reverb.cpp msgid "Msec" -msgstr "" +msgstr "Mseg" #: servers/audio/effects/audio_effect_reverb.cpp msgid "Room Size" -msgstr "" +msgstr "Tamaño de Habitación" #: servers/audio/effects/audio_effect_reverb.cpp msgid "High-pass" @@ -26734,7 +26758,7 @@ msgstr "Tiempo de Extracción (ms)" #: servers/audio/effects/audio_effect_stereo_enhance.cpp msgid "Surround" -msgstr "" +msgstr "Envolvente" #: servers/audio_server.cpp msgid "Enable Audio Input" @@ -26746,7 +26770,7 @@ msgstr "Latencia de Salida" #: servers/audio_server.cpp msgid "Channel Disable Threshold dB" -msgstr "" +msgstr "Umbral dB de Deactivación de Canal" #: servers/audio_server.cpp msgid "Channel Disable Time" @@ -26754,7 +26778,7 @@ msgstr "Tiempo de Desconexión del Canal" #: servers/audio_server.cpp msgid "Video Delay Compensation (ms)" -msgstr "" +msgstr "Compensación de Retraso de VÃdeo (ms)" #: servers/audio_server.cpp msgid "Bus Count" @@ -26770,7 +26794,7 @@ msgstr "Escala Global de Porcentajes" #: servers/camera/camera_feed.cpp msgid "Feed" -msgstr "" +msgstr "Feed" #: servers/camera/camera_feed.cpp msgid "Is Active" @@ -26778,15 +26802,15 @@ msgstr "Activo" #: servers/physics/space_sw.cpp servers/physics_2d/space_2d_sw.cpp msgid "Sleep Threshold Linear" -msgstr "" +msgstr "Umbral de Sueño Lineal" #: servers/physics/space_sw.cpp servers/physics_2d/space_2d_sw.cpp msgid "Sleep Threshold Angular" -msgstr "" +msgstr "Umbral de Sueño Angular" #: servers/physics/space_sw.cpp servers/physics_2d/space_2d_sw.cpp msgid "Time Before Sleep" -msgstr "" +msgstr "Tiempo Antes de Sueño" #: servers/physics_2d/physics_2d_server_sw.cpp msgid "BP Hash Table Size" @@ -26794,11 +26818,11 @@ msgstr "Tamaño de Tabla Hash BP" #: servers/physics_2d/physics_2d_server_sw.cpp msgid "Large Object Surface Threshold In Cells" -msgstr "" +msgstr "Umbral de Superficie de Objeto Grande en Celdas" #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Inverse Mass" -msgstr "" +msgstr "Masa Inversa" #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Inverse Inertia" @@ -26822,11 +26846,11 @@ msgstr "Velocidad Lineal" #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Exclude" -msgstr "" +msgstr "Excluir" #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Shape RID" -msgstr "" +msgstr "RID de Forma" #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Collide With Bodies" @@ -26834,7 +26858,7 @@ msgstr "Colisión de Cuerpos" #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Collide With Areas" -msgstr "" +msgstr "Colisionar Con Ãreas" #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Motion Remainder" @@ -26870,7 +26894,7 @@ msgstr "Centro de la Masa" #: servers/physics_server.cpp msgid "Principal Inertia Axes" -msgstr "" +msgstr "Ejes de Inercia Principal" #: servers/visual/shader_language.cpp msgid "Varying may not be assigned in the '%s' function." @@ -26938,7 +26962,7 @@ msgstr "Importar PVRTC" #: servers/visual_server.cpp msgid "Lossless Compression" -msgstr "" +msgstr "Compresión Sin Pérdidas" #: servers/visual_server.cpp msgid "Force PNG" @@ -26946,7 +26970,7 @@ msgstr "Forzar PNG" #: servers/visual_server.cpp msgid "WebP Compression Level" -msgstr "" +msgstr "Nivel de Compresión WebP" #: servers/visual_server.cpp msgid "Time Rollover Secs" @@ -26958,19 +26982,19 @@ msgstr "Tamaño del Cubemap" #: servers/visual_server.cpp msgid "Quadrant 0 Subdiv" -msgstr "" +msgstr "Subdivisión del Cuadrante 0" #: servers/visual_server.cpp msgid "Quadrant 1 Subdiv" -msgstr "" +msgstr "Subdivisión del Cuadrante 1" #: servers/visual_server.cpp msgid "Quadrant 2 Subdiv" -msgstr "" +msgstr "Subdivisión del Cuadrante 2" #: servers/visual_server.cpp msgid "Quadrant 3 Subdiv" -msgstr "" +msgstr "Subdivisión del Cuadrante 3" #: servers/visual_server.cpp msgid "Shadows" @@ -26986,11 +27010,11 @@ msgstr "Reflejos del Array de Texturas" #: servers/visual_server.cpp msgid "High Quality GGX" -msgstr "" +msgstr "GGX de Alta Calidad" #: servers/visual_server.cpp msgid "Irradiance Max Size" -msgstr "" +msgstr "Tamaño Máximo de Irradiancia" #: servers/visual_server.cpp msgid "Shading" @@ -26998,19 +27022,19 @@ msgstr "Sombreado" #: servers/visual_server.cpp msgid "Force Vertex Shading" -msgstr "" +msgstr "Forzar Sombreado de Vértice" #: servers/visual_server.cpp msgid "Force Lambert Over Burley" -msgstr "" +msgstr "Forzar Lambert en Lugar de Burley" #: servers/visual_server.cpp msgid "Force Blinn Over GGX" -msgstr "" +msgstr "Forzar Blinn en Lugar de GGX" #: servers/visual_server.cpp msgid "Mesh Storage" -msgstr "" +msgstr "Almacenamiento de Malla" #: servers/visual_server.cpp msgid "Split Stream" @@ -27018,7 +27042,7 @@ msgstr "Stream Dividido" #: servers/visual_server.cpp msgid "Use Physical Light Attenuation" -msgstr "" +msgstr "Usar Atenuación de Luz FÃsica" #: servers/visual_server.cpp msgid "Depth Prepass" @@ -27030,11 +27054,11 @@ msgstr "" #: servers/visual_server.cpp msgid "Anisotropic Filter Level" -msgstr "" +msgstr "Nivel de Filtro Anisotrópico" #: servers/visual_server.cpp msgid "Use Nearest Mipmap Filter" -msgstr "" +msgstr "Usar Filtro de Mapa MIP más Cercano" #: servers/visual_server.cpp msgid "Skinning" @@ -27090,7 +27114,7 @@ msgstr "Usar División en Lotes en el Editor" #: servers/visual_server.cpp msgid "Single Rect Fallback" -msgstr "" +msgstr "Alternativa de Rect Único" #: servers/visual_server.cpp msgid "Max Join Item Commands" @@ -27098,11 +27122,11 @@ msgstr "" #: servers/visual_server.cpp msgid "Colored Vertex Format Threshold" -msgstr "" +msgstr "Umbral de Formato de Vértice Coloreado" #: servers/visual_server.cpp msgid "Scissor Area Threshold" -msgstr "" +msgstr "Umbral de Ãrea de Corte" #: servers/visual_server.cpp msgid "Max Join Items" @@ -27110,7 +27134,7 @@ msgstr "Elementos de Unión Máximos" #: servers/visual_server.cpp msgid "Batch Buffer Size" -msgstr "" +msgstr "Tamaño de Lote de Buffer" #: servers/visual_server.cpp msgid "Item Reordering Lookahead" @@ -27126,7 +27150,7 @@ msgstr "Diagnosticar Cuadro" #: servers/visual_server.cpp msgid "GLES2" -msgstr "" +msgstr "GLES2" #: servers/visual_server.cpp msgid "Compatibility" @@ -27134,7 +27158,7 @@ msgstr "Compatibilidad" #: servers/visual_server.cpp msgid "Disable Half Float" -msgstr "" +msgstr "Desactivar Float Medio" #: servers/visual_server.cpp msgid "Enable High Float" @@ -27146,11 +27170,11 @@ msgstr "Precisión" #: servers/visual_server.cpp msgid "UV Contract" -msgstr "" +msgstr "Contracción UV" #: servers/visual_server.cpp msgid "UV Contract Amount" -msgstr "" +msgstr "Cantidad de Contracción UV" #: servers/visual_server.cpp msgid "Use Simple PVS" @@ -27194,7 +27218,7 @@ msgstr "Compilaciones Simultáneas Máximas" #: servers/visual_server.cpp msgid "Log Active Async Compiles Count" -msgstr "" +msgstr "Anotar Número de Compilaciones AsÃncronas Activas" #: servers/visual_server.cpp msgid "Shader Cache Size (MB)" diff --git a/editor/translations/es_AR.po b/editor/translations/es_AR.po index 5babe4ff23..fdb6b4f00d 100644 --- a/editor/translations/es_AR.po +++ b/editor/translations/es_AR.po @@ -21,13 +21,14 @@ # Manuel González <mgoopazo@gmail.com>, 2021. # emnrx <emanuelermancia@gmail.com>, 2022. # Mau_Restor <restor@gmail.com>, 2022. +# Leonardo MartÃnez <leonardomartinez85@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-07-23 03:57+0000\n" -"Last-Translator: Mau_Restor <restor@gmail.com>\n" +"PO-Revision-Date: 2022-11-26 14:36+0000\n" +"Last-Translator: emnrx <emanuelermancia@gmail.com>\n" "Language-Team: Spanish (Argentina) <https://hosted.weblate.org/projects/" "godot-engine/godot/es_AR/>\n" "Language: es_AR\n" @@ -35,7 +36,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.14-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -71,7 +72,7 @@ msgstr "Modo de Bajo Uso del Procesador" #: core/bind/core_bind.cpp msgid "Low Processor Usage Mode Sleep (µsec)" -msgstr "" +msgstr "Modo de Baja Utilización del Procesador en Reposo (µseg)" #: core/bind/core_bind.cpp main/main.cpp platform/uwp/os_uwp.cpp msgid "Keep Screen On" @@ -141,7 +142,7 @@ msgstr "Tamaño" #: core/bind/core_bind.cpp msgid "Endian Swap" -msgstr "" +msgstr "Intercambio Endiano" #: core/bind/core_bind.cpp msgid "Editor Hint" @@ -248,20 +249,19 @@ msgstr "Conección" #: core/io/http_client.cpp msgid "Read Chunk Size" -msgstr "" +msgstr "Tamaño de fragmento de lectura" #: core/io/marshalls.cpp msgid "Object ID" msgstr "ID de Objeto" #: core/io/multiplayer_api.cpp core/io/packet_peer.cpp -#, fuzzy msgid "Allow Object Decoding" -msgstr "Activar Onion Skinning" +msgstr "Permitir decodificación de objetos" #: core/io/multiplayer_api.cpp scene/main/scene_tree.cpp msgid "Refuse New Network Connections" -msgstr "" +msgstr "Rechazar Nuevas Conexiones de Red" #: core/io/multiplayer_api.cpp scene/main/scene_tree.cpp #, fuzzy @@ -309,9 +309,8 @@ msgid "Blocking Handshake" msgstr "" #: core/io/udp_server.cpp -#, fuzzy msgid "Max Pending Connections" -msgstr "Editar Conexión:" +msgstr "Máximo de Conexiones Pendientes" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -364,7 +363,6 @@ msgid "Seed" msgstr "Semilla" #: core/math/random_number_generator.cpp -#, fuzzy msgid "State" msgstr "Estado" @@ -381,9 +379,8 @@ msgid "Mouse Mode" msgstr "Modo Mouse" #: core/os/input.cpp -#, fuzzy msgid "Use Accumulated Input" -msgstr "Eliminar Entrada" +msgstr "Usar entrada acumulada" #: core/os/input_event.cpp editor/project_settings_editor.cpp #: servers/audio_server.cpp @@ -411,9 +408,8 @@ msgid "Command" msgstr "Comando" #: core/os/input_event.cpp -#, fuzzy msgid "Physical" -msgstr " (FÃsica)" +msgstr "FÃsica" #: core/os/input_event.cpp scene/2d/touch_screen_button.cpp #: scene/gui/base_button.cpp scene/gui/texture_button.cpp @@ -757,9 +753,8 @@ msgstr "Al Final de la interfaz de usuario" #: servers/physics_2d/physics_2d_server_wrap_mt.h #: servers/physics_2d/space_2d_sw.cpp servers/physics_2d_server.cpp #: servers/physics_server.cpp -#, fuzzy msgid "Physics" -msgstr " (FÃsica)" +msgstr "(FÃsica)" #: core/project_settings.cpp editor/editor_settings.cpp #: editor/import/resource_importer_layered_texture.cpp @@ -1073,7 +1068,7 @@ msgstr "" #. TRANSLATORS: Adjective, refers to the mode for Bezier handles (Free, Balanced, Mirror). #: editor/animation_bezier_editor.cpp msgid "Free" -msgstr "Gratis" +msgstr "Libre" #: editor/animation_bezier_editor.cpp msgid "Balanced" @@ -13119,9 +13114,10 @@ msgstr "Opciones de Ajuste" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Offset:" @@ -14563,16 +14559,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Ruta de proyecto inválida (cambiaste algo?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "No se pudo cargar project.godot desde la ruta de proyecto (error %d). La " "ruta no existe o está corrupta." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "No se pudo editar project.godot en la ruta de proyecto." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "No se puede abrir el proyecto en '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -19323,15 +19320,13 @@ msgid "Code Signing" msgstr "Firmando código de DMG" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "'apksigner' could not be found. Please check that the command is available " "in the Android SDK build-tools directory. The resulting %s is unsigned." msgstr "" -"No se ha encontrado 'apksigner'.\n" -"Por favor, comprobá que el comando esté disponible en el directorio Android " -"SDK build-tools.\n" -"El %s resultante está sin firmar." +"No se ha encontrado 'apksigner'. Por favor, comprobá que el comando esté " +"disponible en el directorio Android SDK build-tools. El %s resultante está " +"sin firmar." #: platform/android/export/export_plugin.cpp msgid "Signing debug %s..." @@ -19380,9 +19375,8 @@ msgid "Invalid filename! Android APK requires the *.apk extension." msgstr "¡Nombre de archivo inválido! Android APK requiere la extensión *.apk." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Unsupported export format!" -msgstr "¡Formato de exportación no soportado!\n" +msgstr "¡Formato de exportación no soportado!" #: platform/android/export/export_plugin.cpp msgid "" @@ -19394,16 +19388,13 @@ msgstr "" "'Proyecto'." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Android build version mismatch: Template installed: %s, Godot version: %s. " "Please reinstall Android build template from 'Project' menu." msgstr "" -"La versión de compilación de Android no coincide:\n" -" Plantilla instalada: %s\n" -" Versión de Godot: %s\n" -"Por favor, reinstalá la plantilla de compilación de Android desde el menú " -"'Proyecto'." +"La versión de compilación de Android no coincide: Plantilla instalada: %s, " +"Versión de Godot: %s. Por favor, reinstalá la plantilla de compilación de " +"Android desde el menú 'Proyecto'." #: platform/android/export/export_plugin.cpp #, fuzzy @@ -19414,10 +19405,9 @@ msgstr "" "el nombre del proyecto" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Could not export project files to gradle project." msgstr "" -"No se pudieron exportar los archivos del proyecto a un proyecto gradle\n" +"No se pudieron exportar los archivos del proyecto a un proyecto gradle." #: platform/android/export/export_plugin.cpp msgid "Could not write expansion package file!" @@ -19428,12 +19418,11 @@ msgid "Building Android Project (gradle)" msgstr "Construir Proyecto Android (gradle)" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Building of Android project failed, check output for the error. " "Alternatively visit docs.godotengine.org for Android build documentation." msgstr "" -"La construcción del proyecto Android falló, comprueba la salida del error.\n" +"La construcción del proyecto Android falló, comprueba la salida del error. " "También podés visitar docs.godotengine.org para consultar la documentación " "de compilación de Android." @@ -19459,23 +19448,19 @@ msgid "Creating APK..." msgstr "Creando APK..." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Could not find template APK to export: \"%s\"." -msgstr "" -"No se pudo encontrar la plantilla APK para exportar:\n" -"%s" +msgstr "No se pudo encontrar la plantilla APK para exportar: %s" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Missing libraries in the export template for the selected architectures: %s. " "Please build a template with all required libraries, or uncheck the missing " "architectures in the export preset." msgstr "" "Bibliotecas faltantes en la plantilla de exportación para las arquitecturas " -"seleccionadas: %s.\n" -"Por favor, construya una plantilla con todas las bibliotecas necesarias, o " -"desmarque las arquitecturas faltantes en el preset de exportación." +"seleccionadas: %s. Por favor, construya una plantilla con todas las " +"bibliotecas necesarias, o desmarque las arquitecturas faltantes en el preset " +"de exportación." #: platform/android/export/export_plugin.cpp msgid "Adding files..." @@ -20350,10 +20335,8 @@ msgid "ZIP Creation" msgstr "Proyección" #: platform/osx/export/export.cpp -#, fuzzy msgid "Could not open file to read from path \"%s\"." -msgstr "" -"No se pudieron exportar los archivos del proyecto a un proyecto gradle\n" +msgstr "No se pudieron exportar los archivos del proyecto a un proyecto gradle" #: platform/osx/export/export.cpp msgid "Invalid bundle identifier:" @@ -22186,9 +22169,8 @@ msgid "Safe Margin" msgstr "Margen Seguro" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp -#, fuzzy msgid "Sync To Physics" -msgstr " (FÃsica)" +msgstr "(FÃsica)" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #, fuzzy @@ -23667,9 +23649,8 @@ msgid "A RoomGroup should not be a child or grandchild of a Portal." msgstr "Un RoomGroup no debe ser hijo o nieto de un Portal." #: scene/3d/portal.cpp -#, fuzzy msgid "Portal Active" -msgstr " [portales activos]" +msgstr "[portales activos]" #: scene/3d/portal.cpp scene/resources/occluder_shape_polygon.cpp msgid "Two Way" @@ -24135,6 +24116,15 @@ msgstr "Error" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Ordenar" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "GeometrÃa" @@ -25863,14 +25853,12 @@ msgid "3D Render" msgstr "Renderizador:" #: scene/register_scene_types.cpp -#, fuzzy msgid "2D Physics" -msgstr " (FÃsica)" +msgstr "(FÃsica)" #: scene/register_scene_types.cpp -#, fuzzy msgid "3D Physics" -msgstr " (FÃsica)" +msgstr "(FÃsica)" #: scene/register_scene_types.cpp #, fuzzy diff --git a/editor/translations/et.po b/editor/translations/et.po index 0a4ab2fe0b..dc36ae0b94 100644 --- a/editor/translations/et.po +++ b/editor/translations/et.po @@ -12713,9 +12713,10 @@ msgstr "Intervall:" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14086,12 +14087,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -23119,6 +23119,15 @@ msgstr "Viga:" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Salvestan faili:" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/eu.po b/editor/translations/eu.po index c0f1953269..79da3d56fb 100644 --- a/editor/translations/eu.po +++ b/editor/translations/eu.po @@ -2,7 +2,7 @@ # Copyright (c) 2007-2022 Juan Linietsky, Ariel Manzur. # Copyright (c) 2014-2022 Godot Engine contributors (cf. AUTHORS.md). # This file is distributed under the same license as the Godot source code. -# Julen Irazoki <rktzbkr.julen@gmail.com>, 2019. +# Julen Irazoki <rktzbkr.julen@gmail.com>, 2019, 2022. # Osoitz <oelkoro@gmail.com>, 2019, 2020. # Erik Zubiria <erik@ezsd.net>, 2021. # Sergio Varela <sergitroll9@gmail.com>, 2021. @@ -11,15 +11,15 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-05-23 21:52+0000\n" -"Last-Translator: Gorka Egino <gorkainventor@gmail.com>\n" +"PO-Revision-Date: 2022-11-06 03:12+0000\n" +"Last-Translator: Julen Irazoki <rktzbkr.julen@gmail.com>\n" "Language-Team: Basque <https://hosted.weblate.org/projects/godot-engine/" "godot/eu/>\n" "Language: eu\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.13-dev\n" +"X-Generator: Weblate 4.14.2\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -2064,7 +2064,7 @@ msgstr "" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" -msgstr "" +msgstr "Seinaleak" #: editor/connections_dialog.cpp msgid "Filter signals" @@ -3676,7 +3676,7 @@ msgstr "" #: editor/editor_network_profiler.cpp editor/editor_node.cpp #: scene/main/node.cpp scene/resources/default_theme/default_theme.cpp msgid "Node" -msgstr "" +msgstr "Nodoa" #: editor/editor_network_profiler.cpp msgid "Incoming RPC" @@ -12662,9 +12662,10 @@ msgstr "Atxikitze aukerak" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14022,12 +14023,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22940,6 +22940,15 @@ msgstr "Ispilua" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Atxikitze ezarpenak" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/fa.po b/editor/translations/fa.po index 28371fdd50..ad2a56e408 100644 --- a/editor/translations/fa.po +++ b/editor/translations/fa.po @@ -32,13 +32,14 @@ # 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. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-19 05:22+0000\n" -"Last-Translator: Ali Jafari <ali.jafari.sn@gmail.com>\n" +"PO-Revision-Date: 2022-11-16 22:47+0000\n" +"Last-Translator: 2g.2d.2t <2g.2d.2t@gmail.com>\n" "Language-Team: Persian <https://hosted.weblate.org/projects/godot-engine/" "godot/fa/>\n" "Language: fa\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.14.1\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -314,9 +315,8 @@ msgid "Data Array" msgstr "آرایه داده" #: core/io/stream_peer_ssl.cpp -#, fuzzy msgid "Blocking Handshake" -msgstr "مسدود کردن دست دادن" +msgstr "مسدود کردن تکان دادن دست" #: core/io/udp_server.cpp msgid "Max Pending Connections" @@ -533,7 +533,6 @@ msgid "Velocity" msgstr "سرعت" #: core/os/input_event.cpp -#, fuzzy msgid "Instrument" msgstr "ابزار" @@ -699,9 +698,8 @@ msgid "UI Select" msgstr "انتخاب رابط کاربری" #: core/project_settings.cpp -#, fuzzy msgid "UI Cancel" -msgstr "لغو" +msgstr "لغو رابط کاربری" #: core/project_settings.cpp #, fuzzy @@ -13185,9 +13183,10 @@ msgstr "تنها در قسمت انتخاب شده" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14613,13 +14612,13 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "" +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "ناتوان در گشودن پروژه" #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -23946,6 +23945,15 @@ msgstr "بازتاب" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "مرتب‌سازی:" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/fi.po b/editor/translations/fi.po index bb73facb22..8aeba71bff 100644 --- a/editor/translations/fi.po +++ b/editor/translations/fi.po @@ -13,13 +13,14 @@ # Matti Niskanen <matti.t.niskanen@gmail.com>, 2020. # Severi Vidnäs <severi.vidnas@gmail.com>, 2021. # Akseli Pihlajamaa <akselijuhanipihlajamaa@gmail.com>, 2022. +# Hannu Lammi <hpl@kapsi.fi>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-11 22:22+0000\n" -"Last-Translator: Akseli Pihlajamaa <akselijuhanipihlajamaa@gmail.com>\n" +"PO-Revision-Date: 2022-10-27 01:11+0000\n" +"Last-Translator: Hannu Lammi <hpl@kapsi.fi>\n" "Language-Team: Finnish <https://hosted.weblate.org/projects/godot-engine/" "godot/fi/>\n" "Language: fi\n" @@ -27,7 +28,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.14.1-dev\n" +"X-Generator: Weblate 4.14.2-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -137,9 +138,8 @@ msgstr "Telakan sijainti" #: scene/resources/primitive_meshes.cpp scene/resources/sky.cpp #: scene/resources/style_box.cpp scene/resources/texture.cpp #: scene/resources/visual_shader.cpp servers/visual_server.cpp -#, fuzzy msgid "Size" -msgstr "Koko:" +msgstr "Koko" #: core/bind/core_bind.cpp msgid "Endian Swap" @@ -152,7 +152,7 @@ msgstr "Editori" #: core/bind/core_bind.cpp msgid "Print Error Messages" -msgstr "" +msgstr "Tulosta virheilmoitukset" #: core/bind/core_bind.cpp #, fuzzy @@ -195,7 +195,7 @@ msgstr "Haun tulokset" #: core/command_queue_mt.cpp core/message_queue.cpp main/main.cpp msgid "Memory" -msgstr "" +msgstr "Muisti" #: core/command_queue_mt.cpp core/message_queue.cpp #: core/register_core_types.cpp drivers/gles2/rasterizer_canvas_base_gles2.cpp @@ -458,7 +458,7 @@ msgstr "Fyysinen avain" #: core/os/input_event.cpp msgid "Unicode" -msgstr "" +msgstr "Unicode" #: core/os/input_event.cpp msgid "Echo" @@ -486,7 +486,7 @@ msgstr "Hiiren painikkeen indeksi:" #: core/os/input_event.cpp msgid "Doubleclick" -msgstr "" +msgstr "Kaksoisnapsautus" #: core/os/input_event.cpp msgid "Tilt" @@ -510,9 +510,8 @@ msgstr "Suhteellinen tarttuminen" #: scene/3d/cpu_particles.cpp scene/3d/interpolated_camera.cpp #: scene/animation/animation_player.cpp scene/resources/environment.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Speed" -msgstr "Nopeus:" +msgstr "Nopeus" #: core/os/input_event.cpp editor/project_settings_editor.cpp #: scene/3d/sprite_3d.cpp @@ -525,9 +524,8 @@ msgid "Axis Value" msgstr "Kiinnitä arvo" #: core/os/input_event.cpp modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Index" -msgstr "Indeksi:" +msgstr "Indeksi" #: core/os/input_event.cpp editor/project_settings_editor.cpp #: modules/visual_script/visual_script_nodes.cpp @@ -639,15 +637,15 @@ msgstr "Toimintakyvytön osanen" #: core/project_settings.cpp msgid "Use Hidden Project Data Directory" -msgstr "" +msgstr "Käytä piilotettua projektin datahakemistoa" #: core/project_settings.cpp msgid "Use Custom User Dir" -msgstr "" +msgstr "Käytä mukautettua käyttäjähakemistoa" #: core/project_settings.cpp msgid "Custom User Dir Name" -msgstr "" +msgstr "Mukautetun käyttäjähakemiston nimi" #: core/project_settings.cpp main/main.cpp #: platform/javascript/export/export.cpp platform/osx/export/export.cpp @@ -660,7 +658,7 @@ msgstr "Näytä kaikki" #: modules/opensimplex/noise_texture.cpp scene/2d/line_2d.cpp #: scene/3d/label_3d.cpp scene/gui/text_edit.cpp scene/resources/texture.cpp msgid "Width" -msgstr "" +msgstr "Leveys" #: core/project_settings.cpp main/main.cpp modules/csg/csg_shape.cpp #: modules/gltf/gltf_node.cpp modules/opensimplex/noise_texture.cpp @@ -674,7 +672,7 @@ msgstr "Valo" #: core/project_settings.cpp msgid "Always On Top" -msgstr "" +msgstr "Aina päällimmäisenä" #: core/project_settings.cpp #, fuzzy @@ -818,7 +816,7 @@ msgstr " (fyysinen)" #: scene/3d/physics_body.cpp scene/resources/world.cpp #: servers/physics/space_sw.cpp servers/physics_server.cpp msgid "3D" -msgstr "" +msgstr "3D" #: core/project_settings.cpp #, fuzzy @@ -846,7 +844,7 @@ msgstr "Renderöijä:" #: scene/resources/multimesh.cpp servers/visual/visual_server_scene.cpp #: servers/visual_server.cpp msgid "Quality" -msgstr "" +msgstr "Laatu" #: core/project_settings.cpp scene/gui/file_dialog.cpp #: scene/main/scene_tree.cpp scene/resources/navigation_mesh.cpp @@ -915,15 +913,15 @@ msgstr "" #: core/project_settings.cpp msgid "Zlib" -msgstr "" +msgstr "Zlib" #: core/project_settings.cpp msgid "Gzip" -msgstr "" +msgstr "Gzip" #: core/project_settings.cpp platform/android/export/export.cpp msgid "Android" -msgstr "" +msgstr "Android" #: core/project_settings.cpp msgid "Modules" @@ -931,7 +929,7 @@ msgstr "" #: core/register_core_types.cpp msgid "TCP" -msgstr "" +msgstr "TCP" #: core/register_core_types.cpp #, fuzzy @@ -948,7 +946,7 @@ msgstr "" #: core/register_core_types.cpp editor/editor_settings.cpp main/main.cpp msgid "SSL" -msgstr "" +msgstr "SSL" #: core/register_core_types.cpp main/main.cpp #, fuzzy @@ -1047,7 +1045,7 @@ msgstr "" #: servers/physics_2d/space_2d_sw.cpp servers/physics_2d_server.cpp #: servers/visual_server.cpp msgid "2D" -msgstr "" +msgstr "2D" #: drivers/gles2/rasterizer_canvas_base_gles2.cpp #: drivers/gles3/rasterizer_canvas_base_gles3.cpp @@ -1126,7 +1124,7 @@ msgstr "" #: drivers/gles3/rasterizer_scene_gles3.cpp scene/resources/environment.cpp msgid "High Quality" -msgstr "" +msgstr "Korkea laatu" #: drivers/gles3/rasterizer_storage_gles3.cpp msgid "Blend Shape Max Buffer Size (KB)" @@ -1399,9 +1397,8 @@ msgid "Remove this track." msgstr "Poista tämä raita." #: editor/animation_track_editor.cpp -#, fuzzy msgid "Time (s):" -msgstr "Aika (s): " +msgstr "Aika (s):" #: editor/animation_track_editor.cpp #, fuzzy @@ -1680,9 +1677,8 @@ msgid "Add Method Track Key" msgstr "Lisää metodikutsuraidan avainruutu" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Method not found in object:" -msgstr "Metodia ei löydy objektista: " +msgstr "Metodia ei löydy objektista:" #: editor/animation_track_editor.cpp msgid "Anim Move Keys" @@ -1702,7 +1698,7 @@ msgstr "Metodit" #: editor/animation_track_editor.cpp msgid "Bezier" -msgstr "" +msgstr "Bezier" #: editor/animation_track_editor.cpp #: modules/visual_script/visual_script_editor.cpp @@ -2857,7 +2853,7 @@ msgstr "Valitse" #: editor/editor_export.cpp msgid "Project export for platform:" -msgstr "" +msgstr "Projektin vienti alustalle:" #: editor/editor_export.cpp #, fuzzy @@ -2865,14 +2861,12 @@ msgid "Completed with warnings." msgstr "Kopioi solmun polku" #: editor/editor_export.cpp -#, fuzzy msgid "Completed successfully." -msgstr "Paketti asennettu onnistuneesti!" +msgstr "Paketti asennettu onnistuneesti." #: editor/editor_export.cpp -#, fuzzy msgid "Failed." -msgstr "Epäonnistui:" +msgstr "Epäonnistui." #: editor/editor_export.cpp msgid "Storing File:" @@ -2897,14 +2891,12 @@ msgid "Cannot create file \"%s\"." msgstr "Kansiota ei voitu luoda." #: editor/editor_export.cpp -#, fuzzy msgid "Failed to export project files." -msgstr "Ei voitu viedä projektin tiedostoja" +msgstr "Ei voitu viedä projektin tiedostoja." #: editor/editor_export.cpp -#, fuzzy msgid "Can't open file to read from path \"%s\"." -msgstr "Ei voida avata tiedostoa kirjoitettavaksi:" +msgstr "Ei voida avata tiedostoa luettavaksi polulta \"%s\"." #: editor/editor_export.cpp #, fuzzy @@ -2986,7 +2978,7 @@ msgstr "Värioperaattori." #: editor/editor_export.cpp msgid "64 Bits" -msgstr "" +msgstr "64 bittiä" #: editor/editor_export.cpp msgid "Embed PCK" @@ -2999,19 +2991,19 @@ msgstr "Tekstuurialue" #: editor/editor_export.cpp msgid "BPTC" -msgstr "" +msgstr "BPTC" #: editor/editor_export.cpp platform/osx/export/export.cpp msgid "S3TC" -msgstr "" +msgstr "S3TC" #: editor/editor_export.cpp platform/osx/export/export.cpp msgid "ETC" -msgstr "" +msgstr "ETC" #: editor/editor_export.cpp platform/osx/export/export.cpp msgid "ETC2" -msgstr "" +msgstr "ETC2" #: editor/editor_export.cpp #, fuzzy @@ -3036,19 +3028,16 @@ msgid "Prepare Template" msgstr "Hallinnoi malleja" #: editor/editor_export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "The given export path doesn't exist." -msgstr "Annettu vientipolku ei ole olemassa:" +msgstr "Annettu vientipolku ei ole olemassa." #: editor/editor_export.cpp platform/javascript/export/export.cpp -#, fuzzy msgid "Template file not found: \"%s\"." -msgstr "Mallitiedostoa ei löytynyt:" +msgstr "Mallitiedostoa \"%s\" ei löytynyt." #: editor/editor_export.cpp -#, fuzzy msgid "Failed to copy export template." -msgstr "Virheellinen vientimalli:" +msgstr "Vientimallin kopiointi epäonnistui." #: editor/editor_export.cpp platform/windows/export/export.cpp #: platform/x11/export/export.cpp @@ -5253,9 +5242,8 @@ msgid "Size:" msgstr "Koko:" #: editor/editor_properties_array_dict.cpp -#, fuzzy msgid "Page:" -msgstr "Sivu: " +msgstr "Sivu:" #: editor/editor_properties_array_dict.cpp #: editor/plugins/theme_editor_plugin.cpp @@ -5548,9 +5536,8 @@ msgid "File Dialog" msgstr "XForm-ikkuna" #: editor/editor_settings.cpp -#, fuzzy msgid "Thumbnail Size" -msgstr "Pienoiskuva..." +msgstr "Pienoiskuvan koko" #: editor/editor_settings.cpp msgid "Docks" @@ -6212,9 +6199,8 @@ msgid "Auto Save" msgstr "Jaa automaattisesti" #: editor/editor_settings.cpp -#, fuzzy msgid "Save Before Running" -msgstr "Tallenna kohtaus ennen suorittamista..." +msgstr "Tallenna kohtaus ennen suorittamista" #: editor/editor_settings.cpp #, fuzzy @@ -6300,9 +6286,8 @@ msgstr "Varastoidaan tiedostoa:" #: editor/editor_settings.cpp platform/javascript/export/export.cpp #: platform/uwp/export/export.cpp #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Background Color" -msgstr "Virheellinen taustaväri." +msgstr "Taustaväri" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -8450,9 +8435,8 @@ msgid "Set the end animation. This is useful for sub-transitions." msgstr "Aseta loppuanimaatio. Tämä on hyödyllistä alisiirtymiä varten." #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Transition:" -msgstr "Siirtymä: " +msgstr "Siirtymä:" #: editor/plugins/animation_state_machine_editor.cpp msgid "Play Mode:" @@ -10226,9 +10210,8 @@ msgid "Volume" msgstr "Tilavuus" #: editor/plugins/particles_editor_plugin.cpp -#, fuzzy msgid "Emission Source:" -msgstr "Emission lähde: " +msgstr "Emission lähde:" #: editor/plugins/particles_editor_plugin.cpp msgid "A processor material of type 'ParticlesMaterial' is required." @@ -11879,19 +11862,16 @@ msgid "Sprite" msgstr "Sprite" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Simplification:" -msgstr "Yksinkertaistus: " +msgstr "Yksinkertaistus:" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Shrink (Pixels):" -msgstr "Kutista (pikseleissä): " +msgstr "Kutista (pikseleissä):" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Grow (Pixels):" -msgstr "Suurrennus (pikseleissä): " +msgstr "Suurrennus (pikseleissä):" #: editor/plugins/sprite_editor_plugin.cpp msgid "Update Preview" @@ -13150,9 +13130,10 @@ msgstr "Tarttumisen asetukset" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Siirtymä:" @@ -14481,14 +14462,12 @@ msgid "More Info..." msgstr "Siirrä..." #: editor/project_export.cpp -#, fuzzy msgid "Export PCK/Zip..." -msgstr "Vie PCK/Zip" +msgstr "Vie PCK/Zip..." #: editor/project_export.cpp -#, fuzzy msgid "Export Project..." -msgstr "Vie projekti" +msgstr "Vie projekti..." #: editor/project_export.cpp msgid "Export All" @@ -14500,9 +14479,8 @@ msgid "Choose an export mode:" msgstr "Ole hyvä ja valitse tyhjä kansio." #: editor/project_export.cpp -#, fuzzy msgid "Export All..." -msgstr "Vie kaikki" +msgstr "Vie kaikki..." #: editor/project_export.cpp editor/project_manager.cpp msgid "ZIP File" @@ -14586,16 +14564,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Virheellinen projektin polku (muuttuiko mikään?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Tiedoston project.godot lataus projektin polusta epäonnistui (virhe %d). Se " "saattaa puuttua tai olla vioittunut." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "Ei voitu muokata project.godot tiedostoa projektin polussa." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Ei voida avata projektia kohteesta '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -17139,9 +17118,8 @@ msgid "Disabled GDNative Singleton" msgstr "GDNative singleton on poistettu käytöstä" #: modules/gdnative/gdnative_library_singleton_editor.cpp -#, fuzzy msgid "Libraries:" -msgstr "Kirjastot: " +msgstr "Kirjastot:" #: modules/gdnative/nativescript/nativescript.cpp #, fuzzy @@ -18063,18 +18041,16 @@ msgstr "" "korjaa solmusi." #: modules/visual_script/visual_script.cpp -#, fuzzy msgid "Node returned an invalid sequence output:" -msgstr "Solmu palautti virheellisen jakson tulosteen: " +msgstr "Solmu palautti virheellisen jakson tulosteen:" #: modules/visual_script/visual_script.cpp msgid "Found sequence bit but not the node in the stack, report bug!" msgstr "Jaksobitti löytyi, mutta solmua ei löydy pinosta, raportoi bugi!" #: modules/visual_script/visual_script.cpp -#, fuzzy msgid "Stack overflow with stack depth:" -msgstr "Pinon ylivuoto pinosyvyydellä: " +msgstr "Pinon ylivuoto pinosyvyydellä:" #: modules/visual_script/visual_script.cpp #, fuzzy @@ -18444,18 +18420,16 @@ msgid "for (elem) in (input):" msgstr "kullekin (elementille) (syötteessä):" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Input type not iterable:" -msgstr "Syötetyyppi ei ole iteroitavissa: " +msgstr "Syötetyyppi ei ole iteroitavissa:" #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator became invalid" msgstr "Iteraattori muuttui epäkelvoksi" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Iterator became invalid:" -msgstr "Iteraattori muuttui epäkelvoksi: " +msgstr "Iteraattori muuttui epäkelvoksi:" #: modules/visual_script/visual_script_flow_control.cpp msgid "Sequence" @@ -18613,19 +18587,16 @@ msgstr "Laadi taulukko" #: modules/visual_script/visual_script_nodes.cpp scene/resources/material.cpp #: scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Operator" -msgstr "Iteraattori" +msgstr "Operaattori" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "Invalid argument of type:" -msgstr ": Virheellinen argumentti tyyppiä: " +msgstr "Virheellinen argumentti tyyppiä:" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "Invalid arguments:" -msgstr ": Virheelliset argumentit: " +msgstr "Virheelliset argumentit:" #: modules/visual_script/visual_script_nodes.cpp msgid "a if cond, else b" @@ -18637,14 +18608,12 @@ msgid "Var Name" msgstr "Nimi" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "VariableGet not found in script:" -msgstr "VariableGet ei löytynyt skriptistä: " +msgstr "VariableGet ei löytynyt skriptistä:" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "VariableSet not found in script:" -msgstr "VariableSet ei löytynyt skriptistä: " +msgstr "VariableSet ei löytynyt skriptistä:" #: modules/visual_script/visual_script_nodes.cpp msgid "Preload" @@ -19341,15 +19310,13 @@ msgid "Code Signing" msgstr "Allekirjoitetaan DMG-koodi" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "'apksigner' could not be found. Please check that the command is available " "in the Android SDK build-tools directory. The resulting %s is unsigned." msgstr "" -"'apksigner' ei löydy.\n" -"Ole hyvä ja tarkista, että komento on saatavilla Android SDK build-tools " -"hakemistossa.\n" -"Tuloksena syntynyt %s on allekirjoittamaton." +"'apksigner' ei löydy. Ole hyvä ja tarkista, että komento on saatavilla " +"Android SDK build-tools hakemistossa. Tuloksena syntynyt %s on " +"allekirjoittamaton." #: platform/android/export/export_plugin.cpp msgid "Signing debug %s..." @@ -19364,9 +19331,8 @@ msgid "Could not find keystore, unable to export." msgstr "Keystorea ei löytynyt, ei voida viedä." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Could not start apksigner executable." -msgstr "Aliprosessia ei voitu käynnistää!" +msgstr "apkgsigner-käynnistystiedostoa ei voitu käynnistää." #: platform/android/export/export_plugin.cpp msgid "'apksigner' returned with error #%d" @@ -19400,9 +19366,8 @@ msgstr "" "Virheellinen tiedostonimi! Android APK tarvitsee *.apk tiedostopäätteen." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Unsupported export format!" -msgstr "Vientiformaatti ei ole tuettu!\n" +msgstr "Vientiformaatti ei ole tuettu!" #: platform/android/export/export_plugin.cpp msgid "" @@ -19413,28 +19378,24 @@ msgstr "" "versiotietoa. Ole hyvä ja uudelleenasenna se 'Projekti'-valikosta." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Android build version mismatch: Template installed: %s, Godot version: %s. " "Please reinstall Android build template from 'Project' menu." msgstr "" -"Androidin käännösversion epäyhteensopivuus:\n" -" Malli asennettu: %s\n" -" Godotin versio: %s\n" -"Ole hyvä ja uudelleenasenna Androidin käännösmalli 'Projekti'-valikosta." +"Androidin käännösversion epäyhteensopivuus: Malli asennettu: %s, Godotin " +"versio: %s. Ole hyvä ja uudelleenasenna Androidin käännösmalli 'Projekti'-" +"valikosta." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Unable to overwrite res://android/build/res/*.xml files with project name." msgstr "" "Ei voitu ylikirjoittaa res://android/build/res/*.xml tiedostoja projektin " -"nimellä" +"nimellä." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Could not export project files to gradle project." -msgstr "Ei voitu viedä projektitiedostoja gradle-projektiksi.\n" +msgstr "Ei voitu viedä projektitiedostoja gradle-projektiksi." #: platform/android/export/export_plugin.cpp msgid "Could not write expansion package file!" @@ -19445,12 +19406,11 @@ msgid "Building Android Project (gradle)" msgstr "Käännetään Android-projektia (gradle)" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Building of Android project failed, check output for the error. " "Alternatively visit docs.godotengine.org for Android build documentation." msgstr "" -"Android-projektin käännös epäonnistui, tarkista virhe tulosteesta.\n" +"Android-projektin käännös epäonnistui, tarkista virhe tulosteesta. " "Vaihtoehtoisesti, lue docs.godotengine.org sivustolta Androidin " "käännösdokumentaatio." @@ -19467,30 +19427,25 @@ msgstr "" "tulosteet gradle-projektin hakemistosta." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Package not found: \"%s\"." -msgstr "Pakettia ei löytynyt: %s" +msgstr "Pakettia ei löytynyt: \"%s\"." #: platform/android/export/export_plugin.cpp msgid "Creating APK..." msgstr "Luodaan APK:ta..." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Could not find template APK to export: \"%s\"." -msgstr "" -"Ei löydetty APK-vientimallia vientiä varten:\n" -"%s" +msgstr "Ei löydetty APK-vientimallia vientiä varten: \"%s\"." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Missing libraries in the export template for the selected architectures: %s. " "Please build a template with all required libraries, or uncheck the missing " "architectures in the export preset." msgstr "" -"Vientimalleista puuttuu kirjastoja valituille arkkitehtuureille: %s.\n" -"Ole hyvä ja kokoa malli, jossa on kaikki tarvittavat kirjastot, tai poista " +"Vientimalleista puuttuu kirjastoja valituille arkkitehtuureille: %s. Ole " +"hyvä ja kokoa malli, jossa on kaikki tarvittavat kirjastot, tai poista " "puuttuvien arkkitehtuurien valinta viennin esiasetuksista." #: platform/android/export/export_plugin.cpp @@ -19498,9 +19453,8 @@ msgid "Adding files..." msgstr "Lisätään tiedostoja..." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Could not export project files." -msgstr "Ei voitu viedä projektin tiedostoja" +msgstr "Ei voitu viedä projektin tiedostoja." #: platform/android/export/export_plugin.cpp msgid "Aligning APK..." @@ -19779,19 +19733,16 @@ msgid "Run exported HTML in the system's default browser." msgstr "Suorita viety HTML järjestelmän oletusselaimessa." #: platform/javascript/export/export.cpp -#, fuzzy msgid "Could not open template for export: \"%s\"." -msgstr "Mallin avaus vientiin epäonnistui:" +msgstr "Mallin avaus vientiin epäonnistui: \"%s\"." #: platform/javascript/export/export.cpp -#, fuzzy msgid "Invalid export template: \"%s\"." -msgstr "Virheellinen vientimalli:" +msgstr "Virheellinen vientimalli: \"%s\"." #: platform/javascript/export/export.cpp -#, fuzzy msgid "Could not write file: \"%s\"." -msgstr "Ei voitu kirjoittaa tiedostoa:" +msgstr "Ei voitu kirjoittaa tiedostoa: \"%s\"." #: platform/javascript/export/export.cpp platform/osx/export/export.cpp #, fuzzy @@ -19799,9 +19750,8 @@ msgid "Icon Creation" msgstr "Aseta marginaali" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Could not read file: \"%s\"." -msgstr "Ei voitu lukea tiedostoa:" +msgstr "Ei voitu lukea tiedostoa: \"%s\"." #: platform/javascript/export/export.cpp msgid "PWA" @@ -19882,19 +19832,16 @@ msgid "Icon 512 X 512" msgstr "" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Could not read HTML shell: \"%s\"." -msgstr "Ei voitu lukea HTML tulkkia:" +msgstr "Ei voitu lukea HTML tulkkia: \"%s\"." #: platform/javascript/export/export.cpp -#, fuzzy msgid "Could not create HTTP server directory: %s." -msgstr "Ei voitu luoda HTTP-palvelimen hakemistoa:" +msgstr "Ei voitu luoda HTTP-palvelimen hakemistoa: %s." #: platform/javascript/export/export.cpp -#, fuzzy msgid "Error starting HTTP server: %d." -msgstr "Virhe käynnistettäessä HTTP-palvelinta:" +msgstr "Virhe käynnistettäessä HTTP-palvelinta: %d." #: platform/javascript/export/export.cpp msgid "Web" @@ -20191,9 +20138,8 @@ msgid "Could not open icon file \"%s\"." msgstr "Ei voitu viedä projektin tiedostoja" #: platform/osx/export/export.cpp -#, fuzzy msgid "Could not start xcrun executable." -msgstr "Aliprosessia ei voitu käynnistää!" +msgstr "xcrun-käynnistystiedostoa ei voitu käynnistää." #: platform/osx/export/export.cpp #, fuzzy @@ -20280,9 +20226,8 @@ msgid "DMG Creation" msgstr "Suunnat" #: platform/osx/export/export.cpp -#, fuzzy msgid "Could not start hdiutil executable." -msgstr "Aliprosessia ei voitu käynnistää!" +msgstr "hkiutil-käynnistystiedostoa ei voitu käynnistää." #: platform/osx/export/export.cpp msgid "`hdiutil create` failed - file exists." @@ -20302,9 +20247,8 @@ msgid "Could not find template app to export: \"%s\"." msgstr "Ei löydetty app-vientimallia vientiä varten:" #: platform/osx/export/export.cpp -#, fuzzy msgid "Invalid export format." -msgstr "Virheellinen vientimalli:" +msgstr "Virheellinen vientimalli." #: platform/osx/export/export.cpp msgid "" @@ -20369,9 +20313,8 @@ msgid "ZIP Creation" msgstr "Projekti" #: platform/osx/export/export.cpp -#, fuzzy msgid "Could not open file to read from path \"%s\"." -msgstr "Ei voitu viedä projektitiedostoja gradle-projektiksi.\n" +msgstr "Ei voitu avata luettavaksi tiedostoa polulta \"%s\"." #: platform/osx/export/export.cpp msgid "Invalid bundle identifier:" @@ -20839,9 +20782,8 @@ msgid "Signtool failed to sign executable: %s." msgstr "Virheellinen käynnistystiedosto." #: platform/windows/export/export.cpp -#, fuzzy msgid "Failed to remove temporary file \"%s\"." -msgstr "Väliaikaista tiedosta ei voida poistaa:" +msgstr "Väliaikaista tiedosta ei voida poistaa: \"%s\"." #: platform/windows/export/export.cpp msgid "" @@ -21944,9 +21886,8 @@ msgstr "Matkaa" #: scene/2d/node_2d.cpp scene/2d/polygon_2d.cpp scene/3d/spatial.cpp #: scene/main/canvas_layer.cpp -#, fuzzy msgid "Rotation Degrees" -msgstr "Kierto %s astetta." +msgstr "Kierto asteina" #: scene/2d/node_2d.cpp scene/3d/spatial.cpp #, fuzzy @@ -24204,6 +24145,15 @@ msgstr "Virhe" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Lajittele" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" @@ -25137,9 +25087,8 @@ msgid "Max Value" msgstr "Arvo" #: scene/gui/range.cpp -#, fuzzy msgid "Page" -msgstr "Sivu: " +msgstr "Sivu" #: scene/gui/range.cpp #, fuzzy @@ -25575,9 +25524,8 @@ msgid "Max Redirects" msgstr "" #: scene/main/http_request.cpp -#, fuzzy msgid "Timeout" -msgstr "Aikakatkaisu." +msgstr "Aikakatkaisu" #: scene/main/node.cpp msgid "" @@ -27045,9 +26993,8 @@ msgid "Distance" msgstr "Poimintaetäisyys:" #: scene/resources/environment.cpp -#, fuzzy msgid "Transition" -msgstr "Siirtymä: " +msgstr "Siirtymä" #: scene/resources/environment.cpp msgid "DOF Near Blur" @@ -28401,9 +28348,8 @@ msgid "Physics Engine" msgstr "Fysiikkaruutujen %" #: servers/physics_server.cpp -#, fuzzy msgid "Center Of Mass" -msgstr "Keskitä vasemmalle" +msgstr "Massakeskipiste" #: servers/physics_server.cpp msgid "Principal Inertia Axes" @@ -28459,29 +28405,24 @@ msgid "VRAM Compression" msgstr "Lauseke" #: servers/visual_server.cpp -#, fuzzy msgid "Import BPTC" -msgstr "Tuo" +msgstr "Tuo BPTC" #: servers/visual_server.cpp -#, fuzzy msgid "Import S3TC" -msgstr "Tuo" +msgstr "Tuo S3TC" #: servers/visual_server.cpp -#, fuzzy msgid "Import ETC" -msgstr "Tuo" +msgstr "Tuo ETC" #: servers/visual_server.cpp -#, fuzzy msgid "Import ETC2" -msgstr "Tuo" +msgstr "Tuo ETC2" #: servers/visual_server.cpp -#, fuzzy msgid "Import PVRTC" -msgstr "Tuo teema" +msgstr "Tuo PVRTC" #: servers/visual_server.cpp msgid "Lossless Compression" @@ -28612,9 +28553,8 @@ msgid "Ninepatch Mode" msgstr "Interpolaatiotila" #: servers/visual_server.cpp -#, fuzzy msgid "OpenGL" -msgstr "Avaa" +msgstr "OpenGL" #: servers/visual_server.cpp msgid "Batching Send Null" diff --git a/editor/translations/fil.po b/editor/translations/fil.po index e6d675f5ca..71673d8255 100644 --- a/editor/translations/fil.po +++ b/editor/translations/fil.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-08-30 03:11+0000\n" +"PO-Revision-Date: 2022-12-03 04:48+0000\n" "Last-Translator: Marco Santos <enum.scima@gmail.com>\n" "Language-Team: Filipino <https://hosted.weblate.org/projects/godot-engine/" "godot/fil/>\n" @@ -21,7 +21,7 @@ msgstr "" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=2; plural=n != 1 && n != 2 && n != 3 && (n % 10 == 4 " "|| n % 10 == 6 || n % 10 == 9);\n" -"X-Generator: Weblate 4.14.1-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -300,7 +300,7 @@ msgstr "Max na Nakabinbing Koneksyon" #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Invalid type argument to convert(), use TYPE_* constants." msgstr "" -"Invalid na argumento ng type sa convert(), gumamit ng mga TYPE_* constant." +"Invalid na type argument sa convert(), gamitin ang mga TYPE_* constant." #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp msgid "Expected a string of length 1 (a character)." @@ -310,7 +310,7 @@ msgstr "Inaasahan ang isang string na may habang 1 (karakter)." #: modules/mono/glue/gd_glue.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Not enough bytes for decoding bytes, or invalid format." -msgstr "Kulang sa bytes para i-decode ang bytes, o invalid na format." +msgstr "Kulang sa espasyo para ma-decode ang bytes, o invalid na format." #: core/math/expression.cpp msgid "Invalid input %d (not passed) in expression" @@ -318,23 +318,23 @@ msgstr "Invalid na input na %d (di pinasa) sa expression" #: core/math/expression.cpp msgid "self can't be used because instance is null (not passed)" -msgstr "Di magagamit ang self dahil null ang instance (di pinasa)" +msgstr "Hindi magagamit ang self dahil null ang instance (di pinasa)" #: core/math/expression.cpp msgid "Invalid operands to operator %s, %s and %s." -msgstr "Mga invalid na operand sa operator %s, %s, at %s." +msgstr "Mga invalid na operand aa operator %s, %s, at %s." #: core/math/expression.cpp msgid "Invalid index of type %s for base type %s" -msgstr "Invalid na index ng type na %s para sa base type na %s" +msgstr "Invalid na index ng type %s para sa base type %s" #: core/math/expression.cpp msgid "Invalid named index '%s' for base type %s" -msgstr "Invalid na napangalanang index na '%s' para sa base type na %s" +msgstr "Invalid na may pangalang index '%s' para sa base type %s" #: core/math/expression.cpp msgid "Invalid arguments to construct '%s'" -msgstr "Mga invalid na argumento para i-construct ang '%s'" +msgstr "Mga invalid na argument para i-construct ang '%s'" #: core/math/expression.cpp msgid "On call to '%s':" @@ -1033,7 +1033,7 @@ msgstr "Max na Laki ng Buffer ng Blend Shape (KB)" #. TRANSLATORS: Adjective, refers to the mode for Bezier handles (Free, Balanced, Mirror). #: editor/animation_bezier_editor.cpp msgid "Free" -msgstr "Libre" +msgstr "Malaya" #: editor/animation_bezier_editor.cpp msgid "Balanced" @@ -1053,51 +1053,51 @@ msgstr "Value:" #: editor/animation_bezier_editor.cpp msgid "Insert Key Here" -msgstr "Magpasok ng Key Rito" +msgstr "Mag-key rito" #: editor/animation_bezier_editor.cpp msgid "Duplicate Selected Key(s)" -msgstr "Doblehin ang (mga) Napiling Key" +msgstr "Doblehin ang (mga) napiling key" #: editor/animation_bezier_editor.cpp msgid "Delete Selected Key(s)" -msgstr "Burahin ang (mga) Napiling Key" +msgstr "Burahin ang (mga) napiling key" #: editor/animation_bezier_editor.cpp msgid "Add Bezier Point" -msgstr "Magdagdag ng Bezier Point" +msgstr "Magdagdag ng bezier point" #: editor/animation_bezier_editor.cpp msgid "Move Bezier Points" -msgstr "Maglipat ng (mga) Bezier Point" +msgstr "Maglipat ng (mga) bezier point" #: editor/animation_bezier_editor.cpp editor/animation_track_editor.cpp msgid "Anim Duplicate Keys" -msgstr "Anim Duplicate Keys" +msgstr "I-anim ang mga key sa pagdoble" #: editor/animation_bezier_editor.cpp editor/animation_track_editor.cpp msgid "Anim Delete Keys" -msgstr "Anim Delete Keys" +msgstr "I-anim ang mga key sa pagbura" #: editor/animation_track_editor.cpp msgid "Anim Change Keyframe Time" -msgstr "Anim Change Keyframe Time" +msgstr "I-anim ang oras ng pagpalit keyframe" #: editor/animation_track_editor.cpp msgid "Anim Change Transition" -msgstr "Anim Change Transition" +msgstr "I-anim ang pagpalit transition" #: editor/animation_track_editor.cpp msgid "Anim Change Transform" -msgstr "Anim Change Transform" +msgstr "I-anim ang pagpalit transform" #: editor/animation_track_editor.cpp msgid "Anim Change Keyframe Value" -msgstr "Anim Change Keyframe Value" +msgstr "I-anim ang value ng pagpalit keyframe" #: editor/animation_track_editor.cpp msgid "Anim Change Call" -msgstr "Anim Change Call" +msgstr "I-anim ang pagpalit call" #: editor/animation_track_editor.cpp scene/2d/animated_sprite.cpp #: scene/2d/sprite.cpp scene/3d/sprite_3d.cpp @@ -1207,36 +1207,36 @@ msgstr "Anim Multi Change Call" #: editor/animation_track_editor.cpp msgid "Change Animation Length" -msgstr "Baguhin ang Haba ng Animation" +msgstr "Baguhin ang haba ng animation" #: editor/animation_track_editor.cpp #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Change Animation Loop" -msgstr "Baguhin ang Animation Loop" +msgstr "Baguhin ang loop sa animation" #: editor/animation_track_editor.cpp msgid "Property Track" -msgstr "Property Track" +msgstr "Katangian" #: editor/animation_track_editor.cpp msgid "3D Transform Track" -msgstr "3D Transform Track" +msgstr "3D Transform" #: editor/animation_track_editor.cpp msgid "Call Method Track" -msgstr "Call Method Track" +msgstr "Call Method" #: editor/animation_track_editor.cpp msgid "Bezier Curve Track" -msgstr "Bezier Curve Track" +msgstr "Kurbang Bezier" #: editor/animation_track_editor.cpp msgid "Audio Playback Track" -msgstr "Audio Playback Track" +msgstr "Pag-play ng tunog" #: editor/animation_track_editor.cpp msgid "Animation Playback Track" -msgstr "Animation Playback Track" +msgstr "Pag-play sa animation" #: editor/animation_track_editor.cpp msgid "Animation length (frames)" @@ -1248,28 +1248,28 @@ msgstr "Haba ng animation (segundo)" #: editor/animation_track_editor.cpp msgid "Add Track" -msgstr "Magdagdag ng Track" +msgstr "Magdagdag ng track" #: editor/animation_track_editor.cpp msgid "Animation Looping" -msgstr "Pag-loop sa Animation" +msgstr "I-loop ang animation" #: editor/animation_track_editor.cpp #: modules/visual_script/visual_script_editor.cpp msgid "Functions:" -msgstr "Mga Function:" +msgstr "Mga function:" #: editor/animation_track_editor.cpp msgid "Audio Clips:" -msgstr "Mga Audio Clip:" +msgstr "Mga tunog:" #: editor/animation_track_editor.cpp msgid "Anim Clips:" -msgstr "Mga Anim Clip:" +msgstr "Mga anim clip:" #: editor/animation_track_editor.cpp msgid "Change Track Path" -msgstr "Baguhin ang Track Path" +msgstr "Baguhin ang track path" #: editor/animation_track_editor.cpp msgid "Toggle this track on/off." @@ -1277,15 +1277,15 @@ msgstr "Buksan/isara ang track na ito." #: editor/animation_track_editor.cpp msgid "Update Mode (How this property is set)" -msgstr "Update Mode (kung paano itinatakda ang property na ito)" +msgstr "Update Mode (Kung paano tinakda ang katangian na ito)" #: editor/animation_track_editor.cpp scene/resources/gradient.cpp msgid "Interpolation Mode" -msgstr "Interpolation Mode" +msgstr "Interpolation" #: editor/animation_track_editor.cpp msgid "Loop Wrap Mode (Interpolate end with beginning on loop)" -msgstr "Loop Wrap Mode (ini-interpolate ang dulo sa simula ng loop)" +msgstr "Paikot-ikot (i-interpolate ang dulo sa simula ng loop)" #: editor/animation_track_editor.cpp msgid "Remove this track." @@ -1358,7 +1358,7 @@ msgstr "Mga Anim Clip:" #: editor/animation_track_editor.cpp msgid "Toggle Track Enabled" -msgstr "Nakabukas ang Toggle Track" +msgstr "Nakabukas ang toggle track" #: editor/animation_track_editor.cpp msgid "Continuous" @@ -1378,7 +1378,7 @@ msgstr "I-capture" #: editor/animation_track_editor.cpp msgid "Nearest" -msgstr "Pinakamalapit" +msgstr "Malapit" #: editor/animation_track_editor.cpp editor/plugins/curve_editor_plugin.cpp #: editor/property_editor.cpp scene/2d/physics_body_2d.cpp @@ -1392,20 +1392,20 @@ msgstr "Cubic" #: editor/animation_track_editor.cpp msgid "Clamp Loop Interp" -msgstr "Clamp Loop Interp" +msgstr "I-clamp ang loop interp" #: editor/animation_track_editor.cpp msgid "Wrap Loop Interp" -msgstr "Wrap Loop Interp" +msgstr "I-wrap ang loop interp" #: editor/animation_track_editor.cpp #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert Key" -msgstr "Magpasok ng Key" +msgstr "Magsingit ng key" #: editor/animation_track_editor.cpp msgid "Duplicate Key(s)" -msgstr "Doblehin ang (mga) Key" +msgstr "Doblehin ang (mga) key" #: editor/animation_track_editor.cpp msgid "Add RESET Value(s)" @@ -1413,23 +1413,23 @@ msgstr "Magdagdag ng (mga) RESET value" #: editor/animation_track_editor.cpp msgid "Delete Key(s)" -msgstr "Burahin ang (mga) Key" +msgstr "Burahin ang (mga) key" #: editor/animation_track_editor.cpp msgid "Change Animation Update Mode" -msgstr "Baguhin ang Animation Update Mode" +msgstr "Baguhin ang pag-update sa animation" #: editor/animation_track_editor.cpp msgid "Change Animation Interpolation Mode" -msgstr "Baguhin ang Animation Interpolation Mode" +msgstr "Baguhin ang interpolation ng animation" #: editor/animation_track_editor.cpp msgid "Change Animation Loop Mode" -msgstr "Baguhin ang Animation Loop Mode" +msgstr "Baguhin ang pag-loop sa animation" #: editor/animation_track_editor.cpp msgid "Remove Anim Track" -msgstr "Tanggalin ang Anim Track" +msgstr "Tanggalin ang anim track" #: editor/animation_track_editor.cpp editor/editor_settings.cpp #: editor/plugins/path_editor_plugin.cpp @@ -1448,7 +1448,7 @@ msgstr "" #. TRANSLATORS: %s will be replaced by a phrase describing the target of track. #: editor/animation_track_editor.cpp msgid "Create NEW track for %s and insert key?" -msgstr "" +msgstr "Gumawa ng BAGONG track para sa %s at magsingit ng key?" #: editor/animation_track_editor.cpp msgid "Create %d NEW tracks and insert keys?" @@ -12480,9 +12480,10 @@ msgstr "Pag-snap" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13833,12 +13834,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22508,6 +22508,15 @@ msgstr "Salamin" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Pagsasaayos" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/fr.po b/editor/translations/fr.po index e19c856222..17063caae8 100644 --- a/editor/translations/fr.po +++ b/editor/translations/fr.po @@ -105,13 +105,14 @@ # SCHUTZ Lucas <lucas.schutz0954@gmail.com>, 2022. # EGuillemot <Elouen.Guillemot@gmail.com>, 2022. # Entiz <maxime.salido@gmail.com>, 2022. +# Callim Ethee <callimethee@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-27 21:37+0000\n" -"Last-Translator: Entiz <maxime.salido@gmail.com>\n" +"PO-Revision-Date: 2022-10-10 18:06+0000\n" +"Last-Translator: Helix Sir <vincentbarkmann@gmail.com>\n" "Language-Team: French <https://hosted.weblate.org/projects/godot-engine/" "godot/fr/>\n" "Language: fr\n" @@ -3904,7 +3905,7 @@ msgstr "" #: editor/editor_node.cpp msgid "Could not save one or more scenes!" -msgstr "Impossible de sauver la (les) scènes(s) !" +msgstr "Impossible d'enregistrer la ou les scènes !" #: editor/editor_node.cpp msgid "Save All Scenes" @@ -12942,9 +12943,10 @@ msgstr "Options de magnétisme" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "Décalage" @@ -14366,16 +14368,14 @@ msgstr "Chemin de projet non valide (avez-vous changé quelque chose ?)." #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" -"Impossible de charger le fichier project.godot dans le chemin du projet " -"(erreur %d). Le fichier est manquant ou corrompu." +"Impossible de charger le project à \"%s\" (erreur %d). Il peut être manquant " +"ou corrompu." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "" -"Impossible de modifier le fichier project.godot dans le chemin du projet." +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Impossible d'enregistrer le projet à \"%s\" (erreur %d)." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -19384,7 +19384,7 @@ msgstr "Shell HTML personnalisé" #: platform/javascript/export/export.cpp msgid "Head Include" -msgstr "" +msgstr "Inclure la tête de fichier" #: platform/javascript/export/export.cpp msgid "Canvas Resize Policy" @@ -19392,7 +19392,7 @@ msgstr "Politique de redimensionnement du canevas" #: platform/javascript/export/export.cpp msgid "Focus Canvas On Start" -msgstr "" +msgstr "Sélectionner le canevas au démarrage" #: platform/javascript/export/export.cpp msgid "Experimental Virtual Keyboard" @@ -19499,9 +19499,8 @@ msgid "Failed to get CodeResources hash." msgstr "La récupération du hachage de CodeResources a échouée." #: platform/osx/export/codesign.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Invalid entitlements file." -msgstr "Extension invalide." +msgstr "Fichier de permissions invalide." #: platform/osx/export/codesign.cpp msgid "Invalid executable file." @@ -19582,16 +19581,15 @@ msgstr "Horodatage" #: platform/osx/export/export.cpp msgid "Hardened Runtime" -msgstr "" +msgstr "Environnement d'exécution Renforcé" #: platform/osx/export/export.cpp msgid "Replace Existing Signature" msgstr "Remplacer la signature existante" #: platform/osx/export/export.cpp -#, fuzzy msgid "Entitlements" -msgstr "Gadgets" +msgstr "Permissions" #: platform/osx/export/export.cpp msgid "Custom File" @@ -19607,7 +19605,7 @@ msgstr "Autoriser la mémoire exécutable non signée" #: platform/osx/export/export.cpp msgid "Allow Dyld Environment Variables" -msgstr "" +msgstr "Autoriser les variables d'environnement Dyld" #: platform/osx/export/export.cpp msgid "Disable Library Validation" @@ -19662,28 +19660,24 @@ msgid "Files Downloads" msgstr "Téléchargement de fichiers" #: platform/osx/export/export.cpp -#, fuzzy msgid "Files Pictures" -msgstr "Fonctionnalités" +msgstr "Fichiers Images" #: platform/osx/export/export.cpp -#, fuzzy msgid "Files Music" -msgstr "Fichier" +msgstr "Fichiers Musicaux" #: platform/osx/export/export.cpp -#, fuzzy msgid "Files Movies" -msgstr "Filtrer les tuiles" +msgstr "Fichiers Vidéo" #: platform/osx/export/export.cpp platform/windows/export/export.cpp msgid "Custom Options" msgstr "Options personnalisées" #: platform/osx/export/export.cpp -#, fuzzy msgid "Notarization" -msgstr "Localisation" +msgstr "Notarisation" #: platform/osx/export/export.cpp msgid "Apple ID Name" @@ -19711,7 +19705,7 @@ msgstr "Notarisation échouée." #: platform/osx/export/export.cpp msgid "Notarization request UUID: \"%s\"" -msgstr "" +msgstr "UUID de la requête de notarisation : \"%s\"" #: platform/osx/export/export.cpp msgid "" @@ -19747,10 +19741,12 @@ msgstr "" msgid "" "Hardened Runtime is not compatible with ad-hoc signature, and was disabled!" msgstr "" +"L'Environnement d'exécution Renforcé n'est pas compatible avec la signature " +"ad-hoc et a été désactivé !" #: platform/osx/export/export.cpp msgid "Built-in CodeSign failed with error \"%s\"." -msgstr "" +msgstr "CodeSign intégré a échoué avec l'erreur : \"%s\"." #: platform/osx/export/export.cpp msgid "Built-in CodeSign require regex module." @@ -19908,33 +19904,32 @@ msgid "Notarization: Hardened runtime is required for notarization." msgstr "Notarisation : exécution renforcée nécessaire pour la notarisation." #: platform/osx/export/export.cpp -#, fuzzy msgid "Notarization: Timestamp runtime is required for notarization." -msgstr "Certification : exécution renforcée requise." +msgstr "Notarisation : Horodatage nécessaire à la notarisation." #: platform/osx/export/export.cpp msgid "Notarization: Apple ID name not specified." -msgstr "Certification : Identifiant Apple ID non spécifié." +msgstr "Notarisation : Identifiant Apple ID non spécifié." #: platform/osx/export/export.cpp msgid "Notarization: Apple ID password not specified." -msgstr "Certification : Mot de passe Apple ID non spécifié." +msgstr "Notarisation : Mot de passe Apple ID non spécifié." #: platform/osx/export/export.cpp msgid "" "Warning: Notarization is disabled. The exported project will be blocked by " "Gatekeeper if it's downloaded from an unknown source." msgstr "" -"Attention : La certification est désactivé. Le projet exporté sera bloqué " -"par Gatekeeper si il est téléchargé depuis une source inconnue." +"Attention : La notarisation est désactivée. Le projet exporté sera bloqué " +"par Gatekeeper s'il est téléchargé depuis une source inconnue." #: platform/osx/export/export.cpp msgid "" "Code signing is disabled. The exported project will not run on Macs with " "enabled Gatekeeper and Apple Silicon powered Macs." msgstr "" -"La signature du code est désactivé. Le projet exporté ne fonctionnera pas " -"sur les Macs avec Gatekeeper activé et sous les Macs fonctionnant sous Apple " +"La signature du code est désactivée. Le projet exporté ne fonctionnera pas " +"sur les Macs avec Gatekeeper activé ni sur les Macs fonctionnant sous Apple " "Silicon." #: platform/osx/export/export.cpp @@ -19942,12 +19937,14 @@ msgid "" "Hardened Runtime is not compatible with ad-hoc signature, and will be " "disabled!" msgstr "" +"L'Environnement d'éxécution renforcé n'est pas compatible avec la signature " +"ad-hoc et va être désactivé !" #: platform/osx/export/export.cpp msgid "" "Timestamping is not compatible with ad-hoc signature, and will be disabled!" msgstr "" -"L'horodatage n'est pas compatible avec la signature ad-hoc et a été " +"L'horodatage n'est pas compatible avec la signature ad-hoc et va être " "désactivé !" #: platform/osx/export/export.cpp @@ -19955,7 +19952,7 @@ msgid "" "Warning: Notarization is not supported from this OS. The exported project " "will be blocked by Gatekeeper if it's downloaded from an unknown source." msgstr "" -"Attention : La certification n'est pas compatible avec ce système " +"Attention : La notarisation n'est pas compatible avec ce système " "d'exploitation. Le projet exporté sera bloqué par Gatekeeper si il est " "téléchargé depuis une source inconnue." @@ -19964,7 +19961,7 @@ msgid "" "Privacy: Microphone access is enabled, but usage description is not " "specified." msgstr "" -"Confidentialité : L'accès au microphone est actif, mais son usage n'a pas " +"Confidentialité : L'accès au microphone est activé, mais son usage n'a pas " "été spécifié." #: platform/osx/export/export.cpp @@ -20371,11 +20368,11 @@ msgstr "Rcedit" #: platform/windows/export/export.cpp msgid "Osslsigncode" -msgstr "Osslsigncode" +msgstr "Code Signature OpenSSL" #: platform/windows/export/export.cpp msgid "Wine" -msgstr "Wine" +msgstr "Vin" #: platform/x11/export/export.cpp msgid "32-bit executables cannot have embedded data >= 4 GiB." @@ -20454,13 +20451,12 @@ msgid "Gravity" msgstr "Gravité" #: scene/2d/area_2d.cpp scene/3d/area.cpp -#, fuzzy msgid "Linear Damp" -msgstr "Linéaire" +msgstr "Amorti Linéaire" #: scene/2d/area_2d.cpp scene/3d/area.cpp msgid "Angular Damp" -msgstr "" +msgstr "Amorti Angulaire" #: scene/2d/area_2d.cpp scene/3d/area.cpp msgid "Audio Bus" @@ -20539,9 +20535,8 @@ msgstr "Vue personnalisée" #: scene/2d/camera_2d.cpp scene/3d/camera.cpp scene/3d/interpolated_camera.cpp #: scene/animation/animation_player.cpp scene/animation/animation_tree.cpp #: scene/animation/animation_tree_player.cpp scene/main/timer.cpp -#, fuzzy msgid "Process Mode" -msgstr "Mode déplacement" +msgstr "Mode de traitement" #: scene/2d/camera_2d.cpp msgid "Limit" @@ -20564,9 +20559,8 @@ msgid "Bottom" msgstr "Bas" #: scene/2d/camera_2d.cpp -#, fuzzy msgid "Smoothed" -msgstr "Progression douce" +msgstr "Adouci" #: scene/2d/camera_2d.cpp msgid "Draw Margin" @@ -20583,9 +20577,8 @@ msgid "Drag Margin V Enabled" msgstr "Définir la marge" #: scene/2d/camera_2d.cpp -#, fuzzy msgid "Smoothing" -msgstr "Progression douce" +msgstr "Adoucissement" #: scene/2d/camera_2d.cpp msgid "H" @@ -20648,9 +20641,8 @@ msgid "Visible" msgstr "Visible" #: scene/2d/canvas_item.cpp -#, fuzzy msgid "Self Modulate" -msgstr "Peupler" +msgstr "Auto-modulation" #: scene/2d/canvas_item.cpp msgid "Show Behind Parent" @@ -20822,12 +20814,12 @@ msgstr "FPS fixes" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp msgid "Fract Delta" -msgstr "" +msgstr "Delta Fraction" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp msgid "Drawing" -msgstr "" +msgstr "Dessin" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp @@ -20850,9 +20842,8 @@ msgid "Sphere Radius" msgstr "Rayon de la Sphère" #: scene/2d/cpu_particles_2d.cpp -#, fuzzy msgid "Rect Extents" -msgstr "Gadgets" +msgstr "Étendue du rectangle" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp msgid "Normals" @@ -20964,18 +20955,16 @@ msgid "Angle Curve" msgstr "Courbe d'angle" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp -#, fuzzy msgid "Scale Amount" msgstr "Valeur d'échelle" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp msgid "Scale Amount Random" -msgstr "" +msgstr "Valeur d'échelle aléatoire" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp -#, fuzzy msgid "Scale Amount Curve" -msgstr "Agrandir/Rétrécir à partir du curseur" +msgstr "Courbe de valeur d'échelle" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21080,7 +21069,7 @@ msgstr "Décalage initial" #: scene/2d/joints_2d.cpp scene/3d/vehicle_body.cpp msgid "Rest Length" -msgstr "" +msgstr "Longueur au repos" #: scene/2d/joints_2d.cpp scene/3d/physics_joint.cpp scene/3d/vehicle_body.cpp msgid "Stiffness" @@ -21126,7 +21115,7 @@ msgstr "Calque max" #: scene/2d/light_2d.cpp msgid "Item Cull Mask" -msgstr "" +msgstr "Masque d'élagage d'élément" #: scene/2d/light_2d.cpp scene/3d/light.cpp scene/resources/style_box.cpp msgid "Shadow" @@ -21141,18 +21130,16 @@ msgid "Gradient Length" msgstr "Longueur du dégradé" #: scene/2d/light_2d.cpp -#, fuzzy msgid "Filter Smooth" -msgstr "Filtrer les méthodes" +msgstr "Filtre de lissage" #: scene/2d/light_occluder_2d.cpp msgid "Closed" msgstr "Fermé" #: scene/2d/light_occluder_2d.cpp scene/resources/material.cpp -#, fuzzy msgid "Cull Mode" -msgstr "Mode Règle" +msgstr "Mode Élagage" #: scene/2d/light_occluder_2d.cpp msgid "" @@ -21196,13 +21183,12 @@ msgid "Joint Mode" msgstr "Mode de jointure" #: scene/2d/line_2d.cpp -#, fuzzy msgid "Begin Cap Mode" -msgstr "Mode Région" +msgstr "Lancer le mode capuchon" #: scene/2d/line_2d.cpp msgid "End Cap Mode" -msgstr "Mode du capuchon de fin" +msgstr "Terminer le mode capuchon" #: scene/2d/line_2d.cpp scene/2d/polygon_2d.cpp scene/resources/style_box.cpp msgid "Border" @@ -21210,7 +21196,7 @@ msgstr "Bordure" #: scene/2d/line_2d.cpp msgid "Sharp Limit" -msgstr "" +msgstr "Limite Nette" #: scene/2d/line_2d.cpp msgid "Round Precision" @@ -21222,9 +21208,8 @@ msgid "Antialiased" msgstr "Anticrénelé" #: scene/2d/multimesh_instance_2d.cpp scene/3d/multimesh_instance.cpp -#, fuzzy msgid "Multimesh" -msgstr "Multiplier %s" +msgstr "Multimaillage" #: scene/2d/navigation_2d.cpp scene/3d/baked_lightmap.cpp #: scene/3d/navigation.cpp scene/animation/root_motion_view.cpp @@ -21247,9 +21232,8 @@ msgstr "" "Navigation2DServer.map_get_path() » à la place." #: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp -#, fuzzy msgid "Pathfinding" -msgstr "Pathfinding" +msgstr "Recherche de chemin" #: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp msgid "Path Desired Distance" @@ -21280,9 +21264,8 @@ msgid "Max Neighbors" msgstr "Maximum de voisins" #: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp -#, fuzzy msgid "Time Horizon" -msgstr "Retourner horizontalement" +msgstr "Horizon temporel" #: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp msgid "Max Speed" @@ -21587,7 +21570,7 @@ msgstr "Plateforme mobile" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Apply Velocity On Leave" -msgstr "" +msgstr "Appliquer la vélocité à la sortie" #: scene/2d/physics_body_2d.cpp scene/2d/touch_screen_button.cpp #: scene/3d/physics_body.cpp scene/gui/texture_button.cpp @@ -21726,9 +21709,8 @@ msgid "Frame Coords" msgstr "Coordonnées de trame" #: scene/2d/sprite.cpp scene/resources/texture.cpp -#, fuzzy msgid "Filter Clip" -msgstr "Filtrer les scripts" +msgstr "Filtrer les clips" #: scene/2d/tile_map.cpp msgid "" @@ -21749,9 +21731,8 @@ msgid "Quadrant Size" msgstr "Taille de quadrant" #: scene/2d/tile_map.cpp -#, fuzzy msgid "Custom Transform" -msgstr "Transformation" +msgstr "Transformation Personalisée" #: scene/2d/tile_map.cpp msgid "Half Offset" @@ -21779,7 +21760,7 @@ msgstr "Textures Centrées" #: scene/2d/tile_map.cpp msgid "Cell Clip UV" -msgstr "" +msgstr "Cellule Clip UV" #: scene/2d/tile_map.cpp msgid "Use Parent" @@ -21799,7 +21780,7 @@ msgstr "Forme Visible" #: scene/2d/touch_screen_button.cpp msgid "Passby Press" -msgstr "" +msgstr "Activation en passant" #: scene/2d/touch_screen_button.cpp msgid "Visibility Mode" @@ -21839,7 +21820,7 @@ msgstr "Parent du Processus Physique" #: scene/3d/area.cpp msgid "Reverb Bus" -msgstr "" +msgstr "Bus de Réverb" #: scene/3d/area.cpp msgid "Uniformity" @@ -21870,9 +21851,8 @@ msgstr "" "aucun contrôleur." #: scene/3d/arvr_nodes.cpp -#, fuzzy msgid "Anchor ID" -msgstr "Uniquement les ancres" +msgstr "ID de l'ancre" #: scene/3d/arvr_nodes.cpp msgid "ARVRAnchor must have an ARVROrigin node as its parent." @@ -21912,7 +21892,7 @@ msgstr "Max (dB)" #: scene/3d/audio_stream_player_3d.cpp msgid "Out Of Range Mode" -msgstr "" +msgstr "Mode Hors-de-plage" #: scene/3d/audio_stream_player_3d.cpp msgid "Emission Angle" @@ -21934,7 +21914,7 @@ msgstr "Filtre d’atténuation" #: servers/audio/effects/audio_effect_chorus.cpp #: servers/audio/effects/audio_effect_filter.cpp msgid "Cutoff Hz" -msgstr "" +msgstr "Hz de coupure" #: scene/3d/audio_stream_player_3d.cpp #: servers/audio/effects/audio_effect_filter.cpp @@ -21946,9 +21926,8 @@ msgid "Doppler" msgstr "Doppler" #: scene/3d/audio_stream_player_3d.cpp -#, fuzzy msgid "Tracking" -msgstr "Empaquetage" +msgstr "Suivi" #: scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp #: scene/3d/reflection_probe.cpp @@ -21982,9 +21961,8 @@ msgstr "Terminé" #: scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp #: scene/3d/reflection_probe.cpp scene/resources/box_shape.cpp #: scene/resources/rectangle_shape_2d.cpp -#, fuzzy msgid "Extents" -msgstr "Gadgets" +msgstr "Étendues" #: scene/3d/baked_lightmap.cpp msgid "Tweaks" @@ -22043,9 +22021,8 @@ msgid "Custom Energy" msgstr "Énergie personnalisée" #: scene/3d/baked_lightmap.cpp -#, fuzzy msgid "Min Light" -msgstr "Indenter vers la droite" +msgstr "Lumière Min" #: scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp msgid "Propagation" @@ -22069,12 +22046,11 @@ msgstr "Garder l'aspect" #: scene/3d/camera.cpp scene/3d/light.cpp scene/3d/reflection_probe.cpp msgid "Cull Mask" -msgstr "" +msgstr "Masque d'élagage" #: scene/3d/camera.cpp -#, fuzzy msgid "Doppler Tracking" -msgstr "Piste de propriété" +msgstr "Effet Doppler de Suivi" #: scene/3d/camera.cpp msgid "Projection" @@ -22105,18 +22081,16 @@ msgid "Margin" msgstr "Marge" #: scene/3d/camera.cpp -#, fuzzy msgid "Clip To" -msgstr "Agrafe ci-dessus" +msgstr "Agrafer à " #: scene/3d/collision_object.cpp scene/3d/soft_body.cpp msgid "Ray Pickable" -msgstr "" +msgstr "Sélectionnable par rayon" #: scene/3d/collision_object.cpp -#, fuzzy msgid "Capture On Drag" -msgstr "Capturer" +msgstr "Capturer lors du glissement" #: scene/3d/collision_object.cpp msgid "" @@ -22187,9 +22161,8 @@ msgstr "" "Particles » activé." #: scene/3d/cpu_particles.cpp scene/resources/particles_material.cpp -#, fuzzy msgid "Box Extents" -msgstr "Gadgets" +msgstr "Étendues de la boîte" #: scene/3d/cpu_particles.cpp scene/resources/particles_material.cpp msgid "Ring Radius" @@ -22229,10 +22202,9 @@ msgstr "Mode portail" #: scene/3d/cull_instance.cpp msgid "Include In Bound" -msgstr "" +msgstr "Inclure dans la frontière" #: scene/3d/cull_instance.cpp -#, fuzzy msgid "Allow Merging" msgstr "Autoriser la fusion" @@ -22363,37 +22335,32 @@ msgid "Contact" msgstr "Contact" #: scene/3d/light.cpp -#, fuzzy msgid "Reverse Cull Face" -msgstr "Réinitialiser le volume de bus" +msgstr "Élagage inversé de la face" #: scene/3d/light.cpp servers/visual_server.cpp msgid "Directional Shadow" msgstr "Ombre directionnelle" #: scene/3d/light.cpp -#, fuzzy msgid "Split 1" -msgstr "Divisé" +msgstr "Séparation 1" #: scene/3d/light.cpp -#, fuzzy msgid "Split 2" -msgstr "Divisé" +msgstr "Séparation 2" #: scene/3d/light.cpp -#, fuzzy msgid "Split 3" -msgstr "Divisé" +msgstr "Séparation 3" #: scene/3d/light.cpp msgid "Blend Splits" -msgstr "Mélanger les écarts" +msgstr "Mélanger les séparations" #: scene/3d/light.cpp -#, fuzzy msgid "Bias Split Scale" -msgstr "Utiliser le magnétisme d'échelle" +msgstr "Échelle du biais de séparation" #: scene/3d/light.cpp msgid "Depth Range" @@ -22427,7 +22394,7 @@ msgstr "Atténuation d'angle" #: scene/3d/mesh_instance.cpp msgid "Software Skinning" -msgstr "" +msgstr "Habillage Logiciel" #: scene/3d/mesh_instance.cpp msgid "Transform Normals" @@ -22596,15 +22563,15 @@ msgstr "Z angulaire" #: scene/3d/physics_body.cpp msgid "Motion X" -msgstr "X mouvement" +msgstr "Mouvement X" #: scene/3d/physics_body.cpp msgid "Motion Y" -msgstr "Y mouvement" +msgstr "Mouvement Y" #: scene/3d/physics_body.cpp msgid "Motion Z" -msgstr "Z mouvement" +msgstr "Mouvement Z" #: scene/3d/physics_body.cpp msgid "Joint Constraints" @@ -22729,7 +22696,7 @@ msgstr "Amortissement angulaire" #: scene/3d/physics_body.cpp scene/3d/physics_joint.cpp msgid "ERP" -msgstr "" +msgstr "ERP" #: scene/3d/physics_body.cpp msgid "Angular Spring Enabled" @@ -22961,7 +22928,7 @@ msgstr "Nom de groupe" #: scene/3d/proximity_group.cpp msgid "Dispatch Mode" -msgstr "" +msgstr "Mode Répartition" #: scene/3d/proximity_group.cpp msgid "Grid Radius" @@ -23000,9 +22967,8 @@ msgid "Ambient Energy" msgstr "Énergie ambiante" #: scene/3d/reflection_probe.cpp -#, fuzzy msgid "Ambient Contrib" -msgstr "Indenter vers la droite" +msgstr "Contribution Ambiante" #: scene/3d/remote_transform.cpp msgid "" @@ -23036,20 +23002,19 @@ msgstr "" #: scene/3d/room.cpp msgid "Use Default Simplify" -msgstr "" +msgstr "Utiliser la simplification par défaut" #: scene/3d/room.cpp scene/3d/room_manager.cpp msgid "Room Simplify" -msgstr "" +msgstr "Simplifier la pièce" #: scene/3d/room.cpp msgid "Bound" -msgstr "" +msgstr "Frontière" #: scene/3d/room_group.cpp -#, fuzzy msgid "Roomgroup Priority" -msgstr "Priorité" +msgstr "Priorité du groupe de pièces" #: scene/3d/room_group.cpp msgid "The RoomManager should not be placed inside a RoomGroup." @@ -23077,67 +23042,58 @@ msgstr "Il ne doit y avoir qu'un seul RoomManager dans le SceneTree." #: scene/3d/room_manager.cpp msgid "Main" -msgstr "" +msgstr "Principal" #: scene/3d/room_manager.cpp scene/animation/animation_blend_tree.cpp #: scene/animation/animation_player.cpp scene/animation/animation_tree.cpp #: scene/animation/animation_tree_player.cpp #: servers/audio/effects/audio_effect_delay.cpp -#, fuzzy msgid "Active" -msgstr "Action" +msgstr "Actif" #: scene/3d/room_manager.cpp msgid "Roomlist" -msgstr "" +msgstr "Liste des pièces" #: scene/3d/room_manager.cpp servers/visual_server.cpp -#, fuzzy msgid "PVS" -msgstr "IPS" +msgstr "PVS" #: scene/3d/room_manager.cpp -#, fuzzy msgid "PVS Mode" -msgstr "Mode navigation" +msgstr "Mode PVS" #: scene/3d/room_manager.cpp -#, fuzzy msgid "PVS Filename" -msgstr "Fichier ZIP" +msgstr "Nom de ficher PVS" #: scene/3d/room_manager.cpp servers/visual_server.cpp msgid "Gameplay" -msgstr "" +msgstr "Jouabilité" #: scene/3d/room_manager.cpp -#, fuzzy msgid "Gameplay Monitor" -msgstr "Moniteur" +msgstr "Moniteur de jouabilité" #: scene/3d/room_manager.cpp -#, fuzzy msgid "Use Secondary PVS" -msgstr "Utiliser le magnétisme d'échelle" +msgstr "Utiliser PVS secondaire" #: scene/3d/room_manager.cpp -#, fuzzy msgid "Merge Meshes" -msgstr "Maillages" +msgstr "Unifier les maillages" #: scene/3d/room_manager.cpp -#, fuzzy msgid "Show Margins" -msgstr "Afficher l'origine" +msgstr "Afficher les marges" #: scene/3d/room_manager.cpp -#, fuzzy msgid "Debug Sprawl" -msgstr "Débogage" +msgstr "Déboger le sprawl" #: scene/3d/room_manager.cpp msgid "Overlap Warning Threshold" -msgstr "" +msgstr "Seuil d'avertissement de superposition" #: scene/3d/room_manager.cpp msgid "Preview Camera" @@ -23145,17 +23101,15 @@ msgstr "Aperçu de caméra" #: scene/3d/room_manager.cpp msgid "Portal Depth Limit" -msgstr "" +msgstr "Limite de profondeur du portail" #: scene/3d/room_manager.cpp -#, fuzzy msgid "Default Portal Margin" -msgstr "Définir la marge" +msgstr "Marge de portail par défaut" #: scene/3d/room_manager.cpp -#, fuzzy msgid "Roaming Expansion Margin" -msgstr "Développer tout" +msgstr "Marge d'expansion roaming" #: scene/3d/room_manager.cpp msgid "" @@ -23210,43 +23164,36 @@ msgstr "" "manuelles." #: scene/3d/skeleton.cpp scene/resources/skin.cpp -#, fuzzy msgid "Pose" -msgstr "Copier la pose" +msgstr "Pose" #: scene/3d/skeleton.cpp -#, fuzzy msgid "Bound Children" -msgstr "Enfants modifiables" +msgstr "Enfants liés" #: scene/3d/soft_body.cpp -#, fuzzy msgid "Pinned Points" -msgstr "Épinglé %s" +msgstr "Points épinglés" #: scene/3d/soft_body.cpp -#, fuzzy msgid "Attachments" -msgstr "Gadgets" +msgstr "Attachements" #: scene/3d/soft_body.cpp -#, fuzzy msgid "Point Index" -msgstr "Récupérer la position" +msgstr "Index de point" #: scene/3d/soft_body.cpp msgid "Spatial Attachment Path" -msgstr "" +msgstr "Chemin de la pièce jointe spatiale" #: scene/3d/soft_body.cpp -#, fuzzy msgid "Physics Enabled" -msgstr "Image physique %" +msgstr "Physique active" #: scene/3d/soft_body.cpp -#, fuzzy msgid "Parent Collision Ignore" -msgstr "Créer le polygone de collision" +msgstr "Ignorer les collisions avec le parent" #: scene/3d/soft_body.cpp msgid "Simulation Precision" @@ -23258,32 +23205,31 @@ msgstr "Masse totale" #: scene/3d/soft_body.cpp msgid "Linear Stiffness" -msgstr "" +msgstr "Rigidité Linéaire" #: scene/3d/soft_body.cpp msgid "Areaangular Stiffness" -msgstr "" +msgstr "Rigidité Aire Angulaire" #: scene/3d/soft_body.cpp msgid "Volume Stiffness" -msgstr "" +msgstr "Rigidité de volume" #: scene/3d/soft_body.cpp -#, fuzzy msgid "Pressure Coefficient" msgstr "Coefficient de pression" #: scene/3d/soft_body.cpp msgid "Damping Coefficient" -msgstr "" +msgstr "Coefficient d'amortissement" #: scene/3d/soft_body.cpp msgid "Drag Coefficient" -msgstr "" +msgstr "Coefficient de traînée" #: scene/3d/soft_body.cpp msgid "Pose Matching Coefficient" -msgstr "" +msgstr "Coefficient d'alignement de pose" #: scene/3d/soft_body.cpp msgid "This body will be ignored until you set a mesh." @@ -23300,9 +23246,8 @@ msgstr "" "Modifiez les tailles dans les formes de collision enfants à la place." #: scene/3d/spatial.cpp -#, fuzzy msgid "Global Translation" -msgstr "Transformation Globale" +msgstr "Position globale" #: scene/3d/spatial.cpp msgid "Matrix" @@ -23397,6 +23342,14 @@ msgstr "Force max" msgid "AABB" msgstr "AABB" +#: scene/3d/visual_instance.cpp +msgid "Sorting" +msgstr "Arrangement" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "Utiliser le centre de l'AABB" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "Géométrie" @@ -23528,9 +23481,8 @@ msgid "Xfade Time" msgstr "Durée du fondu croisé" #: scene/animation/animation_node_state_machine.cpp -#, fuzzy msgid "Switch Mode" -msgstr "Mode de Switch" +msgstr "Changer de mode" #: scene/animation/animation_node_state_machine.cpp msgid "Auto Advance" @@ -23628,14 +23580,12 @@ msgid "This node has been deprecated. Use AnimationTree instead." msgstr "Ce nÅ“ud est désormais déprécié. Utilisez AnimationTree à la place." #: scene/animation/animation_tree_player.cpp -#, fuzzy msgid "Playback" -msgstr "Jouer" +msgstr "Lecture" #: scene/animation/animation_tree_player.cpp -#, fuzzy msgid "Master Player" -msgstr "Coller les paramètres" +msgstr "Lecteur principal" #: scene/animation/animation_tree_player.cpp msgid "Base Path" @@ -23690,9 +23640,8 @@ msgid "Playback Speed" msgstr "Vitesse de lecture" #: scene/audio/audio_stream_player.cpp -#, fuzzy msgid "Mix Target" -msgstr "Cible" +msgstr "Cible Mixte" #: scene/gui/aspect_ratio_container.cpp scene/gui/range.cpp #: servers/audio/effects/audio_effect_compressor.cpp @@ -23718,11 +23667,11 @@ msgstr "Mode d'action" #: scene/gui/base_button.cpp msgid "Enabled Focus Mode" -msgstr "" +msgstr "Mode Concentration activé" #: scene/gui/base_button.cpp msgid "Keep Pressed Outside" -msgstr "" +msgstr "Garder pressé à l'extérieur" #: scene/gui/base_button.cpp scene/gui/shortcut.cpp msgid "Shortcut" @@ -23859,9 +23808,8 @@ msgid "Tooltip" msgstr "Info-bulle" #: scene/gui/control.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Focus" -msgstr "Focaliser le chemin" +msgstr "Focus" #: scene/gui/control.cpp msgid "Neighbour Left" @@ -23922,7 +23870,7 @@ msgstr "Boîte de dialogue" #: scene/gui/dialogs.cpp msgid "Hide On OK" -msgstr "" +msgstr "Cacher quand OK" #: scene/gui/dialogs.cpp msgid "Alert!" @@ -23955,29 +23903,25 @@ msgid "Snap Distance" msgstr "Distance d'arrondissage" #: scene/gui/graph_edit.cpp -#, fuzzy msgid "Zoom Min" -msgstr "Zoomer" +msgstr "Zoom Min" #: scene/gui/graph_edit.cpp -#, fuzzy msgid "Zoom Max" -msgstr "Zoomer" +msgstr "Zoom Max" #: scene/gui/graph_edit.cpp -#, fuzzy msgid "Zoom Step" -msgstr "Dézoomer" +msgstr "Pas de Zoom" #: scene/gui/graph_edit.cpp -#, fuzzy msgid "Show Zoom Label" -msgstr "Afficher les os" +msgstr "Afficher le label de zoom" #: scene/gui/graph_edit.cpp scene/gui/text_edit.cpp #: scene/resources/default_theme/default_theme.cpp msgid "Minimap" -msgstr "" +msgstr "Mini-carte" #: scene/gui/graph_edit.cpp msgid "Enable grid minimap." @@ -23990,33 +23934,29 @@ msgstr "Afficher les os" #: scene/gui/graph_node.cpp scene/gui/option_button.cpp #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Selected" -msgstr "Sélectionner" +msgstr "Sélectionné" #: scene/gui/graph_node.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Comment" -msgstr "Enregistrer" +msgstr "Commentaire" #: scene/gui/graph_node.cpp msgid "Overlay" -msgstr "" +msgstr "Surcouche" #: scene/gui/grid_container.cpp scene/gui/item_list.cpp scene/gui/tree.cpp -#, fuzzy msgid "Columns" -msgstr "Volume" +msgstr "Colonnes" #: scene/gui/item_list.cpp scene/gui/popup_menu.cpp scene/gui/text_edit.cpp #: scene/gui/tree.cpp scene/main/viewport.cpp -#, fuzzy msgid "Timers" -msgstr "Temps" +msgstr "Chronomètres" #: scene/gui/item_list.cpp scene/gui/popup_menu.cpp scene/gui/tree.cpp msgid "Incremental Search Max Interval Msec" -msgstr "" +msgstr "Intervalle max de recherche incrémentale (ms)" #: scene/gui/item_list.cpp scene/gui/tree.cpp #, fuzzy @@ -24030,7 +23970,7 @@ msgstr "Remplir la sélection" #: scene/gui/item_list.cpp msgid "Max Text Lines" -msgstr "" +msgstr "Lignes de texte max" #: scene/gui/item_list.cpp #, fuzzy @@ -24039,15 +23979,15 @@ msgstr "En période de test" #: scene/gui/item_list.cpp msgid "Max Columns" -msgstr "" +msgstr "Colonnes Max" #: scene/gui/item_list.cpp msgid "Same Column Width" -msgstr "" +msgstr "Même Largeur de Colonne" #: scene/gui/item_list.cpp msgid "Fixed Column Width" -msgstr "" +msgstr "Largeur de Colonne Fixe" #: scene/gui/item_list.cpp msgid "Icon Scale" @@ -24074,19 +24014,19 @@ msgstr "Rendre visible" #: scene/gui/label.cpp msgid "Lines Skipped" -msgstr "" +msgstr "Lignes Ignorées" #: scene/gui/label.cpp msgid "Max Lines Visible" -msgstr "" +msgstr "Lignes Visibles Max" #: scene/gui/line_edit.cpp scene/resources/navigation_mesh.cpp msgid "Max Length" -msgstr "" +msgstr "Longueur Max" #: scene/gui/line_edit.cpp msgid "Secret" -msgstr "" +msgstr "Secret" #: scene/gui/line_edit.cpp msgid "Secret Character" @@ -24094,7 +24034,7 @@ msgstr "Caractère secret" #: scene/gui/line_edit.cpp msgid "Expand To Text Length" -msgstr "" +msgstr "Etendre à la longueur du texte" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp #, fuzzy @@ -24129,7 +24069,7 @@ msgstr "Sélection uniquement" #: scene/gui/line_edit.cpp scene/gui/rich_text_label.cpp #: scene/gui/text_edit.cpp msgid "Deselect On Focus Loss Enabled" -msgstr "" +msgstr "Déselection à la perte de focus activée" #: scene/gui/line_edit.cpp #, fuzzy @@ -24143,7 +24083,7 @@ msgstr "Charger en tant qu'instance temporaire" #: scene/gui/line_edit.cpp msgid "Alpha" -msgstr "" +msgstr "Alpha" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Caret" @@ -24151,7 +24091,7 @@ msgstr "Caret" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Blink" -msgstr "" +msgstr "Clignoter" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Blink Speed" @@ -24159,7 +24099,7 @@ msgstr "Vitesse de Clignotement" #: scene/gui/link_button.cpp msgid "Underline" -msgstr "" +msgstr "Souligner" #: scene/gui/menu_button.cpp #, fuzzy @@ -24183,7 +24123,7 @@ msgstr "Définir la marge" #: scene/gui/nine_patch_rect.cpp scene/resources/style_box.cpp msgid "Axis Stretch" -msgstr "" +msgstr "Etirer les Axes" #: scene/gui/nine_patch_rect.cpp msgid "" @@ -24373,11 +24313,11 @@ msgstr "Filtrer les signaux" #: scene/gui/scroll_container.cpp msgid "Default Scroll Deadzone" -msgstr "" +msgstr "Zone morte par défaut du défilement" #: scene/gui/slider.cpp msgid "Scrollable" -msgstr "" +msgstr "Défilant" #: scene/gui/slider.cpp #, fuzzy @@ -24412,7 +24352,7 @@ msgstr "Basculer la visibilité" #: scene/gui/tab_container.cpp scene/gui/tabs.cpp msgid "Tab Align" -msgstr "" +msgstr "Alignement de l'onglet" #: scene/gui/tab_container.cpp scene/gui/tabs.cpp msgid "Current Tab" @@ -24425,7 +24365,7 @@ msgstr "Rendre visible" #: scene/gui/tab_container.cpp msgid "All Tabs In Front" -msgstr "" +msgstr "Tous les Onglets au Premier Plan" #: scene/gui/tab_container.cpp scene/gui/tabs.cpp msgid "Drag To Rearrange Enabled" @@ -24433,11 +24373,11 @@ msgstr "Glisser pour Réorganiser Activé" #: scene/gui/tab_container.cpp msgid "Use Hidden Tabs For Min Size" -msgstr "" +msgstr "Utiliser des onglets cachés pour la taille minimum" #: scene/gui/tabs.cpp msgid "Tab Close Display Policy" -msgstr "" +msgstr "Stratégie d'affichage pour la fermeture d'onglet" #: scene/gui/tabs.cpp msgid "Scrolling Enabled" @@ -24445,7 +24385,7 @@ msgstr "Défilement activé" #: scene/gui/text_edit.cpp msgid "Readonly" -msgstr "" +msgstr "Lecture Seule" #: scene/gui/text_edit.cpp #, fuzzy @@ -24495,19 +24435,20 @@ msgstr "Déverrouiller le nÅ“ud" #: scene/gui/text_edit.cpp msgid "Moving By Right Click" -msgstr "" +msgstr "Déplacer avec clic droit" #: scene/gui/text_edit.cpp msgid "Text Edit Idle Detect (sec)" -msgstr "" +msgstr "Détéction d'inactivité du champ de texte (s)" #: scene/gui/text_edit.cpp msgid "Text Edit Undo Stack Max Size" msgstr "" +"Nombre d'actions max dans le champ de texte à mémoriser pour l'annulation" #: scene/gui/texture_button.cpp scene/resources/default_theme/default_theme.cpp msgid "Hover" -msgstr "" +msgstr "Survoler" #: scene/gui/texture_button.cpp #, fuzzy @@ -24527,7 +24468,7 @@ msgstr "Développer tout" #: scene/gui/texture_progress.cpp msgid "Under" -msgstr "" +msgstr "Sous" #: scene/gui/texture_progress.cpp #, fuzzy @@ -24541,7 +24482,7 @@ msgstr "Propriétés du thème" #: scene/gui/texture_progress.cpp msgid "Progress Offset" -msgstr "" +msgstr "Décalage de la Progression" #: scene/gui/texture_progress.cpp msgid "Fill Mode" @@ -24549,11 +24490,11 @@ msgstr "Mode de Remplissage" #: scene/gui/texture_progress.cpp scene/resources/material.cpp msgid "Tint" -msgstr "" +msgstr "Teinte" #: scene/gui/texture_progress.cpp msgid "Radial Fill" -msgstr "" +msgstr "Remplissage Radial" #: scene/gui/texture_progress.cpp #, fuzzy @@ -24596,7 +24537,7 @@ msgstr "Mode sélection" #: scene/gui/tree.cpp msgid "Custom Minimum Height" -msgstr "" +msgstr "Taille Minimum Personnalisée" #: scene/gui/tree.cpp msgid "(Other)" @@ -24618,7 +24559,7 @@ msgstr "Masquer la Racine" #: scene/gui/tree.cpp msgid "Drop Mode Flags" -msgstr "" +msgstr "Options du Mode Abandon" #: scene/gui/video_player.cpp #, fuzzy @@ -24627,7 +24568,7 @@ msgstr "Ajouter une piste" #: scene/gui/video_player.cpp scene/main/scene_tree.cpp scene/main/timer.cpp msgid "Paused" -msgstr "" +msgstr "En Pause" #: scene/gui/video_player.cpp #, fuzzy @@ -24661,11 +24602,11 @@ msgstr "Téléchargement en cours" #: scene/main/http_request.cpp msgid "Body Size Limit" -msgstr "" +msgstr "Taille Limite du Corps" #: scene/main/http_request.cpp msgid "Max Redirects" -msgstr "" +msgstr "Redirections Max" #: scene/main/http_request.cpp msgid "Timeout" @@ -24676,6 +24617,8 @@ msgid "" "Setting node name '%s' to be unique within scene for '%s', but it's already " "claimed by '%s'. This node is no longer set unique." msgstr "" +"Impossible de déclarer le nom de nÅ“ud '%s' comme unique dans la scène pour " +"'%s', car ce nom est déjà attribué à '%s'. Ce nÅ“ud n'est donc plus unique." #: scene/main/node.cpp #, fuzzy @@ -24684,7 +24627,7 @@ msgstr "Séparateur nommé" #: scene/main/node.cpp msgid "Name Casing" -msgstr "" +msgstr "Convention de Nommage" #: scene/main/node.cpp #, fuzzy @@ -24746,7 +24689,7 @@ msgstr "Mode Navigation" #: scene/main/scene_tree.cpp msgid "Use Font Oversampling" -msgstr "" +msgstr "Utiliser le Suréchantillonnage de Police" #: scene/main/scene_tree.cpp #, fuzzy @@ -24812,7 +24755,7 @@ msgstr "Utiliser FXAA" #: scene/main/scene_tree.cpp msgid "Use Debanding" -msgstr "" +msgstr "Utiliser le Debanding" #: scene/main/scene_tree.cpp scene/main/viewport.cpp msgid "HDR" @@ -25063,7 +25006,7 @@ msgstr "Demi résolution" #: scene/resources/curve.cpp msgid "Bake Interval" -msgstr "" +msgstr "Intervalle de Précalcul" #: scene/resources/default_theme/default_theme.cpp msgid "Panel" @@ -25304,7 +25247,7 @@ msgstr "Poignée quand désactivée" #: scene/resources/default_theme/default_theme.cpp msgid "Tick" -msgstr "" +msgstr "Signet" #: scene/resources/default_theme/default_theme.cpp msgid "Updown" @@ -25502,7 +25445,7 @@ msgstr "Couleur des lignes de relation" #: scene/resources/default_theme/default_theme.cpp msgid "Custom Button Font Highlight" -msgstr "" +msgstr "Surlignage Personnalisé de la Police du Bouton" #: scene/resources/default_theme/default_theme.cpp msgid "Item Margin" @@ -25736,7 +25679,7 @@ msgstr "Déplacer des points de Bézier" #: scene/resources/default_theme/default_theme.cpp msgid "Bezier Len Neg" -msgstr "" +msgstr "Longueur Négative Courbe de Bézier" #: scene/resources/default_theme/default_theme.cpp msgid "Port Grab Distance Horizontal" @@ -25808,7 +25751,7 @@ msgstr "Degrés de Rotation du Ciel" #: scene/resources/environment.cpp msgid "Canvas Max Layer" -msgstr "" +msgstr "Calque Max du Canvas" #: scene/resources/environment.cpp scene/resources/texture.cpp msgid "Camera Feed ID" @@ -26083,7 +26026,7 @@ msgstr "Passe suivante" #: scene/resources/material.cpp msgid "Use Shadow To Opacity" -msgstr "" +msgstr "Utiliser l'ombre pour l'opacité" #: scene/resources/material.cpp msgid "Unshaded" @@ -26240,7 +26183,7 @@ msgstr "Occlusion ambiante" #: scene/resources/material.cpp msgid "Deep Parallax" -msgstr "" +msgstr "Parallaxe Profonde" #: scene/resources/material.cpp #, fuzzy @@ -26254,7 +26197,7 @@ msgstr "Calque" #: scene/resources/material.cpp msgid "Flip Tangent" -msgstr "" +msgstr "Inverser la Tangente" #: scene/resources/material.cpp #, fuzzy @@ -26291,7 +26234,7 @@ msgstr "Triplanaire" #: scene/resources/material.cpp msgid "Triplanar Sharpness" -msgstr "" +msgstr "Netteté Triplanaire" #: scene/resources/material.cpp msgid "UV2" @@ -26304,7 +26247,7 @@ msgstr "Mode prioritaire" #: scene/resources/material.cpp msgid "Distance Fade" -msgstr "" +msgstr "Fondu de Distance" #: scene/resources/material.cpp msgid "Async Mode" @@ -26317,7 +26260,7 @@ msgstr "LightMap Bake" #: scene/resources/mesh.cpp scene/resources/primitive_meshes.cpp msgid "Custom AABB" -msgstr "" +msgstr "AABB Personnalisé" #: scene/resources/mesh_library.cpp msgid "Mesh Transform" @@ -26337,7 +26280,7 @@ msgstr "Format de transformation" #: scene/resources/multimesh.cpp msgid "Custom Data Format" -msgstr "" +msgstr "Format de Données Personnalisé" #: scene/resources/multimesh.cpp msgid "Instance Count" @@ -26361,7 +26304,7 @@ msgstr "Type de la géométrie analysée" #: scene/resources/navigation_mesh.cpp msgid "Source Geometry Mode" -msgstr "" +msgstr "Mode Géométrie Source" #: scene/resources/navigation_mesh.cpp #, fuzzy @@ -26378,7 +26321,7 @@ msgstr "Agents" #: scene/resources/navigation_mesh.cpp msgid "Max Climb" -msgstr "" +msgstr "Escalade Max" #: scene/resources/navigation_mesh.cpp msgid "Max Slope" @@ -26404,7 +26347,7 @@ msgstr "Erreur" #: scene/resources/navigation_mesh.cpp msgid "Verts Per Poly" -msgstr "" +msgstr "Sommets par Poly" #: scene/resources/navigation_mesh.cpp msgid "Details" @@ -26421,15 +26364,15 @@ msgstr "Échantillonneur" #: scene/resources/navigation_mesh.cpp msgid "Low Hanging Obstacles" -msgstr "" +msgstr "Obstacles Suspendus Bas" #: scene/resources/navigation_mesh.cpp msgid "Ledge Spans" -msgstr "" +msgstr "Etendue de Rebord" #: scene/resources/navigation_mesh.cpp msgid "Walkable Low Height Spans" -msgstr "" +msgstr "Etendues de faible hauteur praticables" #: scene/resources/navigation_mesh.cpp #, fuzzy @@ -26507,7 +26450,7 @@ msgstr "Fermer la courbe" #: scene/resources/physics_material.cpp msgid "Rough" -msgstr "" +msgstr "Rugueux" #: scene/resources/physics_material.cpp msgid "Absorbent" @@ -26523,7 +26466,7 @@ msgstr "Retourner les faces" #: scene/resources/primitive_meshes.cpp msgid "Mid Height" -msgstr "" +msgstr "Mi-hauteur" #: scene/resources/primitive_meshes.cpp msgid "Subdivide Width" @@ -26568,7 +26511,7 @@ msgstr "A" #: scene/resources/shape_2d.cpp msgid "Custom Solver Bias" -msgstr "" +msgstr "Biais Personnalisé du Solveur" #: scene/resources/skin.cpp msgid "Bind Count" @@ -26646,7 +26589,7 @@ msgstr "Changer le rayon intérieur de la tour" #: scene/resources/style_box.cpp msgid "Corner Detail" -msgstr "" +msgstr "Détail des Coins" #: scene/resources/style_box.cpp msgid "Anti Aliasing" @@ -26654,11 +26597,11 @@ msgstr "Anticrénelage" #: scene/resources/style_box.cpp msgid "Grow Begin" -msgstr "" +msgstr "Début d'Expansion" #: scene/resources/style_box.cpp msgid "Grow End" -msgstr "" +msgstr "Fin d'Expansion" #: scene/resources/texture.cpp #, fuzzy @@ -26715,7 +26658,7 @@ msgstr "Pause" #: scene/resources/texture.cpp msgid "Which Feed" -msgstr "" +msgstr "Quel Flux" #: scene/resources/texture.cpp msgid "Camera Is Active" @@ -27523,7 +27466,7 @@ msgstr "Nombre de compilations simultanées" #: servers/visual_server.cpp msgid "Log Active Async Compiles Count" -msgstr "" +msgstr "Noter le nombre de compilations asynchrones actives" #: servers/visual_server.cpp msgid "Shader Cache Size (MB)" diff --git a/editor/translations/ga.po b/editor/translations/ga.po index 246c04dc63..01810bb059 100644 --- a/editor/translations/ga.po +++ b/editor/translations/ga.po @@ -12451,9 +12451,10 @@ msgstr "Cruthaigh" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13796,12 +13797,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22473,6 +22473,15 @@ msgstr "" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Nód Beochana" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/gl.po b/editor/translations/gl.po index 2445ec4783..1d2fbb333a 100644 --- a/editor/translations/gl.po +++ b/editor/translations/gl.po @@ -13135,9 +13135,10 @@ msgstr "Opcións de Axuste de CuadrÃcula" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Offset:" @@ -14561,17 +14562,18 @@ msgid "Invalid project path (changed anything?)." msgstr "A ruta ao proxecto non é valida. Cambiaches algo?" #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Non se pudo cargar o arquivo de configuración 'project.godot' na ruta do " "proxecto (erro %d). Pode ser que o arquivo non exista; ou que esté " "corrompido." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "Non se pudo editar o arquivo 'project.godot' na ruta do proxecto." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Non se pode abrir proxecto en '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -23866,6 +23868,15 @@ msgstr "Erro" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Ordenar" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/he.po b/editor/translations/he.po index e0a690c9b4..57b2386570 100644 --- a/editor/translations/he.po +++ b/editor/translations/he.po @@ -23,13 +23,16 @@ # Shailee Eliyahu <dev.sle.il@gmail.com>, 2021. # Mati Borlak <matiborlak@gmail.com>, 2022. # Tamir Livneh <fkeyzuwu@gmail.com>, 2022. +# Tomer Ben Rachel <tomerpacific@gmail.com>, 2022. +# moshe mil <milgmoshe@gmail.com>, 2022. +# Blawnode <blawnode@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-05 11:17+0000\n" -"Last-Translator: Tamir Livneh <fkeyzuwu@gmail.com>\n" +"PO-Revision-Date: 2022-11-23 20:47+0000\n" +"Last-Translator: Blawnode <blawnode@gmail.com>\n" "Language-Team: Hebrew <https://hosted.weblate.org/projects/godot-engine/" "godot/he/>\n" "Language: he\n" @@ -38,7 +41,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 && " "n % 10 == 0) ? 2 : 3));\n" -"X-Generator: Weblate 4.14.1-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -57,26 +60,24 @@ msgid "Exit Code" msgstr "קוד יצי××”" #: core/bind/core_bind.cpp -#, fuzzy msgid "V-Sync Enabled" -msgstr "הפעלה" +msgstr "V-Sync מופעל" #: core/bind/core_bind.cpp main/main.cpp msgid "V-Sync Via Compositor" -msgstr "" +msgstr "V-Sync דרך Compositor" #: core/bind/core_bind.cpp main/main.cpp msgid "Delta Smoothing" -msgstr "" +msgstr "החלקת דלט×" #: core/bind/core_bind.cpp -#, fuzzy msgid "Low Processor Usage Mode" -msgstr "×™×™×¦×•× ×ž×™×–×" +msgstr "מצב שימוש × ×ž×•×š של מעבד" #: core/bind/core_bind.cpp msgid "Low Processor Usage Mode Sleep (µsec)" -msgstr "" +msgstr "מצב ×©×™× ×” שימוש × ×ž×•×š במעבד (מיקרו ×©× ×™×•×ª)" #: core/bind/core_bind.cpp main/main.cpp platform/uwp/os_uwp.cpp msgid "Keep Screen On" @@ -105,7 +106,7 @@ msgstr "בלי קצה" #: core/bind/core_bind.cpp msgid "Per Pixel Transparency Enabled" -msgstr "" +msgstr "שקיפות-פר-פיקסל מופעלת" #: core/bind/core_bind.cpp core/project_settings.cpp msgid "Fullscreen" @@ -146,7 +147,7 @@ msgstr "גודל" #: core/bind/core_bind.cpp msgid "Endian Swap" -msgstr "" +msgstr "החלפת סדר ×‘×ª×™× (Byte Order)" #: core/bind/core_bind.cpp msgid "Editor Hint" @@ -161,28 +162,24 @@ msgid "Iterations Per Second" msgstr "×יטרציות ×œ×©× ×™×”" #: core/bind/core_bind.cpp -#, fuzzy msgid "Target FPS" -msgstr "× ×ª×™×‘ המש×ב" +msgstr "יעד קצב פריימי×" #: core/bind/core_bind.cpp -#, fuzzy msgid "Time Scale" -msgstr "מפרק TimeScale" +msgstr "ציר זמן" #: core/bind/core_bind.cpp main/main.cpp -#, fuzzy msgid "Physics Jitter Fix" -msgstr "שקופית פיזיקלית %" +msgstr "תיקון רטט בפיזיקה" #: core/bind/core_bind.cpp editor/plugins/version_control_editor_plugin.cpp msgid "Error" msgstr "שגי××”" #: core/bind/core_bind.cpp -#, fuzzy msgid "Error String" -msgstr "שגי××” בשמירה" +msgstr "מחרוזת שגויה" #: core/bind/core_bind.cpp msgid "Error Line" @@ -213,7 +210,7 @@ msgstr "תור פיקוד" #: core/command_queue_mt.cpp msgid "Multithreading Queue Size (KB)" -msgstr "" +msgstr "גודל תור תהליכי ×ž×©× ×” (KB)" #: core/func_ref.cpp modules/visual_script/visual_script_builtin_funcs.cpp #: modules/visual_script/visual_script_func_nodes.cpp @@ -236,9 +233,8 @@ msgid "Network" msgstr "רשת" #: core/io/file_access_network.cpp -#, fuzzy msgid "Remote FS" -msgstr "מרוחק " +msgstr "שרת ×§×‘×¦×™× ×ž×¨×•×—×§" #: core/io/file_access_network.cpp msgid "Page Size" @@ -246,11 +242,11 @@ msgstr "גודל דף" #: core/io/file_access_network.cpp msgid "Page Read Ahead" -msgstr "" +msgstr "קרי××” מר×ש של דף" #: core/io/http_client.cpp msgid "Blocking Mode Enabled" -msgstr "" +msgstr "מצב חסימה מ×ופשר" #: core/io/http_client.cpp msgid "Connection" @@ -258,25 +254,24 @@ msgstr "חיבור" #: core/io/http_client.cpp msgid "Read Chunk Size" -msgstr "" +msgstr "גודל קרי×ת × ×ª×—" #: core/io/marshalls.cpp msgid "Object ID" msgstr "זהות ×וביקט" #: core/io/multiplayer_api.cpp core/io/packet_peer.cpp -#, fuzzy msgid "Allow Object Decoding" -msgstr "הפעלת שכבות בצל" +msgstr "×פשר ×¤×¢× ×•×— ×ובייקט" #: core/io/multiplayer_api.cpp scene/main/scene_tree.cpp msgid "Refuse New Network Connections" -msgstr "" +msgstr "סירוב ×—×™×‘×•×¨×™× ×—×“×©×™× ×œ×¨×©×ª" #: core/io/multiplayer_api.cpp scene/main/scene_tree.cpp #, fuzzy msgid "Network Peer" -msgstr "מ×פיין רשת" +msgstr "מ×פיין\\עמית רשת" #: core/io/multiplayer_api.cpp scene/animation/animation_player.cpp #, fuzzy @@ -284,26 +279,24 @@ msgid "Root Node" msgstr "×©×™× ×•×™ ×©× ×ž×¤×¨×§ השורש" #: core/io/networked_multiplayer_peer.cpp -#, fuzzy msgid "Refuse New Connections" -msgstr "התחברות" +msgstr "דחה ×—×™×‘×•×¨×™× ×—×“×©×™×" #: core/io/networked_multiplayer_peer.cpp -#, fuzzy msgid "Transfer Mode" -msgstr "מפרק מעברון" +msgstr "מצב מעבר" #: core/io/packet_peer.cpp msgid "Encode Buffer Max Size" -msgstr "" +msgstr "קודד גודל מקסימלי של החוצץ" #: core/io/packet_peer.cpp msgid "Input Buffer Max Size" -msgstr "" +msgstr "×”×›× ×¡ גודל מירבי של החוצץ" #: core/io/packet_peer.cpp msgid "Output Buffer Max Size" -msgstr "" +msgstr "פלוט גודל מירבי של החוצץ" #: core/io/packet_peer.cpp msgid "Stream Peer" @@ -314,17 +307,17 @@ msgid "Big Endian" msgstr "" #: core/io/stream_peer.cpp +#, fuzzy msgid "Data Array" -msgstr "" +msgstr "מערך מידע" #: core/io/stream_peer_ssl.cpp msgid "Blocking Handshake" -msgstr "" +msgstr "לחיצת ×™×“×™×™× ×—×•×¡×ž×ª" #: core/io/udp_server.cpp -#, fuzzy msgid "Max Pending Connections" -msgstr "עריכת חיבור:" +msgstr "×ž×§×¡×™×ž×•× ×—×™×‘×•×¨×™× ×ž×ž×ª×™× ×™×" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -342,9 +335,8 @@ msgid "Not enough bytes for decoding bytes, or invalid format." msgstr "×ין מספיק ×‘×ª×™× ×œ×¤×¢× ×•×— בתי×, ×ו פורמט ×œ× ×ª×§×™×Ÿâ€â€." #: core/math/expression.cpp -#, fuzzy msgid "Invalid input %d (not passed) in expression" -msgstr "קלט שגוי %i (×œ× ×”×•×¢×‘×¨) בתוך הביטוי" +msgstr "קלט שגוי %d (×œ× ×”×•×¢×‘×¨) בתוך הביטוי" #: core/math/expression.cpp msgid "self can't be used because instance is null (not passed)" @@ -373,7 +365,7 @@ msgstr "בקרי××” ל־‚%s’:" #: core/math/random_number_generator.cpp #: modules/opensimplex/open_simplex_noise.cpp msgid "Seed" -msgstr "" +msgstr "גרעין" #: core/math/random_number_generator.cpp msgid "State" @@ -381,7 +373,7 @@ msgstr "מצב" #: core/message_queue.cpp msgid "Message Queue" -msgstr "תור הור×ות" +msgstr "תור הודעות" #: core/message_queue.cpp msgid "Max Size (KB)" @@ -409,7 +401,7 @@ msgstr "הכל" #: core/os/input_event.cpp msgid "Shift" -msgstr "" +msgstr "הסט" #: core/os/input_event.cpp #, fuzzy @@ -418,11 +410,11 @@ msgstr "בקרת גירס×ות" #: core/os/input_event.cpp msgid "Meta" -msgstr "" +msgstr "מט×" #: core/os/input_event.cpp msgid "Command" -msgstr "פיקוד" +msgstr "פקודה" #: core/os/input_event.cpp #, fuzzy @@ -442,11 +434,11 @@ msgstr "סריקת מקורות" #: core/os/input_event.cpp msgid "Physical Scancode" -msgstr "" +msgstr "קוד סריקה פיזי" #: core/os/input_event.cpp msgid "Unicode" -msgstr "" +msgstr "×™×•× ×™×§×•×“" #: core/os/input_event.cpp msgid "Echo" @@ -473,11 +465,11 @@ msgstr "מפתח כפתורי עכבר:" #: core/os/input_event.cpp msgid "Doubleclick" -msgstr "" +msgstr "לחיצת עכבר כפולה" #: core/os/input_event.cpp msgid "Tilt" -msgstr "" +msgstr "הטייה" #: core/os/input_event.cpp msgid "Pressure" @@ -539,7 +531,7 @@ msgstr "מסר" #: core/os/input_event.cpp #, fuzzy msgid "Pitch" -msgstr "×§× ×” מידה:" +msgstr "גובה צליל" #: core/os/input_event.cpp scene/2d/cpu_particles_2d.cpp #: scene/2d/physics_body_2d.cpp scene/3d/cpu_particles.cpp @@ -608,14 +600,12 @@ msgid "Main Scene" msgstr "" #: core/project_settings.cpp -#, fuzzy msgid "Disable stdout" -msgstr "כפתור ×מצעי" +msgstr "בטל stdout" #: core/project_settings.cpp -#, fuzzy msgid "Disable stderr" -msgstr "מושבת" +msgstr "השבת stderr" #: core/project_settings.cpp msgid "Use Hidden Project Data Directory" @@ -857,9 +847,8 @@ msgid "Max Functions" msgstr "יצירת ×¤×•× ×§×¦×™×”" #: core/project_settings.cpp scene/3d/vehicle_body.cpp -#, fuzzy msgid "Compression" -msgstr "גרסה × ×•×›×—×™×ª:" +msgstr "כיווץ" #: core/project_settings.cpp #, fuzzy @@ -900,12 +889,12 @@ msgstr "" #: core/register_core_types.cpp msgid "TCP" -msgstr "" +msgstr "TCP" #: core/register_core_types.cpp #, fuzzy msgid "Connect Timeout Seconds" -msgstr "התחברות למפרק:" +msgstr "×©× ×™×•×ª קצובות להתחברות" #: core/register_core_types.cpp msgid "Packet Peer Stream" @@ -917,12 +906,11 @@ msgstr "" #: core/register_core_types.cpp editor/editor_settings.cpp main/main.cpp msgid "SSL" -msgstr "" +msgstr "SSL" #: core/register_core_types.cpp main/main.cpp -#, fuzzy msgid "Certificates" -msgstr "קודקודי×" +msgstr "תעודות" #: core/resource.cpp editor/dependency_editor.cpp #: editor/editor_resource_picker.cpp @@ -931,9 +919,8 @@ msgid "Resource" msgstr "מש×ב" #: core/resource.cpp -#, fuzzy msgid "Local To Scene" -msgstr "סגירת ×¡×¦× ×”" +msgstr "ייחודי ×œ×¡×¦× ×”" #: core/resource.cpp editor/dependency_editor.cpp #: editor/editor_autoload_settings.cpp editor/plugins/path_editor_plugin.cpp @@ -943,13 +930,12 @@ msgid "Path" msgstr "× ×ª×™×‘" #: core/script_language.cpp -#, fuzzy msgid "Source Code" -msgstr "מש×ב" +msgstr "קוד מקור" #: core/translation.cpp editor/project_settings_editor.cpp msgid "Locale" -msgstr "" +msgstr "מקומי" #: core/translation.cpp msgid "Test" @@ -3430,7 +3416,7 @@ msgstr "×™×™×‘×•× ×ž×©××‘×™× (מחדש)" #: editor/editor_file_system.cpp msgid "Reimport Missing Imported Files" -msgstr "" +msgstr "×™×™×‘×•× ×§×‘×¦×™× ×—×¡×¨×™× ×ž×—×“×©" #: editor/editor_help.cpp scene/2d/camera_2d.cpp scene/gui/control.cpp #: scene/gui/nine_patch_rect.cpp scene/resources/dynamic_font.cpp @@ -4324,11 +4310,11 @@ msgstr "החלפת ×œ×©×•× ×™×ª ×¡×¦× ×”" #: editor/editor_node.cpp msgid "Always Show Close Button" -msgstr "" +msgstr "תמיד הר××” כפתור סגירה" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Resize If Many Tabs" -msgstr "" +msgstr "×©×™× ×•×™ גודל כשט××‘×™× ×ž×¨×•×‘×™×" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Minimum Width" @@ -4353,7 +4339,7 @@ msgstr "" #: editor/editor_node.cpp msgid "Save On Focus Loss" -msgstr "" +msgstr "שמור ב×יבוד פוקוס" #: editor/editor_node.cpp editor/editor_settings.cpp #, fuzzy @@ -4385,13 +4371,12 @@ msgid "Localize Settings" msgstr "הגדרות" #: editor/editor_node.cpp -#, fuzzy msgid "Restore Scenes On Load" -msgstr "מפרק TimeSeek" +msgstr "שיחזור ×¡×¦× ×” כשמבוצע ×˜×¢×™× ×”" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Show Thumbnail On Hover" -msgstr "" +msgstr "הר××” דוגמית בריחוף מעל" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Inspector" @@ -4435,7 +4420,7 @@ msgstr "פתיחה במפקח" #: editor/editor_node.cpp msgid "Default Color Picker Mode" -msgstr "" +msgstr "מצב ברירת מחדל לבחירת צבעי×" #: editor/editor_node.cpp editor/plugins/version_control_editor_plugin.cpp msgid "Version Control" @@ -5364,7 +5349,7 @@ msgstr "ערכה מוגדרת…" #: editor/editor_settings.cpp msgid "Icon And Font Color" -msgstr "" +msgstr "צבע ×יקון ×•×¤×•× ×˜" #: editor/editor_settings.cpp #, fuzzy @@ -5524,9 +5509,8 @@ msgid "Auto Indent" msgstr "×”×–×—×” ×וטומטית" #: editor/editor_settings.cpp -#, fuzzy msgid "Convert Indent On Save" -msgstr "המרת הזחות לרווחי×" +msgstr "המרת הזחות בשמירה" #: editor/editor_settings.cpp scene/gui/text_edit.cpp #, fuzzy @@ -5586,7 +5570,6 @@ msgid "Show Line Numbers" msgstr "שורה מספר:" #: editor/editor_settings.cpp -#, fuzzy msgid "Line Numbers Zero Padded" msgstr "שורה מספר:" @@ -5613,7 +5596,7 @@ msgstr "" #: editor/editor_settings.cpp msgid "Show Line Length Guidelines" -msgstr "" +msgstr "הר××” מדריך ×ורך קו" #: editor/editor_settings.cpp msgid "Line Length Guideline Soft Column" @@ -5647,7 +5630,7 @@ msgstr "" #: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp msgid "Restore Scripts On Load" -msgstr "" +msgstr "שיחזור ×¡×§×¨×™×¤×˜×™× ×‘×¢×ª ×˜×¢×™× ×”" #: editor/editor_settings.cpp msgid "Auto Reload And Parse Scripts On Save" @@ -5887,7 +5870,7 @@ msgstr "" #: editor/editor_settings.cpp msgid "Emulate 3 Button Mouse" -msgstr "" +msgstr "דמה עכבר בעל 3 כפתורי×" #: editor/editor_settings.cpp msgid "Orbit Modifier" @@ -12414,23 +12397,20 @@ msgid "Edit Items" msgstr "עריכת ×ž×¡× × ×™×" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Types:" -msgstr "סוג" +msgstr "סוגי×:" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Add Type:" -msgstr "סוג" +msgstr "הוסף סוג:" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Add Item:" -msgstr "הוספת קלט" +msgstr "הוסף פריט:" #: editor/plugins/theme_editor_plugin.cpp msgid "Add StyleBox Item" -msgstr "" +msgstr "הוסף פריט StyleBox" #: editor/plugins/theme_editor_plugin.cpp #, fuzzy @@ -13243,9 +13223,10 @@ msgstr "הגדרות הצמדה" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "היסט רשת:" @@ -13451,7 +13432,7 @@ msgstr "" #: editor/plugins/version_control_editor_plugin.cpp msgid "SSH Passphrase" -msgstr "" +msgstr "סיסמת SSH" #: editor/plugins/version_control_editor_plugin.cpp #, fuzzy @@ -14667,13 +14648,13 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "" +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "×œ× × ×™×ª×Ÿ לפתוח ×ת ‚%s’." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -18440,7 +18421,7 @@ msgstr "" #: modules/visual_script/visual_script_flow_control.cpp msgid "While" -msgstr "" +msgstr "כל עוד" #: modules/visual_script/visual_script_flow_control.cpp msgid "while (cond):" @@ -20462,16 +20443,15 @@ msgstr "" #: platform/osx/export/export.cpp msgid "macOS" -msgstr "" +msgstr "macOS" #: platform/osx/export/export.cpp msgid "Force Builtin Codesign" msgstr "" #: platform/uwp/export/export.cpp -#, fuzzy msgid "Architecture" -msgstr "הוספת ערך ×רכיטקטורה" +msgstr "×רכיטקטורה" #: platform/uwp/export/export.cpp #, fuzzy @@ -20508,14 +20488,12 @@ msgid "Signing" msgstr "×ות" #: platform/uwp/export/export.cpp -#, fuzzy msgid "Certificate" -msgstr "קודקודי×" +msgstr "תעודה" #: platform/uwp/export/export.cpp -#, fuzzy msgid "Algorithm" -msgstr "× ×™×¤×•×™ שגי×ות" +msgstr "×לגורית×" #: platform/uwp/export/export.cpp msgid "Major" @@ -20845,7 +20823,7 @@ msgstr "" #: platform/windows/export/export.cpp msgid "Wine" -msgstr "" +msgstr "Wine" #: platform/x11/export/export.cpp msgid "32-bit executables cannot have embedded data >= 4 GiB." @@ -20886,12 +20864,12 @@ msgstr "×”×–×—×” משמ×ל" #: scene/2d/animated_sprite.cpp scene/2d/sprite.cpp scene/3d/sprite_3d.cpp #: scene/gui/texture_button.cpp scene/gui/texture_rect.cpp msgid "Flip H" -msgstr "" +msgstr "הפוך ×ופקית" #: scene/2d/animated_sprite.cpp scene/2d/sprite.cpp scene/3d/sprite_3d.cpp #: scene/gui/texture_button.cpp scene/gui/texture_rect.cpp msgid "Flip V" -msgstr "" +msgstr "הפוך ×× ×›×™×ª" #: scene/2d/area_2d.cpp scene/3d/area.cpp #, fuzzy @@ -20931,7 +20909,7 @@ msgstr "תצוגה מקדימה:" #: scene/2d/area_2d.cpp scene/2d/cpu_particles_2d.cpp scene/3d/area.cpp #: scene/3d/cpu_particles.cpp scene/resources/particles_material.cpp msgid "Gravity" -msgstr "" +msgstr "כוח כבידה" #: scene/2d/area_2d.cpp scene/3d/area.cpp #, fuzzy @@ -20955,20 +20933,18 @@ msgstr "דריסה" #: scene/2d/audio_stream_player_2d.cpp scene/audio/audio_stream_player.cpp #: scene/gui/video_player.cpp servers/audio/effects/audio_effect_amplify.cpp msgid "Volume dB" -msgstr "" +msgstr "×•×•×œ×™×•× ×‘×“×¦×™×‘×œ×™×" #: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp #: scene/audio/audio_stream_player.cpp #: servers/audio/effects/audio_effect_pitch_shift.cpp -#, fuzzy msgid "Pitch Scale" -msgstr "×§× ×” מידה:" +msgstr "גובל צליל" #: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp #: scene/audio/audio_stream_player.cpp scene/gui/video_player.cpp -#, fuzzy msgid "Autoplay" -msgstr "הפעלת/ביטול הפעלה ×וטומטית" +msgstr "הפעלה ×וטומטית" #: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp #: scene/audio/audio_stream_player.cpp @@ -21861,9 +21837,8 @@ msgid "Rotation Degrees" msgstr "הטיה של %s מעלות." #: scene/2d/node_2d.cpp scene/3d/spatial.cpp -#, fuzzy msgid "Global Rotation" -msgstr "קבוע" +msgstr "רוטציה גלובלית" #: scene/2d/node_2d.cpp #, fuzzy @@ -21887,12 +21862,11 @@ msgstr "" #: scene/2d/parallax_background.cpp scene/gui/scroll_container.cpp #: scene/resources/default_theme/default_theme.cpp msgid "Scroll" -msgstr "" +msgstr "גלול" #: scene/2d/parallax_background.cpp -#, fuzzy msgid "Base Offset" -msgstr "היסט רשת:" +msgstr "סטייה מהבסיס" #: scene/2d/parallax_background.cpp #, fuzzy @@ -21910,7 +21884,7 @@ msgstr "בסוף" #: scene/2d/parallax_background.cpp msgid "Ignore Camera Zoom" -msgstr "" +msgstr "×”×ª×¢×œ× ×ž×–×•× ×”×ž×¦×œ×ž×”" #: scene/2d/parallax_layer.cpp msgid "" @@ -22215,15 +22189,15 @@ msgstr "יצירת תיקייה" #: scene/2d/ray_cast_2d.cpp scene/3d/ray_cast.cpp msgid "Collide With" -msgstr "" +msgstr "×ž×ª× ×’×© ×¢×" #: scene/2d/ray_cast_2d.cpp scene/3d/camera.cpp scene/3d/ray_cast.cpp msgid "Areas" -msgstr "" +msgstr "×זורי×" #: scene/2d/ray_cast_2d.cpp scene/3d/camera.cpp scene/3d/ray_cast.cpp msgid "Bodies" -msgstr "" +msgstr "גופי×" #: scene/2d/remote_transform_2d.cpp msgid "Path property must point to a valid Node2D node to work." @@ -22264,11 +22238,11 @@ msgstr "×œ×¢×¦× ×–×• ×ין ×ª× ×•×—×ª REST ר×ויה. עבור למפרק ×”- #: scene/2d/sprite.cpp scene/3d/sprite_3d.cpp msgid "Hframes" -msgstr "" +msgstr "שקופיות ×ופקיות" #: scene/2d/sprite.cpp scene/3d/sprite_3d.cpp msgid "Vframes" -msgstr "" +msgstr "שקופיות ×× ×›×™×•×ª" #: scene/2d/sprite.cpp scene/3d/sprite_3d.cpp #, fuzzy @@ -22315,9 +22289,8 @@ msgid "Tile Origin" msgstr "" #: scene/2d/tile_map.cpp -#, fuzzy msgid "Y Sort" -msgstr "מיון" +msgstr "מיון ×× ×›×™" #: scene/2d/tile_map.cpp #, fuzzy @@ -22339,13 +22312,12 @@ msgid "Cell Clip UV" msgstr "" #: scene/2d/tile_map.cpp -#, fuzzy msgid "Use Parent" -msgstr "עריכת מצולע" +msgstr "השתמש בהורה" #: scene/2d/tile_map.cpp msgid "Use Kinematic" -msgstr "" +msgstr "השתמש בפיזיקה ×§×™× ×ž×˜×™×ª" #: scene/2d/touch_screen_button.cpp msgid "Shape Centered" @@ -22380,7 +22352,7 @@ msgstr "הדבקת ×”× ×¤×©×”" #: scene/2d/visibility_notifier_2d.cpp scene/3d/visibility_notifier.cpp msgid "Freeze Bodies" -msgstr "" +msgstr "×”×§×¤× ×’×•×¤×™×" #: scene/2d/visibility_notifier_2d.cpp #, fuzzy @@ -22576,7 +22548,7 @@ msgstr "×ž×¡× × ×™×..." #: scene/3d/baked_lightmap.cpp scene/resources/texture.cpp msgid "Use HDR" -msgstr "" +msgstr "השתמש בHDR" #: scene/3d/baked_lightmap.cpp #, fuzzy @@ -22598,14 +22570,12 @@ msgid "Generate" msgstr "כללי" #: scene/3d/baked_lightmap.cpp -#, fuzzy msgid "Max Size" -msgstr "מבט קדמי" +msgstr "גודל מקסימלי" #: scene/3d/baked_lightmap.cpp -#, fuzzy msgid "Custom Sky" -msgstr "גזירת מפרקי×" +msgstr "×©×ž×™×™× ×ž×•×ª××ž×™× ×ישית" #: scene/3d/baked_lightmap.cpp #, fuzzy @@ -22613,9 +22583,8 @@ msgid "Custom Sky Rotation Degrees" msgstr "הטיה של %s מעלות." #: scene/3d/baked_lightmap.cpp scene/3d/ray_cast.cpp -#, fuzzy msgid "Custom Color" -msgstr "גזירת מפרקי×" +msgstr "צבע מות×× ×ישית" #: scene/3d/baked_lightmap.cpp #, fuzzy @@ -22642,9 +22611,8 @@ msgid "Light Data" msgstr "ימין" #: scene/3d/bone_attachment.cpp scene/3d/physics_body.cpp -#, fuzzy msgid "Bone Name" -msgstr "×©× ×”×ž×¤×¨×§:" +msgstr "×©× ×ž×¤×¨×§" #: scene/3d/camera.cpp msgid "Keep Aspect" @@ -22666,12 +22634,11 @@ msgstr "מיז×" #: scene/3d/camera.cpp msgid "FOV" -msgstr "" +msgstr "קוטר ר××™×™×”" #: scene/3d/camera.cpp -#, fuzzy msgid "Frustum Offset" -msgstr "היסט רשת:" +msgstr "היסט רשת" #: scene/3d/camera.cpp #, fuzzy @@ -23427,7 +23394,7 @@ msgstr "×ותיות ×§×˜× ×•×ª" #: scene/3d/physics_joint.cpp msgid "Motor" -msgstr "" +msgstr "מוטורי" #: scene/3d/physics_joint.cpp #, fuzzy @@ -24047,6 +24014,15 @@ msgstr "שגי××”!" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "מיון" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" @@ -24350,7 +24326,7 @@ msgstr "" #: scene/animation/skeleton_ik.cpp msgid "Magnet" -msgstr "" +msgstr "×ž×’× ×˜" #: scene/animation/skeleton_ik.cpp #, fuzzy @@ -25346,7 +25322,7 @@ msgstr "הוספת רצועה" #: scene/gui/video_player.cpp scene/main/scene_tree.cpp scene/main/timer.cpp msgid "Paused" -msgstr "" +msgstr "עצור" #: scene/gui/video_player.cpp #, fuzzy @@ -25368,9 +25344,8 @@ msgid "Follow Viewport" msgstr "" #: scene/main/http_request.cpp -#, fuzzy msgid "Download File" -msgstr "הורדה" +msgstr "הורדת קובץ" #: scene/main/http_request.cpp #, fuzzy @@ -25435,14 +25410,12 @@ msgid "Owner" msgstr "×‘×¢×œ×™× ×©×œ:" #: scene/main/node.cpp scene/main/scene_tree.cpp -#, fuzzy msgid "Multiplayer" -msgstr "קביעה מרובה:" +msgstr "רב-משתתפי×" #: scene/main/node.cpp -#, fuzzy msgid "Custom Multiplayer" -msgstr "קביעה מרובה:" +msgstr "רב-×ž×©×ª×ª×¤×™× ×ž×•×ª×× ×ישית" #: scene/main/node.cpp #, fuzzy @@ -25475,7 +25448,7 @@ msgstr "שורש ×¡×¦×™× ×” חדש" #: scene/main/scene_tree.cpp msgid "Root" -msgstr "" +msgstr "שורש" #: scene/main/scene_tree.cpp #, fuzzy @@ -25540,7 +25513,7 @@ msgstr "" #: scene/main/scene_tree.cpp scene/main/viewport.cpp msgid "HDR" -msgstr "" +msgstr "HDR" #: scene/main/scene_tree.cpp scene/main/viewport.cpp msgid "Use 32 BPC Depth" @@ -25573,9 +25546,8 @@ msgid "" msgstr "" #: scene/main/timer.cpp -#, fuzzy msgid "Autostart" -msgstr "התחלה מחדש ×וטומטית:" +msgstr "התחלה ×וטומטית" #: scene/main/viewport.cpp #, fuzzy @@ -25638,14 +25610,12 @@ msgid "Debanding" msgstr "קישור" #: scene/main/viewport.cpp -#, fuzzy msgid "Disable 3D" -msgstr "מושבת" +msgstr "השבת תלת מימד" #: scene/main/viewport.cpp -#, fuzzy msgid "Keep 3D Linear" -msgstr "×œ×™× ×™×רי" +msgstr "הש×ר תלת מימד ×œ×™× ×רי" #: scene/main/viewport.cpp msgid "Render Direct To Screen" @@ -25735,11 +25705,11 @@ msgstr "ש×" #: scene/register_scene_types.cpp msgid "2D Render" -msgstr "" +msgstr "×¨× ×“×•×¨ בדו-מימד" #: scene/register_scene_types.cpp msgid "3D Render" -msgstr "" +msgstr "×¨× ×“×•×¨ בתלת-מימד" #: scene/register_scene_types.cpp #, fuzzy @@ -25783,11 +25753,11 @@ msgstr "מפרק ערבוב" #: scene/resources/audio_stream_sample.cpp msgid "Stereo" -msgstr "" +msgstr "סטרי×ו" #: scene/resources/concave_polygon_shape_2d.cpp msgid "Segments" -msgstr "" +msgstr "חלקי×" #: scene/resources/curve.cpp #, fuzzy @@ -25796,11 +25766,11 @@ msgstr "חצי רזולוציה" #: scene/resources/curve.cpp msgid "Bake Interval" -msgstr "" +msgstr "זמן בין ×פייה" #: scene/resources/default_theme/default_theme.cpp msgid "Panel" -msgstr "" +msgstr "לוח" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -25839,7 +25809,7 @@ msgstr "לול×ת ×”× ×¤×©×”" #: scene/resources/default_theme/default_theme.cpp msgid "Arrow" -msgstr "" +msgstr "×—×¥" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -25958,7 +25928,7 @@ msgstr "×¡× ×Ÿ ×ותות" #: scene/resources/default_theme/default_theme.cpp msgid "Minimum Spaces" -msgstr "" +msgstr "×ž×™× ×™×ž×•× ×¨×•×•×—×™×" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -25967,11 +25937,11 @@ msgstr "B" #: scene/resources/default_theme/default_theme.cpp msgid "FG" -msgstr "" +msgstr "FG" #: scene/resources/default_theme/default_theme.cpp msgid "Tab" -msgstr "" +msgstr "×œ×©×•× ×™×ª" #: scene/resources/default_theme/default_theme.cpp #: scene/resources/dynamic_font.cpp scene/resources/world.cpp @@ -26044,7 +26014,7 @@ msgstr "" #: scene/resources/default_theme/default_theme.cpp msgid "Decrement" -msgstr "" +msgstr "הורדה ב1" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26355,7 +26325,7 @@ msgstr "מושבת" #: scene/resources/default_theme/default_theme.cpp msgid "Menu" -msgstr "" +msgstr "תפריט" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26392,7 +26362,7 @@ msgstr "" #: scene/resources/default_theme/default_theme.cpp msgid "Large" -msgstr "" +msgstr "גדול" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26436,7 +26406,7 @@ msgstr "מבט שמ×לי" #: scene/resources/default_theme/default_theme.cpp msgid "Screen Picker" -msgstr "" +msgstr "בוחר מהמסך" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26489,7 +26459,7 @@ msgstr "×ª×›×•× ×•×ª מרכזיות:" #: scene/resources/default_theme/default_theme.cpp msgid "Bold Italics Font" -msgstr "" +msgstr "גופן מודגש ומוטה" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26533,11 +26503,11 @@ msgstr "×”×–×—×” ×וטומטית" #: scene/resources/default_theme/default_theme.cpp msgid "Minus" -msgstr "" +msgstr "×ž×™× ×•×¡" #: scene/resources/default_theme/default_theme.cpp msgid "More" -msgstr "" +msgstr "עוד" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26584,7 +26554,7 @@ msgstr "עותק" #: scene/resources/dynamic_font.cpp msgid "Hinting" -msgstr "" +msgstr "רמיזה" #: scene/resources/dynamic_font.cpp #, fuzzy @@ -26598,7 +26568,7 @@ msgstr "מיקוד × ×ª×™×‘" #: scene/resources/dynamic_font.cpp msgid "Outline Size" -msgstr "" +msgstr "גודל קו מת×ר" #: scene/resources/dynamic_font.cpp #, fuzzy @@ -26627,11 +26597,11 @@ msgstr "קישור × ×ª×•× ×™ ‫מפרק" #: scene/resources/environment.cpp msgid "Background" -msgstr "" +msgstr "רקע" #: scene/resources/environment.cpp scene/resources/sky.cpp msgid "Sky" -msgstr "" +msgstr "שמיי×" #: scene/resources/environment.cpp #, fuzzy @@ -26673,7 +26643,7 @@ msgstr "×”× ×¤×©×”" #: scene/resources/environment.cpp msgid "Fog" -msgstr "" +msgstr "×ובך" #: scene/resources/environment.cpp #, fuzzy @@ -26746,7 +26716,7 @@ msgstr "ייצו×" #: scene/resources/environment.cpp msgid "White" -msgstr "" +msgstr "לבן" #: scene/resources/environment.cpp msgid "Auto Exposure" @@ -26787,11 +26757,11 @@ msgstr "עומק" #: scene/resources/environment.cpp scene/resources/material.cpp msgid "Roughness" -msgstr "" +msgstr "חספוס" #: scene/resources/environment.cpp msgid "SSAO" -msgstr "" +msgstr "SSAO" #: scene/resources/environment.cpp #, fuzzy @@ -26813,7 +26783,7 @@ msgstr "" #: scene/resources/environment.cpp msgid "Blur" -msgstr "" +msgstr "טשטוש" #: scene/resources/environment.cpp msgid "Edge Sharpness" @@ -26849,7 +26819,7 @@ msgstr "מפתחי×" #: scene/resources/environment.cpp #: servers/audio/effects/audio_effect_chorus.cpp msgid "1" -msgstr "" +msgstr "1" #: scene/resources/environment.cpp #: servers/audio/effects/audio_effect_chorus.cpp @@ -28502,7 +28472,7 @@ msgstr "עריכת מצולע" #: servers/visual_server.cpp msgid "Max Active Spheres" -msgstr "" +msgstr "×ž×§×¡×™×ž×•× ×›×“×•×¨×™× ×קטיביי×" #: servers/visual_server.cpp #, fuzzy diff --git a/editor/translations/hi.po b/editor/translations/hi.po index 5e3b28ff79..657ee0ff41 100644 --- a/editor/translations/hi.po +++ b/editor/translations/hi.po @@ -16,13 +16,14 @@ # harvinder rathor <harvinderr09@gmail.com>, 2021. # Sumanyu Aggarwal <sumanyu.code@gmail.com>, 2021. # Arin <upadhyay.arin@gmail.com>, 2022. +# Anime Fanz <accc1431@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-06-08 06:48+0000\n" -"Last-Translator: Arin <upadhyay.arin@gmail.com>\n" +"PO-Revision-Date: 2022-12-05 04:25+0000\n" +"Last-Translator: Anime Fanz <accc1431@gmail.com>\n" "Language-Team: Hindi <https://hosted.weblate.org/projects/godot-engine/godot/" "hi/>\n" "Language: hi\n" @@ -30,7 +31,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.13-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -242,72 +243,71 @@ msgid "Connection" msgstr "संबंध" #: core/io/http_client.cpp +#, fuzzy msgid "Read Chunk Size" -msgstr "" +msgstr "चंक आकार पढ़ें" #: core/io/marshalls.cpp msgid "Object ID" -msgstr "" +msgstr "वसà¥à¤¤à¥ आईडी" #: core/io/multiplayer_api.cpp core/io/packet_peer.cpp +#, fuzzy msgid "Allow Object Decoding" -msgstr "" +msgstr "ऑबà¥à¤œà¥‡à¤•à¥à¤Ÿ डिकोडिंग की अनà¥à¤®à¤¤à¤¿ दें" #: core/io/multiplayer_api.cpp scene/main/scene_tree.cpp msgid "Refuse New Network Connections" -msgstr "" +msgstr "नठनेटवरà¥à¤• कनेकà¥à¤¶à¤¨ को मना करें" #: core/io/multiplayer_api.cpp scene/main/scene_tree.cpp msgid "Network Peer" -msgstr "" +msgstr "नेटवरà¥à¤• सहकरà¥à¤®à¥€" #: core/io/multiplayer_api.cpp scene/animation/animation_player.cpp -#, fuzzy msgid "Root Node" -msgstr "à¤à¤• नया बनाà¤à¤‚" +msgstr "रूट नोड" #: core/io/networked_multiplayer_peer.cpp -#, fuzzy msgid "Refuse New Connections" -msgstr "जोड़िये" +msgstr "नठकनेकà¥à¤¶à¤¨à¥‹à¤‚ को मना करें" #: core/io/networked_multiplayer_peer.cpp #, fuzzy msgid "Transfer Mode" -msgstr "सदसà¥à¤¯à¤¤à¤¾ बनाà¤à¤‚" +msgstr "रीति का अंतरण करें" #: core/io/packet_peer.cpp msgid "Encode Buffer Max Size" -msgstr "" +msgstr "à¤à¤¨à¤•à¥‹à¤¡ बफर अधिकतम आकार" #: core/io/packet_peer.cpp msgid "Input Buffer Max Size" -msgstr "" +msgstr "इनपà¥à¤Ÿ बफर अधिकतम आकार" #: core/io/packet_peer.cpp msgid "Output Buffer Max Size" -msgstr "" +msgstr "आउटपà¥à¤Ÿ बफर अधिकतम आकार" #: core/io/packet_peer.cpp msgid "Stream Peer" -msgstr "" +msgstr "सà¥à¤Ÿà¥à¤°à¥€à¤® पीयर" #: core/io/stream_peer.cpp msgid "Big Endian" -msgstr "" +msgstr "बड़े à¤à¤‚डियन" #: core/io/stream_peer.cpp msgid "Data Array" -msgstr "" +msgstr "डेटा à¤à¤°à¥‡" #: core/io/stream_peer_ssl.cpp msgid "Blocking Handshake" -msgstr "" +msgstr "हैंडशेक बà¥à¤²à¥‰à¤• करना" #: core/io/udp_server.cpp -#, fuzzy msgid "Max Pending Connections" -msgstr "कनेकà¥à¤¶à¤¨ संपादित करें:" +msgstr "अधिकतम लंबित कनेकà¥à¤¶à¤¨" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -325,9 +325,8 @@ msgid "Not enough bytes for decoding bytes, or invalid format." msgstr "अमानà¥à¤¯ फ़ोरà¥à¤®à¥ˆà¤Ÿ, या बाइटà¥à¤¸ डिकोडिंग के लिठपरà¥à¤¯à¤¾à¤ªà¥à¤¤ बाइटà¥à¤¸ नहीं।" #: core/math/expression.cpp -#, fuzzy msgid "Invalid input %d (not passed) in expression" -msgstr "à¤à¤•à¥à¤¸à¤ªà¥à¤°à¥‡à¤¶à¤¨ मे अमानà¥à¤¯ इनपà¥à¤Ÿ %i (पास नहीं हो पाया)" +msgstr "वà¥à¤¯à¤‚जक में अमानà¥à¤¯ इनपà¥à¤Ÿ %d (पास नहीं हà¥à¤†)" #: core/math/expression.cpp msgid "self can't be used because instance is null (not passed)" @@ -355,144 +354,141 @@ msgstr "'%s ' को कॉल करने पर:" #: core/math/random_number_generator.cpp #: modules/opensimplex/open_simplex_noise.cpp +#, fuzzy msgid "Seed" -msgstr "" +msgstr "बीज" #: core/math/random_number_generator.cpp +#, fuzzy msgid "State" -msgstr "" +msgstr "राजà¥à¤¯" #: core/message_queue.cpp +#, fuzzy msgid "Message Queue" -msgstr "" +msgstr "संदेश कतार" #: core/message_queue.cpp msgid "Max Size (KB)" -msgstr "" +msgstr "अधिकतम आकार (केबी)" #: core/os/input.cpp -#, fuzzy msgid "Mouse Mode" -msgstr "दृशà¥à¤¯ रोकें" +msgstr "माउस मोड" #: core/os/input.cpp msgid "Use Accumulated Input" -msgstr "" +msgstr "संचित इनपà¥à¤Ÿ का पà¥à¤°à¤¯à¥‹à¤— करें" #: core/os/input_event.cpp editor/project_settings_editor.cpp #: servers/audio_server.cpp msgid "Device" -msgstr "" +msgstr "उपकरण" #: core/os/input_event.cpp +#, fuzzy msgid "Alt" -msgstr "" +msgstr "ऑलà¥à¤Ÿ" #: core/os/input_event.cpp msgid "Shift" -msgstr "" +msgstr "शिफà¥à¤Ÿ" #: core/os/input_event.cpp -#, fuzzy msgid "Control" -msgstr "वरà¥à¤œà¤¨ कंटà¥à¤°à¥‹à¤²" +msgstr "कंटà¥à¤°à¥‹à¤²" #: core/os/input_event.cpp msgid "Meta" -msgstr "" +msgstr "मेटा" #: core/os/input_event.cpp -#, fuzzy msgid "Command" -msgstr "समà¥à¤¦à¤¾à¤¯" +msgstr "कमांड" #: core/os/input_event.cpp #, fuzzy msgid "Physical" -msgstr "फिजिकà¥à¤¸ फà¥à¤°à¥‡à¤® %" +msgstr "शारीरिक" #: core/os/input_event.cpp scene/2d/touch_screen_button.cpp #: scene/gui/base_button.cpp scene/gui/texture_button.cpp #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Pressed" msgstr "पà¥à¤°à¥€à¤¸à¥‡à¤Ÿ" #: core/os/input_event.cpp -#, fuzzy msgid "Scancode" -msgstr "सà¥à¤°à¥‹à¤¤à¤¸à¥à¤•à¥ˆà¤¨ कीजिये" +msgstr "सà¥à¤•à¥ˆà¤¨à¤•à¥‹à¤¡" #: core/os/input_event.cpp msgid "Physical Scancode" -msgstr "" +msgstr "à¤à¥Œà¤¤à¤¿à¤• सà¥à¤•à¥ˆà¤¨à¤•à¥‹à¤¡" #: core/os/input_event.cpp msgid "Unicode" -msgstr "" +msgstr "यूनिकोड" #: core/os/input_event.cpp msgid "Echo" -msgstr "" +msgstr "इको" #: core/os/input_event.cpp scene/gui/base_button.cpp msgid "Button Mask" -msgstr "" +msgstr "बटन मासà¥à¤•" #: core/os/input_event.cpp scene/2d/node_2d.cpp scene/gui/control.cpp -#, fuzzy msgid "Global Position" -msgstr "कोनà¥à¤¸à¥à¤Ÿà¤¨à¥à¤Ÿ" +msgstr "वैशà¥à¤µà¤¿à¤• सà¥à¤¥à¤¿à¤¤à¤¿" #: core/os/input_event.cpp msgid "Factor" -msgstr "" +msgstr "फैकà¥à¤Ÿà¤°" #: core/os/input_event.cpp msgid "Button Index" -msgstr "" +msgstr "बटन अनà¥à¤•à¥à¤°à¤®à¤£à¤¿à¤•à¤¾" #: core/os/input_event.cpp msgid "Doubleclick" -msgstr "" +msgstr "डबलकà¥à¤²à¤¿à¤•" #: core/os/input_event.cpp msgid "Tilt" -msgstr "" +msgstr "टिलà¥à¤Ÿ" #: core/os/input_event.cpp -#, fuzzy msgid "Pressure" -msgstr "पà¥à¤°à¥€à¤¸à¥‡à¤Ÿ" +msgstr "पà¥à¤°à¥‡à¤¶à¤°" #: core/os/input_event.cpp msgid "Pen Inverted" -msgstr "" +msgstr "पेन उलà¥à¤Ÿà¤¾" #: core/os/input_event.cpp +#, fuzzy msgid "Relative" -msgstr "" +msgstr "रिशà¥à¤¤à¥‡à¤¦à¤¾à¤°" #: core/os/input_event.cpp scene/2d/camera_2d.cpp scene/2d/cpu_particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/interpolated_camera.cpp #: scene/animation/animation_player.cpp scene/resources/environment.cpp #: scene/resources/particles_material.cpp msgid "Speed" -msgstr "" +msgstr "सà¥à¤ªà¥€à¤¡" #: core/os/input_event.cpp editor/project_settings_editor.cpp #: scene/3d/sprite_3d.cpp msgid "Axis" -msgstr "" +msgstr "अकà¥à¤·" #: core/os/input_event.cpp -#, fuzzy msgid "Axis Value" -msgstr "(मूलà¥à¤¯)" +msgstr "à¤à¤•à¥à¤¸à¤¿à¤¸ वैलà¥à¤¯à¥‚" #: core/os/input_event.cpp modules/visual_script/visual_script_func_nodes.cpp msgid "Index" -msgstr "" +msgstr "इंडेकà¥à¤¸" #: core/os/input_event.cpp editor/project_settings_editor.cpp #: modules/visual_script/visual_script_nodes.cpp @@ -503,60 +499,55 @@ msgstr "कारà¥à¤¯" #: core/os/input_event.cpp scene/resources/environment.cpp #: scene/resources/material.cpp msgid "Strength" -msgstr "" +msgstr "शकà¥à¤¤à¤¿" #: core/os/input_event.cpp msgid "Delta" -msgstr "" +msgstr "डेलà¥à¤Ÿà¤¾" #: core/os/input_event.cpp -#, fuzzy msgid "Channel" -msgstr "बदली" +msgstr "चैनल" #: core/os/input_event.cpp main/main.cpp -#, fuzzy msgid "Message" -msgstr "समà¥à¤¦à¤¾à¤¯" +msgstr "मैसेज" #: core/os/input_event.cpp msgid "Pitch" -msgstr "" +msgstr "पिच" #: core/os/input_event.cpp scene/2d/cpu_particles_2d.cpp #: scene/2d/physics_body_2d.cpp scene/3d/cpu_particles.cpp #: scene/3d/physics_body.cpp scene/resources/particles_material.cpp msgid "Velocity" -msgstr "" +msgstr "वेग" #: core/os/input_event.cpp msgid "Instrument" -msgstr "" +msgstr "साधन" #: core/os/input_event.cpp -#, fuzzy msgid "Controller Number" -msgstr "लाइन कà¥à¤°.:" +msgstr "नियंतà¥à¤°à¤• संखà¥à¤¯à¤¾" #: core/os/input_event.cpp msgid "Controller Value" -msgstr "" +msgstr "नियंतà¥à¤°à¤• मान" #: core/project_settings.cpp editor/editor_node.cpp main/main.cpp #: platform/iphone/export/export.cpp platform/osx/export/export.cpp #: platform/windows/export/export.cpp -#, fuzzy msgid "Application" -msgstr "कारà¥à¤¯" +msgstr "अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤—" #: core/project_settings.cpp main/main.cpp msgid "Config" -msgstr "" +msgstr "कॉनà¥à¤«à¤¼à¤¿à¤—" #: core/project_settings.cpp -#, fuzzy msgid "Project Settings Override" -msgstr "पà¥à¤°à¥‹à¤œà¥‡à¤•à¥à¤Ÿ सेटिंग ..." +msgstr "पà¥à¤°à¥‹à¤œà¥‡à¤•à¥à¤Ÿ सेटिंगà¥à¤¸ ओवरराइड" #: core/project_settings.cpp core/resource.cpp #: editor/animation_track_editor.cpp editor/editor_autoload_settings.cpp @@ -582,47 +573,44 @@ msgstr "विवरण" #: main/main.cpp platform/android/export/export_plugin.cpp #: platform/javascript/export/export.cpp msgid "Run" -msgstr "" +msgstr "रन" #: core/project_settings.cpp editor/editor_node.cpp #: editor/run_settings_dialog.cpp main/main.cpp msgid "Main Scene" -msgstr "" +msgstr "मà¥à¤–à¥à¤¯ दृशà¥à¤¯" #: core/project_settings.cpp -#, fuzzy msgid "Disable stdout" msgstr "बंद कर दिया गया है" #: core/project_settings.cpp -#, fuzzy msgid "Disable stderr" msgstr "बंद कर दिया गया है" #: core/project_settings.cpp msgid "Use Hidden Project Data Directory" -msgstr "" +msgstr "छिपी हà¥à¤ˆ पà¥à¤°à¥‹à¤œà¥‡à¤•à¥à¤Ÿ डेटा निरà¥à¤¦à¥‡à¤¶à¤¿à¤•à¤¾ का उपयोग करें" #: core/project_settings.cpp msgid "Use Custom User Dir" -msgstr "" +msgstr "कसà¥à¤Ÿà¤® उपयोगकरà¥à¤¤à¤¾ डायरेकà¥à¤Ÿà¤°à¥€ का उपयोग करें" #: core/project_settings.cpp msgid "Custom User Dir Name" -msgstr "" +msgstr "कसà¥à¤Ÿà¤® उपयोगकरà¥à¤¤à¤¾ का नाम" #: core/project_settings.cpp main/main.cpp #: platform/javascript/export/export.cpp platform/osx/export/export.cpp #: platform/uwp/os_uwp.cpp -#, fuzzy msgid "Display" -msgstr "सब दिखाइà¤" +msgstr "डिसà¥à¤ªà¥à¤²à¥‡" #: core/project_settings.cpp main/main.cpp modules/csg/csg_shape.cpp #: modules/opensimplex/noise_texture.cpp scene/2d/line_2d.cpp #: scene/3d/label_3d.cpp scene/gui/text_edit.cpp scene/resources/texture.cpp msgid "Width" -msgstr "" +msgstr "चौड़ाई" #: core/project_settings.cpp main/main.cpp modules/csg/csg_shape.cpp #: modules/gltf/gltf_node.cpp modules/opensimplex/noise_texture.cpp @@ -631,19 +619,19 @@ msgstr "" #: scene/resources/font.cpp scene/resources/navigation_mesh.cpp #: scene/resources/primitive_meshes.cpp scene/resources/texture.cpp msgid "Height" -msgstr "" +msgstr "ऊंचाई" #: core/project_settings.cpp msgid "Always On Top" -msgstr "" +msgstr "हमेशा शीरà¥à¤· पर" #: core/project_settings.cpp msgid "Test Width" -msgstr "" +msgstr "परीकà¥à¤·à¤£ चौड़ाई" #: core/project_settings.cpp msgid "Test Height" -msgstr "" +msgstr "परीकà¥à¤·à¤£ ऊंचाई" #: core/project_settings.cpp editor/animation_track_editor.cpp #: editor/editor_audio_buses.cpp main/main.cpp servers/audio_server.cpp @@ -651,9 +639,8 @@ msgid "Audio" msgstr "ऑडियो" #: core/project_settings.cpp -#, fuzzy msgid "Default Bus Layout" -msgstr "पà¥à¤°à¤¾à¤¯à¤¿à¤• बस लेआउट लोड कीजिये." +msgstr "डिफ़ॉलà¥à¤Ÿ बस लेआउट" #: core/project_settings.cpp editor/editor_export.cpp #: editor/editor_file_system.cpp editor/editor_node.cpp @@ -664,93 +651,84 @@ msgstr "संपादक" #: core/project_settings.cpp msgid "Main Run Args" -msgstr "" +msgstr "मà¥à¤–à¥à¤¯ रन तरà¥à¤•" #: core/project_settings.cpp -#, fuzzy msgid "Scene Naming" -msgstr "दृशà¥à¤¯ पथ:" +msgstr "दृशà¥à¤¯ नामकरण" #: core/project_settings.cpp msgid "Search In File Extensions" -msgstr "" +msgstr "फ़ाइल à¤à¤•à¥à¤¸à¤Ÿà¥‡à¤‚शन में खोजें" #: core/project_settings.cpp msgid "Script Templates Search Path" -msgstr "" +msgstr "सà¥à¤•à¥à¤°à¤¿à¤ªà¥à¤Ÿ टेमà¥à¤ªà¤²à¥‡à¤Ÿ खोज पथ" #: core/project_settings.cpp -#, fuzzy msgid "Version Control Autoload On Startup" -msgstr "वरà¥à¤œà¤¨ कंटà¥à¤°à¥‹à¤²" +msgstr "सà¥à¤Ÿà¤¾à¤°à¥à¤Ÿà¤…प पर संसà¥à¤•à¤°à¤£ नियंतà¥à¤°à¤£ ऑटोलोड" #: core/project_settings.cpp -#, fuzzy msgid "Version Control Plugin Name" -msgstr "वरà¥à¤œà¤¨ कंटà¥à¤°à¥‹à¤²" +msgstr "संसà¥à¤•à¤°à¤£ नियंतà¥à¤°à¤£ पà¥à¤²à¤—इन का नाम" #: core/project_settings.cpp scene/2d/collision_object_2d.cpp #: scene/3d/collision_object.cpp scene/gui/control.cpp msgid "Input" -msgstr "" +msgstr "इनपà¥à¤Ÿ" #: core/project_settings.cpp msgid "UI Accept" -msgstr "" +msgstr "उपयोगकरà¥à¤¤à¤¾ हसà¥à¤¤à¤•à¥à¤·à¥‡à¤ª सà¥à¤µà¥€à¤•à¤¾à¤° करें" #: core/project_settings.cpp -#, fuzzy msgid "UI Select" -msgstr "चà¥à¤¨à¥‡à¤‚" +msgstr "उपयोगकरà¥à¤¤à¤¾ हसà¥à¤¤à¤•à¥à¤·à¥‡à¤ª का चयन करें" #: core/project_settings.cpp -#, fuzzy msgid "UI Cancel" -msgstr "रदà¥à¤¦ करें" +msgstr "उपयोगकरà¥à¤¤à¤¾ हसà¥à¤¤à¤•à¥à¤·à¥‡à¤ª रदà¥à¤¦ करें" #: core/project_settings.cpp -#, fuzzy msgid "UI Focus Next" -msgstr "फ़ोकस पाथ" +msgstr "उपयोगकरà¥à¤¤à¤¾ हसà¥à¤¤à¤•à¥à¤·à¥‡à¤ª फोकस अगला" #: core/project_settings.cpp -#, fuzzy msgid "UI Focus Prev" -msgstr "फ़ोकस पाथ" +msgstr "उपयोगकरà¥à¤¤à¤¾ हसà¥à¤¤à¤•à¥à¤·à¥‡à¤ª फ़ोकस पिछला" #: core/project_settings.cpp msgid "UI Left" -msgstr "" +msgstr "उपयोगकरà¥à¤¤à¤¾ हसà¥à¤¤à¤•à¥à¤·à¥‡à¤ª छोड़ दिया गया" #: core/project_settings.cpp msgid "UI Right" -msgstr "" +msgstr "उपयोगकरà¥à¤¤à¤¾ हसà¥à¤¤à¤•à¥à¤·à¥‡à¤ª अधिकार" #: core/project_settings.cpp msgid "UI Up" -msgstr "" +msgstr "उपयोगकरà¥à¤¤à¤¾ हसà¥à¤¤à¤•à¥à¤·à¥‡à¤ª बढ़ा" #: core/project_settings.cpp -#, fuzzy msgid "UI Down" -msgstr "नीचे" +msgstr "उपयोगकरà¥à¤¤à¤¾ हसà¥à¤¤à¤•à¥à¤·à¥‡à¤ª कम" #: core/project_settings.cpp -#, fuzzy msgid "UI Page Up" -msgstr "पृषà¥à¤ : " +msgstr "उपयोगकरà¥à¤¤à¤¾ हसà¥à¤¤à¤•à¥à¤·à¥‡à¤ª पृषà¥à¤ अप" #: core/project_settings.cpp msgid "UI Page Down" -msgstr "" +msgstr "उपयोगकरà¥à¤¤à¤¾ हसà¥à¤¤à¤•à¥à¤·à¥‡à¤ª पृषà¥à¤ नीचे" #: core/project_settings.cpp msgid "UI Home" -msgstr "" +msgstr "उपयोगकरà¥à¤¤à¤¾ हसà¥à¤¤à¤•à¥à¤·à¥‡à¤ª घर" #: core/project_settings.cpp msgid "UI End" -msgstr "" +msgstr "उपयोगकरà¥à¤¤à¤¾ हसà¥à¤¤à¤•à¥à¤·à¥‡à¤ª समापà¥à¤¤ होता है" #: core/project_settings.cpp main/main.cpp modules/bullet/register_types.cpp #: modules/bullet/space_bullet.cpp scene/2d/physics_body_2d.cpp @@ -760,9 +738,8 @@ msgstr "" #: servers/physics_2d/physics_2d_server_wrap_mt.h #: servers/physics_2d/space_2d_sw.cpp servers/physics_2d_server.cpp #: servers/physics_server.cpp -#, fuzzy msgid "Physics" -msgstr "फिजिकà¥à¤¸ फà¥à¤°à¥‡à¤® %" +msgstr "फिजिकà¥à¤¸" #: core/project_settings.cpp editor/editor_settings.cpp #: editor/import/resource_importer_layered_texture.cpp @@ -772,11 +749,11 @@ msgstr "फिजिकà¥à¤¸ फà¥à¤°à¥‡à¤® %" #: scene/3d/physics_body.cpp scene/resources/world.cpp #: servers/physics/space_sw.cpp servers/physics_server.cpp msgid "3D" -msgstr "" +msgstr "3 डी" #: core/project_settings.cpp msgid "Smooth Trimesh Collision" -msgstr "" +msgstr "तà¥à¤°à¤¿à¤®à¥‡à¤¶ की टकà¥à¤•à¤°" #: core/project_settings.cpp drivers/gles2/rasterizer_canvas_base_gles2.cpp #: drivers/gles2/rasterizer_scene_gles2.cpp @@ -788,7 +765,7 @@ msgstr "" #: scene/main/viewport.cpp servers/visual/visual_server_scene.cpp #: servers/visual_server.cpp msgid "Rendering" -msgstr "" +msgstr "रेंडरिंग" #: core/project_settings.cpp drivers/gles2/rasterizer_storage_gles2.cpp #: drivers/gles3/rasterizer_scene_gles3.cpp @@ -798,18 +775,17 @@ msgstr "" #: scene/resources/multimesh.cpp servers/visual/visual_server_scene.cpp #: servers/visual_server.cpp msgid "Quality" -msgstr "" +msgstr "कà¥à¤µà¤¾à¤²à¤¿à¤Ÿà¥€" #: core/project_settings.cpp scene/gui/file_dialog.cpp #: scene/main/scene_tree.cpp scene/resources/navigation_mesh.cpp #: servers/visual_server.cpp -#, fuzzy msgid "Filters" -msgstr "फिलà¥à¤Ÿà¤°:" +msgstr "फ़िलà¥à¤Ÿà¤°à¥à¤¸" #: core/project_settings.cpp scene/main/viewport.cpp msgid "Sharpen Intensity" -msgstr "" +msgstr "शॉरà¥à¤ª गहनता" #: core/project_settings.cpp editor/editor_export.cpp editor/editor_node.cpp #: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp @@ -825,86 +801,81 @@ msgstr "डीबग करें" #: core/project_settings.cpp main/main.cpp modules/gdscript/gdscript.cpp #: modules/visual_script/visual_script.cpp scene/resources/dynamic_font.cpp -#, fuzzy msgid "Settings" -msgstr "à¤à¤¡à¥€à¤Ÿà¤° सेटिनà¥à¤—स..." +msgstr "सेटिंगà¥à¤¸" #: core/project_settings.cpp editor/script_editor_debugger.cpp main/main.cpp #: modules/mono/mono_gd/gd_mono.cpp msgid "Profiler" -msgstr "" +msgstr "पà¥à¤°à¥‹à¤«à¤¾à¤‡à¤²à¤°" #: core/project_settings.cpp -#, fuzzy msgid "Max Functions" -msgstr "कारà¥à¤¯à¥‹à¤‚:" +msgstr "मैकà¥à¤¸ फ़ंकà¥à¤¶à¤¨" #: core/project_settings.cpp scene/3d/vehicle_body.cpp -#, fuzzy msgid "Compression" -msgstr "सदसà¥à¤¯à¤¤à¤¾ बनाà¤à¤‚" +msgstr "कंपà¥à¤°à¥‡à¤¶à¤¨" #: core/project_settings.cpp msgid "Formats" -msgstr "" +msgstr "फारà¥à¤®à¥‡à¤Ÿ" #: core/project_settings.cpp msgid "Zstd" -msgstr "" +msgstr "Zstd" #: core/project_settings.cpp msgid "Long Distance Matching" -msgstr "" +msgstr "लंबी दूरी का मिलान" #: core/project_settings.cpp msgid "Compression Level" -msgstr "" +msgstr "संपीड़न सà¥à¤¤à¤°" #: core/project_settings.cpp msgid "Window Log Size" -msgstr "" +msgstr "विंडो लॉग आकार" #: core/project_settings.cpp msgid "Zlib" -msgstr "" +msgstr "Zlib" #: core/project_settings.cpp msgid "Gzip" -msgstr "" +msgstr "Gzip" #: core/project_settings.cpp platform/android/export/export.cpp msgid "Android" -msgstr "" +msgstr "à¤à¤‚डà¥à¤°à¥‰à¤¯à¤¡" #: core/project_settings.cpp msgid "Modules" -msgstr "" +msgstr "मॉडà¥à¤¯à¥‚ल" #: core/register_core_types.cpp msgid "TCP" -msgstr "" +msgstr "टीसीपी" #: core/register_core_types.cpp -#, fuzzy msgid "Connect Timeout Seconds" -msgstr "Node से कनेकà¥à¤Ÿ करें:" +msgstr "कनेकà¥à¤Ÿ टाइमआउट सेकंड" #: core/register_core_types.cpp msgid "Packet Peer Stream" -msgstr "" +msgstr "पैकेट पीयर सà¥à¤Ÿà¥à¤°à¥€à¤®" #: core/register_core_types.cpp msgid "Max Buffer (Power of 2)" -msgstr "" +msgstr "मैकà¥à¤¸ बफर (2 की शकà¥à¤¤à¤¿)" #: core/register_core_types.cpp editor/editor_settings.cpp main/main.cpp msgid "SSL" -msgstr "" +msgstr "à¤à¤¸à¤à¤¸à¤à¤²" #: core/register_core_types.cpp main/main.cpp -#, fuzzy msgid "Certificates" -msgstr "विशेषता" +msgstr "पà¥à¤°à¤®à¤¾à¤£à¤ªà¤¤à¥à¤°" #: core/resource.cpp editor/dependency_editor.cpp #: editor/editor_resource_picker.cpp @@ -913,9 +884,8 @@ msgid "Resource" msgstr "संसाधन" #: core/resource.cpp -#, fuzzy msgid "Local To Scene" -msgstr "कà¥à¤²à¥‹à¤œ सीन" +msgstr "सà¥à¤¥à¤¾à¤¨à¥€à¤¯ से दृशà¥à¤¯" #: core/resource.cpp editor/dependency_editor.cpp #: editor/editor_autoload_settings.cpp editor/plugins/path_editor_plugin.cpp @@ -925,21 +895,20 @@ msgid "Path" msgstr "पथ" #: core/script_language.cpp -#, fuzzy msgid "Source Code" -msgstr "संसाधन" +msgstr "सà¥à¤°à¥‹à¤¤ कोड" #: core/translation.cpp editor/project_settings_editor.cpp msgid "Locale" -msgstr "" +msgstr "लोकेल" #: core/translation.cpp msgid "Test" -msgstr "" +msgstr "टेसà¥à¤Ÿ" #: core/translation.cpp scene/resources/font.cpp msgid "Fallback" -msgstr "" +msgstr "फ़ॉलबैक" #: core/ustring.cpp scene/resources/segment_shape_2d.cpp msgid "B" @@ -975,17 +944,17 @@ msgstr "EiB" #: drivers/gles3/rasterizer_scene_gles3.cpp #: drivers/gles3/rasterizer_storage_gles3.cpp modules/gltf/gltf_state.cpp msgid "Buffers" -msgstr "" +msgstr "बफ़रà¥à¤¸" #: drivers/gles2/rasterizer_canvas_base_gles2.cpp #: drivers/gles3/rasterizer_canvas_base_gles3.cpp msgid "Canvas Polygon Buffer Size (KB)" -msgstr "" +msgstr "कैनवास बहà¥à¤à¥à¤œ बफर आकार (KB)" #: drivers/gles2/rasterizer_canvas_base_gles2.cpp #: drivers/gles3/rasterizer_canvas_base_gles3.cpp msgid "Canvas Polygon Index Buffer Size (KB)" -msgstr "" +msgstr "कैनवास बहà¥à¤à¥à¤œ सूचकांक बफर आकार (KB)" #: drivers/gles2/rasterizer_canvas_base_gles2.cpp #: drivers/gles3/rasterizer_canvas_base_gles3.cpp editor/editor_settings.cpp @@ -997,28 +966,27 @@ msgstr "" #: servers/physics_2d/space_2d_sw.cpp servers/physics_2d_server.cpp #: servers/visual_server.cpp msgid "2D" -msgstr "" +msgstr "2डी" #: drivers/gles2/rasterizer_canvas_base_gles2.cpp #: drivers/gles3/rasterizer_canvas_base_gles3.cpp -#, fuzzy msgid "Snapping" -msgstr "आकसà¥à¤®à¤¿à¤•:" +msgstr "सà¥à¤¨à¥ˆà¤ªà¤¿à¤‚ग" #: drivers/gles2/rasterizer_canvas_base_gles2.cpp #: drivers/gles3/rasterizer_canvas_base_gles3.cpp msgid "Use GPU Pixel Snap" -msgstr "" +msgstr "GPU Pixel Snap का उपयोग करें" #: drivers/gles2/rasterizer_scene_gles2.cpp #: drivers/gles3/rasterizer_scene_gles3.cpp msgid "Immediate Buffer Size (KB)" -msgstr "" +msgstr "ततà¥à¤•à¤¾à¤² बफर आकार (KB)" #: drivers/gles2/rasterizer_storage_gles2.cpp #: drivers/gles3/rasterizer_storage_gles3.cpp msgid "Lightmapping" -msgstr "" +msgstr "लाइटमैपिंग" #: drivers/gles2/rasterizer_storage_gles2.cpp #: drivers/gles3/rasterizer_storage_gles3.cpp @@ -13001,9 +12969,10 @@ msgstr "आकसà¥à¤®à¤¿à¤•:" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14399,12 +14368,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -23488,6 +23456,15 @@ msgstr "पà¥à¤°à¤¤à¤¿à¤®à¤¾" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "आयात:" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/hr.po b/editor/translations/hr.po index 21a20978a6..85fcb184f3 100644 --- a/editor/translations/hr.po +++ b/editor/translations/hr.po @@ -12654,9 +12654,10 @@ msgstr "Opcije Klase" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14032,12 +14033,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22925,6 +22925,15 @@ msgstr "GreÅ¡ka!" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Zalijepi Animaciju" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/hu.po b/editor/translations/hu.po index 996249e619..b8bab10568 100644 --- a/editor/translations/hu.po +++ b/editor/translations/hu.po @@ -13160,9 +13160,10 @@ msgstr "Illesztési beállÃtások" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Rács Eltolás:" @@ -14544,13 +14545,13 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "" +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "A projekt nem nyitható meg a(z) %s helyen." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -23781,6 +23782,15 @@ msgstr "Hiba!" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Rendezés" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/id.po b/editor/translations/id.po index ee7e21c0c0..89153d88d3 100644 --- a/editor/translations/id.po +++ b/editor/translations/id.po @@ -13105,9 +13105,10 @@ msgstr "Opsi-opsi Snap" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Pengimbangan:" @@ -14569,16 +14570,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Lokasi proyek tidak valid (mengubah sesuatu?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Tidak dapat memuat project.godot dalam lokasi proyek (galat %d). Mungkin " "berkas itu tidak ada atau rusak." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "Tidak dapat menyunting project.godot dalam lokasi proyek." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Tidak dapat membuka proyek di '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -23964,6 +23966,16 @@ msgstr "Galat" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Urutkan" + +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Use AABB Center" +msgstr "Gunakan Sebagai Kemudi" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/ig.po b/editor/translations/ig.po index 8d96de35f3..e0c1a85c99 100644 --- a/editor/translations/ig.po +++ b/editor/translations/ig.po @@ -12357,9 +12357,10 @@ msgstr "" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13688,12 +13689,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22185,6 +22185,14 @@ msgstr "" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +msgid "Sorting" +msgstr "" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/is.po b/editor/translations/is.po index 8514155c68..7551598f22 100644 --- a/editor/translations/is.po +++ b/editor/translations/is.po @@ -12635,9 +12635,10 @@ msgstr "Val á kvarða" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14004,12 +14005,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22783,6 +22783,15 @@ msgstr "" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Stillið breyting á:" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/it.po b/editor/translations/it.po index 027f4609f8..f1ff871a69 100644 --- a/editor/translations/it.po +++ b/editor/translations/it.po @@ -61,7 +61,7 @@ # Daniele Basso <tiziodcaio@gmail.com>, 2021. # Riteo Siuga <riteo@posteo.net>, 2021, 2022. # Luigi <luibass92@live.it>, 2021. -# Micky <micheledevita2@gmail.com>, 2021. +# Micky <micheledevita2@gmail.com>, 2021, 2022. # Fabio Plos <altre0cose@gmail.com>, 2021. # Theraloss <danilo.polani@gmail.com>, 2021. # Pietro Grungo <pietro.grungo@libero.it>, 2021. @@ -73,13 +73,17 @@ # ale piccia <picciatialessio2@gmail.com>, 2022. # Simone Starace <simone.starace93@gmail.com>, 2022. # Daniele Giunta <danielegiunta2007@gmail.com>, 2022. +# Damiano Guida <damiano.guida22@gmail.com>, 2022. +# Silvia Scaglione <sissisoad@gmail.com>, 2022. +# Cosimo Davide Viggiano <cosimod089@gmail.com>, 2022. +# Francesco Cammarata <francescocammarata.fr@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-27 21:37+0000\n" -"Last-Translator: Daniele Giunta <danielegiunta2007@gmail.com>\n" +"PO-Revision-Date: 2022-11-22 20:37+0000\n" +"Last-Translator: Francesco Cammarata <francescocammarata.fr@gmail.com>\n" "Language-Team: Italian <https://hosted.weblate.org/projects/godot-engine/" "godot/it/>\n" "Language: it\n" @@ -87,7 +91,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.14.1\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -213,7 +217,7 @@ msgstr "Target FPS" #: core/bind/core_bind.cpp msgid "Time Scale" -msgstr "Scala Temporale" +msgstr "Scala temporale" #: core/bind/core_bind.cpp main/main.cpp msgid "Physics Jitter Fix" @@ -456,7 +460,6 @@ msgid "Command" msgstr "Comando" #: core/os/input_event.cpp -#, fuzzy msgid "Physical" msgstr "Fisico" @@ -468,14 +471,13 @@ msgstr "Premuto" #: core/os/input_event.cpp msgid "Scancode" -msgstr "Codice di Scansione" +msgstr "Codice di scansione" #: core/os/input_event.cpp msgid "Physical Scancode" msgstr "Codice di Scansione Fisico" #: core/os/input_event.cpp -#, fuzzy msgid "Unicode" msgstr "Unicode" @@ -1020,7 +1022,7 @@ msgstr "2D" #: drivers/gles2/rasterizer_canvas_base_gles2.cpp #: drivers/gles3/rasterizer_canvas_base_gles3.cpp msgid "Snapping" -msgstr "Ancoraggio" +msgstr "Scatto" #: drivers/gles2/rasterizer_canvas_base_gles2.cpp #: drivers/gles3/rasterizer_canvas_base_gles3.cpp @@ -2802,9 +2804,8 @@ msgid "Choose" msgstr "Scegli" #: editor/editor_export.cpp -#, fuzzy msgid "Project export for platform:" -msgstr "Esportazione del progetto per la piattaforma:" +msgstr "Esportazione del progetto per piattaforma:" #: editor/editor_export.cpp msgid "Completed with warnings." @@ -2953,7 +2954,6 @@ msgid "ETC2" msgstr "ETC2" #: editor/editor_export.cpp -#, fuzzy msgid "No BPTC Fallbacks" msgstr "Nessun fallback per BPTC" @@ -2970,7 +2970,6 @@ msgid "Custom release template not found." msgstr "Modello di rilascio personalizzato non trovato." #: editor/editor_export.cpp -#, fuzzy msgid "Prepare Template" msgstr "Prepara Modello" @@ -2988,9 +2987,8 @@ msgstr "Copiatura del modello di esportazione fallita." #: editor/editor_export.cpp platform/windows/export/export.cpp #: platform/x11/export/export.cpp -#, fuzzy msgid "PCK Embedding" -msgstr "PCK Incorporazione" +msgstr "Incorporazione PCK" #: editor/editor_export.cpp msgid "On 32-bit exports the embedded PCK cannot be bigger than 4 GiB." @@ -3167,7 +3165,7 @@ msgstr "Rendi attuale" #: editor/plugins/theme_editor_plugin.cpp editor/project_manager.cpp #: modules/fbx/editor_scene_importer_fbx.cpp msgid "Import" -msgstr "Importa" +msgstr "Importare" #: editor/editor_feature_profile.cpp editor/project_export.cpp #: platform/android/export/export.cpp platform/android/export/export_plugin.cpp @@ -3289,7 +3287,7 @@ msgstr "Accedi" #: editor/editor_file_dialog.cpp editor/editor_settings.cpp msgid "Display Mode" -msgstr "Modalità Visualizzazione" +msgstr "Modalità di visualizzazione" #: editor/editor_file_dialog.cpp #: editor/import/resource_importer_layered_texture.cpp @@ -5304,11 +5302,11 @@ msgstr "Lingua dell'Editor" #: editor/editor_settings.cpp msgid "Display Scale" -msgstr "Dimensione Display" +msgstr "Scala di visualizzazione" #: editor/editor_settings.cpp msgid "Custom Display Scale" -msgstr "Dimensione Display Personalizzata" +msgstr "Scala di visualizzazione personalizzata" #: editor/editor_settings.cpp msgid "Main Font Size" @@ -5554,14 +5552,12 @@ msgid "Mouse Extra Buttons Navigate History" msgstr "Uso dei tasti aggiuntivi del mouse per navigare la cronologia" #: editor/editor_settings.cpp -#, fuzzy msgid "Drag And Drop Selection" msgstr "Selezione Drag And Drop" #: editor/editor_settings.cpp -#, fuzzy msgid "Stay In Script Editor On Node Selected" -msgstr "Rimani nell'Editor degli Script quando un Nodo è selezionato" +msgstr "Rimani nell'editor degli script quando un nodo è selezionato" #: editor/editor_settings.cpp msgid "Appearance" @@ -5601,7 +5597,7 @@ msgstr "Mostra Linee Guida della Lunghezza della Linea" #: editor/editor_settings.cpp msgid "Line Length Guideline Soft Column" -msgstr "" +msgstr "Margine suggerito per lunghezza riga" #: editor/editor_settings.cpp msgid "Line Length Guideline Hard Column" @@ -5719,7 +5715,6 @@ msgid "Help Font Size" msgstr "Dimensione Carattere della Guida" #: editor/editor_settings.cpp -#, fuzzy msgid "Help Source Font Size" msgstr "Dimensione dei caratteri della sezione d'assistenza codice sorgente" @@ -5829,7 +5824,6 @@ msgid "Lightmap Baking Number Of CPU Threads" msgstr "Numero di Threads CPU del Baking di Lightmap" #: editor/editor_settings.cpp -#, fuzzy msgid "Navigation Scheme" msgstr "Schema di Navigazione" @@ -5858,9 +5852,8 @@ msgid "Orbit Modifier" msgstr "Modificatore Orbita" #: editor/editor_settings.cpp -#, fuzzy msgid "Pan Modifier" -msgstr "Modificatore di Pan" +msgstr "Modificatore Pan" #: editor/editor_settings.cpp msgid "Zoom Modifier" @@ -5871,9 +5864,8 @@ msgid "Warped Mouse Panning" msgstr "Panning Continuo Del Mouse" #: editor/editor_settings.cpp -#, fuzzy msgid "Navigation Feel" -msgstr "Sensazione Navigazione" +msgstr "Sensazione della Navigazione" #: editor/editor_settings.cpp msgid "Orbit Sensitivity" @@ -5929,7 +5921,7 @@ msgstr "Colore Guide" #: editor/editor_settings.cpp msgid "Smart Snapping Line Color" -msgstr "Colore Linea Agganciamento Intelligente" +msgstr "Colore della linea dello scatto intelligente" #: editor/editor_settings.cpp msgid "Bone Width" @@ -5948,9 +5940,8 @@ msgid "Bone Selected Color" msgstr "Colore Osso Selezionato" #: editor/editor_settings.cpp -#, fuzzy msgid "Bone IK Color" -msgstr "Colore IK Osso" +msgstr "Colore Osso IK" #: editor/editor_settings.cpp msgid "Bone Outline Color" @@ -5986,7 +5977,6 @@ msgid "Poly Editor" msgstr "Editor Poly" #: editor/editor_settings.cpp -#, fuzzy msgid "Point Grab Radius" msgstr "Raggio Afferramento Punti" @@ -6099,9 +6089,8 @@ msgid "Keyword Color" msgstr "Colore Parola Chiave" #: editor/editor_settings.cpp -#, fuzzy msgid "Control Flow Keyword Color" -msgstr "Colore Parola Chiave Controllo Flusso" +msgstr "Colore della Parola Chiave del Controllo Flusso" #: editor/editor_settings.cpp msgid "Base Type Color" @@ -6973,7 +6962,7 @@ msgstr "Filtro" #: editor/import/resource_importer_layered_texture.cpp #: editor/import/resource_importer_texture.cpp msgid "Mipmaps" -msgstr "Mipmaps" +msgstr "Mappe errate" #: editor/import/resource_importer_layered_texture.cpp #: editor/import/resource_importer_texture.cpp @@ -7079,7 +7068,7 @@ msgstr "Nome Root" #: editor/import/resource_importer_scene.cpp msgid "Root Scale" -msgstr "Scala Root" +msgstr "Scala di radice" #: editor/import/resource_importer_scene.cpp msgid "Custom Script" @@ -8010,7 +7999,7 @@ msgstr "Posizione animazione (in secondi)." #: editor/plugins/animation_player_editor_plugin.cpp msgid "Scale animation playback globally for the node." -msgstr "Scala playback dell'animazione globalmente per il nodo." +msgstr "Scala la riproduzione dell'animazione globalmente per il nodo." #: editor/plugins/animation_player_editor_plugin.cpp msgid "Animation Tools" @@ -8214,7 +8203,6 @@ msgid "Set the end animation. This is useful for sub-transitions." msgstr "Assegna l'animazione finale. Utile per le sotto-transizioni." #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Transition:" msgstr "Transizione:" @@ -8328,12 +8316,13 @@ msgid "Blend4 Node" msgstr "Nodo Blend4" #: editor/plugins/animation_tree_player_editor_plugin.cpp +#, fuzzy msgid "TimeScale Node" msgstr "Nodo TimeScale" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "TimeSeek Node" -msgstr "Nodo TimeScale" +msgstr "Nodo TimeSeek" #: editor/plugins/animation_tree_player_editor_plugin.cpp msgid "Transition Node" @@ -8465,7 +8454,7 @@ msgstr "Errore nel fare richiesta" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Idle" -msgstr "Inattivo" +msgstr "Inattività " #: editor/plugins/asset_library_editor_plugin.cpp msgid "Install..." @@ -8655,7 +8644,7 @@ msgstr "Anteprima" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Configure Snap" -msgstr "Configura Agganciamento" +msgstr "Configura scatto" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Grid Offset:" @@ -8731,7 +8720,7 @@ msgstr "Sposta Ancora CanvasItem \"%s\"" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Scale Node2D \"%s\" to (%s, %s)" -msgstr "Scala Node2D \"%s\" a (%s, %s)" +msgstr "Ridimensiona Node2D \"%s\" a (%s, %s)" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Resize Control \"%s\" to (%d, %d)" @@ -8739,11 +8728,11 @@ msgstr "Ridimensiona Control \"%s\" a (%d, %d)" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Scale %d CanvasItems" -msgstr "Scala %d CanvasItem" +msgstr "Ridimensiona %d CanvasItem" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Scale CanvasItem \"%s\" to (%s, %s)" -msgstr "Scala CanvasItem \"%s\" a (%s, %s)" +msgstr "Ridimensiona CanvasItem \"%s\" a (%s, %s)" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Move %d CanvasItems" @@ -8960,7 +8949,7 @@ msgstr "Alt+Trascina: Muovi nodo selezionato." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Alt+Drag: Scale selected node." -msgstr "Alt+Trascina: Ridimensiona il nodo selezionato." +msgstr "Alt+Trascinamento: Ridimensiona il nodo selezionato." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "V: Set selected node's pivot position." @@ -8994,7 +8983,7 @@ msgstr "Modalità scala" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Shift: Scale proportionally." -msgstr "Shift: Ridimensiona proporzionalmente." +msgstr "Maiusc: Ridimensiona proporzionalmente." #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -9019,7 +9008,7 @@ msgstr "Modalità Righello" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Toggle smart snapping." -msgstr "Commuta l'agganciamento intelligente." +msgstr "Commuta lo scatto intelligente." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Use Smart Snap" @@ -9035,7 +9024,7 @@ msgstr "Usa la griglia magnetica" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Snapping Options" -msgstr "Opzioni Agganciamento" +msgstr "Opzioni dello scatto" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Use Rotation Snap" @@ -9043,19 +9032,19 @@ msgstr "Aggancia Rotazione" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Use Scale Snap" -msgstr "Aggancia Ridimensionamento" +msgstr "Scatta la scala" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Snap Relative" -msgstr "Agganciamento Relativo" +msgstr "Scatto relativo" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Use Pixel Snap" -msgstr "Agganciamento su Pixel" +msgstr "Scatta sui pixel" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Smart Snapping" -msgstr "Agganciamento Intelligente" +msgstr "Scatto intelligente" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -9154,7 +9143,7 @@ msgstr "Mostra" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Show When Snapping" -msgstr "Mostra Se Agganciamento" +msgstr "Mostra durante lo scatto" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Hide" @@ -9219,7 +9208,7 @@ msgstr "Maschera di rotazione per l'inserimento delle chiavi." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Scale mask for inserting keys." -msgstr "Maschera di scala per l'inserimento delle chiavi." +msgstr "Scala maschera per l'inserimento delle chiavi." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Insert keys (based on mask)." @@ -9345,8 +9334,8 @@ msgid "" "Drag & drop + Shift : Add node as sibling\n" "Drag & drop + Alt : Change node type" msgstr "" -"Trascina & Rilascia + Shift : Aggiungi nodo come fratello\n" -"Trascina & Rilascia + Alt : Cambia tipo del nodo" +"Trascina e Rilascia + Shift : Aggiungi nodo come fratello\n" +"Trascina e Rilascia + Alt : Cambia tipo del nodo" #: editor/plugins/collision_polygon_editor_plugin.cpp msgid "Create Polygon3D" @@ -9442,7 +9431,7 @@ msgstr "Flat 0" #: editor/plugins/curve_editor_plugin.cpp msgid "Flat 1" -msgstr "Flat 1" +msgstr "Flat 1Flat 1" #: editor/plugins/curve_editor_plugin.cpp editor/property_editor.cpp msgid "Ease In" @@ -9522,7 +9511,7 @@ msgstr "Scambia Punti di Riempimento del Gradiente" #: editor/plugins/gradient_texture_2d_editor_plugin.cpp msgid "Toggle Grid Snap" -msgstr "Commuta Agganciamento Griglia" +msgstr "Commuta scatto sulla griglia" #: editor/plugins/item_list_editor_plugin.cpp editor/project_export.cpp #: scene/3d/label_3d.cpp scene/gui/button.cpp scene/gui/dialogs.cpp @@ -9540,7 +9529,6 @@ msgid "Icon" msgstr "Icona" #: editor/plugins/item_list_editor_plugin.cpp -#, fuzzy msgid "ID" msgstr "ID" @@ -9709,7 +9697,6 @@ msgstr "" "collisioni." #: editor/plugins/mesh_instance_editor_plugin.cpp -#, fuzzy msgid "Create Simplified Convex Collision Sibling" msgstr "Crea Fratello di Collisione Convessa Semplificato" @@ -9909,7 +9896,7 @@ msgstr "Inclinazione Casuale:" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Random Scale:" -msgstr "Scala Casuale:" +msgstr "Scala casuale:" #: editor/plugins/multimesh_editor_plugin.cpp msgid "Populate" @@ -10169,7 +10156,7 @@ msgstr "" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Create Polygon & UV" -msgstr "Crea Poligono & UV" +msgstr "Crea Poligono e UV" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Create Internal Vertex" @@ -10265,7 +10252,7 @@ msgstr "Ruota poligono" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Scale Polygon" -msgstr "Scala poligono" +msgstr "Ridimensiona poligono" #: editor/plugins/polygon_2d_editor_plugin.cpp msgid "Create a custom polygon. Enables custom polygon rendering." @@ -10406,7 +10393,6 @@ msgid "Flip Portal" msgstr "Ribalta Portale" #: editor/plugins/room_manager_editor_plugin.cpp -#, fuzzy msgid "Occluder Set Transform" msgstr "Imposta Trasformazione dell' Occlusore" @@ -10758,7 +10744,7 @@ msgstr "[Ignora]" #: editor/plugins/script_text_editor.cpp msgid "Line" -msgstr "Linea" +msgstr "Riga" #: editor/plugins/script_text_editor.cpp msgid "Go to Function" @@ -11006,7 +10992,7 @@ msgstr "Ortogonale dal Basso" #: editor/plugins/spatial_editor_plugin.cpp msgid "Bottom Perspective" -msgstr "Prospettica dal Basso" +msgstr "Prospettica dal basso" #: editor/plugins/spatial_editor_plugin.cpp msgid "Left Orthogonal" @@ -11014,7 +11000,7 @@ msgstr "Ortogonale a Sinistra" #: editor/plugins/spatial_editor_plugin.cpp msgid "Left Perspective" -msgstr "Prospettica a Sinistra" +msgstr "Prospettica da sinistra" #: editor/plugins/spatial_editor_plugin.cpp msgid "Right Orthogonal" @@ -11022,7 +11008,7 @@ msgstr "Ortogonale a Destra" #: editor/plugins/spatial_editor_plugin.cpp msgid "Right Perspective" -msgstr "Prospettica a Destra" +msgstr "Prospettica da destra" #: editor/plugins/spatial_editor_plugin.cpp msgid "Front Orthogonal" @@ -11030,7 +11016,7 @@ msgstr "Ortogonale di Fronte" #: editor/plugins/spatial_editor_plugin.cpp msgid "Front Perspective" -msgstr "Prospettica di Fronte" +msgstr "Prospettica di fronte" #: editor/plugins/spatial_editor_plugin.cpp msgid "Rear Orthogonal" @@ -11038,7 +11024,7 @@ msgstr "Ortogonale da Dietro" #: editor/plugins/spatial_editor_plugin.cpp msgid "Rear Perspective" -msgstr "Prospettica da Dietro" +msgstr "Prospettica da dietro" #. TRANSLATORS: This will be appended to the view name when Auto Orthogonal is enabled. #: editor/plugins/spatial_editor_plugin.cpp @@ -11140,7 +11126,6 @@ msgid "Vertices:" msgstr "Vertici:" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "FPS: %d (%s ms)" msgstr "FPS: %d (%s ms)" @@ -11186,31 +11171,31 @@ msgstr "Questa operazione richiede un solo nodo selezionato." #: editor/plugins/spatial_editor_plugin.cpp msgid "Auto Orthogonal Enabled" -msgstr "Ortogonale Automatico Abilitato" +msgstr "Ortogonale automatica abilitata" #: editor/plugins/spatial_editor_plugin.cpp msgid "Lock View Rotation" -msgstr "Blocca Rotazione Vista" +msgstr "Blocca la rotazione della vista" #: editor/plugins/spatial_editor_plugin.cpp msgid "Display Normal" -msgstr "Mostra Normale" +msgstr "Visualizzazione predefinita" #: editor/plugins/spatial_editor_plugin.cpp msgid "Display Wireframe" -msgstr "Mostra Wireframe" +msgstr "Visualizzazione fildiferro" #: editor/plugins/spatial_editor_plugin.cpp msgid "Display Overdraw" -msgstr "Mostra Overdraw" +msgstr "Visualizza Overdraw" #: editor/plugins/spatial_editor_plugin.cpp msgid "Display Unshaded" -msgstr "Mostra Unshaded" +msgstr "Visualizzazione senza ombre" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Environment" -msgstr "Mostra Ambiente" +msgstr "Visualizza ambiente" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Gizmos" @@ -11388,12 +11373,10 @@ msgid "Orbit View Right" msgstr "Orbita la visuale a destra" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Orbit View Up" msgstr "Orbita la visuale in sù" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Orbit View 180" msgstr "Orbita la visuale 180" @@ -11426,7 +11409,6 @@ msgid "Increase Field of View" msgstr "Aumenta il Campo Visivo" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Reset Field of View to Default" msgstr "Ripristina il Campo Visivo alle impostazioni predefinite" @@ -11436,7 +11418,7 @@ msgstr "Scatta l'oggetto sul suolo" #: editor/plugins/spatial_editor_plugin.cpp msgid "Transform Dialog..." -msgstr "Finestra di Transform..." +msgstr "Modale di trasformazione..." #: editor/plugins/spatial_editor_plugin.cpp msgid "1 Viewport" @@ -11468,11 +11450,11 @@ msgstr "Gizmos" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Origin" -msgstr "Visualizza Origine" +msgstr "Visualizza l'origine" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Grid" -msgstr "Visualizza Griglia" +msgstr "Visualizza la griglia" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Portal Culling" @@ -11489,19 +11471,19 @@ msgstr "Impostazioni…" #: editor/plugins/spatial_editor_plugin.cpp msgid "Snap Settings" -msgstr "Impostazioni Agganciamento" +msgstr "Impostazioni dello scatto" #: editor/plugins/spatial_editor_plugin.cpp msgid "Translate Snap:" -msgstr "Agganciamento Traslazione:" +msgstr "Scatto di traslazione:" #: editor/plugins/spatial_editor_plugin.cpp msgid "Rotate Snap (deg.):" -msgstr "Agganciamento Rotazione (gradi):" +msgstr "Scatto di rotazione (gradi):" #: editor/plugins/spatial_editor_plugin.cpp msgid "Scale Snap (%):" -msgstr "Agganciamento Ridimensionamento (%):" +msgstr "Scatto della scala (%):" #: editor/plugins/spatial_editor_plugin.cpp msgid "Viewport Settings" @@ -11521,7 +11503,7 @@ msgstr "Visualizza Z-Far:" #: editor/plugins/spatial_editor_plugin.cpp msgid "Transform Change" -msgstr "Cambiamento Transform" +msgstr "Cambio di trasformazione" #: editor/plugins/spatial_editor_plugin.cpp msgid "Translate:" @@ -11537,7 +11519,7 @@ msgstr "Scala (rapporto):" #: editor/plugins/spatial_editor_plugin.cpp msgid "Transform Type" -msgstr "Tipo Transform" +msgstr "Tipo di trasformazione" #: editor/plugins/spatial_editor_plugin.cpp msgid "Pre" @@ -11548,14 +11530,12 @@ msgid "Post" msgstr "Post" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Manipulator Gizmo Size" msgstr "Dimensione Gizmo Di Controllo" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Manipulator Gizmo Opacity" -msgstr "Opacità Gizmo Di Controllo" +msgstr "Opacità Gizmo Manipolatore" #: editor/plugins/spatial_editor_plugin.cpp msgid "Show Viewport Rotation Gizmo" @@ -11716,9 +11696,8 @@ msgid "New Animation" msgstr "Nuova Animazione" #: editor/plugins/sprite_frames_editor_plugin.cpp -#, fuzzy msgid "Filter animations" -msgstr "Modalità di filtraggio animazioni" +msgstr "Filtraggio animazioni" #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Speed:" @@ -11809,11 +11788,11 @@ msgstr "Modalità dello scatto:" #: editor/plugins/texture_region_editor_plugin.cpp msgid "Pixel Snap" -msgstr "Agganciamento Pixel" +msgstr "Scatto sui pixel" #: editor/plugins/texture_region_editor_plugin.cpp msgid "Grid Snap" -msgstr "Agganciamento Griglia" +msgstr "Scatto sulla griglia" #: editor/plugins/texture_region_editor_plugin.cpp msgid "Auto Slice" @@ -12387,7 +12366,7 @@ msgstr "Elemento Modificabile" #: editor/plugins/theme_editor_preview.cpp msgid "Subtree" -msgstr "Sottoalbero" +msgstr "Subtree" #: editor/plugins/theme_editor_preview.cpp msgid "Has,Many,Options" @@ -12550,7 +12529,7 @@ msgstr "Lato Editor" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Display Grid" -msgstr "Mostra Griglia" +msgstr "Visualizza griglia" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Axis Color" @@ -12706,7 +12685,7 @@ msgstr "Abilita lo scatto e mostra la griglia (configurabile dall'ispettore)." #: editor/plugins/tile_set_editor_plugin.cpp msgid "Display Tile Names (Hold Alt Key)" -msgstr "Mostra i Nomi delle Tile (Tenere Premuto Tasto Alt)" +msgstr "Visualizza i nomi dei tasselli (tenere premuto il tasto alt)" #: editor/plugins/tile_set_editor_plugin.cpp msgid "" @@ -12895,7 +12874,7 @@ msgstr "Questa proprietà non può essere cambiata." #: editor/plugins/tile_set_editor_plugin.cpp msgid "Snap Options" -msgstr "Opzioni Agganciamento" +msgstr "Opzioni dello scatto" #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/animated_sprite.cpp #: scene/2d/camera_2d.cpp scene/2d/cpu_particles_2d.cpp scene/2d/light_2d.cpp @@ -12903,9 +12882,10 @@ msgstr "Opzioni Agganciamento" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "Scostamento" @@ -13083,9 +13063,8 @@ msgid "Select SSH private key path" msgstr "Seleziona il percorso della chiave privata SSH" #: editor/plugins/version_control_editor_plugin.cpp -#, fuzzy msgid "SSH Passphrase" -msgstr "Frase di accesso SSH" +msgstr "SSH Passphrase" #: editor/plugins/version_control_editor_plugin.cpp msgid "Detect new changes" @@ -13157,11 +13136,11 @@ msgstr "URL Remoto" #: editor/plugins/version_control_editor_plugin.cpp msgid "Fetch" -msgstr "" +msgstr "Fetch" #: editor/plugins/version_control_editor_plugin.cpp msgid "Pull" -msgstr "" +msgstr "Pull" #: editor/plugins/version_control_editor_plugin.cpp #, fuzzy @@ -14328,16 +14307,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Percorso del progetto invalido (cambiato qualcosa?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Impossibile caricare project.godot nel percorso del progetto (errore %d). " "Può essere mancante o corrotto." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "Impossibile modificare project.godot nel percorso del progetto." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Impossibile aprire il progetto a \"%s\"." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -14365,7 +14345,7 @@ msgstr "Importa Progetto Esistente" #: editor/project_manager.cpp msgid "Import & Edit" -msgstr "Importa & Modifica" +msgstr "Importa e Modifica" #: editor/project_manager.cpp msgid "Create New Project" @@ -14373,7 +14353,7 @@ msgstr "Crea Nuovo Progetto" #: editor/project_manager.cpp msgid "Create & Edit" -msgstr "Crea & Modifica" +msgstr "Crea e Modifica" #: editor/project_manager.cpp msgid "Install Project:" @@ -14381,7 +14361,7 @@ msgstr "Installa Progetto:" #: editor/project_manager.cpp msgid "Install & Edit" -msgstr "Installa & Modifica" +msgstr "Installa e Modifica" #: editor/project_manager.cpp msgid "Project Name:" @@ -15180,7 +15160,7 @@ msgstr "Mantieni Transform Globale" #: editor/reparent_dialog.cpp editor/scene_tree_dock.cpp msgid "Reparent" -msgstr "Cambia Genitore" +msgstr "Riaccoppiare" #: editor/run_settings_dialog.cpp msgid "Run Mode:" @@ -15928,7 +15908,7 @@ msgstr "Monitor" #: editor/script_editor_debugger.cpp msgid "Pick one or more items from the list to display the graph." -msgstr "Scegli uno o più elementi dall'elenco per mostrare il grafico." +msgstr "Scegliere uno o più elementi dall'elenco per mostrare il grafico." #: editor/script_editor_debugger.cpp msgid "List of Video Memory Usage by Resource:" @@ -16234,7 +16214,6 @@ msgid "Flush stdout On Print" msgstr "Svuota stdout Alla Stampa" #: main/main.cpp servers/visual_server.cpp -#, fuzzy msgid "Logging" msgstr "Logging" @@ -16316,11 +16295,11 @@ msgstr "Modello Thread" #: main/main.cpp msgid "Thread Safe BVH" -msgstr "" +msgstr "Thread sicuro BVH" #: main/main.cpp msgid "Handheld" -msgstr "" +msgstr "Maneggiato" #: main/main.cpp platform/javascript/export/export.cpp #: platform/uwp/export/export.cpp @@ -16342,7 +16321,7 @@ msgstr "Forza FPS" #: main/main.cpp msgid "Enable Pause Aware Picking" -msgstr "" +msgstr "Abilita Picking Allerta Pausa" #: main/main.cpp scene/gui/item_list.cpp scene/gui/popup_menu.cpp #: scene/gui/scroll_container.cpp scene/gui/text_edit.cpp scene/gui/tree.cpp @@ -16352,7 +16331,7 @@ msgstr "Interfaccia Grafica" #: main/main.cpp msgid "Drop Mouse On GUI Input Disabled" -msgstr "" +msgstr "Rilascio del mouse sull'Input della GUI Disabilitato" #: main/main.cpp msgid "stdout" @@ -16399,7 +16378,6 @@ msgid "Input Devices" msgstr "Dispositivi Input" #: main/main.cpp -#, fuzzy msgid "Pointing" msgstr "Puntamento" @@ -16426,7 +16404,6 @@ msgid "Environment" msgstr "Ambiente" #: main/main.cpp -#, fuzzy msgid "Default Clear Color" msgstr "Colore Di Sfondo Di Default" @@ -16468,7 +16445,7 @@ msgstr "Buffering" #: main/main.cpp msgid "Agile Event Flushing" -msgstr "" +msgstr "Svuotamento degli eventi usando l'algoritmo Agile" #: main/main.cpp msgid "Emulate Touch From Mouse" @@ -16656,16 +16633,15 @@ msgstr "Gradi di Rotazione" #: modules/csg/csg_shape.cpp msgid "Spin Sides" -msgstr "" +msgstr "Lati rotazione" #: modules/csg/csg_shape.cpp msgid "Path Node" msgstr "Percorso Nodo" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Interval Type" -msgstr "Crea Vertice Interno" +msgstr "Tipo di intervallo del Percorso" #: modules/csg/csg_shape.cpp msgid "Path Interval" @@ -16673,7 +16649,7 @@ msgstr "Intervallo Percorso" #: modules/csg/csg_shape.cpp msgid "Path Simplify Angle" -msgstr "" +msgstr "Angolo di semplificazione Percorso" #: modules/csg/csg_shape.cpp msgid "Path Rotation" @@ -16694,7 +16670,6 @@ msgid "Path U Distance" msgstr "Scegli la Distanza:" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Joined" msgstr "Percorsi Uniti" @@ -16716,15 +16691,15 @@ msgstr "Sempre In Ordine" #: modules/enet/networked_multiplayer_enet.cpp msgid "Server Relay" -msgstr "" +msgstr "Rimbalzo Server" #: modules/enet/networked_multiplayer_enet.cpp msgid "DTLS Verify" -msgstr "" +msgstr "Verifica DTLS" #: modules/enet/networked_multiplayer_enet.cpp msgid "DTLS Hostname" -msgstr "" +msgstr "Nome host DTLS" #: modules/enet/networked_multiplayer_enet.cpp msgid "Use DTLS" @@ -16732,7 +16707,7 @@ msgstr "Usa DTLS" #: modules/fbx/editor_scene_importer_fbx.cpp msgid "FBX" -msgstr "" +msgstr "FBX" #: modules/fbx/editor_scene_importer_fbx.cpp msgid "Use FBX" @@ -16810,7 +16785,6 @@ msgid "Disabled GDNative Singleton" msgstr "Singleton GDNative disabilitato" #: modules/gdnative/gdnative_library_singleton_editor.cpp -#, fuzzy msgid "Libraries:" msgstr "Librerie:" @@ -16956,11 +16930,11 @@ msgstr "Conteggio Sparso" #: modules/gltf/gltf_accessor.cpp msgid "Sparse Indices Buffer View" -msgstr "" +msgstr "Vista indici sparsi dei buffer" #: modules/gltf/gltf_accessor.cpp msgid "Sparse Indices Byte Offset" -msgstr "" +msgstr "Scostamento Byte degli Indici Sparsi" #: modules/gltf/gltf_accessor.cpp msgid "Sparse Indices Component Type" @@ -16968,11 +16942,11 @@ msgstr "Tipo di Componente degli Indici Sparsi" #: modules/gltf/gltf_accessor.cpp msgid "Sparse Values Buffer View" -msgstr "" +msgstr "Vista buffer dei valori sparsi" #: modules/gltf/gltf_accessor.cpp msgid "Sparse Values Byte Offset" -msgstr "" +msgstr "Scostamento Byte dei Valori Sparsi" #: modules/gltf/gltf_buffer_view.cpp msgid "Buffer" @@ -16996,11 +16970,11 @@ msgstr "Dimensione Campo VIsivo" #: modules/gltf/gltf_camera.cpp msgid "Zfar" -msgstr "" +msgstr "Z Lontano" #: modules/gltf/gltf_camera.cpp msgid "Znear" -msgstr "Znear" +msgstr "Z Vicino" #: modules/gltf/gltf_light.cpp scene/2d/canvas_modulate.cpp #: scene/2d/cpu_particles_2d.cpp scene/2d/light_2d.cpp scene/2d/polygon_2d.cpp @@ -17048,11 +17022,11 @@ msgstr "Xform" #: modules/gltf/gltf_node.cpp scene/3d/mesh_instance.cpp msgid "Skin" -msgstr "" +msgstr "Skin" #: modules/gltf/gltf_node.cpp scene/3d/spatial.cpp msgid "Translation" -msgstr "Traslazione" +msgstr "Traduzione" #: modules/gltf/gltf_node.cpp msgid "Children" @@ -17075,18 +17049,18 @@ msgid "Godot Bone Node" msgstr "Nodo Osso Godot" #: modules/gltf/gltf_skin.cpp -#, fuzzy msgid "Skin Root" -msgstr "Nuova Scena Radice" +msgstr "Radice della Skin" #: modules/gltf/gltf_skin.cpp #, fuzzy msgid "Joints Original" -msgstr "Centra Origine" +msgstr "Articolazioni Originali" #: modules/gltf/gltf_skin.cpp +#, fuzzy msgid "Inverse Binds" -msgstr "" +msgstr "Inverti Legamenti" #: modules/gltf/gltf_skin.cpp msgid "Non Joints" @@ -17094,11 +17068,11 @@ msgstr "Non Articolazioni" #: modules/gltf/gltf_skin.cpp msgid "Joint I To Bone I" -msgstr "" +msgstr "Articolazione I ad Osso I" #: modules/gltf/gltf_skin.cpp msgid "Joint I To Name" -msgstr "" +msgstr "Articolazione I a Nome" #: modules/gltf/gltf_skin.cpp msgid "Godot Skin" @@ -17126,7 +17100,7 @@ msgstr "Immagine Gloss Speculare" #: modules/gltf/gltf_state.cpp msgid "Json" -msgstr "" +msgstr "Json" #: modules/gltf/gltf_state.cpp msgid "Major Version" @@ -17141,13 +17115,13 @@ msgid "GLB Data" msgstr "Dati GLB" #: modules/gltf/gltf_state.cpp +#, fuzzy msgid "Use Named Skin Binds" -msgstr "" +msgstr "Usa associazioni skin con nome" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Buffer Views" -msgstr "Vista dal retro" +msgstr "Viste dei Buffer" #: modules/gltf/gltf_state.cpp msgid "Accessors" @@ -17237,17 +17211,15 @@ msgid "Mask" msgstr "Maschera" #: modules/gridmap/grid_map.cpp scene/2d/tile_map.cpp -#, fuzzy msgid "Bake Navigation" -msgstr "Navigazione" +msgstr "Preprocessa Navigazione" #: modules/gridmap/grid_map.cpp scene/2d/navigation_2d.cpp #: scene/2d/navigation_agent_2d.cpp scene/2d/navigation_polygon.cpp #: scene/2d/tile_map.cpp scene/3d/navigation.cpp scene/3d/navigation_agent.cpp #: scene/3d/navigation_mesh_instance.cpp -#, fuzzy msgid "Navigation Layers" -msgstr "Sensazione Navigazione" +msgstr "Livelli Navigazione" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Next Plane" @@ -17282,9 +17254,8 @@ msgid "GridMap Fill Selection" msgstr "GridMap Riempi Selezione" #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "GridMap Paste Selection" -msgstr "Sezione GridMap incolla" +msgstr "Incolla Selezione GridMap" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "GridMap Paint" @@ -17299,9 +17270,8 @@ msgid "Snap View" msgstr "Scatta Visuale" #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Clip Disabled" -msgstr "Clip Disabilitata" +msgstr "Clip Disabilitato" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Clip Above" @@ -17409,9 +17379,8 @@ msgid "Plotting lightmaps" msgstr "Stampando le lightmap" #: modules/lightmapper_cpu/register_types.cpp -#, fuzzy msgid "CPU Lightmapper" -msgstr "Preprocessa Lightmaps" +msgstr "CPU Mappatore Della Luce" #: modules/lightmapper_cpu/register_types.cpp msgid "Low Quality Ray Count" @@ -17442,28 +17411,27 @@ msgstr "Altezza Occhio" #: modules/mobile_vr/mobile_vr_interface.cpp msgid "IOD" -msgstr "" +msgstr "IOD" #: modules/mobile_vr/mobile_vr_interface.cpp +#, fuzzy msgid "Display Width" msgstr "Larghezza Display" #: modules/mobile_vr/mobile_vr_interface.cpp #, fuzzy msgid "Display To Lens" -msgstr "Mostra Unshaded" +msgstr "Mostra alle Lenti" #: modules/mobile_vr/mobile_vr_interface.cpp msgid "Oversample" -msgstr "" +msgstr "Sovracampionamento" #: modules/mobile_vr/mobile_vr_interface.cpp -#, fuzzy msgid "K1" msgstr "K1" #: modules/mobile_vr/mobile_vr_interface.cpp -#, fuzzy msgid "K2" msgstr "K2" @@ -17482,20 +17450,17 @@ msgstr "Auto-Aggiorna Progetto" #: modules/mono/godotsharp_dirs.cpp #, fuzzy msgid "Assembly Name" -msgstr "Nome Display" +msgstr "Nome Assemblaggio" #: modules/mono/godotsharp_dirs.cpp -#, fuzzy msgid "Solution Directory" -msgstr "Scegli una cartella" +msgstr "Cartella di Soluzione" #: modules/mono/godotsharp_dirs.cpp -#, fuzzy msgid "C# Project Directory" -msgstr "Scegli una cartella" +msgstr "Cartella Progetto C#" #: modules/mono/mono_gd/gd_mono_utils.cpp -#, fuzzy msgid "End of inner exception stack trace" msgstr "Fine dell'analisi dell’eccezione interna dello stack" @@ -17620,11 +17585,11 @@ msgstr "" #: modules/upnp/upnp.cpp msgid "Discover Local Port" -msgstr "" +msgstr "Rileva Porta Locale" #: modules/upnp/upnp.cpp msgid "Discover IPv6" -msgstr "" +msgstr "Rilevamento IPv6" #: modules/upnp/upnp_device.cpp msgid "Description URL" @@ -17636,21 +17601,19 @@ msgstr "Tipo Di Servizio" #: modules/upnp/upnp_device.cpp msgid "IGD Control URL" -msgstr "" +msgstr "URL di controllo IGD" #: modules/upnp/upnp_device.cpp -#, fuzzy msgid "IGD Service Type" -msgstr "Imposta Tipo di Variabile" +msgstr "Tipo Servizio IGD" #: modules/upnp/upnp_device.cpp msgid "IGD Our Addr" -msgstr "" +msgstr "Indirizzo locale IGD" #: modules/upnp/upnp_device.cpp -#, fuzzy msgid "IGD Status" -msgstr "Stato" +msgstr "Stato IGD" #: modules/visual_script/visual_script.cpp msgid "" @@ -17677,7 +17640,6 @@ msgstr "" "memoria di lavoro del nodo! Si prega di correggere il nodo." #: modules/visual_script/visual_script.cpp -#, fuzzy msgid "Node returned an invalid sequence output:" msgstr "Il nodo ha ritornato una sequenza di output invalida:" @@ -17686,14 +17648,13 @@ msgid "Found sequence bit but not the node in the stack, report bug!" msgstr "Trovato bit di sequenza ma non il nodo nello stack, segnalare il bug!" #: modules/visual_script/visual_script.cpp -#, fuzzy msgid "Stack overflow with stack depth:" msgstr "Overflow dello stack con profondità dello stack:" #: modules/visual_script/visual_script.cpp #, fuzzy msgid "Visual Script" -msgstr "Ricerca VisualScript" +msgstr "Script Visivo" #: modules/visual_script/visual_script_editor.cpp msgid "Change Signal Arguments" @@ -18014,7 +17975,6 @@ msgstr "Modifica membro" #: modules/visual_script/visual_script_expression.cpp #: scene/resources/visual_shader.cpp -#, fuzzy msgid "Expression" msgstr "Espressione" @@ -18023,9 +17983,8 @@ msgid "Return" msgstr "Ritorno" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Return Enabled" -msgstr "Eseguibile" +msgstr "Ritorno Abilitato" #: modules/visual_script/visual_script_flow_control.cpp msgid "Return Type" @@ -18038,27 +17997,26 @@ msgstr "Condizione" #: modules/visual_script/visual_script_flow_control.cpp msgid "if (cond) is:" -msgstr "if (cond) is:" +msgstr "se (cond) è:" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "While" -msgstr "While" +msgstr "Mentre" #: modules/visual_script/visual_script_flow_control.cpp msgid "while (cond):" -msgstr "" +msgstr "mentre (cond):" #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator" msgstr "Iteratore" #: modules/visual_script/visual_script_flow_control.cpp +#, fuzzy msgid "for (elem) in (input):" -msgstr "" +msgstr "per (elem) in (input):" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Input type not iterable:" msgstr "Il tipo di input non è iterabile:" @@ -18067,7 +18025,6 @@ msgid "Iterator became invalid" msgstr "L'iteratore è diventato invalido" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Iterator became invalid:" msgstr "L'iteratore è diventato invalido:" @@ -18080,9 +18037,8 @@ msgid "in order:" msgstr "in ordine:" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Steps" -msgstr "Passo" +msgstr "Passi" #: modules/visual_script/visual_script_flow_control.cpp msgid "Switch" @@ -18095,7 +18051,7 @@ msgstr "'input' è:" #: modules/visual_script/visual_script_flow_control.cpp #, fuzzy msgid "Type Cast" -msgstr "Tipo:" +msgstr "Conversione Tipo" #: modules/visual_script/visual_script_flow_control.cpp msgid "Is %s?" @@ -18139,9 +18095,8 @@ msgid "Validate" msgstr "Valida" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "RPC Call Mode" -msgstr "Modalità scala" +msgstr "Modalità Chiamata RPC" #: modules/visual_script/visual_script_func_nodes.cpp msgid "Subtract %s" @@ -18160,34 +18115,38 @@ msgid "Mod %s" msgstr "Modulo %s" #: modules/visual_script/visual_script_func_nodes.cpp +#, fuzzy msgid "ShiftLeft %s" -msgstr "ShiftLeft %s" +msgstr "SpostaSinistra %s" #: modules/visual_script/visual_script_func_nodes.cpp +#, fuzzy msgid "ShiftRight %s" -msgstr "" +msgstr "SpostaDestra %s" #: modules/visual_script/visual_script_func_nodes.cpp +#, fuzzy msgid "BitAnd %s" -msgstr "BitAnd %s" +msgstr "Bit E %s" #: modules/visual_script/visual_script_func_nodes.cpp +#, fuzzy msgid "BitOr %s" -msgstr "" +msgstr "Bit O %s" #: modules/visual_script/visual_script_func_nodes.cpp +#, fuzzy msgid "BitXor %s" -msgstr "" +msgstr "Bit XO %s" #: modules/visual_script/visual_script_func_nodes.cpp #, fuzzy msgid "Set Mode" -msgstr "Modalità di Selezione" +msgstr "Modalità di Impostazione" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Assign Op" -msgstr "Assegna" +msgstr "Operatore Assegna" #: modules/visual_script/visual_script_func_nodes.cpp #: modules/visual_script/visual_script_nodes.cpp @@ -18204,7 +18163,6 @@ msgid "Base object is not a Node!" msgstr "L'oggetto base non è un Nodo!" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Path does not lead to Node!" msgstr "Il percorso non conduce a un Nodo!" @@ -18213,14 +18171,13 @@ msgid "Invalid index property name '%s' in node %s." msgstr "Nome proprietà indice invalido \"%s\" nel nodo %s." #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Emit %s" -msgstr "Imposta %s" +msgstr "Emetti %s" #: modules/visual_script/visual_script_nodes.cpp #, fuzzy msgid "Compose Array" -msgstr "Ridimensiona lista" +msgstr "Componi Lista" #: modules/visual_script/visual_script_nodes.cpp scene/resources/material.cpp #: scene/resources/visual_shader_nodes.cpp @@ -18228,12 +18185,10 @@ msgid "Operator" msgstr "Operatore" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "Invalid argument of type:" msgstr "Argomento invalido di tipo:" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "Invalid arguments:" msgstr "Argomenti invalidi:" @@ -18246,12 +18201,10 @@ msgid "Var Name" msgstr "Var Nome" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "VariableGet not found in script:" msgstr "VariableGet non trovato nello script:" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "VariableSet not found in script:" msgstr "VariableSet non trovato nello script:" @@ -18318,46 +18271,40 @@ msgstr "" "oppure una stringa (errore)." #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "SubCall" -msgstr "Chiamate" +msgstr "SottoChiamata" #: modules/visual_script/visual_script_nodes.cpp scene/gui/graph_node.cpp msgid "Title" msgstr "Titolo" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "Construct %s" -msgstr "Costanti" +msgstr "Costruisci %s" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "Get Local Var" -msgstr "Usa Spazio Locale" +msgstr "Ottieni Variabile Locale" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "Set Local Var" -msgstr "Usa Spazio Locale" +msgstr "Imposta Variabile Locale" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "Action %s" -msgstr "Azione" +msgstr "Azione %s" #: modules/visual_script/visual_script_nodes.cpp msgid "Deconstruct %s" -msgstr "" +msgstr "Decostruisci %s" #: modules/visual_script/visual_script_property_selector.cpp msgid "Search VisualScript" msgstr "Ricerca VisualScript" #: modules/visual_script/visual_script_yield_nodes.cpp -#, fuzzy msgid "Yield" -msgstr "Yield" +msgstr "Rendi (Yield)" #: modules/visual_script/visual_script_yield_nodes.cpp msgid "Wait" @@ -18382,31 +18329,31 @@ msgstr "Tempo Di Attesa" #: modules/visual_script/visual_script_yield_nodes.cpp #, fuzzy msgid "WaitSignal" -msgstr "WaitSignal" +msgstr "SegnaleAspetta" #: modules/visual_script/visual_script_yield_nodes.cpp #, fuzzy msgid "WaitNodeSignal" -msgstr "WaitNodeSignal" +msgstr "SegnaleAspettaNodo" #: modules/visual_script/visual_script_yield_nodes.cpp #, fuzzy msgid "WaitInstanceSignal" -msgstr "WaitInstanceSignal" +msgstr "SegnaleAspettaIstanza" #: modules/webrtc/webrtc_data_channel.cpp #, fuzzy msgid "Write Mode" -msgstr "Modalità Priorità " +msgstr "Modalità Scrittura" #: modules/webrtc/webrtc_data_channel.h +#, fuzzy msgid "WebRTC" -msgstr "" +msgstr "RTCWeb" #: modules/webrtc/webrtc_data_channel.h -#, fuzzy msgid "Max Channel In Buffer (KB)" -msgstr "Dimensione Index Buffer dei Poligoni nel Canvas (KB)" +msgstr "Canali In Buffer Massimi (KB)" #: modules/websocket/websocket_client.cpp msgid "Verify SSL" @@ -18417,36 +18364,36 @@ msgid "Trusted SSL Certificate" msgstr "Certificato SSL Fidato" #: modules/websocket/websocket_macros.h -#, fuzzy msgid "WebSocket Client" -msgstr "Peer di Rete" +msgstr "Cliente WebSocket" #: modules/websocket/websocket_macros.h #, fuzzy msgid "Max In Buffer (KB)" -msgstr "Dimensione Massima (KB)" +msgstr "In Buffer Massimi (KB)" #: modules/websocket/websocket_macros.h +#, fuzzy msgid "Max In Packets" -msgstr "" +msgstr "Pacchetti In Massimi" #: modules/websocket/websocket_macros.h #, fuzzy msgid "Max Out Buffer (KB)" -msgstr "Dimensione Massima (KB)" +msgstr "Out Buffer Massimi (KB)" #: modules/websocket/websocket_macros.h +#, fuzzy msgid "Max Out Packets" -msgstr "" +msgstr "Pacchetti Out Massimi" #: modules/websocket/websocket_macros.h -#, fuzzy msgid "WebSocket Server" -msgstr "Peer di Rete" +msgstr "Server WebSocket" #: modules/websocket/websocket_server.cpp msgid "Bind IP" -msgstr "" +msgstr "Collega IP" #: modules/websocket/websocket_server.cpp msgid "Private Key" @@ -18457,9 +18404,8 @@ msgid "SSL Certificate" msgstr "Certificato SSL" #: modules/websocket/websocket_server.cpp -#, fuzzy msgid "CA Chain" -msgstr "Elimina Catena IK" +msgstr "Catena CA" #: modules/websocket/websocket_server.cpp msgid "Handshake Timeout" @@ -18478,12 +18424,14 @@ msgid "Optional Features" msgstr "Funzionalità Opzionali" #: modules/webxr/webxr_interface.cpp +#, fuzzy msgid "Requested Reference Space Types" -msgstr "" +msgstr "Tipi di Riferimento Spazio Richiesti" #: modules/webxr/webxr_interface.cpp +#, fuzzy msgid "Reference Space Type" -msgstr "" +msgstr "Tipi di Riferimento Spazio" #: modules/webxr/webxr_interface.cpp msgid "Visibility State" @@ -18494,26 +18442,25 @@ msgid "Bounds Geometry" msgstr "Confini Geometria" #: modules/webxr/webxr_interface.cpp -#, fuzzy msgid "XR Standard Mapping" -msgstr "Agganciamento Intelligente" +msgstr "Mappamento Standard XR" #: platform/android/export/export.cpp msgid "Android SDK Path" msgstr "Percorso SDK Android" #: platform/android/export/export.cpp -#, fuzzy msgid "Debug Keystore" -msgstr "Debugger" +msgstr "Keystore di Debug" #: platform/android/export/export.cpp msgid "Debug Keystore User" -msgstr "" +msgstr "Keystore di Debug Utente" #: platform/android/export/export.cpp +#, fuzzy msgid "Debug Keystore Pass" -msgstr "" +msgstr "Keystore di Debug Pass" #: platform/android/export/export.cpp msgid "Force System User" @@ -18521,23 +18468,23 @@ msgstr "Forza Utente System" #: platform/android/export/export.cpp msgid "Shutdown ADB On Exit" -msgstr "" +msgstr "Spegni ADB In Uscita" #: platform/android/export/export_plugin.cpp msgid "Launcher Icons" -msgstr "" +msgstr "Icone del Launcher" #: platform/android/export/export_plugin.cpp msgid "Main 192 X 192" -msgstr "" +msgstr "Principale 192 X 192" #: platform/android/export/export_plugin.cpp msgid "Adaptive Foreground 432 X 432" -msgstr "" +msgstr "Primo Piano Adattivo 432 X 432" #: platform/android/export/export_plugin.cpp msgid "Adaptive Background 432 X 432" -msgstr "" +msgstr "Sfondo Adattivo 432 X 432" #: platform/android/export/export_plugin.cpp msgid "Package name is missing." @@ -18569,9 +18516,8 @@ msgid "The package must have at least one '.' separator." msgstr "Il pacchetto deve avere almeno un \".\" separatore." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Custom Build" -msgstr "Utilizza Build Personalizzata" +msgstr "Build Personalizzata" #: platform/android/export/export_plugin.cpp msgid "Use Custom Build" @@ -18590,22 +18536,20 @@ msgid "Target SDK" msgstr "Target SDK" #: platform/android/export/export_plugin.cpp platform/iphone/export/export.cpp -#, fuzzy msgid "Architectures" -msgstr "Architettura" +msgstr "Architetture" #: platform/android/export/export_plugin.cpp msgid "Keystore" msgstr "Archivio Chiavi" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Debug User" -msgstr "Debugger" +msgstr "User di Debug" #: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp msgid "Debug Password" -msgstr "" +msgstr "Password di Debug" #: platform/android/export/export_plugin.cpp msgid "Release User" @@ -18617,7 +18561,7 @@ msgstr "Password Di Rilascio" #: platform/android/export/export_plugin.cpp msgid "One Click Deploy" -msgstr "" +msgstr "Distribuzione con un Click" #: platform/android/export/export_plugin.cpp msgid "Clear Previous Install" @@ -18636,9 +18580,8 @@ msgid "Unique Name" msgstr "Nome Unico" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Signed" -msgstr "Segnale" +msgstr "Firmato" #: platform/android/export/export_plugin.cpp msgid "Classify As Game" @@ -18669,50 +18612,45 @@ msgid "XR Mode" msgstr "Modalità XR" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Hand Tracking" -msgstr "Impacchettando" +msgstr "Tracciamento della Mano" #: platform/android/export/export_plugin.cpp msgid "Hand Tracking Frequency" -msgstr "" +msgstr "Frequenza Tracciamento della Mano" #: platform/android/export/export_plugin.cpp msgid "Passthrough" -msgstr "Passthrough" +msgstr "Passaggio" #: platform/android/export/export_plugin.cpp msgid "Immersive Mode" msgstr "Modalità Immersiva" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Support Small" -msgstr "Supporta" +msgstr "Supporta Piccolo" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Support Normal" -msgstr "Supporta" +msgstr "Supporta Normale" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Support Large" -msgstr "Supporta" +msgstr "Supporta Grande" #: platform/android/export/export_plugin.cpp #, fuzzy msgid "Support Xlarge" -msgstr "Supporta" +msgstr "Supporta Extra-Grande" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "User Data Backup" -msgstr "Interfaccia Utente" +msgstr "Backup Dati Utente" #: platform/android/export/export_plugin.cpp msgid "Allow" -msgstr "" +msgstr "Permetti" #: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp msgid "Command Line" @@ -18728,7 +18666,7 @@ msgstr "Espansione APK" #: platform/android/export/export_plugin.cpp msgid "Salt" -msgstr "" +msgstr "Sale" #: platform/android/export/export_plugin.cpp msgid "Public Key" @@ -18852,6 +18790,7 @@ msgid "Invalid package name:" msgstr "Nome del pacchetto non valido:" #: platform/android/export/export_plugin.cpp +#, fuzzy msgid "" "Invalid \"GodotPaymentV3\" module included in the \"android/modules\" " "project setting (changed in Godot 3.2.2).\n" @@ -18859,26 +18798,29 @@ msgid "" "Note that the singleton was also renamed from \"GodotPayments\" to " "\"GodotGooglePlayBilling\"." msgstr "" +"Invalido modulo \"GodotPaymentV3\" incluso nelle impostazioni progetto " +"\"android/modules\" (cambiato in Godot 3.2.2).\n" +"Rimpiazzalo con il plugin di prime parti \"GodotGooglePlayBilling\".\n" +"Da notare che il singleton è stato rinominato da \"GodotPayments\" a " +"\"GodotGooglePlayBilling\"." #: platform/android/export/export_plugin.cpp msgid "\"Use Custom Build\" must be enabled to use the plugins." msgstr "Per utilizzare i plugin \"Use Custom Build\" deve essere abilitato." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "\"Hand Tracking\" is only valid when \"XR Mode\" is \"Oculus Mobile VrApi\" " "or \"OpenXR\"." msgstr "" -"\"Hand Tracking\" è valido solo quando \"Xr Mode\" è impostato su \"Oculus " -"Mobile VR\"." +"\"Tracciamento della Mano\" è valido solo quando \"Modalità XR\" è impostato " +"su \"Oculus Mobile VrApi\" o \"OpenXR\"." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "\"Passthrough\" is only valid when \"XR Mode\" is \"OpenXR\"." msgstr "" -"\"Hand Tracking\" è valido solo quando \"Xr Mode\" è impostato su \"Oculus " -"Mobile VR\"." +"\"Oltrepassaggio\" è valido solo quando \"Modalità XR\" è impostato su " +"\"OpenXR\"." #: platform/android/export/export_plugin.cpp msgid "\"Export AAB\" is only valid when \"Use Custom Build\" is enabled." @@ -18886,52 +18828,60 @@ msgstr "" "\"Export AAB\" è valido soltanto quanto \"Use Custom Build\" è abilitato." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "\"Min SDK\" can only be overridden when \"Use Custom Build\" is enabled." msgstr "" -"\"Export AAB\" è valido soltanto quanto \"Use Custom Build\" è abilitato." +"\"Min SDK\" può essere sovrascritto solo se \"Utilizza Build " +"Personalizzata\" è abilitato." #: platform/android/export/export_plugin.cpp msgid "\"Min SDK\" should be a valid integer, but got \"%s\" which is invalid." msgstr "" +"\"Min SDK\" dovrebbe essere un intero valido, ma si è ottenuto \"%s\" che è " +"invalido." #: platform/android/export/export_plugin.cpp msgid "" "\"Min SDK\" cannot be lower than %d, which is the version needed by the " "Godot library." msgstr "" +"\"Min SDK\" non può essere più basso di %d, che è la versione richiesta " +"dalla libreria Godot." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "\"Target SDK\" can only be overridden when \"Use Custom Build\" is enabled." msgstr "" -"\"Export AAB\" è valido soltanto quanto \"Use Custom Build\" è abilitato." +"\"Target SDK\" può essere sovrascritto solo se \"Utilizza Build " +"Personalizzata\" è abilitato." #: platform/android/export/export_plugin.cpp msgid "" "\"Target SDK\" should be a valid integer, but got \"%s\" which is invalid." msgstr "" +"\"Target SDK\" dovrebbe essere un intero valido, ma si è ottenuto \"%s\" che " +"è invalido." #: platform/android/export/export_plugin.cpp msgid "" "\"Target SDK\" %d is higher than the default version %d. This may work, but " "wasn't tested and may be unstable." msgstr "" +"\"Target SDK\" %d è più alto della versione di default %d. Questo potrebbe " +"funzionare, ma non è stato testato e potrebbe essere instabile." #: platform/android/export/export_plugin.cpp msgid "\"Target SDK\" version must be greater or equal to \"Min SDK\" version." msgstr "" +"La versione di \"Target SDK\" dovrebbe essere maggiore o uguale della " +"versione di \"Min SDK\"." #: platform/android/export/export_plugin.cpp platform/osx/export/export.cpp #: platform/windows/export/export.cpp -#, fuzzy msgid "Code Signing" -msgstr "Segnale" +msgstr "Firmatura Codice" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "'apksigner' could not be found. Please check that the command is available " "in the Android SDK build-tools directory. The resulting %s is unsigned." @@ -18941,7 +18891,7 @@ msgstr "" #: platform/android/export/export_plugin.cpp msgid "Signing debug %s..." -msgstr "" +msgstr "Firmando debug %s..." #: platform/android/export/export_plugin.cpp msgid "Signing release %s..." @@ -18952,7 +18902,6 @@ msgid "Could not find keystore, unable to export." msgstr "Non è stato possibile trovare keystore, impossible esportare." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Could not start apksigner executable." msgstr "Non è stato possibile avviare l'eseguibile apksigner." @@ -18969,7 +18918,6 @@ msgid "'apksigner' verification of %s failed." msgstr "Verifica 'apksigner' di %s non riuscita." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Exporting for Android" msgstr "Esportazione per Android" @@ -19000,25 +18948,22 @@ msgstr "" "\"Progetto\"." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Android build version mismatch: Template installed: %s, Godot version: %s. " "Please reinstall Android build template from 'Project' menu." msgstr "" -"Versione build di Android non coerente: Template installato: %s, Versione " -"Godot: %s. Per favore, reinstalla il build template di Android dal menu " -"\"Progetto\"." +"La Versione build di Android non corrisponde: Template installato: %s, " +"Versione Godot: %s. Per favore, reinstalla il build template di Android dal " +"menu \"Progetto\"." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Unable to overwrite res://android/build/res/*.xml files with project name." msgstr "" "Impossibile sovrascrivere i file res://android/build/res/*.xml con il nome " -"del progetto" +"del progetto." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Could not export project files to gradle project." msgstr "Impossibile esportare i file del progetto in un progetto gradle." @@ -19031,7 +18976,6 @@ msgid "Building Android Project (gradle)" msgstr "Compilazione di un progetto Android (gradle)" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Building of Android project failed, check output for the error. " "Alternatively visit docs.godotengine.org for Android build documentation." @@ -19053,38 +18997,35 @@ msgstr "" "directory del progetto gradle per gli output." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Package not found: \"%s\"." -msgstr "Pacchetto non trovato: \"%s\"" +msgstr "Pacchetto non trovato: \"%s\"." #: platform/android/export/export_plugin.cpp msgid "Creating APK..." msgstr "Creazione APK..." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Could not find template APK to export: \"%s\"." msgstr "Impossibile trovare il template APK per l'esportazione: \"%s\"." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Missing libraries in the export template for the selected architectures: %s. " "Please build a template with all required libraries, or uncheck the missing " "architectures in the export preset." msgstr "" "Librerie mancanti nel modello di esportazione per le architetture " -"selezionate: %s. Creare un modello con tutte le librerie richieste o " -"deselezionare le architetture mancanti nella preimpostazione di esportazione." +"selezionate: %s. Per favore creare un modello con tutte le librerie " +"richieste, o deselezionare le architetture mancanti nella preimpostazione di " +"esportazione." #: platform/android/export/export_plugin.cpp msgid "Adding files..." msgstr "Aggiungendo file..." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Could not export project files." -msgstr "Impossibile esportare i file del progetto" +msgstr "Impossibile esportare i file del progetto." #: platform/android/export/export_plugin.cpp msgid "Aligning APK..." @@ -19104,243 +19045,225 @@ msgstr "Il carattere \"%s\" non è consentito nell'Identificatore." #: platform/iphone/export/export.cpp msgid "Landscape Launch Screens" -msgstr "" +msgstr "Schermate di avvio Panorama" #: platform/iphone/export/export.cpp msgid "iPhone 2436 X 1125" -msgstr "" +msgstr "iPhone 2436 x 1125" #: platform/iphone/export/export.cpp msgid "iPhone 2208 X 1242" -msgstr "" +msgstr "iPhone 2208 x 1242" #: platform/iphone/export/export.cpp msgid "iPad 1024 X 768" -msgstr "" +msgstr "iPad 1024 x 768" #: platform/iphone/export/export.cpp msgid "iPad 2048 X 1536" -msgstr "" +msgstr "iPad 2048 x 1536" #: platform/iphone/export/export.cpp msgid "Portrait Launch Screens" -msgstr "" +msgstr "Schermate di avvio Ritratto" #: platform/iphone/export/export.cpp msgid "iPhone 640 X 960" -msgstr "" +msgstr "iPhone 640 x 960" #: platform/iphone/export/export.cpp msgid "iPhone 640 X 1136" -msgstr "" +msgstr "iPhone 640 x 1136" #: platform/iphone/export/export.cpp msgid "iPhone 750 X 1334" -msgstr "" +msgstr "iPhone 750 x 1334" #: platform/iphone/export/export.cpp msgid "iPhone 1125 X 2436" -msgstr "" +msgstr "iPhone 1125 x 2436" #: platform/iphone/export/export.cpp msgid "iPad 768 X 1024" -msgstr "" +msgstr "iPad 768 x 1024" #: platform/iphone/export/export.cpp msgid "iPad 1536 X 2048" -msgstr "" +msgstr "iPad 1536 x 2048" #: platform/iphone/export/export.cpp msgid "iPhone 1242 X 2208" -msgstr "" +msgstr "iPhone 1242 x 2208" #: platform/iphone/export/export.cpp +#, fuzzy msgid "App Store Team ID" -msgstr "" +msgstr "ID App Store Team" #: platform/iphone/export/export.cpp msgid "Provisioning Profile UUID Debug" -msgstr "" +msgstr "Profilo di provisioning UUID Debug" #: platform/iphone/export/export.cpp +#, fuzzy msgid "Code Sign Identity Debug" -msgstr "" +msgstr "Firma Codice Identità di Debug" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Export Method Debug" -msgstr "Esporta Con Debug" +msgstr "Metodo di Esportazione Debug" #: platform/iphone/export/export.cpp msgid "Provisioning Profile UUID Release" -msgstr "" +msgstr "Profilo di provisioning UUID Release" #: platform/iphone/export/export.cpp msgid "Code Sign Identity Release" -msgstr "" +msgstr "Identità firma del codice Release" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Export Method Release" -msgstr "Modalità d'Esportazione:" +msgstr "Metodo di Esportazione Rilascio" #: platform/iphone/export/export.cpp msgid "Targeted Device Family" -msgstr "" +msgstr "Famiglia di dispositivi selezionata" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp msgid "Info" -msgstr "" +msgstr "Info" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Identifier" -msgstr "Identificatore non valido:" +msgstr "Identificatore" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Signature" -msgstr "Segnale" +msgstr "Firma" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Short Version" -msgstr "Versione" +msgstr "Versione Corta" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp #: platform/windows/export/export.cpp -#, fuzzy msgid "Copyright" -msgstr "In Alto A Destra" +msgstr "Copyright" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Capabilities" -msgstr "Compatibilità " +msgstr "Possibilità " #: platform/iphone/export/export.cpp -#, fuzzy msgid "Access Wi-Fi" -msgstr "Accedi" +msgstr "Accesso al Wi-Fi" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Push Notifications" -msgstr "Rotazione Casuale:" +msgstr "Notifiche Push" #: platform/iphone/export/export.cpp -#, fuzzy msgid "User Data" -msgstr "Interfaccia Utente" +msgstr "Dati Utente" #: platform/iphone/export/export.cpp msgid "Accessible From Files App" -msgstr "" +msgstr "Accessibile dall'Applicazione File" #: platform/iphone/export/export.cpp msgid "Accessible From iTunes Sharing" -msgstr "" +msgstr "Accessibile dalla condivisione di iTunes" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Privacy" -msgstr "Tasto Fisico" +msgstr "Privacy" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Camera Usage Description" -msgstr "Descrizione" +msgstr "Descrizione Utilizzo Camera" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Microphone Usage Description" -msgstr "Descrizioni delle proprietà " +msgstr "Descrizione Utilizzo Microfono" #: platform/iphone/export/export.cpp #, fuzzy msgid "Photolibrary Usage Description" -msgstr "Descrizioni delle proprietà " +msgstr "Descrizione Utilizzo Fotolibreria" #: platform/iphone/export/export.cpp msgid "iPhone 120 X 120" -msgstr "" +msgstr "iPhone 120 x 120" #: platform/iphone/export/export.cpp msgid "iPhone 180 X 180" -msgstr "" +msgstr "iPhone 180 x 180" #: platform/iphone/export/export.cpp msgid "iPad 76 X 76" -msgstr "" +msgstr "iPad 76 x 76" #: platform/iphone/export/export.cpp msgid "iPad 152 X 152" -msgstr "" +msgstr "iPad 152 x 152" #: platform/iphone/export/export.cpp msgid "iPad 167 X 167" -msgstr "" +msgstr "iPad 167 x 167" #: platform/iphone/export/export.cpp msgid "App Store 1024 X 1024" -msgstr "" +msgstr "App Store 1024 x 1024" #: platform/iphone/export/export.cpp msgid "Spotlight 40 X 40" -msgstr "" +msgstr "Spotlight 40 X 40" #: platform/iphone/export/export.cpp msgid "Spotlight 80 X 80" -msgstr "" +msgstr "Spotlight 80 X 80" #: platform/iphone/export/export.cpp msgid "Storyboard" -msgstr "" +msgstr "Storyboard" #: platform/iphone/export/export.cpp msgid "Use Launch Screen Storyboard" -msgstr "" +msgstr "Usa schermata di avvio Storyboard" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Image Scale Mode" -msgstr "Modalità scala" +msgstr "Modalità di ridimensionamento dell'immagine" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Custom Image @2x" -msgstr "Immagine Personalizzata" +msgstr "Immagine Personalizzata @2x" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Custom Image @3x" -msgstr "Immagine Personalizzata" +msgstr "Immagine Personalizzata @3x" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Use Custom BG Color" -msgstr "Taglia nodi" +msgstr "Utilizza Colore di Sfondo Personalizzato" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Custom BG Color" -msgstr "Taglia nodi" +msgstr "Colore di Sfondo Personalizzato" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Export Icons" -msgstr "Espandi Tutto" +msgstr "Icone Esportazione" #: platform/iphone/export/export.cpp platform/javascript/export/export.cpp #: platform/osx/export/export.cpp #, fuzzy msgid "Prepare Templates" -msgstr "Gestisci i modelli d'esportazione" +msgstr "Prepara i modelli d'esportazione" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Export template not found." -msgstr "Modello di rilascio personalizzato non trovato." +msgstr "Modello di esportazione non trovato." #: platform/iphone/export/export.cpp msgid "App Store Team ID not specified - cannot configure the project." @@ -19364,122 +19287,110 @@ msgid "Run exported HTML in the system's default browser." msgstr "Esegui il codice HTML esportato nel browser di sistema predefinito." #: platform/javascript/export/export.cpp -#, fuzzy msgid "Could not open template for export: \"%s\"." -msgstr "Impossibile aprire il template per l'esportazione:" +msgstr "Non è stato possibile aprire il modello per l'esportazione: \"%s\"." #: platform/javascript/export/export.cpp -#, fuzzy msgid "Invalid export template: \"%s\"." -msgstr "Template di esportazione non valido:" +msgstr "Modello di esportazione non valido: \"%s\"." #: platform/javascript/export/export.cpp -#, fuzzy msgid "Could not write file: \"%s\"." -msgstr "Impossibile scrivere il file:" +msgstr "Non è stato possibile scrivere il file: \"%s\"." #: platform/javascript/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Icon Creation" -msgstr "Imposta Margine" +msgstr "Creazione Icona" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Could not read file: \"%s\"." -msgstr "Impossibile leggere il file:" +msgstr "Non è stato possibile leggere il file: \"%s\"." #: platform/javascript/export/export.cpp msgid "PWA" -msgstr "" +msgstr "PWA" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Variant" -msgstr "Separazione:" +msgstr "Variante" #: platform/javascript/export/export.cpp #, fuzzy msgid "Export Type" -msgstr "Esporta" +msgstr "Tipo di Esportazione" #: platform/javascript/export/export.cpp -#, fuzzy msgid "VRAM Texture Compression" -msgstr "Cambia espressione" +msgstr "Compressione Texture VRAM" #: platform/javascript/export/export.cpp msgid "For Desktop" -msgstr "" +msgstr "Per il Desktop" #: platform/javascript/export/export.cpp msgid "For Mobile" -msgstr "" +msgstr "Per dispositivi mobile" #: platform/javascript/export/export.cpp msgid "HTML" -msgstr "" +msgstr "HTML" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Export Icon" -msgstr "Espandi Tutto" +msgstr "Icona di Esportazione" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Custom HTML Shell" -msgstr "Taglia nodi" +msgstr "Shell HTML Personalizzato" #: platform/javascript/export/export.cpp msgid "Head Include" -msgstr "" +msgstr "Includi head" #: platform/javascript/export/export.cpp msgid "Canvas Resize Policy" -msgstr "" +msgstr "Regole di ridimensionamento canvas" #: platform/javascript/export/export.cpp msgid "Focus Canvas On Start" -msgstr "" +msgstr "Evidenzia Canvas all'avvio" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Experimental Virtual Keyboard" -msgstr "Filtra segnali" +msgstr "Tastiera Virtuale Sperimentale" #: platform/javascript/export/export.cpp msgid "Progressive Web App" -msgstr "" +msgstr "Applicazione Web progressiva" #: platform/javascript/export/export.cpp msgid "Offline Page" -msgstr "" +msgstr "Pagina Offline" #: platform/javascript/export/export.cpp msgid "Icon 144 X 144" -msgstr "" +msgstr "Icona 144 x 144" #: platform/javascript/export/export.cpp msgid "Icon 180 X 180" -msgstr "" +msgstr "Icona 180 x 180" #: platform/javascript/export/export.cpp msgid "Icon 512 X 512" -msgstr "" +msgstr "Icona 512 x 512" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Could not read HTML shell: \"%s\"." -msgstr "Impossibile leggere la shell HTML:" +msgstr "Non è stato possibile leggere lo shell HTML: \"%s\"." #: platform/javascript/export/export.cpp #, fuzzy msgid "Could not create HTTP server directory: %s." -msgstr "Impossibile creare la directory per il server HTTP:" +msgstr "Impossibile creare la cartella per il server HTTP: %s." #: platform/javascript/export/export.cpp -#, fuzzy msgid "Error starting HTTP server: %d." -msgstr "Errore all'avvio del server HTTP:" +msgstr "Errore all'avvio del server HTTP: %d." #: platform/javascript/export/export.cpp msgid "Web" @@ -19487,69 +19398,63 @@ msgstr "Web" #: platform/javascript/export/export.cpp msgid "HTTP Host" -msgstr "" +msgstr "Host HTTP" #: platform/javascript/export/export.cpp msgid "HTTP Port" -msgstr "" +msgstr "Porta HTTP" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Use SSL" -msgstr "Usa Scatto" +msgstr "Usa SSL" #: platform/javascript/export/export.cpp msgid "SSL Key" -msgstr "" +msgstr "Chiave SSL" #: platform/osx/export/codesign.cpp msgid "Can't get filesystem access." -msgstr "" +msgstr "Non si può avere accesso al filesystem." #: platform/osx/export/codesign.cpp msgid "Failed to get Info.plist hash." -msgstr "" +msgstr "Recupero dell'hash di Info.plist fallito." #: platform/osx/export/codesign.cpp -#, fuzzy msgid "Invalid Info.plist, no exe name." -msgstr "Nome del progetto non valido." +msgstr "Invalido Info.plist, nessun nome exe." #: platform/osx/export/codesign.cpp msgid "Invalid Info.plist, no bundle id." -msgstr "" +msgstr "Info.plist invalido, nessun bundle id." #: platform/osx/export/codesign.cpp -#, fuzzy msgid "Invalid Info.plist, can't load." -msgstr "Geometria non valida, impossibile creare il poligono." +msgstr "Info.plist non valido, impossibile caricare." #: platform/osx/export/codesign.cpp -#, fuzzy msgid "Failed to create \"%s\" subfolder." -msgstr "Impossibile creare la cartella." +msgstr "Impossibile creare la sottocartella \"%s\"." #: platform/osx/export/codesign.cpp msgid "Failed to extract thin binary." -msgstr "" +msgstr "Estrazione del file binario fallito." #: platform/osx/export/codesign.cpp -#, fuzzy msgid "Invalid binary format." -msgstr "Percorso di base non valido." +msgstr "Formato eseguibile non valido." #: platform/osx/export/codesign.cpp msgid "Already signed!" -msgstr "" +msgstr "Già firmato!" #: platform/osx/export/codesign.cpp -#, fuzzy msgid "Failed to process nested resources." -msgstr "Caricamento della risorsa fallito." +msgstr "Elaborazione risorse nidificate fallito." #: platform/osx/export/codesign.cpp msgid "Failed to create _CodeSignature subfolder." -msgstr "" +msgstr "Creazione sottocartella _CodeSignature fallita." #: platform/osx/export/codesign.cpp #, fuzzy @@ -19557,53 +19462,48 @@ msgid "Failed to get CodeResources hash." msgstr "Caricamento della risorsa fallito." #: platform/osx/export/codesign.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Invalid entitlements file." -msgstr "Estensione non valida." +msgstr "File di permessi non valido." #: platform/osx/export/codesign.cpp -#, fuzzy msgid "Invalid executable file." -msgstr "Estensione non valida." +msgstr "File eseguibile non valido." #: platform/osx/export/codesign.cpp msgid "Can't resize signature load command." -msgstr "" +msgstr "Impossibile ridimensionare il comando caricamento firma." #: platform/osx/export/codesign.cpp msgid "Failed to create fat binary." -msgstr "" +msgstr "Creazione del file binario fat fallito." #: platform/osx/export/codesign.cpp msgid "Unknown bundle type." -msgstr "" +msgstr "Tipo di bundle sconosciuto." #: platform/osx/export/codesign.cpp msgid "Unknown object type." -msgstr "" +msgstr "Tipo di oggetto sconosciuto." #: platform/osx/export/export.cpp -#, fuzzy msgid "App Category" -msgstr "Categoria:" +msgstr "Categoria Applicazione" #: platform/osx/export/export.cpp msgid "High Res" -msgstr "" +msgstr "Alta Risoluzione" #: platform/osx/export/export.cpp -#, fuzzy msgid "Location Usage Description" -msgstr "Descrizione" +msgstr "Descrizione d'uso Posizione" #: platform/osx/export/export.cpp msgid "Address Book Usage Description" -msgstr "" +msgstr "Descrizione d'uso Rubrica" #: platform/osx/export/export.cpp -#, fuzzy msgid "Calendar Usage Description" -msgstr "Descrizione" +msgstr "Descrizione d'uso Calendario" #: platform/osx/export/export.cpp #, fuzzy @@ -19611,37 +19511,33 @@ msgid "Photos Library Usage Description" msgstr "Descrizioni delle proprietà " #: platform/osx/export/export.cpp -#, fuzzy msgid "Desktop Folder Usage Description" -msgstr "Descrizioni del metodo" +msgstr "Descrizione d'uso Cartella Desktop" #: platform/osx/export/export.cpp -#, fuzzy msgid "Documents Folder Usage Description" -msgstr "Descrizioni del metodo" +msgstr "Descrizione d'uso Cartella Documenti" #: platform/osx/export/export.cpp msgid "Downloads Folder Usage Description" -msgstr "" +msgstr "Descrizione d'uso Cartella Downloads" #: platform/osx/export/export.cpp msgid "Network Volumes Usage Description" -msgstr "" +msgstr "Descrizione d'uso Volumi di Rete" #: platform/osx/export/export.cpp msgid "Removable Volumes Usage Description" -msgstr "" +msgstr "Descrizione d'uso Volumi Rimovibili" #: platform/osx/export/export.cpp platform/windows/export/export.cpp -#, fuzzy msgid "Codesign" -msgstr "Nodo" +msgstr "Firma del codice" #: platform/osx/export/export.cpp platform/uwp/export/export.cpp #: platform/windows/export/export.cpp -#, fuzzy msgid "Identity" -msgstr "Indenta" +msgstr "Identità " #: platform/osx/export/export.cpp platform/windows/export/export.cpp #, fuzzy @@ -19653,59 +19549,52 @@ msgid "Hardened Runtime" msgstr "" #: platform/osx/export/export.cpp -#, fuzzy msgid "Replace Existing Signature" -msgstr "Sostituisci nei file" +msgstr "Sostituisci firma esistente" #: platform/osx/export/export.cpp -#, fuzzy msgid "Entitlements" -msgstr "Gizmos" +msgstr "Permessi" #: platform/osx/export/export.cpp -#, fuzzy msgid "Custom File" -msgstr "Taglia nodi" +msgstr "File Personalizzato" #: platform/osx/export/export.cpp msgid "Allow JIT Code Execution" -msgstr "" +msgstr "Consenti l'esecuzione di codice JIT" #: platform/osx/export/export.cpp msgid "Allow Unsigned Executable Memory" -msgstr "" +msgstr "Consenti memoria eseguibile non firmata" #: platform/osx/export/export.cpp msgid "Allow Dyld Environment Variables" -msgstr "" +msgstr "Consenti variabili d'ambiente Dyld" #: platform/osx/export/export.cpp -#, fuzzy msgid "Disable Library Validation" -msgstr "Pulsante disabilitato" +msgstr "Disabilita Convalida Libreria" #: platform/osx/export/export.cpp -#, fuzzy msgid "Audio Input" -msgstr "Aggiungi Input" +msgstr "Ingresso Audio" #: platform/osx/export/export.cpp msgid "Address Book" -msgstr "" +msgstr "Rubrica" #: platform/osx/export/export.cpp msgid "Calendars" -msgstr "" +msgstr "Calendari" #: platform/osx/export/export.cpp -#, fuzzy msgid "Photos Library" -msgstr "Esporta Libreria" +msgstr "Libreria Foto" #: platform/osx/export/export.cpp -#, fuzzy msgid "Apple Events" -msgstr "Aggiungi Evento" +msgstr "Eventi Apple" #: platform/osx/export/export.cpp #, fuzzy @@ -19714,60 +19603,51 @@ msgstr "Debug" #: platform/osx/export/export.cpp msgid "App Sandbox" -msgstr "" +msgstr "Applicazione Sandbox" #: platform/osx/export/export.cpp -#, fuzzy msgid "Network Server" -msgstr "Peer di Rete" +msgstr "Server di Rete" #: platform/osx/export/export.cpp -#, fuzzy msgid "Network Client" -msgstr "Peer di Rete" +msgstr "Client di Rete" #: platform/osx/export/export.cpp -#, fuzzy msgid "Device USB" -msgstr "Dispositivo" +msgstr "Dispositivo USB" #: platform/osx/export/export.cpp msgid "Device Bluetooth" -msgstr "" +msgstr "Dispositivo Bluetooth" #: platform/osx/export/export.cpp -#, fuzzy msgid "Files Downloads" -msgstr "Scarica" +msgstr "File scaricati" #: platform/osx/export/export.cpp -#, fuzzy msgid "Files Pictures" -msgstr "Funzionalità " +msgstr "File Immagini" #: platform/osx/export/export.cpp -#, fuzzy msgid "Files Music" -msgstr "Files" +msgstr "File Audio" #: platform/osx/export/export.cpp -#, fuzzy msgid "Files Movies" -msgstr "Filtra tiles" +msgstr "File Video" #: platform/osx/export/export.cpp platform/windows/export/export.cpp -#, fuzzy msgid "Custom Options" -msgstr "Opzioni Bus" +msgstr "Opzioni personalizzate" #: platform/osx/export/export.cpp -#, fuzzy msgid "Notarization" -msgstr "Localizzazione" +msgstr "Autenticazione" #: platform/osx/export/export.cpp msgid "Apple ID Name" -msgstr "" +msgstr "Nome Apple ID" #: platform/osx/export/export.cpp #, fuzzy @@ -19789,9 +19669,8 @@ msgid "Could not start xcrun executable." msgstr "Impossibile avviare l'eseguibile xcrun." #: platform/osx/export/export.cpp -#, fuzzy msgid "Notarization failed." -msgstr "Localizzazione" +msgstr "Autenticazione fallita." #: platform/osx/export/export.cpp msgid "Notarization request UUID: \"%s\"" @@ -19802,22 +19681,30 @@ msgid "" "The notarization process generally takes less than an hour. When the process " "is completed, you'll receive an email." msgstr "" +"Il processo di autenticazione impiega generalmente meno di un'ora. Riceverai " +"una email quando il processo sarà concluso." #: platform/osx/export/export.cpp msgid "" "You can check progress manually by opening a Terminal and running the " "following command:" msgstr "" +"Puoi controllare manualmente l'avanzamento aprendo il Terminale e lanciando " +"il seguente comando:" #: platform/osx/export/export.cpp msgid "" "Run the following command to staple the notarization ticket to the exported " "application (optional):" msgstr "" +"Lancia il seguente comando per agganciare il ticket di notarizzazione " +"all'applicazione esportata (opzionale):" #: platform/osx/export/export.cpp msgid "Timestamping is not compatible with ad-hoc signature, and was disabled!" msgstr "" +"La visualizzazione dell'orario non è compatibile con la firma ad-hoc, ed è " +"stata disabilitata!" #: platform/osx/export/export.cpp msgid "" @@ -19826,17 +19713,19 @@ msgstr "" #: platform/osx/export/export.cpp msgid "Built-in CodeSign failed with error \"%s\"." -msgstr "" +msgstr "Firma del codice incorporata fallita con errore \"%s\"." #: platform/osx/export/export.cpp msgid "Built-in CodeSign require regex module." -msgstr "" +msgstr "La firma del codice incorporata richiede il modulo regex." #: platform/osx/export/export.cpp msgid "" "Could not start codesign executable, make sure Xcode command line tools are " "installed." msgstr "" +"Non è stato possibile lanciare l'eseguibile di firma del codice, controllare " +"che gli strumenti da linea di comando di Xcode siano installati." #: platform/osx/export/export.cpp platform/windows/export/export.cpp #, fuzzy @@ -19851,11 +19740,12 @@ msgstr "Errore nel salvataggio del file: %s" #: platform/osx/export/export.cpp msgid "Relative symlinks are not supported, exported \"%s\" might be broken!" msgstr "" +"I link simbolici relativi non sono supportati, \"%s\" esportato potrebbe " +"essere danneggiato!" #: platform/osx/export/export.cpp -#, fuzzy msgid "DMG Creation" -msgstr "Direzione" +msgstr "Creazione del DMG" #: platform/osx/export/export.cpp #, fuzzy @@ -19864,79 +19754,83 @@ msgstr "Impossibile avviare l'eseguibile hdiutil." #: platform/osx/export/export.cpp msgid "`hdiutil create` failed - file exists." -msgstr "" +msgstr "`hdutil create` fallito - Il file già esiste." #: platform/osx/export/export.cpp msgid "`hdiutil create` failed." -msgstr "" +msgstr "`hdutil create` fallito." #: platform/osx/export/export.cpp -#, fuzzy msgid "Creating app bundle" -msgstr "Creando la miniatura" +msgstr "Creando il pacchetto dell'app" #: platform/osx/export/export.cpp -#, fuzzy msgid "Could not find template app to export: \"%s\"." -msgstr "Impossibile trovare il template dell'app per l'esportazione:" +msgstr "Impossibile trovare il template dell'app per l'esportazione:\"%s\"." #: platform/osx/export/export.cpp -#, fuzzy msgid "Invalid export format." -msgstr "Template di esportazione non valido:" +msgstr "Formato di esportazione invalido." #: platform/osx/export/export.cpp msgid "" "Relative symlinks are not supported on this OS, the exported project might " "be broken!" msgstr "" +"I link simbolici relativi non sono supportati in questo Sistema Operativo, " +"il progetto esportato potrebbe essere danneggiato!" #: platform/osx/export/export.cpp msgid "" "Requested template binary \"%s\" not found. It might be missing from your " "template archive." msgstr "" +"Il modello di eseguibile \"%s\" richiesto non è stato trovato. Potrebbe " +"essere mancante dal tuo archivio dei modelli." #: platform/osx/export/export.cpp msgid "Making PKG" -msgstr "" +msgstr "Creando il PKG" #: platform/osx/export/export.cpp msgid "" "Ad-hoc signed applications require the 'Disable Library Validation' " "entitlement to load dynamic libraries." msgstr "" +"Le applicazioni firmate ad-hoc richiedono il permesso \"Disabilita verifica " +"libreria\" per caricare le librerie dinamiche." #: platform/osx/export/export.cpp msgid "Code signing bundle" -msgstr "" +msgstr "Pacchetto di firma del codice" #: platform/osx/export/export.cpp msgid "Making DMG" -msgstr "" +msgstr "Creando il DMG" #: platform/osx/export/export.cpp msgid "Code signing DMG" -msgstr "" +msgstr "Firmando il codice DMG" #: platform/osx/export/export.cpp msgid "Making ZIP" -msgstr "" +msgstr "Creando lo ZIP" #: platform/osx/export/export.cpp msgid "" "Notarization requires the app to be archived first, select the DMG or ZIP " "export format instead." msgstr "" +"La notarizazzione richiede che l'app sia prima archiviata, seleziona invece " +"il formato di esportazione DMG o ZIP." #: platform/osx/export/export.cpp msgid "Sending archive for notarization" -msgstr "" +msgstr "Inviando l'archivio per l'autenticazione" #: platform/osx/export/export.cpp -#, fuzzy msgid "ZIP Creation" -msgstr "Proiezione" +msgstr "Creazione dello ZIP" #: platform/osx/export/export.cpp #, fuzzy @@ -19952,16 +19846,22 @@ msgid "" "Warning: Built-in \"codesign\" is selected in the Editor Settings. Code " "signing is limited to ad-hoc signature only." msgstr "" +"Warning: \"firma del codice\" integrato è selezionato nelle impostazioni " +"dell'editor. La firma del codice è limitata solo alle firme ad-hoc." #: platform/osx/export/export.cpp msgid "" "Warning: Xcode command line tools are not installed, using built-in " "\"codesign\". Code signing is limited to ad-hoc signature only." msgstr "" +"Warning: gli strumenti da linea di comando di Xcode non sono installati, " +"usando la \"firma del codice\" integrata. La firma del codice è limitata " +"solo alle firme ad-hoc." #: platform/osx/export/export.cpp msgid "Notarization: Notarization with an ad-hoc signature is not supported." msgstr "" +"Autenticazione: L'autenticazione con una firma ad-hoc non è supportata." #: platform/osx/export/export.cpp #, fuzzy @@ -19991,12 +19891,16 @@ msgid "" "Warning: Notarization is disabled. The exported project will be blocked by " "Gatekeeper if it's downloaded from an unknown source." msgstr "" +"Warning: l'autenticazione è disabilitata. Il progetto esportato sarà " +"bloccato dal Gatekeeper is è scaricato da una sorgente sconosciuta." #: platform/osx/export/export.cpp msgid "" "Code signing is disabled. The exported project will not run on Macs with " "enabled Gatekeeper and Apple Silicon powered Macs." msgstr "" +"La firma del codice è disabilitata. Il progetto esportato non verrà eseguito " +"su Mac con Gatekeeper abilitato e Mac alimentati da Apple Silicon." #: platform/osx/export/export.cpp msgid "" @@ -20008,23 +19912,32 @@ msgstr "" msgid "" "Timestamping is not compatible with ad-hoc signature, and will be disabled!" msgstr "" +"La stampa dell'ora non è compatibile con la firma ad-hoc, e sarà " +"disabilitata!" #: platform/osx/export/export.cpp msgid "" "Warning: Notarization is not supported from this OS. The exported project " "will be blocked by Gatekeeper if it's downloaded from an unknown source." msgstr "" +"Warning: la notarizzazione non è supportata da questo Sistema Operativo. Il " +"progetto esportato sarà bloccato da Gatekeeper se è scaricato da una " +"sorgente sconosciuta." #: platform/osx/export/export.cpp msgid "" "Privacy: Microphone access is enabled, but usage description is not " "specified." msgstr "" +"Privacy: L'accesso al microfono è abilitato, ma la descrizione dell'uso non " +"è specificata." #: platform/osx/export/export.cpp msgid "" "Privacy: Camera access is enabled, but usage description is not specified." msgstr "" +"Privacy: L'accesso alla Camera è abilitato, ma la descrizione d'uso non è " +"specificata." #: platform/osx/export/export.cpp msgid "" @@ -20062,6 +19975,7 @@ msgid "Architecture" msgstr "Architettura" #: platform/uwp/export/export.cpp +#, fuzzy msgid "Display Name" msgstr "Nome Display" @@ -20123,7 +20037,7 @@ msgstr "Cambia espressione" #: platform/uwp/export/export.cpp msgid "Landscape" -msgstr "" +msgstr "Panorama" #: platform/uwp/export/export.cpp #, fuzzy @@ -20200,6 +20114,7 @@ msgid "Invalid package unique name." msgstr "Nome univoco del pacchetto non valido." #: platform/uwp/export/export.cpp +#, fuzzy msgid "Invalid package publisher display name." msgstr "Nome visualizzato del publisher del pacchetto invalido." @@ -20262,9 +20177,8 @@ msgid "UWP" msgstr "UWP" #: platform/uwp/export/export.cpp platform/windows/export/export.cpp -#, fuzzy msgid "Signtool" -msgstr "Signtool" +msgstr "Strumento di segno" #: platform/uwp/export/export.cpp msgid "Debug Certificate" @@ -20440,7 +20354,7 @@ msgstr "Osslsigncode" #: platform/windows/export/export.cpp msgid "Wine" -msgstr "Wine" +msgstr "Vino" #: platform/x11/export/export.cpp msgid "32-bit executables cannot have embedded data >= 4 GiB." @@ -20458,13 +20372,13 @@ msgid "" "order for AnimatedSprite to display frames." msgstr "" "Una risorsa SpriteFrames deve essere creata o impostata nella proprietà " -"\"Frames\" per permettere a AnimatedSprite di visualizzare i frame." +"\"Frames\" per permettere all'AnimatedSprite di visualizzare i frame." #: scene/2d/animated_sprite.cpp scene/2d/cpu_particles_2d.cpp #: scene/2d/particles_2d.cpp scene/3d/cpu_particles.cpp scene/3d/particles.cpp #, fuzzy msgid "Speed Scale" -msgstr "Scala" +msgstr "Scala della velocità " #: scene/2d/animated_sprite.cpp scene/2d/audio_stream_player_2d.cpp #: scene/3d/audio_stream_player_3d.cpp scene/3d/sprite_3d.cpp @@ -20516,7 +20430,7 @@ msgstr "Genera punti" #: scene/2d/area_2d.cpp scene/3d/area.cpp #, fuzzy msgid "Gravity Distance Scale" -msgstr "Istanza" +msgstr "Scala della distanza della gravità " #: scene/2d/area_2d.cpp scene/3d/area.cpp #, fuzzy @@ -20559,7 +20473,7 @@ msgstr "Volume" #: servers/audio/effects/audio_effect_pitch_shift.cpp #, fuzzy msgid "Pitch Scale" -msgstr "Scala" +msgstr "Scala del tono" #: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp #: scene/audio/audio_stream_player.cpp scene/gui/video_player.cpp @@ -21389,7 +21303,6 @@ msgid "Antialiased" msgstr "Inizializza" #: scene/2d/multimesh_instance_2d.cpp scene/3d/multimesh_instance.cpp -#, fuzzy msgid "Multimesh" msgstr "Multimesh" @@ -21484,7 +21397,6 @@ msgstr "" "poligono." #: scene/2d/navigation_polygon.cpp -#, fuzzy msgid "Navpoly" msgstr "Navpoly" @@ -21530,7 +21442,7 @@ msgstr "Scatti relativi" #: scene/2d/parallax_background.cpp scene/gui/scroll_container.cpp #: scene/resources/default_theme/default_theme.cpp msgid "Scroll" -msgstr "" +msgstr "Scorrere" #: scene/2d/parallax_background.cpp #, fuzzy @@ -21841,7 +21753,7 @@ msgstr "" #: scene/2d/polygon_2d.cpp msgid "Invert" -msgstr "" +msgstr "Invertire" #: scene/2d/polygon_2d.cpp #, fuzzy @@ -21921,12 +21833,10 @@ msgstr "" "Skeleton2D e impostane una." #: scene/2d/sprite.cpp scene/3d/sprite_3d.cpp -#, fuzzy msgid "Hframes" msgstr "Hframes" #: scene/2d/sprite.cpp scene/3d/sprite_3d.cpp -#, fuzzy msgid "Vframes" msgstr "Vframes" @@ -22328,9 +22238,8 @@ msgid "Projection" msgstr "Proiezione" #: scene/3d/camera.cpp -#, fuzzy msgid "FOV" -msgstr "FOV" +msgstr "Campo Visivo" #: scene/3d/camera.cpp #, fuzzy @@ -22530,7 +22439,6 @@ msgstr "" "Per rimuovere questo avviso, disattiva la proprietà Compress di GIProbe." #: scene/3d/gi_probe.cpp -#, fuzzy msgid "Subdiv" msgstr "Subdiv" @@ -22597,9 +22505,8 @@ msgstr "Forza Modulazione Bianca" #: scene/3d/label_3d.cpp scene/resources/default_theme/default_theme.cpp #: scene/resources/dynamic_font.cpp scene/resources/primitive_meshes.cpp -#, fuzzy msgid "Font" -msgstr "Font" +msgstr "Carattere" #: scene/3d/label_3d.cpp scene/resources/primitive_meshes.cpp #, fuzzy @@ -22683,7 +22590,6 @@ msgid "Depth Range" msgstr "Profondità " #: scene/3d/light.cpp -#, fuzzy msgid "Omni" msgstr "Omni" @@ -23758,6 +23664,16 @@ msgstr "Errore" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Ordina" + +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Use AABB Center" +msgstr "Usa Ambiente" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" @@ -24241,6 +24157,7 @@ msgid "Theme Overrides" msgstr "Sovrascrizioni" #: scene/gui/control.cpp +#, fuzzy 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\"." @@ -24406,7 +24323,7 @@ msgstr "Mostra Ossa" #: scene/gui/graph_edit.cpp scene/gui/text_edit.cpp #: scene/resources/default_theme/default_theme.cpp msgid "Minimap" -msgstr "" +msgstr "Minimappa" #: scene/gui/graph_edit.cpp msgid "Enable grid minimap." @@ -25269,9 +25186,8 @@ msgid "Use 32 BPC Depth" msgstr "" #: scene/main/scene_tree.cpp -#, fuzzy msgid "Default Environment" -msgstr "Mostra Ambiente" +msgstr "Ambiente predefinito" #: scene/main/scene_tree.cpp msgid "" @@ -27506,9 +27422,8 @@ msgid "Invalid comparison function for that type." msgstr "Funzione di confronto non valida per quel tipo." #: scene/resources/world.cpp -#, fuzzy msgid "Fallback Environment" -msgstr "Mostra Ambiente" +msgstr "Ambiente di ripiego" #: scene/resources/world.cpp #, fuzzy @@ -27821,9 +27736,8 @@ msgid "Feed" msgstr "" #: servers/camera/camera_feed.cpp -#, fuzzy msgid "Is Active" -msgstr "Prospettica" +msgstr "È attiva" #: servers/physics/space_sw.cpp servers/physics_2d/space_2d_sw.cpp msgid "Sleep Threshold Linear" diff --git a/editor/translations/ja.po b/editor/translations/ja.po index 2570cb6288..dc17329ba7 100644 --- a/editor/translations/ja.po +++ b/editor/translations/ja.po @@ -43,13 +43,17 @@ # fadhliazhari <m.fadhliazhari@gmail.com>, 2022. # Chia-Hsiang Cheng <cche0109@student.monash.edu>, 2022. # meko <hirono.yoneyama@outlook.com>, 2022. +# Fire Dingo <snowsable113@icloud.com>, 2022. +# Narazaki Shuji <shujinarazaki@protonmail.com>, 2022. +# ta ko <neji.cion@gmail.com>, 2022. +# T K <kidaaam@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-27 21:37+0000\n" -"Last-Translator: nitenook <admin@alterbaum.net>\n" +"PO-Revision-Date: 2022-12-13 13:21+0000\n" +"Last-Translator: T K <kidaaam@gmail.com>\n" "Language-Team: Japanese <https://hosted.weblate.org/projects/godot-engine/" "godot/ja/>\n" "Language: ja\n" @@ -57,7 +61,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.14.1\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -480,7 +484,6 @@ msgid "Pressure" msgstr "圧力" #: core/os/input_event.cpp -#, fuzzy msgid "Pen Inverted" msgstr "ペンå転" @@ -906,9 +909,8 @@ msgid "Resource" msgstr "リソース" #: core/resource.cpp -#, fuzzy msgid "Local To Scene" -msgstr "シーンを閉ã˜ã‚‹" +msgstr "シーンã§å›ºæœ‰" #: core/resource.cpp editor/dependency_editor.cpp #: editor/editor_autoload_settings.cpp editor/plugins/path_editor_plugin.cpp @@ -1050,12 +1052,10 @@ msgid "Scale" msgstr "スケール" #: drivers/gles3/rasterizer_scene_gles3.cpp -#, fuzzy msgid "Follow Surface" msgstr "サーフェスをフォãƒãƒ¼ã™ã‚‹" #: drivers/gles3/rasterizer_scene_gles3.cpp -#, fuzzy msgid "Weight Samples" msgstr "é‡é‡ã‚µãƒ³ãƒ—ル" @@ -1365,14 +1365,12 @@ msgid "Easing:" msgstr "イージング:" #: editor/animation_track_editor.cpp -#, fuzzy msgid "In-Handle:" -msgstr "ãƒãƒ³ãƒ‰ãƒ«ã‚’è¨å®šã™ã‚‹" +msgstr "インãƒãƒ³ãƒ‰ãƒ«:" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Out-Handle:" -msgstr "ãƒãƒ³ãƒ‰ãƒ«ã‚’è¨å®šã™ã‚‹" +msgstr "アウトãƒãƒ³ãƒ‰ãƒ«:" #: editor/animation_track_editor.cpp msgid "Stream:" @@ -1645,9 +1643,8 @@ msgid "" msgstr "ã“ã®ã‚ªãƒ—ションã¯å˜ä¸€ãƒˆãƒ©ãƒƒã‚¯ã§ã®ãƒ™ã‚¸ã‚§ç·¨é›†ã§ã¯æ©Ÿèƒ½ã—ã¾ã›ã‚“。" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Anim Add RESET Keys" -msgstr "アニメーションã‚ーã®æ‹¡ç¸®" +msgstr "リセットã‚ーã®è¿½åŠ " #: editor/animation_track_editor.cpp msgid "" @@ -3377,7 +3374,6 @@ msgid "ScanSources" msgstr "スã‚ャンソース" #: editor/editor_file_system.cpp -#, fuzzy msgid "" "There are multiple importers for different types pointing to file %s, import " "aborted" @@ -3600,14 +3596,12 @@ msgid "Checked" msgstr "ãƒã‚§ãƒƒã‚¯æ¸ˆã¿" #: editor/editor_inspector.cpp -#, fuzzy msgid "Draw Red" -msgstr "ドãƒãƒ¼ã‚³ãƒ¼ãƒ«:" +msgstr "赤色ã§æç”»" #: editor/editor_inspector.cpp -#, fuzzy msgid "Keying" -msgstr "実行" +msgstr "ã‚ーイング" #: editor/editor_inspector.cpp msgid "Pin value" @@ -4340,9 +4334,8 @@ msgid "Update Continuously" msgstr "継続的ã«æ›´æ–°" #: editor/editor_node.cpp -#, fuzzy msgid "Update Vital Only" -msgstr "マテリアルã®å¤‰æ›´:" +msgstr "é‡è¦ãªå¤‰æ›´ç‚¹ã®ã¿ã‚’æ›´æ–°" #: editor/editor_node.cpp msgid "Localize Settings" @@ -4377,12 +4370,10 @@ msgid "Auto Unfold Foreign Scenes" msgstr "外部シーンã®è‡ªå‹•å±•é–‹" #: editor/editor_node.cpp -#, fuzzy msgid "Horizontal Vector2 Editing" msgstr "水平ベクトル2編集" #: editor/editor_node.cpp -#, fuzzy msgid "Horizontal Vector Types Editing" msgstr "水平ベクトルタイプ編集" @@ -5189,9 +5180,8 @@ msgstr "æ–°è¦ %s" #: modules/visual_script/visual_script_func_nodes.cpp #: modules/visual_script/visual_script_nodes.cpp #: modules/visual_script/visual_script_yield_nodes.cpp -#, fuzzy msgid "Base Type" -msgstr "基底型を変更" +msgstr "基底型" #: editor/editor_resource_picker.cpp msgid "Edited Resource" @@ -5297,7 +5287,6 @@ msgid "Dim Editor On Dialog Popup" msgstr "ダイアãƒã‚°ã®ãƒãƒƒãƒ—アップ時ã«ã‚¨ãƒ‡ã‚£ã‚¿ãƒ¼ã‚’è–„æš—ãã™ã‚‹" #: editor/editor_settings.cpp main/main.cpp -#, fuzzy msgid "Low Processor Mode Sleep (µsec)" msgstr "低プãƒã‚»ãƒƒã‚µ モード スリープ (マイクãƒç§’)" @@ -5307,16 +5296,14 @@ msgid "Unfocused Low Processor Mode Sleep (µsec)" msgstr "フォーカスã•ã‚Œã¦ã„ãªã„低プãƒã‚»ãƒƒã‚µ モード スリープ (マイクãƒç§’)" #: editor/editor_settings.cpp -#, fuzzy msgid "Separate Distraction Mode" -msgstr "集ä¸ãƒ¢ãƒ¼ãƒ‰" +msgstr "集ä¸ãƒ¢ãƒ¼ãƒ‰ã‚’分離ã™ã‚‹" #: editor/editor_settings.cpp msgid "Automatically Open Screenshots" msgstr "自動的ã«ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ã‚·ãƒ§ãƒƒãƒˆã‚’é–‹ã" #: editor/editor_settings.cpp -#, fuzzy msgid "Max Array Dictionary Items Per Page" msgstr "ページã‚ãŸã‚Šã®æœ€å¤§é…åˆ—è¾žæ›¸é …ç›®æ•°" @@ -5347,7 +5334,6 @@ msgid "Contrast" msgstr "コントラスト" #: editor/editor_settings.cpp -#, fuzzy msgid "Relationship Line Opacity" msgstr "関係線ã®ä¸é€æ˜Žåº¦" @@ -5397,9 +5383,8 @@ msgid "Compress Binary Resources" msgstr "ãƒã‚¤ãƒŠãƒªãƒªã‚½ãƒ¼ã‚¹ã®åœ§ç¸®" #: editor/editor_settings.cpp -#, fuzzy msgid "Safe Save On Backup Then Rename" -msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—時ã«å®‰å…¨ã«ä¿å˜ã—ã¦ã‹ã‚‰åå‰ã‚’変更ã™ã‚‹" +msgstr "ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ã¨ã—ã¦åå‰ã‚’変更ã—ã¦ã‹ã‚‰å®‰å…¨ã«ä¿å˜ã™ã‚‹" #: editor/editor_settings.cpp msgid "File Dialog" @@ -5434,9 +5419,8 @@ msgid "Auto Refresh Interval" msgstr "自動リフレッシュã®é–“éš”" #: editor/editor_settings.cpp -#, fuzzy msgid "Subresource Hue Tint" -msgstr "サブリソース" +msgstr "サブリソースã®è‰²ç›¸ãƒ»è‰²åˆã„" #: editor/editor_settings.cpp msgid "Color Theme" @@ -5512,9 +5496,8 @@ msgid "Minimap Width" msgstr "ミニマップã®å¹…" #: editor/editor_settings.cpp -#, fuzzy msgid "Mouse Extra Buttons Navigate History" -msgstr "ãƒžã‚¦ã‚¹è¿½åŠ ãƒœã‚¿ãƒ³ãƒŠãƒ“ã‚²ãƒ¼ãƒˆå±¥æ´" +msgstr "マウスã®è¿½åŠ ボタンã§å±¥æ´ã‚’表示" #: editor/editor_settings.cpp msgid "Drag And Drop Selection" @@ -5537,19 +5520,16 @@ msgid "Line Numbers Zero Padded" msgstr "行番å·ã‚’ゼãƒåŸ‹ã‚" #: editor/editor_settings.cpp -#, fuzzy msgid "Show Bookmark Gutter" -msgstr "ブックマークガターを表示" +msgstr "ブックマークãƒãƒ¼ã‚’表示" #: editor/editor_settings.cpp -#, fuzzy msgid "Show Breakpoint Gutter" -msgstr "ブレークãƒã‚¤ãƒ³ãƒˆã‚’スã‚ップã™ã‚‹" +msgstr "ブレークãƒã‚¤ãƒ³ãƒˆãƒãƒ¼ã‚’表示" #: editor/editor_settings.cpp -#, fuzzy msgid "Show Info Gutter" -msgstr "æƒ…å ±ã‚¬ã‚¿ãƒ¼ã‚’è¡¨ç¤º" +msgstr "æƒ…å ±ãƒãƒ¼ã‚’表示" #: editor/editor_settings.cpp msgid "Code Folding" @@ -5564,23 +5544,20 @@ msgid "Show Line Length Guidelines" msgstr "è¡Œã®é•·ã•ã®ã‚¬ã‚¤ãƒ‰ç·šã‚’表示" #: editor/editor_settings.cpp -#, fuzzy msgid "Line Length Guideline Soft Column" -msgstr "行長ガイドラインソフト列" +msgstr "è¡Œã®é•·ã•ã®ã‚½ãƒ•ãƒˆã‚¬ã‚¤ãƒ‰ãƒ©ã‚¤ãƒ³" #: editor/editor_settings.cpp -#, fuzzy msgid "Line Length Guideline Hard Column" -msgstr "行長ガイドライン ãƒãƒ¼ãƒ‰åˆ—" +msgstr "è¡Œã®é•·ã•ã®ãƒãƒ¼ãƒ‰ã‚¬ã‚¤ãƒ‰ãƒ©ã‚¤ãƒ³" #: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp msgid "Script List" msgstr "スクリプト一覧" #: editor/editor_settings.cpp -#, fuzzy msgid "Show Members Overview" -msgstr "メンãƒãƒ¼æ¦‚è¦ã‚’表示" +msgstr "クラスメンãƒãƒ¼ã®æ¦‚è¦ã‚’表示" #: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp msgid "Files" @@ -5611,9 +5588,8 @@ msgid "Create Signal Callbacks" msgstr "シグナルã®ã‚³ãƒ¼ãƒ«ãƒãƒƒã‚¯ã‚’作æˆ" #: editor/editor_settings.cpp -#, fuzzy msgid "Sort Members Outline Alphabetically" -msgstr "メンãƒãƒ¼ã®ã‚¢ã‚¦ãƒˆãƒ©ã‚¤ãƒ³ã‚’ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆé †ã«ä¸¦ã¹æ›¿ãˆã‚‹" +msgstr "クラスメンãƒãƒ¼ã®æ¦‚è¦ã‚’ã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆé †ã«ä¸¦ã¹ã‚‹" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Cursor" @@ -5643,7 +5619,7 @@ msgstr "å³ã‚¯ãƒªãƒƒã‚¯ã§ã‚ャレットを移動" #: modules/gdscript/gdscript_editor.cpp #: scene/resources/default_theme/default_theme.cpp msgid "Completion" -msgstr "完了" +msgstr "自動補完" #: editor/editor_settings.cpp msgid "Idle Parse Delay" @@ -5670,9 +5646,8 @@ msgid "Complete File Paths" msgstr "ファイルパスã®è£œå®Œ" #: editor/editor_settings.cpp modules/gdscript/gdscript_editor.cpp -#, fuzzy msgid "Add Type Hints" -msgstr "ã‚¿ã‚¤ãƒ—ã‚’è¿½åŠ " +msgstr "åž‹ãƒ’ãƒ³ãƒˆã‚’è¿½åŠ " #: editor/editor_settings.cpp msgid "Use Single Quotes" @@ -5699,9 +5674,8 @@ msgid "Grid Map" msgstr "グリッドマップ" #: editor/editor_settings.cpp modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Pick Distance" -msgstr "è·é›¢ã‚’å–å¾—:" +msgstr "è·é›¢ã‚’é¸æŠž" #: editor/editor_settings.cpp editor/plugins/tile_map_editor_plugin.cpp msgid "Preview Size" @@ -5749,9 +5723,8 @@ msgid "Shape" msgstr "シェイプ" #: editor/editor_settings.cpp -#, fuzzy msgid "Primary Grid Steps" -msgstr "グリッドã®ã‚¹ãƒ†ãƒƒãƒ—:" +msgstr "プライマリグリッドã®ã‚¹ãƒ†ãƒƒãƒ—æ•°" #: editor/editor_settings.cpp msgid "Grid Size" @@ -6899,14 +6872,12 @@ msgid "Collada" msgstr "Collada" #: editor/import/editor_import_collada.cpp -#, fuzzy msgid "Use Ambient" msgstr "アンビエントを使用" #: editor/import/resource_importer_bitmask.cpp -#, fuzzy msgid "Create From" -msgstr "フォルダーを作æˆ" +msgstr "作æˆå…ƒ" #: editor/import/resource_importer_bitmask.cpp #: servers/audio/effects/audio_effect_compressor.cpp @@ -6927,7 +6898,7 @@ msgstr "区切り文å—" #: editor/import/resource_importer_layered_texture.cpp msgid "ColorCorrect" -msgstr "ColorCorrect" +msgstr "カラーコレクト" #: editor/import/resource_importer_layered_texture.cpp msgid "No BPTC If RGB" @@ -6960,7 +6931,6 @@ msgstr "ミップマップ" #: editor/import/resource_importer_layered_texture.cpp #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "Anisotropic" msgstr "異方性" @@ -6992,9 +6962,8 @@ msgid "Generate Tangents" msgstr "接線を生æˆ" #: editor/import/resource_importer_obj.cpp -#, fuzzy msgid "Scale Mesh" -msgstr "スケールモード" +msgstr "スケールメッシュ" #: editor/import/resource_importer_obj.cpp msgid "Offset Mesh" @@ -7002,14 +6971,12 @@ msgstr "メッシュã®ã‚ªãƒ•ã‚»ãƒƒãƒˆ" #: editor/import/resource_importer_obj.cpp #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Octahedral Compression" -msgstr "圧縮" +msgstr "å…«é¢ä½“圧縮" #: editor/import/resource_importer_obj.cpp -#, fuzzy msgid "Optimize Mesh Flags" -msgstr "サイズ: " +msgstr "メッシュ最é©åŒ–フラグ" #: editor/import/resource_importer_scene.cpp msgid "Import as Single Scene" @@ -7069,9 +7036,8 @@ msgid "Root Scale" msgstr "ルートã®ã‚¹ã‚±ãƒ¼ãƒ«" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Custom Script" -msgstr "ノードを切りå–ã‚‹" +msgstr "カスタムスクリプト" #: editor/import/resource_importer_scene.cpp scene/resources/texture.cpp msgid "Storage" @@ -7086,28 +7052,24 @@ msgid "Materials" msgstr "マテリアル" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Keep On Reimport" -msgstr "å†ã‚¤ãƒ³ãƒãƒ¼ãƒˆ" +msgstr "å†ã‚¤ãƒ³ãƒãƒ¼ãƒˆæ™‚ã«ä¿æŒ(Keep On Reimport)" #: editor/import/resource_importer_scene.cpp modules/gltf/gltf_state.cpp msgid "Meshes" msgstr "メッシュ" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Ensure Tangents" -msgstr "接線を計算" +msgstr "接線ã®ç¢ºä¿" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Light Baking" -msgstr "ライトマップ" +msgstr "ライトベーã‚ング(Light Baking)" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Lightmap Texel Size" -msgstr "ライトマップを焼ã込む" +msgstr "ライトマップã®ãƒ†ã‚¯ã‚»ãƒ«ã‚µã‚¤ã‚º" #: editor/import/resource_importer_scene.cpp modules/gltf/gltf_state.cpp msgid "Skins" @@ -7130,14 +7092,12 @@ msgid "Filter Script" msgstr "スクリプトを絞り込む" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Keep Custom Tracks" -msgstr "トランスフォーム" +msgstr "カスタムトラックをä¿æŒ" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Optimizer" -msgstr "最é©åŒ–" +msgstr "オプティマイザー(Optimizer)" #: editor/import/resource_importer_scene.cpp #: editor/plugins/item_list_editor_plugin.cpp main/main.cpp @@ -7155,19 +7115,16 @@ msgid "Enabled" msgstr "有効" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Max Linear Error" -msgstr "最大。線形エラー:" +msgstr "最大リニアエラー" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Max Angular Error" -msgstr "最大。角度エラー:" +msgstr "最大角度エラー" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Max Angle" -msgstr "値" +msgstr "最大角度" #: editor/import/resource_importer_scene.cpp msgid "Remove Unused Tracks" @@ -7197,9 +7154,8 @@ msgid "Generating Lightmaps" msgstr "ライトマップã®ç”Ÿæˆ" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Generating for Mesh:" -msgstr "メッシュã®ç”Ÿæˆ: " +msgstr "メッシュã®ç”Ÿæˆ:" #: editor/import/resource_importer_scene.cpp msgid "Running Custom Script..." @@ -7227,38 +7183,33 @@ msgid "Saving..." msgstr "ä¿å˜ä¸..." #: editor/import/resource_importer_texture.cpp -#, fuzzy 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: 3Dã§æ³•ç·šãƒžãƒƒãƒ—ã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã¦ã„るテクスãƒãƒ£ãŒæ¤œå‡ºã•ã‚Œã¾ã—ãŸã€‚赤緑テクス" -"ãƒãƒ£åœ§ç¸®ã‚’有効ã«ã—ã¦ãƒ¡ãƒ¢ãƒªä½¿ç”¨é‡ã‚’削減ã—ã¾ã™ï¼ˆé’ãƒãƒ£ãƒ³ãƒãƒ«ã¯ã™ã§ã«ç ´æ£„ã•ã‚Œã¾" -"ã—ãŸï¼‰ã€‚" +"%s: 3Dã§æ³•ç·šãƒžãƒƒãƒ—ã¨ã—ã¦ä½¿ç”¨ã•ã‚Œã¦ã„るテクスãƒãƒ£ãŒæ¤œå‡ºã•ã‚Œã¾ã—ãŸã€‚赤ã¨ç·‘ã®ãƒ†" +"クスãƒãƒ£åœ§ç¸®ã‚’有効ã«ã—ã¦ãƒ¡ãƒ¢ãƒªä½¿ç”¨é‡ã‚’削減ã—ã¾ã™ï¼ˆé’ãƒãƒ£ãƒ³ãƒãƒ«ã¯ç ´æ£„ã•ã‚Œã¾" +"ã™ï¼‰ã€‚" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "" "%s: Texture detected as used in 3D. Enabling filter, repeat, mipmap " "generation and VRAM texture compression." msgstr "" -"%s: 3Dã§ä½¿ç”¨ã•ã‚Œã¦ã„るテクスãƒãƒ£ãŒæ¤œå‡ºã•ã‚Œã¾ã—ãŸã€‚フィルターã€ç¹°ã‚Šè¿”ã—ã€ãƒŸãƒƒ" -"プマップ生æˆã€VRAMテクスãƒãƒ£åœ§ç¸®ã‚’有効ã«ã—ã¾ã™ã€‚" +"%s: 3Dã§ä½¿ç”¨ã•ã‚Œã‚‹ãƒ†ã‚¯ã‚¹ãƒãƒ£ãŒæ¤œå‡ºã•ã‚Œã¾ã—ãŸã€‚フィルターã€ç¹°ã‚Šè¿”ã—ã€ãƒŸãƒƒãƒ—" +"マップ生æˆã€VRAMテクスãƒãƒ£åœ§ç¸®ã‚’有効ã«ã—ã¾ã™ã€‚" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "2D, Detect 3D" msgstr "2Dã€3D検出" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "2D Pixel" msgstr "2Dピクセル" #: editor/import/resource_importer_texture.cpp scene/resources/texture.cpp -#, fuzzy msgid "Lossy Quality" -msgstr "æ失ã®ã‚ã‚‹å“質" +msgstr "éžå¯é€†å“質" #: editor/import/resource_importer_texture.cpp msgid "HDR Mode" @@ -7276,12 +7227,10 @@ msgid "Normal Map" msgstr "法線マップ" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "Process" -msgstr "å‰å‡¦ç†" +msgstr "プãƒã‚»ã‚¹" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "Fix Alpha Border" msgstr "アルファボーダーを修æ£" @@ -7296,21 +7245,18 @@ msgid "Hdr As Srgb" msgstr "Srgbã¨ã—ã¦Hdr" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "Invert Color" -msgstr "é ‚ç‚¹" +msgstr "色ã®å転" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "Normal Map Invert Y" -msgstr "ランダムãªç¸®å°º:" +msgstr "法線マップã®Yã‚’å転" #: editor/import/resource_importer_texture.cpp msgid "Size Limit" msgstr "サイズ制é™" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "Detect 3D" msgstr "3Dを検出" @@ -7335,19 +7281,16 @@ msgid "Import Mode" msgstr "インãƒãƒ¼ãƒˆãƒ¢ãƒ¼ãƒ‰" #: editor/import/resource_importer_texture_atlas.cpp -#, fuzzy msgid "Crop To Region" -msgstr "ã‚¿ã‚¤ãƒ«é ˜åŸŸã‚’è¨å®š" +msgstr "é ˜åŸŸã«ã‚ã‚ã›ã¦ãƒˆãƒªãƒŸãƒ³ã‚°" #: editor/import/resource_importer_texture_atlas.cpp -#, fuzzy msgid "Trim Alpha Border From Region" -msgstr "ã‚¢ãƒ«ãƒ•ã‚¡å¢ƒç•Œç·šã‚’é ˜åŸŸã‹ã‚‰ãƒˆãƒªãƒŸãƒ³ã‚°" +msgstr "é ˜åŸŸã‹ã‚‰ã‚¢ãƒ«ãƒ•ã‚¡ãƒœãƒ¼ãƒ€ãƒ¼ã‚’トリミング" #: editor/import/resource_importer_wav.cpp scene/2d/physics_body_2d.cpp -#, fuzzy msgid "Force" -msgstr "強制プッシュ" +msgstr "強制" #: editor/import/resource_importer_wav.cpp msgid "8 Bit" @@ -7360,14 +7303,12 @@ msgid "Mono" msgstr "Mono" #: editor/import/resource_importer_wav.cpp -#, fuzzy msgid "Max Rate" -msgstr "ミックス ノード" +msgstr "最大レート" #: editor/import/resource_importer_wav.cpp -#, fuzzy msgid "Max Rate Hz" -msgstr "ミックス ノード" +msgstr "最大レート(Hz)" #: editor/import/resource_importer_wav.cpp msgid "Trim" @@ -12888,9 +12829,8 @@ msgid "This property can't be changed." msgstr "ã“ã®ãƒ—ãƒãƒ‘ティã¯å¤‰æ›´ã§ãã¾ã›ã‚“。" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Snap Options" -msgstr "スナッピングオプション" +msgstr "スナップオプション" #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/animated_sprite.cpp #: scene/2d/camera_2d.cpp scene/2d/cpu_particles_2d.cpp scene/2d/light_2d.cpp @@ -12898,9 +12838,10 @@ msgstr "スナッピングオプション" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "オフセット" @@ -12913,14 +12854,12 @@ msgstr "ステップ" #: editor/plugins/tile_set_editor_plugin.cpp #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Separation" -msgstr "分離:" +msgstr "分離" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Tile" -msgstr "é¸æŠž" +msgstr "タイルã®é¸æŠž" #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/cpu_particles_2d.cpp #: scene/2d/light_2d.cpp scene/2d/line_2d.cpp scene/2d/mesh_instance_2d.cpp @@ -12933,9 +12872,8 @@ msgid "Texture" msgstr "テクスãƒãƒ£" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Tex Offset" -msgstr "ãƒã‚¤ãƒˆã®ã‚ªãƒ•ã‚»ãƒƒãƒˆ" +msgstr "テクスãƒãƒ£ã®ã‚ªãƒ•ã‚»ãƒƒãƒˆ" #: editor/plugins/tile_set_editor_plugin.cpp modules/csg/csg_shape.cpp #: scene/2d/canvas_item.cpp scene/2d/particles_2d.cpp @@ -12945,18 +12883,16 @@ msgstr "マテリアル" #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/canvas_item.cpp #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp scene/resources/style_box.cpp -#, fuzzy msgid "Modulate" -msgstr "データã®æŠ•å…¥" +msgstr "変調" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Tile Mode" msgstr "タイルモード" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Autotile Bitmask Mode" -msgstr "ビットマスクモード" +msgstr "オートタイル ビットマスクモード" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Subtile Size" @@ -12975,44 +12911,36 @@ msgid "Navigation Offset" msgstr "ナビゲーションã®ã‚ªãƒ•ã‚»ãƒƒãƒˆ" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Shape Offset" -msgstr "オフセット:" +msgstr "シェイプオフセット" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Shape Transform" -msgstr "トランスフォーム" +msgstr "シェイプトランスフォーム" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Collision" -msgstr "コリジョンを使用" +msgstr "コリジョンをé¸æŠž" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Collision One Way" -msgstr "é¸æŠžç¯„囲ã®ã¿" +msgstr "片方å‘ã®ã‚³ãƒªã‚¸ãƒ§ãƒ³ã‚’é¸æŠž" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Collision One Way Margin" -msgstr "BVHコリジョンマージン" +msgstr "片方å‘ã®ã‚³ãƒªã‚¸ãƒ§ãƒ³ã®ãƒžãƒ¼ã‚¸ãƒ³" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Navigation" -msgstr "ナビゲーションを表示" +msgstr "ナビゲーションをé¸æŠž" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Occlusion" -msgstr "é¸æŠž" +msgstr "オクルージョンã®é¸æŠž" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Tileset Script" -msgstr "スクリプトを絞り込む" +msgstr "タイルセットスクリプト" #: editor/plugins/tile_set_editor_plugin.cpp msgid "TileSet" @@ -14094,6 +14022,8 @@ msgstr "定義ã•ã‚ŒãŸã™ã¹ã¦ã®ãƒ—リセットã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã‚’エク #: editor/project_export.cpp msgid "All presets must have an export path defined for Export All to work." msgstr "" +"å…¨ã¦ã®ãƒ—リセットã¯ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆãŒå…¨ã¦æ©Ÿèƒ½ã™ã‚‹ãŸã‚ã«ã€ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆãƒ‘スを定義ã™" +"ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚" #: editor/project_export.cpp msgid "Delete preset '%s'?" @@ -14312,16 +14242,17 @@ msgid "Invalid project path (changed anything?)." msgstr "無効ãªãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆãƒ‘スã§ã™ (ãªã«ã‹å¤‰æ›´ãŒã‚ã‚Šã¾ã—ãŸã‹ï¼Ÿ)。" #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "プãƒã‚¸ã‚§ã‚¯ãƒˆãƒ‘ス㮠project.godot ã‚’èªã¿è¾¼ã‚ã¾ã›ã‚“ã§ã—ãŸã€‚ (エラー %d)。見ã¤ã‹" "らãªã„ã‹ç ´æã—ã¦ã„ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ã€‚" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "プãƒã‚¸ã‚§ã‚¯ãƒˆãƒ‘ス㮠project.godot を編集ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚" +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "次ã®å ´æ‰€ã®ãƒ—ãƒã‚¸ã‚§ã‚¯ãƒˆã‚’é–‹ã‘ã¾ã›ã‚“ '%s'。" #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -15353,19 +15284,16 @@ msgid "Make Local" msgstr "ãƒãƒ¼ã‚«ãƒ«ã«ã™ã‚‹" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Enable Scene Unique Name(s)" -msgstr "ノードå:" +msgstr "シーン固有åを有効ã«ã™ã‚‹" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Unique names already used by another node in the scene:" -msgstr "ä»–ã®é–¢æ•°/変数/シグナルã«ã‚ˆã‚Šã™ã§ã«ä½¿ã‚ã‚Œã¦ã„ã‚‹åå‰:" +msgstr "固有åãŒã‚·ãƒ¼ãƒ³å†…ã®ä»–ã®ãƒŽãƒ¼ãƒ‰ã«æ—¢ã«ä½¿ã‚ã‚Œã¦ã„ã¾ã™:" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Disable Scene Unique Name(s)" -msgstr "ノードå:" +msgstr "シーン固有åを無効ã«ã™ã‚‹" #: editor/scene_tree_dock.cpp msgid "New Scene Root" @@ -15441,7 +15369,7 @@ msgstr "サブリソース" #: editor/scene_tree_dock.cpp msgid "Access as Scene Unique Name" -msgstr "" +msgstr "シーン固有åã§ã‚¢ã‚¯ã‚»ã‚¹" #: editor/scene_tree_dock.cpp msgid "Clear Inheritance" @@ -15541,18 +15469,16 @@ msgid "Clear Inheritance? (No Undo!)" msgstr "継承をクリアã—ã¾ã™ã‹ï¼Ÿ (å…ƒã«æˆ»ã›ã¾ã›ã‚“ï¼)" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Show Scene Tree Root Selection" -msgstr "é¸æŠžå¯¾è±¡ã‚’ä¸å¤®ã«" +msgstr "シーンツリーã®ãƒ«ãƒ¼ãƒˆé¸æŠžå¯¾è±¡ã‚’表示" #: editor/scene_tree_dock.cpp msgid "Derive Script Globals By Name" -msgstr "" +msgstr "åå‰ã«ã‚ˆã‚‹ã‚¹ã‚¯ãƒªãƒ—トグãƒãƒ¼ãƒãƒ«ã®å°Žå‡º" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Use Favorites Root Selection" -msgstr "é¸æŠžå¯¾è±¡ã‚’å…¨é¢ã«" +msgstr "ãŠæ°—ã«å…¥ã‚Šã®ãƒ«ãƒ¼ãƒˆé¸æŠžå¯¾è±¡ã‚’使用" #: editor/scene_tree_editor.cpp msgid "Toggle Visible" @@ -15567,9 +15493,8 @@ msgid "Button Group" msgstr "ボタングループ" #: editor/scene_tree_editor.cpp -#, fuzzy msgid "Disable Scene Unique Name" -msgstr "ノードå:" +msgstr "シーン固有åを無効ã«ã™ã‚‹" #: editor/scene_tree_editor.cpp msgid "(Connecting From)" @@ -15592,7 +15517,7 @@ msgid "" "Click to show signals dock." msgstr "" "ノードã«ã¯ %s 接続㨠%s グループãŒã‚ã‚Šã¾ã™ã€‚\n" -"クリックã™ã‚‹ã¨ã€ä¿¡å·ãƒ‰ãƒƒã‚¯ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚" +"クリックã™ã‚‹ã¨ã€ã‚·ã‚°ãƒŠãƒ«ãƒ‰ãƒƒã‚¯ãŒè¡¨ç¤ºã•ã‚Œã¾ã™ã€‚" #: editor/scene_tree_editor.cpp msgid "" @@ -16422,7 +16347,7 @@ msgstr "ボーンを表示ã™ã‚‹" #: main/main.cpp msgid "Image" -msgstr "" +msgstr "ç”»åƒ" #: main/main.cpp msgid "Fullsize" @@ -16446,7 +16371,7 @@ msgstr "Windowsã®ãƒã‚¤ãƒ†ã‚£ãƒ–アイコン" #: main/main.cpp msgid "Buffering" -msgstr "" +msgstr "ãƒãƒƒãƒ•ã‚¡ãƒªãƒ³ã‚°" #: main/main.cpp msgid "Agile Event Flushing" @@ -16618,7 +16543,7 @@ msgstr "ガイドを表示" #: modules/csg/csg_shape.cpp msgid "Cone" -msgstr "" +msgstr "円éŒ" #: modules/csg/csg_shape.cpp #, fuzzy @@ -16922,14 +16847,12 @@ msgid "Byte Offset" msgstr "ãƒã‚¤ãƒˆã®ã‚ªãƒ•ã‚»ãƒƒãƒˆ" #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Component Type" -msgstr "コンãƒãƒ¼ãƒãƒ³ãƒˆ" +msgstr "コンãƒãƒ¼ãƒãƒ³ãƒˆã®åž‹" #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Normalized" -msgstr "フォーマット" +msgstr "æ£è¦åŒ–" #: modules/gltf/gltf_accessor.cpp #, fuzzy @@ -16937,19 +16860,16 @@ msgid "Count" msgstr "ç·è¨ˆ:" #: modules/gltf/gltf_accessor.cpp scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Min" -msgstr "MiB" +msgstr "最å°" #: modules/gltf/gltf_accessor.cpp scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Max" -msgstr "ミックス" +msgstr "最大" #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Sparse Count" -msgstr "インスタンス" +msgstr "スパースカウント" #: modules/gltf/gltf_accessor.cpp msgid "Sparse Indices Buffer View" @@ -17016,12 +16936,11 @@ msgstr "色" #: modules/gltf/gltf_light.cpp scene/3d/reflection_probe.cpp #: scene/resources/environment.cpp msgid "Intensity" -msgstr "" +msgstr "強度" #: modules/gltf/gltf_light.cpp scene/2d/light_2d.cpp scene/3d/light.cpp -#, fuzzy msgid "Range" -msgstr "変更" +msgstr "範囲" #: modules/gltf/gltf_light.cpp msgid "Inner Cone Angle" @@ -17032,14 +16951,12 @@ msgid "Outer Cone Angle" msgstr "" #: modules/gltf/gltf_mesh.cpp -#, fuzzy msgid "Blend Weights" -msgstr "ライトマップを焼ã込む" +msgstr "ブレンドウエイト" #: modules/gltf/gltf_mesh.cpp -#, fuzzy msgid "Instance Materials" -msgstr "マテリアルã®å¤‰æ›´:" +msgstr "マテリアルインスタンス" #: modules/gltf/gltf_node.cpp scene/3d/skeleton.cpp msgid "Parent" @@ -17074,7 +16991,7 @@ msgstr "" #: modules/gltf/gltf_skeleton.cpp modules/gltf/gltf_state.cpp msgid "Unique Names" -msgstr "" +msgstr "固有å" #: modules/gltf/gltf_skeleton.cpp #, fuzzy @@ -17177,7 +17094,7 @@ msgstr "テクスãƒãƒ£" #: modules/gltf/gltf_state.cpp platform/uwp/export/export.cpp msgid "Images" -msgstr "" +msgstr "ç”»åƒ" #: modules/gltf/gltf_state.cpp msgid "Cameras" @@ -17188,9 +17105,8 @@ msgid "Lights" msgstr "ライト" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Unique Animation Names" -msgstr "æ–°è¦ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³å:" +msgstr "固有アニメーションå" #: modules/gltf/gltf_state.cpp msgid "Skeletons" @@ -17225,7 +17141,7 @@ msgstr "ライトマップを焼ã込む" #: modules/gridmap/grid_map.cpp scene/2d/tile_map.cpp msgid "Cell" -msgstr "" +msgstr "セル" #: modules/gridmap/grid_map.cpp #, fuzzy @@ -17582,13 +17498,12 @@ msgid "Seamless" msgstr "シームレス" #: modules/opensimplex/noise_texture.cpp -#, fuzzy msgid "As Normal Map" -msgstr "ランダムãªç¸®å°º:" +msgstr "法線マップã¨ã—ã¦" #: modules/opensimplex/noise_texture.cpp msgid "Bump Strength" -msgstr "" +msgstr "ãƒãƒ³ãƒ—強度" #: modules/opensimplex/noise_texture.cpp msgid "Noise" @@ -17607,9 +17522,8 @@ msgid "Period" msgstr "周期" #: modules/opensimplex/open_simplex_noise.cpp -#, fuzzy msgid "Persistence" -msgstr "é€è¦–投影" +msgstr "パーシステンス" #: modules/opensimplex/open_simplex_noise.cpp #, fuzzy @@ -17622,7 +17536,6 @@ msgid "Subject" msgstr "対象" #: modules/regex/regex.cpp -#, fuzzy msgid "Names" msgstr "åå‰" @@ -18048,14 +17961,12 @@ msgid "Return" msgstr "Return(戻り値)" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Return Enabled" -msgstr "実行å¯èƒ½" +msgstr "戻り値ãŒæœ‰åŠ¹" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Return Type" -msgstr "Return(戻り値)" +msgstr "戻り値ã®åž‹" #: modules/visual_script/visual_script_flow_control.cpp #: scene/resources/visual_shader_nodes.cpp @@ -18067,9 +17978,8 @@ msgid "if (cond) is:" msgstr "" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "While" -msgstr "一方" +msgstr "〜ã®é–“(While)" #: modules/visual_script/visual_script_flow_control.cpp msgid "while (cond):" @@ -18084,18 +17994,16 @@ msgid "for (elem) in (input):" msgstr "" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Input type not iterable:" -msgstr "入力タイプã¯å復å¯èƒ½ã§ã¯ã‚ã‚Šã¾ã›ã‚“: " +msgstr "入力タイプã¯å復å¯èƒ½ã§ã¯ã‚ã‚Šã¾ã›ã‚“:" #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator became invalid" msgstr "イテレーターãŒç„¡åŠ¹ã«ãªã‚Šã¾ã—ãŸ" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Iterator became invalid:" -msgstr "イテレーターãŒç„¡åŠ¹ã«ãªã‚Šã¾ã—ãŸ: " +msgstr "イテレーターãŒç„¡åŠ¹ã«ãªã‚Šã¾ã—ãŸ:" #: modules/visual_script/visual_script_flow_control.cpp msgid "Sequence" @@ -18192,11 +18100,11 @@ msgstr "" #: modules/visual_script/visual_script_func_nodes.cpp msgid "ShiftLeft %s" -msgstr "" +msgstr "左シフト%s" #: modules/visual_script/visual_script_func_nodes.cpp msgid "ShiftRight %s" -msgstr "" +msgstr "å³ã‚·ãƒ•ãƒˆ%s" #: modules/visual_script/visual_script_func_nodes.cpp msgid "BitAnd %s" @@ -18255,9 +18163,8 @@ msgstr "é…列ã®ã‚µã‚¤ã‚ºã‚’変更" #: modules/visual_script/visual_script_nodes.cpp scene/resources/material.cpp #: scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Operator" -msgstr "イテレータ" +msgstr "演算å" #: modules/visual_script/visual_script_nodes.cpp msgid "Invalid argument of type:" @@ -18336,9 +18243,8 @@ msgid "Get Self" msgstr "自己" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "CustomNode" -msgstr "ノードを切りå–ã‚‹" +msgstr "カスタムノード" #: modules/visual_script/visual_script_nodes.cpp msgid "Custom node has no _step() method, can't process graph." @@ -18661,7 +18567,7 @@ msgstr "パッケージ" #: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp msgid "Unique Name" -msgstr "ユニークå" +msgstr "固有å" #: platform/android/export/export_plugin.cpp msgid "Signed" @@ -19020,7 +18926,6 @@ msgstr "" "æƒ…å ±ãŒå˜åœ¨ã—ã¾ã›ã‚“。 「プãƒã‚¸ã‚§ã‚¯ãƒˆã€ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‹ã‚‰å†ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã—ã¦ãã ã•ã„。" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Android build version mismatch: Template installed: %s, Godot version: %s. " "Please reinstall Android build template from 'Project' menu." @@ -20964,19 +20869,17 @@ msgstr "æ–¹å‘" #: scene/resources/particles_material.cpp #: servers/audio/effects/audio_effect_reverb.cpp msgid "Spread" -msgstr "" +msgstr "広ãŒã‚Š" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Initial Velocity" -msgstr "åˆæœŸåŒ–" +msgstr "åˆæœŸé€Ÿåº¦" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Velocity Random" -msgstr "オービットビュー å³" +msgstr "速度ランダム化" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp servers/physics_2d_server.cpp @@ -20986,15 +20889,13 @@ msgstr "" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Velocity Curve" -msgstr "オービットビュー å³" +msgstr "速度曲線" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Orbit Velocity" -msgstr "オービットビュー å³" +msgstr "オービット速度" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21004,25 +20905,23 @@ msgstr "リニア" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Accel" -msgstr "アクセス" +msgstr "åŠ é€Ÿåº¦" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Accel Random" -msgstr "" +msgstr "åŠ é€Ÿåº¦ãƒ©ãƒ³ãƒ€ãƒ åŒ–" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Accel Curve" -msgstr "曲線を分割ã™ã‚‹" +msgstr "åŠ é€Ÿåº¦æ›²ç·š" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Radial Accel" -msgstr "" +msgstr "角化速度" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21051,7 +20950,7 @@ msgstr "曲線を分割ã™ã‚‹" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp scene/3d/light.cpp #: scene/resources/particles_material.cpp msgid "Angle" -msgstr "" +msgstr "角度" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21121,21 +21020,18 @@ msgstr "スケール" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Speed Curve" -msgstr "曲線を分割ã™ã‚‹" +msgstr "速度曲線" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Offset Random" -msgstr "オフセット:" +msgstr "オフセットランダム化" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Offset Curve" -msgstr "曲線を閉ã˜ã‚‹" +msgstr "オフセット曲線" #: scene/2d/joints_2d.cpp msgid "Node A and Node B must be PhysicsBody2Ds" @@ -21333,7 +21229,7 @@ msgstr "" #: scene/2d/line_2d.cpp msgid "Round Precision" -msgstr "" +msgstr "丸ã‚精度" #: scene/2d/line_2d.cpp scene/2d/polygon_2d.cpp #: scene/resources/dynamic_font.cpp @@ -21349,7 +21245,7 @@ msgstr "" #: scene/3d/navigation.cpp scene/animation/root_motion_view.cpp #: scene/resources/world_2d.cpp servers/physics_2d/physics_2d_server_sw.cpp msgid "Cell Size" -msgstr "" +msgstr "セルサイズ" #: scene/2d/navigation_2d.cpp scene/3d/navigation.cpp #, fuzzy @@ -22023,7 +21919,7 @@ msgstr "ARVRCameraã¯ARVROriginノードを親ã«æŒã¤å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚" #: scene/3d/arvr_nodes.cpp msgid "Controller ID" -msgstr "" +msgstr "コントãƒãƒ¼ãƒ©ãƒ¼ID" #: scene/3d/arvr_nodes.cpp servers/arvr/arvr_positional_tracker.cpp msgid "Rumble" @@ -22081,7 +21977,7 @@ msgstr "" #: scene/3d/audio_stream_player_3d.cpp msgid "Max dB" -msgstr "" +msgstr "最大dB" #: scene/3d/audio_stream_player_3d.cpp msgid "Out Of Range Mode" @@ -22807,15 +22703,15 @@ msgstr "リニア" #: scene/3d/physics_body.cpp msgid "Angular X" -msgstr "" +msgstr "角度X" #: scene/3d/physics_body.cpp msgid "Angular Y" -msgstr "" +msgstr "角度Y" #: scene/3d/physics_body.cpp msgid "Angular Z" -msgstr "" +msgstr "角度Z" #: scene/3d/physics_body.cpp #, fuzzy @@ -23026,7 +22922,7 @@ msgstr "Node A 㨠Node B ã¯ç•°ãªã‚‹ PhysicsBody ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚ #: scene/3d/physics_joint.cpp msgid "Solver" -msgstr "" +msgstr "ソルãƒãƒ¼" #: scene/3d/physics_joint.cpp #, fuzzy @@ -23553,11 +23449,11 @@ msgstr "" #: scene/3d/soft_body.cpp msgid "Pressure Coefficient" -msgstr "" +msgstr "圧力係数" #: scene/3d/soft_body.cpp msgid "Damping Coefficient" -msgstr "" +msgstr "減衰係数" #: scene/3d/soft_body.cpp msgid "Drag Coefficient" @@ -23604,7 +23500,7 @@ msgstr "" #: scene/3d/sprite_3d.cpp scene/gui/graph_edit.cpp msgid "Opacity" -msgstr "" +msgstr "ä¸é€æ˜Žåº¦" #: scene/3d/sprite_3d.cpp scene/resources/material.cpp #, fuzzy @@ -23685,6 +23581,16 @@ msgstr "エラー" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "ソート" + +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Use AABB Center" +msgstr "アンビエントを使用" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" @@ -24265,7 +24171,7 @@ msgstr "テーマ プãƒãƒ‘ティ" #: scene/gui/dialogs.cpp msgid "Window Title" -msgstr "" +msgstr "ウィンドウタイトル" #: scene/gui/dialogs.cpp #, fuzzy @@ -24355,7 +24261,7 @@ msgstr "コミット" #: scene/gui/graph_node.cpp msgid "Overlay" -msgstr "" +msgstr "オーãƒãƒ¼ãƒ¬ã‚¤" #: scene/gui/grid_container.cpp scene/gui/item_list.cpp scene/gui/tree.cpp #, fuzzy @@ -24438,7 +24344,7 @@ msgstr "" #: scene/gui/line_edit.cpp scene/resources/navigation_mesh.cpp msgid "Max Length" -msgstr "" +msgstr "最大長" #: scene/gui/line_edit.cpp msgid "Secret" @@ -24825,7 +24731,7 @@ msgstr "" #: scene/gui/text_edit.cpp msgid "Readonly" -msgstr "" +msgstr "èªã¿å–り専用" #: scene/gui/text_edit.cpp #, fuzzy @@ -25344,14 +25250,12 @@ msgid "Clear Mode" msgstr "定è¦ãƒ¢ãƒ¼ãƒ‰" #: scene/main/viewport.cpp -#, fuzzy msgid "Enable 2D" -msgstr "有効" +msgstr "2D有効化" #: scene/main/viewport.cpp -#, fuzzy msgid "Enable 3D" -msgstr "有効" +msgstr "3D有効化" #: scene/main/viewport.cpp #, fuzzy @@ -25359,9 +25263,8 @@ msgid "Object Picking" msgstr "オニオンスã‚ンを有効ã«ã™ã‚‹" #: scene/main/viewport.cpp -#, fuzzy msgid "Disable Input" -msgstr "アイテムを無効ã«ã™ã‚‹" +msgstr "入力無効化" #: scene/main/viewport.cpp servers/visual_server.cpp msgid "Shadow Atlas" @@ -26310,11 +26213,11 @@ msgstr "データ付" #: scene/resources/environment.cpp msgid "Background" -msgstr "" +msgstr "背景" #: scene/resources/environment.cpp scene/resources/sky.cpp msgid "Sky" -msgstr "" +msgstr "空" #: scene/resources/environment.cpp #, fuzzy @@ -26322,19 +26225,16 @@ msgid "Sky Custom FOV" msgstr "ノードを切りå–ã‚‹" #: scene/resources/environment.cpp -#, fuzzy msgid "Sky Orientation" -msgstr "オンラインドã‚ュメント" +msgstr "空ã®æ–¹å‘" #: scene/resources/environment.cpp -#, fuzzy msgid "Sky Rotation" -msgstr "回転ã®ã‚¹ãƒ†ãƒƒãƒ—:" +msgstr "空ã®å›žè»¢" #: scene/resources/environment.cpp -#, fuzzy msgid "Sky Rotation Degrees" -msgstr "%s 度回転。" +msgstr "空ã®å›žè»¢è§’度" #: scene/resources/environment.cpp msgid "Canvas Max Layer" @@ -26497,7 +26397,7 @@ msgstr "UVãƒãƒ£ãƒ³ãƒãƒ« デãƒãƒƒã‚°" #: scene/resources/environment.cpp msgid "Blur" -msgstr "" +msgstr "ブラー" #: scene/resources/environment.cpp msgid "Edge Sharpness" @@ -26564,7 +26464,7 @@ msgstr "" #: scene/resources/environment.cpp msgid "Bloom" -msgstr "" +msgstr "ブルーム" #: scene/resources/environment.cpp msgid "HDR Threshold" @@ -26789,7 +26689,7 @@ msgstr "" #: scene/resources/material.cpp msgid "NormalMap" -msgstr "" +msgstr "法線マップ" #: scene/resources/material.cpp msgid "Rim" @@ -28128,17 +28028,15 @@ msgstr "" #: servers/visual_server.cpp msgid "Disable Half Float" -msgstr "" +msgstr "åŠç²¾åº¦å°æ•°ã‚’無効化" #: servers/visual_server.cpp -#, fuzzy msgid "Enable High Float" -msgstr "å„ªå…ˆé †ä½ã‚’有効化" +msgstr "高精度å°æ•°ã‚’有効化" #: servers/visual_server.cpp -#, fuzzy msgid "Precision" -msgstr "ãƒãƒ¼ã‚¸ãƒ§ãƒ³" +msgstr "精度" #: servers/visual_server.cpp msgid "UV Contract" diff --git a/editor/translations/ka.po b/editor/translations/ka.po index f085051bf7..629afaa429 100644 --- a/editor/translations/ka.po +++ b/editor/translations/ka.po @@ -12951,9 +12951,10 @@ msgstr "მáƒáƒœáƒ˜áƒ¨áƒœáƒ£áƒšáƒ˜ მხáƒáƒšáƒáƒ“" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14349,12 +14350,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -23337,6 +23337,15 @@ msgstr "სáƒáƒ კე" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "გáƒáƒ“áƒáƒ¡áƒ•áƒšáƒ”ბი" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/km.po b/editor/translations/km.po index 3d39686d68..ade147ec7e 100644 --- a/editor/translations/km.po +++ b/editor/translations/km.po @@ -12389,9 +12389,10 @@ msgstr "Anim ផ្លាស់ប្ážáž¼ážš Transform" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13726,12 +13727,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22256,6 +22256,14 @@ msgstr "កញ្ចក់" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +msgid "Sorting" +msgstr "" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/ko.po b/editor/translations/ko.po index e1940d698c..f43830b1e9 100644 --- a/editor/translations/ko.po +++ b/editor/translations/ko.po @@ -39,13 +39,15 @@ # 박민규 <80dots@gmail.com>, 2022. # ì´ì§€ë¯¼ <jiminaleejung@gmail.com>, 2022. # nulltable <un5450@naver.com>, 2022. +# Godoto <aicompose@gmail.com>, 2022. +# gaenyang <gaenyang@outlook.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-23 04:16+0000\n" -"Last-Translator: nulltable <un5450@naver.com>\n" +"PO-Revision-Date: 2022-10-24 12:41+0000\n" +"Last-Translator: Godoto <aicompose@gmail.com>\n" "Language-Team: Korean <https://hosted.weblate.org/projects/godot-engine/" "godot/ko/>\n" "Language: ko\n" @@ -53,7 +55,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.14.1\n" +"X-Generator: Weblate 4.14.2-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -270,7 +272,7 @@ msgstr "ì²í¬ í¬ê¸° ì½ê¸°" #: core/io/marshalls.cpp msgid "Object ID" -msgstr "오브ì 트 ID" +msgstr "오브ì 트 ì•„ì´ë””" #: core/io/multiplayer_api.cpp core/io/packet_peer.cpp msgid "Allow Object Decoding" @@ -394,9 +396,8 @@ msgid "Mouse Mode" msgstr "마우스 모드" #: core/os/input.cpp -#, fuzzy msgid "Use Accumulated Input" -msgstr "ìž…ë ¥ ì‚ì œ" +msgstr "누ì ìž…ë ¥ 사용" #: core/os/input_event.cpp editor/project_settings_editor.cpp #: servers/audio_server.cpp @@ -479,7 +480,7 @@ msgstr "ì••ë ¥" #: core/os/input_event.cpp msgid "Pen Inverted" -msgstr "" +msgstr "펜 ë°˜ì „" #: core/os/input_event.cpp msgid "Relative" @@ -682,11 +683,11 @@ msgstr "스í¬ë¦½íŠ¸ 템플릿 검색 경로" #: core/project_settings.cpp msgid "Version Control Autoload On Startup" -msgstr "ì‹œìž‘í• ë•Œ ìžë™ìœ¼ë¡œ Version Control 로드" +msgstr "시작 ì‹œ ë²„ì „ 관리 ìžë™ì‹¤í–‰" #: core/project_settings.cpp msgid "Version Control Plugin Name" -msgstr "ë²„ì „ 컨트롤 í”ŒëŸ¬ê·¸ì¸ ì´ë¦„" +msgstr "ë²„ì „ 관리 í”ŒëŸ¬ê·¸ì¸ ì´ë¦„" #: core/project_settings.cpp scene/2d/collision_object_2d.cpp #: scene/3d/collision_object.cpp scene/gui/control.cpp @@ -1606,7 +1607,7 @@ msgstr "변형" #: editor/animation_track_editor.cpp editor/editor_help.cpp msgid "Methods" -msgstr "메서드" +msgstr "방법" #: editor/animation_track_editor.cpp msgid "Bezier" @@ -2071,7 +2072,7 @@ msgstr "\"%s\" 시그ë„ì˜ ëª¨ë“ ì—°ê²°ì„ ì œê±°í•˜ì‹œê² ìŠµë‹ˆê¹Œ?" #: editor/connections_dialog.cpp editor/editor_help.cpp editor/node_dock.cpp msgid "Signals" -msgstr "시그ë„" +msgstr "ì‹ í˜¸" #: editor/connections_dialog.cpp msgid "Filter signals" @@ -2200,7 +2201,7 @@ msgstr "열기" #: editor/dependency_editor.cpp msgid "Owners of: %s (Total: %d)" -msgstr "" +msgstr "ì†Œìœ ìž: %s(ì´: %d)" #: editor/dependency_editor.cpp msgid "" @@ -2756,16 +2757,15 @@ msgstr "ì„ íƒ" #: editor/editor_export.cpp msgid "Project export for platform:" -msgstr "플랫í¼ìœ¼ë¡œ 프로ì 트 내보내기:" +msgstr "플랫í¼ìš© 프로ì 트 내보내기:" #: editor/editor_export.cpp msgid "Completed with warnings." msgstr "완료하였지만 ê²½ê³ ê°€ 있습니다." #: editor/editor_export.cpp -#, fuzzy msgid "Completed successfully." -msgstr "패키지를 성공ì 으로 설치했습니다!" +msgstr "성공ì 으로 완료ë˜ì—ˆìŠµë‹ˆë‹¤." #: editor/editor_export.cpp msgid "Failed." @@ -2921,9 +2921,8 @@ msgid "Custom release template not found." msgstr "커스텀 릴리스 í…œí”Œë¦¿ì„ ì°¾ì„ ìˆ˜ 없습니다." #: editor/editor_export.cpp -#, fuzzy msgid "Prepare Template" -msgstr "템플릿 관리" +msgstr "템플릿 준비" #: editor/editor_export.cpp platform/osx/export/export.cpp msgid "The given export path doesn't exist." @@ -2939,9 +2938,8 @@ msgstr "내보내기 í…œí”Œë¦¿ì„ ë³µì‚¬í•˜ì§€ 못했습니다." #: editor/editor_export.cpp platform/windows/export/export.cpp #: platform/x11/export/export.cpp -#, fuzzy msgid "PCK Embedding" -msgstr "패딩" +msgstr "PCK ìž„ë² ë”©" #: editor/editor_export.cpp msgid "On 32-bit exports the embedded PCK cannot be bigger than 4 GiB." @@ -3435,7 +3433,7 @@ msgstr "스타ì¼" #: editor/editor_help.cpp msgid "Enumerations" -msgstr "열거형" +msgstr "목ë¡" #: editor/editor_help.cpp msgid "Property Descriptions" @@ -5472,7 +5470,7 @@ msgstr "ì„ íƒëœ í•ëª©ì„ Drag and drop" #: editor/editor_settings.cpp msgid "Stay In Script Editor On Node Selected" -msgstr "" +msgstr "ì„ íƒí•œ 노드ì—ì„œ 스í¬ë¦½íŠ¸ 편집기 ìœ ì§€" #: editor/editor_settings.cpp msgid "Appearance" @@ -5774,7 +5772,7 @@ msgstr "줌 변경" #: editor/editor_settings.cpp editor/plugins/spatial_editor_plugin.cpp msgid "Warped Mouse Panning" -msgstr "" +msgstr "뒤틀린 마우스 패ë‹" #: editor/editor_settings.cpp msgid "Navigation Feel" @@ -5782,56 +5780,47 @@ msgstr "내비게ì´ì…˜ ê°ë„" #: editor/editor_settings.cpp msgid "Orbit Sensitivity" -msgstr "" +msgstr "ê¶¤ë„ ê°ë„" #: editor/editor_settings.cpp msgid "Orbit Inertia" -msgstr "" +msgstr "ê¶¤ë„ ê´€ì„±" #: editor/editor_settings.cpp -#, fuzzy msgid "Translation Inertia" -msgstr "번ì—" +msgstr "ë²ˆì— ê´€ì„±" #: editor/editor_settings.cpp -#, fuzzy msgid "Zoom Inertia" -msgstr "줌 ì¸" +msgstr "줌 관성" #: editor/editor_settings.cpp -#, fuzzy msgid "Freelook" -msgstr "ìžìœ ì‹œì 위로" +msgstr "ìžìœ ì‹œì " #: editor/editor_settings.cpp -#, fuzzy msgid "Freelook Navigation Scheme" -msgstr "내비게ì´ì…˜ 메시 만들기" +msgstr "ìžìœ ì‹œì 내비게ì´ì…˜ 계íš" #: editor/editor_settings.cpp -#, fuzzy msgid "Freelook Sensitivity" -msgstr "ìžìœ ì‹œì 왼쪽으로" +msgstr "ìžìœ ì‹œì ê°ë„" #: editor/editor_settings.cpp -#, fuzzy msgid "Freelook Inertia" -msgstr "ìžìœ ì‹œì 왼쪽으로" +msgstr "ìžìœ ì‹œì 관성" #: editor/editor_settings.cpp -#, fuzzy msgid "Freelook Base Speed" -msgstr "ìžìœ ì‹œì ì†ë„ ìˆ˜ì •ìž" +msgstr "ìžìœ ì‹œì 기본 ì†ë ¥" #: editor/editor_settings.cpp -#, fuzzy msgid "Freelook Activation Modifier" -msgstr "ìžìœ ì‹œì ëŠë¦° ìˆ˜ì •ìž" +msgstr "ìžìœ ì‹œì 활성화 ìˆ˜ì •ìž" #: editor/editor_settings.cpp -#, fuzzy msgid "Freelook Speed Zoom Link" -msgstr "ìžìœ ì‹œì ì†ë„ ìˆ˜ì •ìž" +msgstr "ìžìœ ì‹œì ì†ë„ 확대 ë§í¬" #: editor/editor_settings.cpp editor/plugins/tile_map_editor_plugin.cpp msgid "Grid Color" @@ -5867,98 +5856,89 @@ msgstr "본 IK 색ìƒ" #: editor/editor_settings.cpp msgid "Bone Outline Color" -msgstr "" +msgstr "뼈 ìœ¤ê³½ì„ ìƒ‰ìƒ" #: editor/editor_settings.cpp -#, fuzzy msgid "Bone Outline Size" -msgstr "ìœ¤ê³½ì„ í¬ê¸°:" +msgstr "뼈 ìœ¤ê³½ì„ í¬ê¸°" #: editor/editor_settings.cpp msgid "Viewport Border Color" -msgstr "" +msgstr "표시 ì˜ì— í…Œë‘리 색ìƒ" #: editor/editor_settings.cpp msgid "Constrain Editor View" -msgstr "" +msgstr "ì œì•½ 편집기 보기" #: editor/editor_settings.cpp msgid "Simple Panning" -msgstr "" +msgstr "간단한 패ë‹" #: editor/editor_settings.cpp msgid "Scroll To Pan" -msgstr "" +msgstr "팬으로 스í¬ë¡¤" #: editor/editor_settings.cpp -#, fuzzy msgid "Pan Speed" -msgstr "ì†ë„:" +msgstr "팬 ì†ë„" #: editor/editor_settings.cpp editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Poly Editor" -msgstr "í´ë¦¬ê³¤ 2D UV ì—디터" +msgstr "í´ë¦¬ ì—디터" #: editor/editor_settings.cpp msgid "Point Grab Radius" -msgstr "" +msgstr "í¬ì¸íŠ¸ 잡기 반경" #: editor/editor_settings.cpp editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Show Previous Outline" -msgstr "ì´ì „ í‰ë©´" +msgstr "ì´ì „ 아웃ë¼ì¸ 보기" #: editor/editor_settings.cpp editor/scene_tree_dock.cpp -#, fuzzy msgid "Autorename Animation Tracks" -msgstr "ì• ë‹ˆë©”ì´ì…˜ ì´ë¦„ 바꾸기" +msgstr "ì• ë‹ˆë©”ì´ì…˜ 트랙 ìžë™ ì´ë¦„ 바꾸기" #: editor/editor_settings.cpp msgid "Default Create Bezier Tracks" -msgstr "" +msgstr "기본 ë² ì§€ì–´ 트랙 만들기" #: editor/editor_settings.cpp -#, fuzzy msgid "Default Create Reset Tracks" -msgstr "ìž¬ì„¤ì • 트랙 만들기" +msgstr "기본 ìž¬ì„¤ì • 트랙 만들기" #: editor/editor_settings.cpp msgid "Onion Layers Past Color" -msgstr "" +msgstr "양파 ë ˆì´ì–´ 과거 색ìƒ" #: editor/editor_settings.cpp msgid "Onion Layers Future Color" -msgstr "" +msgstr "양파 ë ˆì´ì–´ 미래 색ìƒ" #: editor/editor_settings.cpp -#, fuzzy msgid "Visual Editors" -msgstr "그룹 ì—디터" +msgstr "비주얼 편집기" #: editor/editor_settings.cpp msgid "Minimap Opacity" -msgstr "" +msgstr "미니맵 불투명ë„" #: editor/editor_settings.cpp msgid "Window Placement" -msgstr "" +msgstr "ì°½ 배치" #: editor/editor_settings.cpp scene/2d/back_buffer_copy.cpp scene/2d/sprite.cpp #: scene/2d/visibility_notifier_2d.cpp scene/3d/sprite_3d.cpp #: scene/gui/control.cpp -#, fuzzy msgid "Rect" -msgstr "사ê°í˜• ì „ì²´" +msgstr "ì§ì‚¬ê°í˜•" #: editor/editor_settings.cpp -#, fuzzy msgid "Rect Custom Position" -msgstr "ê³¡ì„ ì˜ ì•„ì›ƒ 위치 ì„¤ì •" +msgstr "ì§ì‚¬ê°í˜• ì‚¬ìš©ìž ì •ì˜ ìœ„ì¹˜" #: editor/editor_settings.cpp platform/android/export/export_plugin.cpp msgid "Screen" -msgstr "" +msgstr "화면" #: editor/editor_settings.cpp msgid "Auto Save" @@ -5974,20 +5954,17 @@ msgstr "í°íŠ¸ í¬ê¸°" #: editor/editor_settings.cpp #: modules/gdscript/language_server/gdscript_language_server.cpp -#, fuzzy msgid "Remote Host" -msgstr "ì›ê²© " +msgstr "ì›ê²© 호스트" #: editor/editor_settings.cpp #: modules/gdscript/language_server/gdscript_language_server.cpp -#, fuzzy msgid "Remote Port" -msgstr "ì ì œê±°" +msgstr "ì›ê²© í¬íŠ¸" #: editor/editor_settings.cpp -#, fuzzy msgid "Editor SSL Certificates" -msgstr "ì—디터 ì„¤ì •" +msgstr "íŽ¸ì§‘ìž SSL ì¸ì¦ì„œ" #: editor/editor_settings.cpp msgid "HTTP Proxy" @@ -5995,13 +5972,13 @@ msgstr "HTTP 프ë¡ì‹œ" #: editor/editor_settings.cpp msgid "Host" -msgstr "" +msgstr "호스트" #: editor/editor_settings.cpp editor/fileserver/editor_file_server.cpp #: main/main.cpp modules/mono/mono_gd/gd_mono.cpp #: scene/resources/default_theme/default_theme.cpp msgid "Port" -msgstr "" +msgstr "í¬íŠ¸" #. TRANSLATORS: Project Manager here refers to the tool used to create/manage Godot projects. #: editor/editor_settings.cpp @@ -6019,28 +5996,27 @@ msgstr "ìƒì§• 색" #: editor/editor_settings.cpp msgid "Keyword Color" -msgstr "" +msgstr "키워드 색ìƒ" #: editor/editor_settings.cpp msgid "Control Flow Keyword Color" -msgstr "" +msgstr "플로우 키워드 ìƒ‰ìƒ ì œì–´" #: editor/editor_settings.cpp -#, fuzzy msgid "Base Type Color" -msgstr "기본 타입 바꾸기" +msgstr "기본 ìœ í˜• 색ìƒ" #: editor/editor_settings.cpp msgid "Engine Type Color" -msgstr "" +msgstr "엔진 ìœ í˜• 색ìƒ" #: editor/editor_settings.cpp msgid "User Type Color" -msgstr "" +msgstr "ì‚¬ìš©ìž ìœ í˜• 색ìƒ" #: editor/editor_settings.cpp msgid "Comment Color" -msgstr "" +msgstr "댓글 색ìƒ" #: editor/editor_settings.cpp msgid "String Color" @@ -6057,35 +6033,32 @@ msgid "Completion Background Color" msgstr "완성 ë°°ê²½ 색" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Completion Selected Color" -msgstr "ì„ íƒëœ í•ëª© ê°€ì ¸ì˜¤ê¸°" +msgstr "ì„ íƒ ìƒ‰ìƒ ì™„ë£Œ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Completion Existing Color" -msgstr "" +msgstr "기존 ìƒ‰ìƒ ì™„ì„±" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Completion Scroll Color" -msgstr "" +msgstr "스í¬ë¡¤ ìƒ‰ìƒ ì™„ë£Œ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Completion Font Color" -msgstr "" +msgstr "글꼴 ìƒ‰ìƒ ì™„ë£Œ" #: editor/editor_settings.cpp -#, fuzzy msgid "Text Color" -msgstr "ë‹¤ìŒ ì¸µ" +msgstr "글ìžìƒ‰" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Line Number Color" msgstr "í–‰ ë²ˆí˜¸ì˜ ìƒ‰" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Safe Line Number Color" -msgstr "í–‰ 번호:" +msgstr "ì•ˆì „ ë¼ì¸ 번호 색ìƒ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Caret Color" @@ -6096,93 +6069,82 @@ msgid "Caret Background Color" msgstr "íƒˆìž ê¸°í˜¸ ë°°ê²½ 색" #: editor/editor_settings.cpp -#, fuzzy msgid "Text Selected Color" -msgstr "ì„ íƒ í•ëª© ì‚ì œ" +msgstr "ì„ íƒí•œ í…스트 색ìƒ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Selection Color" -msgstr "ì„ íƒ ì˜ì—만" +msgstr "ì„ íƒ ìƒ‰ìƒ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Brace Mismatch Color" -msgstr "" +msgstr "중괄호 불ì¼ì¹˜ 색ìƒ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Current Line Color" -msgstr "현재 씬" +msgstr "현재 줄 색ìƒ" #: editor/editor_settings.cpp msgid "Line Length Guideline Color" -msgstr "" +msgstr "ë¼ì¸ ê¸¸ì´ ê°€ì´ë“œë¼ì¸ 색ìƒ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Word Highlighted Color" -msgstr "구문 ê°•ì¡°" +msgstr "구문 ê°•ì¡° 색ìƒ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Number Color" -msgstr "" +msgstr "ìˆ«ìž ìƒ‰ìƒ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Function Color" -msgstr "함수(Function)" +msgstr "함수 색ìƒ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Member Variable Color" -msgstr "변수명 바꾸기" +msgstr "멤버 변수 색ìƒ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Mark Color" -msgstr "ìƒ‰ìƒ ì„ íƒ" +msgstr "ë§ˆí¬ ìƒ‰ìƒ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Bookmark Color" -msgstr "ë¶ë§ˆí¬" +msgstr "ë¶ë§ˆí¬ 색ìƒ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Breakpoint Color" -msgstr "중단ì " +msgstr "중단ì 색ìƒ" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Executing Line Color" -msgstr "" +msgstr "ë¼ì¸ ìƒ‰ìƒ ì‹¤í–‰" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Code Folding Color" -msgstr "" +msgstr "코드 í´ë”© 색ìƒ" #: editor/editor_settings.cpp -#, fuzzy msgid "Search Result Color" -msgstr "검색 ê²°ê³¼" +msgstr "검색 ê²°ê³¼ 색ìƒ" #: editor/editor_settings.cpp -#, fuzzy msgid "Search Result Border Color" -msgstr "검색 ê²°ê³¼" +msgstr "검색 ê²°ê³¼ í…Œë‘리 색ìƒ" #: editor/editor_spin_slider.cpp msgid "Hold %s to round to integers. Hold Shift for more precise changes." -msgstr "%s를 눌러 ì •ìˆ˜ë¡œ 반올림합니다. Shift를 눌러 좀 ë” ì •ë°€í•˜ê²Œ 조작합니다." +msgstr "" +"ì •ìˆ˜ë¡œ ë°˜ì˜¬ë¦¼í•˜ë ¤ë©´ %s 키를 누르세요. ë” ì •ë°€í•œ ë³€ê²½ì„ í•˜ë ¤ë©´ Shift 키를 누르" +"세요." #: editor/editor_spin_slider.cpp scene/gui/button.cpp -#, fuzzy msgid "Flat" -msgstr "플랫 0" +msgstr "í‰ë©´" #: editor/editor_spin_slider.cpp -#, fuzzy msgid "Hide Slider" -msgstr "ì½œë¦¬ì „ 모드" +msgstr "슬ë¼ì´ë” 숨기기" #: editor/editor_sub_scene.cpp msgid "Select Node(s) to Import" @@ -6190,11 +6152,11 @@ msgstr "ê°€ì ¸ì˜¬ 노드 ì„ íƒ" #: editor/editor_sub_scene.cpp editor/project_manager.cpp msgid "Browse" -msgstr "íƒìƒ‰" +msgstr "검색" #: editor/editor_sub_scene.cpp msgid "Scene Path:" -msgstr "씬 경로:" +msgstr "장면 경로:" #: editor/editor_sub_scene.cpp msgid "Import From Node:" @@ -6202,13 +6164,12 @@ msgstr "노드ì—ì„œ ê°€ì ¸ì˜¤ê¸°:" #. TRANSLATORS: %s refers to the name of a version control system (e.g. "Git"). #: editor/editor_vcs_interface.cpp -#, fuzzy msgid "%s Error" -msgstr "오류" +msgstr "%s 오류" #: editor/export_template_manager.cpp msgid "Open the folder containing these templates." -msgstr "ì´ í…œí”Œë¦¿ì„ í¬í•¨í•˜ëŠ” í´ë”를 엽니다." +msgstr "ì´ í…œí”Œë¦¿ì´ í¬í•¨ëœ í´ë”를 엽니다." #: editor/export_template_manager.cpp msgid "Uninstall these templates." @@ -6220,11 +6181,11 @@ msgstr "사용 가능한 미러가 없습니다." #: editor/export_template_manager.cpp msgid "Retrieving the mirror list..." -msgstr "미러 목ë¡ì„ 검색하는 중..." +msgstr "미러 목ë¡ì„ ê°€ì ¸ì˜¤ëŠ” 중..." #: editor/export_template_manager.cpp msgid "Starting the download..." -msgstr "다운로드를 시작하는 중..." +msgstr "다운로드 시작 중..." #: editor/export_template_manager.cpp msgid "Error requesting URL:" @@ -6232,11 +6193,11 @@ msgstr "URL ìš”ì² ì¤‘ 오류:" #: editor/export_template_manager.cpp msgid "Connecting to the mirror..." -msgstr "ë¯¸ëŸ¬ì— ì—°ê²° 중..." +msgstr "미러 ì—°ê²° 중..." #: editor/export_template_manager.cpp msgid "Can't resolve the requested address." -msgstr "ìš”ì²ëœ 주소를 í•´ê²°í• ìˆ˜ 없습니다." +msgstr "ìš”ì²í•œ 주소를 확ì¸í• 수 없습니다." #: editor/export_template_manager.cpp msgid "Can't connect to the mirror." @@ -6472,13 +6433,13 @@ msgstr "" #: editor/fileserver/editor_file_server.cpp msgid "File Server" -msgstr "" +msgstr "íŒŒì¼ ì„œë²„" #: editor/fileserver/editor_file_server.cpp #: editor/plugins/version_control_editor_plugin.cpp #: platform/uwp/export/export.cpp platform/windows/export/export.cpp msgid "Password" -msgstr "" +msgstr "비밀번호" #: editor/filesystem_dock.cpp msgid "Favorites" @@ -6539,6 +6500,9 @@ msgid "" "After renaming to an unknown extension, the file won't be shown in the " "editor anymore." msgstr "" +"ì´ íŒŒì¼ í™•ìž¥ìžëŠ” 편집기ì—ì„œ ì¸ì‹ë˜ì§€ 않습니다.\n" +"ì´ë¦„ì„ ë³€ê²½í•˜ë ¤ë©´ ìš´ì˜ ì²´ì œì˜ íŒŒì¼ íƒìƒ‰ê¸°ë¥¼ 사용하ì‹ì‹œì˜¤.\n" +"ì•Œ 수 없는 확장ìžë¡œ ì´ë¦„ì„ ë°”ê¾¸ë©´ 파ì¼ì´ ë” ì´ìƒ íŽ¸ì§‘ê¸°ì— í‘œì‹œë˜ì§€ 않습니다." #: editor/filesystem_dock.cpp msgid "" @@ -6760,14 +6724,12 @@ msgid "Replace..." msgstr "바꾸기..." #: editor/find_in_files.cpp editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Replace in Files" -msgstr "ëª¨ë‘ ë°”ê¾¸ê¸°" +msgstr "파ì¼ì—ì„œ 바꾸기" #: editor/find_in_files.cpp -#, fuzzy msgid "Replace All (NO UNDO)" -msgstr "ëª¨ë‘ ë°”ê¾¸ê¸°" +msgstr "ëª¨ë‘ ë°”ê¾¸ê¸°(실행 취소 ì—†ìŒ)" #: editor/find_in_files.cpp msgid "Searching..." @@ -6840,43 +6802,40 @@ msgstr "그룹 관리" #: editor/import/editor_import_collada.cpp msgid "Collada" -msgstr "" +msgstr "COLLADA" #: editor/import/editor_import_collada.cpp msgid "Use Ambient" -msgstr "" +msgstr "주변광 사용" #: editor/import/resource_importer_bitmask.cpp -#, fuzzy msgid "Create From" -msgstr "í´ë” 만들기" +msgstr "다ìŒì—ì„œ 만들기" #: editor/import/resource_importer_bitmask.cpp #: servers/audio/effects/audio_effect_compressor.cpp msgid "Threshold" -msgstr "" +msgstr "ìŠ¤ë ˆìˆ„ë“œ" #: editor/import/resource_importer_csv_translation.cpp #: editor/import/resource_importer_layered_texture.cpp #: editor/import/resource_importer_scene.cpp #: editor/import/resource_importer_texture.cpp #: editor/import/resource_importer_wav.cpp scene/3d/gi_probe.cpp -#, fuzzy msgid "Compress" -msgstr "구성 요소" +msgstr "ì»´í”„ë ˆìŠ¤" #: editor/import/resource_importer_csv_translation.cpp msgid "Delimiter" -msgstr "" +msgstr "디리미터" #: editor/import/resource_importer_layered_texture.cpp -#, fuzzy msgid "ColorCorrect" -msgstr "ìƒ‰ìƒ í•¨ìˆ˜." +msgstr "ì»¬ëŸ¬ì½”ë ‰íŠ¸" #: editor/import/resource_importer_layered_texture.cpp msgid "No BPTC If RGB" -msgstr "" +msgstr "RGBì¸ ê²½ìš° BPTC ì—†ìŒ" #: editor/import/resource_importer_layered_texture.cpp #: editor/import/resource_importer_texture.cpp scene/2d/cpu_particles_2d.cpp @@ -6884,13 +6843,13 @@ msgstr "" #: scene/resources/material.cpp scene/resources/particles_material.cpp #: scene/resources/texture.cpp scene/resources/visual_shader.cpp msgid "Flags" -msgstr "" +msgstr "플래그" #: editor/import/resource_importer_layered_texture.cpp #: editor/import/resource_importer_texture.cpp scene/animation/tween.cpp #: scene/resources/texture.cpp msgid "Repeat" -msgstr "" +msgstr "반복" #: editor/import/resource_importer_layered_texture.cpp #: editor/import/resource_importer_texture.cpp scene/2d/light_2d.cpp @@ -6900,14 +6859,13 @@ msgstr "í•„í„°" #: editor/import/resource_importer_layered_texture.cpp #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "Mipmaps" -msgstr "시그ë„" +msgstr "밉맵" #: editor/import/resource_importer_layered_texture.cpp #: editor/import/resource_importer_texture.cpp msgid "Anisotropic" -msgstr "" +msgstr "ì´ë°©ì„±" #: editor/import/resource_importer_layered_texture.cpp #: editor/import/resource_importer_texture.cpp @@ -6915,9 +6873,8 @@ msgid "sRGB" msgstr "sRGB" #: editor/import/resource_importer_layered_texture.cpp -#, fuzzy msgid "Slices" -msgstr "ìžë™ ìžë¥´ê¸°" +msgstr "슬ë¼ì´ìŠ¤" #: editor/import/resource_importer_layered_texture.cpp #: scene/gui/aspect_ratio_container.cpp scene/gui/control.cpp @@ -6934,14 +6891,12 @@ msgid "Vertical" msgstr "수ì§" #: editor/import/resource_importer_obj.cpp -#, fuzzy msgid "Generate Tangents" -msgstr "ìƒì„±í•œ ì 개수" +msgstr "ì ‘ì„ ìƒì„±" #: editor/import/resource_importer_obj.cpp -#, fuzzy msgid "Scale Mesh" -msgstr "ìŠ¤ì¼€ì¼ ëª¨ë“œ" +msgstr "ìŠ¤ì¼€ì¼ ë©”ì‰¬" #: editor/import/resource_importer_obj.cpp msgid "Offset Mesh" @@ -6949,9 +6904,8 @@ msgstr "오프셋 메시" #: editor/import/resource_importer_obj.cpp #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Octahedral Compression" -msgstr "í‘œí˜„ì‹ ì„¤ì •" +msgstr "팔면체 압축" #: editor/import/resource_importer_obj.cpp msgid "Optimize Mesh Flags" @@ -6999,100 +6953,84 @@ msgstr "여러 ê°œì˜ ì”¬ê³¼ 머티리얼로 ê°€ì ¸ì˜¤ê¸°" #: editor/import/resource_importer_scene.cpp modules/gltf/gltf_state.cpp #: scene/3d/physics_joint.cpp -#, fuzzy msgid "Nodes" msgstr "노드" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Root Type" -msgstr "멤버 타입" +msgstr "루트 ìœ í˜•" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Root Name" -msgstr "ì›ê²© ì´ë¦„" +msgstr "루트 ì´ë¦„" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Root Scale" -msgstr "스케ì¼" +msgstr "루트 스케ì¼" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Custom Script" -msgstr "노드 잘ë¼ë‚´ê¸°" +msgstr "ì‚¬ìš©ìž ì •ì˜ ìŠ¤í¬ë¦½íŠ¸" #: editor/import/resource_importer_scene.cpp scene/resources/texture.cpp -#, fuzzy msgid "Storage" -msgstr "ì €ìž¥í•˜ë ¤ëŠ” 파ì¼:" +msgstr "보관소" #: editor/import/resource_importer_scene.cpp msgid "Use Legacy Names" -msgstr "" +msgstr "기존 ì´ë¦„ 사용" #: editor/import/resource_importer_scene.cpp modules/gltf/gltf_state.cpp msgid "Materials" msgstr "머티리얼" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Keep On Reimport" -msgstr "다시 ê°€ì ¸ì˜¤ê¸°" +msgstr "ê³„ì† ë‹¤ì‹œ ê°€ì ¸ì˜¤ê¸°" #: editor/import/resource_importer_scene.cpp modules/gltf/gltf_state.cpp -#, fuzzy msgid "Meshes" -msgstr "메시" +msgstr "메쉬" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Ensure Tangents" -msgstr "ê³¡ì„ íƒ„ì 트 ìˆ˜ì •" +msgstr "ì ‘ì„ í™•ì¸" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Light Baking" -msgstr "ë¼ì´íŠ¸ë§µ 굽기" +msgstr "ë¼ì´íŠ¸ ë² ì´í‚¹" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Lightmap Texel Size" -msgstr "ë¼ì´íŠ¸ë§µ 굽기" +msgstr "ë¼ì´íŠ¸ë§µ í…ì…€ í¬ê¸°" #: editor/import/resource_importer_scene.cpp modules/gltf/gltf_state.cpp msgid "Skins" -msgstr "" +msgstr "스킨" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Use Named Skins" -msgstr "ìŠ¤ì¼€ì¼ ìŠ¤ëƒ… 사용" +msgstr "네임드 스킨 사용" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "External Files" -msgstr "íŒŒì¼ ì—´ê¸°" +msgstr "외부 파ì¼" #: editor/import/resource_importer_scene.cpp msgid "Store In Subdir" -msgstr "" +msgstr "하위 ë””ë ‰í† ë¦¬ì— ì €ìž¥" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Filter Script" -msgstr "스í¬ë¦½íŠ¸ í•„í„°" +msgstr "í•„í„° 스í¬ë¦½íŠ¸" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Keep Custom Tracks" -msgstr "변형" +msgstr "맞춤 트랙 ìœ ì§€" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Optimizer" -msgstr "최ì í™”" +msgstr "최ì í™” ë„구" #: editor/import/resource_importer_scene.cpp #: editor/plugins/item_list_editor_plugin.cpp main/main.cpp @@ -7106,9 +7044,8 @@ msgstr "최ì í™”" #: scene/3d/sprite_3d.cpp scene/gui/graph_edit.cpp #: scene/gui/rich_text_label.cpp scene/resources/curve.cpp #: scene/resources/environment.cpp scene/resources/material.cpp -#, fuzzy msgid "Enabled" -msgstr "활성화" +msgstr "활성화ë¨" #: editor/import/resource_importer_scene.cpp msgid "Max Linear Error" @@ -7119,19 +7056,16 @@ msgid "Max Angular Error" msgstr "최대 ê°ë„ 오류" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Max Angle" -msgstr "ê°’" +msgstr "최대 ê°ë„" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Remove Unused Tracks" -msgstr "ì• ë‹ˆë©”ì´ì…˜ 트랙 ì œê±°" +msgstr "미사용 트랙 ì œê±°" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Clips" -msgstr "ì• ë‹ˆë©”ì´ì…˜ í´ë¦½" +msgstr "í´ë¦½" #: editor/import/resource_importer_scene.cpp scene/2d/cpu_particles_2d.cpp #: scene/2d/particles_2d.cpp scene/3d/area.cpp scene/3d/cpu_particles.cpp @@ -7185,64 +7119,63 @@ 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: í…스처가 3Dì—ì„œ 노멀 맵으로 사용ë˜ëŠ” 것으로 ê°ì§€ë˜ì—ˆìŠµë‹ˆë‹¤. 메모리 사용량" +"ì„ ì¤„ì´ê¸° 위해 빨강-ì´ˆë¡ í…스처 ì••ì¶•ì„ í™œì„±í™”í•©ë‹ˆë‹¤(파란색 채ë„ì€ ë²„ë ¤ì§)." #: editor/import/resource_importer_texture.cpp msgid "" "%s: Texture detected as used in 3D. Enabling filter, repeat, mipmap " "generation and VRAM texture compression." msgstr "" +"%s: í…스처가 3Dì—ì„œ ì‚¬ìš©ëœ ê²ƒìœ¼ë¡œ ê°ì§€ë˜ì—ˆìŠµë‹ˆë‹¤. í•„í„°, 반복, 밉맵 ìƒì„± ë° " +"VRAM í…스처 ì••ì¶•ì„ í™œì„±í™”í•©ë‹ˆë‹¤." #: editor/import/resource_importer_texture.cpp msgid "2D, Detect 3D" -msgstr "" +msgstr "2D, 3D ê°ì§€" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "2D Pixel" -msgstr "ì „ë©´ 픽셀" +msgstr "2D 픽셀" #: editor/import/resource_importer_texture.cpp scene/resources/texture.cpp msgid "Lossy Quality" -msgstr "" +msgstr "ì†ì‹¤ 품질" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "HDR Mode" -msgstr "모드 ì„ íƒ" +msgstr "HDR 모드" #: editor/import/resource_importer_texture.cpp msgid "BPTC LDR" -msgstr "" +msgstr "BPTC LDR" #: editor/import/resource_importer_texture.cpp #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/cpu_particles_2d.cpp #: scene/2d/mesh_instance_2d.cpp scene/2d/multimesh_instance_2d.cpp #: scene/2d/particles_2d.cpp scene/2d/sprite.cpp scene/resources/style_box.cpp msgid "Normal Map" -msgstr "" +msgstr "ì¼ë°˜ 맵" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "Process" -msgstr "후처리" +msgstr "프로세스" #: editor/import/resource_importer_texture.cpp msgid "Fix Alpha Border" -msgstr "" +msgstr "알파 í…Œë‘리 ìˆ˜ì •" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "Premult Alpha" -msgstr "í´ë¦¬ê³¤ 편집" +msgstr "프리멀트 알파" #: editor/import/resource_importer_texture.cpp msgid "Hdr As Srgb" -msgstr "" +msgstr "Srgbë¡œ HDR" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "Invert Color" -msgstr "ê¼ì§“ì " +msgstr "ìƒ‰ìƒ ë°˜ì „" #: editor/import/resource_importer_texture.cpp msgid "Normal Map Invert Y" @@ -7254,18 +7187,19 @@ msgstr "í¬ê¸° ì œí•œ" #: editor/import/resource_importer_texture.cpp msgid "Detect 3D" -msgstr "" +msgstr "3D ê°ì§€" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "SVG" -msgstr "HSV" +msgstr "SVG" #: editor/import/resource_importer_texture.cpp msgid "" "Warning, no suitable PC VRAM compression enabled in Project Settings. This " "texture will not display correctly on PC." msgstr "" +"ê²½ê³ , 프로ì 트 ì„¤ì •ì—ì„œ í™œì„±í™”ëœ ì ì ˆí•œ PC VRAM ì••ì¶•ì´ ì—†ìŠµë‹ˆë‹¤. ì´ í…스처는 " +"PCì—ì„œ 올바르게 표시ë˜ì§€ 않습니다." #: editor/import/resource_importer_texture_atlas.cpp msgid "Atlas File" @@ -7276,65 +7210,57 @@ msgid "Import Mode" msgstr "ê°€ì ¸ì˜¤ê¸° 모드" #: editor/import/resource_importer_texture_atlas.cpp -#, fuzzy msgid "Crop To Region" -msgstr "íƒ€ì¼ ì˜ì— ì„¤ì •" +msgstr "ì˜ì—으로 ìžë¥´ê¸°" #: editor/import/resource_importer_texture_atlas.cpp msgid "Trim Alpha Border From Region" -msgstr "" +msgstr "ì˜ì—ì—ì„œ 알파 í…Œë‘리 ìžë¥´ê¸°" #: editor/import/resource_importer_wav.cpp scene/2d/physics_body_2d.cpp -#, fuzzy msgid "Force" -msgstr "ì›ë³¸ 메시:" +msgstr "힘" #: editor/import/resource_importer_wav.cpp msgid "8 Bit" -msgstr "" +msgstr "8비트" #: editor/import/resource_importer_wav.cpp main/main.cpp #: modules/mono/editor/csharp_project.cpp modules/mono/godotsharp_dirs.cpp #: modules/mono/mono_gd/gd_mono.cpp msgid "Mono" -msgstr "" +msgstr "모노" #: editor/import/resource_importer_wav.cpp -#, fuzzy msgid "Max Rate" -msgstr "믹스 노드" +msgstr "최대 비율" #: editor/import/resource_importer_wav.cpp -#, fuzzy msgid "Max Rate Hz" -msgstr "믹스 노드" +msgstr "최대 ì†ë„ Hz" #: editor/import/resource_importer_wav.cpp msgid "Trim" -msgstr "" +msgstr "ì†ì§ˆ" #: editor/import/resource_importer_wav.cpp -#, fuzzy msgid "Normalize" -msgstr "형ì‹" +msgstr "ì •ê·œí™”" #: editor/import/resource_importer_wav.cpp #: scene/resources/audio_stream_sample.cpp -#, fuzzy msgid "Loop Mode" -msgstr "ì´ë™ 모드" +msgstr "루프 모드" #: editor/import/resource_importer_wav.cpp #: scene/resources/audio_stream_sample.cpp -#, fuzzy msgid "Loop Begin" -msgstr "ì´ë™ 모드" +msgstr "루프 시작" #: editor/import/resource_importer_wav.cpp #: scene/resources/audio_stream_sample.cpp -#, fuzzy msgid "Loop End" -msgstr "ì´ë™ 모드" +msgstr "루프 종료" #: editor/import_defaults_editor.cpp msgid "Select Importer" @@ -7346,7 +7272,7 @@ msgstr "ìž„í¬í„°:" #: editor/import_defaults_editor.cpp msgid "Reset to Defaults" -msgstr "ë””í´íŠ¸ë¡œ ìž¬ì„¤ì •" +msgstr "기본값으로 ìž¬ì„¤ì •" #: editor/import_dock.cpp msgid "Keep File (No Import)" @@ -7358,11 +7284,11 @@ msgstr "íŒŒì¼ %dê°œ" #: editor/import_dock.cpp msgid "Set as Default for '%s'" -msgstr "'%s'ì„(를) ë””í´íŠ¸ë¡œ ì„¤ì •" +msgstr "기본값으로 '%s' ì„¤ì •" #: editor/import_dock.cpp msgid "Clear Default for '%s'" -msgstr "'%s'ì„(를) ë””í´íŠ¸ì—ì„œ 지우기" +msgstr "'%s'ì˜ ê¸°ë³¸ê°’ 지우기" #: editor/import_dock.cpp msgid "Reimport" @@ -7382,55 +7308,54 @@ msgstr "" #: editor/import_dock.cpp msgid "Import As:" -msgstr "ë‹¤ìŒ í˜•ì‹ìœ¼ë¡œ ê°€ì ¸ì˜¤ê¸°:" +msgstr "다ìŒìœ¼ë¡œ ê°€ì ¸ì˜¤ê¸°:" #: editor/import_dock.cpp msgid "Save Scenes, Re-Import, and Restart" -msgstr "씬 ì €ìž¥, 다시 ê°€ì ¸ì˜¤ê¸° ë° ë‹¤ì‹œ 시작" +msgstr "장면 ì €ìž¥, 다시 ê°€ì ¸ì˜¤ê¸° ë° ìž¬ì‹œìž‘" #: editor/import_dock.cpp msgid "Changing the type of an imported file requires editor restart." -msgstr "ê°€ì ¸ì˜¨ 파ì¼ì˜ íƒ€ìž…ì„ ë°”ê¾¸ë ¤ë©´ ì—디터를 다시 시작해야 합니다." +msgstr "ê°€ì ¸ì˜¨ 파ì¼ì˜ ìœ í˜•ì„ ë³€ê²½í•˜ë ¤ë©´ 편집기를 다시 시작해야 합니다." #: editor/import_dock.cpp msgid "" "WARNING: Assets exist that use this resource, they may stop loading properly." msgstr "" -"ê²½ê³ : ì´ ë¦¬ì†ŒìŠ¤ë¥¼ 사용하는 ì• ì…‹ì´ ìžˆìŠµë‹ˆë‹¤. ì •ìƒì 으로 불러오지 ëª»í• ìˆ˜ë„ ìžˆ" -"습니다." +"ê²½ê³ : ì´ ë¦¬ì†ŒìŠ¤ë¥¼ 사용하는 ì• ì…‹ì´ ìžˆìŠµë‹ˆë‹¤. ì •ìƒì 으로 불러오지 ëª»í• ìˆ˜ 있습" +"니다." #: editor/import_dock.cpp msgid "" "Select a resource file in the filesystem or in the inspector to adjust " "import settings." msgstr "" +"íŒŒì¼ ì‹œìŠ¤í…œ ë˜ëŠ” 검사기ì—ì„œ 리소스 파ì¼ì„ ì„ íƒí•˜ì—¬ ê°€ì ¸ì˜¤ê¸° ì„¤ì •ì„ ì¡°ì •í•˜ì‹ì‹œ" +"오." #: editor/inspector_dock.cpp msgid "Failed to load resource." -msgstr "리소스 ë¶ˆëŸ¬ì˜¤ê¸°ì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤." +msgstr "리소스를 불러오지 못했습니다." #: editor/inspector_dock.cpp -#, fuzzy msgid "Property Name Style" -msgstr "프로ì 트 ì´ë¦„:" +msgstr "ì†ì„± ì´ë¦„ 스타ì¼" #: editor/inspector_dock.cpp scene/gui/color_picker.cpp msgid "Raw" -msgstr "Raw" +msgstr "RAW" #: editor/inspector_dock.cpp -#, fuzzy msgid "Capitalized" msgstr "대문ìžë¡œ 시작" #: editor/inspector_dock.cpp -#, fuzzy msgid "Localized" -msgstr "로케ì¼" +msgstr "현지화" #: editor/inspector_dock.cpp msgid "Localization not available for current language." -msgstr "" +msgstr "현재 언어로는 현지화가 불가능합니다." #: editor/inspector_dock.cpp msgid "Copy Properties" @@ -7973,9 +7898,8 @@ msgid "New" msgstr "새로 만들기" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Paste As Reference" -msgstr "%s í´ëž˜ìŠ¤ 참조" +msgstr "참조로 붙여넣기" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Edit Transitions..." @@ -8303,7 +8227,7 @@ msgstr "í•„í„°..." #: editor/plugins/asset_library_editor_plugin.cpp scene/main/http_request.cpp msgid "Use Threads" -msgstr "" +msgstr "ìŠ¤ë ˆë“œ 사용" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Contents:" @@ -8430,9 +8354,8 @@ msgid "Download Error" msgstr "다운로드 오류" #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgid "Available URLs" -msgstr "사용 가능한 프로필:" +msgstr "사용 가능한 URL" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Download for this asset is already in progress!" @@ -8467,28 +8390,24 @@ msgid "Loading..." msgstr "불러오는 중..." #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgctxt "Pagination" msgid "First" -msgstr "처ìŒìœ¼ë¡œ" +msgstr "처ìŒ" #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgctxt "Pagination" msgid "Previous" msgstr "ì´ì „" #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgctxt "Pagination" msgid "Next" msgstr "다ìŒ" #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgctxt "Pagination" msgid "Last" -msgstr "ë으로" +msgstr "마지막" #: editor/plugins/asset_library_editor_plugin.cpp msgid "All" @@ -8536,7 +8455,7 @@ msgstr "테스트" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Failed to get repository configuration." -msgstr "" +msgstr "ì €ìž¥ì†Œ êµ¬ì„±ì„ ê°€ì ¸ì˜¤ì§€ 못했습니다." #: editor/plugins/asset_library_editor_plugin.cpp msgid "Assets ZIP File" @@ -8592,7 +8511,7 @@ msgstr "ë¼ì´íŠ¸ë§µ 굽기" #: editor/plugins/baked_lightmap_editor_plugin.cpp msgid "LightMap Bake" -msgstr "" +msgstr "ë¼ì´íŠ¸ë§µ ë² ì´í‚¹" #: editor/plugins/baked_lightmap_editor_plugin.cpp msgid "Select lightmap bake file:" @@ -8902,9 +8821,8 @@ msgid "Alt+Drag: Move selected node." msgstr "Alt+드래그: ì„ íƒëœ 노드를 ì´ë™í•©ë‹ˆë‹¤." #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Alt+Drag: Scale selected node." -msgstr "Alt+드래그: ì„ íƒëœ 노드를 ì´ë™í•©ë‹ˆë‹¤." +msgstr "Alt+드래그: ì„ íƒí•œ ë…¸ë“œì˜ í¬ê¸°ë¥¼ ì¡°ì ˆí•©ë‹ˆë‹¤." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "V: Set selected node's pivot position." @@ -8937,7 +8855,7 @@ msgstr "ìŠ¤ì¼€ì¼ ëª¨ë“œ" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Shift: Scale proportionally." -msgstr "" +msgstr "Shift: 비례ì 으로 ì¡°ì •í•©ë‹ˆë‹¤." #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -9036,9 +8954,8 @@ msgstr "ì„ íƒëœ 오브ì 트를 ê·¸ ìžë¦¬ì— ìž ê¸‰ë‹ˆë‹¤ (움ì§ì¼ 수 ì—†ì #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Lock Selected Node(s)" -msgstr "ì„ íƒ í•ëª© ìž ê·¸ê¸°" +msgstr "ì„ íƒí•œ 노드 ìž ê¸ˆ" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -9047,9 +8964,8 @@ msgstr "ì„ íƒëœ 오브ì 트를 ìž ê¸ˆì—ì„œ 풉니다 (움ì§ì¼ 수 ìžˆìŠµë‹ #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Unlock Selected Node(s)" -msgstr "ì„ íƒ í•ëª© ìž ê¸ˆ 풀기" +msgstr "ì„ íƒí•œ 노드 ìž ê¸ˆ í•´ì œ" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -9058,9 +8974,8 @@ msgstr "오브ì íŠ¸ì˜ ìžì‹ì„ ì„ íƒí•˜ì§€ ì•Šë„ë¡ í•©ë‹ˆë‹¤." #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Group Selected Node(s)" -msgstr "ì„ íƒ í•ëª© 묶기" +msgstr "ì„ íƒí•œ 노드 그룹화" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp @@ -9069,9 +8984,8 @@ msgstr "오브ì íŠ¸ì˜ ìžì‹ì„ ì„ íƒí• 수 있ë„ë¡ ë³µì›í•©ë‹ˆë‹¤." #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Ungroup Selected Node(s)" -msgstr "ì„ íƒ í•ëª© ë¬¶ìŒ í’€ê¸°" +msgstr "ì„ íƒí•œ 노드 그룹 í•´ì œ" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Skeleton Options" @@ -9096,23 +9010,20 @@ msgid "View" msgstr "보기" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Show" -msgstr "ê²©ìž ë³´ì´ê¸°" +msgstr "표시" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Show When Snapping" -msgstr "스마트 스냅" +msgstr "ìŠ¤ëƒ…í• ë•Œ 표시" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Hide" -msgstr "" +msgstr "숨김" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Toggle Grid" -msgstr "모드 í† ê¸€" +msgstr "í† ê¸€ 그리드" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/polygon_2d_editor_plugin.cpp @@ -9463,16 +9374,15 @@ msgstr "기울기 편집ë¨" #: editor/plugins/gradient_texture_2d_editor_plugin.cpp msgid "Swap GradientTexture2D Fill Points" -msgstr "" +msgstr "ê·¸ë¼ë””언트í…스처2D 채우기 í¬ì¸íŠ¸ êµì²´" #: editor/plugins/gradient_texture_2d_editor_plugin.cpp msgid "Swap Gradient Fill Points" -msgstr "" +msgstr "ê·¸ë¼ë””언트 채우기 í¬ì¸íŠ¸ êµì²´" #: editor/plugins/gradient_texture_2d_editor_plugin.cpp -#, fuzzy msgid "Toggle Grid Snap" -msgstr "모드 í† ê¸€" +msgstr "í† ê¸€ 그리드 스냅" #: editor/plugins/item_list_editor_plugin.cpp editor/project_export.cpp #: scene/3d/label_3d.cpp scene/gui/button.cpp scene/gui/dialogs.cpp @@ -9491,13 +9401,12 @@ msgstr "ì•„ì´ì½˜" #: editor/plugins/item_list_editor_plugin.cpp msgid "ID" -msgstr "" +msgstr "ID" #: editor/plugins/item_list_editor_plugin.cpp #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Separator" -msgstr "간격:" +msgstr "분리 기호" #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" @@ -9730,9 +9639,8 @@ msgstr "" "%s" #: editor/plugins/mesh_library_editor_plugin.cpp -#, fuzzy msgid "MeshLibrary" -msgstr "메시 ë¼ì´ë¸ŒëŸ¬ë¦¬" +msgstr "메쉬 ë¼ì´ë¸ŒëŸ¬ë¦¬" #: editor/plugins/mesh_library_editor_plugin.cpp msgid "Add Item" @@ -9755,14 +9663,12 @@ msgid "Update from Scene" msgstr "씬ì—ì„œ ì—…ë°ì´íŠ¸" #: editor/plugins/mesh_library_editor_plugin.cpp -#, fuzzy msgid "Apply without Transforms" -msgstr "MeshInstance 변형 ì ìš©" +msgstr "변환 ì—†ì´ ì ìš©" #: editor/plugins/mesh_library_editor_plugin.cpp -#, fuzzy msgid "Apply with Transforms" -msgstr "MeshInstance 변형 ì ìš©" +msgstr "변환과 함께 ì ìš©" #: editor/plugins/multimesh_editor_plugin.cpp msgid "No mesh source specified (and no MultiMesh set in node)." @@ -10286,7 +10192,7 @@ msgstr "ë³¸ì„ í´ë¦¬ê³¤ì— ë™ê¸°í™”" #: editor/plugins/ray_cast_2d_editor_plugin.cpp msgid "Set cast_to" -msgstr "" +msgstr "cast_to ì„¤ì •" #: editor/plugins/resource_preloader_editor_plugin.cpp msgid "ERROR: Couldn't load resource!" @@ -10617,57 +10523,51 @@ msgstr "검색 ê²°ê³¼" #: editor/plugins/script_editor_plugin.cpp msgid "Open Dominant Script On Scene Change" -msgstr "" +msgstr "장면 변경 ì‹œ 주요 스í¬ë¦½íŠ¸ 열기" #: editor/plugins/script_editor_plugin.cpp msgid "External" -msgstr "" +msgstr "외부" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Use External Editor" -msgstr "외부 ì—디터로 디버깅" +msgstr "외부 편집기 사용" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Exec Path" -msgstr "경로 내보내기" +msgstr "실행 경로" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Script Temperature Enabled" -msgstr "템플릿 íŒŒì¼ ì„ íƒ" +msgstr "스í¬ë¦½íŠ¸ ì˜¨ë„ í™œì„±í™”ë¨" #: editor/plugins/script_editor_plugin.cpp msgid "Highlight Current Script" -msgstr "" +msgstr "현재 스í¬ë¦½íŠ¸ ê°•ì¡° 표시" #: editor/plugins/script_editor_plugin.cpp msgid "Script Temperature History Size" -msgstr "" +msgstr "스í¬ë¦½íŠ¸ ì˜¨ë„ ê¸°ë¡ í¬ê¸°" #: editor/plugins/script_editor_plugin.cpp msgid "Current Script Background Color" msgstr "현재 스í¬ë¦½íŠ¸ ë°°ê²½ 색" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Group Help Pages" -msgstr "ì„ íƒ í•ëª© 묶기" +msgstr "그룹 ë„ì›€ë§ íŽ˜ì´ì§€" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Sort Scripts By" -msgstr "스í¬ë¦½íŠ¸ 만들기" +msgstr "스í¬ë¦½íŠ¸ ì •ë ¬ 기준" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "List Script Names As" -msgstr "스í¬ë¦½íŠ¸ ì´ë¦„:" +msgstr "스í¬ë¦½íŠ¸ ì´ë¦„ 나열" #: editor/plugins/script_editor_plugin.cpp msgid "Exec Flags" -msgstr "" +msgstr "실행 플래그" #: editor/plugins/script_editor_plugin.cpp msgid "Clear Recent Scripts" @@ -10823,9 +10723,8 @@ msgid "Find in Files..." msgstr "파ì¼ì—ì„œ 찾기..." #: editor/plugins/script_text_editor.cpp -#, fuzzy msgid "Replace in Files..." -msgstr "바꾸기..." +msgstr "파ì¼ì—ì„œ 바꾸기..." #: editor/plugins/script_text_editor.cpp msgid "Contextual Help" @@ -11029,15 +10928,13 @@ msgstr "ì´ë™" #. TRANSLATORS: Refers to changing the scale of a node in the 3D editor. #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Scaling:" -msgstr "í¬ê¸° ì¡°ì ˆ 중: " +msgstr "스케ì¼ë§:" #. TRANSLATORS: Refers to changing the position of a node in the 3D editor. #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Translating:" -msgstr "ì´ë™ 중: " +msgstr "ë²ˆì— ì¤‘:" #: editor/plugins/spatial_editor_plugin.cpp msgid "Rotating %s degrees." @@ -11185,13 +11082,14 @@ msgstr "시네마틱 미리보기" #: editor/plugins/spatial_editor_plugin.cpp msgid "(Not in GLES2)" -msgstr "" +msgstr "(GLES2ì—는 ì—†ìŒ)" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "" "Debug draw modes are only available when using the GLES3 renderer, not GLES2." -msgstr "GLES2 ë Œë”러ì—ì„œ ì‚¬ìš©í• ìˆ˜ 없습니다." +msgstr "" +"디버그 그리기 모드는 GLES2ê°€ ì•„ë‹Œ GLES3 ë Œë”러를 ì‚¬ìš©í• ë•Œë§Œ ì‚¬ìš©í• ìˆ˜ 있습니" +"다." #: editor/plugins/spatial_editor_plugin.cpp msgid "Freelook Left" @@ -11354,16 +11252,15 @@ msgstr "ìžìœ ì‹œì í† ê¸€" #: editor/plugins/spatial_editor_plugin.cpp msgid "Decrease Field of View" -msgstr "" +msgstr "시야 ê°ì†Œ" #: editor/plugins/spatial_editor_plugin.cpp msgid "Increase Field of View" -msgstr "" +msgstr "시야 확대" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Reset Field of View to Default" -msgstr "ë””í´íŠ¸ë¡œ ìž¬ì„¤ì •" +msgstr "시야를 기본값으로 ìž¬ì„¤ì •" #: editor/plugins/spatial_editor_plugin.cpp msgid "Snap Object to Floor" @@ -11484,16 +11381,15 @@ msgstr "후" #: editor/plugins/spatial_editor_plugin.cpp msgid "Manipulator Gizmo Size" -msgstr "" +msgstr "조작기 기즈모 í¬ê¸°" #: editor/plugins/spatial_editor_plugin.cpp msgid "Manipulator Gizmo Opacity" -msgstr "" +msgstr "조작기 기즈모 불투명ë„" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Show Viewport Rotation Gizmo" -msgstr "ë·° íšŒì „ ìž ê¸ˆ" +msgstr "ë·°í¬íŠ¸ íšŒì „ 기즈모 표시" #: editor/plugins/spatial_editor_plugin.cpp msgid "Unnamed Gizmo" @@ -11544,9 +11440,8 @@ msgid "Invalid geometry, can't replace by mesh." msgstr "ìž˜ëª»ëœ ì§€ì˜¤ë©”íŠ¸ë¦¬. 메시로 ëŒ€ì²´í• ìˆ˜ 없습니다." #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Convert to MeshInstance2D" -msgstr "Mesh2Dë¡œ 변환" +msgstr "메쉬ì¸ìŠ¤í„´ìŠ¤2Dë¡œ 변환" #: editor/plugins/sprite_editor_plugin.cpp msgid "Invalid geometry, can't create polygon." @@ -11577,19 +11472,16 @@ msgid "Sprite" msgstr "스프ë¼ì´íŠ¸" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Simplification:" -msgstr "단순화: " +msgstr "단순화:" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Shrink (Pixels):" -msgstr "수축 (픽셀): " +msgstr "축소(픽셀):" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Grow (Pixels):" -msgstr "성장 (픽셀): " +msgstr "확대(픽셀):" #: editor/plugins/sprite_editor_plugin.cpp msgid "Update Preview" @@ -11652,9 +11544,8 @@ msgid "New Animation" msgstr "새 ì• ë‹ˆë©”ì´ì…˜" #: editor/plugins/sprite_frames_editor_plugin.cpp -#, fuzzy msgid "Filter animations" -msgstr "메서드 í•„í„°" +msgstr "ì• ë‹ˆë©”ì´ì…˜ í•„í„°ë§" #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Speed:" @@ -11953,9 +11844,8 @@ msgstr "" "ë¬´ì‹œí•˜ê³ ë‹«ìœ¼ì‹œê² ìŠµë‹ˆê¹Œ?" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Remove Type" -msgstr "íƒ€ì¼ ì œê±°" +msgstr "ìœ í˜• ì œê±°" #: editor/plugins/theme_editor_plugin.cpp msgid "" @@ -11998,14 +11888,12 @@ msgstr "" "ì§ì ‘ ë˜ëŠ” 다른 테마ì—ì„œ ê°€ì ¸ì™€ì„œ í…Œë§ˆì— ë” ë§Žì€ í•ëª©ì„ 추가하세요." #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Add Theme Type" -msgstr "í•ëª© 타입 추가" +msgstr "테마 ìœ í˜• 추가" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Remove Theme Type" -msgstr "í•ëª© ì œê±°" +msgstr "테마 ìœ í˜• ì œê±°" #: editor/plugins/theme_editor_plugin.cpp msgid "Add Color Item" @@ -12120,9 +12008,8 @@ msgid "Select Another Theme Resource:" msgstr "다른 테마 리소스 ì„ íƒ:" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Theme Resource" -msgstr "리소스 ì´ë¦„ 바꾸기" +msgstr "테마 리소스" #: editor/plugins/theme_editor_plugin.cpp msgid "Another Theme" @@ -12134,22 +12021,19 @@ msgstr "타입 추가" #: editor/plugins/theme_editor_plugin.cpp msgid "Filter the list of types or create a new custom type:" -msgstr "" +msgstr "ìœ í˜• 목ë¡ì„ í•„í„°ë§í•˜ê±°ë‚˜ 새 ì‚¬ìš©ìž ì •ì˜ ìœ í˜•ì„ ë§Œë“œì„¸ìš”:" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Available Node-based types:" -msgstr "사용 가능한 프로필:" +msgstr "사용 가능한 노드 기반 ìœ í˜•:" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Type name is empty!" -msgstr "íŒŒì¼ ì´ë¦„ì´ ë¹„ì—ˆìŠµë‹ˆë‹¤." +msgstr "ìœ í˜• ì´ë¦„ì´ ë¹„ì–´ 있습니다!" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Are you sure you want to create an empty type?" -msgstr "ë‘ ê°œ ì´ìƒì˜ 프로ì 트를 ì—¬ì‹œê² ìŠµë‹ˆê¹Œ?" +msgstr "빈 ìœ í˜•ì„ ë§Œë“œì‹œê² ìŠµë‹ˆê¹Œ?" #: editor/plugins/theme_editor_plugin.cpp msgid "Confirm Item Rename" @@ -12180,14 +12064,12 @@ msgid "Add Item Type" msgstr "í•ëª© 타입 추가" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Set Variation Base Type" -msgstr "변수 타입 ì„¤ì •" +msgstr "변형 기본 ìœ í˜• ì„¤ì •" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Set Base Type" -msgstr "기본 타입 바꾸기" +msgstr "기본 ìœ í˜• ì„¤ì •" #: editor/plugins/theme_editor_plugin.cpp msgid "Show Default" @@ -12207,13 +12089,13 @@ msgstr "ëª¨ë“ ë””í´íŠ¸ 타입 í•ëª©ì„ 오버ë¼ì´ë“œí•©ë‹ˆë‹¤." #: editor/plugins/theme_editor_plugin.cpp msgid "Select the variation base type from a list of available types." -msgstr "" +msgstr "사용 가능한 ìœ í˜• 목ë¡ì—ì„œ 변형 기본 ìœ í˜•ì„ ì„ íƒí•©ë‹ˆë‹¤." #: editor/plugins/theme_editor_plugin.cpp msgid "" "A type associated with a built-in class cannot be marked as a variation of " "another type." -msgstr "" +msgstr "내장 í´ëž˜ìŠ¤ì™€ ì—°ê²°ëœ ìœ í˜•ì€ ë‹¤ë¥¸ ìœ í˜•ì˜ ë³€í˜•ìœ¼ë¡œ í‘œì‹œí• ìˆ˜ 없습니다." #: editor/plugins/theme_editor_plugin.cpp msgid "Theme:" @@ -12450,55 +12332,46 @@ msgid "Clear Transform" msgstr "변형 지우기" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Tile Map" -msgstr "타ì¼ë§µ ì¹ í•˜ê¸°" +msgstr "íƒ€ì¼ ë§µ" #: editor/plugins/tile_map_editor_plugin.cpp #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Palette Min Width" -msgstr "" +msgstr "íŒ”ë ˆíŠ¸ 최소 너비" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Palette Item H Separation" -msgstr "ì´ë¦„ 있는 구분ìž" +msgstr "íŒ”ë ˆíŠ¸ í•ëª© H 분리" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Show Tile Names" -msgstr "ëª¨ë“ ë¡œì¼€ì¼ ë³´ì´ê¸°" +msgstr "íƒ€ì¼ ì´ë¦„ 표시" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Show Tile Ids" -msgstr "ìž ë³´ì´ê¸°" +msgstr "íƒ€ì¼ ì•„ì´ë”” 표시" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Sort Tiles By Name" -msgstr "íŒŒì¼ ì •ë ¬" +msgstr "ì´ë¦„별로 íƒ€ì¼ ì •ë ¬" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Bucket Fill Preview" -msgstr "버킷 채우기" +msgstr "버킷 채우기 미리보기" #: editor/plugins/tile_map_editor_plugin.cpp #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Editor Side" -msgstr "ì—디터" +msgstr "편집기 사ì´ë“œ" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Display Grid" -msgstr "오버드로 표시" +msgstr "그리드 표시" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Axis Color" -msgstr "ìƒ‰ìƒ ì„ íƒ" +msgstr "축 색ìƒ" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Add Texture(s) to TileSet." @@ -12560,7 +12433,7 @@ msgstr "ì½œë¦¬ì „" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Occlusion" -msgstr "오í´ë£¨ì „" +msgstr "ì°¨í" #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/touch_screen_button.cpp msgid "Bitmask" @@ -12835,7 +12708,6 @@ msgid "This property can't be changed." msgstr "ì´ ì†ì„±ì€ 바꿀 수 없습니다." #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Snap Options" msgstr "스냅 ì„¤ì •" @@ -12845,9 +12717,10 @@ msgstr "스냅 ì„¤ì •" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "오프셋" @@ -12860,14 +12733,12 @@ msgstr "단계" #: editor/plugins/tile_set_editor_plugin.cpp #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Separation" -msgstr "간격:" +msgstr "분리" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Tile" -msgstr "ì„ íƒ" +msgstr "ì„ íƒí•œ 타ì¼" #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/cpu_particles_2d.cpp #: scene/2d/light_2d.cpp scene/2d/line_2d.cpp scene/2d/mesh_instance_2d.cpp @@ -12876,14 +12747,12 @@ msgstr "ì„ íƒ" #: scene/gui/nine_patch_rect.cpp scene/gui/texture_rect.cpp #: scene/resources/material.cpp scene/resources/sky.cpp #: scene/resources/style_box.cpp scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Texture" -msgstr "í…스트" +msgstr "í…스ì³" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Tex Offset" -msgstr "ê²©ìž ì˜¤í”„ì…‹:" +msgstr "í…스 오프셋" #: editor/plugins/tile_set_editor_plugin.cpp modules/csg/csg_shape.cpp #: scene/2d/canvas_item.cpp scene/2d/particles_2d.cpp @@ -12893,112 +12762,95 @@ msgstr "머티리얼" #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/canvas_item.cpp #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp scene/resources/style_box.cpp -#, fuzzy msgid "Modulate" -msgstr "만들기" +msgstr "변조" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Tile Mode" -msgstr "모드 í† ê¸€" +msgstr "íƒ€ì¼ ëª¨ë“œ" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Autotile Bitmask Mode" -msgstr "비트 ë§ˆìŠ¤í¬ ëª¨ë“œ" +msgstr "ì˜¤í† íƒ€ì¼ ë¹„íŠ¸ë§ˆìŠ¤í¬ ëª¨ë“œ" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Subtile Size" -msgstr "ìœ¤ê³½ì„ í¬ê¸°:" +msgstr "ì„œë¸Œíƒ€ì¼ í¬ê¸°" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Subtile Spacing" -msgstr "ì• ë‹ˆë©”ì´ì…˜ 반복" +msgstr "ì„œë¸Œíƒ€ì¼ ê°„ê²©" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Occluder Offset" -msgstr "Occluder í´ë¦¬ê³¤ 만들기" +msgstr "오í´ë£¨ë” 오프셋" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Navigation Offset" -msgstr "내비게ì´ì…˜ 모드" +msgstr "내비게ì´ì…˜ 오프셋" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Shape Offset" -msgstr "오프셋:" +msgstr "모양 오프셋" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Shape Transform" -msgstr "변형" +msgstr "모양 변형" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Collision" -msgstr "ì½œë¦¬ì „" +msgstr "ì„ íƒëœ 충ëŒ" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Collision One Way" -msgstr "ì„ íƒ ì˜ì—만" +msgstr "ì„ íƒëœ 단방향 충ëŒ" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Collision One Way Margin" -msgstr "ì½œë¦¬ì „ 모드" +msgstr "ì„ íƒëœ 단방향 ì¶©ëŒ ì—¬ë°±" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Navigation" -msgstr "내비게ì´ì…˜ ë³´ì´ê¸°" +msgstr "ì„ íƒí•œ 내비게ì´ì…˜" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Occlusion" -msgstr "ì„ íƒ" +msgstr "ì„ íƒëœ ì°¨í" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Tileset Script" -msgstr "스í¬ë¦½íŠ¸ í•„í„°" +msgstr "타ì¼ì…‹ 스í¬ë¦½íŠ¸" #: editor/plugins/tile_set_editor_plugin.cpp msgid "TileSet" msgstr "타ì¼ì…‹" #: editor/plugins/version_control_editor_plugin.cpp -#, fuzzy msgid "No VCS plugins are available." -msgstr "ì´ìš©í• 수 있는 ë²„ì „ 관리 시스템(VCS)ì´ ì—†ìŠµë‹ˆë‹¤." +msgstr "VCS 플러그ì¸ì„ ì‚¬ìš©í• ìˆ˜ 없습니다." #: editor/plugins/version_control_editor_plugin.cpp msgid "" "Remote settings are empty. VCS features that use the network may not work." msgstr "" +"ì›ê²© ì„¤ì •ì´ ë¹„ì–´ 있습니다. 네트워í¬ë¥¼ 사용하는 VCS ê¸°ëŠ¥ì´ ìž‘ë™í•˜ì§€ ì•Šì„ ìˆ˜ 있" +"습니다." #: editor/plugins/version_control_editor_plugin.cpp -#, fuzzy msgid "No commit message was provided." -msgstr "ì´ë¦„ì„ ì œê³µí•˜ì§€ 않았습니다." +msgstr "커밋 메시지가 ì œê³µë˜ì§€ 않았습니다." #: editor/plugins/version_control_editor_plugin.cpp msgid "Commit" msgstr "커밋" #: editor/plugins/version_control_editor_plugin.cpp -#, fuzzy msgid "Staged Changes" -msgstr "ì…°ì´ë” 바꾸기:" +msgstr "단계ì 변경" #: editor/plugins/version_control_editor_plugin.cpp -#, fuzzy msgid "Unstaged Changes" -msgstr "ì…°ì´ë” 바꾸기:" +msgstr "비단계ì 변경" #: editor/plugins/version_control_editor_plugin.cpp msgid "Commit:" @@ -13006,26 +12858,23 @@ msgstr "커밋:" #: editor/plugins/version_control_editor_plugin.cpp msgid "Date:" -msgstr "" +msgstr "ë‚ ì§œ:" #: editor/plugins/version_control_editor_plugin.cpp -#, fuzzy msgid "Subtitle:" -msgstr "하위 트리" +msgstr "ë¶€ì œ:" #: editor/plugins/version_control_editor_plugin.cpp msgid "Do you want to remove the %s branch?" -msgstr "" +msgstr "%s 분기를 ì œê±°í•˜ì‹œê² ìŠµë‹ˆê¹Œ?" #: editor/plugins/version_control_editor_plugin.cpp -#, fuzzy msgid "Do you want to remove the %s remote?" -msgstr "ë‘ ê°œ ì´ìƒì˜ 프로ì 트를 ì—¬ì‹œê² ìŠµë‹ˆê¹Œ?" +msgstr "%s 리모트를 ì œê±°í•˜ì‹œê² ìŠµë‹ˆê¹Œ?" #: editor/plugins/version_control_editor_plugin.cpp -#, fuzzy msgid "Apply" -msgstr "ìž¬ì„¤ì • ì ìš©" +msgstr "ì ìš©" #: editor/plugins/version_control_editor_plugin.cpp msgid "Version Control System" @@ -14037,11 +13886,13 @@ msgstr "실행가능" #: editor/project_export.cpp msgid "Export the project for all the presets defined." -msgstr "" +msgstr "ì •ì˜ëœ ëª¨ë“ ì‚¬ì „ ì„¤ì •ì˜ í”„ë¡œì 트를 내보냅니다." #: editor/project_export.cpp msgid "All presets must have an export path defined for Export All to work." msgstr "" +"ëª¨ë“ ì‚¬ì „ ì„¤ì •ì—는 ëª¨ë‘ ë‚´ë³´ë‚´ê¸°ê°€ ìž‘ë™í•˜ë„ë¡ ì •ì˜ëœ 내보내기 경로가 있어야 " +"합니다." #: editor/project_export.cpp msgid "Delete preset '%s'?" @@ -14152,11 +14003,12 @@ msgid "" "Note: Encryption key needs to be stored in the binary,\n" "you need to build the export templates from source." msgstr "" +"ì°¸ê³ : 암호화 키는 ë°”ì´ë„ˆë¦¬ì— ì €ìž¥ë˜ì–´ì•¼ 하며,\n" +"소스ì—ì„œ 내보내기 í…œí”Œë¦¿ì„ ë¹Œë“œí•´ì•¼ 합니다." #: editor/project_export.cpp -#, fuzzy msgid "More Info..." -msgstr "여기로 ì´ë™..." +msgstr "추가 ì •ë³´..." #: editor/project_export.cpp msgid "Export PCK/Zip..." @@ -14183,18 +14035,16 @@ msgid "ZIP File" msgstr "ZIP 파ì¼" #: editor/project_export.cpp -#, fuzzy msgid "Godot Project Pack" -msgstr "Godot 게임 팩" +msgstr "Godot 프로ì 트 팩" #: editor/project_export.cpp msgid "Export templates for this platform are missing:" msgstr "ì´ í”Œëž«í¼ì— 대한 내보내기 í…œí”Œë¦¿ì´ ëˆ„ë½ë¨:" #: editor/project_export.cpp -#, fuzzy msgid "Project Export" -msgstr "프로ì 트 창립ìž" +msgstr "프로ì 트 내보내기" #: editor/project_export.cpp msgid "Manage Export Templates" @@ -14260,16 +14110,17 @@ msgid "Invalid project path (changed anything?)." msgstr "ìž˜ëª»ëœ í”„ë¡œì 트 경로 (무언가를 변경하셨습니까?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "프로ì 트 경로ì—ì„œ project.godotì„ ë¶ˆëŸ¬ì˜¬ 수 없습니다 (오류 %d). 누ë½ë˜ê±°ë‚˜ ì†" "ìƒëœ 모양입니다." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "프로ì 트 경로ì—ì„œ project.godot 파ì¼ì„ íŽ¸ì§‘í• ìˆ˜ 없습니다." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "'%s'ì—ì„œ 프로ì 트를 ì—´ 수 없습니다." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -14501,7 +14352,6 @@ msgstr "" #. TRANSLATORS: This refers to the application where users manage their Godot projects. #: editor/project_manager.cpp -#, fuzzy msgctxt "Application" msgid "Project Manager" msgstr "프로ì 트 ë§¤ë‹ˆì €" @@ -15255,6 +15105,9 @@ msgid "" "To save this branch into its own scene, open the original scene, right click " "on this branch, and select \"Save Branch as Scene\"." msgstr "" +"ì´ë¯¸ ì¸ìŠ¤í„´ìŠ¤í™”ëœ ìž¥ë©´ì˜ í•˜ìœ„ í•ëª©ì¸ 분기를 ì €ìž¥í• ìˆ˜ 없습니다.\n" +"ì´ ë¶„ê¸°ë¥¼ ìžì²´ ìž¥ë©´ì— ì €ìž¥í•˜ë ¤ë©´ ì›ë³¸ ìž¥ë©´ì„ ì—´ê³ ì´ ë¶„ê¸°ë¥¼ 마우스 오른쪽 버" +"튼으로 í´ë¦í•œ ë‹¤ìŒ \"분기를 장면으로 ì €ìž¥\"ì„ ì„ íƒí•˜ì„¸ìš”." #: editor/scene_tree_dock.cpp msgid "" @@ -15262,6 +15115,9 @@ msgid "" "To save this branch into its own scene, open the original scene, right click " "on this branch, and select \"Save Branch as Scene\"." msgstr "" +"ìƒì†ëœ ìž¥ë©´ì˜ ì¼ë¶€ì¸ 분기를 ì €ìž¥í• ìˆ˜ 없습니다.\n" +"ì´ ë¶„ê¸°ë¥¼ ìžì²´ ìž¥ë©´ì— ì €ìž¥í•˜ë ¤ë©´ ì›ë³¸ ìž¥ë©´ì„ ì—´ê³ ì´ ë¶„ê¸°ë¥¼ 마우스 오른쪽 버" +"튼으로 í´ë¦í•œ ë‹¤ìŒ \"분기를 장면으로 ì €ìž¥\"ì„ ì„ íƒí•˜ì„¸ìš”." #: editor/scene_tree_dock.cpp msgid "Save New Scene As..." @@ -15291,9 +15147,8 @@ msgid "Enable Scene Unique Name(s)" msgstr "씬 ê³ ìœ ì´ë¦„ 활성화" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Unique names already used by another node in the scene:" -msgstr "ì´ë¯¸ 다른 함수/변수/시그ë„ë¡œ ì‚¬ìš©ëœ ì´ë¦„:" +msgstr "ìž¥ë©´ì˜ ë‹¤ë¥¸ 노드ì—ì„œ ì´ë¯¸ 사용 ì¤‘ì¸ ê³ ìœ ì´ë¦„:" #: editor/scene_tree_dock.cpp msgid "Disable Scene Unique Name(s)" @@ -15372,7 +15227,7 @@ msgstr "하위 리소스" #: editor/scene_tree_dock.cpp msgid "Access as Scene Unique Name" -msgstr "" +msgstr "장면 ê³ ìœ ì´ë¦„으로 액세스" #: editor/scene_tree_dock.cpp msgid "Clear Inheritance" @@ -15469,18 +15324,16 @@ msgid "Clear Inheritance? (No Undo!)" msgstr "ìƒì†ì„ 지울까요? (ë˜ëŒë¦´ 수 없습니다!)" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Show Scene Tree Root Selection" -msgstr "ì„ íƒ í•ëª© 중앙으로" +msgstr "장면 트리 루트 ì„ íƒ í‘œì‹œ" #: editor/scene_tree_dock.cpp msgid "Derive Script Globals By Name" -msgstr "" +msgstr "ì´ë¦„으로 스í¬ë¦½íŠ¸ ì „ì— íŒŒìƒ" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Use Favorites Root Selection" -msgstr "í”„ë ˆìž„ ì„ íƒ" +msgstr "ì¦ê²¨ì°¾ê¸° 루트 ì„ íƒ ì‚¬ìš©" #: editor/scene_tree_editor.cpp msgid "Toggle Visible" @@ -15512,6 +15365,9 @@ msgid "" "with the '%s' prefix in a node path.\n" "Click to disable this." msgstr "" +"ì´ ë…¸ë“œëŠ” 노드 경로ì—ì„œ '%s' ì ‘ë‘사를 ì•žì— ë¶™ì—¬ ìž¥ë©´ì˜ ì–´ëŠ ê³³ì—서나 액세스" +"í• ìˆ˜ 있습니다.\n" +"ë¹„í™œì„±í™”í•˜ë ¤ë©´ í´ë¦í•˜ì„¸ìš”." #: editor/scene_tree_editor.cpp msgid "" @@ -15575,7 +15431,7 @@ msgstr "ìž˜ëª»ëœ ë…¸ë“œ ì´ë¦„입니다. ë‹¤ìŒ ë¬¸ìžëŠ” 허용하지 ì•ŠìŠµë‹ #: editor/scene_tree_editor.cpp msgid "Another node already uses this unique name in the scene." -msgstr "" +msgstr "다른 노드가 ì´ë¯¸ 장면ì—ì„œ ì´ ê³ ìœ í•œ ì´ë¦„ì„ ì‚¬ìš©í•˜ê³ ìžˆìŠµë‹ˆë‹¤." #: editor/scene_tree_editor.cpp msgid "Rename Node" @@ -15802,21 +15658,20 @@ msgid "Stack Frames" msgstr "ìŠ¤íƒ í”„ë ˆìž„" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Filter stack variables" -msgstr "íƒ€ì¼ í•„í„°" +msgstr "ìŠ¤íƒ ë³€ìˆ˜ í•„í„°ë§" #: editor/script_editor_debugger.cpp msgid "Auto Switch To Remote Scene Tree" -msgstr "" +msgstr "ì›ê²© 장면 트리로 ìžë™ ì „í™˜" #: editor/script_editor_debugger.cpp msgid "Remote Scene Tree Refresh Interval" -msgstr "" +msgstr "ì›ê²© 장면 트리 새로 ê³ ì¹¨ 간격" #: editor/script_editor_debugger.cpp msgid "Remote Inspect Refresh Interval" -msgstr "" +msgstr "ì›ê²© 검사 새로 ê³ ì¹¨ 간격" #: editor/script_editor_debugger.cpp msgid "Network Profiler" @@ -15914,7 +15769,7 @@ msgstr "ë¼ì´íŠ¸ 반경 바꾸기" #: editor/spatial_editor_gizmos.cpp msgid "Stream Player 3D" -msgstr "" +msgstr "스트림 í”Œë ˆì´ì–´ 3D" #: editor/spatial_editor_gizmos.cpp msgid "Change AudioStreamPlayer3D Emission Angle" @@ -15924,7 +15779,7 @@ msgstr "AudioStreamPlayer3D 방출 ê°ë„ 바꾸기" #: platform/osx/export/export.cpp #: scene/resources/default_theme/default_theme.cpp msgid "Camera" -msgstr "" +msgstr "ì¹´ë©”ë¼" #: editor/spatial_editor_gizmos.cpp msgid "Change Camera FOV" @@ -15936,7 +15791,7 @@ msgstr "ì¹´ë©”ë¼ í¬ê¸° 바꾸기" #: editor/spatial_editor_gizmos.cpp msgid "Visibility Notifier" -msgstr "" +msgstr "가시성 알리미" #: editor/spatial_editor_gizmos.cpp msgid "Change Notifier AABB" @@ -15947,18 +15802,16 @@ msgid "Change Particles AABB" msgstr "íŒŒí‹°í´ AABB 바꾸기" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Reflection Probe" -msgstr "ì†ì„± ì„ íƒ" +msgstr "반사 프로브" #: editor/spatial_editor_gizmos.cpp msgid "Change Probe Extents" msgstr "프로브 범위 바꾸기" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "GI Probe" -msgstr "GI 프로브 굽기" +msgstr "GI 프로브" #: editor/spatial_editor_gizmos.cpp msgid "Baked Indirect Light" @@ -15993,57 +15846,52 @@ msgid "Change Ray Shape Length" msgstr "ê´‘ì„ ëª¨ì–‘ ê¸¸ì´ ë°”ê¾¸ê¸°" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Navigation Edge" -msgstr "내비게ì´ì…˜ 모드" +msgstr "내비게ì´ì…˜ 엣지" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Navigation Edge Disabled" -msgstr "내비게ì´ì…˜ 모드" +msgstr "내비게ì´ì…˜ 엣지 비활성화" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Navigation Solid" -msgstr "내비게ì´ì…˜ 모드" +msgstr "내비게ì´ì…˜ 솔리드" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Navigation Solid Disabled" -msgstr "내비게ì´ì…˜ 모드" +msgstr "내비게ì´ì…˜ 솔리드 비활성화ë¨" #: editor/spatial_editor_gizmos.cpp msgid "Joint Body A" -msgstr "" +msgstr "ì¡°ì¸íŠ¸ 바디 A" #: editor/spatial_editor_gizmos.cpp msgid "Joint Body B" -msgstr "" +msgstr "ì¡°ì¸íŠ¸ 바디 B" #: editor/spatial_editor_gizmos.cpp msgid "Room Edge" -msgstr "" +msgstr "ë°© 가장ìžë¦¬" #: editor/spatial_editor_gizmos.cpp msgid "Room Overlap" -msgstr "" +msgstr "룸 겹침" #: editor/spatial_editor_gizmos.cpp msgid "Set Room Point Position" -msgstr "룸 ì 위치 ì„¤ì •" +msgstr "룸 í¬ì¸íŠ¸ 위치 ì„¤ì •" #: editor/spatial_editor_gizmos.cpp scene/3d/portal.cpp -#, fuzzy msgid "Portal Margin" -msgstr "여백 ì„¤ì •" +msgstr "í¬í„¸ 여백" #: editor/spatial_editor_gizmos.cpp msgid "Portal Edge" -msgstr "" +msgstr "í¬í„¸ 엣지" #: editor/spatial_editor_gizmos.cpp msgid "Portal Arrow" -msgstr "" +msgstr "í¬í„¸ ì• ë¡œìš°" #: editor/spatial_editor_gizmos.cpp msgid "Set Portal Point Position" @@ -16051,18 +15899,16 @@ msgstr "í¬í„¸ ì 위치 ì„¤ì •" #: editor/spatial_editor_gizmos.cpp msgid "Portal Front" -msgstr "" +msgstr "í¬í„¸ ì „ë©´" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Portal Back" -msgstr "뒤로" +msgstr "í¬í„¸ 뒤로" #: editor/spatial_editor_gizmos.cpp scene/2d/light_occluder_2d.cpp #: scene/2d/tile_map.cpp -#, fuzzy msgid "Occluder" -msgstr "ì–´í´ë£¨ì „ 모드" +msgstr "오í´ë£¨ë”" #: editor/spatial_editor_gizmos.cpp msgid "Set Occluder Sphere Radius" @@ -16073,109 +15919,98 @@ msgid "Set Occluder Sphere Position" msgstr "ì–´í´ë£¨ë” 구체 위치 ì„¤ì •" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Set Occluder Polygon Point Position" -msgstr "í¬í„¸ ì 위치 ì„¤ì •" +msgstr "오í´ë£¨ë” í´ë¦¬ê³¤ í¬ì¸íŠ¸ 위치 ì„¤ì •" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Set Occluder Hole Point Position" -msgstr "ê³¡ì„ ì 위치 ì„¤ì •" +msgstr "오í´ë£¨ë” 홀 í¬ì¸íŠ¸ 위치 ì„¤ì •" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Occluder Polygon Front" -msgstr "Occluder í´ë¦¬ê³¤ 만들기" +msgstr "오í´ë£¨ë” í´ë¦¬ê³¤ í”„ë¡ íŠ¸" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Occluder Polygon Back" -msgstr "Occluder í´ë¦¬ê³¤ 만들기" +msgstr "오í´ë£¨ë” í´ë¦¬ê³¤ ë°±" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Occluder Hole" -msgstr "Occluder í´ë¦¬ê³¤ 만들기" +msgstr "오í´ë£¨ë” 홀" #: main/main.cpp msgid "Godot Physics" -msgstr "" +msgstr "Godot 물리" #: main/main.cpp servers/physics_2d/physics_2d_server_sw.cpp #: servers/visual/visual_server_scene.cpp msgid "Use BVH" -msgstr "" +msgstr "BVH 사용" #: main/main.cpp servers/physics_2d/physics_2d_server_sw.cpp #: servers/visual/visual_server_scene.cpp -#, fuzzy msgid "BVH Collision Margin" -msgstr "ì½œë¦¬ì „ 모드" +msgstr "BVH ì¶©ëŒ ì—¬ë°±" #: main/main.cpp -#, fuzzy msgid "Crash Handler" -msgstr "핸들 ì„¤ì •" +msgstr "ì¶©ëŒ ì²˜ë¦¬ê¸°" #: main/main.cpp -#, fuzzy msgid "Multithreaded Server" -msgstr "다중 노드 ì„¤ì •" +msgstr "ë©€í‹°ìŠ¤ë ˆë“œ 서버" #: main/main.cpp msgid "RID Pool Prealloc" -msgstr "" +msgstr "RID í’€ ì‚¬ì „ í• ë‹¹" #: main/main.cpp -#, fuzzy msgid "Debugger stdout" -msgstr "디버거" +msgstr "디버거 표준 ì¶œë ¥" #: main/main.cpp msgid "Max Chars Per Second" -msgstr "" +msgstr "초당 최대 문ìž" #: main/main.cpp msgid "Max Messages Per Frame" -msgstr "" +msgstr "í”„ë ˆìž„ë‹¹ 최대 메시지" #: main/main.cpp msgid "Max Errors Per Second" -msgstr "" +msgstr "초당 최대 오류" #: main/main.cpp msgid "Max Warnings Per Second" -msgstr "" +msgstr "초당 최대 ê²½ê³ " #: main/main.cpp msgid "Flush stdout On Print" -msgstr "" +msgstr "ì¸ì‡„ ì‹œ stdout 플러시" #: main/main.cpp servers/visual_server.cpp msgid "Logging" -msgstr "" +msgstr "로깅" #: main/main.cpp msgid "File Logging" -msgstr "" +msgstr "íŒŒì¼ ë¡œê¹…" #: main/main.cpp -#, fuzzy msgid "Enable File Logging" -msgstr "í•„í„° 활성화" +msgstr "íŒŒì¼ ë¡œê¹… 활성화" #: main/main.cpp -#, fuzzy msgid "Log Path" -msgstr "경로 복사" +msgstr "로그 경로" #: main/main.cpp msgid "Max Log Files" -msgstr "" +msgstr "최대 로그 파ì¼" #: main/main.cpp msgid "Driver" -msgstr "" +msgstr "ë“œë¼ì´ë²„" #: main/main.cpp msgid "Driver Name" @@ -16183,85 +16018,77 @@ msgstr "ë“œë¼ì´ë²„ ì´ë¦„" #: main/main.cpp msgid "Fallback To GLES2" -msgstr "" +msgstr "GLES2ë¡œ 대체" #: main/main.cpp msgid "Use Nvidia Rect Flicker Workaround" -msgstr "" +msgstr "Nvidia Rect 깜박임 í•´ê²° 방법 사용" #: main/main.cpp msgid "DPI" -msgstr "" +msgstr "DPI" #: main/main.cpp msgid "Allow hiDPI" -msgstr "" +msgstr "hiDPI 허용" #: main/main.cpp -#, fuzzy msgid "V-Sync" -msgstr "ë™ê¸°í™”" +msgstr "수ì§ë™ê¸°í™”" #: main/main.cpp -#, fuzzy msgid "Use V-Sync" -msgstr "스냅 사용" +msgstr "V-Sync 사용" #: main/main.cpp msgid "Per Pixel Transparency" -msgstr "" +msgstr "픽셀당 투명ë„" #: main/main.cpp msgid "Allowed" -msgstr "" +msgstr "허용ë¨" #: main/main.cpp msgid "Intended Usage" -msgstr "" +msgstr "사용 목ì " #: main/main.cpp -#, fuzzy msgid "Framebuffer Allocation" -msgstr "í”„ë ˆìž„ ì„ íƒ" +msgstr "í”„ë ˆìž„ ë²„í¼ í• ë‹¹" #: main/main.cpp platform/uwp/os_uwp.cpp -#, fuzzy msgid "Energy Saving" -msgstr "ì €ìž¥ 중 오류" +msgstr "ì—너지 ì ˆì•½" #: main/main.cpp msgid "Threads" -msgstr "" +msgstr "ìŠ¤ë ˆë“œ" #: main/main.cpp servers/physics_2d/physics_2d_server_wrap_mt.h -#, fuzzy msgid "Thread Model" -msgstr "모드 í† ê¸€" +msgstr "ìŠ¤ë ˆë“œ 모ë¸" #: main/main.cpp msgid "Thread Safe BVH" -msgstr "" +msgstr "ìŠ¤ë ˆë“œ 세ì´í”„ BVH" #: main/main.cpp msgid "Handheld" -msgstr "" +msgstr "휴대용" #: main/main.cpp platform/javascript/export/export.cpp #: platform/uwp/export/export.cpp -#, fuzzy msgid "Orientation" -msgstr "온ë¼ì¸ 문서" +msgstr "오리엔테ì´ì…˜" #: main/main.cpp scene/gui/scroll_container.cpp scene/gui/text_edit.cpp #: scene/main/scene_tree.cpp scene/register_scene_types.cpp -#, fuzzy msgid "Common" -msgstr "커뮤니티" +msgstr "ì¼ë°˜" #: main/main.cpp -#, fuzzy msgid "Physics FPS" -msgstr "물리 í”„ë ˆìž„ %" +msgstr "물리 FPS" #: main/main.cpp msgid "Force FPS" @@ -16269,177 +16096,163 @@ msgstr "FPS ê°•ì œ" #: main/main.cpp msgid "Enable Pause Aware Picking" -msgstr "" +msgstr "ì¼ì‹œ 중지 ì¸ì‹ ì„ íƒ í™œì„±í™”" #: main/main.cpp scene/gui/item_list.cpp scene/gui/popup_menu.cpp #: scene/gui/scroll_container.cpp scene/gui/text_edit.cpp scene/gui/tree.cpp #: scene/main/viewport.cpp scene/register_scene_types.cpp msgid "GUI" -msgstr "" +msgstr "GUI" #: main/main.cpp msgid "Drop Mouse On GUI Input Disabled" -msgstr "" +msgstr "GUI ìž…ë ¥ ì‹œ 마우스 놓기 비활성화ë¨" #: main/main.cpp msgid "stdout" -msgstr "" +msgstr "표준 ì¶œë ¥" #: main/main.cpp msgid "Print FPS" -msgstr "" +msgstr "FPS ì¸ì‡„" #: main/main.cpp msgid "Verbose stdout" -msgstr "" +msgstr "ìžì„¸í•œ 표준 ì¶œë ¥" #: main/main.cpp scene/main/scene_tree.cpp scene/resources/multimesh.cpp -#, fuzzy msgid "Physics Interpolation" -msgstr "ë³´ê°„ 모드" +msgstr "물리 ë³´ê°„" #: main/main.cpp -#, fuzzy msgid "Enable Warnings" -msgstr "í•„í„° 활성화" +msgstr "ê²½ê³ í™œì„±í™”" #: main/main.cpp -#, fuzzy msgid "Frame Delay Msec" -msgstr "í”„ë ˆìž„ ì„ íƒ" +msgstr "í”„ë ˆìž„ 지연 Msec" #: main/main.cpp msgid "Low Processor Mode" -msgstr "" +msgstr "ë‚®ì€ í”„ë¡œì„¸ì„œ 모드" #: main/main.cpp msgid "Delta Sync After Draw" -msgstr "" +msgstr "그리기 후 ë¸íƒ€ ë™ê¸°í™”" #: main/main.cpp msgid "iOS" -msgstr "" +msgstr "iOS" #: main/main.cpp msgid "Hide Home Indicator" -msgstr "" +msgstr "홈 표시기 숨기기" #: main/main.cpp -#, fuzzy msgid "Input Devices" -msgstr "ëª¨ë“ ê¸°ê¸°" +msgstr "ìž…ë ¥ 장치" #: main/main.cpp -#, fuzzy msgid "Pointing" -msgstr "ì " +msgstr "í¬ì¸íŒ…" #: main/main.cpp msgid "Touch Delay" -msgstr "" +msgstr "터치 지연" #: main/main.cpp servers/visual_server.cpp msgid "GLES3" -msgstr "" +msgstr "GLES3" #: main/main.cpp servers/visual_server.cpp -#, fuzzy msgid "Shaders" msgstr "ì…°ì´ë”" #: main/main.cpp msgid "Debug Shader Fallbacks" -msgstr "" +msgstr "ì…°ì´ë” í´ë°± 디버그" #: main/main.cpp scene/3d/baked_lightmap.cpp scene/3d/camera.cpp #: scene/3d/world_environment.cpp scene/main/scene_tree.cpp #: scene/resources/world.cpp -#, fuzzy msgid "Environment" -msgstr "환경 보기" +msgstr "환경" #: main/main.cpp msgid "Default Clear Color" -msgstr "" +msgstr "기본 í´ë¦¬ì–´ 컬러" #: main/main.cpp msgid "Boot Splash" -msgstr "" +msgstr "부트 스플래쉬" #: main/main.cpp -#, fuzzy msgid "Show Image" -msgstr "본 ë³´ì´ê¸°" +msgstr "ì´ë¯¸ì§€ 표시" #: main/main.cpp msgid "Image" -msgstr "" +msgstr "ì˜ìƒ" #: main/main.cpp msgid "Fullsize" -msgstr "" +msgstr "ì „ì²´ í¬ê¸°" #: main/main.cpp scene/resources/dynamic_font.cpp msgid "Use Filter" msgstr "í•„í„° 사용" #: main/main.cpp scene/resources/style_box.cpp -#, fuzzy msgid "BG Color" -msgstr "색ìƒ" +msgstr "배경색" #: main/main.cpp -#, fuzzy msgid "macOS Native Icon" -msgstr "íƒ€ì¼ ì•„ì´ì½˜ ì„¤ì •" +msgstr "맥OS 네ì´í‹°ë¸Œ ì•„ì´ì½˜" #: main/main.cpp msgid "Windows Native Icon" -msgstr "" +msgstr "윈ë„ìš° 네ì´í‹°ë¸Œ ì•„ì´ì½˜" #: main/main.cpp msgid "Buffering" -msgstr "" +msgstr "버í¼ë§" #: main/main.cpp msgid "Agile Event Flushing" -msgstr "" +msgstr "ì• ìžì¼ ì´ë²¤íŠ¸ 플러싱" #: main/main.cpp msgid "Emulate Touch From Mouse" -msgstr "" +msgstr "마우스 터치 ì—ë®¬ë ˆì´íŠ¸" #: main/main.cpp msgid "Emulate Mouse From Touch" -msgstr "" +msgstr "터치로 마우스 ì—ë®¬ë ˆì´íŠ¸" #: main/main.cpp -#, fuzzy msgid "Mouse Cursor" -msgstr "마우스 버튼" +msgstr "마우스 커서" #: main/main.cpp -#, fuzzy msgid "Custom Image" -msgstr "노드 잘ë¼ë‚´ê¸°" +msgstr "ì‚¬ìš©ìž ì •ì˜ ì´ë¯¸ì§€" #: main/main.cpp msgid "Custom Image Hotspot" -msgstr "" +msgstr "ì‚¬ìš©ìž ì •ì˜ ì´ë¯¸ì§€ 핫스팟" #: main/main.cpp msgid "Tooltip Position Offset" msgstr "íˆ´íŒ ìœ„ì¹˜ 오프셋" #: main/main.cpp modules/mono/mono_gd/gd_mono.cpp -#, fuzzy msgid "Debugger Agent" -msgstr "디버거" +msgstr "디버거 ì—ì´ì „트" #: main/main.cpp modules/mono/mono_gd/gd_mono.cpp -#, fuzzy msgid "Wait For Debugger" -msgstr "디버거" +msgstr "디버거 대기" #: main/main.cpp modules/mono/mono_gd/gd_mono.cpp msgid "Wait Timeout" @@ -16447,60 +16260,56 @@ msgstr "대기 타임아웃" #: main/main.cpp msgid "Runtime" -msgstr "" +msgstr "런타임" #: main/main.cpp msgid "Unhandled Exception Policy" -msgstr "" +msgstr "처리ë˜ì§€ ì•Šì€ ì˜ˆì™¸ ì •ì±…" #: main/main.cpp -#, fuzzy msgid "Main Loop Type" -msgstr "노드 타입 찾기" +msgstr "ë©”ì¸ ë£¨í”„ ìœ í˜•" #: main/main.cpp scene/gui/texture_progress.cpp #: scene/gui/viewport_container.cpp msgid "Stretch" -msgstr "" +msgstr "ìŠ¤íŠ¸ë ˆì¹˜" #: main/main.cpp -#, fuzzy msgid "Aspect" -msgstr "ì¸ìŠ¤íŽ™í„°" +msgstr "ì–‘ìƒ" #: main/main.cpp msgid "Shrink" -msgstr "" +msgstr "수축" #: main/main.cpp scene/main/scene_tree.cpp msgid "Auto Accept Quit" -msgstr "" +msgstr "ìžë™ ìˆ˜ë½ ì¢…ë£Œ" #: main/main.cpp scene/main/scene_tree.cpp -#, fuzzy msgid "Quit On Go Back" -msgstr "뒤로" +msgstr "ëŒì•„가면서 종료" #: main/main.cpp scene/main/viewport.cpp -#, fuzzy msgid "Snap Controls To Pixels" -msgstr "노드 ì˜†ë©´ì— ìŠ¤ëƒ…" +msgstr "í”½ì…€ì— ì»¨íŠ¸ë¡¤ 스냅" #: main/main.cpp msgid "Dynamic Fonts" -msgstr "" +msgstr "ë™ì 글꼴" #: main/main.cpp msgid "Use Oversampling" -msgstr "" +msgstr "ì˜¤ë²„ìƒ˜í”Œë§ ì‚¬ìš©" #: modules/bullet/register_types.cpp modules/bullet/space_bullet.cpp msgid "Active Soft World" -msgstr "" +msgstr "액티브 소프트 월드" #: modules/csg/csg_gizmos.cpp msgid "CSG" -msgstr "" +msgstr "CSG" #: modules/csg/csg_gizmos.cpp msgid "Change Cylinder Radius" @@ -16519,35 +16328,30 @@ msgid "Change Torus Outer Radius" msgstr "ë„ë„› 외부 반지름 바꾸기" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Operation" -msgstr "ì„¤ì •" +msgstr "오í¼ë ˆì´ì…˜" #: modules/csg/csg_shape.cpp msgid "Calculate Tangents" -msgstr "" +msgstr "ì ‘ì„ ê³„ì‚°" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Use Collision" -msgstr "ì½œë¦¬ì „" +msgstr "ì¶©ëŒ ì‚¬ìš©" #: modules/csg/csg_shape.cpp servers/physics_2d_server.cpp -#, fuzzy msgid "Collision Layer" -msgstr "ì½œë¦¬ì „ 모드" +msgstr "ì¶©ëŒ ë ˆì´ì–´" #: modules/csg/csg_shape.cpp scene/2d/ray_cast_2d.cpp scene/3d/camera.cpp #: scene/3d/ray_cast.cpp scene/3d/spring_arm.cpp #: scene/resources/navigation_mesh.cpp servers/physics_server.cpp -#, fuzzy msgid "Collision Mask" -msgstr "ì½œë¦¬ì „ 모드" +msgstr "ì¶©ëŒ ë§ˆìŠ¤í¬" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Invert Faces" -msgstr "ëŒ€ì†Œë¬¸ìž ë³€í™˜" +msgstr "ë©´ ë°˜ì „" #: modules/csg/csg_shape.cpp scene/2d/navigation_agent_2d.cpp #: scene/2d/navigation_obstacle_2d.cpp scene/3d/navigation_agent.cpp @@ -16561,170 +16365,147 @@ msgid "Radius" msgstr "반지름" #: modules/csg/csg_shape.cpp scene/resources/primitive_meshes.cpp -#, fuzzy msgid "Radial Segments" -msgstr "ë©”ì¸ ì”¬ ì¸ìˆ˜:" +msgstr "방사형 세그먼트" #: modules/csg/csg_shape.cpp scene/resources/primitive_meshes.cpp -#, fuzzy msgid "Rings" -msgstr "ê²½ê³ " +msgstr "ë§" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Smooth Faces" -msgstr "부드러운 단계" +msgstr "부드러운 얼굴" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Sides" -msgstr "ê°€ì´ë“œ ë³´ì´ê¸°" +msgstr "사ì´ë“œ" #: modules/csg/csg_shape.cpp msgid "Cone" -msgstr "" +msgstr "ì›ë¿”" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Inner Radius" -msgstr "ë„ë„› 내부 반지름 바꾸기" +msgstr "내부 반경" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Outer Radius" -msgstr "ë„ë„› 외부 반지름 바꾸기" +msgstr "외부 반경" #: modules/csg/csg_shape.cpp msgid "Ring Sides" -msgstr "" +msgstr "ë§ ì‚¬ì´ë“œ" #: modules/csg/csg_shape.cpp scene/2d/collision_polygon_2d.cpp #: scene/2d/light_occluder_2d.cpp scene/2d/polygon_2d.cpp #: scene/3d/collision_polygon.cpp -#, fuzzy msgid "Polygon" msgstr "í´ë¦¬ê³¤" #: modules/csg/csg_shape.cpp msgid "Spin Degrees" -msgstr "" +msgstr "íšŒì „ ì •ë„" #: modules/csg/csg_shape.cpp msgid "Spin Sides" -msgstr "" +msgstr "스핀 사ì´ë“œ" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Node" -msgstr "노드 붙여넣기" +msgstr "경로 노드" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Interval Type" -msgstr "내부 ê¼ì§“ì 만들기" +msgstr "경로 간격 ìœ í˜•" #: modules/csg/csg_shape.cpp msgid "Path Interval" -msgstr "" +msgstr "경로 간격" #: modules/csg/csg_shape.cpp msgid "Path Simplify Angle" -msgstr "" +msgstr "경로 단순화 ê°ë„" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Rotation" -msgstr "무작위 íšŒì „:" +msgstr "경로 íšŒì „" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Local" -msgstr "로컬로 만들기" +msgstr "경로 로컬" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Continuous U" -msgstr "ì—°ì†ì " +msgstr "경로 ì—°ì† U" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path U Distance" -msgstr "거리 ì„ íƒ:" +msgstr "경로 U 거리" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Joined" -msgstr "무작위 íšŒì „:" +msgstr "ê²°í•©ëœ ê²½ë¡œ" #: modules/enet/networked_multiplayer_enet.cpp -#, fuzzy msgid "Compression Mode" -msgstr "ì½œë¦¬ì „ 모드" +msgstr "압축 모드" #: modules/enet/networked_multiplayer_enet.cpp -#, fuzzy msgid "Transfer Channel" -msgstr "변형 바꾸기" +msgstr "ì „ì†¡ 채ë„" #: modules/enet/networked_multiplayer_enet.cpp -#, fuzzy msgid "Channel Count" -msgstr "ì¸ìŠ¤í„´ìŠ¤í•˜ê¸°" +msgstr "ì±„ë„ ì¹´ìš´íŠ¸" #: modules/enet/networked_multiplayer_enet.cpp -#, fuzzy msgid "Always Ordered" -msgstr "í•ìƒ ê²©ìž ë³´ì´ê¸°" +msgstr "í•ìƒ 주문" #: modules/enet/networked_multiplayer_enet.cpp msgid "Server Relay" -msgstr "" +msgstr "서버 ë¦´ë ˆì´" #: modules/enet/networked_multiplayer_enet.cpp msgid "DTLS Verify" -msgstr "" +msgstr "DTLS 확ì¸" #: modules/enet/networked_multiplayer_enet.cpp msgid "DTLS Hostname" -msgstr "" +msgstr "DTLS 호스트 ì´ë¦„" #: modules/enet/networked_multiplayer_enet.cpp -#, fuzzy msgid "Use DTLS" -msgstr "스냅 사용" +msgstr "DTLS 사용" #: modules/fbx/editor_scene_importer_fbx.cpp msgid "FBX" -msgstr "" +msgstr "FBX" #: modules/fbx/editor_scene_importer_fbx.cpp msgid "Use FBX" -msgstr "" +msgstr "FBX 사용" #: modules/gdnative/gdnative.cpp msgid "Config File" msgstr "ì„¤ì • 파ì¼" #: modules/gdnative/gdnative.cpp -#, fuzzy msgid "Load Once" -msgstr "리소스 불러오기" +msgstr "í•œ 번 로드" #: modules/gdnative/gdnative.cpp #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Singleton" -msgstr "ìŠ¤ì¼ˆë ˆí†¤" +msgstr "싱글톤" #: modules/gdnative/gdnative.cpp -#, fuzzy msgid "Symbol Prefix" -msgstr "ì ‘ë‘사:" +msgstr "기호 ì ‘ë‘ì–´" #: modules/gdnative/gdnative.cpp -#, fuzzy msgid "Reloadable" -msgstr "ìƒˆë¡œê³ ì¹¨" +msgstr "다시 로드 가능" #: modules/gdnative/gdnative.cpp #: modules/gdnative/gdnative_library_singleton_editor.cpp @@ -16789,9 +16570,8 @@ msgid "Script Class" msgstr "스í¬ë¦½íŠ¸ í´ëž˜ìŠ¤" #: modules/gdnative/nativescript/nativescript.cpp -#, fuzzy msgid "Icon Path" -msgstr "경로 í¬ì»¤ìŠ¤" +msgstr "ì•„ì´ì½˜ 경로" #: modules/gdnative/register_types.cpp msgid "GDNative" @@ -16799,34 +16579,32 @@ msgstr "GDNative" #: modules/gdscript/editor/gdscript_highlighter.cpp #: modules/gdscript/gdscript.cpp -#, fuzzy msgid "GDScript" -msgstr "스í¬ë¦½íŠ¸" +msgstr "GD스í¬ë¦½íŠ¸" #: modules/gdscript/editor/gdscript_highlighter.cpp msgid "Function Definition Color" -msgstr "" +msgstr "함수 ì •ì˜ ìƒ‰ìƒ" #: modules/gdscript/editor/gdscript_highlighter.cpp -#, fuzzy msgid "Node Path Color" -msgstr "노드 경로 복사" +msgstr "노드 경로 색ìƒ" #: modules/gdscript/gdscript.cpp modules/visual_script/visual_script.cpp msgid "Max Call Stack" -msgstr "" +msgstr "최대 호출 스íƒ" #: modules/gdscript/gdscript.cpp msgid "Treat Warnings As Errors" -msgstr "" +msgstr "ê²½ê³ ë¥¼ 오류로 처리" #: modules/gdscript/gdscript.cpp msgid "Exclude Addons" -msgstr "" +msgstr "ì• ë“œì˜¨ ì œì™¸" #: modules/gdscript/gdscript.cpp msgid "Autocomplete Setters And Getters" -msgstr "" +msgstr "ìžë™ 완성 ì„¤ì •ìž ë° ê²Œí„°" #: modules/gdscript/gdscript_functions.cpp msgid "Step argument is zero!" @@ -16869,17 +16647,16 @@ msgid "Language Server" msgstr "언어 서버" #: modules/gdscript/language_server/gdscript_language_server.cpp -#, fuzzy msgid "Enable Smart Resolve" -msgstr "í•´ê²°í• ìˆ˜ ì—†ìŒ" +msgstr "스마트 í•´ê²° 활성화" #: modules/gdscript/language_server/gdscript_language_server.cpp msgid "Show Native Symbols In Editor" -msgstr "" +msgstr "편집기ì—ì„œ 기본 기호 표시" #: modules/gdscript/language_server/gdscript_language_server.cpp msgid "Use Thread" -msgstr "" +msgstr "ìŠ¤ë ˆë“œ 사용" #: modules/gltf/editor_scene_exporter_gltf_plugin.cpp msgid "Export Mesh GLTF2" @@ -16890,96 +16667,84 @@ msgid "Export GLTF..." msgstr "GLTF 내보내기..." #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Buffer View" -msgstr "후면 ë·°" +msgstr "ë²„í¼ ë³´ê¸°" #: modules/gltf/gltf_accessor.cpp modules/gltf/gltf_buffer_view.cpp msgid "Byte Offset" msgstr "ë°”ì´íŠ¸ 오프셋" #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Component Type" -msgstr "구성 요소" +msgstr "구성 요소 ìœ í˜•" #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Normalized" -msgstr "형ì‹" +msgstr "ì •ê·œí™”" #: modules/gltf/gltf_accessor.cpp msgid "Count" msgstr "ì–‘" #: modules/gltf/gltf_accessor.cpp scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Min" -msgstr "MiB" +msgstr "최소" #: modules/gltf/gltf_accessor.cpp scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Max" -msgstr "믹스" +msgstr "최대" #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Sparse Count" -msgstr "ì¸ìŠ¤í„´ìŠ¤í•˜ê¸°" +msgstr "í¬ì†Œ 카운트" #: modules/gltf/gltf_accessor.cpp msgid "Sparse Indices Buffer View" -msgstr "" +msgstr "í¬ì†Œ ì¸ë±ìŠ¤ ë²„í¼ ë³´ê¸°" #: modules/gltf/gltf_accessor.cpp msgid "Sparse Indices Byte Offset" -msgstr "" +msgstr "í¬ì†Œ ì¸ë±ìŠ¤ ë°”ì´íŠ¸ 오프셋" #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Sparse Indices Component Type" -msgstr "지오메트리 ë¶„ì„ ì¤‘..." +msgstr "í¬ì†Œ ì¸ë±ìŠ¤ 구성 요소 ìœ í˜•" #: modules/gltf/gltf_accessor.cpp msgid "Sparse Values Buffer View" -msgstr "" +msgstr "í¬ì†Œ ê°’ ë²„í¼ ë³´ê¸°" #: modules/gltf/gltf_accessor.cpp msgid "Sparse Values Byte Offset" -msgstr "" +msgstr "í¬ì†Œ ê°’ ë°”ì´íŠ¸ 오프셋" #: modules/gltf/gltf_buffer_view.cpp -#, fuzzy msgid "Buffer" -msgstr "후면 ë·°" +msgstr "버í¼" #: modules/gltf/gltf_buffer_view.cpp -#, fuzzy msgid "Byte Length" -msgstr "ë””í´íŠ¸ 테마" +msgstr "ë°”ì´íŠ¸ 길ì´" #: modules/gltf/gltf_buffer_view.cpp msgid "Byte Stride" -msgstr "" +msgstr "ë°”ì´íŠ¸ 스트ë¼ì´ë“œ" #: modules/gltf/gltf_buffer_view.cpp -#, fuzzy msgid "Indices" -msgstr "ëª¨ë“ ê¸°ê¸°" +msgstr "ì¸ë±ìŠ¤" #: modules/gltf/gltf_camera.cpp -#, fuzzy msgid "FOV Size" -msgstr "í¬ê¸°:" +msgstr "FOV í¬ê¸°" #: modules/gltf/gltf_camera.cpp msgid "Zfar" -msgstr "" +msgstr "Z 멀리" #: modules/gltf/gltf_camera.cpp -#, fuzzy msgid "Znear" -msgstr "ì§ì„ 형" +msgstr "Z 근처" #: modules/gltf/gltf_light.cpp scene/2d/canvas_modulate.cpp #: scene/2d/cpu_particles_2d.cpp scene/2d/light_2d.cpp scene/2d/polygon_2d.cpp @@ -16989,273 +16754,239 @@ msgstr "ì§ì„ 형" #: scene/resources/environment.cpp scene/resources/material.cpp #: scene/resources/particles_material.cpp scene/resources/sky.cpp #: scene/resources/style_box.cpp -#, fuzzy msgid "Color" msgstr "색ìƒ" #: modules/gltf/gltf_light.cpp scene/3d/reflection_probe.cpp #: scene/resources/environment.cpp msgid "Intensity" -msgstr "" +msgstr "강함" #: modules/gltf/gltf_light.cpp scene/2d/light_2d.cpp scene/3d/light.cpp -#, fuzzy msgid "Range" -msgstr "바꾸기" +msgstr "범위" #: modules/gltf/gltf_light.cpp msgid "Inner Cone Angle" -msgstr "" +msgstr "내부 ì›ë¿” ê°ë„" #: modules/gltf/gltf_light.cpp msgid "Outer Cone Angle" -msgstr "" +msgstr "외부 ì›ë¿” ê°ë„" #: modules/gltf/gltf_mesh.cpp -#, fuzzy msgid "Blend Weights" -msgstr "ë¼ì´íŠ¸ë§µ 굽기" +msgstr "혼합 가중치" #: modules/gltf/gltf_mesh.cpp -#, fuzzy msgid "Instance Materials" -msgstr "머티리얼 바꾸기:" +msgstr "ì¸ìŠ¤í„´ìŠ¤ 재료" #: modules/gltf/gltf_node.cpp scene/3d/skeleton.cpp -#, fuzzy msgid "Parent" -msgstr "부모 다시 ì§€ì •" +msgstr "부모" #: modules/gltf/gltf_node.cpp -#, fuzzy msgid "Xform" -msgstr "플랫í¼" +msgstr "변형" #: modules/gltf/gltf_node.cpp scene/3d/mesh_instance.cpp msgid "Skin" -msgstr "" +msgstr "스킨" #: modules/gltf/gltf_node.cpp scene/3d/spatial.cpp -#, fuzzy msgid "Translation" msgstr "번ì—" #: modules/gltf/gltf_node.cpp -#, fuzzy msgid "Children" -msgstr "íŽ¸ì§‘í• ìˆ˜ 있는 ìžì‹" +msgstr "어린ì´" #: modules/gltf/gltf_skeleton.cpp modules/gltf/gltf_skin.cpp -#, fuzzy msgid "Joints" -msgstr "ì " +msgstr "ê´€ì ˆ" #: modules/gltf/gltf_skeleton.cpp modules/gltf/gltf_skin.cpp msgid "Roots" -msgstr "" +msgstr "루트" #: modules/gltf/gltf_skeleton.cpp modules/gltf/gltf_state.cpp msgid "Unique Names" -msgstr "" +msgstr "ê³ ìœ í•œ ì´ë¦„" #: modules/gltf/gltf_skeleton.cpp -#, fuzzy msgid "Godot Bone Node" -msgstr "시간 íƒìƒ‰ 노드" +msgstr "Godot 본 노드" #: modules/gltf/gltf_skin.cpp -#, fuzzy msgid "Skin Root" -msgstr "새 씬 루트" +msgstr "스킨 루트" #: modules/gltf/gltf_skin.cpp -#, fuzzy msgid "Joints Original" -msgstr "ì›ì í¬ì»¤ìŠ¤" +msgstr "ê´€ì ˆ ì›ë³¸" #: modules/gltf/gltf_skin.cpp msgid "Inverse Binds" -msgstr "" +msgstr "ì—ê²°í•©" #: modules/gltf/gltf_skin.cpp -#, fuzzy msgid "Non Joints" -msgstr "ê´€ì ˆ ì´ë™" +msgstr "비 ê´€ì ˆ" #: modules/gltf/gltf_skin.cpp msgid "Joint I To Bone I" -msgstr "" +msgstr "ê´€ì ˆ Iì—ì„œ 뼈 I" #: modules/gltf/gltf_skin.cpp msgid "Joint I To Name" -msgstr "" +msgstr "ê´€ì ˆ I ì´ë¦„" #: modules/gltf/gltf_skin.cpp msgid "Godot Skin" -msgstr "" +msgstr "Godot 스킨" #: modules/gltf/gltf_spec_gloss.cpp msgid "Diffuse Img" -msgstr "" +msgstr "확산 ì´ë¯¸ì§€" #: modules/gltf/gltf_spec_gloss.cpp msgid "Diffuse Factor" -msgstr "" +msgstr "확산 계수" #: modules/gltf/gltf_spec_gloss.cpp msgid "Gloss Factor" -msgstr "" +msgstr "ê´‘íƒ ê³„ìˆ˜" #: modules/gltf/gltf_spec_gloss.cpp -#, fuzzy msgid "Specular Factor" -msgstr "ìŠ¤ì¹¼ë¼ ì—°ì‚°ìž." +msgstr "반사 ì¸ìž" #: modules/gltf/gltf_spec_gloss.cpp msgid "Spec Gloss Img" -msgstr "" +msgstr "반사광 ì´ë¯¸ì§€" #: modules/gltf/gltf_state.cpp msgid "Json" -msgstr "" +msgstr "Json" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Major Version" -msgstr "ë²„ì „" +msgstr "ë©”ì´ì € ë²„ì „" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Minor Version" -msgstr "ë²„ì „" +msgstr "마ì´ë„ˆ ë²„ì „" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "GLB Data" -msgstr "ë°ì´í„°ì™€ 함께" +msgstr "GLB ë°ì´í„°" #: modules/gltf/gltf_state.cpp msgid "Use Named Skin Binds" -msgstr "" +msgstr "네임드 스킨 ë°”ì¸ë”© 사용" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Buffer Views" -msgstr "후면 ë·°" +msgstr "ë²„í¼ ë³´ê¸°" #: modules/gltf/gltf_state.cpp msgid "Accessors" -msgstr "" +msgstr "ì ‘ê·¼ìž" #: modules/gltf/gltf_state.cpp msgid "Scene Name" msgstr "씬 ì´ë¦„" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Root Nodes" -msgstr "루트 노드 ì´ë¦„" +msgstr "루트 노드" #: modules/gltf/gltf_state.cpp scene/2d/particles_2d.cpp #: scene/gui/texture_button.cpp scene/gui/texture_progress.cpp -#, fuzzy msgid "Textures" -msgstr "기능" +msgstr "í…스처" #: modules/gltf/gltf_state.cpp platform/uwp/export/export.cpp msgid "Images" -msgstr "" +msgstr "ì´ë¯¸ì§€" #: modules/gltf/gltf_state.cpp msgid "Cameras" -msgstr "" +msgstr "ì¹´ë©”ë¼" #: modules/gltf/gltf_state.cpp servers/visual_server.cpp -#, fuzzy msgid "Lights" -msgstr "ë¼ì´íŠ¸" +msgstr "ë¹›" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Unique Animation Names" -msgstr "새 ì• ë‹ˆë©”ì´ì…˜ ì´ë¦„:" +msgstr "ê³ ìœ í•œ ì• ë‹ˆë©”ì´ì…˜ ì´ë¦„" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Skeletons" msgstr "ìŠ¤ì¼ˆë ˆí†¤" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Skeleton To Node" -msgstr "노드를 ì„ íƒí•˜ì„¸ìš”" +msgstr "ìŠ¤ì¼ˆë ˆí†¤ì—ì„œ 노드로" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Animations" -msgstr "ì• ë‹ˆë©”ì´ì…˜:" +msgstr "ì• ë‹ˆë©”ì´ì…˜" #: modules/gltf/gltf_texture.cpp -#, fuzzy msgid "Src Image" -msgstr "본 ë³´ì´ê¸°" +msgstr "SRC ì´ë¯¸ì§€" #: modules/gridmap/grid_map.cpp msgid "Mesh Library" msgstr "메시 ë¼ì´ë¸ŒëŸ¬ë¦¬" #: modules/gridmap/grid_map.cpp -#, fuzzy msgid "Physics Material" -msgstr "물리 í”„ë ˆìž„ %" +msgstr "물리 재료" #: modules/gridmap/grid_map.cpp scene/3d/visual_instance.cpp -#, fuzzy msgid "Use In Baked Light" -msgstr "ë¼ì´íŠ¸ë§µ 굽기" +msgstr "ë² ì´í‚¹ ë¼ì´íŠ¸ì—ì„œ 사용" #: modules/gridmap/grid_map.cpp scene/2d/tile_map.cpp msgid "Cell" -msgstr "" +msgstr "ì…€" #: modules/gridmap/grid_map.cpp -#, fuzzy msgid "Octant Size" -msgstr "ì •ë©´ ë·°" +msgstr "옥탄트 í¬ê¸°" #: modules/gridmap/grid_map.cpp -#, fuzzy msgid "Center X" -msgstr "중앙" +msgstr "중앙 X" #: modules/gridmap/grid_map.cpp -#, fuzzy msgid "Center Y" -msgstr "중앙" +msgstr "중앙 Y" #: modules/gridmap/grid_map.cpp -#, fuzzy msgid "Center Z" -msgstr "중앙" +msgstr "중앙 Z" #: modules/gridmap/grid_map.cpp scene/2d/collision_object_2d.cpp #: scene/2d/tile_map.cpp scene/3d/collision_object.cpp scene/3d/soft_body.cpp #: scene/resources/material.cpp msgid "Mask" -msgstr "" +msgstr "마스í¬" #: modules/gridmap/grid_map.cpp scene/2d/tile_map.cpp -#, fuzzy msgid "Bake Navigation" -msgstr "네비게ì´ì…˜" +msgstr "ë² ì´í¬ 내비게ì´ì…˜" #: modules/gridmap/grid_map.cpp scene/2d/navigation_2d.cpp #: scene/2d/navigation_agent_2d.cpp scene/2d/navigation_polygon.cpp #: scene/2d/tile_map.cpp scene/3d/navigation.cpp scene/3d/navigation_agent.cpp #: scene/3d/navigation_mesh_instance.cpp -#, fuzzy msgid "Navigation Layers" -msgstr "내비게ì´ì…˜ ê°ë„" +msgstr "내비게ì´ì…˜ ë ˆì´ì–´" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Next Plane" @@ -17414,63 +17145,59 @@ msgid "Plotting lightmaps" msgstr "ë¼ì´íŠ¸ë§µ 그리는 중" #: modules/lightmapper_cpu/register_types.cpp -#, fuzzy msgid "CPU Lightmapper" -msgstr "ë¼ì´íŠ¸ë§µ 굽기" +msgstr "CPU ë¼ì´íŠ¸ë§¤í¼" #: modules/lightmapper_cpu/register_types.cpp msgid "Low Quality Ray Count" -msgstr "" +msgstr "ë‚®ì€ í’ˆì§ˆì˜ ê´‘ì„ ìˆ˜" #: modules/lightmapper_cpu/register_types.cpp msgid "Medium Quality Ray Count" -msgstr "" +msgstr "중간 품질 ê´‘ì„ ìˆ˜" #: modules/lightmapper_cpu/register_types.cpp msgid "High Quality Ray Count" -msgstr "" +msgstr "ê³ í’ˆì§ˆ ê´‘ì„ ìˆ˜" #: modules/lightmapper_cpu/register_types.cpp msgid "Ultra Quality Ray Count" -msgstr "" +msgstr "ì´ˆê³ í’ˆì§ˆ ê´‘ì„ ìˆ˜" #: modules/minimp3/audio_stream_mp3.cpp #: modules/minimp3/resource_importer_mp3.cpp #: modules/stb_vorbis/audio_stream_ogg_vorbis.cpp #: modules/stb_vorbis/resource_importer_ogg_vorbis.cpp -#, fuzzy msgid "Loop Offset" -msgstr "오프셋:" +msgstr "루프 오프셋" #: modules/mobile_vr/mobile_vr_interface.cpp msgid "Eye Height" -msgstr "" +msgstr "눈 높ì´" #: modules/mobile_vr/mobile_vr_interface.cpp msgid "IOD" -msgstr "" +msgstr "IOD" #: modules/mobile_vr/mobile_vr_interface.cpp -#, fuzzy msgid "Display Width" -msgstr "와ì´ì–´í”„ë ˆìž„ 표시" +msgstr "ë””ìŠ¤í”Œë ˆì´ ë„ˆë¹„" #: modules/mobile_vr/mobile_vr_interface.cpp -#, fuzzy msgid "Display To Lens" -msgstr "ì…°ì´ë” ì—†ìŒ í‘œì‹œ" +msgstr "ë Œì¦ˆì— í‘œì‹œ" #: modules/mobile_vr/mobile_vr_interface.cpp msgid "Oversample" -msgstr "" +msgstr "오버샘플" #: modules/mobile_vr/mobile_vr_interface.cpp msgid "K1" -msgstr "" +msgstr "K1" #: modules/mobile_vr/mobile_vr_interface.cpp msgid "K2" -msgstr "" +msgstr "K2" #: modules/mono/csharp_script.cpp msgid "Class name can't be a reserved keyword" @@ -17481,24 +17208,20 @@ msgid "Build Solution" msgstr "솔루션 빌드" #: modules/mono/editor/csharp_project.cpp -#, fuzzy msgid "Auto Update Project" -msgstr "ì´ë¦„ 없는 프로ì 트" +msgstr "ìžë™ ì—…ë°ì´íŠ¸ 프로ì 트" #: modules/mono/godotsharp_dirs.cpp -#, fuzzy msgid "Assembly Name" -msgstr "ëª¨ë‘ í‘œì‹œ" +msgstr "어셈블리 ì´ë¦„" #: modules/mono/godotsharp_dirs.cpp -#, fuzzy msgid "Solution Directory" -msgstr "ë””ë ‰í† ë¦¬ë¥¼ ì„ íƒí•˜ì„¸ìš”" +msgstr "솔루션 ë””ë ‰í† ë¦¬" #: modules/mono/godotsharp_dirs.cpp -#, fuzzy msgid "C# Project Directory" -msgstr "ë””ë ‰í† ë¦¬ë¥¼ ì„ íƒí•˜ì„¸ìš”" +msgstr "C# 프로ì 트 ë””ë ‰í† ë¦¬" #: modules/mono/mono_gd/gd_mono_utils.cpp msgid "End of inner exception stack trace" @@ -17572,20 +17295,19 @@ msgstr "완료!" #: modules/opensimplex/noise_texture.cpp msgid "Seamless" -msgstr "" +msgstr "ì›í™œí•œ" #: modules/opensimplex/noise_texture.cpp -#, fuzzy msgid "As Normal Map" -msgstr "무작위 스케ì¼:" +msgstr "노멀 맵으로" #: modules/opensimplex/noise_texture.cpp msgid "Bump Strength" -msgstr "" +msgstr "범프 ê°•ë„" #: modules/opensimplex/noise_texture.cpp msgid "Noise" -msgstr "" +msgstr "소ìŒ" #: modules/opensimplex/noise_texture.cpp msgid "Noise Offset" @@ -17593,27 +17315,25 @@ msgstr "ë…¸ì´ì¦ˆ 오프셋" #: modules/opensimplex/open_simplex_noise.cpp msgid "Octaves" -msgstr "" +msgstr "옥타브" #: modules/opensimplex/open_simplex_noise.cpp msgid "Period" -msgstr "" +msgstr "기간" #: modules/opensimplex/open_simplex_noise.cpp -#, fuzzy msgid "Persistence" -msgstr "ì›ê·¼" +msgstr "지ì†ì„±" #: modules/opensimplex/open_simplex_noise.cpp msgid "Lacunarity" -msgstr "" +msgstr "세심함" #: modules/regex/regex.cpp msgid "Subject" -msgstr "" +msgstr "서브ì 트" #: modules/regex/regex.cpp -#, fuzzy msgid "Names" msgstr "ì´ë¦„" @@ -17623,43 +17343,39 @@ msgstr "문ìžì—´" #: modules/upnp/upnp.cpp msgid "Discover Multicast If" -msgstr "" +msgstr "멀티ìºìŠ¤íŠ¸ë¥¼ 발견하면" #: modules/upnp/upnp.cpp msgid "Discover Local Port" -msgstr "" +msgstr "로컬 í¬íŠ¸ 검색" #: modules/upnp/upnp.cpp msgid "Discover IPv6" -msgstr "" +msgstr "IPv6 발견" #: modules/upnp/upnp_device.cpp -#, fuzzy msgid "Description URL" -msgstr "설명" +msgstr "설명 URL" #: modules/upnp/upnp_device.cpp -#, fuzzy msgid "Service Type" -msgstr "변수 타입 ì„¤ì •" +msgstr "서비스 ìœ í˜•" #: modules/upnp/upnp_device.cpp msgid "IGD Control URL" -msgstr "" +msgstr "IGD ì œì–´ URL" #: modules/upnp/upnp_device.cpp -#, fuzzy msgid "IGD Service Type" -msgstr "변수 타입 ì„¤ì •" +msgstr "IGD 서비스 ìœ í˜•" #: modules/upnp/upnp_device.cpp msgid "IGD Our Addr" -msgstr "" +msgstr "IGD ìš°ë¦¬ì˜ ì£¼ì†Œ" #: modules/upnp/upnp_device.cpp -#, fuzzy msgid "IGD Status" -msgstr "ìƒíƒœ" +msgstr "IGD ìƒíƒœ" #: modules/visual_script/visual_script.cpp msgid "" @@ -17694,14 +17410,12 @@ msgstr "" "시퀀스 비트를 발견했지만 ìŠ¤íƒ ì•ˆì˜ ë…¸ë“œì—는 없습니다. 버그를 ì‹ ê³ í•˜ì„¸ìš”!" #: modules/visual_script/visual_script.cpp -#, fuzzy msgid "Stack overflow with stack depth:" -msgstr "ìŠ¤íƒ ê¹Šì´ë¡œ 오버플로우한 스íƒ: " +msgstr "ìŠ¤íƒ ê¹Šì´ê°€ 있는 ìŠ¤íƒ ì˜¤ë²„í”Œë¡œ:" #: modules/visual_script/visual_script.cpp -#, fuzzy msgid "Visual Script" -msgstr "비주얼스í¬ë¦½íŠ¸ 검색" +msgstr "비주얼 스í¬ë¦½íŠ¸" #: modules/visual_script/visual_script_editor.cpp msgid "Change Signal Arguments" @@ -18022,122 +17736,108 @@ msgstr "멤버 편집" #: modules/visual_script/visual_script_expression.cpp #: scene/resources/visual_shader.cpp -#, fuzzy msgid "Expression" -msgstr "í‘œí˜„ì‹ ì„¤ì •" +msgstr "표현" #: modules/visual_script/visual_script_flow_control.cpp msgid "Return" -msgstr "" +msgstr "반환" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Return Enabled" -msgstr "실행가능" +msgstr "반환 활성화ë¨" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Return Type" -msgstr "멤버 타입" +msgstr "반환 ìœ í˜•" #: modules/visual_script/visual_script_flow_control.cpp #: scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Condition" -msgstr "ì• ë‹ˆë©”ì´ì…˜" +msgstr "ì¡°ê±´" #: modules/visual_script/visual_script_flow_control.cpp msgid "if (cond) is:" -msgstr "" +msgstr "(ì¡°ê±´)ì´ ë‹¤ìŒê³¼ 같으면:" #: modules/visual_script/visual_script_flow_control.cpp msgid "While" -msgstr "While" +msgstr "ë™ì•ˆ" #: modules/visual_script/visual_script_flow_control.cpp msgid "while (cond):" -msgstr "" +msgstr "ë™ì•ˆ(ì¡°ê±´):" #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator" -msgstr "" +msgstr "반복ìž" #: modules/visual_script/visual_script_flow_control.cpp msgid "for (elem) in (input):" -msgstr "" +msgstr "(ìž…ë ¥)ì—ì„œ (요소):" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Input type not iterable:" -msgstr "ë°˜ë³µí• ìˆ˜ 없는 ìž…ë ¥ 타입: " +msgstr "ë°˜ë³µí• ìˆ˜ 없는 ìž…ë ¥ ìœ í˜•:" #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator became invalid" -msgstr "Iteratorê°€ 잘못ë˜ì—ˆìŠµë‹ˆë‹¤" +msgstr "반복ìžê°€ 잘못ë˜ì—ˆìŠµë‹ˆë‹¤" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Iterator became invalid:" -msgstr "Iteratorê°€ 잘못ë¨: " +msgstr "반복ìžê°€ 잘못ë˜ì—ˆìŠµë‹ˆë‹¤:" #: modules/visual_script/visual_script_flow_control.cpp msgid "Sequence" -msgstr "" +msgstr "순서" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "in order:" -msgstr "í´ë” ì´ë¦„ 바꾸기:" +msgstr "규칙대로:" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Steps" msgstr "단계" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Switch" -msgstr "Pitch:" +msgstr "스위치" #: modules/visual_script/visual_script_flow_control.cpp msgid "'input' is:" -msgstr "" +msgstr "'ìž…ë ¥'ì€:" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Type Cast" -msgstr "타입:" +msgstr "ìœ í˜• ìºìŠ¤íŠ¸" #: modules/visual_script/visual_script_flow_control.cpp msgid "Is %s?" -msgstr "" +msgstr "%sì¸ê°€ìš”?" #: modules/visual_script/visual_script_flow_control.cpp #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Base Script" -msgstr "새 스í¬ë¦½íŠ¸" +msgstr "기본 스í¬ë¦½íŠ¸" #: modules/visual_script/visual_script_func_nodes.cpp msgid "On %s" -msgstr "" +msgstr "%sì—" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "On Self" -msgstr "ìžì²´" +msgstr "온 셀프" #: modules/visual_script/visual_script_func_nodes.cpp #: modules/visual_script/visual_script_yield_nodes.cpp -#, fuzzy msgid "Call Mode" -msgstr "ìŠ¤ì¼€ì¼ ëª¨ë“œ" +msgstr "호출 모드" #: modules/visual_script/visual_script_func_nodes.cpp #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "Basic Type" -msgstr "기본 타입 바꾸기" +msgstr "기본형" #: modules/visual_script/visual_script_func_nodes.cpp #: modules/visual_script/visual_script_nodes.cpp @@ -20129,7 +19829,7 @@ msgstr "ê°œì •" #: platform/uwp/export/export.cpp msgid "Landscape" -msgstr "" +msgstr "í’ê²½" #: platform/uwp/export/export.cpp #, fuzzy @@ -20426,7 +20126,7 @@ msgstr "" #: platform/windows/export/export.cpp msgid "Wine" -msgstr "" +msgstr "와ì¸" #: platform/x11/export/export.cpp msgid "32-bit executables cannot have embedded data >= 4 GiB." @@ -20982,7 +20682,7 @@ msgstr "ì„ íšŒ ë·° 오른쪽으로" #: scene/resources/particles_material.cpp servers/physics_2d_server.cpp #: servers/physics_server.cpp msgid "Angular Velocity" -msgstr "" +msgstr "ê°ì†ë„" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21427,7 +21127,7 @@ msgstr "ë„ë„› 외부 반지름 바꾸기" msgid "" "The NavigationObstacle2D only serves to provide collision avoidance to a " "Node2D object." -msgstr "" +msgstr "NavigationObstacle2D는 Node2D ê°œì²´ì— ëŒ€í•œ ì¶©ëŒ ë°©ì§€ 기능만 ì œê³µí•©ë‹ˆë‹¤." #: scene/2d/navigation_polygon.cpp msgid "" @@ -23668,6 +23368,16 @@ msgstr "오류" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "ì •ë ¬" + +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Use AABB Center" +msgstr "주변광 사용" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" @@ -26547,7 +26257,7 @@ msgstr "" #: scene/resources/environment.cpp msgid "Bloom" -msgstr "" +msgstr "블룸" #: scene/resources/environment.cpp msgid "HDR Threshold" @@ -27176,9 +26886,8 @@ msgid "Bind" msgstr "ë°”ì¸ë”©" #: scene/resources/skin.cpp -#, fuzzy msgid "Bone" -msgstr "본" +msgstr "뼈" #: scene/resources/sky.cpp #, fuzzy diff --git a/editor/translations/lt.po b/editor/translations/lt.po index e89e801a9b..5f0c068dbb 100644 --- a/editor/translations/lt.po +++ b/editor/translations/lt.po @@ -12948,9 +12948,10 @@ msgstr "Žingsnis(iai):" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14343,12 +14344,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -23371,6 +23371,15 @@ msgstr "Ä®vyko klaida kraunant Å¡riftÄ…." msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Importuojama:" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/lv.po b/editor/translations/lv.po index 7234ac270a..51836c627b 100644 --- a/editor/translations/lv.po +++ b/editor/translations/lv.po @@ -12808,9 +12808,10 @@ msgstr "Opcijas" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14176,12 +14177,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -23214,6 +23214,15 @@ msgstr "%s Kļūda" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Å Ä·irot" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/mk.po b/editor/translations/mk.po index d0be6e7036..6d725ac82b 100644 --- a/editor/translations/mk.po +++ b/editor/translations/mk.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-07-23 03:57+0000\n" +"PO-Revision-Date: 2022-10-24 12:41+0000\n" "Last-Translator: Kristijan Fremen Velkovski <me@krisfremen.com>\n" "Language-Team: Macedonian <https://hosted.weblate.org/projects/godot-engine/" "godot/mk/>\n" @@ -17,11 +17,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8-bit\n" "Plural-Forms: nplurals=2; plural=n==1 || n%10==1 ? 0 : 1;\n" -"X-Generator: Weblate 4.14-dev\n" +"X-Generator: Weblate 4.14.2-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" -msgstr "" +msgstr "Драјвер за Таблет" #: core/bind/core_bind.cpp msgid "Clipboard" @@ -49,7 +49,7 @@ msgstr "Делта Измазнување" #: core/bind/core_bind.cpp msgid "Low Processor Usage Mode" -msgstr "" +msgstr "Режим за ниÑка употреба на процеÑор" #: core/bind/core_bind.cpp msgid "Low Processor Usage Mode Sleep (µsec)" @@ -186,19 +186,19 @@ msgstr "Ред за наредби" #: core/command_queue_mt.cpp msgid "Multithreading Queue Size (KB)" -msgstr "" +msgstr "Големина на редот за Мултитрединг" #: core/func_ref.cpp modules/visual_script/visual_script_builtin_funcs.cpp #: modules/visual_script/visual_script_func_nodes.cpp #: modules/visual_script/visual_script_nodes.cpp #: scene/resources/visual_shader_nodes.cpp msgid "Function" -msgstr "" +msgstr "Функција" #: core/image.cpp core/packed_data_container.cpp scene/2d/polygon_2d.cpp #: scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp msgid "Data" -msgstr "" +msgstr "Дата" #: core/io/file_access_network.cpp core/register_core_types.cpp #: editor/editor_file_dialog.cpp editor/editor_settings.cpp main/main.cpp @@ -206,16 +206,15 @@ msgstr "" #: modules/webrtc/webrtc_data_channel.h modules/websocket/websocket_macros.h #: scene/gui/file_dialog.cpp msgid "Network" -msgstr "" +msgstr "Мрежа" #: core/io/file_access_network.cpp -#, fuzzy msgid "Remote FS" -msgstr "Избриши невалидни клучеви" +msgstr "Далечен ФС" #: core/io/file_access_network.cpp msgid "Page Size" -msgstr "" +msgstr "Големина на Страница" #: core/io/file_access_network.cpp msgid "Page Read Ahead" @@ -3357,7 +3356,7 @@ msgstr "" #: editor/editor_help.cpp msgid "Enumerations" -msgstr "" +msgstr "Енумерации" #: editor/editor_help.cpp msgid "Property Descriptions" @@ -12418,9 +12417,10 @@ msgstr "СвојÑтва на анимацијата." #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13759,12 +13759,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22313,6 +22312,14 @@ msgstr "Огледало" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +msgid "Sorting" +msgstr "" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/ml.po b/editor/translations/ml.po index 35845df066..171cc17fdb 100644 --- a/editor/translations/ml.po +++ b/editor/translations/ml.po @@ -12440,9 +12440,10 @@ msgstr "à´ªàµà´°à´µàµƒà´¤àµà´¤à´¿à´•àµ¾:" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13783,12 +13784,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22389,6 +22389,14 @@ msgstr "à´•à´£àµà´£à´¾à´Ÿà´¿" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +msgid "Sorting" +msgstr "" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/mr.po b/editor/translations/mr.po index 6baf1dc52e..24300da41a 100644 --- a/editor/translations/mr.po +++ b/editor/translations/mr.po @@ -12432,9 +12432,10 @@ msgstr "अâ€à¥…निमेशन टà¥à¤°à¥€" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13776,12 +13777,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22411,6 +22411,14 @@ msgstr "तà¥à¤°à¥à¤Ÿà¥€!" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +msgid "Sorting" +msgstr "" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/ms.po b/editor/translations/ms.po index adb377d13a..3b34efe6f2 100644 --- a/editor/translations/ms.po +++ b/editor/translations/ms.po @@ -12936,9 +12936,10 @@ msgstr "Pilihan Snap" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Grid Offset:" @@ -14318,12 +14319,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -23441,6 +23441,15 @@ msgstr "%s Ralat" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Mengimport:" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/nb.po b/editor/translations/nb.po index b39bc2a602..9d831aee5d 100644 --- a/editor/translations/nb.po +++ b/editor/translations/nb.po @@ -18,7 +18,7 @@ # Patrick Sletvold <patricksletvold@hotmail.com>, 2021. # Kristoffer <kskau93@gmail.com>, 2021. # Lili Zoey <sayaks1@gmail.com>, 2021. -# slasken06 <ask.skivdal@gmail.com>, 2021. +# slasken06 <ask.skivdal@gmail.com>, 2021, 2022. # Daniel Skogly <daniel@klungo.no>, 2021. # Imre Kristoffer Eilertsen <imreeil42@gmail.com>, 2022. # Edvard Ekrem Sæther <edvardekrem@gmail.com>, 2022. @@ -28,8 +28,8 @@ msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-03-20 03:01+0000\n" -"Last-Translator: Changry <c@changry.no>\n" +"PO-Revision-Date: 2022-12-08 10:28+0000\n" +"Last-Translator: slasken06 <ask.skivdal@gmail.com>\n" "Language-Team: Norwegian BokmÃ¥l <https://hosted.weblate.org/projects/godot-" "engine/godot/nb_NO/>\n" "Language: nb\n" @@ -37,7 +37,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.12-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -118,9 +118,8 @@ msgstr "Minimert" #: core/bind/core_bind.cpp core/project_settings.cpp scene/gui/dialogs.cpp #: scene/gui/graph_node.cpp -#, fuzzy msgid "Resizable" -msgstr "Kan Endre Størrelse" +msgstr "Skalerbar" #: core/bind/core_bind.cpp core/os/input_event.cpp scene/2d/node_2d.cpp #: scene/2d/physics_body_2d.cpp scene/2d/remote_transform_2d.cpp @@ -230,7 +229,6 @@ msgid "Network" msgstr "Nettverk" #: core/io/file_access_network.cpp -#, fuzzy msgid "Remote FS" msgstr "Fjernstyrt FS" @@ -243,7 +241,6 @@ msgid "Page Read Ahead" msgstr "" #: core/io/http_client.cpp -#, fuzzy msgid "Blocking Mode Enabled" msgstr "Blokkeringsmodus Aktivert" @@ -252,7 +249,6 @@ msgid "Connection" msgstr "Tilkobling" #: core/io/http_client.cpp -#, fuzzy msgid "Read Chunk Size" msgstr "Les Chunk Størrelse" @@ -286,7 +282,7 @@ msgstr "Overføringsmodus" #: core/io/packet_peer.cpp msgid "Encode Buffer Max Size" -msgstr "" +msgstr "Enkodingsbuffer Maks Størrelse" #: core/io/packet_peer.cpp msgid "Input Buffer Max Size" @@ -13499,9 +13495,10 @@ msgstr "Snapping innstillinger" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Avstand:" @@ -14927,16 +14924,17 @@ msgid "Invalid project path (changed anything?)." msgstr "" #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Kunne ikke laste project.godot i prosjektstien (feil %d). Den kan mangle " "eller være korrupt." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "Kunne ikke endre project.godot i projsektstien." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Kan ikke Ã¥pne prosjekt" #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -24341,6 +24339,15 @@ msgstr "Feil!" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Sortering" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/nl.po b/editor/translations/nl.po index 2b09ed5abc..5e80c53732 100644 --- a/editor/translations/nl.po +++ b/editor/translations/nl.po @@ -13261,9 +13261,10 @@ msgstr "Kleefinstellingen" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Afstand:" @@ -14731,16 +14732,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Ongeldig projectpad (iets veranderd?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Kan project.godot in project pad niet laden (error %d). Mogelijk is het " "bestand niet aanwezig of corrupt." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "Kan project.godot niet bewerken in projectpad." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Kan project niet openen op '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -24277,6 +24279,15 @@ msgstr "Fout" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Sorteren" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/pl.po b/editor/translations/pl.po index 7b7e680cff..47b7bfe98a 100644 --- a/editor/translations/pl.po +++ b/editor/translations/pl.po @@ -64,13 +64,18 @@ # Dawid Skubij <davidsd@tlen.pl>, 2022. # kingofsponges <q.patex.q@gmail.com>, 2022. # Patryk Morawski <gormit7@gmail.com>, 2022. +# Adrians <adrianspl@o2.pl>, 2022. +# Wodorek <Krol.w94@gmail.com>, 2022. +# Filip GliszczyÅ„ski <filipgliszczynski@gmail.com>, 2022. +# Piotr Åšlusarz <piotrekslusarz@outlook.com>, 2022. +# Jan Kurzak <Iqaz0oki@outlook.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-08-17 18:20+0000\n" -"Last-Translator: Patryk Morawski <gormit7@gmail.com>\n" +"PO-Revision-Date: 2022-12-12 09:46+0000\n" +"Last-Translator: Tomek <kobewi4e@gmail.com>\n" "Language-Team: Polish <https://hosted.weblate.org/projects/godot-engine/" "godot/pl/>\n" "Language: pl\n" @@ -79,7 +84,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 4.14-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -902,9 +907,8 @@ msgid "Connect Timeout Seconds" msgstr "Sekundowy limit czasu poÅ‚Ä…czenia" #: core/register_core_types.cpp -#, fuzzy msgid "Packet Peer Stream" -msgstr "StrumieÅ„ czÅ‚onków pakietów" +msgstr "StrumieÅ„ pakietów równorzÄ™dnych" #: core/register_core_types.cpp msgid "Max Buffer (Power of 2)" @@ -1159,9 +1163,8 @@ msgstr "Animacja WywoÅ‚anie funkcji" #: editor/animation_track_editor.cpp scene/2d/animated_sprite.cpp #: scene/2d/sprite.cpp scene/3d/sprite_3d.cpp #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Frame" -msgstr "Klatka %" +msgstr "Klatka" #: editor/animation_track_editor.cpp editor/editor_profiler.cpp #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp @@ -1172,16 +1175,14 @@ msgstr "Czas" #: editor/animation_track_editor.cpp editor/import/resource_importer_scene.cpp #: platform/osx/export/export.cpp -#, fuzzy msgid "Location" msgstr "Lokalizacja" #: editor/animation_track_editor.cpp modules/gltf/gltf_node.cpp #: scene/2d/polygon_2d.cpp scene/2d/remote_transform_2d.cpp #: scene/3d/remote_transform.cpp scene/3d/spatial.cpp scene/gui/control.cpp -#, fuzzy msgid "Rotation" -msgstr "Krok obrotu:" +msgstr "Obrót" #: editor/animation_track_editor.cpp editor/script_editor_debugger.cpp #: modules/visual_script/visual_script_nodes.cpp scene/gui/range.cpp @@ -1189,9 +1190,8 @@ msgid "Value" msgstr "Wartość" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Arg Count" -msgstr "IloÅ›c:" +msgstr "Liczba argumentów" #: editor/animation_track_editor.cpp main/main.cpp #: modules/mono/mono_gd/gd_mono.cpp @@ -1206,14 +1206,12 @@ msgid "Type" msgstr "Typ" #: editor/animation_track_editor.cpp -#, fuzzy msgid "In Handle" -msgstr "Ustaw uchwyt" +msgstr "Uchwyt wejÅ›ciowy" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Out Handle" -msgstr "Ustaw uchwyt" +msgstr "Uchwyt wyjÅ›ciowy" #: editor/animation_track_editor.cpp #: editor/import/resource_importer_texture.cpp @@ -1223,14 +1221,12 @@ msgid "Stream" msgstr "StrumieÅ„" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Start Offset" -msgstr "Offset siatki:" +msgstr "Rozpocznij przesuniÄ™cie" #: editor/animation_track_editor.cpp -#, fuzzy msgid "End Offset" -msgstr "PrzesuniÄ™cie:" +msgstr "Koniec przesuniÄ™cia" #: editor/animation_track_editor.cpp editor/editor_settings.cpp #: editor/import/resource_importer_scene.cpp @@ -1243,9 +1239,8 @@ msgid "Animation" msgstr "Animacja" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Easing" -msgstr "Åagodne wejÅ›cie-wyjÅ›cie" +msgstr "WygÅ‚adzanie" #: editor/animation_track_editor.cpp msgid "Anim Multi Change Keyframe Time" @@ -1354,19 +1349,16 @@ msgid "Remove this track." msgstr "UsuÅ„ tÄ™ Å›cieżkÄ™." #: editor/animation_track_editor.cpp -#, fuzzy msgid "Time (s):" -msgstr "Czas (s): " +msgstr "Czas (s):" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Position:" -msgstr "Pozycja" +msgstr "Pozycja:" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Rotation:" -msgstr "Krok obrotu:" +msgstr "Obrót:" #: editor/animation_track_editor.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp @@ -1383,44 +1375,36 @@ msgid "Type:" msgstr "Typ:" #: editor/animation_track_editor.cpp -#, fuzzy msgid "(Invalid, expected type: %s)" -msgstr "Szablon eksportu nieprawidÅ‚owy:" +msgstr "(NieprawidÅ‚owy, oczekiwano typ: %s)" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Easing:" -msgstr "Åagodne wejÅ›cie-wyjÅ›cie" +msgstr "Åagodne wejÅ›cie-wyjÅ›cie:" #: editor/animation_track_editor.cpp -#, fuzzy msgid "In-Handle:" -msgstr "Ustaw uchwyt" +msgstr "Uchwyt wew.:" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Out-Handle:" -msgstr "Ustaw uchwyt" +msgstr "Uchwyt zew.:" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Stream:" -msgstr "CzÅ‚onek transmisji" +msgstr "StrumieÅ„:" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Start (s):" -msgstr "Restart(y):" +msgstr "Start (s):" #: editor/animation_track_editor.cpp -#, fuzzy msgid "End (s):" -msgstr "Zanikanie w (s):" +msgstr "Koniec (s):" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Animation Clip:" -msgstr "Animacje:" +msgstr "Animacja:" #: editor/animation_track_editor.cpp msgid "Toggle Track Enabled" @@ -1634,9 +1618,8 @@ msgid "Add Method Track Key" msgstr "Dodaj klucz Å›cieżki metody" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Method not found in object:" -msgstr "Metoda nie znaleziona w obiekcie: " +msgstr "Metoda nie znaleziona w obiekcie:" #: editor/animation_track_editor.cpp msgid "Anim Move Keys" @@ -2601,9 +2584,8 @@ msgid "There is no '%s' file." msgstr "Nie ma pliku \"%s\"." #: editor/editor_audio_buses.cpp -#, fuzzy msgid "Layout:" -msgstr "UkÅ‚ad" +msgstr "UkÅ‚ad:" #: editor/editor_audio_buses.cpp msgid "Invalid file, not an audio bus layout." @@ -2809,19 +2791,16 @@ msgid "Project export for platform:" msgstr "Eksportowanie projektu dla platformy:" #: editor/editor_export.cpp -#, fuzzy msgid "Completed with warnings." -msgstr "Skopiuj Å›cieżkÄ™ wÄ™zÅ‚a" +msgstr "UkoÅ„czone z ostrzeżeniami." #: editor/editor_export.cpp -#, fuzzy msgid "Completed successfully." -msgstr "Pakiet zainstalowano poprawnie!" +msgstr "ZakoÅ„czono pomyÅ›lnie." #: editor/editor_export.cpp -#, fuzzy msgid "Failed." -msgstr "Nie powiodÅ‚o siÄ™:" +msgstr "Nie powiodÅ‚o siÄ™." #: editor/editor_export.cpp msgid "Storing File:" @@ -2844,19 +2823,16 @@ msgid "Cannot create file \"%s\"." msgstr "Nie można utworzyć pliku \"%s\"." #: editor/editor_export.cpp -#, fuzzy msgid "Failed to export project files." -msgstr "Nie udaÅ‚o siÄ™ eksportować plików projektu" +msgstr "Eksportowanie plików projektu nie powiodÅ‚o siÄ™." #: editor/editor_export.cpp -#, fuzzy msgid "Can't open file to read from path \"%s\"." msgstr "Nie można otworzyć pliku do zapisu:" #: editor/editor_export.cpp -#, fuzzy msgid "Save ZIP" -msgstr "Zapisz jako" +msgstr "Zapisz plik ZIP" #: editor/editor_export.cpp msgid "" @@ -2929,9 +2905,8 @@ msgid "Release" msgstr "Wydanie" #: editor/editor_export.cpp -#, fuzzy msgid "Binary Format" -msgstr "Operator koloru." +msgstr "Format binarny" #: editor/editor_export.cpp msgid "64 Bits" @@ -2942,9 +2917,8 @@ msgid "Embed PCK" msgstr "Osadź PCK" #: editor/editor_export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Texture Format" -msgstr "Obszar tekstury" +msgstr "Format tekstury" #: editor/editor_export.cpp msgid "BPTC" @@ -2955,19 +2929,16 @@ msgid "S3TC" msgstr "S3TC" #: editor/editor_export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "ETC" -msgstr "TCP" +msgstr "ETC" #: editor/editor_export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "ETC2" msgstr "ETC2" #: editor/editor_export.cpp -#, fuzzy msgid "No BPTC Fallbacks" -msgstr "Fallback" +msgstr "Brak fallbacków BPTC" #: editor/editor_export.cpp platform/android/export/export_plugin.cpp #: platform/iphone/export/export.cpp platform/javascript/export/export.cpp @@ -2982,30 +2953,25 @@ msgid "Custom release template not found." msgstr "Nie znaleziono wÅ‚asnego szablonu wydania." #: editor/editor_export.cpp -#, fuzzy msgid "Prepare Template" -msgstr "ZarzÄ…dzaj szablonami" +msgstr "Przygotuj szablon" #: editor/editor_export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "The given export path doesn't exist." -msgstr "Podana Å›cieżka eksportu nie istnieje:" +msgstr "Podana Å›cieżka eksportu nie istnieje." #: editor/editor_export.cpp platform/javascript/export/export.cpp -#, fuzzy msgid "Template file not found: \"%s\"." -msgstr "Nie znaleziono pliku szablonu:" +msgstr "Nie znaleziono pliku szablonu: \"%s\"." #: editor/editor_export.cpp -#, fuzzy msgid "Failed to copy export template." -msgstr "Szablon eksportu nieprawidÅ‚owy:" +msgstr "Kopiowanie szablonu eksportu nie powiodÅ‚o siÄ™." #: editor/editor_export.cpp platform/windows/export/export.cpp #: platform/x11/export/export.cpp -#, fuzzy msgid "PCK Embedding" -msgstr "Wyrównanie" +msgstr "Osadzanie plików PCK" #: editor/editor_export.cpp msgid "On 32-bit exports the embedded PCK cannot be bigger than 4 GiB." @@ -3218,9 +3184,8 @@ msgid "Manage Editor Feature Profiles" msgstr "ZarzÄ…dzaj profilami funkcjonalnoÅ›ci edytora" #: editor/editor_feature_profile.cpp -#, fuzzy msgid "Default Feature Profile" -msgstr "Profil funkcjonalnoÅ›ci Godota" +msgstr "Profil domyÅ›lnych funkcji" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp msgid "Select Current Folder" @@ -3292,14 +3257,12 @@ msgid "Save a File" msgstr "Zapisz plik" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Access" -msgstr "Sukces!" +msgstr "DostÄ™p" #: editor/editor_file_dialog.cpp editor/editor_settings.cpp -#, fuzzy msgid "Display Mode" -msgstr "Tryb odtwarzania:" +msgstr "Tryb wyÅ›wietlania" #: editor/editor_file_dialog.cpp #: editor/import/resource_importer_layered_texture.cpp @@ -3312,30 +3275,25 @@ msgstr "Tryb odtwarzania:" #: scene/resources/environment.cpp scene/resources/material.cpp #: scene/resources/visual_shader.cpp #: servers/audio/effects/audio_effect_distortion.cpp -#, fuzzy msgid "Mode" -msgstr "Tryb przesuwania" +msgstr "Tryb" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Current Dir" -msgstr "Bieżący:" +msgstr "Bieżący katalog" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Current File" -msgstr "Bieżący profil:" +msgstr "Bieżący Plik" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Current Path" -msgstr "Bieżący:" +msgstr "Bieżąca Å›cieżka" #: editor/editor_file_dialog.cpp editor/editor_settings.cpp #: scene/gui/file_dialog.cpp -#, fuzzy msgid "Show Hidden Files" -msgstr "PrzeÅ‚Ä…cz ukryte pliki" +msgstr "Pokaż ukryte pliki" #: editor/editor_file_dialog.cpp msgid "Disable Overwrite Warning" @@ -3439,7 +3397,6 @@ msgid "(Re)Importing Assets" msgstr "(Ponowne) importowanie zasobów" #: editor/editor_file_system.cpp -#, fuzzy msgid "Reimport Missing Imported Files" msgstr "Zaimportuj ponownie brakujÄ…ce importowane pliki" @@ -3632,36 +3589,30 @@ msgid "Property:" msgstr "WÅ‚aÅ›ciwość:" #: editor/editor_inspector.cpp editor/editor_spin_slider.cpp -#, fuzzy msgid "Label" -msgstr "Wartość" +msgstr "Etykieta" #: editor/editor_inspector.cpp editor/editor_spin_slider.cpp #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Read Only" -msgstr "Tylko metody" +msgstr "Tylko do odczytu" #: editor/editor_inspector.cpp editor/plugins/item_list_editor_plugin.cpp -#, fuzzy msgid "Checkable" -msgstr "Element wyboru" +msgstr "Zaznaczalne" #: editor/editor_inspector.cpp editor/plugins/item_list_editor_plugin.cpp #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Checked" -msgstr "Zaznaczony element wyboru" +msgstr "Sprawdzone" #: editor/editor_inspector.cpp -#, fuzzy msgid "Draw Red" -msgstr "WywoÅ‚ania rysowania:" +msgstr "Rysuj czerwony" #: editor/editor_inspector.cpp -#, fuzzy msgid "Keying" -msgstr "Uruchom" +msgstr "Kluczowanie" #: editor/editor_inspector.cpp msgid "Pin value" @@ -4024,14 +3975,12 @@ msgid "Quick Open Script..." msgstr "Szybkie otwieranie skryptu..." #: editor/editor_node.cpp -#, fuzzy msgid "Save & Reload" msgstr "Zapisz i zrestartuj" #: editor/editor_node.cpp -#, fuzzy msgid "Save changes to '%s' before reloading?" -msgstr "Zapisać zmiany w \"%s\" przed zamkniÄ™ciem?" +msgstr "Zapisać zmiany w '%s' przed zrestartowaniem?" #: editor/editor_node.cpp msgid "Save & Close" @@ -4150,9 +4099,8 @@ msgid "Open Project Manager?" msgstr "Otworzyć menadżera projektów?" #: editor/editor_node.cpp -#, fuzzy msgid "Save changes to the following scene(s) before reloading?" -msgstr "Czy zapisać zmiany w aktualnej scenie/scenach przed wyjÅ›ciem?" +msgstr "Czy zapisać zmiany w aktualnej scenie/scenach przed zrestartowaniem?" #: editor/editor_node.cpp msgid "Save & Quit" @@ -4343,24 +4291,20 @@ msgstr "" #: editor/editor_node.cpp editor/editor_settings.cpp editor/scene_tree_dock.cpp #: servers/arvr/arvr_interface.cpp -#, fuzzy msgid "Interface" -msgstr "Interfejs użytkownika" +msgstr "Interfejs" #: editor/editor_node.cpp editor/editor_settings.cpp -#, fuzzy msgid "Scene Tabs" -msgstr "PrzeÅ‚Ä…cz zakÅ‚adkÄ™ sceny" +msgstr "ZakÅ‚adki scen" #: editor/editor_node.cpp -#, fuzzy msgid "Always Show Close Button" -msgstr "Zawsze pokazuj siatkÄ™" +msgstr "Zawsze pokazuj przycisk wyjÅ›cia" #: editor/editor_node.cpp editor/editor_settings.cpp -#, fuzzy msgid "Resize If Many Tabs" -msgstr "ZmieÅ„ rozmiar jeÅ›li wyÅ›wietlonych jest wiele zakÅ‚adek" +msgstr "Rozszerz rozmiar jeżeli jest wiele zakÅ‚adek" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Minimum Width" @@ -4371,9 +4315,8 @@ msgid "Output" msgstr "Konsola" #: editor/editor_node.cpp editor/editor_settings.cpp -#, fuzzy msgid "Always Clear Output On Play" -msgstr "Wyczyść wyjÅ›cie" +msgstr "Zawsze wyczyszczaj wyjÅ›cie gdy wÅ‚Ä…czono grÄ™" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Always Open Output On Play" @@ -4388,41 +4331,34 @@ msgid "Save On Focus Loss" msgstr "Zapisz przy utracie skupienia" #: editor/editor_node.cpp editor/editor_settings.cpp -#, fuzzy msgid "Save Each Scene On Quit" -msgstr "Zapisz gałąź jako scenÄ™" +msgstr "Zapisz każdÄ… scenÄ™ przed wyjÅ›ciem" #: editor/editor_node.cpp editor/editor_settings.cpp -#, fuzzy msgid "Quit Confirmation" -msgstr "WyÅ›wietlaj informacje" +msgstr "Potwierdzenie wyjÅ›cia" #: editor/editor_node.cpp -#, fuzzy msgid "Show Update Spinner" -msgstr "Ukryj wiatraczek aktualizacji" +msgstr "Pokaż suwak aktualizacji" #: editor/editor_node.cpp msgid "Update Continuously" msgstr "Aktualizuj ciÄ…gle" #: editor/editor_node.cpp -#, fuzzy msgid "Update Vital Only" -msgstr "Zaktualizuj istotne zmiany" +msgstr "Aktualizuj tylko istotne" #: editor/editor_node.cpp -#, fuzzy msgid "Localize Settings" -msgstr "Lokalizacja" +msgstr "Lokalizuj ustawienia" #: editor/editor_node.cpp -#, fuzzy msgid "Restore Scenes On Load" -msgstr "Pozyskaj wÄ™zeÅ‚ sceny" +msgstr "Przywracaj sceny po zaÅ‚adowaniu" #: editor/editor_node.cpp editor/editor_settings.cpp -#, fuzzy msgid "Show Thumbnail On Hover" msgstr "Pokaż miniaturÄ™ po najechaniu kursorem" @@ -4431,18 +4367,16 @@ msgid "Inspector" msgstr "Inspektor" #: editor/editor_node.cpp -#, fuzzy msgid "Default Property Name Style" -msgstr "Åšcieżka do projektu:" +msgstr "DomyÅ›lny styl nazw wÅ‚aÅ›ciwoÅ›ci" #: editor/editor_node.cpp msgid "Default Float Step" msgstr "DomyÅ›lny krok zmiennoprzecinkowy" #: editor/editor_node.cpp scene/gui/tree.cpp -#, fuzzy msgid "Disable Folding" -msgstr "WyÅ‚Ä…czony przycisk" +msgstr "WyÅ‚Ä…cz zwijanie" #: editor/editor_node.cpp msgid "Auto Unfold Foreign Scenes" @@ -4457,19 +4391,16 @@ msgid "Horizontal Vector Types Editing" msgstr "Edycja poziomych typów wektorów" #: editor/editor_node.cpp -#, fuzzy msgid "Open Resources In Current Inspector" -msgstr "Otwórz w inspektorze" +msgstr "Otwórz zasoby w aktualnym inspektorze" #: editor/editor_node.cpp -#, fuzzy msgid "Resources To Open In New Inspector" -msgstr "Otwórz w inspektorze" +msgstr "Zasoby do otwarcia w nowym inspektorze" #: editor/editor_node.cpp -#, fuzzy msgid "Default Color Picker Mode" -msgstr "DomyÅ›lny tryb pipety" +msgstr "DomyÅ›lny tryb pobieracza kolorów" #: editor/editor_node.cpp editor/plugins/version_control_editor_plugin.cpp msgid "Version Control" @@ -4477,7 +4408,7 @@ msgstr "Kontrola wersji" #: editor/editor_node.cpp editor/plugins/version_control_editor_plugin.cpp msgid "Username" -msgstr "Użytkownik" +msgstr "Nazwa użytkownika" #: editor/editor_node.cpp editor/plugins/version_control_editor_plugin.cpp msgid "SSH Public Key Path" @@ -5121,14 +5052,12 @@ msgid "Debugger" msgstr "Debugger" #: editor/editor_profiler.cpp -#, fuzzy msgid "Profiler Frame History Size" msgstr "Rozmiar historii klatek profilera" #: editor/editor_profiler.cpp -#, fuzzy msgid "Profiler Frame Max Functions" -msgstr "ZmieÅ„ nazwÄ™ funkcji" +msgstr "Maksymalna ilość funkcji klatki profilera" #: editor/editor_properties.cpp msgid "Edit Text:" @@ -5197,9 +5126,8 @@ msgid "Size:" msgstr "Rozmiar:" #: editor/editor_properties_array_dict.cpp -#, fuzzy msgid "Page:" -msgstr "Strona: " +msgstr "Strona:" #: editor/editor_properties_array_dict.cpp #: editor/plugins/theme_editor_plugin.cpp @@ -5261,20 +5189,17 @@ msgstr "Nowy %s" #: modules/visual_script/visual_script_func_nodes.cpp #: modules/visual_script/visual_script_nodes.cpp #: modules/visual_script/visual_script_yield_nodes.cpp -#, fuzzy msgid "Base Type" -msgstr "ZmieÅ„ typ podstawowy" +msgstr "Typ bazowy" #: editor/editor_resource_picker.cpp -#, fuzzy msgid "Edited Resource" -msgstr "Dodaj Zasób" +msgstr "Edytowany zasób" #: editor/editor_resource_picker.cpp scene/gui/line_edit.cpp #: scene/gui/slider.cpp scene/gui/spin_box.cpp -#, fuzzy msgid "Editable" -msgstr "Edytowalny element" +msgstr "Edytowalny" #: editor/editor_resource_picker.cpp editor/property_editor.cpp msgid "New Script" @@ -5285,9 +5210,8 @@ msgid "Extend Script" msgstr "Rozszerz skrypt" #: editor/editor_resource_picker.cpp -#, fuzzy msgid "Script Owner" -msgstr "Nazwa skryptu:" +msgstr "WÅ‚aÅ›ciciel skryptu" #: editor/editor_run_native.cpp msgid "" @@ -5300,9 +5224,8 @@ msgstr "" "jako uruchamialny." #: editor/editor_run_native.cpp -#, fuzzy msgid "Project Run" -msgstr "Projekt" +msgstr "Uruchom projekt" #: editor/editor_run_script.cpp msgid "Write your logic in the _run() method." @@ -5329,14 +5252,12 @@ msgid "Did you forget the '_run' method?" msgstr "Zapomniano metody \"_run\"?" #: editor/editor_settings.cpp -#, fuzzy msgid "Editor Language" -msgstr "UkÅ‚ad edytora" +msgstr "JÄ™zyk edytora" #: editor/editor_settings.cpp -#, fuzzy msgid "Display Scale" -msgstr "Pokaż wszystko" +msgstr "Rozmiar wyÅ›wietlania" #: editor/editor_settings.cpp msgid "Custom Display Scale" @@ -5359,21 +5280,18 @@ msgid "Font Hinting" msgstr "Czcionka podpowiedzi" #: editor/editor_settings.cpp -#, fuzzy msgid "Main Font" -msgstr "Scena główna" +msgstr "Główna czcionka" #: editor/editor_settings.cpp msgid "Main Font Bold" msgstr "Główna czcionka pogrubiona" #: editor/editor_settings.cpp -#, fuzzy msgid "Code Font" -msgstr "Dodaj punkt wÄ™zÅ‚a" +msgstr "Czcionka kodu" #: editor/editor_settings.cpp -#, fuzzy msgid "Dim Editor On Dialog Popup" msgstr "PrzygaÅ› edytor przy wyskakujÄ…cym oknie" @@ -5386,9 +5304,8 @@ msgid "Unfocused Low Processor Mode Sleep (µsec)" msgstr "Nieskoncentrowany tryb uÅ›pienia w trybie niskiego procesora (µsec)" #: editor/editor_settings.cpp -#, fuzzy msgid "Separate Distraction Mode" -msgstr "Tryb bez rozproszeÅ„" +msgstr "Oddzielny tryb bez rozproszeÅ„" #: editor/editor_settings.cpp msgid "Automatically Open Screenshots" @@ -5413,14 +5330,12 @@ msgid "Icon And Font Color" msgstr "Kolor ikony i czcionki" #: editor/editor_settings.cpp -#, fuzzy msgid "Base Color" -msgstr "Kolory" +msgstr "Kolor podstawowy" #: editor/editor_settings.cpp -#, fuzzy msgid "Accent Color" -msgstr "Wybierz Kolor" +msgstr "Kolor akcentu" #: editor/editor_settings.cpp scene/resources/environment.cpp msgid "Contrast" @@ -5431,109 +5346,92 @@ msgid "Relationship Line Opacity" msgstr "Przezroczystość linii relacji" #: editor/editor_settings.cpp -#, fuzzy msgid "Highlight Tabs" -msgstr "Zapisywanie map Å›wiatÅ‚a" +msgstr "PodÅ›wietl zakÅ‚adki" #: editor/editor_settings.cpp -#, fuzzy msgid "Border Size" -msgstr "Brzegowe piksele" +msgstr "Rozmiar obwódki" #: editor/editor_settings.cpp msgid "Use Graph Node Headers" msgstr "Użyj wykresu nagłówków wÄ™złów" #: editor/editor_settings.cpp -#, fuzzy msgid "Additional Spacing" -msgstr "ZapÄ™tlenie animacji" +msgstr "Dodatkowe odstÄ™py" #: editor/editor_settings.cpp -#, fuzzy msgid "Custom Theme" -msgstr "Motyw edytora" +msgstr "WÅ‚asny motyw" #: editor/editor_settings.cpp -#, fuzzy msgid "Show Script Button" -msgstr "Kółko w prawo" +msgstr "Pokaż przycisk skryptu" #: editor/editor_settings.cpp -#, fuzzy msgid "Directories" -msgstr "Kierunki" +msgstr "Katalogi" #: editor/editor_settings.cpp -#, fuzzy msgid "Autoscan Project Path" -msgstr "Åšcieżka do projektu:" +msgstr "Automatycznie skanuj Å›cieżkÄ™ projektu" #: editor/editor_settings.cpp -#, fuzzy msgid "Default Project Path" -msgstr "Åšcieżka do projektu:" +msgstr "DomyÅ›lna Å›cieżka projektu" #: editor/editor_settings.cpp -#, fuzzy msgid "On Save" -msgstr "Zapisz" +msgstr "Przy zapisie" #: editor/editor_settings.cpp -#, fuzzy msgid "Compress Binary Resources" -msgstr "Kopiuj zasób" +msgstr "Skompresuj binarne zasoby" #: editor/editor_settings.cpp msgid "Safe Save On Backup Then Rename" msgstr "Bezpieczne zapisywanie kopii zapasowej, a nastÄ™pnie zmiana nazwy" #: editor/editor_settings.cpp -#, fuzzy msgid "File Dialog" -msgstr "Okno dialogowe XForm" +msgstr "Dialog plików" #: editor/editor_settings.cpp -#, fuzzy msgid "Thumbnail Size" -msgstr "Miniatura..." +msgstr "Rozmiar miniaturki" #: editor/editor_settings.cpp msgid "Docks" msgstr "Doki" #: editor/editor_settings.cpp -#, fuzzy msgid "Scene Tree" -msgstr "Pozyskaj drzewo sceny" +msgstr "Drzewo sceny" #: editor/editor_settings.cpp msgid "Start Create Dialog Fully Expanded" msgstr "Rozpocznij tworzenie w peÅ‚ni rozwiniÄ™tego okna dialogowego" #: editor/editor_settings.cpp -#, fuzzy msgid "Always Show Folders" -msgstr "Zawsze pokazuj siatkÄ™" +msgstr "Zawsze pokazuj foldery" #: editor/editor_settings.cpp -#, fuzzy msgid "Property Editor" -msgstr "Edytor grup" +msgstr "Edytor wÅ‚aÅ›ciwoÅ›ci" #: editor/editor_settings.cpp msgid "Auto Refresh Interval" msgstr "Czas miÄ™dzy automatycznym odÅ›wieżaniem" #: editor/editor_settings.cpp -#, fuzzy msgid "Subresource Hue Tint" -msgstr "Zasoby" +msgstr "OdcieÅ„ barwy zasobów podrzÄ™dnych" #: editor/editor_settings.cpp -#, fuzzy msgid "Color Theme" -msgstr "Motyw edytora" +msgstr "Motyw koloru" #: editor/editor_settings.cpp scene/3d/label_3d.cpp #: scene/resources/default_theme/default_theme.cpp @@ -5542,14 +5440,12 @@ msgstr "OdstÄ™py miÄ™dzy liniami" #: editor/editor_settings.cpp editor/plugins/script_text_editor.cpp #: modules/gdscript/editor/gdscript_highlighter.cpp -#, fuzzy msgid "Highlighting" -msgstr "OÅ›wietlenie bezpoÅ›rednie" +msgstr "PodÅ›wietlanie" #: editor/editor_settings.cpp scene/gui/text_edit.cpp -#, fuzzy msgid "Syntax Highlighting" -msgstr "PodÅ›wietlacz skÅ‚adni" +msgstr "PodÅ›wietlanie skÅ‚adni" #: editor/editor_settings.cpp scene/gui/text_edit.cpp msgid "Highlight All Occurrences" @@ -5564,28 +5460,24 @@ msgid "Highlight Type Safe Lines" msgstr "Wyróżnij typy bezpiecznych linii" #: editor/editor_settings.cpp -#, fuzzy msgid "Indent" -msgstr "WciÄ™cie w lewo" +msgstr "WciÄ™cie" #: editor/editor_settings.cpp editor/plugins/script_text_editor.cpp msgid "Auto Indent" msgstr "Automatyczne wciÄ™cie" #: editor/editor_settings.cpp -#, fuzzy msgid "Convert Indent On Save" -msgstr "ZamieÅ„ wciÄ™cia na spacje" +msgstr "ZamieÅ„ wciÄ™cia przy zapisie" #: editor/editor_settings.cpp scene/gui/text_edit.cpp -#, fuzzy msgid "Draw Tabs" -msgstr "WywoÅ‚ania rysowania:" +msgstr "Rysuj taby" #: editor/editor_settings.cpp scene/gui/text_edit.cpp -#, fuzzy msgid "Draw Spaces" -msgstr "WywoÅ‚ania rysowania:" +msgstr "Rysuj spacje" #: editor/editor_settings.cpp editor/plugins/spatial_editor_plugin.cpp #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/tile_map.cpp @@ -5603,9 +5495,8 @@ msgid "V Scroll Speed" msgstr "Pionowa szybkość przewijania" #: editor/editor_settings.cpp -#, fuzzy msgid "Show Minimap" -msgstr "Pokaż pozycjÄ™ poczÄ…tkowÄ…" +msgstr "Pokaż minimapÄ™" #: editor/editor_settings.cpp msgid "Minimap Width" @@ -5616,9 +5507,8 @@ msgid "Mouse Extra Buttons Navigate History" msgstr "Historia nawigacji dodatkowych przycisków myszy" #: editor/editor_settings.cpp -#, fuzzy msgid "Drag And Drop Selection" -msgstr "Wybór GridMap" +msgstr "PrzeciÄ…gnij i upuść zaznaczenie" #: editor/editor_settings.cpp msgid "Stay In Script Editor On Node Selected" @@ -5629,9 +5519,8 @@ msgid "Appearance" msgstr "WyglÄ…d" #: editor/editor_settings.cpp scene/gui/text_edit.cpp -#, fuzzy msgid "Show Line Numbers" -msgstr "Numer linii:" +msgstr "Pokaż numery linii" #: editor/editor_settings.cpp #, fuzzy @@ -5669,7 +5558,7 @@ msgstr "Wytyczne dotyczÄ…ce dÅ‚ugoÅ›ci linii miÄ™kkiej kolumny" #: editor/editor_settings.cpp msgid "Line Length Guideline Hard Column" -msgstr "" +msgstr "Wytyczne dotyczÄ…ce dÅ‚ugoÅ›ci linii twardej kolumny" #: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp #, fuzzy @@ -5678,33 +5567,31 @@ msgstr "Edytor skryptów" #: editor/editor_settings.cpp msgid "Show Members Overview" -msgstr "" +msgstr "Pokaż podglÄ…d czÅ‚onków" #: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Files" -msgstr "Plik" +msgstr "Pliki" #: editor/editor_settings.cpp -#, fuzzy msgid "Trim Trailing Whitespace On Save" -msgstr "Przytnij koÅ„cowe biaÅ‚e znaki" +msgstr "Przytnij koÅ„cowe biaÅ‚e znaki przy zapisie" #: editor/editor_settings.cpp msgid "Autosave Interval Secs" -msgstr "" +msgstr "czas autozapisu sek" #: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp msgid "Restore Scripts On Load" -msgstr "" +msgstr "Przywróć skrypty przy zaÅ‚adowaniu" #: editor/editor_settings.cpp msgid "Auto Reload And Parse Scripts On Save" -msgstr "" +msgstr "Automatycznie przeÅ‚aduj i zanalizuj skrypty przy zapisie" #: editor/editor_settings.cpp msgid "Auto Reload Scripts On External Change" -msgstr "" +msgstr "Automatycznie przeÅ‚aduj skrypty przy zmianie zewnÄ™trznej" #: editor/editor_settings.cpp #, fuzzy @@ -5713,7 +5600,7 @@ msgstr "Opóźnienia wymuszania shaderów" #: editor/editor_settings.cpp msgid "Sort Members Outline Alphabetically" -msgstr "" +msgstr "Posortuj szkic czÅ‚onków alfabetycznie" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Cursor" @@ -5721,19 +5608,19 @@ msgstr "Kursor" #: editor/editor_settings.cpp msgid "Scroll Past End Of File" -msgstr "" +msgstr "Przewijaj za koniec pliku" #: editor/editor_settings.cpp msgid "Block Caret" -msgstr "" +msgstr "Zablokuj Karete" #: editor/editor_settings.cpp msgid "Caret Blink" -msgstr "" +msgstr "MigniÄ™cie karety" #: editor/editor_settings.cpp msgid "Caret Blink Speed" -msgstr "" +msgstr "PrÄ™dkość migania karety" #: editor/editor_settings.cpp #, fuzzy @@ -5748,15 +5635,15 @@ msgstr "UkoÅ„czenie" #: editor/editor_settings.cpp msgid "Idle Parse Delay" -msgstr "" +msgstr "Opóźnienie interpretacji" #: editor/editor_settings.cpp msgid "Auto Brace Complete" -msgstr "" +msgstr "Automatyczne zamykanie nawiasów" #: editor/editor_settings.cpp msgid "Code Complete Delay" -msgstr "" +msgstr "Opóźnienie zakoÅ„czenia kodu" #: editor/editor_settings.cpp msgid "Put Callhint Tooltip Below Current Line" @@ -13095,9 +12982,10 @@ msgstr "Opcje przyciÄ…gania" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "PrzesuniÄ™cie:" @@ -14534,16 +14422,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Niepoprawna Å›cieżka projektu (zmienić cokolwiek?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Nie udaÅ‚o siÄ™ wczytać project.godot w Å›cieżce projektu (bÅ‚Ä…d %d). Może go " "brakować lub być uszkodzony." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "Nie można byÅ‚o edytować engine.cfg w Å›cieżce projektu." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Nie można otworzyć projektu w \"%s\"." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -17074,7 +16963,7 @@ msgstr "Dodaj pole architektury" #: modules/gdnative/gdnative_library_editor_plugin.cpp msgid "GDNativeLibrary" -msgstr "GDNativeLibrary" +msgstr "Natywna biblioteka GD" #: modules/gdnative/gdnative_library_singleton_editor.cpp msgid "Enabled GDNative Singleton" @@ -18383,7 +18272,7 @@ msgstr "Iterator" #: modules/visual_script/visual_script_flow_control.cpp msgid "for (elem) in (input):" -msgstr "for (element) in (wejÅ›cie):" +msgstr "dla (elementu) w (input)" #: modules/visual_script/visual_script_flow_control.cpp #, fuzzy @@ -18555,9 +18444,8 @@ msgstr "Utwórz TablicÄ™" #: modules/visual_script/visual_script_nodes.cpp scene/resources/material.cpp #: scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Operator" -msgstr "Iterator" +msgstr "Operator" #: modules/visual_script/visual_script_nodes.cpp #, fuzzy @@ -18634,7 +18522,7 @@ msgstr "Pozyskaj samego siebie" #: modules/visual_script/visual_script_nodes.cpp msgid "CustomNode" -msgstr "NiestandardowyWÄ™zeÅ‚" +msgstr "Niestandardowy wÄ™zeÅ‚" #: modules/visual_script/visual_script_nodes.cpp msgid "Custom node has no _step() method, can't process graph." @@ -24139,6 +24027,15 @@ msgstr "BÅ‚Ä…d" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Sortuj" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" @@ -24954,7 +24851,7 @@ msgstr "" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Caret" -msgstr "Karetka" +msgstr "Kareta" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Blink" diff --git a/editor/translations/pr.po b/editor/translations/pr.po index e8e4e5c79d..45bbc8daf0 100644 --- a/editor/translations/pr.po +++ b/editor/translations/pr.po @@ -12947,9 +12947,10 @@ msgstr "Yar, Blow th' Selected Down!" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14341,12 +14342,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -23398,6 +23398,15 @@ msgstr "Error loading yer Calligraphy Pen." msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Discharge ye' Signal" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/pt.po b/editor/translations/pt.po index 3052fff9bb..85814ded34 100644 --- a/editor/translations/pt.po +++ b/editor/translations/pt.po @@ -13,7 +13,7 @@ # Rueben Stevens <supercell03@gmail.com>, 2017. # SARDON <fabio3_Santos@hotmail.com>, 2017. # Vinicius Gonçalves <viniciusgoncalves21@gmail.com>, 2017. -# ssantos <ssantos@web.de>, 2018, 2019, 2020, 2021. +# ssantos <ssantos@web.de>, 2018, 2019, 2020, 2021, 2022. # Gonçalo Dinis Guerreiro João <goncalojoao205@gmail.com>, 2019. # Manuela Silva <mmsrs@sky.com>, 2020. # Murilo Gama <murilovsky2030@gmail.com>, 2020, 2022. @@ -29,13 +29,15 @@ # Rafael Testa <rafael1testa@gmail.com>, 2022. # Baiterson <baiter160@gmail.com>, 2022. # Tuily <brizolla.tuily@gmail.com>, 2022. +# Thuany <thutymsoares@gmail.com>, 2022. +# Isaque Mendes <isaquemendes405@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-19 05:22+0000\n" -"Last-Translator: Tuily <brizolla.tuily@gmail.com>\n" +"PO-Revision-Date: 2022-11-19 08:35+0000\n" +"Last-Translator: ssantos <ssantos@web.de>\n" "Language-Team: Portuguese <https://hosted.weblate.org/projects/godot-engine/" "godot/pt/>\n" "Language: pt\n" @@ -43,7 +45,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.14.1\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -2901,9 +2903,8 @@ msgid "ETC2" msgstr "ETC2" #: editor/editor_export.cpp -#, fuzzy msgid "No BPTC Fallbacks" -msgstr "Forçar Shader de Reserva" +msgstr "Sem Fallbacks para imagens BPTC" #: editor/editor_export.cpp platform/android/export/export_plugin.cpp #: platform/iphone/export/export.cpp platform/javascript/export/export.cpp @@ -5593,9 +5594,8 @@ msgid "Caret Blink Speed" msgstr "Velocidade do Piscamento do Cursor" #: editor/editor_settings.cpp -#, fuzzy msgid "Right Click Moves Caret" -msgstr "Clique direito para adicionar ponto" +msgstr "Clique direito move cursor de texto" #: editor/editor_settings.cpp modules/gdscript/gdscript.cpp #: modules/gdscript/gdscript_editor.cpp @@ -5624,23 +5624,20 @@ msgid "Callhint Tooltip Offset" msgstr "Deslocamento da Sugestão de Chamada" #: editor/editor_settings.cpp -#, fuzzy msgid "Complete File Paths" -msgstr "Copiar Caminho do Nó" +msgstr "Caminhos Completos dos Arquivos" #: editor/editor_settings.cpp modules/gdscript/gdscript_editor.cpp -#, fuzzy msgid "Add Type Hints" -msgstr "Adicionar Tipo" +msgstr "Adicionar Dicas de Tipo" #: editor/editor_settings.cpp msgid "Use Single Quotes" msgstr "Use Citação Única" #: editor/editor_settings.cpp -#, fuzzy msgid "Show Help Index" -msgstr "Mostrar Ajudantes" +msgstr "Mostrar Ãndice de Dicas" #: editor/editor_settings.cpp msgid "Help Font Size" @@ -5675,32 +5672,27 @@ msgid "Secondary Grid Color" msgstr "Cor da Grade Secundária" #: editor/editor_settings.cpp -#, fuzzy msgid "Selection Box Color" -msgstr "Apenas seleção" +msgstr "Seleção de Cor da Caixa" #: editor/editor_settings.cpp editor/plugins/path_editor_plugin.cpp #: editor/spatial_editor_gizmos.cpp modules/csg/csg_gizmos.cpp -#, fuzzy msgid "3D Gizmos" -msgstr "Bugigangas" +msgstr "Bugigangas 3D" #: editor/editor_settings.cpp editor/plugins/path_editor_plugin.cpp #: editor/spatial_editor_gizmos.cpp modules/csg/csg_gizmos.cpp -#, fuzzy msgid "Gizmo Colors" -msgstr "Cores de Emissão" +msgstr "Cores das Bugigangas" #: editor/editor_settings.cpp -#, fuzzy msgid "Instanced" -msgstr "Instância" +msgstr "Instânciado" #: editor/editor_settings.cpp modules/gltf/gltf_node.cpp #: scene/3d/physics_body.cpp -#, fuzzy msgid "Joint" -msgstr "Ponto" +msgstr "Conjunto" #: editor/editor_settings.cpp scene/2d/collision_shape_2d.cpp #: scene/2d/cpu_particles_2d.cpp scene/2d/touch_screen_button.cpp @@ -5732,58 +5724,48 @@ msgid "Grid Division Level Bias" msgstr "Viés de NÃvel de Divisão de Grade" #: editor/editor_settings.cpp -#, fuzzy msgid "Grid XZ Plane" -msgstr "Pintura do GridMap" +msgstr "Grade do Plano XZ" #: editor/editor_settings.cpp -#, fuzzy msgid "Grid XY Plane" -msgstr "Pintura do GridMap" +msgstr "Grade do Plano XY" #: editor/editor_settings.cpp -#, fuzzy msgid "Grid YZ Plane" -msgstr "Pintura do GridMap" +msgstr "Grade do Plano YZ" #: editor/editor_settings.cpp -#, fuzzy msgid "Default FOV" -msgstr "Predefinição" +msgstr "Campo de Visão (FOV) Padrão" #: editor/editor_settings.cpp -#, fuzzy msgid "Default Z Near" -msgstr "Tema Predefinido" +msgstr "Z Padrão Próximo" #: editor/editor_settings.cpp -#, fuzzy msgid "Default Z Far" -msgstr "Predefinição" +msgstr "Z Padrão Longe" #: editor/editor_settings.cpp msgid "Lightmap Baking Number Of CPU Threads" msgstr "Número de threads da CPU para Baking do Mapa de luz" #: editor/editor_settings.cpp -#, fuzzy msgid "Navigation Scheme" -msgstr "Modo Navegação" +msgstr "Esquema de Navegação" #: editor/editor_settings.cpp -#, fuzzy msgid "Invert Y Axis" -msgstr "Editar Eixo Y" +msgstr "Inverter Eixo Y" #: editor/editor_settings.cpp -#, fuzzy msgid "Invert X Axis" -msgstr "Editar Eixo X" +msgstr "Inverter Eixo X" #: editor/editor_settings.cpp -#, fuzzy msgid "Zoom Style" -msgstr "Diminuir Zoom" +msgstr "Estilo de Zoom" #: editor/editor_settings.cpp msgid "Emulate Numpad" @@ -5794,28 +5776,24 @@ msgid "Emulate 3 Button Mouse" msgstr "Emular Mouse de 3 Botões" #: editor/editor_settings.cpp -#, fuzzy msgid "Orbit Modifier" -msgstr "Ordenar por Primeiro Modificado" +msgstr "Modificador de Órbita" #: editor/editor_settings.cpp -#, fuzzy msgid "Pan Modifier" -msgstr "Modo deslocamento" +msgstr "Modificador de Panorâmica" #: editor/editor_settings.cpp -#, fuzzy msgid "Zoom Modifier" -msgstr "Modificado" +msgstr "Modificador de Zoom" #: editor/editor_settings.cpp editor/plugins/spatial_editor_plugin.cpp msgid "Warped Mouse Panning" msgstr "Panorama do Mouse Distorcido" #: editor/editor_settings.cpp -#, fuzzy msgid "Navigation Feel" -msgstr "Modo Navegação" +msgstr "Sensação de Navegação" #: editor/editor_settings.cpp msgid "Orbit Sensitivity" @@ -5826,82 +5804,68 @@ msgid "Orbit Inertia" msgstr "Inércia da Órbita" #: editor/editor_settings.cpp -#, fuzzy msgid "Translation Inertia" -msgstr "Traduções" +msgstr "Inércia de Translação" #: editor/editor_settings.cpp -#, fuzzy msgid "Zoom Inertia" -msgstr "Aumentar Zoom" +msgstr "Inércia de Zoom" #: editor/editor_settings.cpp -#, fuzzy msgid "Freelook" -msgstr "Freelook Cima" +msgstr "Visão Livre" #: editor/editor_settings.cpp -#, fuzzy msgid "Freelook Navigation Scheme" -msgstr "Criar Malha de Navegação" +msgstr "Esquema de Navegação de Visão Livre" #: editor/editor_settings.cpp -#, fuzzy msgid "Freelook Sensitivity" -msgstr "Freelook Esquerda" +msgstr "Sensibilidade de visualização livre" #: editor/editor_settings.cpp -#, fuzzy msgid "Freelook Inertia" -msgstr "Freelook Esquerda" +msgstr "Inércia de Visualização livre" #: editor/editor_settings.cpp -#, fuzzy msgid "Freelook Base Speed" -msgstr "Freelook Modificador de Velocidade" +msgstr "Velocidade Base de Visão Livre" #: editor/editor_settings.cpp -#, fuzzy msgid "Freelook Activation Modifier" -msgstr "Freelook Modificador de Lentidão" +msgstr "Modificador de Ativação de Visão Livre" #: editor/editor_settings.cpp -#, fuzzy msgid "Freelook Speed Zoom Link" -msgstr "Freelook Modificador de Velocidade" +msgstr "Velocidade de Ligação do Visão Livre" #: editor/editor_settings.cpp editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Grid Color" -msgstr "Escolher cor" +msgstr "Cor da Grade" #: editor/editor_settings.cpp -#, fuzzy msgid "Guides Color" -msgstr "Escolher cor" +msgstr "Cor Guia" #: editor/editor_settings.cpp -#, fuzzy msgid "Smart Snapping Line Color" -msgstr "Ajuste Inteligente" +msgstr "Cor da Linha de Encaixe Inteligente" #: editor/editor_settings.cpp msgid "Bone Width" msgstr "Largura do Osso" #: editor/editor_settings.cpp -#, fuzzy msgid "Bone Color 1" -msgstr "Renomear Item Cor" +msgstr "Cor de Osso 1" #: editor/editor_settings.cpp -#, fuzzy msgid "Bone Color 2" -msgstr "Renomear Item Cor" +msgstr "Cor de Osso 2" #: editor/editor_settings.cpp msgid "Bone Selected Color" -msgstr "Cor dos Ossos Selecionados" +msgstr "Cor Selecionada do Osso" #: editor/editor_settings.cpp msgid "Bone IK Color" @@ -5936,32 +5900,28 @@ msgid "Pan Speed" msgstr "Velocidade de Rotação" #: editor/editor_settings.cpp editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Poly Editor" -msgstr "Editor UV de PolÃgono 2D" +msgstr "Editor de PolÃgonos" #: editor/editor_settings.cpp msgid "Point Grab Radius" msgstr "Raio do Ponto de Captura" #: editor/editor_settings.cpp editor/plugins/polygon_2d_editor_plugin.cpp -#, fuzzy msgid "Show Previous Outline" -msgstr "Plano Anterior" +msgstr "Exibir Prévia Anterior" #: editor/editor_settings.cpp editor/scene_tree_dock.cpp -#, fuzzy msgid "Autorename Animation Tracks" -msgstr "Renomear Animação" +msgstr "Renomear Automaticamente Faixa de Animação" #: editor/editor_settings.cpp msgid "Default Create Bezier Tracks" msgstr "Criar Faixas de Bézier Padrão" #: editor/editor_settings.cpp -#, fuzzy msgid "Default Create Reset Tracks" -msgstr "Criar Pista(s) RESET" +msgstr "Criar Faixa RESET Por Padrão" #: editor/editor_settings.cpp msgid "Onion Layers Past Color" @@ -6877,9 +6837,8 @@ msgid "Use Ambient" msgstr "Usar Ambiente" #: editor/import/resource_importer_bitmask.cpp -#, fuzzy msgid "Create From" -msgstr "Criar Pasta" +msgstr "Criar à Partir de" #: editor/import/resource_importer_bitmask.cpp #: servers/audio/effects/audio_effect_compressor.cpp @@ -6891,18 +6850,16 @@ msgstr "Limite" #: editor/import/resource_importer_scene.cpp #: editor/import/resource_importer_texture.cpp #: editor/import/resource_importer_wav.cpp scene/3d/gi_probe.cpp -#, fuzzy msgid "Compress" -msgstr "Componentes" +msgstr "Comprimir" #: editor/import/resource_importer_csv_translation.cpp msgid "Delimiter" msgstr "Delimitador" #: editor/import/resource_importer_layered_texture.cpp -#, fuzzy msgid "ColorCorrect" -msgstr "Função Cor." +msgstr "Corrigir as Cores" #: editor/import/resource_importer_layered_texture.cpp msgid "No BPTC If RGB" @@ -6945,9 +6902,8 @@ msgid "sRGB" msgstr "sRGB" #: editor/import/resource_importer_layered_texture.cpp -#, fuzzy msgid "Slices" -msgstr "Corte automático" +msgstr "Fatias" #: editor/import/resource_importer_layered_texture.cpp #: scene/gui/aspect_ratio_container.cpp scene/gui/control.cpp @@ -6964,9 +6920,8 @@ msgid "Vertical" msgstr "Vertical" #: editor/import/resource_importer_obj.cpp -#, fuzzy msgid "Generate Tangents" -msgstr "Gerar Pontos" +msgstr "Gerar Tangentes" #: editor/import/resource_importer_obj.cpp msgid "Scale Mesh" @@ -7095,19 +7050,16 @@ msgid "Store In Subdir" msgstr "Armazenar no Subdiretório" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Filter Script" -msgstr "Scripts de filtro" +msgstr "Filtrar Script" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Keep Custom Tracks" -msgstr "Transformar" +msgstr "Manter Faixas Personalizadas" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Optimizer" -msgstr "Otimizar" +msgstr "Otimizador" #: editor/import/resource_importer_scene.cpp #: editor/plugins/item_list_editor_plugin.cpp main/main.cpp @@ -7121,9 +7073,8 @@ msgstr "Otimizar" #: scene/3d/sprite_3d.cpp scene/gui/graph_edit.cpp #: scene/gui/rich_text_label.cpp scene/resources/curve.cpp #: scene/resources/environment.cpp scene/resources/material.cpp -#, fuzzy msgid "Enabled" -msgstr "Ativar" +msgstr "Ativado" #: editor/import/resource_importer_scene.cpp msgid "Max Linear Error" @@ -7134,19 +7085,16 @@ msgid "Max Angular Error" msgstr "Máximo de Erros Angulares" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Max Angle" -msgstr "Valor" +msgstr "Ângulo Máximo" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Remove Unused Tracks" -msgstr "Remover Pista de Animação" +msgstr "Remover Faixas não Utilizadas" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Clips" -msgstr "Clips Anim" +msgstr "Clipes" #: editor/import/resource_importer_scene.cpp scene/2d/cpu_particles_2d.cpp #: scene/2d/particles_2d.cpp scene/3d/area.cpp scene/3d/cpu_particles.cpp @@ -7428,14 +7376,12 @@ msgid "Raw" msgstr "Raw" #: editor/inspector_dock.cpp -#, fuzzy msgid "Capitalized" -msgstr "Capitalizar" +msgstr "Capitalizado" #: editor/inspector_dock.cpp -#, fuzzy msgid "Localized" -msgstr "Localização" +msgstr "Localizado" #: editor/inspector_dock.cpp msgid "Localization not available for current language." @@ -7984,9 +7930,8 @@ msgid "New" msgstr "Novo" #: editor/plugins/animation_player_editor_plugin.cpp -#, fuzzy msgid "Paste As Reference" -msgstr "Referência de classe %s" +msgstr "Colar como Referência" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Edit Transitions..." @@ -8176,9 +8121,8 @@ msgid "Set the end animation. This is useful for sub-transitions." msgstr "Definir a animação final. Útil para sub-transições." #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Transition:" -msgstr "Transição: " +msgstr "Transição:" #: editor/plugins/animation_state_machine_editor.cpp msgid "Play Mode:" @@ -8478,25 +8422,21 @@ msgid "Loading..." msgstr "A Carregar..." #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgctxt "Pagination" msgid "First" msgstr "Primeiro" #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgctxt "Pagination" msgid "Previous" msgstr "Anterior" #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgctxt "Pagination" msgid "Next" msgstr "Próximo" #: editor/plugins/asset_library_editor_plugin.cpp -#, fuzzy msgctxt "Pagination" msgid "Last" msgstr "Último" @@ -9110,23 +9050,20 @@ msgid "View" msgstr "Vista" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Show" -msgstr "Mostrar grelha" +msgstr "Exibir" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Show When Snapping" -msgstr "Ajuste Inteligente" +msgstr "Exibir ao Encaixar" #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Hide" msgstr "Esconder" #: editor/plugins/canvas_item_editor_plugin.cpp -#, fuzzy msgid "Toggle Grid" -msgstr "Alternar Modo" +msgstr "Alternar Grade" #: editor/plugins/canvas_item_editor_plugin.cpp #: editor/plugins/polygon_2d_editor_plugin.cpp @@ -9485,9 +9422,8 @@ msgid "Swap Gradient Fill Points" msgstr "Trocar Pontos de Preenchimento de Gradiente" #: editor/plugins/gradient_texture_2d_editor_plugin.cpp -#, fuzzy msgid "Toggle Grid Snap" -msgstr "Alternar Modo" +msgstr "Alternar Encaixe da Grade" #: editor/plugins/item_list_editor_plugin.cpp editor/project_export.cpp #: scene/3d/label_3d.cpp scene/gui/button.cpp scene/gui/dialogs.cpp @@ -9510,9 +9446,8 @@ msgstr "ID" #: editor/plugins/item_list_editor_plugin.cpp #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Separator" -msgstr "Separação:" +msgstr "Separador" #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" @@ -9747,9 +9682,8 @@ msgstr "" "%s" #: editor/plugins/mesh_library_editor_plugin.cpp -#, fuzzy msgid "MeshLibrary" -msgstr "Bib. de Malhas" +msgstr "Biblioteca de Malhas" #: editor/plugins/mesh_library_editor_plugin.cpp msgid "Add Item" @@ -9772,14 +9706,12 @@ msgid "Update from Scene" msgstr "Atualizar a partir da Cena" #: editor/plugins/mesh_library_editor_plugin.cpp -#, fuzzy msgid "Apply without Transforms" -msgstr "Aplicar Transformações do MeshInstance" +msgstr "Aplicar sem Transformações" #: editor/plugins/mesh_library_editor_plugin.cpp -#, fuzzy msgid "Apply with Transforms" -msgstr "Aplicar Transformações do MeshInstance" +msgstr "Aplicar com Transformações" #: editor/plugins/multimesh_editor_plugin.cpp msgid "No mesh source specified (and no MultiMesh set in node)." @@ -9945,9 +9877,8 @@ msgid "Volume" msgstr "Volume" #: editor/plugins/particles_editor_plugin.cpp -#, fuzzy msgid "Emission Source:" -msgstr "Fonte de emissão: " +msgstr "Fonte de emissão:" #: editor/plugins/particles_editor_plugin.cpp msgid "A processor material of type 'ParticlesMaterial' is required." @@ -10641,19 +10572,16 @@ msgid "External" msgstr "Externo" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Use External Editor" -msgstr "Depurar com Editor Externo" +msgstr "Utilizar Editor Externo" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Exec Path" -msgstr "Exportar Caminho" +msgstr "Caminho de Execução" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Script Temperature Enabled" -msgstr "Selecionar Ficheiro de Modelo" +msgstr "Temperatura de Script Ativado" #: editor/plugins/script_editor_plugin.cpp msgid "Highlight Current Script" @@ -10668,19 +10596,16 @@ msgid "Current Script Background Color" msgstr "Cor de Fundo Script Atual" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Group Help Pages" -msgstr "Agrupar Seleção" +msgstr "Agrupar Páginas de Ajuda" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Sort Scripts By" -msgstr "Criar Script" +msgstr "Ordenar Scripts Por" #: editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "List Script Names As" -msgstr "Nome do Script:" +msgstr "Listar Nomes de Script Como" #: editor/plugins/script_editor_plugin.cpp msgid "Exec Flags" @@ -11042,15 +10967,13 @@ msgstr "Translação" #. TRANSLATORS: Refers to changing the scale of a node in the 3D editor. #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Scaling:" -msgstr "A escalar: " +msgstr "Escala:" #. TRANSLATORS: Refers to changing the position of a node in the 3D editor. #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Translating:" -msgstr "A transladar: " +msgstr "Traduzir:" #: editor/plugins/spatial_editor_plugin.cpp msgid "Rotating %s degrees." @@ -11201,10 +11124,11 @@ msgid "(Not in GLES2)" msgstr "(Não em GLES2)" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "" "Debug draw modes are only available when using the GLES3 renderer, not GLES2." -msgstr "Não disponÃvel para o renderizador GLES2." +msgstr "" +"Modos de Debug draw só estão disponÃveis para uso com o renderizador GLES3. " +"GLES2 não suporta esta funcionalidade." #: editor/plugins/spatial_editor_plugin.cpp msgid "Freelook Left" @@ -11506,9 +11430,8 @@ msgid "Manipulator Gizmo Opacity" msgstr "Opacidade do Gizmo do Manipulador" #: editor/plugins/spatial_editor_plugin.cpp -#, fuzzy msgid "Show Viewport Rotation Gizmo" -msgstr "Bloquear Rotação da Vista" +msgstr "Exibir Gizmo de Rotação do Viewport" #: editor/plugins/spatial_editor_plugin.cpp msgid "Unnamed Gizmo" @@ -11559,9 +11482,8 @@ msgid "Invalid geometry, can't replace by mesh." msgstr "Geometria inválida, não substituÃvel por malha." #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Convert to MeshInstance2D" -msgstr "Converter para Mesh2D" +msgstr "Converter para MeshInstance2D" #: editor/plugins/sprite_editor_plugin.cpp msgid "Invalid geometry, can't create polygon." @@ -11592,19 +11514,16 @@ msgid "Sprite" msgstr "Sprite" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Simplification:" -msgstr "Simplificação: " +msgstr "Simplificação:" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Shrink (Pixels):" -msgstr "Encolher (Pixeis): " +msgstr "Encolher (Pixels):" #: editor/plugins/sprite_editor_plugin.cpp -#, fuzzy msgid "Grow (Pixels):" -msgstr "Aumentar (Pixeis): " +msgstr "Crescer (Pixels):" #: editor/plugins/sprite_editor_plugin.cpp msgid "Update Preview" @@ -11667,9 +11586,8 @@ msgid "New Animation" msgstr "Nova Animação" #: editor/plugins/sprite_frames_editor_plugin.cpp -#, fuzzy msgid "Filter animations" -msgstr "Métodos de filtro" +msgstr "Filtrar animações" #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Speed:" @@ -11969,9 +11887,8 @@ msgstr "" "Fechar na mesma?" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Remove Type" -msgstr "Remover Tile" +msgstr "Remover Tipo" #: editor/plugins/theme_editor_plugin.cpp msgid "" @@ -12015,14 +11932,12 @@ msgstr "" "Adicione-lhe mais itens manualmente ou importando-os de outro tema." #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Add Theme Type" -msgstr "Adicionar Tipo de Item" +msgstr "Adicionar Tipo de Tema" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Remove Theme Type" -msgstr "Remover Remoto" +msgstr "Remover Tipo de Tema" #: editor/plugins/theme_editor_plugin.cpp msgid "Add Color Item" @@ -12137,9 +12052,8 @@ msgid "Select Another Theme Resource:" msgstr "Selecionar Outro Recurso Tema:" #: editor/plugins/theme_editor_plugin.cpp -#, fuzzy msgid "Theme Resource" -msgstr "Renomear recurso" +msgstr "Recurso de Tema" #: editor/plugins/theme_editor_plugin.cpp msgid "Another Theme" @@ -12476,45 +12390,37 @@ msgid "Palette Min Width" msgstr "Largura MÃnima da Paleta" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Palette Item H Separation" -msgstr "Separador Nomeado" +msgstr "Separação Horizontal dos Itens de Paleta" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Show Tile Names" -msgstr "Mostrar Todos os Idiomas" +msgstr "Mostrar Nomes dos Tiles" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Show Tile Ids" -msgstr "Mostrar réguas" +msgstr "Mostrar Ids dos Tiles" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Sort Tiles By Name" -msgstr "Ordenar ficheiros" +msgstr "Ordenar Tiles por Nome" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Bucket Fill Preview" -msgstr "Balde de Enchimento" +msgstr "Pré-visualização do Preenchimento de Balde" #: editor/plugins/tile_map_editor_plugin.cpp #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Editor Side" -msgstr "Editor" +msgstr "Lado do Editor" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Display Grid" -msgstr "Vista Overdraw" +msgstr "Mostrar Grid" #: editor/plugins/tile_map_editor_plugin.cpp -#, fuzzy msgid "Axis Color" -msgstr "Escolher cor" +msgstr "Cor do Eixo" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Add Texture(s) to TileSet." @@ -12851,9 +12757,8 @@ msgid "This property can't be changed." msgstr "Esta propriedade não pode ser alterada." #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Snap Options" -msgstr "Opções de Ajuste" +msgstr "Opções de Encaixe" #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/animated_sprite.cpp #: scene/2d/camera_2d.cpp scene/2d/cpu_particles_2d.cpp scene/2d/light_2d.cpp @@ -12861,12 +12766,12 @@ msgstr "Opções de Ajuste" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp -#, fuzzy +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" -msgstr "Compensação:" +msgstr "Deslocamento" #: editor/plugins/tile_set_editor_plugin.cpp editor/rename_dialog.cpp #: scene/gui/range.cpp scene/resources/animation.cpp @@ -12877,14 +12782,12 @@ msgstr "Passo" #: editor/plugins/tile_set_editor_plugin.cpp #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Separation" -msgstr "Separação:" +msgstr "Separação" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Tile" -msgstr "Selecionar" +msgstr "Selecionar Tile" #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/cpu_particles_2d.cpp #: scene/2d/light_2d.cpp scene/2d/line_2d.cpp scene/2d/mesh_instance_2d.cpp @@ -12893,97 +12796,79 @@ msgstr "Selecionar" #: scene/gui/nine_patch_rect.cpp scene/gui/texture_rect.cpp #: scene/resources/material.cpp scene/resources/sky.cpp #: scene/resources/style_box.cpp scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Texture" -msgstr "Texto" +msgstr "Textura" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Tex Offset" -msgstr "Compensação da grelha:" +msgstr "Deslocamento da Textura" #: editor/plugins/tile_set_editor_plugin.cpp modules/csg/csg_shape.cpp #: scene/2d/canvas_item.cpp scene/2d/particles_2d.cpp #: scene/3d/mesh_instance.cpp scene/resources/primitive_meshes.cpp -#, fuzzy msgid "Material" -msgstr "Mudanças de Material:" +msgstr "Material" #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/canvas_item.cpp #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp scene/resources/style_box.cpp -#, fuzzy msgid "Modulate" -msgstr "Povoar" +msgstr "Modular" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Tile Mode" -msgstr "Alternar Modo" +msgstr "Modo de Tiles" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Autotile Bitmask Mode" -msgstr "Modo Bitmask" +msgstr "Modo Bitmask do Autotile" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Subtile Size" -msgstr "Tamanho do contorno:" +msgstr "Tamanho do Subtile" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Subtile Spacing" -msgstr "Loop da Animação" +msgstr "Espaçamento dos Subtiles" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Occluder Offset" -msgstr "Criar PolÃgono Oclusor" +msgstr "Deslocamento de Oclusor" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Navigation Offset" -msgstr "Modo Navegação" +msgstr "Deslocamento da Navegação" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Shape Offset" -msgstr "Compensação:" +msgstr "Deslocamento da Forma" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Shape Transform" -msgstr "Transformar" +msgstr "Transformação da Forma" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Collision" -msgstr "Colisão" +msgstr "Colisão Selecionada" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Collision One Way" -msgstr "Apenas seleção" +msgstr "Colisão em sentido único selecionada" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Collision One Way Margin" -msgstr "Modo Colisão" +msgstr "Margem de colisão em sentido único selecionada" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Navigation" -msgstr "Navegação VisÃvel" +msgstr "Navegação Selecionada" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Occlusion" -msgstr "Selecionar" +msgstr "Oclusão Selecionada" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Tileset Script" -msgstr "Scripts de filtro" +msgstr "Scripts do Tileset" #: editor/plugins/tile_set_editor_plugin.cpp msgid "TileSet" @@ -14188,51 +14073,44 @@ msgstr "" "você precisa construir os modelos de exportação da fonte." #: editor/project_export.cpp -#, fuzzy msgid "More Info..." -msgstr "Mover para..." +msgstr "Mais Informações..." #: editor/project_export.cpp -#, fuzzy msgid "Export PCK/Zip..." -msgstr "Exportar PCK/Zip" +msgstr "Exportar PCK/Zip..." #: editor/project_export.cpp -#, fuzzy msgid "Export Project..." -msgstr "Exportar Projeto" +msgstr "Exportar Projeto…" #: editor/project_export.cpp msgid "Export All" msgstr "Exportar Tudo" #: editor/project_export.cpp -#, fuzzy msgid "Choose an export mode:" -msgstr "Por favor escolha uma pasta vazia." +msgstr "Escolha um modo de exportação:" #: editor/project_export.cpp -#, fuzzy msgid "Export All..." -msgstr "Exportar Tudo" +msgstr "Exportar tudo…" #: editor/project_export.cpp editor/project_manager.cpp msgid "ZIP File" msgstr "Ficheiro ZIP" #: editor/project_export.cpp -#, fuzzy msgid "Godot Project Pack" -msgstr "Pacote de Jogo Godot" +msgstr "Pacote do Projeto Godot" #: editor/project_export.cpp msgid "Export templates for this platform are missing:" msgstr "Não existem Modelos de exportação para esta plataforma:" #: editor/project_export.cpp -#, fuzzy msgid "Project Export" -msgstr "Fundadores do Projeto" +msgstr "Exportar Projeto" #: editor/project_export.cpp msgid "Manage Export Templates" @@ -14298,16 +14176,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Caminho de projeto inválido (alguma alteração?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Não consegui carregar o project.godot no caminho do projeto (erro %d). " "Poderá estar em falta ou corrompido." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "Incapaz de editar project.godot no caminho do projeto." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Incapaz de abrir projeto em '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -14546,7 +14425,6 @@ msgstr "" #. TRANSLATORS: This refers to the application where users manage their Godot projects. #: editor/project_manager.cpp -#, fuzzy msgctxt "Application" msgid "Project Manager" msgstr "Gestor de Projetos" @@ -15343,19 +15221,16 @@ msgid "Make Local" msgstr "Tornar Local" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Enable Scene Unique Name(s)" -msgstr "Nome do Nó:" +msgstr "Ativar Nome(s) Único(s) de Cena" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Unique names already used by another node in the scene:" -msgstr "Outro nó já usa esse nome exclusivo na cena." +msgstr "Nomes únicos já estão sendo usados por outro nó na cena:" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Disable Scene Unique Name(s)" -msgstr "Nome do Nó:" +msgstr "Desativar Nome(s) Único(s) de Cena" #: editor/scene_tree_dock.cpp msgid "New Scene Root" @@ -15530,18 +15405,16 @@ msgid "Clear Inheritance? (No Undo!)" msgstr "Limpar herança? (Definitivo!)" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Show Scene Tree Root Selection" -msgstr "Centrar Seleção" +msgstr "Mostrar seleção da hierarquia de cenas" #: editor/scene_tree_dock.cpp msgid "Derive Script Globals By Name" msgstr "Derivar Globais de Script Por Nome" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Use Favorites Root Selection" -msgstr "Seleção de Frame" +msgstr "Seleção de favoritos da raÃz" #: editor/scene_tree_editor.cpp msgid "Toggle Visible" @@ -15556,9 +15429,8 @@ msgid "Button Group" msgstr "Grupo Botão" #: editor/scene_tree_editor.cpp -#, fuzzy msgid "Disable Scene Unique Name" -msgstr "Nome do Nó:" +msgstr "Desativar Nome Único de Cena" #: editor/scene_tree_editor.cpp msgid "(Connecting From)" @@ -15791,9 +15663,8 @@ msgid "Attach Node Script" msgstr "Anexar Script de Nó" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Remote %s:" -msgstr "Remoto " +msgstr "%s remoto:" #: editor/script_editor_debugger.cpp msgid "Bytes:" @@ -15868,9 +15739,8 @@ msgid "Stack Frames" msgstr "Empilhar Frames" #: editor/script_editor_debugger.cpp -#, fuzzy msgid "Filter stack variables" -msgstr "Filtrar Tiles" +msgstr "Filtrar variáveis stack" #: editor/script_editor_debugger.cpp msgid "Auto Switch To Remote Scene Tree" @@ -16547,26 +16417,22 @@ msgid "Calculate Tangents" msgstr "Calcular Tangentes" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Use Collision" -msgstr "Colisão" +msgstr "Usar Colisão" #: modules/csg/csg_shape.cpp servers/physics_2d_server.cpp -#, fuzzy msgid "Collision Layer" -msgstr "Modo Colisão" +msgstr "Camada de Colisão" #: modules/csg/csg_shape.cpp scene/2d/ray_cast_2d.cpp scene/3d/camera.cpp #: scene/3d/ray_cast.cpp scene/3d/spring_arm.cpp #: scene/resources/navigation_mesh.cpp servers/physics_server.cpp -#, fuzzy msgid "Collision Mask" -msgstr "Modo Colisão" +msgstr "Máscara de Colisão" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Invert Faces" -msgstr "Converter maiúsculas/minúsculas" +msgstr "Inverter Faces" #: modules/csg/csg_shape.cpp scene/2d/navigation_agent_2d.cpp #: scene/2d/navigation_obstacle_2d.cpp scene/3d/navigation_agent.cpp @@ -16576,43 +16442,36 @@ msgstr "Converter maiúsculas/minúsculas" #: scene/resources/cylinder_shape.cpp scene/resources/environment.cpp #: scene/resources/navigation_mesh.cpp scene/resources/primitive_meshes.cpp #: scene/resources/sphere_shape.cpp -#, fuzzy msgid "Radius" -msgstr "Raio:" +msgstr "Raio" #: modules/csg/csg_shape.cpp scene/resources/primitive_meshes.cpp -#, fuzzy msgid "Radial Segments" -msgstr "Argumentos da Cena Principal:" +msgstr "Segmentos Radiais" #: modules/csg/csg_shape.cpp scene/resources/primitive_meshes.cpp -#, fuzzy msgid "Rings" -msgstr "Avisos" +msgstr "Anéis" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Smooth Faces" -msgstr "Smoothstep" +msgstr "Suavizar Faces" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Sides" -msgstr "Mostrar Guias" +msgstr "Lados" #: modules/csg/csg_shape.cpp msgid "Cone" msgstr "Cone" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Inner Radius" -msgstr "Mudar Raio Interno do Toro" +msgstr "Raio Interno" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Outer Radius" -msgstr "Mudar Raio Externo do Toro" +msgstr "Raio Externo" #: modules/csg/csg_shape.cpp msgid "Ring Sides" @@ -16621,9 +16480,8 @@ msgstr "Lados do Anel" #: modules/csg/csg_shape.cpp scene/2d/collision_polygon_2d.cpp #: scene/2d/light_occluder_2d.cpp scene/2d/polygon_2d.cpp #: scene/3d/collision_polygon.cpp -#, fuzzy msgid "Polygon" -msgstr "PolÃgonos" +msgstr "PolÃgono" #: modules/csg/csg_shape.cpp msgid "Spin Degrees" @@ -16634,14 +16492,12 @@ msgid "Spin Sides" msgstr "Girar Lados" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Node" -msgstr "Colar Nós" +msgstr "Caminho do Nó" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Interval Type" -msgstr "Criar vértice interno" +msgstr "Tipo de Intervalo de Caminho" #: modules/csg/csg_shape.cpp msgid "Path Interval" @@ -16652,14 +16508,12 @@ msgid "Path Simplify Angle" msgstr "Simplifique o Ângulo do Caminho" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Rotation" -msgstr "Rotação aleatória:" +msgstr "Rotação do Caminho" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Local" -msgstr "Tornar Local" +msgstr "Caminho Local" #: modules/csg/csg_shape.cpp #, fuzzy @@ -16667,34 +16521,28 @@ msgid "Path Continuous U" msgstr "ContÃnuo" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path U Distance" -msgstr "Distância de escolha:" +msgstr "Distância do Caminho U" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Joined" -msgstr "Rotação aleatória:" +msgstr "Caminho Unido" #: modules/enet/networked_multiplayer_enet.cpp -#, fuzzy msgid "Compression Mode" -msgstr "Modo Colisão" +msgstr "Modo de Compressão" #: modules/enet/networked_multiplayer_enet.cpp -#, fuzzy msgid "Transfer Channel" -msgstr "Mudar Transformação" +msgstr "Transferir Canal" #: modules/enet/networked_multiplayer_enet.cpp -#, fuzzy msgid "Channel Count" -msgstr "Instância" +msgstr "Quantidade de Canais" #: modules/enet/networked_multiplayer_enet.cpp -#, fuzzy msgid "Always Ordered" -msgstr "Mostrar Grelha Sempre" +msgstr "Sempre Ordenado" #: modules/enet/networked_multiplayer_enet.cpp msgid "Server Relay" @@ -16709,9 +16557,8 @@ msgid "DTLS Hostname" msgstr "Nome do Host DTLS" #: modules/enet/networked_multiplayer_enet.cpp -#, fuzzy msgid "Use DTLS" -msgstr "Usar Ajuste" +msgstr "Usar DTLS" #: modules/fbx/editor_scene_importer_fbx.cpp msgid "FBX" @@ -16722,14 +16569,12 @@ msgid "Use FBX" msgstr "Usar FBX" #: modules/gdnative/gdnative.cpp -#, fuzzy msgid "Config File" -msgstr "Armazenar o Ficheiro:" +msgstr "Ficheiro de Configuração" #: modules/gdnative/gdnative.cpp -#, fuzzy msgid "Load Once" -msgstr "Carregar recurso" +msgstr "Carregar Apenas uma Vez" #: modules/gdnative/gdnative.cpp #: modules/visual_script/visual_script_func_nodes.cpp @@ -16738,14 +16583,12 @@ msgid "Singleton" msgstr "Esqueleto" #: modules/gdnative/gdnative.cpp -#, fuzzy msgid "Symbol Prefix" -msgstr "Prefixo:" +msgstr "Prefixo do SÃmbolo" #: modules/gdnative/gdnative.cpp -#, fuzzy msgid "Reloadable" -msgstr "Recarregar" +msgstr "Recarregável" #: modules/gdnative/gdnative.cpp #: modules/gdnative/gdnative_library_singleton_editor.cpp @@ -16798,24 +16641,20 @@ msgid "Disabled GDNative Singleton" msgstr "Instância única GDNative desativada" #: modules/gdnative/gdnative_library_singleton_editor.cpp -#, fuzzy msgid "Libraries:" -msgstr "Bibliotecas: " +msgstr "Bibliotecas:" #: modules/gdnative/nativescript/nativescript.cpp -#, fuzzy msgid "Class Name" -msgstr "Nome de Classe:" +msgstr "Nome da Classe" #: modules/gdnative/nativescript/nativescript.cpp -#, fuzzy msgid "Script Class" -msgstr "Nome do Script:" +msgstr "Classe do Script" #: modules/gdnative/nativescript/nativescript.cpp -#, fuzzy msgid "Icon Path" -msgstr "Caminho de Foco" +msgstr "Caminho para Ãcone" #: modules/gdnative/register_types.cpp msgid "GDNative" @@ -16823,18 +16662,16 @@ msgstr "GDNative" #: modules/gdscript/editor/gdscript_highlighter.cpp #: modules/gdscript/gdscript.cpp -#, fuzzy msgid "GDScript" -msgstr "Script" +msgstr "GDScript" #: modules/gdscript/editor/gdscript_highlighter.cpp msgid "Function Definition Color" msgstr "Função de Definição de Cor" #: modules/gdscript/editor/gdscript_highlighter.cpp -#, fuzzy msgid "Node Path Color" -msgstr "Copiar Caminho do Nó" +msgstr "Cor do Caminho do Nó" #: modules/gdscript/gdscript.cpp modules/visual_script/visual_script.cpp msgid "Max Call Stack" @@ -16891,9 +16728,8 @@ msgid "Object can't provide a length." msgstr "Objeto não fornece um comprimento." #: modules/gdscript/language_server/gdscript_language_server.cpp -#, fuzzy msgid "Language Server" -msgstr "Linguagem:" +msgstr "Servidor de Idioma" #: modules/gdscript/language_server/gdscript_language_server.cpp msgid "Enable Smart Resolve" @@ -16916,44 +16752,36 @@ msgid "Export GLTF..." msgstr "Exportar GLTF..." #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Buffer View" -msgstr "Vista de Trás" +msgstr "Visão de Buffer" #: modules/gltf/gltf_accessor.cpp modules/gltf/gltf_buffer_view.cpp -#, fuzzy msgid "Byte Offset" -msgstr "Compensação da grelha:" +msgstr "Deslocamento do Byte" #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Component Type" -msgstr "Componentes" +msgstr "Tipo do Componente" #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Normalized" -msgstr "Formato" +msgstr "Normalizado" #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Count" -msgstr "Valor:" +msgstr "Quantidade" #: modules/gltf/gltf_accessor.cpp scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Min" -msgstr "MiB" +msgstr "Min" #: modules/gltf/gltf_accessor.cpp scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Max" -msgstr "Combinar" +msgstr "Max" #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Sparse Count" -msgstr "Instância" +msgstr "Contagem Escassa" #: modules/gltf/gltf_accessor.cpp msgid "Sparse Indices Buffer View" @@ -16964,9 +16792,8 @@ msgid "Sparse Indices Byte Offset" msgstr "Deslocamento de Bytes de Ãndices Esparsos" #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Sparse Indices Component Type" -msgstr "A analisar geometria..." +msgstr "Tipo de Componente de Ãndices Esparsos" #: modules/gltf/gltf_accessor.cpp msgid "Sparse Values Buffer View" @@ -16977,37 +16804,32 @@ msgid "Sparse Values Byte Offset" msgstr "Deslocamento de Bytes de Valores Esparsos" #: modules/gltf/gltf_buffer_view.cpp -#, fuzzy msgid "Buffer" -msgstr "Vista de Trás" +msgstr "Buffer" #: modules/gltf/gltf_buffer_view.cpp -#, fuzzy msgid "Byte Length" -msgstr "Tema Predefinido" +msgstr "Largura do byte" #: modules/gltf/gltf_buffer_view.cpp msgid "Byte Stride" msgstr "Passo de Byte" #: modules/gltf/gltf_buffer_view.cpp -#, fuzzy msgid "Indices" -msgstr "Todos os Aparelhos" +msgstr "Ãndices" #: modules/gltf/gltf_camera.cpp -#, fuzzy msgid "FOV Size" -msgstr "Tamanho:" +msgstr "Tamanho do FOV" #: modules/gltf/gltf_camera.cpp msgid "Zfar" msgstr "Zfar" #: modules/gltf/gltf_camera.cpp -#, fuzzy msgid "Znear" -msgstr "Linear" +msgstr "Z perto" #: modules/gltf/gltf_light.cpp scene/2d/canvas_modulate.cpp #: scene/2d/cpu_particles_2d.cpp scene/2d/light_2d.cpp scene/2d/polygon_2d.cpp @@ -17017,9 +16839,8 @@ msgstr "Linear" #: scene/resources/environment.cpp scene/resources/material.cpp #: scene/resources/particles_material.cpp scene/resources/sky.cpp #: scene/resources/style_box.cpp -#, fuzzy msgid "Color" -msgstr "Cores" +msgstr "Cor" #: modules/gltf/gltf_light.cpp scene/3d/reflection_probe.cpp #: scene/resources/environment.cpp @@ -17027,9 +16848,8 @@ msgid "Intensity" msgstr "Intensidade" #: modules/gltf/gltf_light.cpp scene/2d/light_2d.cpp scene/3d/light.cpp -#, fuzzy msgid "Range" -msgstr "Mudar" +msgstr "Intervalo" #: modules/gltf/gltf_light.cpp msgid "Inner Cone Angle" @@ -17040,19 +16860,16 @@ msgid "Outer Cone Angle" msgstr "Ângulo do Cone Externo" #: modules/gltf/gltf_mesh.cpp -#, fuzzy msgid "Blend Weights" -msgstr "Consolidar Lightmaps" +msgstr "Peso da mesclagem" #: modules/gltf/gltf_mesh.cpp -#, fuzzy msgid "Instance Materials" -msgstr "Mudanças de Material:" +msgstr "Materiais da Instância" #: modules/gltf/gltf_node.cpp scene/3d/skeleton.cpp -#, fuzzy msgid "Parent" -msgstr "Reassociar" +msgstr "Pai" #: modules/gltf/gltf_node.cpp #, fuzzy @@ -17064,19 +16881,16 @@ msgid "Skin" msgstr "Skin" #: modules/gltf/gltf_node.cpp scene/3d/spatial.cpp -#, fuzzy msgid "Translation" -msgstr "Traduções" +msgstr "Tradução" #: modules/gltf/gltf_node.cpp -#, fuzzy msgid "Children" -msgstr "Filhos editáveis" +msgstr "Filhos" #: modules/gltf/gltf_skeleton.cpp modules/gltf/gltf_skin.cpp -#, fuzzy msgid "Joints" -msgstr "Ponto" +msgstr "Pontos" #: modules/gltf/gltf_skeleton.cpp modules/gltf/gltf_skin.cpp msgid "Roots" @@ -17087,28 +16901,24 @@ msgid "Unique Names" msgstr "Nomes Únicos" #: modules/gltf/gltf_skeleton.cpp -#, fuzzy msgid "Godot Bone Node" -msgstr "Obter Nó da Cena" +msgstr "Nó de Osso Godot" #: modules/gltf/gltf_skin.cpp -#, fuzzy msgid "Skin Root" -msgstr "Nova Raiz da Cena" +msgstr "Raiz da Skin" #: modules/gltf/gltf_skin.cpp -#, fuzzy msgid "Joints Original" -msgstr "Focar na Origem" +msgstr "Pontos Originais" #: modules/gltf/gltf_skin.cpp msgid "Inverse Binds" msgstr "Inverter Ligações" #: modules/gltf/gltf_skin.cpp -#, fuzzy msgid "Non Joints" -msgstr "Mover Junta" +msgstr "Não-Juntas" #: modules/gltf/gltf_skin.cpp msgid "Joint I To Bone I" @@ -17147,48 +16957,41 @@ msgid "Json" msgstr "Json" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Major Version" -msgstr "Versão" +msgstr "Versão Importante" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Minor Version" -msgstr "Versão" +msgstr "Versão Minoritária" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "GLB Data" -msgstr "Com Dados" +msgstr "Dados do GLB" #: modules/gltf/gltf_state.cpp msgid "Use Named Skin Binds" msgstr "Usar Ligações de Skin Nomeadas" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Buffer Views" -msgstr "Vista de Trás" +msgstr "Visão Buffer" #: modules/gltf/gltf_state.cpp msgid "Accessors" msgstr "Assessores" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Scene Name" -msgstr "Caminho da Cena:" +msgstr "Nome da Cena" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Root Nodes" -msgstr "Nome do nó raiz" +msgstr "Nós RaÃzes" #: modules/gltf/gltf_state.cpp scene/2d/particles_2d.cpp #: scene/gui/texture_button.cpp scene/gui/texture_progress.cpp -#, fuzzy msgid "Textures" -msgstr "Funcionalidades" +msgstr "Texturas" #: modules/gltf/gltf_state.cpp platform/uwp/export/export.cpp msgid "Images" @@ -17199,72 +17002,60 @@ msgid "Cameras" msgstr "Câmeras" #: modules/gltf/gltf_state.cpp servers/visual_server.cpp -#, fuzzy msgid "Lights" -msgstr "Luz" +msgstr "Luzes" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Unique Animation Names" -msgstr "Novo Nome da Animação:" +msgstr "Nomes de Animação Únicos" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Skeletons" -msgstr "Esqueleto" +msgstr "Esqueletos" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Skeleton To Node" -msgstr "Selecione um Nó" +msgstr "Esqueleto Para Nó" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Animations" -msgstr "Animações:" +msgstr "Animações" #: modules/gltf/gltf_texture.cpp -#, fuzzy msgid "Src Image" -msgstr "Mostrar ossos" +msgstr "Imagem fonte" #: modules/gridmap/grid_map.cpp msgid "Mesh Library" msgstr "Bib. de Malhas" #: modules/gridmap/grid_map.cpp -#, fuzzy msgid "Physics Material" -msgstr "Frame de FÃsica %" +msgstr "Material de FÃsica" #: modules/gridmap/grid_map.cpp scene/3d/visual_instance.cpp -#, fuzzy msgid "Use In Baked Light" -msgstr "Consolidar Lightmaps" +msgstr "Usar no mapa de luz" #: modules/gridmap/grid_map.cpp scene/2d/tile_map.cpp msgid "Cell" msgstr "Célula" #: modules/gridmap/grid_map.cpp -#, fuzzy msgid "Octant Size" -msgstr "Vista de Frente" +msgstr "Tamanho Octante" #: modules/gridmap/grid_map.cpp -#, fuzzy msgid "Center X" -msgstr "Centro" +msgstr "Centro X" #: modules/gridmap/grid_map.cpp -#, fuzzy msgid "Center Y" -msgstr "Centro" +msgstr "Centro Y" #: modules/gridmap/grid_map.cpp -#, fuzzy msgid "Center Z" -msgstr "Centro" +msgstr "Centro Z" #: modules/gridmap/grid_map.cpp scene/2d/collision_object_2d.cpp #: scene/2d/tile_map.cpp scene/3d/collision_object.cpp scene/3d/soft_body.cpp @@ -17273,17 +17064,15 @@ msgid "Mask" msgstr "Máscara" #: modules/gridmap/grid_map.cpp scene/2d/tile_map.cpp -#, fuzzy msgid "Bake Navigation" -msgstr "Navegação" +msgstr "Navegação Pré-Processada" #: modules/gridmap/grid_map.cpp scene/2d/navigation_2d.cpp #: scene/2d/navigation_agent_2d.cpp scene/2d/navigation_polygon.cpp #: scene/2d/tile_map.cpp scene/3d/navigation.cpp scene/3d/navigation_agent.cpp #: scene/3d/navigation_mesh_instance.cpp -#, fuzzy msgid "Navigation Layers" -msgstr "Modo Navegação" +msgstr "Camadas da Navegação" #: modules/gridmap/grid_map_editor_plugin.cpp msgid "Next Plane" @@ -17442,9 +17231,8 @@ msgid "Plotting lightmaps" msgstr "A Traçar lightmaps" #: modules/lightmapper_cpu/register_types.cpp -#, fuzzy msgid "CPU Lightmapper" -msgstr "Consolidar Lightmaps" +msgstr "Mapeamento de Luz da CPU" #: modules/lightmapper_cpu/register_types.cpp msgid "Low Quality Ray Count" @@ -17466,9 +17254,8 @@ msgstr "Contagem de Raios de Ultra Qualidade" #: modules/minimp3/resource_importer_mp3.cpp #: modules/stb_vorbis/audio_stream_ogg_vorbis.cpp #: modules/stb_vorbis/resource_importer_ogg_vorbis.cpp -#, fuzzy msgid "Loop Offset" -msgstr "Compensação:" +msgstr "Deslocamento do Loop" #: modules/mobile_vr/mobile_vr_interface.cpp msgid "Eye Height" @@ -17479,14 +17266,12 @@ msgid "IOD" msgstr "IOD" #: modules/mobile_vr/mobile_vr_interface.cpp -#, fuzzy msgid "Display Width" -msgstr "Vista Wireframe" +msgstr "Largura de Ecrã" #: modules/mobile_vr/mobile_vr_interface.cpp -#, fuzzy msgid "Display To Lens" -msgstr "Vista sem sombras" +msgstr "Exibir à s Lentes" #: modules/mobile_vr/mobile_vr_interface.cpp msgid "Oversample" @@ -17509,24 +17294,20 @@ msgid "Build Solution" msgstr "Construir Solução" #: modules/mono/editor/csharp_project.cpp -#, fuzzy msgid "Auto Update Project" -msgstr "Projeto sem nome" +msgstr "Atualizar Projeto Automaticamente" #: modules/mono/godotsharp_dirs.cpp -#, fuzzy msgid "Assembly Name" -msgstr "Mostrar Tudo" +msgstr "Nome de Montagem" #: modules/mono/godotsharp_dirs.cpp -#, fuzzy msgid "Solution Directory" -msgstr "Escolha uma Diretoria" +msgstr "Diretório da Solução" #: modules/mono/godotsharp_dirs.cpp -#, fuzzy msgid "C# Project Directory" -msgstr "Escolha uma Diretoria" +msgstr "Diretório do Projeto C#" #: modules/mono/mono_gd/gd_mono_utils.cpp msgid "End of inner exception stack trace" @@ -17604,9 +17385,8 @@ msgid "Seamless" msgstr "Sem Emenda" #: modules/opensimplex/noise_texture.cpp -#, fuzzy msgid "As Normal Map" -msgstr "Escala aleatória:" +msgstr "Como Mapa Normal" #: modules/opensimplex/noise_texture.cpp msgid "Bump Strength" @@ -17617,9 +17397,8 @@ msgid "Noise" msgstr "Ruido" #: modules/opensimplex/noise_texture.cpp -#, fuzzy msgid "Noise Offset" -msgstr "Compensação da grelha:" +msgstr "Deslocamento do RuÃdo" #: modules/opensimplex/open_simplex_noise.cpp msgid "Octaves" @@ -17630,9 +17409,8 @@ msgid "Period" msgstr "Periodo" #: modules/opensimplex/open_simplex_noise.cpp -#, fuzzy msgid "Persistence" -msgstr "Perspetiva" +msgstr "Persistência" #: modules/opensimplex/open_simplex_noise.cpp msgid "Lacunarity" @@ -17643,14 +17421,12 @@ msgid "Subject" msgstr "Sujeito" #: modules/regex/regex.cpp -#, fuzzy msgid "Names" -msgstr "Nome" +msgstr "Nomes" #: modules/regex/regex.cpp -#, fuzzy msgid "Strings" -msgstr "Configuração:" +msgstr "Strings" #: modules/upnp/upnp.cpp msgid "Discover Multicast If" @@ -17665,32 +17441,28 @@ msgid "Discover IPv6" msgstr "Descobrir IPv6" #: modules/upnp/upnp_device.cpp -#, fuzzy msgid "Description URL" -msgstr "Descrição" +msgstr "URL Descritiva" #: modules/upnp/upnp_device.cpp -#, fuzzy msgid "Service Type" -msgstr "Definir tipo de variável" +msgstr "Tipo de Serviço" #: modules/upnp/upnp_device.cpp msgid "IGD Control URL" msgstr "URL de controle IGD" #: modules/upnp/upnp_device.cpp -#, fuzzy msgid "IGD Service Type" -msgstr "Definir tipo de variável" +msgstr "Tipo de Serviço IGD" #: modules/upnp/upnp_device.cpp msgid "IGD Our Addr" msgstr "IGD Nosso Endereço" #: modules/upnp/upnp_device.cpp -#, fuzzy msgid "IGD Status" -msgstr "Status" +msgstr "Estado do IGD" #: modules/visual_script/visual_script.cpp msgid "" @@ -17717,9 +17489,8 @@ msgstr "" "trabalho de nós! Corrija o seu nó por favor." #: modules/visual_script/visual_script.cpp -#, fuzzy msgid "Node returned an invalid sequence output:" -msgstr "O nó retornou uma sequência de saÃda incorreta: " +msgstr "O nó retornou uma saÃda de sequência inválida:" #: modules/visual_script/visual_script.cpp msgid "Found sequence bit but not the node in the stack, report bug!" @@ -17727,14 +17498,12 @@ msgstr "" "Foi encontrada o bit da sequência mas não o nó na pilha, denuncie o bug!" #: modules/visual_script/visual_script.cpp -#, fuzzy msgid "Stack overflow with stack depth:" -msgstr "Pilha cheia com a profundidade da pilha: " +msgstr "Sobrecarga da pilha com profundidade:" #: modules/visual_script/visual_script.cpp -#, fuzzy msgid "Visual Script" -msgstr "Procurar VisualScript" +msgstr "Script Visual" #: modules/visual_script/visual_script_editor.cpp msgid "Change Signal Arguments" @@ -18062,14 +17831,12 @@ msgid "Return" msgstr "Voltar" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Return Enabled" -msgstr "Executável" +msgstr "Retorno Ativado" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Return Type" -msgstr "Voltar" +msgstr "Tipo de Retorno" #: modules/visual_script/visual_script_flow_control.cpp #: scene/resources/visual_shader_nodes.cpp @@ -18097,18 +17864,16 @@ msgid "for (elem) in (input):" msgstr "para (elem) em (input):" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Input type not iterable:" -msgstr "Tipo de Input não iterável: " +msgstr "Tipo de entrada não iterável:" #: modules/visual_script/visual_script_flow_control.cpp msgid "Iterator became invalid" msgstr "O iterador tornou-se inválido" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Iterator became invalid:" -msgstr "O iterador tornou-se inválido: " +msgstr "Iterador tornou-se inválido:" #: modules/visual_script/visual_script_flow_control.cpp msgid "Sequence" @@ -18119,9 +17884,8 @@ msgid "in order:" msgstr "em ordem:" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Steps" -msgstr "Passo" +msgstr "Passos" #: modules/visual_script/visual_script_flow_control.cpp msgid "Switch" @@ -18141,9 +17905,8 @@ msgstr "É %s?" #: modules/visual_script/visual_script_flow_control.cpp #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Base Script" -msgstr "Novo Script" +msgstr "Script Base" #: modules/visual_script/visual_script_func_nodes.cpp msgid "On %s" @@ -18155,37 +17918,31 @@ msgstr "Nele Próprio" #: modules/visual_script/visual_script_func_nodes.cpp #: modules/visual_script/visual_script_yield_nodes.cpp -#, fuzzy msgid "Call Mode" -msgstr "Modo Escalar" +msgstr "Modo de Chamada" #: modules/visual_script/visual_script_func_nodes.cpp #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "Basic Type" -msgstr "Mudar tipo base" +msgstr "Tipo Base" #: modules/visual_script/visual_script_func_nodes.cpp #: modules/visual_script/visual_script_nodes.cpp #: modules/visual_script/visual_script_yield_nodes.cpp -#, fuzzy msgid "Node Path" -msgstr "Copiar Caminho do Nó" +msgstr "Caminho do Nó" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Use Default Args" -msgstr "Restaurar Predefinições" +msgstr "Usar Argumentos Padrão" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Validate" -msgstr "Caracteres válidos:" +msgstr "Validar" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "RPC Call Mode" -msgstr "Modo Escalar" +msgstr "Modo de Chamada RPC" #: modules/visual_script/visual_script_func_nodes.cpp msgid "Subtract %s" @@ -18224,14 +17981,12 @@ msgid "BitXor %s" msgstr "BitXor %s" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Set Mode" -msgstr "Modo Seleção" +msgstr "Modo de Definição" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Assign Op" -msgstr "Atribuir" +msgstr "Atribuir Op" #: modules/visual_script/visual_script_func_nodes.cpp #: modules/visual_script/visual_script_nodes.cpp @@ -18248,9 +18003,8 @@ msgid "Base object is not a Node!" msgstr "Objeto de base não é um Nó!" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Path does not lead to Node!" -msgstr "Caminho não conduz Nó!" +msgstr "Caminho não leva ao Nó!" #: modules/visual_script/visual_script_func_nodes.cpp msgid "Invalid index property name '%s' in node %s." @@ -18266,38 +18020,32 @@ msgstr "Compor Array" #: modules/visual_script/visual_script_nodes.cpp scene/resources/material.cpp #: scene/resources/visual_shader_nodes.cpp -#, fuzzy msgid "Operator" -msgstr "Iterador" +msgstr "Operador" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "Invalid argument of type:" -msgstr ": Argumento inválido de tipo: " +msgstr "Argumento inválido do tipo:" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "Invalid arguments:" -msgstr ": Argumentos inválidos: " +msgstr "Argumentos inválidos:" #: modules/visual_script/visual_script_nodes.cpp msgid "a if cond, else b" msgstr "a se cond, senão b" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "Var Name" -msgstr "Nome" +msgstr "Nome da Variável" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "VariableGet not found in script:" -msgstr "VariableGet não encontrado no script: " +msgstr "VariableGet não encontrado no script:" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "VariableSet not found in script:" -msgstr "VariableSet não encontrado no script: " +msgstr "VariableSet não encontrado no script:" #: modules/visual_script/visual_script_nodes.cpp msgid "Preload" @@ -18413,9 +18161,8 @@ msgid "%s sec(s)" msgstr "%s sec(s)" #: modules/visual_script/visual_script_yield_nodes.cpp scene/main/timer.cpp -#, fuzzy msgid "Wait Time" -msgstr "Pintar Tile" +msgstr "Tempo de Espera" #: modules/visual_script/visual_script_yield_nodes.cpp msgid "WaitSignal" @@ -18430,9 +18177,8 @@ msgid "WaitInstanceSignal" msgstr "WaitInstanceSignal" #: modules/webrtc/webrtc_data_channel.cpp -#, fuzzy msgid "Write Mode" -msgstr "Modo Prioridade" +msgstr "Modo de Escrita" #: modules/webrtc/webrtc_data_channel.h msgid "WebRTC" @@ -18451,69 +18197,60 @@ msgid "Trusted SSL Certificate" msgstr "Certificado SSL Confiável" #: modules/websocket/websocket_macros.h -#, fuzzy msgid "WebSocket Client" -msgstr "Analisador de Rede" +msgstr "Cliente WebSocket" #: modules/websocket/websocket_macros.h -#, fuzzy msgid "Max In Buffer (KB)" -msgstr "Tamanho Máximo (KB)" +msgstr "Buffer de Entrada Máximo (KB)" #: modules/websocket/websocket_macros.h msgid "Max In Packets" msgstr "Máximo de Pacotes de Entrada" #: modules/websocket/websocket_macros.h -#, fuzzy msgid "Max Out Buffer (KB)" -msgstr "Tamanho Máximo (KB)" +msgstr "Buffer de SaÃda Máximo (KB)" #: modules/websocket/websocket_macros.h msgid "Max Out Packets" msgstr "Máximo de Pacotes de Saida" #: modules/websocket/websocket_macros.h -#, fuzzy msgid "WebSocket Server" -msgstr "Analisador de Rede" +msgstr "Servidor WebSocket" #: modules/websocket/websocket_server.cpp msgid "Bind IP" msgstr "Associar IP" #: modules/websocket/websocket_server.cpp -#, fuzzy msgid "Private Key" -msgstr "Caminho da Chave Privada SSH" +msgstr "Chave Privada" #: modules/websocket/websocket_server.cpp platform/javascript/export/export.cpp msgid "SSL Certificate" msgstr "Certificado SSL" #: modules/websocket/websocket_server.cpp -#, fuzzy msgid "CA Chain" -msgstr "Apagar corrente IK" +msgstr "Cadeia CA" #: modules/websocket/websocket_server.cpp msgid "Handshake Timeout" msgstr "Timeout de Handshake" #: modules/webxr/webxr_interface.cpp -#, fuzzy msgid "Session Mode" -msgstr "Modo Região" +msgstr "Modo Sessão" #: modules/webxr/webxr_interface.cpp -#, fuzzy msgid "Required Features" -msgstr "Funcionalidades Principais:" +msgstr "Funcionalidades Necessárias" #: modules/webxr/webxr_interface.cpp -#, fuzzy msgid "Optional Features" -msgstr "Funcionalidades Principais:" +msgstr "Funcionalidades Opcionais" #: modules/webxr/webxr_interface.cpp msgid "Requested Reference Space Types" @@ -18524,28 +18261,24 @@ msgid "Reference Space Type" msgstr "Tipo de Espaço de Referência" #: modules/webxr/webxr_interface.cpp -#, fuzzy msgid "Visibility State" -msgstr "Alternar visibilidade" +msgstr "Estado de Visibilidade" #: modules/webxr/webxr_interface.cpp -#, fuzzy msgid "Bounds Geometry" -msgstr "Repetir" +msgstr "Limita a Geometria" #: modules/webxr/webxr_interface.cpp -#, fuzzy msgid "XR Standard Mapping" -msgstr "Ajuste Inteligente" +msgstr "Mapeamento XR Padrão" #: platform/android/export/export.cpp msgid "Android SDK Path" msgstr "Caminho do SDK Android" #: platform/android/export/export.cpp -#, fuzzy msgid "Debug Keystore" -msgstr "Depurador" +msgstr "Depurar Keystore" #: platform/android/export/export.cpp msgid "Debug Keystore User" @@ -18606,33 +18339,28 @@ msgid "The package must have at least one '.' separator." msgstr "O pacote deve ter pelo menos um separador '.'." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Custom Build" -msgstr "Usar Compilação Personalizada" +msgstr "Build Personalizada" #: platform/android/export/export_plugin.cpp msgid "Use Custom Build" msgstr "Usar Compilação Personalizada" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Export Format" -msgstr "Exportar Caminho" +msgstr "Exportar Formato" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Min SDK" -msgstr "Tamanho do contorno:" +msgstr "SDK MÃnimo" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Target SDK" -msgstr "Alvo" +msgstr "SDK Alvo" #: platform/android/export/export_plugin.cpp platform/iphone/export/export.cpp -#, fuzzy msgid "Architectures" -msgstr "Adicionar uma entrada arquitetura" +msgstr "Arquiteturas" #: platform/android/export/export_plugin.cpp #, fuzzy @@ -18640,86 +18368,72 @@ msgid "Keystore" msgstr "Depurador" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Debug User" -msgstr "Depurador" +msgstr "Depurar Utilizador" #: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp -#, fuzzy msgid "Debug Password" -msgstr "Senha" +msgstr "Depurar Palavra-passe" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Release User" -msgstr "Libertar" +msgstr "Liberar Utilizador" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Release Password" -msgstr "Senha" +msgstr "Liberar Palavra-passe" #: platform/android/export/export_plugin.cpp msgid "One Click Deploy" msgstr "Implantação com Um Clique" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Clear Previous Install" -msgstr "Inspecionar instância anterior" +msgstr "Limpar Instalação Anterior" #: platform/android/export/export_plugin.cpp msgid "Code" msgstr "Código" #: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp -#, fuzzy msgid "Package" -msgstr "Empacotamento" +msgstr "Pacote" #: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp -#, fuzzy msgid "Unique Name" -msgstr "Nome do Nó:" +msgstr "Nome Único" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Signed" -msgstr "Sinal" +msgstr "Assinado" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Classify As Game" -msgstr "Nome de Classe:" +msgstr "Classificar como Jogo" #: platform/android/export/export_plugin.cpp msgid "Retain Data On Uninstall" msgstr "Reter Dados na Desinstalação" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Exclude From Recents" -msgstr "Apagar Nós" +msgstr "Excluir de Recentes" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Graphics" -msgstr "Compensação da grelha:" +msgstr "Gráficos" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "OpenGL Debug" -msgstr "Abrir" +msgstr "Depurar OpenGL" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "XR Features" -msgstr "Funcionalidades" +msgstr "Funcionalidades XR" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "XR Mode" -msgstr "Modo deslocamento" +msgstr "Modo XR" #: platform/android/export/export_plugin.cpp #, fuzzy @@ -18735,72 +18449,60 @@ msgid "Passthrough" msgstr "Atravessar" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Immersive Mode" -msgstr "Modo Prioridade" +msgstr "Modo Imersivo" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Support Small" -msgstr "Suporte" +msgstr "Suporte Pequeno" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Support Normal" -msgstr "Suporte" +msgstr "Suporte Normal" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Support Large" -msgstr "Suporte" +msgstr "Suporte Grande" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Support Xlarge" -msgstr "Suporte" +msgstr "Suporte Extra-grande" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "User Data Backup" -msgstr "Interface do Utilizador" +msgstr "Backup de Dados do Utilizador" #: platform/android/export/export_plugin.cpp msgid "Allow" msgstr "Permitir" #: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp -#, fuzzy msgid "Command Line" -msgstr "Comunidade" +msgstr "Linha de Comando" #: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp -#, fuzzy msgid "Extra Args" -msgstr "Argumentos de chamada extra:" +msgstr "Argumentos Extra" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "APK Expansion" -msgstr "Expressão" +msgstr "Expansão APK" #: platform/android/export/export_plugin.cpp msgid "Salt" msgstr "Sal" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Public Key" -msgstr "Caminho da Chave Pública SSH" +msgstr "Chave Pública" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Permissions" -msgstr "Máscara de Emissão" +msgstr "Permissões" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Custom Permissions" -msgstr "Executar Cena Personalizada" +msgstr "Permissões Personalizadas" #: platform/android/export/export_plugin.cpp msgid "Select device from the list" @@ -18927,69 +18629,74 @@ msgid "\"Use Custom Build\" must be enabled to use the plugins." msgstr "\"Use Custom Build\" têm de estar ativa para usar os plugins." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "\"Hand Tracking\" is only valid when \"XR Mode\" is \"Oculus Mobile VrApi\" " "or \"OpenXR\"." msgstr "" -"\"Rastreamento de Mão\" só é válido quando \"Modo Xr\" é \"Oculus Mobile " -"VrApi\" ou \"OpenXR\"." +"\"Hand Tracking\" só é válido quando o \"XR Mode\" é \"Oculus Mobile VrApi\" " +"ou \"OpenXR\"." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "\"Passthrough\" is only valid when \"XR Mode\" is \"OpenXR\"." -msgstr "\"Passthrough\" só é válido quando \"Modo Xr\" é \"OpenXR\"." +msgstr "\"Passthrough\" só é válido quando o \"XR Mode\" é \"OpenXR\"." #: platform/android/export/export_plugin.cpp msgid "\"Export AAB\" is only valid when \"Use Custom Build\" is enabled." msgstr "\"Exportar AAB\" só é válido quando \"Use Custom Build\" está ativa." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "\"Min SDK\" can only be overridden when \"Use Custom Build\" is enabled." msgstr "" -"Mudança de \"Min Sdk\" só é válida quando \"Use Custom Build\" está ativa." +"\"Min SDK\" só pode ser substituÃdo quando \"Usar Compilação Customizada\" " +"está ativado." #: platform/android/export/export_plugin.cpp msgid "\"Min SDK\" should be a valid integer, but got \"%s\" which is invalid." msgstr "" +"\"Min SDK\" deve ser um número inteiro válido, mas obteve \"%s\" que é " +"inválido." #: platform/android/export/export_plugin.cpp msgid "" "\"Min SDK\" cannot be lower than %d, which is the version needed by the " "Godot library." msgstr "" +"\"Min SDK\" não pode ser inferior a %d, que é a versão necessária para a " +"biblioteca Godot." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "\"Target SDK\" can only be overridden when \"Use Custom Build\" is enabled." msgstr "" -"Mudança de \"Target Sdk\" só é válida quando \"Use Custom Build\" está ativa." +"\"Target SDK\" só pode ser substituÃdo quando \"Usar Compilação " +"Customizada\" está ativado." #: platform/android/export/export_plugin.cpp msgid "" "\"Target SDK\" should be a valid integer, but got \"%s\" which is invalid." msgstr "" +"\"Target SDK\" deve ser um número inteiro válido, mas obteve \"%s\", que é " +"inválido." #: platform/android/export/export_plugin.cpp msgid "" "\"Target SDK\" %d is higher than the default version %d. This may work, but " "wasn't tested and may be unstable." msgstr "" +"\"Target SDK\" %d é superior à versão padrão %d. Isso pode funcionar, mas " +"não foi testado e pode ser instável." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "\"Target SDK\" version must be greater or equal to \"Min SDK\" version." msgstr "" -"Versão de \"Target Sdk\" tem de ser maior ou igual à versão de \"Min Sdk\"." +"Versão do \"Target SDK\" precisa ser igual ou maior que a versão do \"Min " +"SDK\"." #: platform/android/export/export_plugin.cpp platform/osx/export/export.cpp #: platform/windows/export/export.cpp -#, fuzzy msgid "Code Signing" -msgstr "Sinal" +msgstr "Assinatura de Código" #: platform/android/export/export_plugin.cpp msgid "" @@ -19066,12 +18773,11 @@ msgstr "" "menu 'Projeto'." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "Unable to overwrite res://android/build/res/*.xml files with project name." msgstr "" -"Incapaz de sobrescrever ficheiros res://android/build/res/*.xml com o nome " -"do projeto" +"Incapaz de sobrescrever os ficheiros res://android/build/res/*.xml com o " +"nome do projeto." #: platform/android/export/export_plugin.cpp msgid "Could not export project files to gradle project." @@ -19107,9 +18813,8 @@ msgstr "" "projeto gradle por resultados." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Package not found: \"%s\"." -msgstr "Pacote não encontrado: '%s'" +msgstr "Pacote não encontrado: \"%s\"." #: platform/android/export/export_plugin.cpp msgid "Creating APK..." @@ -19134,9 +18839,8 @@ msgid "Adding files..." msgstr "A adicionar ficheiros..." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Could not export project files." -msgstr "Incapaz de exportar ficheiros do projeto" +msgstr "Não foi possÃvel exportar os ficheiros do projeto." #: platform/android/export/export_plugin.cpp msgid "Aligning APK..." @@ -19232,9 +18936,8 @@ msgid "Code Sign Identity Release" msgstr "Liberação de Identidade de Sinal de Código" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Export Method Release" -msgstr "Modo exportação:" +msgstr "Modo de Exportação Lançamento" #: platform/iphone/export/export.cpp msgid "Targeted Device Family" @@ -19245,44 +18948,37 @@ msgid "Info" msgstr "Informações" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Identifier" -msgstr "Identificador Inválido:" +msgstr "Identificador" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Signature" -msgstr "Sinal" +msgstr "Assinatura" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Short Version" -msgstr "Versão" +msgstr "Versão Curta" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp #: platform/windows/export/export.cpp -#, fuzzy msgid "Copyright" -msgstr "Topo Direita" +msgstr "Direitos Autorais" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Capabilities" -msgstr "Colar Propriedades" +msgstr "Capacidades" #: platform/iphone/export/export.cpp msgid "Access Wi-Fi" msgstr "Acesso Wi-Fi" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Push Notifications" -msgstr "Rotação aleatória:" +msgstr "Notificações Push" #: platform/iphone/export/export.cpp -#, fuzzy msgid "User Data" -msgstr "Interface do Utilizador" +msgstr "Dados do Utilizador" #: platform/iphone/export/export.cpp msgid "Accessible From Files App" @@ -19293,19 +18989,16 @@ msgid "Accessible From iTunes Sharing" msgstr "AcessÃvel a partir do Compartilhamento do iTunes" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Privacy" -msgstr "Caminho da Chave Privada SSH" +msgstr "Privacidade" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Camera Usage Description" -msgstr "Descrição" +msgstr "Descrição do Uso da Câmara" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Microphone Usage Description" -msgstr "Descrições da Propriedade" +msgstr "Descrição do Uso do Microfone" #: platform/iphone/export/export.cpp #, fuzzy @@ -19353,9 +19046,8 @@ msgid "Use Launch Screen Storyboard" msgstr "Use o Storyboard da Tela de Inicialização" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Image Scale Mode" -msgstr "Modo Escalar" +msgstr "Modo de Escalonamento de Imagem" #: platform/iphone/export/export.cpp #, fuzzy @@ -19368,30 +19060,25 @@ msgid "Custom Image @3x" msgstr "CustomNode" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Use Custom BG Color" -msgstr "CustomNode" +msgstr "Usar Cor Personalizada de Fundo" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Custom BG Color" -msgstr "CustomNode" +msgstr "Cor Personalizada de Fundo" #: platform/iphone/export/export.cpp -#, fuzzy msgid "Export Icons" -msgstr "Expandir Tudo" +msgstr "Exportar Ãcones" #: platform/iphone/export/export.cpp platform/javascript/export/export.cpp #: platform/osx/export/export.cpp -#, fuzzy msgid "Prepare Templates" -msgstr "Gerir Modelos" +msgstr "Preparar Templates" #: platform/iphone/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Export template not found." -msgstr "Modelo de lançamento personalizado não encontrado." +msgstr "Template exportado não encontrado." #: platform/iphone/export/export.cpp msgid "App Store Team ID not specified - cannot configure the project." @@ -19415,48 +19102,40 @@ msgid "Run exported HTML in the system's default browser." msgstr "Executar HTML exportado no navegador predefinido do sistema." #: platform/javascript/export/export.cpp -#, fuzzy msgid "Could not open template for export: \"%s\"." -msgstr "Incapaz de abrir modelo para exportação:" +msgstr "Não foi possÃvel abrir o modelo para exportação: \"%s\"." #: platform/javascript/export/export.cpp -#, fuzzy msgid "Invalid export template: \"%s\"." -msgstr "Modelo de exportação inválido:" +msgstr "Template de exportação inválido: \"%s\"." #: platform/javascript/export/export.cpp -#, fuzzy msgid "Could not write file: \"%s\"." -msgstr "Incapaz de escrever ficheiro:" +msgstr "Não foi possÃvel escrever o ficheiro: \"%s\"." #: platform/javascript/export/export.cpp platform/osx/export/export.cpp -#, fuzzy msgid "Icon Creation" -msgstr "Definir Margem" +msgstr "Criação de Ãcone" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Could not read file: \"%s\"." -msgstr "Incapaz de ler ficheiro:" +msgstr "Não foi possÃvel ler o ficheiro: \"%s\"." #: platform/javascript/export/export.cpp msgid "PWA" msgstr "PWA" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Variant" -msgstr "Separação:" +msgstr "Variante" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Export Type" -msgstr "Exportar" +msgstr "Tipo de Exportação" #: platform/javascript/export/export.cpp -#, fuzzy msgid "VRAM Texture Compression" -msgstr "Expressão" +msgstr "Compressão de Texturas na VRAM" #: platform/javascript/export/export.cpp msgid "For Desktop" @@ -19471,9 +19150,8 @@ msgid "HTML" msgstr "HTML" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Export Icon" -msgstr "Expandir Tudo" +msgstr "Exportar Ãcone" #: platform/javascript/export/export.cpp #, fuzzy @@ -19493,9 +19171,8 @@ msgid "Focus Canvas On Start" msgstr "Focar Tela ao Iniciar" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Experimental Virtual Keyboard" -msgstr "Filtrar sinais" +msgstr "Teclado Virtual Experimental" #: platform/javascript/export/export.cpp msgid "Progressive Web App" @@ -19518,19 +19195,16 @@ msgid "Icon 512 X 512" msgstr "Ãcone 512 X 512" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Could not read HTML shell: \"%s\"." -msgstr "Incapaz de ler shell HTML:" +msgstr "Não foi possÃvel ler o shell HTML: \"%s\"." #: platform/javascript/export/export.cpp -#, fuzzy msgid "Could not create HTTP server directory: %s." -msgstr "Incapaz de criar diretoria do servidor HTTP:" +msgstr "Não foi possÃvel criar o diretório do servidor HTTP: \"%s\"." #: platform/javascript/export/export.cpp -#, fuzzy msgid "Error starting HTTP server: %d." -msgstr "Erro ao iniciar servidor HTTP:" +msgstr "Erro ao iniciar o servidor HTTP: %d." #: platform/javascript/export/export.cpp msgid "Web" @@ -19545,9 +19219,8 @@ msgid "HTTP Port" msgstr "Porta HTTP" #: platform/javascript/export/export.cpp -#, fuzzy msgid "Use SSL" -msgstr "Usar Ajuste" +msgstr "Usar SSL" #: platform/javascript/export/export.cpp msgid "SSL Key" @@ -19576,27 +19249,24 @@ msgid "Invalid Info.plist, can't load." msgstr "Geometria inválida, incapaz de criar polÃgono." #: platform/osx/export/codesign.cpp -#, fuzzy msgid "Failed to create \"%s\" subfolder." -msgstr "Não consegui criar pasta." +msgstr "Falha ao criar sub-pasta \"%s\"." #: platform/osx/export/codesign.cpp msgid "Failed to extract thin binary." msgstr "Falha ao extrair o binário fino." #: platform/osx/export/codesign.cpp -#, fuzzy msgid "Invalid binary format." -msgstr "Caminho base inválido." +msgstr "Formato de binário inválido." #: platform/osx/export/codesign.cpp msgid "Already signed!" msgstr "Já assinado!" #: platform/osx/export/codesign.cpp -#, fuzzy msgid "Failed to process nested resources." -msgstr "Falha ao carregar recurso." +msgstr "Falha ao processar recursos aninhados." #: platform/osx/export/codesign.cpp msgid "Failed to create _CodeSignature subfolder." @@ -19613,9 +19283,8 @@ msgid "Invalid entitlements file." msgstr "Extensão inválida." #: platform/osx/export/codesign.cpp -#, fuzzy msgid "Invalid executable file." -msgstr "Extensão inválida." +msgstr "Ficheiro executável inválido." #: platform/osx/export/codesign.cpp msgid "Can't resize signature load command." @@ -19634,42 +19303,36 @@ msgid "Unknown object type." msgstr "Tipo de objeto desconhecido." #: platform/osx/export/export.cpp -#, fuzzy msgid "App Category" -msgstr "Categoria:" +msgstr "Categoria da App" #: platform/osx/export/export.cpp msgid "High Res" msgstr "Alta resolução" #: platform/osx/export/export.cpp -#, fuzzy msgid "Location Usage Description" -msgstr "Descrição" +msgstr "Descrição do Uso da Localização" #: platform/osx/export/export.cpp msgid "Address Book Usage Description" msgstr "Descrição de Uso do Catálogo de Endereços" #: platform/osx/export/export.cpp -#, fuzzy msgid "Calendar Usage Description" -msgstr "Descrição" +msgstr "Descrição do Uso do Calendário" #: platform/osx/export/export.cpp -#, fuzzy msgid "Photos Library Usage Description" -msgstr "Descrições da Propriedade" +msgstr "Descrição do Uso da Biblioteca de Fotos" #: platform/osx/export/export.cpp -#, fuzzy msgid "Desktop Folder Usage Description" -msgstr "Descrições do Método" +msgstr "Descrição do Uso da Pasta da Ãrea de Trabalho" #: platform/osx/export/export.cpp -#, fuzzy msgid "Documents Folder Usage Description" -msgstr "Descrições do Método" +msgstr "Descrição do Uso da Pasta de Documentos" #: platform/osx/export/export.cpp msgid "Downloads Folder Usage Description" @@ -19690,23 +19353,20 @@ msgstr "Nó" #: platform/osx/export/export.cpp platform/uwp/export/export.cpp #: platform/windows/export/export.cpp -#, fuzzy msgid "Identity" -msgstr "Indentar à esquerda" +msgstr "Identidade" #: platform/osx/export/export.cpp platform/windows/export/export.cpp -#, fuzzy msgid "Timestamp" -msgstr "Tempo" +msgstr "Registo do Tempo" #: platform/osx/export/export.cpp msgid "Hardened Runtime" msgstr "Tempo de Execução Reforçado" #: platform/osx/export/export.cpp -#, fuzzy msgid "Replace Existing Signature" -msgstr "Substituir em Ficheiros" +msgstr "Substituir Assinatura Existente" #: platform/osx/export/export.cpp #, fuzzy @@ -19714,13 +19374,12 @@ msgid "Entitlements" msgstr "Bugigangas" #: platform/osx/export/export.cpp -#, fuzzy msgid "Custom File" -msgstr "CustomNode" +msgstr "Ficheiro Personalizado" #: platform/osx/export/export.cpp msgid "Allow JIT Code Execution" -msgstr "" +msgstr "Permitir Execução de Código JIT" #: platform/osx/export/export.cpp msgid "Allow Unsigned Executable Memory" @@ -19731,65 +19390,56 @@ msgid "Allow Dyld Environment Variables" msgstr "" #: platform/osx/export/export.cpp -#, fuzzy msgid "Disable Library Validation" -msgstr "Desativar Botão" +msgstr "Desativar Validação da Biblioteca" #: platform/osx/export/export.cpp -#, fuzzy msgid "Audio Input" -msgstr "Adicionar entrada" +msgstr "Entrada de Ãudio" #: platform/osx/export/export.cpp msgid "Address Book" -msgstr "" +msgstr "Contatos" #: platform/osx/export/export.cpp msgid "Calendars" -msgstr "" +msgstr "Calendários" #: platform/osx/export/export.cpp -#, fuzzy msgid "Photos Library" -msgstr "Exportar Biblioteca" +msgstr "Biblioteca de Fotos" #: platform/osx/export/export.cpp -#, fuzzy msgid "Apple Events" -msgstr "Adicionar evento" +msgstr "Eventos Apple" #: platform/osx/export/export.cpp -#, fuzzy msgid "Debugging" -msgstr "Depurar" +msgstr "Depuração" #: platform/osx/export/export.cpp msgid "App Sandbox" msgstr "" #: platform/osx/export/export.cpp -#, fuzzy msgid "Network Server" -msgstr "Analisador de Rede" +msgstr "Servidor de Rede" #: platform/osx/export/export.cpp -#, fuzzy msgid "Network Client" -msgstr "Analisador de Rede" +msgstr "Cliente de Rede" #: platform/osx/export/export.cpp -#, fuzzy msgid "Device USB" -msgstr "Aparelho" +msgstr "Aparelho USB" #: platform/osx/export/export.cpp msgid "Device Bluetooth" -msgstr "" +msgstr "Bluetooth do Aparelho" #: platform/osx/export/export.cpp -#, fuzzy msgid "Files Downloads" -msgstr "Descarrega" +msgstr "Descarregas de Ficheiros" #: platform/osx/export/export.cpp #, fuzzy @@ -19807,9 +19457,8 @@ msgid "Files Movies" msgstr "Filtrar Tiles" #: platform/osx/export/export.cpp platform/windows/export/export.cpp -#, fuzzy msgid "Custom Options" -msgstr "Opções de Barramento" +msgstr "Opções Personalizadas" #: platform/osx/export/export.cpp #, fuzzy @@ -19818,7 +19467,7 @@ msgstr "Localização" #: platform/osx/export/export.cpp msgid "Apple ID Name" -msgstr "" +msgstr "Nome Apple ID" #: platform/osx/export/export.cpp #, fuzzy @@ -19827,21 +19476,19 @@ msgstr "Senha" #: platform/osx/export/export.cpp msgid "Apple Team ID" -msgstr "" +msgstr "ID Apple Team" #: platform/osx/export/export.cpp -#, fuzzy msgid "Could not open icon file \"%s\"." -msgstr "Incapaz de exportar ficheiros do projeto" +msgstr "Não foi possÃvel abrir o ficheiro de Ãcone \"%s\"." #: platform/osx/export/export.cpp msgid "Could not start xcrun executable." msgstr "Não foi possÃvel iniciar o executável xcrun." #: platform/osx/export/export.cpp -#, fuzzy msgid "Notarization failed." -msgstr "Localização" +msgstr "Falha na notarização." #: platform/osx/export/export.cpp msgid "Notarization request UUID: \"%s\"" @@ -19858,6 +19505,8 @@ msgid "" "You can check progress manually by opening a Terminal and running the " "following command:" msgstr "" +"Pode verificar o progresso manualmente abrindo um Terminal e a executar o " +"seguinte comando:" #: platform/osx/export/export.cpp msgid "" @@ -19887,25 +19536,24 @@ msgid "" "Could not start codesign executable, make sure Xcode command line tools are " "installed." msgstr "" +"Não foi possÃvel iniciar o executável codesign, tenha certeza que as " +"utilidades de linha de comando do Xcode estão instaladas." #: platform/osx/export/export.cpp platform/windows/export/export.cpp -#, fuzzy msgid "No identity found." -msgstr "Ãcones não encontrados." +msgstr "Nenhuma identidade encontrada." #: platform/osx/export/export.cpp -#, fuzzy msgid "Cannot sign file %s." -msgstr "Erro ao guardar ficheiro: %s" +msgstr "Erro ao assinar o ficheiro %s." #: platform/osx/export/export.cpp msgid "Relative symlinks are not supported, exported \"%s\" might be broken!" msgstr "" #: platform/osx/export/export.cpp -#, fuzzy msgid "DMG Creation" -msgstr "Direções" +msgstr "Criação de DMG" #: platform/osx/export/export.cpp msgid "Could not start hdiutil executable." @@ -19913,11 +19561,11 @@ msgstr "Não foi possÃvel iniciar o executável hdiutil." #: platform/osx/export/export.cpp msgid "`hdiutil create` failed - file exists." -msgstr "" +msgstr "`hdiutil create` falhou - o ficheiro existe." #: platform/osx/export/export.cpp msgid "`hdiutil create` failed." -msgstr "" +msgstr "`hdiutil create` falhou." #: platform/osx/export/export.cpp #, fuzzy @@ -19925,14 +19573,13 @@ msgid "Creating app bundle" msgstr "A criar miniatura" #: platform/osx/export/export.cpp -#, fuzzy msgid "Could not find template app to export: \"%s\"." -msgstr "Incapaz de encontrar modelo app para exportar:" +msgstr "" +"Não foi possÃvel encontrar a aplicação de modelo para exportar: \"%s\"." #: platform/osx/export/export.cpp -#, fuzzy msgid "Invalid export format." -msgstr "Modelo de exportação inválido:" +msgstr "Formato de exportação inválido." #: platform/osx/export/export.cpp msgid "" @@ -19948,7 +19595,7 @@ msgstr "" #: platform/osx/export/export.cpp msgid "Making PKG" -msgstr "" +msgstr "Criando PKG" #: platform/osx/export/export.cpp msgid "" @@ -19962,7 +19609,7 @@ msgstr "" #: platform/osx/export/export.cpp msgid "Making DMG" -msgstr "" +msgstr "Criando DMG" #: platform/osx/export/export.cpp msgid "Code signing DMG" @@ -19970,7 +19617,7 @@ msgstr "" #: platform/osx/export/export.cpp msgid "Making ZIP" -msgstr "" +msgstr "Criando ZIP" #: platform/osx/export/export.cpp msgid "" @@ -19983,9 +19630,8 @@ msgid "Sending archive for notarization" msgstr "" #: platform/osx/export/export.cpp -#, fuzzy msgid "ZIP Creation" -msgstr "Projeto" +msgstr "Criação de ZIP" #: platform/osx/export/export.cpp msgid "Could not open file to read from path \"%s\"." @@ -20039,6 +19685,8 @@ msgid "" "Warning: Notarization is disabled. The exported project will be blocked by " "Gatekeeper if it's downloaded from an unknown source." msgstr "" +"Aviso: Notarização está desativada. O projeto exportado será bloqueado pelo " +"Gatekeeper se for descarregado de uma fonte desconhecida." #: platform/osx/export/export.cpp msgid "" @@ -20068,70 +19716,78 @@ msgid "" "Privacy: Microphone access is enabled, but usage description is not " "specified." msgstr "" +"Privacidade: O acesso ao microfone está ativado, mas a descrição de uso não " +"é especificada." #: platform/osx/export/export.cpp msgid "" "Privacy: Camera access is enabled, but usage description is not specified." msgstr "" +"Privacidade: O acesso à câmara está ativado, mas a descrição de uso não é " +"especificada." #: platform/osx/export/export.cpp msgid "" "Privacy: Location information access is enabled, but usage description is " "not specified." msgstr "" +"Privacidade: O acesso à localização está ativado, mas a descrição de uso não " +"é especificada." #: platform/osx/export/export.cpp msgid "" "Privacy: Address book access is enabled, but usage description is not " "specified." msgstr "" +"Privacidade: O acesso ao livro de endereços está ativado, mas a descrição de " +"uso não é especificada." #: platform/osx/export/export.cpp msgid "" "Privacy: Calendar access is enabled, but usage description is not specified." msgstr "" +"Privacidade: O acesso ao calendário está ativado, mas a descrição de uso não " +"é especificada." #: platform/osx/export/export.cpp msgid "" "Privacy: Photo library access is enabled, but usage description is not " "specified." msgstr "" +"Privacidade: O acesso à biblioteca de fotos está ativado, mas a descrição de " +"uso não é especificada." #: platform/osx/export/export.cpp msgid "macOS" -msgstr "" +msgstr "macOS" #: platform/osx/export/export.cpp msgid "Force Builtin Codesign" msgstr "" #: platform/uwp/export/export.cpp -#, fuzzy msgid "Architecture" -msgstr "Adicionar uma entrada arquitetura" +msgstr "Arquitetura" #: platform/uwp/export/export.cpp -#, fuzzy msgid "Display Name" -msgstr "Mostrar Tudo" +msgstr "Nome de Exibição" #: platform/uwp/export/export.cpp -#, fuzzy msgid "Short Name" -msgstr "Nome do Script:" +msgstr "Nome Curto" #: platform/uwp/export/export.cpp msgid "Publisher" -msgstr "" +msgstr "Publicadora" #: platform/uwp/export/export.cpp msgid "Publisher Display Name" msgstr "Nome de Exibição do Editor" #: platform/uwp/export/export.cpp -#, fuzzy msgid "Product GUID" -msgstr "GUID do produto inválido." +msgstr "GUID do produto" #: platform/uwp/export/export.cpp #, fuzzy @@ -20144,14 +19800,12 @@ msgid "Signing" msgstr "Sinal" #: platform/uwp/export/export.cpp -#, fuzzy msgid "Certificate" -msgstr "Vértices:" +msgstr "Certificado" #: platform/uwp/export/export.cpp -#, fuzzy msgid "Algorithm" -msgstr "Depurador" +msgstr "Algoritmo" #: platform/uwp/export/export.cpp msgid "Major" @@ -20167,26 +19821,24 @@ msgid "Build" msgstr "Modo Régua" #: platform/uwp/export/export.cpp -#, fuzzy msgid "Revision" -msgstr "Expressão" +msgstr "Revisão" #: platform/uwp/export/export.cpp msgid "Landscape" -msgstr "" +msgstr "Paisagem" #: platform/uwp/export/export.cpp -#, fuzzy msgid "Portrait" -msgstr "Inverter Portais" +msgstr "Retrato" #: platform/uwp/export/export.cpp msgid "Landscape Flipped" -msgstr "" +msgstr "Paisagem Invertido" #: platform/uwp/export/export.cpp msgid "Portrait Flipped" -msgstr "" +msgstr "Retrato Invertido" #: platform/uwp/export/export.cpp #, fuzzy @@ -20195,33 +19847,31 @@ msgstr "Modo Escalar" #: platform/uwp/export/export.cpp msgid "Square 44 X 44 Logo" -msgstr "" +msgstr "Logo Quadrada 44 X 44" #: platform/uwp/export/export.cpp msgid "Square 71 X 71 Logo" -msgstr "" +msgstr "Logo Quadrada 71 X 71" #: platform/uwp/export/export.cpp msgid "Square 150 X 150 Logo" -msgstr "" +msgstr "Logo Quadrada 150 X 150" #: platform/uwp/export/export.cpp msgid "Square 310 X 310 Logo" -msgstr "" +msgstr "Logo Quadrada 310 X 310" #: platform/uwp/export/export.cpp msgid "Wide 310 X 150 Logo" msgstr "" #: platform/uwp/export/export.cpp -#, fuzzy msgid "Splash Screen" -msgstr "Chamadas de Desenho:" +msgstr "Escrã de Abertura" #: platform/uwp/export/export.cpp -#, fuzzy msgid "Tiles" -msgstr "Ficheiro" +msgstr "Tiles" #: platform/uwp/export/export.cpp msgid "Show Name On Square 150 X 150" @@ -20240,6 +19890,8 @@ msgid "" "Godot's Mono version does not support the UWP platform. Use the standard " "build (no C# support) if you wish to target UWP." msgstr "" +"A versão Mono do Godot não suporta a plataforma UWP. Use a build padrão (sem " +"suporte a C#) se deseja exportar para UWP." #: platform/uwp/export/export.cpp msgid "Invalid package short name." @@ -20301,7 +19953,7 @@ msgstr "Dimensões inválidas da imagem do ecrã inicial (deve ser 620x300)." #: platform/uwp/export/export.cpp msgid "UWP" -msgstr "" +msgstr "UWP" #: platform/uwp/export/export.cpp platform/windows/export/export.cpp #, fuzzy @@ -20313,18 +19965,16 @@ msgid "Debug Certificate" msgstr "" #: platform/uwp/export/export.cpp -#, fuzzy msgid "Debug Algorithm" -msgstr "Depurador" +msgstr "Algoritmo de Depuração" #: platform/windows/export/export.cpp -#, fuzzy msgid "Failed to rename temporary file \"%s\"." -msgstr "Incapaz de remover ficheiro temporário:" +msgstr "Falha ao renomear o ficheiro temporário \"%s\"." #: platform/windows/export/export.cpp msgid "Identity Type" -msgstr "" +msgstr "Tipo de Identidade" #: platform/windows/export/export.cpp msgid "Timestamp Server URL" @@ -20336,42 +19986,36 @@ msgid "Digest Algorithm" msgstr "Depurador" #: platform/windows/export/export.cpp -#, fuzzy msgid "Modify Resources" -msgstr "Copiar Recurso" +msgstr "Modificar Recursos" #: platform/windows/export/export.cpp -#, fuzzy msgid "File Version" -msgstr "Versão" +msgstr "Versão do Ficheiro" #: platform/windows/export/export.cpp msgid "Product Version" msgstr "Versão do Produto" #: platform/windows/export/export.cpp -#, fuzzy msgid "Company Name" -msgstr "Nome do Nó:" +msgstr "Nome da Empresa" #: platform/windows/export/export.cpp -#, fuzzy msgid "Product Name" -msgstr "Nome do Projeto:" +msgstr "Nome do Produto" #: platform/windows/export/export.cpp -#, fuzzy msgid "File Description" -msgstr "Descrição" +msgstr "Descrição do Ficheiro" #: platform/windows/export/export.cpp msgid "Trademarks" -msgstr "" +msgstr "Marca Registada (Trademarks)" #: platform/windows/export/export.cpp -#, fuzzy msgid "Resources Modification" -msgstr "Rotação aleatória:" +msgstr "Modificações dos Recursos" #: platform/windows/export/export.cpp #, fuzzy @@ -20406,9 +20050,8 @@ msgid "Could not find osslsigncode executable at \"%s\"." msgstr "Incapaz de encontrar keystore e exportar." #: platform/windows/export/export.cpp -#, fuzzy msgid "Invalid identity type." -msgstr "Identificador Inválido:" +msgstr "Tipo de identidade inválido." #: platform/windows/export/export.cpp #, fuzzy @@ -20428,9 +20071,8 @@ msgid "Signtool failed to sign executable: %s." msgstr "Extensão inválida." #: platform/windows/export/export.cpp -#, fuzzy msgid "Failed to remove temporary file \"%s\"." -msgstr "Incapaz de remover ficheiro temporário:" +msgstr "Falha ao remover o ficheiro temporário \"%s\"." #: platform/windows/export/export.cpp msgid "" @@ -20452,7 +20094,7 @@ msgstr "Versão de produto inválida:" #: platform/windows/export/export.cpp msgid "Windows executables cannot be >= 4 GiB." -msgstr "" +msgstr "Executáveis Windows não podem ser >= 4GiB." #: platform/windows/export/export.cpp platform/x11/export/export.cpp #, fuzzy @@ -20465,12 +20107,11 @@ msgstr "" #: platform/windows/export/export.cpp platform/x11/export/export.cpp msgid "Executable \"pck\" section not found." -msgstr "" +msgstr "Secção executável \"pck\" não encontrada." #: platform/windows/export/export.cpp -#, fuzzy msgid "Windows" -msgstr "Nova Janela" +msgstr "Windows" #: platform/windows/export/export.cpp msgid "Rcedit" @@ -20482,7 +20123,7 @@ msgstr "" #: platform/windows/export/export.cpp msgid "Wine" -msgstr "" +msgstr "Vinho" #: platform/x11/export/export.cpp msgid "32-bit executables cannot have embedded data >= 4 GiB." @@ -20490,9 +20131,8 @@ msgstr "" #: scene/2d/animated_sprite.cpp scene/3d/sprite_3d.cpp #: scene/resources/texture.cpp -#, fuzzy msgid "Frames" -msgstr "Frame %" +msgstr "Quadros" #: scene/2d/animated_sprite.cpp msgid "" @@ -20504,21 +20144,18 @@ msgstr "" #: scene/2d/animated_sprite.cpp scene/2d/cpu_particles_2d.cpp #: scene/2d/particles_2d.cpp scene/3d/cpu_particles.cpp scene/3d/particles.cpp -#, fuzzy msgid "Speed Scale" -msgstr "Escala" +msgstr "Escalonamento da Velocidade" #: scene/2d/animated_sprite.cpp scene/2d/audio_stream_player_2d.cpp #: scene/3d/audio_stream_player_3d.cpp scene/3d/sprite_3d.cpp #: scene/audio/audio_stream_player.cpp -#, fuzzy msgid "Playing" -msgstr "Executar" +msgstr "A executar" #: scene/2d/animated_sprite.cpp scene/2d/sprite.cpp scene/3d/sprite_3d.cpp -#, fuzzy msgid "Centered" -msgstr "Centro" +msgstr "Centralizado" #: scene/2d/animated_sprite.cpp scene/2d/sprite.cpp scene/3d/sprite_3d.cpp #: scene/gui/texture_button.cpp scene/gui/texture_rect.cpp @@ -20531,14 +20168,12 @@ msgid "Flip V" msgstr "" #: scene/2d/area_2d.cpp scene/3d/area.cpp -#, fuzzy msgid "Monitoring" -msgstr "Monitor" +msgstr "Monitorando" #: scene/2d/area_2d.cpp scene/3d/area.cpp -#, fuzzy msgid "Monitorable" -msgstr "Monitor" +msgstr "Monitorável" #: scene/2d/area_2d.cpp scene/3d/area.cpp #, fuzzy @@ -20551,9 +20186,8 @@ msgid "Space Override" msgstr "Sobrepõe" #: scene/2d/area_2d.cpp scene/3d/area.cpp -#, fuzzy msgid "Gravity Point" -msgstr "Gerar Pontos" +msgstr "Ponto de Gravidade" #: scene/2d/area_2d.cpp scene/3d/area.cpp #, fuzzy @@ -20568,7 +20202,7 @@ msgstr "Pré-visualização Predefinida" #: scene/2d/area_2d.cpp scene/2d/cpu_particles_2d.cpp scene/3d/area.cpp #: scene/3d/cpu_particles.cpp scene/resources/particles_material.cpp msgid "Gravity" -msgstr "" +msgstr "Gravidade" #: scene/2d/area_2d.cpp scene/3d/area.cpp #, fuzzy @@ -20580,46 +20214,40 @@ msgid "Angular Damp" msgstr "" #: scene/2d/area_2d.cpp scene/3d/area.cpp -#, fuzzy msgid "Audio Bus" -msgstr "Adicionar barramento de áudio" +msgstr "Canal de Ãudio" #: scene/2d/area_2d.cpp scene/3d/area.cpp -#, fuzzy msgid "Override" -msgstr "Sobrepõe" +msgstr "Sobrescrever" #: scene/2d/audio_stream_player_2d.cpp scene/audio/audio_stream_player.cpp #: scene/gui/video_player.cpp servers/audio/effects/audio_effect_amplify.cpp -#, fuzzy msgid "Volume dB" -msgstr "Volume" +msgstr "Volume dB (decibéis)" #: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp #: scene/audio/audio_stream_player.cpp #: servers/audio/effects/audio_effect_pitch_shift.cpp -#, fuzzy msgid "Pitch Scale" -msgstr "Escala" +msgstr "Escalonamento de Pitch" #: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp #: scene/audio/audio_stream_player.cpp scene/gui/video_player.cpp -#, fuzzy msgid "Autoplay" -msgstr "Alternar reprodução automática" +msgstr "Reproduzir automaticamente" #: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp #: scene/audio/audio_stream_player.cpp msgid "Stream Paused" -msgstr "" +msgstr "Fluxo Pausado" #: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp #: scene/3d/light.cpp scene/3d/reflection_probe.cpp #: scene/3d/visibility_notifier.cpp scene/3d/visual_instance.cpp #: scene/resources/material.cpp -#, fuzzy msgid "Max Distance" -msgstr "Distância de escolha:" +msgstr "Distância Máxima" #: scene/2d/audio_stream_player_2d.cpp scene/3d/light.cpp #, fuzzy @@ -20628,39 +20256,33 @@ msgstr "Animação" #: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp #: scene/audio/audio_stream_player.cpp scene/gui/video_player.cpp -#, fuzzy msgid "Bus" -msgstr "Adicionar Barramento" +msgstr "Canal" #: scene/2d/audio_stream_player_2d.cpp scene/3d/audio_stream_player_3d.cpp msgid "Area Mask" msgstr "" #: scene/2d/back_buffer_copy.cpp -#, fuzzy msgid "Copy Mode" -msgstr "Copiar Nós" +msgstr "Mode de Cópia" #: scene/2d/camera_2d.cpp -#, fuzzy msgid "Anchor Mode" -msgstr "Modo Ãcone" +msgstr "Modo de Âncora" #: scene/2d/camera_2d.cpp -#, fuzzy msgid "Rotating" -msgstr "Passo da rotação:" +msgstr "Rotacionando" #: scene/2d/camera_2d.cpp scene/2d/listener_2d.cpp scene/3d/camera.cpp #: scene/3d/listener.cpp scene/animation/animation_blend_tree.cpp -#, fuzzy msgid "Current" -msgstr "Atual:" +msgstr "Atual" #: scene/2d/camera_2d.cpp scene/gui/graph_edit.cpp -#, fuzzy msgid "Zoom" -msgstr "Aumentar Zoom" +msgstr "Zoom" #: scene/2d/camera_2d.cpp scene/main/canvas_layer.cpp #, fuzzy @@ -20676,31 +20298,27 @@ msgstr "Modo Mover" #: scene/2d/camera_2d.cpp msgid "Limit" -msgstr "" +msgstr "Limite" #: scene/2d/camera_2d.cpp scene/gui/control.cpp scene/gui/nine_patch_rect.cpp #: scene/resources/style_box.cpp scene/resources/texture.cpp -#, fuzzy msgid "Left" -msgstr "Topo Esquerda" +msgstr "Esquerda" #: scene/2d/camera_2d.cpp scene/gui/control.cpp scene/gui/nine_patch_rect.cpp #: scene/resources/style_box.cpp scene/resources/texture.cpp -#, fuzzy msgid "Right" -msgstr "Luz" +msgstr "Direita" #: scene/2d/camera_2d.cpp scene/gui/control.cpp scene/gui/nine_patch_rect.cpp #: scene/resources/dynamic_font.cpp scene/resources/style_box.cpp #: scene/resources/texture.cpp -#, fuzzy msgid "Bottom" -msgstr "Fundo Esquerda" +msgstr "Embaixo" #: scene/2d/camera_2d.cpp -#, fuzzy msgid "Smoothed" -msgstr "Smoothstep" +msgstr "Suavizado" #: scene/2d/camera_2d.cpp #, fuzzy @@ -20718,9 +20336,8 @@ msgid "Drag Margin V Enabled" msgstr "Definir Margem" #: scene/2d/camera_2d.cpp -#, fuzzy msgid "Smoothing" -msgstr "Smoothstep" +msgstr "Suavizamento" #: scene/2d/camera_2d.cpp msgid "H" @@ -20737,14 +20354,12 @@ msgid "Drag Margin" msgstr "Definir Margem" #: scene/2d/camera_2d.cpp -#, fuzzy msgid "Draw Screen" -msgstr "Chamadas de Desenho:" +msgstr "Ecrã de Desenho" #: scene/2d/camera_2d.cpp -#, fuzzy msgid "Draw Limits" -msgstr "Chamadas de Desenho:" +msgstr "Limites de Desenho" #: scene/2d/camera_2d.cpp #, fuzzy @@ -20763,9 +20378,8 @@ msgid "Light Mode" msgstr "Direita Wide" #: scene/2d/canvas_item.cpp -#, fuzzy msgid "Particles Animation" -msgstr "PartÃculas" +msgstr "Animação de PartÃculas" #: scene/2d/canvas_item.cpp msgid "Particles Anim H Frames" @@ -20781,39 +20395,34 @@ msgid "Particles Anim Loop" msgstr "PartÃculas" #: scene/2d/canvas_item.cpp scene/3d/spatial.cpp -#, fuzzy msgid "Visibility" -msgstr "Alternar visibilidade" +msgstr "Visibilidade" #: scene/2d/canvas_item.cpp scene/3d/spatial.cpp scene/gui/progress_bar.cpp #: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp -#, fuzzy msgid "Visible" -msgstr "Alternar visibilidade" +msgstr "VisÃvel" #: scene/2d/canvas_item.cpp -#, fuzzy msgid "Self Modulate" -msgstr "Povoar" +msgstr "Auto Modular" #: scene/2d/canvas_item.cpp msgid "Show Behind Parent" -msgstr "" +msgstr "Mostrar Atrás do Pai" #: scene/2d/canvas_item.cpp -#, fuzzy msgid "Show On Top" -msgstr "Mostrar Origem" +msgstr "Mostrar Em Cima" #: scene/2d/canvas_item.cpp scene/2d/light_occluder_2d.cpp #: scene/2d/tile_map.cpp -#, fuzzy msgid "Light Mask" -msgstr "Luz" +msgstr "Máscara de Luz" #: scene/2d/canvas_item.cpp msgid "Use Parent Material" -msgstr "" +msgstr "Usar Material do Pai" #: scene/2d/canvas_modulate.cpp msgid "" @@ -20835,9 +20444,8 @@ msgstr "" "para definir a sua forma." #: scene/2d/collision_object_2d.cpp -#, fuzzy msgid "Pickable" -msgstr "Escolher Tile" +msgstr "Pegável" #: scene/2d/collision_polygon_2d.cpp msgid "" @@ -20879,9 +20487,8 @@ msgstr "Modo Régua" #: scene/3d/collision_polygon.cpp scene/3d/collision_shape.cpp #: scene/animation/animation_node_state_machine.cpp scene/gui/base_button.cpp #: scene/gui/texture_button.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Disabled" -msgstr "Item Desativado" +msgstr "Desativado" #: scene/2d/collision_polygon_2d.cpp scene/2d/collision_shape_2d.cpp #, fuzzy @@ -20929,9 +20536,8 @@ msgstr "" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp -#, fuzzy msgid "Emitting" -msgstr "Configuração:" +msgstr "Emitindo" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp @@ -20946,20 +20552,18 @@ msgstr "Nó OneShot" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp -#, fuzzy msgid "Preprocess" -msgstr "Pós-processamento" +msgstr "Pré processamento" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp msgid "Explosiveness" -msgstr "" +msgstr "Explosividade" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp -#, fuzzy msgid "Randomness" -msgstr "ReinÃcio aleatório (s):" +msgstr "Aleatoriedade" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -20968,9 +20572,8 @@ msgstr "" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp -#, fuzzy msgid "Fixed FPS" -msgstr "Ver FPS" +msgstr "FPS Fixado" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp @@ -20980,24 +20583,22 @@ msgstr "" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp msgid "Drawing" -msgstr "" +msgstr "Desenhando" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp -#, fuzzy msgid "Local Coords" -msgstr "Projetos Locais" +msgstr "Coordenadas Locais" #: scene/2d/cpu_particles_2d.cpp scene/2d/particles_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/particles.cpp msgid "Draw Order" -msgstr "" +msgstr "Ordem de Desenho" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Emission Shape" -msgstr "Máscara de Emissão" +msgstr "Forma de Emissão" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21010,9 +20611,8 @@ msgid "Rect Extents" msgstr "Bugigangas" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp -#, fuzzy msgid "Normals" -msgstr "Formato" +msgstr "Normais" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21022,51 +20622,45 @@ msgstr "Atribuir" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Direction" -msgstr "Direções" +msgstr "Direção" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp #: servers/audio/effects/audio_effect_reverb.cpp msgid "Spread" -msgstr "" +msgstr "Espalhar" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Initial Velocity" -msgstr "Inicializar" +msgstr "Velocidade Inicial" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Velocity Random" -msgstr "Vista Órbita Direita" +msgstr "Velocidade Aleatória" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp servers/physics_2d_server.cpp #: servers/physics_server.cpp msgid "Angular Velocity" -msgstr "" +msgstr "Velocidade Angular" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Velocity Curve" -msgstr "Vista Órbita Direita" +msgstr "Curva de Velocidade" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Orbit Velocity" -msgstr "Vista Órbita Direita" +msgstr "Velocidade Orbital" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Linear Accel" -msgstr "Linear" +msgstr "Aceleração Linear" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21076,23 +20670,22 @@ msgstr "Acel" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Accel Random" -msgstr "" +msgstr "Aceleração Aleatória" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Accel Curve" -msgstr "Dividir Curva" +msgstr "Curva de Aceleração" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Radial Accel" -msgstr "" +msgstr "Aceleração Radial" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Tangential Accel" -msgstr "" +msgstr "Aceleração Tangencial" #: scene/2d/cpu_particles_2d.cpp scene/2d/joints_2d.cpp #: scene/3d/cpu_particles.cpp scene/3d/physics_body.cpp @@ -21116,23 +20709,21 @@ msgstr "Dividir Curva" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp scene/3d/light.cpp #: scene/resources/particles_material.cpp msgid "Angle" -msgstr "" +msgstr "Ângulo" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp msgid "Angle Random" -msgstr "" +msgstr "Ângulo Aleatório" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Angle Curve" -msgstr "Fechar curva" +msgstr "Curva do Ângulo" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp -#, fuzzy msgid "Scale Amount" -msgstr "Valor:" +msgstr "Quantidade da Escala" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp msgid "Scale Amount Random" @@ -21156,45 +20747,38 @@ msgstr "" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Hue Variation" -msgstr "Separação:" +msgstr "Variação da Tonalidade" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Variation" -msgstr "Separação:" +msgstr "Variação" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Variation Random" -msgstr "Separação:" +msgstr "Variação Aleatória" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Variation Curve" -msgstr "Separação:" +msgstr "Curva de Variação" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Speed Random" -msgstr "Escala" +msgstr "Velocidade Aleatória" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Speed Curve" -msgstr "Dividir Curva" +msgstr "Curva de Velocidade" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp -#, fuzzy msgid "Offset Random" -msgstr "Compensação:" +msgstr "Deslocamento Aleatório" #: scene/2d/cpu_particles_2d.cpp scene/3d/cpu_particles.cpp #: scene/resources/particles_material.cpp @@ -21223,14 +20807,12 @@ msgid "Node A and Node B must be different PhysicsBody2Ds" msgstr "Nó A e Nó B têm de ser PhysicsBody2Ds diferentes" #: scene/2d/joints_2d.cpp scene/3d/physics_joint.cpp -#, fuzzy msgid "Node A" -msgstr "Nó" +msgstr "Nó A" #: scene/2d/joints_2d.cpp scene/3d/physics_joint.cpp -#, fuzzy msgid "Node B" -msgstr "Nó" +msgstr "Nó B" #: scene/2d/joints_2d.cpp scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp #: scene/3d/light.cpp scene/3d/physics_body.cpp scene/3d/physics_joint.cpp @@ -21239,9 +20821,8 @@ msgid "Bias" msgstr "" #: scene/2d/joints_2d.cpp -#, fuzzy msgid "Disable Collision" -msgstr "Desativar Botão" +msgstr "Desativar Colisão" #: scene/2d/joints_2d.cpp scene/3d/physics_body.cpp scene/3d/physics_joint.cpp msgid "Softness" @@ -21250,7 +20831,7 @@ msgstr "" #: scene/2d/joints_2d.cpp scene/resources/animation.cpp #: scene/resources/ray_shape.cpp scene/resources/segment_shape_2d.cpp msgid "Length" -msgstr "" +msgstr "Comprimento" #: scene/2d/joints_2d.cpp #, fuzzy @@ -21274,20 +20855,18 @@ msgstr "" "\"Textura\"." #: scene/2d/light_2d.cpp scene/3d/light.cpp scene/gui/reference_rect.cpp -#, fuzzy msgid "Editor Only" -msgstr "Editor" +msgstr "Somente Editor" #: scene/2d/light_2d.cpp -#, fuzzy msgid "Texture Scale" -msgstr "TextureRegion" +msgstr "Escalonamento da Textura" #: scene/2d/light_2d.cpp scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp #: scene/3d/light.cpp scene/resources/environment.cpp #: scene/resources/material.cpp scene/resources/sky.cpp msgid "Energy" -msgstr "" +msgstr "Energia" #: scene/2d/light_2d.cpp msgid "Z Min" @@ -21312,9 +20891,8 @@ msgid "Item Cull Mask" msgstr "" #: scene/2d/light_2d.cpp scene/3d/light.cpp scene/resources/style_box.cpp -#, fuzzy msgid "Shadow" -msgstr "Shader" +msgstr "Sombra" #: scene/2d/light_2d.cpp #, fuzzy @@ -21322,9 +20900,8 @@ msgid "Buffer Size" msgstr "Vista de Trás" #: scene/2d/light_2d.cpp -#, fuzzy msgid "Gradient Length" -msgstr "Gradiente Editado" +msgstr "Comprimento do Gradiente" #: scene/2d/light_2d.cpp #, fuzzy @@ -21332,9 +20909,8 @@ msgid "Filter Smooth" msgstr "Métodos de filtro" #: scene/2d/light_occluder_2d.cpp -#, fuzzy msgid "Closed" -msgstr "Fechar" +msgstr "Fechado" #: scene/2d/light_occluder_2d.cpp scene/resources/material.cpp #, fuzzy @@ -21353,28 +20929,24 @@ msgid "The occluder polygon for this occluder is empty. Please draw a polygon." msgstr "O polÃgono oclusor deste oclusor está vazio. Desenhe um polÃgono." #: scene/2d/line_2d.cpp -#, fuzzy msgid "Width Curve" -msgstr "Dividir Curva" +msgstr "Largura da Curva" #: scene/2d/line_2d.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Default Color" -msgstr "Predefinição" +msgstr "Cor Padrão" #: scene/2d/line_2d.cpp scene/resources/texture.cpp msgid "Fill" -msgstr "" +msgstr "Preencher" #: scene/2d/line_2d.cpp scene/resources/texture.cpp -#, fuzzy msgid "Gradient" -msgstr "Gradiente Editado" +msgstr "Gradiente" #: scene/2d/line_2d.cpp -#, fuzzy msgid "Texture Mode" -msgstr "TextureRegion" +msgstr "Modo de Textura" #: scene/2d/line_2d.cpp msgid "Capping" @@ -21391,14 +20963,12 @@ msgid "Begin Cap Mode" msgstr "Modo Região" #: scene/2d/line_2d.cpp -#, fuzzy msgid "End Cap Mode" -msgstr "Modo Ajuste:" +msgstr "Modo de Limite Final" #: scene/2d/line_2d.cpp scene/2d/polygon_2d.cpp scene/resources/style_box.cpp -#, fuzzy msgid "Border" -msgstr "em ordem:" +msgstr "Borda" #: scene/2d/line_2d.cpp msgid "Sharp Limit" @@ -21406,7 +20976,7 @@ msgstr "" #: scene/2d/line_2d.cpp msgid "Round Precision" -msgstr "" +msgstr "Precisão do Arredondamento" #: scene/2d/line_2d.cpp scene/2d/polygon_2d.cpp #: scene/resources/dynamic_font.cpp @@ -21426,9 +20996,8 @@ msgid "Cell Size" msgstr "" #: scene/2d/navigation_2d.cpp scene/3d/navigation.cpp -#, fuzzy msgid "Edge Connection Margin" -msgstr "Editar Conexão:" +msgstr "Margem de Ligação da Borda" #: scene/2d/navigation_2d.cpp msgid "" @@ -21452,9 +21021,8 @@ msgid "Target Desired Distance" msgstr "" #: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp -#, fuzzy msgid "Path Max Distance" -msgstr "Distância de escolha:" +msgstr "Distância Máxima do Caminho" #: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp #, fuzzy @@ -21480,9 +21048,8 @@ msgid "Time Horizon" msgstr "Inverter na Horizontal" #: scene/2d/navigation_agent_2d.cpp scene/3d/navigation_agent.cpp -#, fuzzy msgid "Max Speed" -msgstr "Velocidade:" +msgstr "Velocidade Máxima" #: scene/2d/navigation_agent_2d.cpp #, fuzzy @@ -21491,9 +21058,8 @@ msgid "" msgstr "O NavigationAgent2D pode ser apenas usado dentro de um nó Node2D." #: scene/2d/navigation_obstacle_2d.cpp scene/3d/navigation_obstacle.cpp -#, fuzzy msgid "Estimate Radius" -msgstr "Mudar Raio Externo do Toro" +msgstr "Raio Estimado" #: scene/2d/navigation_obstacle_2d.cpp msgid "" @@ -21531,18 +21097,16 @@ msgid "Rotation Degrees" msgstr "Graus de Rotação" #: scene/2d/node_2d.cpp scene/3d/spatial.cpp -#, fuzzy msgid "Global Rotation" -msgstr "Constante Global" +msgstr "Rotação Global" #: scene/2d/node_2d.cpp msgid "Global Rotation Degrees" msgstr "Graus de Rotação Global" #: scene/2d/node_2d.cpp -#, fuzzy msgid "Global Scale" -msgstr "Escala aleatória:" +msgstr "Escala Global" #: scene/2d/node_2d.cpp scene/3d/spatial.cpp #, fuzzy @@ -21557,12 +21121,11 @@ msgstr "Ajuste Relativo" #: scene/2d/parallax_background.cpp scene/gui/scroll_container.cpp #: scene/resources/default_theme/default_theme.cpp msgid "Scroll" -msgstr "" +msgstr "Rolagem" #: scene/2d/parallax_background.cpp -#, fuzzy msgid "Base Offset" -msgstr "Compensação:" +msgstr "Deslocamento Base" #: scene/2d/parallax_background.cpp #, fuzzy @@ -21571,16 +21134,15 @@ msgstr "Usar Ajuste de Escala" #: scene/2d/parallax_background.cpp msgid "Limit Begin" -msgstr "" +msgstr "InÃcio do Limite" #: scene/2d/parallax_background.cpp -#, fuzzy msgid "Limit End" -msgstr "No Fim" +msgstr "Fim do limite" #: scene/2d/parallax_background.cpp msgid "Ignore Camera Zoom" -msgstr "" +msgstr "Ignorar Zoom da Câmara" #: scene/2d/parallax_layer.cpp msgid "" @@ -21653,9 +21215,8 @@ msgstr "" #: scene/2d/path_2d.cpp scene/3d/path.cpp scene/resources/sky.cpp #: scene/resources/texture.cpp -#, fuzzy msgid "Curve" -msgstr "Dividir Curva" +msgstr "Curva" #: scene/2d/path_2d.cpp msgid "PathFollow2D only works when set as a child of a Path2D node." @@ -21663,48 +21224,41 @@ msgstr "" "PathFollow2D apenas funciona quando definido como filho de um nó Path2D." #: scene/2d/path_2d.cpp scene/3d/path.cpp -#, fuzzy msgid "Unit Offset" -msgstr "Compensação da grelha:" +msgstr "Deslocamento da Unidade" #: scene/2d/path_2d.cpp scene/3d/camera.cpp scene/3d/path.cpp -#, fuzzy msgid "H Offset" -msgstr "Compensação:" +msgstr "Deslocamento H" #: scene/2d/path_2d.cpp scene/3d/camera.cpp scene/3d/path.cpp -#, fuzzy msgid "V Offset" -msgstr "Compensação:" +msgstr "Deslocamento V" #: scene/2d/path_2d.cpp scene/3d/path.cpp msgid "Cubic Interp" -msgstr "" +msgstr "Interpolação Cúbica" #: scene/2d/path_2d.cpp msgid "Lookahead" msgstr "" #: scene/2d/physics_body_2d.cpp scene/3d/visual_instance.cpp -#, fuzzy msgid "Layers" -msgstr "Camada" +msgstr "Camadas" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp -#, fuzzy msgid "Constant Linear Velocity" -msgstr "Inicializar" +msgstr "Velocidade Linear Constante" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp -#, fuzzy msgid "Constant Angular Velocity" -msgstr "Inicializar" +msgstr "Velocidade Angular Constante" #: scene/2d/physics_body_2d.cpp scene/2d/tile_map.cpp scene/3d/physics_body.cpp #: scene/resources/physics_material.cpp -#, fuzzy msgid "Friction" -msgstr "Função" +msgstr "Fricção" #: scene/2d/physics_body_2d.cpp scene/2d/tile_map.cpp scene/3d/physics_body.cpp #: scene/resources/physics_material.cpp @@ -21717,9 +21271,8 @@ msgstr "" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #: scene/resources/world.cpp scene/resources/world_2d.cpp -#, fuzzy msgid "Default Gravity" -msgstr "Pré-visualização Predefinida" +msgstr "Gravidade Padrão" #: scene/2d/physics_body_2d.cpp msgid "" @@ -21733,26 +21286,23 @@ msgstr "" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Mass" -msgstr "" +msgstr "Massa" #: scene/2d/physics_body_2d.cpp -#, fuzzy msgid "Inertia" -msgstr "Vertical:" +msgstr "Inércia" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp -#, fuzzy msgid "Weight" -msgstr "Luz" +msgstr "Peso" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Gravity Scale" -msgstr "" +msgstr "Escala da Gravidade" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp -#, fuzzy msgid "Custom Integrator" -msgstr "CustomNode" +msgstr "Integrador Customizado" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #, fuzzy @@ -21775,25 +21325,24 @@ msgid "Sleeping" msgstr "Ajuste Inteligente" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp -#, fuzzy msgid "Can Sleep" -msgstr "Velocidade:" +msgstr "Pode Dormir" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Damp" -msgstr "" +msgstr "Úmido" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Angular" -msgstr "" +msgstr "Angular" #: scene/2d/physics_body_2d.cpp msgid "Applied Forces" -msgstr "" +msgstr "Forças Aplicadas" #: scene/2d/physics_body_2d.cpp msgid "Torque" -msgstr "" +msgstr "Torque" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #, fuzzy @@ -21805,73 +21354,64 @@ msgid "Sync To Physics" msgstr "Sincronizar com FÃsica" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp -#, fuzzy msgid "Moving Platform" -msgstr "A mover saÃda" +msgstr "Plataforma Móvel" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Apply Velocity On Leave" -msgstr "" +msgstr "Aplicar Velocidade ao Sair" #: scene/2d/physics_body_2d.cpp scene/2d/touch_screen_button.cpp #: scene/3d/physics_body.cpp scene/gui/texture_button.cpp #: scene/resources/default_theme/default_theme.cpp #: scene/resources/line_shape_2d.cpp scene/resources/material.cpp -#, fuzzy msgid "Normal" -msgstr "Formato" +msgstr "Normal" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp -#, fuzzy msgid "Remainder" -msgstr "Renderizador:" +msgstr "Restante" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp -#, fuzzy msgid "Local Shape" -msgstr "Localização" +msgstr "Forma Local" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #: servers/physics_2d_server.cpp servers/physics_server.cpp -#, fuzzy msgid "Collider" -msgstr "Modo Colisão" +msgstr "Colisor" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Collider ID" -msgstr "" +msgstr "ID do Colisor" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #: servers/physics_2d_server.cpp servers/physics_server.cpp -#, fuzzy msgid "Collider RID" -msgstr "RID inválido" +msgstr "RID do Colisor" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #: servers/physics_2d_server.cpp servers/physics_server.cpp -#, fuzzy msgid "Collider Shape" -msgstr "Modo Colisão" +msgstr "Forma do Colisor" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp -#, fuzzy msgid "Collider Shape Index" -msgstr "Modo Colisão" +msgstr "Ãndice da Forma do Colisor" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp #: servers/physics_2d_server.cpp servers/physics_server.cpp -#, fuzzy msgid "Collider Velocity" -msgstr "Vista Órbita Direita" +msgstr "Velocidade do Colisor" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Collider Metadata" -msgstr "" +msgstr "Metadados do Colisor" #: scene/2d/polygon_2d.cpp msgid "Invert" -msgstr "" +msgstr "Inverter" #: scene/2d/polygon_2d.cpp #, fuzzy @@ -21890,7 +21430,7 @@ msgstr "Bugigangas" #: scene/2d/ray_cast_2d.cpp scene/3d/ray_cast.cpp msgid "Exclude Parent" -msgstr "" +msgstr "Excluir Pai" #: scene/2d/ray_cast_2d.cpp scene/3d/ray_cast.cpp #, fuzzy @@ -21899,15 +21439,15 @@ msgstr "Criar Nó Shader" #: scene/2d/ray_cast_2d.cpp scene/3d/ray_cast.cpp msgid "Collide With" -msgstr "" +msgstr "Colidir com" #: scene/2d/ray_cast_2d.cpp scene/3d/camera.cpp scene/3d/ray_cast.cpp msgid "Areas" -msgstr "" +msgstr "Ãreas" #: scene/2d/ray_cast_2d.cpp scene/3d/camera.cpp scene/3d/ray_cast.cpp msgid "Bodies" -msgstr "" +msgstr "Corpos" #: scene/2d/remote_transform_2d.cpp msgid "Path property must point to a valid Node2D node to work." @@ -21916,14 +21456,12 @@ msgstr "" "válido." #: scene/2d/remote_transform_2d.cpp scene/3d/remote_transform.cpp -#, fuzzy msgid "Remote Path" -msgstr "Remover Ponto" +msgstr "Remover Caminho" #: scene/2d/remote_transform_2d.cpp scene/3d/remote_transform.cpp -#, fuzzy msgid "Use Global Coordinates" -msgstr "Próxima Coordenada" +msgstr "Usar Coordenadas Globais" #: scene/2d/skeleton_2d.cpp scene/3d/skeleton.cpp #, fuzzy @@ -21931,9 +21469,8 @@ msgid "Rest" msgstr "Reiniciar" #: scene/2d/skeleton_2d.cpp -#, fuzzy msgid "Default Length" -msgstr "Tema Predefinido" +msgstr "Comprimento Padrão" #: scene/2d/skeleton_2d.cpp msgid "This Bone2D chain should end at a Skeleton2D node." @@ -21977,14 +21514,12 @@ msgstr "" "RigidBody2D, KinematicBody2D, etc. para lhes dar uma forma." #: scene/2d/tile_map.cpp -#, fuzzy msgid "Tile Set" -msgstr "TileSet" +msgstr "Tile Set" #: scene/2d/tile_map.cpp -#, fuzzy msgid "Quadrant Size" -msgstr "Mudar tamanho da Câmara" +msgstr "Tamanho do Quadrante" #: scene/2d/tile_map.cpp #, fuzzy @@ -21997,9 +21532,8 @@ msgid "Half Offset" msgstr "Inicializar" #: scene/2d/tile_map.cpp -#, fuzzy msgid "Tile Origin" -msgstr "Ver origem" +msgstr "Origem do Tile" #: scene/2d/tile_map.cpp #, fuzzy @@ -22007,51 +21541,44 @@ msgid "Y Sort" msgstr "Ordenar" #: scene/2d/tile_map.cpp -#, fuzzy msgid "Show Collision" -msgstr "Colisão" +msgstr "Mostrar Colisão" #: scene/2d/tile_map.cpp -#, fuzzy msgid "Compatibility Mode" -msgstr "Modo Prioridade" +msgstr "Modo de Compatibilidade" #: scene/2d/tile_map.cpp -#, fuzzy msgid "Centered Textures" -msgstr "Funcionalidades Principais:" +msgstr "Texturas Centradas" #: scene/2d/tile_map.cpp msgid "Cell Clip UV" msgstr "" #: scene/2d/tile_map.cpp -#, fuzzy msgid "Use Parent" -msgstr "Modo Colisão" +msgstr "Usar Pai" #: scene/2d/tile_map.cpp msgid "Use Kinematic" msgstr "" #: scene/2d/touch_screen_button.cpp -#, fuzzy msgid "Shape Centered" -msgstr "Ajustar ao Centro do Nó" +msgstr "Forma Centralizada" #: scene/2d/touch_screen_button.cpp -#, fuzzy msgid "Shape Visible" -msgstr "Alternar Visibilidade" +msgstr "Forma VisÃvel" #: scene/2d/touch_screen_button.cpp msgid "Passby Press" msgstr "" #: scene/2d/touch_screen_button.cpp -#, fuzzy msgid "Visibility Mode" -msgstr "Modo Prioridade" +msgstr "Modo de Visibilidade" #: scene/2d/visibility_notifier_2d.cpp msgid "" @@ -22062,23 +21589,20 @@ msgstr "" "na cena raiz editada." #: scene/2d/visibility_notifier_2d.cpp scene/3d/visibility_notifier.cpp -#, fuzzy msgid "Pause Animations" -msgstr "Colar Animação" +msgstr "Pausar Animações" #: scene/2d/visibility_notifier_2d.cpp scene/3d/visibility_notifier.cpp msgid "Freeze Bodies" -msgstr "" +msgstr "Congelar Corpos" #: scene/2d/visibility_notifier_2d.cpp -#, fuzzy msgid "Pause Particles" -msgstr "PartÃculas" +msgstr "Pausar PartÃculas" #: scene/2d/visibility_notifier_2d.cpp -#, fuzzy msgid "Pause Animated Sprites" -msgstr "Colar Animação" +msgstr "Pausar Sprites Animados" #: scene/2d/visibility_notifier_2d.cpp #, fuzzy @@ -22108,7 +21632,7 @@ msgstr "" #: scene/3d/arvr_nodes.cpp servers/arvr/arvr_positional_tracker.cpp msgid "Rumble" -msgstr "" +msgstr "Vibrar" #: scene/3d/arvr_nodes.cpp msgid "ARVRController must have an ARVROrigin node as its parent." @@ -22144,9 +21668,8 @@ msgid "ARVROrigin requires an ARVRCamera child node." msgstr "ARVROrigin exige um nó filho ARVRCamera." #: scene/3d/arvr_nodes.cpp servers/arvr_server.cpp -#, fuzzy msgid "World Scale" -msgstr "Escala aleatória:" +msgstr "Escala do Mundo" #: scene/3d/audio_stream_player_3d.cpp #, fuzzy @@ -22155,24 +21678,23 @@ msgstr "Nó Animation" #: scene/3d/audio_stream_player_3d.cpp msgid "Unit dB" -msgstr "" +msgstr "Unidade dB" #: scene/3d/audio_stream_player_3d.cpp msgid "Unit Size" -msgstr "" +msgstr "Tamanho da Unidade" #: scene/3d/audio_stream_player_3d.cpp msgid "Max dB" -msgstr "" +msgstr "Max dB" #: scene/3d/audio_stream_player_3d.cpp msgid "Out Of Range Mode" msgstr "" #: scene/3d/audio_stream_player_3d.cpp -#, fuzzy msgid "Emission Angle" -msgstr "Cores de Emissão" +msgstr "Ângulo de Emissão" #: scene/3d/audio_stream_player_3d.cpp msgid "Degrees" @@ -22185,7 +21707,7 @@ msgstr "Animação" #: scene/3d/audio_stream_player_3d.cpp msgid "Attenuation Filter" -msgstr "" +msgstr "Filtro de Atenuação" #: scene/3d/audio_stream_player_3d.cpp #: servers/audio/effects/audio_effect_chorus.cpp @@ -22195,14 +21717,12 @@ msgstr "" #: scene/3d/audio_stream_player_3d.cpp #: servers/audio/effects/audio_effect_filter.cpp -#, fuzzy msgid "dB" -msgstr "B" +msgstr "dB" #: scene/3d/audio_stream_player_3d.cpp -#, fuzzy msgid "Doppler" -msgstr "Ativar Doppler" +msgstr "Doppler" #: scene/3d/audio_stream_player_3d.cpp #, fuzzy @@ -22212,7 +21732,7 @@ msgstr "Empacotamento" #: scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp #: scene/3d/reflection_probe.cpp msgid "Interior" -msgstr "" +msgstr "Interior" #: scene/3d/baked_lightmap.cpp msgid "Finding meshes and lights" @@ -22247,7 +21767,7 @@ msgstr "Bugigangas" #: scene/3d/baked_lightmap.cpp msgid "Tweaks" -msgstr "" +msgstr "Ajustes" #: scene/3d/baked_lightmap.cpp msgid "Bounces" @@ -22258,18 +21778,16 @@ msgid "Bounce Indirect Energy" msgstr "" #: scene/3d/baked_lightmap.cpp -#, fuzzy msgid "Use Denoiser" -msgstr "Filtro:" +msgstr "Usar Redutor de RuÃdo" #: scene/3d/baked_lightmap.cpp scene/resources/texture.cpp msgid "Use HDR" -msgstr "" +msgstr "Usar HDR" #: scene/3d/baked_lightmap.cpp -#, fuzzy msgid "Use Color" -msgstr "Cores" +msgstr "Usar Cor" #: scene/3d/baked_lightmap.cpp #, fuzzy @@ -22277,38 +21795,32 @@ msgid "Default Texels Per Unit" msgstr "Tema Predefinido" #: scene/3d/baked_lightmap.cpp scene/resources/texture.cpp -#, fuzzy msgid "Atlas" -msgstr "Novo Atlas" +msgstr "Atlas" #: scene/3d/baked_lightmap.cpp -#, fuzzy msgid "Generate" -msgstr "Geral" +msgstr "Gerar" #: scene/3d/baked_lightmap.cpp -#, fuzzy msgid "Max Size" -msgstr "Tamanho:" +msgstr "Tamanho Máximo" #: scene/3d/baked_lightmap.cpp -#, fuzzy msgid "Custom Sky" -msgstr "CustomNode" +msgstr "Céu Personalizado" #: scene/3d/baked_lightmap.cpp msgid "Custom Sky Rotation Degrees" msgstr "Graus de Rotação do Céu Personalizado" #: scene/3d/baked_lightmap.cpp scene/3d/ray_cast.cpp -#, fuzzy msgid "Custom Color" -msgstr "CustomNode" +msgstr "Cor Personalizada" #: scene/3d/baked_lightmap.cpp -#, fuzzy msgid "Custom Energy" -msgstr "Mover Efeito de Barramento" +msgstr "Energia Personalizada" #: scene/3d/baked_lightmap.cpp #, fuzzy @@ -22322,7 +21834,7 @@ msgstr "Navegação" #: scene/3d/baked_lightmap.cpp msgid "Image Path" -msgstr "" +msgstr "Caminho da Imagem" #: scene/3d/baked_lightmap.cpp #, fuzzy @@ -22330,13 +21842,12 @@ msgid "Light Data" msgstr "Com Dados" #: scene/3d/bone_attachment.cpp scene/3d/physics_body.cpp -#, fuzzy msgid "Bone Name" -msgstr "Nome do Nó:" +msgstr "Nome do Osso" #: scene/3d/camera.cpp msgid "Keep Aspect" -msgstr "" +msgstr "Manter Aspeto" #: scene/3d/camera.cpp scene/3d/light.cpp scene/3d/reflection_probe.cpp msgid "Cull Mask" @@ -22348,18 +21859,16 @@ msgid "Doppler Tracking" msgstr "Pista de Propriedades" #: scene/3d/camera.cpp -#, fuzzy msgid "Projection" -msgstr "Projeto" +msgstr "Projeção" #: scene/3d/camera.cpp msgid "FOV" -msgstr "" +msgstr "FOV" #: scene/3d/camera.cpp -#, fuzzy msgid "Frustum Offset" -msgstr "Compensação da grelha:" +msgstr "Deslocamento do Frustum" #: scene/3d/camera.cpp #, fuzzy @@ -22368,16 +21877,15 @@ msgstr "Mais próximo" #: scene/3d/camera.cpp msgid "Far" -msgstr "" +msgstr "Longe" #: scene/3d/camera.cpp scene/3d/collision_polygon.cpp scene/3d/spring_arm.cpp #: scene/gui/control.cpp scene/resources/default_theme/default_theme.cpp #: scene/resources/shape.cpp scene/resources/style_box.cpp #: scene/resources/texture.cpp servers/physics_2d_server.cpp #: servers/physics_server.cpp -#, fuzzy msgid "Margin" -msgstr "Definir Margem" +msgstr "Margem" #: scene/3d/camera.cpp #, fuzzy @@ -22486,28 +21994,24 @@ msgid "Ring Axis" msgstr "Avisos" #: scene/3d/cpu_particles.cpp scene/resources/particles_material.cpp -#, fuzzy msgid "Rotate Y" -msgstr "Rodar" +msgstr "Rotacionar em Y" #: scene/3d/cpu_particles.cpp scene/resources/particles_material.cpp -#, fuzzy msgid "Disable Z" -msgstr "Item Desativado" +msgstr "Desativar Z" #: scene/3d/cpu_particles.cpp scene/resources/particles_material.cpp msgid "Flatness" msgstr "" #: scene/3d/cull_instance.cpp servers/visual_server.cpp -#, fuzzy msgid "Portals" -msgstr "Inverter Portais" +msgstr "Portais" #: scene/3d/cull_instance.cpp -#, fuzzy msgid "Portal Mode" -msgstr "Modo Prioridade" +msgstr "Modo Portal" #: scene/3d/cull_instance.cpp msgid "Include In Bound" @@ -22515,7 +22019,7 @@ msgstr "" #: scene/3d/cull_instance.cpp msgid "Allow Merging" -msgstr "" +msgstr "Permitir Junção" #: scene/3d/cull_instance.cpp #, fuzzy @@ -22553,9 +22057,8 @@ msgid "Subdiv" msgstr "" #: scene/3d/gi_probe.cpp -#, fuzzy msgid "Dynamic Range" -msgstr "Biblioteca Dinâmica" +msgstr "Alcance Dinâmico" #: scene/3d/gi_probe.cpp scene/3d/light.cpp msgid "Normal Bias" @@ -22563,9 +22066,8 @@ msgstr "" #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp #: scene/resources/primitive_meshes.cpp -#, fuzzy msgid "Pixel Size" -msgstr "Ajuste de Pixel" +msgstr "Tamanho de Pixel" #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp msgid "Billboard" @@ -22585,9 +22087,8 @@ msgid "No Depth Test" msgstr "" #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp scene/resources/material.cpp -#, fuzzy msgid "Fixed Size" -msgstr "Vista de Frente" +msgstr "Tamanho Fixo" #: scene/3d/label_3d.cpp scene/3d/sprite_3d.cpp msgid "Alpha Cut" @@ -22614,19 +22115,16 @@ msgstr "Forçar modulação branca" #: scene/3d/label_3d.cpp scene/resources/default_theme/default_theme.cpp #: scene/resources/dynamic_font.cpp scene/resources/primitive_meshes.cpp -#, fuzzy msgid "Font" -msgstr "Fontes" +msgstr "Fonte" #: scene/3d/label_3d.cpp scene/resources/primitive_meshes.cpp -#, fuzzy msgid "Horizontal Alignment" -msgstr "Horizontal:" +msgstr "Alinhamento Horizontal" #: scene/3d/label_3d.cpp -#, fuzzy msgid "Vertical Alignment" -msgstr "Filtrar sinais" +msgstr "Alinhamento Vertical" #: scene/3d/label_3d.cpp scene/gui/dialogs.cpp scene/gui/label.cpp #, fuzzy @@ -22634,14 +22132,12 @@ msgid "Autowrap" msgstr "Carregamento automático" #: scene/3d/light.cpp -#, fuzzy msgid "Indirect Energy" -msgstr "Cores de Emissão" +msgstr "Energia Indireta" #: scene/3d/light.cpp -#, fuzzy msgid "Negative" -msgstr "GDNative" +msgstr "Negativo" #: scene/3d/light.cpp scene/resources/material.cpp #: scene/resources/visual_shader.cpp @@ -22655,9 +22151,8 @@ msgid "Bake Mode" msgstr "Modo Bitmask" #: scene/3d/light.cpp -#, fuzzy msgid "Contact" -msgstr "Escolher cor" +msgstr "Contato" #: scene/3d/light.cpp #, fuzzy @@ -22665,29 +22160,24 @@ msgid "Reverse Cull Face" msgstr "Repor Volume do Barramento" #: scene/3d/light.cpp servers/visual_server.cpp -#, fuzzy msgid "Directional Shadow" -msgstr "Direções" +msgstr "Sombra Direcional" #: scene/3d/light.cpp -#, fuzzy msgid "Split 1" -msgstr "Separar" +msgstr "Dividir 1" #: scene/3d/light.cpp -#, fuzzy msgid "Split 2" -msgstr "Separar" +msgstr "Dividir 2" #: scene/3d/light.cpp -#, fuzzy msgid "Split 3" -msgstr "Separar" +msgstr "Dividir 3" #: scene/3d/light.cpp -#, fuzzy msgid "Blend Splits" -msgstr "Tempos de Mistura:" +msgstr "Divisões de Mistura" #: scene/3d/light.cpp #, fuzzy @@ -22695,9 +22185,8 @@ msgid "Bias Split Scale" msgstr "Usar Ajuste de Escala" #: scene/3d/light.cpp -#, fuzzy msgid "Depth Range" -msgstr "Profundidade" +msgstr "Alcance de Profundidade" #: scene/3d/light.cpp msgid "Omni" @@ -22719,12 +22208,11 @@ msgstr "Uma SpotLight com ângulo superior a 90 graus não cria sombras." #: scene/3d/light.cpp msgid "Spot" -msgstr "" +msgstr "Ponto" #: scene/3d/light.cpp -#, fuzzy msgid "Angle Attenuation" -msgstr "Animação" +msgstr "Atenuação Angular" #: scene/3d/mesh_instance.cpp msgid "Software Skinning" @@ -22740,6 +22228,8 @@ msgid "" "be removed in a future version. Use 'NavigationServer.map_get_path()' " "instead." msgstr "" +"O nó 'Navigation' e 'Navigation.get_simple_path()' estão depreciados e serão " +"removidos em versões futuras. Use 'NavigationServer.map_get_path()' no lugar." #: scene/3d/navigation.cpp scene/resources/curve.cpp #, fuzzy @@ -22756,9 +22246,8 @@ msgid "Agent Height Offset" msgstr "" #: scene/3d/navigation_agent.cpp -#, fuzzy msgid "Ignore Y" -msgstr "[Ignorar]" +msgstr "Ignorar Y" #: scene/3d/navigation_agent.cpp #, fuzzy @@ -22767,9 +22256,8 @@ msgid "" msgstr "O NavigationAgent pode ser apenas usado dentro de um nó espacial." #: scene/3d/navigation_mesh_instance.cpp scene/resources/mesh_library.cpp -#, fuzzy msgid "NavMesh" -msgstr "Consolidar NavMesh" +msgstr "NavMesh" #: scene/3d/navigation_obstacle.cpp #, fuzzy @@ -22827,19 +22315,16 @@ msgstr "" "definido como \"Billboard Particles\"." #: scene/3d/particles.cpp -#, fuzzy msgid "Visibility AABB" -msgstr "Alternar visibilidade" +msgstr "Visibilidade AABB" #: scene/3d/particles.cpp -#, fuzzy msgid "Draw Passes" -msgstr "Chamadas de Desenho:" +msgstr "Passos de Desenho" #: scene/3d/particles.cpp -#, fuzzy msgid "Passes" -msgstr "Chamadas de Desenho:" +msgstr "Passos" #: scene/3d/path.cpp msgid "PathFollow only works when set as a child of a Path node." @@ -22854,9 +22339,8 @@ msgstr "" "Curva do Caminho do seu progenitor." #: scene/3d/path.cpp -#, fuzzy msgid "Rotation Mode" -msgstr "Modo Rodar" +msgstr "Modo de Rotação" #: scene/3d/physics_body.cpp msgid "" @@ -22874,46 +22358,40 @@ msgid "Axis Lock" msgstr "Eixo" #: scene/3d/physics_body.cpp -#, fuzzy msgid "Linear X" -msgstr "Linear" +msgstr "X Linear" #: scene/3d/physics_body.cpp -#, fuzzy msgid "Linear Y" -msgstr "Linear" +msgstr "Y Linear" #: scene/3d/physics_body.cpp -#, fuzzy msgid "Linear Z" -msgstr "Linear" +msgstr "Z Linear" #: scene/3d/physics_body.cpp msgid "Angular X" -msgstr "" +msgstr "X Angular" #: scene/3d/physics_body.cpp msgid "Angular Y" -msgstr "" +msgstr "Y Angular" #: scene/3d/physics_body.cpp msgid "Angular Z" -msgstr "" +msgstr "Z Angular" #: scene/3d/physics_body.cpp -#, fuzzy msgid "Motion X" -msgstr "Ação" +msgstr "Movimento X" #: scene/3d/physics_body.cpp -#, fuzzy msgid "Motion Y" -msgstr "Ação" +msgstr "Movimento Y" #: scene/3d/physics_body.cpp -#, fuzzy msgid "Motion Z" -msgstr "Ação" +msgstr "Movimento Z" #: scene/3d/physics_body.cpp #, fuzzy @@ -22935,14 +22413,12 @@ msgstr "" #: scene/3d/physics_body.cpp scene/3d/physics_joint.cpp #: scene/3d/vehicle_body.cpp -#, fuzzy msgid "Relaxation" -msgstr "Separação:" +msgstr "Relaxamento" #: scene/3d/physics_body.cpp -#, fuzzy msgid "Angular Limit Enabled" -msgstr "Filtrar sinais" +msgstr "Limite Angular Ativado" #: scene/3d/physics_body.cpp #, fuzzy @@ -23006,20 +22482,19 @@ msgstr "Animação" #: scene/3d/physics_body.cpp msgid "X" -msgstr "" +msgstr "X" #: scene/3d/physics_body.cpp msgid "Y" -msgstr "" +msgstr "Y" #: scene/3d/physics_body.cpp msgid "Z" -msgstr "" +msgstr "Z" #: scene/3d/physics_body.cpp -#, fuzzy msgid "Linear Limit Enabled" -msgstr "Linear" +msgstr "Limite Linear Ativado" #: scene/3d/physics_body.cpp #, fuzzy @@ -23037,9 +22512,8 @@ msgid "Linear Spring Damping" msgstr "Linear" #: scene/3d/physics_body.cpp -#, fuzzy msgid "Linear Equilibrium Point" -msgstr "Linear" +msgstr "Ponto de EquilÃbrio Linear" #: scene/3d/physics_body.cpp #, fuzzy @@ -23063,7 +22537,7 @@ msgstr "Animação" #: scene/3d/physics_body.cpp scene/3d/physics_joint.cpp msgid "ERP" -msgstr "" +msgstr "ERP" #: scene/3d/physics_body.cpp #, fuzzy @@ -23080,12 +22554,11 @@ msgstr "" #: scene/3d/physics_body.cpp msgid "Angular Equilibrium Point" -msgstr "" +msgstr "Ponto de EquilÃbrio Angular" #: scene/3d/physics_body.cpp -#, fuzzy msgid "Body Offset" -msgstr "Compensação:" +msgstr "Deslocamento do Corpo" #: scene/3d/physics_joint.cpp msgid "Node A and Node B must be PhysicsBodies" @@ -23112,18 +22585,16 @@ msgid "Solver" msgstr "" #: scene/3d/physics_joint.cpp -#, fuzzy msgid "Exclude Nodes" -msgstr "Apagar Nós" +msgstr "Excluir Nós" #: scene/3d/physics_joint.cpp -#, fuzzy msgid "Params" -msgstr "Parâmetro Alterado:" +msgstr "Parâmetros" #: scene/3d/physics_joint.cpp msgid "Angular Limit" -msgstr "" +msgstr "Limite Angular" #: scene/3d/physics_joint.cpp #, fuzzy @@ -23145,24 +22616,20 @@ msgid "Target Velocity" msgstr "Vista Órbita Direita" #: scene/3d/physics_joint.cpp -#, fuzzy msgid "Max Impulse" -msgstr "Velocidade:" +msgstr "Impulso Máximo" #: scene/3d/physics_joint.cpp -#, fuzzy msgid "Linear Limit" -msgstr "Linear" +msgstr "Limite Linear" #: scene/3d/physics_joint.cpp -#, fuzzy msgid "Upper Distance" -msgstr "Distância de escolha:" +msgstr "Distância mais Alta" #: scene/3d/physics_joint.cpp -#, fuzzy msgid "Lower Distance" -msgstr "Distância de escolha:" +msgstr "Distância mais Baixa" #: scene/3d/physics_joint.cpp #, fuzzy @@ -23195,9 +22662,8 @@ msgid "Angular Motion" msgstr "Animação" #: scene/3d/physics_joint.cpp -#, fuzzy msgid "Angular Ortho" -msgstr "Máximo de Erros Angulares:" +msgstr "Orto Angular" #: scene/3d/physics_joint.cpp #, fuzzy @@ -23210,9 +22676,8 @@ msgid "Linear Motor X" msgstr "Inicializar" #: scene/3d/physics_joint.cpp -#, fuzzy msgid "Force Limit" -msgstr "Chamadas de Desenho:" +msgstr "Limite de Força" #: scene/3d/physics_joint.cpp #, fuzzy @@ -23221,7 +22686,7 @@ msgstr "Linear" #: scene/3d/physics_joint.cpp msgid "Equilibrium Point" -msgstr "" +msgstr "Ponto de EquilÃbrio" #: scene/3d/physics_joint.cpp msgid "Angular Limit X" @@ -23310,9 +22775,8 @@ msgid "Two Way" msgstr "" #: scene/3d/portal.cpp -#, fuzzy msgid "Linked Room" -msgstr "Raiz de Edição ao Vivo:" +msgstr "Sala Vinculada" #: scene/3d/portal.cpp #, fuzzy @@ -23320,18 +22784,16 @@ msgid "Use Default Margin" msgstr "Predefinição" #: scene/3d/proximity_group.cpp -#, fuzzy msgid "Group Name" -msgstr "Agrupado" +msgstr "Nome do Grupo" #: scene/3d/proximity_group.cpp msgid "Dispatch Mode" msgstr "" #: scene/3d/proximity_group.cpp -#, fuzzy msgid "Grid Radius" -msgstr "Raio:" +msgstr "Raio da Grade" #: scene/3d/ray_cast.cpp #, fuzzy @@ -23340,7 +22802,7 @@ msgstr "Depurador" #: scene/3d/ray_cast.cpp scene/resources/style_box.cpp msgid "Thickness" -msgstr "" +msgstr "Espessura" #: scene/3d/reflection_probe.cpp scene/main/viewport.cpp #, fuzzy @@ -23348,9 +22810,8 @@ msgid "Update Mode" msgstr "Modo Rodar" #: scene/3d/reflection_probe.cpp -#, fuzzy msgid "Origin Offset" -msgstr "Compensação da grelha:" +msgstr "Deslocamento da Origem" #: scene/3d/reflection_probe.cpp #, fuzzy @@ -23358,19 +22819,16 @@ msgid "Box Projection" msgstr "Projeto" #: scene/3d/reflection_probe.cpp -#, fuzzy msgid "Enable Shadows" -msgstr "Ativar Ajuste" +msgstr "Ativar Sombras" #: scene/3d/reflection_probe.cpp -#, fuzzy msgid "Ambient Color" -msgstr "Escolher cor" +msgstr "Cor Ambiente" #: scene/3d/reflection_probe.cpp -#, fuzzy msgid "Ambient Energy" -msgstr "Cores de Emissão" +msgstr "Energia Ambiente" #: scene/3d/reflection_probe.cpp #, fuzzy @@ -23448,38 +22906,34 @@ msgstr "Só deve existir um RoomManager na SceneTree." #: scene/3d/room_manager.cpp msgid "Main" -msgstr "" +msgstr "Principal" #: scene/3d/room_manager.cpp scene/animation/animation_blend_tree.cpp #: scene/animation/animation_player.cpp scene/animation/animation_tree.cpp #: scene/animation/animation_tree_player.cpp #: servers/audio/effects/audio_effect_delay.cpp -#, fuzzy msgid "Active" -msgstr "Ação" +msgstr "Ativo" #: scene/3d/room_manager.cpp msgid "Roomlist" msgstr "" #: scene/3d/room_manager.cpp servers/visual_server.cpp -#, fuzzy msgid "PVS" -msgstr "FPS" +msgstr "PVS" #: scene/3d/room_manager.cpp -#, fuzzy msgid "PVS Mode" -msgstr "Modo deslocamento" +msgstr "Modo PVS" #: scene/3d/room_manager.cpp -#, fuzzy msgid "PVS Filename" -msgstr "Ficheiro ZIP" +msgstr "Nome do Ficheiro PVS" #: scene/3d/room_manager.cpp servers/visual_server.cpp msgid "Gameplay" -msgstr "" +msgstr "Jogabilidade" #: scene/3d/room_manager.cpp #, fuzzy @@ -23487,19 +22941,16 @@ msgid "Gameplay Monitor" msgstr "Monitor" #: scene/3d/room_manager.cpp -#, fuzzy msgid "Use Secondary PVS" -msgstr "Usar Ajuste de Escala" +msgstr "Usar PVS Secundário" #: scene/3d/room_manager.cpp -#, fuzzy msgid "Merge Meshes" -msgstr "Malha" +msgstr "Mesclar Malhas" #: scene/3d/room_manager.cpp -#, fuzzy msgid "Show Margins" -msgstr "Mostrar Origem" +msgstr "Mostrar Margens" #: scene/3d/room_manager.cpp #, fuzzy @@ -23511,18 +22962,16 @@ msgid "Overlap Warning Threshold" msgstr "" #: scene/3d/room_manager.cpp -#, fuzzy msgid "Preview Camera" -msgstr "Pré-visualização" +msgstr "Visualizar Câmara" #: scene/3d/room_manager.cpp msgid "Portal Depth Limit" msgstr "" #: scene/3d/room_manager.cpp -#, fuzzy msgid "Default Portal Margin" -msgstr "Definir Margem" +msgstr "Margem Padrão de Portal" #: scene/3d/room_manager.cpp #, fuzzy @@ -23607,9 +23056,8 @@ msgid "Spatial Attachment Path" msgstr "" #: scene/3d/soft_body.cpp -#, fuzzy msgid "Physics Enabled" -msgstr "Frame de FÃsica %" +msgstr "FÃsica Ativada" #: scene/3d/soft_body.cpp #, fuzzy @@ -23621,9 +23069,8 @@ msgid "Simulation Precision" msgstr "Precisão da Simulação" #: scene/3d/soft_body.cpp -#, fuzzy msgid "Total Mass" -msgstr "Total:" +msgstr "Massa Total" #: scene/3d/soft_body.cpp msgid "Linear Stiffness" @@ -23639,7 +23086,7 @@ msgstr "" #: scene/3d/soft_body.cpp msgid "Pressure Coefficient" -msgstr "" +msgstr "Coeficiente de Pressão" #: scene/3d/soft_body.cpp msgid "Damping Coefficient" @@ -23668,18 +23115,16 @@ msgstr "" "Em vez disso, mude o tamanho das formas de colisão filhas." #: scene/3d/spatial.cpp -#, fuzzy msgid "Global Translation" -msgstr "Manter Transformação Global" +msgstr "Transformação Global" #: scene/3d/spatial.cpp msgid "Matrix" -msgstr "" +msgstr "Matriz" #: scene/3d/spatial.cpp -#, fuzzy msgid "Gizmo" -msgstr "Bugigangas" +msgstr "Gizmo" #: scene/3d/spatial_velocity_tracker.cpp #, fuzzy @@ -23692,12 +23137,11 @@ msgstr "" #: scene/3d/sprite_3d.cpp scene/gui/graph_edit.cpp msgid "Opacity" -msgstr "" +msgstr "Opacidade" #: scene/3d/sprite_3d.cpp scene/resources/material.cpp -#, fuzzy msgid "Transparent" -msgstr "Transpor" +msgstr "Transparente" #: scene/3d/sprite_3d.cpp msgid "" @@ -23721,13 +23165,12 @@ msgid "Per-Wheel Motion" msgstr "Botão roda para baixo" #: scene/3d/vehicle_body.cpp -#, fuzzy msgid "Engine Force" -msgstr "Documentação Online" +msgstr "Força do Motor" #: scene/3d/vehicle_body.cpp msgid "Brake" -msgstr "" +msgstr "Freio" #: scene/3d/vehicle_body.cpp msgid "Steering" @@ -23738,9 +23181,8 @@ msgid "VehicleBody Motion" msgstr "" #: scene/3d/vehicle_body.cpp -#, fuzzy msgid "Use As Traction" -msgstr "Separação:" +msgstr "Usar Como Tração" #: scene/3d/vehicle_body.cpp msgid "Use As Steering" @@ -23760,9 +23202,8 @@ msgid "Friction Slip" msgstr "Função" #: scene/3d/vehicle_body.cpp -#, fuzzy msgid "Suspension" -msgstr "Expressão" +msgstr "Suspensão" #: scene/3d/vehicle_body.cpp #, fuzzy @@ -23771,12 +23212,21 @@ msgstr "Erro" #: scene/3d/visibility_notifier.cpp msgid "AABB" -msgstr "" +msgstr "AABB" -#: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Ordenar" + +#: scene/3d/visual_instance.cpp #, fuzzy +msgid "Use AABB Center" +msgstr "Usar Ambiente" + +#: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" -msgstr "Repetir" +msgstr "Geometria" #: scene/3d/visual_instance.cpp #, fuzzy @@ -23784,9 +23234,8 @@ msgid "Material Override" msgstr "Sobrepõe" #: scene/3d/visual_instance.cpp -#, fuzzy msgid "Material Overlay" -msgstr "Mudanças de Material:" +msgstr "Sobreposição do Material" #: scene/3d/visual_instance.cpp #, fuzzy @@ -23794,9 +23243,8 @@ msgid "Cast Shadow" msgstr "Criar Nó Shader" #: scene/3d/visual_instance.cpp -#, fuzzy msgid "Extra Cull Margin" -msgstr "Argumentos de chamada extra:" +msgstr "Margem de Descarte Extra" #: scene/3d/visual_instance.cpp #, fuzzy @@ -23814,13 +23262,12 @@ msgstr "" #: scene/3d/visual_instance.cpp msgid "LOD" -msgstr "" +msgstr "LOD (NÃvel de Detalhe)" #: scene/3d/visual_instance.cpp scene/animation/skeleton_ik.cpp #: scene/resources/material.cpp -#, fuzzy msgid "Min Distance" -msgstr "Distância de escolha:" +msgstr "Distância MÃnima" #: scene/3d/visual_instance.cpp msgid "Min Hysteresis" @@ -23867,33 +23314,28 @@ msgid "Mix Mode" msgstr "Nó Mix" #: scene/animation/animation_blend_tree.cpp -#, fuzzy msgid "Fadein Time" -msgstr "Tempo X-Fade (s):" +msgstr "Tempo de Esmaecer de Entrada" #: scene/animation/animation_blend_tree.cpp -#, fuzzy msgid "Fadeout Time" -msgstr "Tempo X-Fade (s):" +msgstr "Tempo de Esmaecer de SaÃda" #: scene/animation/animation_blend_tree.cpp -#, fuzzy msgid "Auto Restart" -msgstr "ReinÃcio automático:" +msgstr "ReinÃcio Automático" #: scene/animation/animation_blend_tree.cpp -#, fuzzy msgid "Autorestart" -msgstr "ReinÃcio automático:" +msgstr "ReinÃcio Automático" #: scene/animation/animation_blend_tree.cpp msgid "Delay" -msgstr "" +msgstr "Atraso" #: scene/animation/animation_blend_tree.cpp -#, fuzzy msgid "Random Delay" -msgstr "Inclinação aleatória:" +msgstr "Atraso Aleatório" #: scene/animation/animation_blend_tree.cpp #, fuzzy @@ -23917,9 +23359,8 @@ msgstr "Adicionar Porta de Entrada" #: scene/animation/animation_blend_tree.cpp #: scene/animation/animation_node_state_machine.cpp -#, fuzzy msgid "Xfade Time" -msgstr "Tempo X-Fade (s):" +msgstr "Tempo do Esmaecer Cruzado" #: scene/animation/animation_node_state_machine.cpp #, fuzzy @@ -23952,7 +23393,7 @@ msgstr "Adicionar Animação" #: scene/animation/animation_player.cpp msgid "Reset On Save" -msgstr "" +msgstr "Redefinir ao Gravar" #: scene/animation/animation_player.cpp #, fuzzy @@ -23965,9 +23406,8 @@ msgid "Current Animation Position" msgstr "Adicionar Ponto Animação" #: scene/animation/animation_player.cpp -#, fuzzy msgid "Playback Options" -msgstr "Opções da Classe:" +msgstr "Opções de Playback" #: scene/animation/animation_player.cpp #, fuzzy @@ -24009,9 +23449,8 @@ msgid "The AnimationPlayer root node is not a valid node." msgstr "O nó raiz de AnimationPlayer não é um nó válido." #: scene/animation/animation_tree.cpp -#, fuzzy msgid "Tree Root" -msgstr "Criar Nó Raiz:" +msgstr "Nó Raiz" #: scene/animation/animation_tree.cpp #, fuzzy @@ -24067,9 +23506,8 @@ msgid "Tip Bone" msgstr "Ossos" #: scene/animation/skeleton_ik.cpp -#, fuzzy msgid "Interpolation" -msgstr "Modo de Interpolação" +msgstr "Interpolação" #: scene/animation/skeleton_ik.cpp #, fuzzy @@ -24122,7 +23560,7 @@ msgstr "Modo Seleção" #: scene/gui/aspect_ratio_container.cpp scene/gui/box_container.cpp msgid "Alignment" -msgstr "" +msgstr "Alinhamento" #: scene/gui/base_button.cpp #, fuzzy @@ -24160,11 +23598,11 @@ msgstr "Copiar Texto" #: scene/gui/button.cpp scene/gui/label.cpp scene/gui/line_edit.cpp #: scene/gui/spin_box.cpp msgid "Align" -msgstr "" +msgstr "Alinhar" #: scene/gui/button.cpp msgid "Icon Align" -msgstr "" +msgstr "Alinhamento do Ãcone" #: scene/gui/button.cpp #, fuzzy @@ -24268,14 +23706,12 @@ msgid "Grow Direction" msgstr "Direções" #: scene/gui/control.cpp scene/resources/navigation_mesh.cpp -#, fuzzy msgid "Min Size" -msgstr "Tamanho do contorno:" +msgstr "Tamanho MÃnimo" #: scene/gui/control.cpp -#, fuzzy msgid "Pivot Offset" -msgstr "Compensação da grelha:" +msgstr "Deslocamento do Pivô" #: scene/gui/control.cpp #, fuzzy @@ -24323,7 +23759,7 @@ msgstr "Anterior" #: scene/gui/control.cpp msgid "Mouse" -msgstr "" +msgstr "Mouse" #: scene/gui/control.cpp msgid "Default Cursor Shape" @@ -24349,7 +23785,7 @@ msgstr "Propriedades do Tema" #: scene/gui/dialogs.cpp msgid "Window Title" -msgstr "" +msgstr "TÃtulo da Janela" #: scene/gui/dialogs.cpp #, fuzzy @@ -24383,14 +23819,12 @@ msgid "Right Disconnects" msgstr "Desligar" #: scene/gui/graph_edit.cpp -#, fuzzy msgid "Scroll Offset" -msgstr "Compensação da grelha:" +msgstr "Deslocamento da Rolagem" #: scene/gui/graph_edit.cpp -#, fuzzy msgid "Snap Distance" -msgstr "Distância de escolha:" +msgstr "Distância de Encaixe" #: scene/gui/graph_edit.cpp #, fuzzy @@ -24415,7 +23849,7 @@ msgstr "Mostrar ossos" #: scene/gui/graph_edit.cpp scene/gui/text_edit.cpp #: scene/resources/default_theme/default_theme.cpp msgid "Minimap" -msgstr "" +msgstr "Mini-Mapa" #: scene/gui/graph_edit.cpp msgid "Enable grid minimap." @@ -24488,9 +23922,8 @@ msgid "Fixed Column Width" msgstr "" #: scene/gui/item_list.cpp -#, fuzzy msgid "Icon Scale" -msgstr "Escala aleatória:" +msgstr "Escala de Ãcone" #: scene/gui/item_list.cpp #, fuzzy @@ -24503,9 +23936,8 @@ msgid "V Align" msgstr "Atribuir" #: scene/gui/label.cpp scene/gui/rich_text_label.cpp -#, fuzzy msgid "Visible Characters" -msgstr "Caracteres válidos:" +msgstr "Caracteres Visiveis" #: scene/gui/label.cpp scene/gui/rich_text_label.cpp #, fuzzy @@ -24529,9 +23961,8 @@ msgid "Secret" msgstr "" #: scene/gui/line_edit.cpp -#, fuzzy msgid "Secret Character" -msgstr "Caracteres válidos:" +msgstr "Caracteres Secretos" #: scene/gui/line_edit.cpp msgid "Expand To Text Length" @@ -24584,24 +24015,23 @@ msgstr "Carregar como marcador de posição" #: scene/gui/line_edit.cpp msgid "Alpha" -msgstr "" +msgstr "Alfa" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Caret" -msgstr "" +msgstr "Circunflexo" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Blink" -msgstr "" +msgstr "Piscar" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp -#, fuzzy msgid "Blink Speed" -msgstr "Velocidade:" +msgstr "Velocidade de Piscar" #: scene/gui/link_button.cpp msgid "Underline" -msgstr "" +msgstr "Sublinhado" #: scene/gui/menu_button.cpp #, fuzzy @@ -24683,9 +24113,8 @@ msgid "Allow Search" msgstr "Procurar" #: scene/gui/progress_bar.cpp -#, fuzzy msgid "Percent" -msgstr "Recente:" +msgstr "Percentagem" #: scene/gui/range.cpp msgid "If \"Exp Edit\" is enabled, \"Min Value\" must be greater than 0." @@ -24744,9 +24173,8 @@ msgid "Absolute Index" msgstr "Indentação Automática" #: scene/gui/rich_text_effect.cpp -#, fuzzy msgid "Elapsed Time" -msgstr "Tempos de Mistura:" +msgstr "Tempo Decorrido" #: scene/gui/rich_text_effect.cpp #, fuzzy @@ -24754,9 +24182,8 @@ msgid "Env" msgstr "Fim" #: scene/gui/rich_text_effect.cpp -#, fuzzy msgid "Character" -msgstr "Caracteres válidos:" +msgstr "Caractere" #: scene/gui/rich_text_label.cpp msgid "BBCode" @@ -24767,9 +24194,8 @@ msgid "Meta Underlined" msgstr "" #: scene/gui/rich_text_label.cpp -#, fuzzy msgid "Tab Size" -msgstr "Tamanho:" +msgstr "Tamanho da Tabulação" #: scene/gui/rich_text_label.cpp #, fuzzy @@ -24790,9 +24216,8 @@ msgid "Selection Enabled" msgstr "Apenas seleção" #: scene/gui/rich_text_label.cpp scene/gui/text_edit.cpp -#, fuzzy msgid "Override Selected Font Color" -msgstr "Configurar Perfil Selecionado:" +msgstr "Sobrescrever Cor da Fonte Selecionada" #: scene/gui/rich_text_label.cpp #, fuzzy @@ -24820,9 +24245,8 @@ msgid "Follow Focus" msgstr "Povoar superfÃcie" #: scene/gui/scroll_container.cpp -#, fuzzy msgid "Horizontal Enabled" -msgstr "Horizontal:" +msgstr "Horizontal Ativado" #: scene/gui/scroll_container.cpp #, fuzzy @@ -24843,24 +24267,20 @@ msgid "Tick Count" msgstr "Escolher cor" #: scene/gui/slider.cpp -#, fuzzy msgid "Ticks On Borders" -msgstr "em ordem:" +msgstr "Pontos Nas Bordas" #: scene/gui/spin_box.cpp -#, fuzzy msgid "Prefix" -msgstr "Prefixo:" +msgstr "Prefixo" #: scene/gui/spin_box.cpp -#, fuzzy msgid "Suffix" -msgstr "Sufixo:" +msgstr "Sufixo" #: scene/gui/split_container.cpp -#, fuzzy msgid "Split Offset" -msgstr "Compensação da grelha:" +msgstr "Deslocamento de Divisão" #: scene/gui/split_container.cpp scene/gui/tree.cpp #, fuzzy @@ -24877,9 +24297,8 @@ msgid "Tab Align" msgstr "" #: scene/gui/tab_container.cpp scene/gui/tabs.cpp -#, fuzzy msgid "Current Tab" -msgstr "Atual:" +msgstr "Guia Atual" #: scene/gui/tab_container.cpp #, fuzzy @@ -24891,9 +24310,8 @@ msgid "All Tabs In Front" msgstr "" #: scene/gui/tab_container.cpp scene/gui/tabs.cpp -#, fuzzy msgid "Drag To Rearrange Enabled" -msgstr "Arrastar e largar para reorganizar." +msgstr "Arrastar Para Reorganizar Ativado" #: scene/gui/tab_container.cpp msgid "Use Hidden Tabs For Min Size" @@ -24922,9 +24340,8 @@ msgid "Breakpoint Gutter" msgstr "Saltar Pontos de Paragem" #: scene/gui/text_edit.cpp -#, fuzzy msgid "Fold Gutter" -msgstr "Pasta:" +msgstr "Espaçamento de Dobra" #: scene/gui/text_edit.cpp #, fuzzy @@ -24942,19 +24359,16 @@ msgid "Wrap Enabled" msgstr "Ativar" #: scene/gui/text_edit.cpp -#, fuzzy msgid "Scroll Vertical" -msgstr "Vertical:" +msgstr "Scroll Vertical" #: scene/gui/text_edit.cpp -#, fuzzy msgid "Scroll Horizontal" -msgstr "Horizontal:" +msgstr "Scroll Horizontal" #: scene/gui/text_edit.cpp -#, fuzzy msgid "Draw" -msgstr "Chamadas de Desenho:" +msgstr "Desenhar" #: scene/gui/text_edit.cpp #, fuzzy @@ -25012,9 +24426,8 @@ msgid "Progress Offset" msgstr "" #: scene/gui/texture_progress.cpp -#, fuzzy msgid "Fill Mode" -msgstr "Modo Jogo:" +msgstr "Modo de Preenchimento" #: scene/gui/texture_progress.cpp scene/resources/material.cpp msgid "Tint" @@ -25030,9 +24443,8 @@ msgid "Initial Angle" msgstr "Inicializar" #: scene/gui/texture_progress.cpp -#, fuzzy msgid "Fill Degrees" -msgstr "A rodar %s graus." +msgstr "Graus de Preenchimento" #: scene/gui/texture_progress.cpp scene/resources/primitive_meshes.cpp #, fuzzy @@ -25083,9 +24495,8 @@ msgid "Hide Folding" msgstr "Desativar Botão" #: scene/gui/tree.cpp -#, fuzzy msgid "Hide Root" -msgstr "Criar Nó Raiz:" +msgstr "Esconder Raiz" #: scene/gui/tree.cpp msgid "Drop Mode Flags" @@ -25098,7 +24509,7 @@ msgstr "Adicionar Pista" #: scene/gui/video_player.cpp scene/main/scene_tree.cpp scene/main/timer.cpp msgid "Paused" -msgstr "" +msgstr "Pausado" #: scene/gui/video_player.cpp #, fuzzy @@ -25139,9 +24550,8 @@ msgid "Max Redirects" msgstr "" #: scene/main/http_request.cpp -#, fuzzy msgid "Timeout" -msgstr "Tempo expirado." +msgstr "Tempo esgotado" #: scene/main/node.cpp msgid "" @@ -25156,7 +24566,7 @@ msgstr "Separador Nomeado" #: scene/main/node.cpp msgid "Name Casing" -msgstr "" +msgstr "Capitalização do Nome" #: scene/main/node.cpp #, fuzzy @@ -25169,9 +24579,8 @@ msgid "Pause Mode" msgstr "Modo deslocamento" #: scene/main/node.cpp -#, fuzzy msgid "Physics Interpolation Mode" -msgstr "Modo de Interpolação" +msgstr "Modo de Interpolação da FÃsica" #: scene/main/node.cpp #, fuzzy @@ -25184,19 +24593,16 @@ msgid "Filename" msgstr "Renomear" #: scene/main/node.cpp -#, fuzzy msgid "Owner" -msgstr "Proprietários de:" +msgstr "Dono" #: scene/main/node.cpp scene/main/scene_tree.cpp -#, fuzzy msgid "Multiplayer" -msgstr "Multiplicar %s" +msgstr "Multijogador" #: scene/main/node.cpp -#, fuzzy msgid "Custom Multiplayer" -msgstr "Definir Múltiplo:" +msgstr "Multijogador Personalizado" #: scene/main/node.cpp #, fuzzy @@ -25229,7 +24635,7 @@ msgstr "Nova Raiz da Cena" #: scene/main/scene_tree.cpp msgid "Root" -msgstr "" +msgstr "Raiz" #: scene/main/scene_tree.cpp #, fuzzy @@ -25239,11 +24645,11 @@ msgstr "Multiplicar %s" #: scene/main/scene_tree.cpp scene/resources/mesh_library.cpp #: scene/resources/shape_2d.cpp msgid "Shapes" -msgstr "" +msgstr "Formas" #: scene/main/scene_tree.cpp msgid "Shape Color" -msgstr "" +msgstr "Cor da Forma" #: scene/main/scene_tree.cpp #, fuzzy @@ -25252,7 +24658,7 @@ msgstr "Escolher cor" #: scene/main/scene_tree.cpp msgid "Geometry Color" -msgstr "" +msgstr "Cor da Geometria" #: scene/main/scene_tree.cpp #, fuzzy @@ -25269,14 +24675,12 @@ msgid "Draw 2D Outlines" msgstr "Criar contorno" #: scene/main/scene_tree.cpp servers/visual_server.cpp -#, fuzzy msgid "Reflections" -msgstr "Direções" +msgstr "Reflexões" #: scene/main/scene_tree.cpp -#, fuzzy msgid "Atlas Size" -msgstr "Tamanho do contorno:" +msgstr "Tamanho do Atlas" #: scene/main/scene_tree.cpp msgid "Atlas Subdiv" @@ -25288,7 +24692,7 @@ msgstr "" #: scene/main/scene_tree.cpp msgid "Use FXAA" -msgstr "" +msgstr "Usar FXAA" #: scene/main/scene_tree.cpp msgid "Use Debanding" @@ -25296,16 +24700,15 @@ msgstr "" #: scene/main/scene_tree.cpp scene/main/viewport.cpp msgid "HDR" -msgstr "" +msgstr "HDR" #: scene/main/scene_tree.cpp scene/main/viewport.cpp msgid "Use 32 BPC Depth" msgstr "" #: scene/main/scene_tree.cpp -#, fuzzy msgid "Default Environment" -msgstr "Ver ambiente" +msgstr "Ambiente Padrão" #: scene/main/scene_tree.cpp msgid "" @@ -25334,9 +24737,8 @@ msgstr "" "para tempos de espera muito baixos." #: scene/main/timer.cpp -#, fuzzy msgid "Autostart" -msgstr "ReinÃcio automático:" +msgstr "InÃcio Automático" #: scene/main/viewport.cpp #, fuzzy @@ -25362,7 +24764,7 @@ msgstr "" #: scene/main/viewport.cpp msgid "ARVR" -msgstr "" +msgstr "ARVR" #: scene/main/viewport.cpp #, fuzzy @@ -25375,16 +24777,15 @@ msgstr "" #: scene/main/viewport.cpp scene/resources/world_2d.cpp msgid "World" -msgstr "" +msgstr "Mundo" #: scene/main/viewport.cpp msgid "World 2D" -msgstr "" +msgstr "Mundo 2D" #: scene/main/viewport.cpp -#, fuzzy msgid "Transparent BG" -msgstr "Transpor" +msgstr "Fundo Transparente" #: scene/main/viewport.cpp #, fuzzy @@ -25393,7 +24794,7 @@ msgstr "Mudar valor de entrada" #: scene/main/viewport.cpp msgid "FXAA" -msgstr "" +msgstr "FXAA" #: scene/main/viewport.cpp #, fuzzy @@ -25412,7 +24813,7 @@ msgstr "Linear Esquerda" #: scene/main/viewport.cpp msgid "Render Direct To Screen" -msgstr "" +msgstr "Renderizar Diretamente ao Ecrã" #: scene/main/viewport.cpp #, fuzzy @@ -25420,9 +24821,8 @@ msgid "Debug Draw" msgstr "Depurar" #: scene/main/viewport.cpp -#, fuzzy msgid "Render Target" -msgstr "Renderizador:" +msgstr "Alvo do Renderizador" #: scene/main/viewport.cpp msgid "V Flip" @@ -25530,7 +24930,7 @@ msgstr "Navegação" #: scene/register_scene_types.cpp msgid "Use hiDPI" -msgstr "" +msgstr "Usar hiDPI" #: scene/register_scene_types.cpp #, fuzzy @@ -25550,12 +24950,11 @@ msgstr "Nó Mix" #: scene/resources/audio_stream_sample.cpp msgid "Stereo" -msgstr "" +msgstr "Stereo" #: scene/resources/concave_polygon_shape_2d.cpp -#, fuzzy msgid "Segments" -msgstr "Argumentos da Cena Principal:" +msgstr "Segmentos" #: scene/resources/curve.cpp #, fuzzy @@ -25568,7 +24967,7 @@ msgstr "" #: scene/resources/default_theme/default_theme.cpp msgid "Panel" -msgstr "" +msgstr "Painel" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -25596,9 +24995,8 @@ msgid "Font Color Disabled" msgstr "Recorte desativado" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "H Separation" -msgstr "Separação:" +msgstr "Separação Horizontal" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -25607,7 +25005,7 @@ msgstr "Loop da Animação" #: scene/resources/default_theme/default_theme.cpp msgid "Arrow" -msgstr "" +msgstr "Seta" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -25686,14 +25084,12 @@ msgid "Font Outline Modulate" msgstr "Forçar modulação branca" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Shadow Offset X" -msgstr "Deslocação X da grelha:" +msgstr "Deslocamento da Sombra em X" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Shadow Offset Y" -msgstr "Deslocação Y da grelha:" +msgstr "Deslocamento da Sombra em Y" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -25751,14 +25147,12 @@ msgid "Space" msgstr "Cena Principal" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Folded" -msgstr "Pasta:" +msgstr "Dobrado" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Fold" -msgstr "Pasta:" +msgstr "Dobrar" #: scene/resources/default_theme/default_theme.cpp msgid "Font Color Readonly" @@ -25922,14 +25316,12 @@ msgid "Font Color Accel" msgstr "Renomear Item Cor" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Font Color Separator" -msgstr "Operador de Cor." +msgstr "Separador de Cor da Fonte" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "V Separation" -msgstr "Separação:" +msgstr "Separação Vertical" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -25982,9 +25374,8 @@ msgid "Close Offset" msgstr "Compensação da grelha:" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Port Offset" -msgstr "Compensação da grelha:" +msgstr "Deslocamento de Porta" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -25998,7 +25389,7 @@ msgstr "Selecionar" #: scene/resources/default_theme/default_theme.cpp msgid "Cursor Unfocused" -msgstr "" +msgstr "Cursor Desfocado" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26094,14 +25485,12 @@ msgid "Draw Guides" msgstr "Mostrar Guias" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Scroll Border" -msgstr "Vertical:" +msgstr "Borda da Barra de Rolagem" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Scroll Speed" -msgstr "Compensação da grelha:" +msgstr "Velocidade de Rolagem" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26109,9 +25498,8 @@ msgid "Icon Margin" msgstr "Definir Margem" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Line Separation" -msgstr "Separação:" +msgstr "Separação de Linha" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26119,9 +25507,8 @@ msgid "Tab FG" msgstr "Aba 1" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Tab BG" -msgstr "Aba 1" +msgstr "BG da Guia" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26130,7 +25517,7 @@ msgstr "Item Desativado" #: scene/resources/default_theme/default_theme.cpp msgid "Menu" -msgstr "" +msgstr "Menu" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26171,9 +25558,8 @@ msgid "Large" msgstr "Alvo" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Folder" -msgstr "Pasta:" +msgstr "Pasta" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26211,9 +25597,8 @@ msgid "Label Width" msgstr "Esquerda Wide" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Screen Picker" -msgstr "Operador Ecrã." +msgstr "Seletor de Ecrã" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26231,9 +25616,8 @@ msgid "Color Sample" msgstr "Cores" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Preset BG" -msgstr "Predefinições" +msgstr "Fundo Predefinido" #: scene/resources/default_theme/default_theme.cpp msgid "Overbright Indicator" @@ -26245,9 +25629,8 @@ msgid "Preset FG" msgstr "Predefinições" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Preset BG Icon" -msgstr "Predefinições" +msgstr "Ãcone de Fundo Predefinido" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26266,7 +25649,7 @@ msgstr "Cena Principal" #: scene/resources/default_theme/default_theme.cpp msgid "Bold Italics Font" -msgstr "" +msgstr "Fonte Negrito Itálica" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26274,14 +25657,12 @@ msgid "Mono Font" msgstr "Cena Principal" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Table H Separation" -msgstr "Separação:" +msgstr "Separação Horizontal da Tabela" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Table V Separation" -msgstr "Separação:" +msgstr "Separação Vertical da Tabela" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26310,11 +25691,11 @@ msgstr "Corte automático" #: scene/resources/default_theme/default_theme.cpp msgid "Minus" -msgstr "" +msgstr "Menos" #: scene/resources/default_theme/default_theme.cpp msgid "More" -msgstr "" +msgstr "Mais" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26374,9 +25755,8 @@ msgid "Font Path" msgstr "Caminho de Foco" #: scene/resources/dynamic_font.cpp -#, fuzzy msgid "Outline Size" -msgstr "Tamanho do contorno:" +msgstr "Tamanho do Contorno" #: scene/resources/dynamic_font.cpp #, fuzzy @@ -26389,14 +25769,12 @@ msgid "Use Mipmaps" msgstr "Sinais" #: scene/resources/dynamic_font.cpp -#, fuzzy msgid "Extra Spacing" -msgstr "Opções Extra:" +msgstr "Espaçamento Extra" #: scene/resources/dynamic_font.cpp -#, fuzzy msgid "Char" -msgstr "Caracteres válidos:" +msgstr "Caractere" #: scene/resources/dynamic_font.cpp #, fuzzy @@ -26405,11 +25783,11 @@ msgstr "Com Dados" #: scene/resources/environment.cpp msgid "Background" -msgstr "" +msgstr "Plano de Fundo" #: scene/resources/environment.cpp scene/resources/sky.cpp msgid "Sky" -msgstr "" +msgstr "Céu" #: scene/resources/environment.cpp #, fuzzy @@ -26422,14 +25800,12 @@ msgid "Sky Orientation" msgstr "Documentação Online" #: scene/resources/environment.cpp -#, fuzzy msgid "Sky Rotation" -msgstr "Passo da rotação:" +msgstr "Rotação do Céu" #: scene/resources/environment.cpp -#, fuzzy msgid "Sky Rotation Degrees" -msgstr "A rodar %s graus." +msgstr "Graus de Rotação do Céu" #: scene/resources/environment.cpp msgid "Canvas Max Layer" @@ -26451,17 +25827,15 @@ msgstr "Condição" #: scene/resources/environment.cpp msgid "Fog" -msgstr "" +msgstr "Névoa" #: scene/resources/environment.cpp -#, fuzzy msgid "Sun Color" -msgstr "Armazenar o Ficheiro:" +msgstr "Cor do Sol" #: scene/resources/environment.cpp -#, fuzzy msgid "Sun Amount" -msgstr "Valor:" +msgstr "Quantidade do Sol" #: scene/resources/environment.cpp #, fuzzy @@ -26525,7 +25899,7 @@ msgstr "Exportar" #: scene/resources/environment.cpp msgid "White" -msgstr "" +msgstr "Branco" #: scene/resources/environment.cpp msgid "Auto Exposure" @@ -26550,14 +25924,12 @@ msgid "Max Steps" msgstr "Passo" #: scene/resources/environment.cpp -#, fuzzy msgid "Fade In" -msgstr "Aparecer (s):" +msgstr "Esmaecer de Entrada" #: scene/resources/environment.cpp -#, fuzzy msgid "Fade Out" -msgstr "Desvanecer (s):" +msgstr "Esmaecer de SaÃda" #: scene/resources/environment.cpp #, fuzzy @@ -26566,16 +25938,15 @@ msgstr "Profundidade" #: scene/resources/environment.cpp scene/resources/material.cpp msgid "Roughness" -msgstr "" +msgstr "Rugosidade" #: scene/resources/environment.cpp msgid "SSAO" -msgstr "" +msgstr "SSAO" #: scene/resources/environment.cpp -#, fuzzy msgid "Radius 2" -msgstr "Raio:" +msgstr "Raio 2" #: scene/resources/environment.cpp msgid "Intensity 2" @@ -26604,9 +25975,8 @@ msgid "DOF Far Blur" msgstr "" #: scene/resources/environment.cpp scene/resources/material.cpp -#, fuzzy msgid "Distance" -msgstr "Distância de escolha:" +msgstr "Distância" #: scene/resources/environment.cpp msgid "Transition" @@ -26618,7 +25988,7 @@ msgstr "" #: scene/resources/environment.cpp msgid "Glow" -msgstr "" +msgstr "Brilho" #: scene/resources/environment.cpp #, fuzzy @@ -26680,7 +26050,7 @@ msgstr "" #: scene/resources/environment.cpp msgid "Adjustments" -msgstr "" +msgstr "Ajustamentos" #: scene/resources/environment.cpp #, fuzzy @@ -26688,19 +26058,16 @@ msgid "Brightness" msgstr "Luz" #: scene/resources/environment.cpp -#, fuzzy msgid "Saturation" -msgstr "Separação:" +msgstr "Separação" #: scene/resources/environment.cpp -#, fuzzy msgid "Color Correction" -msgstr "Função Cor." +msgstr "Correção de Cor" #: scene/resources/font.cpp -#, fuzzy msgid "Ascent" -msgstr "Recente:" +msgstr "Subida" #: scene/resources/font.cpp #, fuzzy @@ -26713,9 +26080,8 @@ msgid "Raw Data" msgstr "Profundidade" #: scene/resources/gradient.cpp -#, fuzzy msgid "Offsets" -msgstr "Compensação:" +msgstr "Deslocamentos" #: scene/resources/height_map_shape.cpp msgid "Map Width" @@ -26745,9 +26111,8 @@ msgid "Use Shadow To Opacity" msgstr "" #: scene/resources/material.cpp -#, fuzzy msgid "Unshaded" -msgstr "Vista sem sombras" +msgstr "Sem sombra" #: scene/resources/material.cpp #, fuzzy @@ -26769,7 +26134,7 @@ msgstr "" #: scene/resources/material.cpp msgid "Do Not Receive Shadows" -msgstr "" +msgstr "Não Receber Sombras" #: scene/resources/material.cpp #, fuzzy @@ -26796,12 +26161,11 @@ msgstr "" #: scene/resources/material.cpp msgid "Is sRGB" -msgstr "" +msgstr "É sRGB" #: scene/resources/material.cpp servers/visual_server.cpp -#, fuzzy msgid "Parameters" -msgstr "Parâmetro Alterado:" +msgstr "Parâmetros" #: scene/resources/material.cpp #, fuzzy @@ -26840,12 +26204,11 @@ msgstr "Modo Régua" #: scene/resources/material.cpp msgid "Grow" -msgstr "" +msgstr "Crescer" #: scene/resources/material.cpp -#, fuzzy msgid "Grow Amount" -msgstr "Valor:" +msgstr "Quantidade de Crescimento" #: scene/resources/material.cpp msgid "Use Alpha Scissor" @@ -26868,11 +26231,11 @@ msgstr "Frame %" #: scene/resources/material.cpp msgid "Albedo" -msgstr "" +msgstr "Albedo" #: scene/resources/material.cpp msgid "Metallic" -msgstr "" +msgstr "Metálico" #: scene/resources/material.cpp #, fuzzy @@ -26880,9 +26243,8 @@ msgid "Texture Channel" msgstr "TextureRegion" #: scene/resources/material.cpp -#, fuzzy msgid "Emission" -msgstr "Máscara de Emissão" +msgstr "Emissão" #: scene/resources/material.cpp msgid "On UV2" @@ -26907,7 +26269,7 @@ msgstr "" #: scene/resources/material.cpp msgid "Anisotropy" -msgstr "" +msgstr "Anisotrópico" #: scene/resources/material.cpp msgid "Flowmap" @@ -26950,13 +26312,12 @@ msgid "Transmission" msgstr "Transmissão" #: scene/resources/material.cpp -#, fuzzy msgid "Refraction" -msgstr "Separação:" +msgstr "Refração" #: scene/resources/material.cpp msgid "Detail" -msgstr "" +msgstr "Detalhe" #: scene/resources/material.cpp #, fuzzy @@ -27002,7 +26363,7 @@ msgstr "Consolidar Lightmaps" #: scene/resources/mesh.cpp scene/resources/primitive_meshes.cpp msgid "Custom AABB" -msgstr "" +msgstr "AABB Personalizado" #: scene/resources/mesh_library.cpp #, fuzzy @@ -27015,14 +26376,12 @@ msgid "NavMesh Transform" msgstr "Limpar Transformação" #: scene/resources/multimesh.cpp -#, fuzzy msgid "Color Format" -msgstr "Operador de Cor." +msgstr "Formato de Cor" #: scene/resources/multimesh.cpp -#, fuzzy msgid "Transform Format" -msgstr "Transformação Abortada." +msgstr "Formato de Transformação" #: scene/resources/multimesh.cpp msgid "Custom Data Format" @@ -27035,12 +26394,11 @@ msgstr "Instância" #: scene/resources/multimesh.cpp msgid "Visible Instance Count" -msgstr "" +msgstr "Quantidade de Instâncias VisÃveis" #: scene/resources/navigation_mesh.cpp -#, fuzzy msgid "Sampling" -msgstr "A escalar: " +msgstr "Mostragem" #: scene/resources/navigation_mesh.cpp #, fuzzy @@ -27048,27 +26406,24 @@ msgid "Partition Type" msgstr "Definir tipo de variável" #: scene/resources/navigation_mesh.cpp -#, fuzzy msgid "Parsed Geometry Type" -msgstr "A analisar geometria..." +msgstr "Tipo de Geometria Analisada" #: scene/resources/navigation_mesh.cpp msgid "Source Geometry Mode" msgstr "" #: scene/resources/navigation_mesh.cpp -#, fuzzy msgid "Source Group Name" -msgstr "Fonte" +msgstr "Origem do Nome do Grupo" #: scene/resources/navigation_mesh.cpp msgid "Cells" -msgstr "" +msgstr "Células" #: scene/resources/navigation_mesh.cpp -#, fuzzy msgid "Agents" -msgstr "Argumentos da Cena Principal:" +msgstr "Agentes" #: scene/resources/navigation_mesh.cpp msgid "Max Climb" @@ -27090,7 +26445,7 @@ msgstr "Mesclar a partir da Cena" #: scene/resources/navigation_mesh.cpp msgid "Edges" -msgstr "" +msgstr "Arestas" #: scene/resources/navigation_mesh.cpp #, fuzzy @@ -27099,7 +26454,7 @@ msgstr "Erro" #: scene/resources/navigation_mesh.cpp msgid "Verts Per Poly" -msgstr "" +msgstr "Vértices Por PolÃgono" #: scene/resources/navigation_mesh.cpp #, fuzzy @@ -27107,9 +26462,8 @@ msgid "Details" msgstr "Mostrar Predefinição" #: scene/resources/navigation_mesh.cpp -#, fuzzy msgid "Sample Distance" -msgstr "Distância de escolha:" +msgstr "Distância de Amostra" #: scene/resources/navigation_mesh.cpp #, fuzzy @@ -27140,7 +26494,7 @@ msgstr "Compensação:" #: scene/resources/occluder_shape.cpp msgid "Spheres" -msgstr "" +msgstr "Esferas" #: scene/resources/occluder_shape.cpp msgid "OccluderShapeSphere Set Spheres" @@ -27180,9 +26534,8 @@ msgid "Color Modifier" msgstr "Freelook Modificador de Lentidão" #: scene/resources/particles_material.cpp -#, fuzzy msgid "Point Texture" -msgstr "Pontos de emissão:" +msgstr "Textura de Ponto" #: scene/resources/particles_material.cpp msgid "Normal Texture" @@ -27199,9 +26552,8 @@ msgid "Point Count" msgstr "Adicionar Porta de Entrada" #: scene/resources/particles_material.cpp -#, fuzzy msgid "Scale Random" -msgstr "Proporção de Escala:" +msgstr "Randomização de Escala" #: scene/resources/particles_material.cpp #, fuzzy @@ -27217,9 +26569,8 @@ msgid "Absorbent" msgstr "" #: scene/resources/plane_shape.cpp -#, fuzzy msgid "Plane" -msgstr "Plano:" +msgstr "Plano" #: scene/resources/primitive_meshes.cpp #, fuzzy @@ -27243,9 +26594,8 @@ msgid "Subdivide Depth" msgstr "" #: scene/resources/primitive_meshes.cpp -#, fuzzy msgid "Top Radius" -msgstr "Raio:" +msgstr "Raio do Topo" #: scene/resources/primitive_meshes.cpp #, fuzzy @@ -27294,9 +26644,8 @@ msgid "Bone" msgstr "Ossos" #: scene/resources/sky.cpp -#, fuzzy msgid "Radiance Size" -msgstr "Tamanho do contorno:" +msgstr "Tamanho da Radiância" #: scene/resources/sky.cpp msgid "Panorama" @@ -27308,9 +26657,8 @@ msgid "Top Color" msgstr "Próximo Piso" #: scene/resources/sky.cpp -#, fuzzy msgid "Horizon Color" -msgstr "Armazenar o Ficheiro:" +msgstr "Cor do Horizonte" #: scene/resources/sky.cpp #, fuzzy @@ -27334,7 +26682,7 @@ msgstr "Substituto" #: scene/resources/sky.cpp msgid "Longitude" -msgstr "" +msgstr "Longitude" #: scene/resources/sky.cpp msgid "Angle Min" @@ -27369,7 +26717,7 @@ msgstr "" #: scene/resources/style_box.cpp msgid "Anti Aliasing" -msgstr "" +msgstr "Anti Serrilhamento" #: scene/resources/style_box.cpp msgid "Grow Begin" @@ -27419,9 +26767,8 @@ msgid "Lossy Storage Quality" msgstr "Capturar" #: scene/resources/texture.cpp -#, fuzzy msgid "From" -msgstr "Modo Jogo:" +msgstr "À Partir de" #: scene/resources/texture.cpp #, fuzzy @@ -27595,11 +26942,11 @@ msgstr "Editar Conexão:" #: scene/resources/world_2d.cpp msgid "Canvas" -msgstr "" +msgstr "Tela" #: servers/arvr/arvr_interface.cpp msgid "Is Primary" -msgstr "" +msgstr "É Principal" #: servers/arvr/arvr_interface.cpp #, fuzzy @@ -27625,9 +26972,8 @@ msgid "Audio Stream" msgstr "Item Rádio" #: servers/audio/audio_stream.cpp -#, fuzzy msgid "Random Pitch" -msgstr "Inclinação aleatória:" +msgstr "Timbre Aleatório" #: servers/audio/effects/audio_effect_capture.cpp #: servers/audio/effects/audio_effect_spectrum_analyzer.cpp @@ -27637,27 +26983,27 @@ msgstr "" #: servers/audio/effects/audio_effect_chorus.cpp msgid "Voice Count" -msgstr "" +msgstr "Quantidade de Vozes" #: servers/audio/effects/audio_effect_chorus.cpp #: servers/audio/effects/audio_effect_delay.cpp #: servers/audio/effects/audio_effect_reverb.cpp msgid "Dry" -msgstr "" +msgstr "Seco" #: servers/audio/effects/audio_effect_chorus.cpp #: servers/audio/effects/audio_effect_reverb.cpp msgid "Wet" -msgstr "" +msgstr "Molhado" #: servers/audio/effects/audio_effect_chorus.cpp msgid "Voice" -msgstr "" +msgstr "Voz" #: servers/audio/effects/audio_effect_chorus.cpp #: servers/audio/effects/audio_effect_delay.cpp msgid "Delay (ms)" -msgstr "" +msgstr "Atraso (ms)" #: servers/audio/effects/audio_effect_chorus.cpp #: servers/audio/effects/audio_effect_phaser.cpp @@ -27672,7 +27018,7 @@ msgstr "Profundidade" #: servers/audio/effects/audio_effect_chorus.cpp #: servers/audio/effects/audio_effect_delay.cpp msgid "Level dB" -msgstr "" +msgstr "NÃvel dB" #: servers/audio/effects/audio_effect_chorus.cpp #: servers/audio/effects/audio_effect_delay.cpp @@ -27684,11 +27030,11 @@ msgstr "Plano:" #: servers/audio/effects/audio_effect_compressor.cpp #: servers/audio/effects/audio_effect_filter.cpp msgid "Gain" -msgstr "" +msgstr "Ganho" #: servers/audio/effects/audio_effect_compressor.cpp msgid "Attack (µs)" -msgstr "" +msgstr "Ataque (µs)" #: servers/audio/effects/audio_effect_compressor.cpp #, fuzzy @@ -27725,7 +27071,7 @@ msgstr "Ignorar" #: servers/audio/effects/audio_effect_distortion.cpp msgid "Pre Gain" -msgstr "" +msgstr "Pré Ganho" #: servers/audio/effects/audio_effect_distortion.cpp msgid "Keep Hf Hz" @@ -27775,13 +27121,12 @@ msgstr "" #: servers/audio/effects/audio_effect_pitch_shift.cpp #: servers/audio/effects/audio_effect_spectrum_analyzer.cpp -#, fuzzy msgid "FFT Size" -msgstr "Tamanho:" +msgstr "Tamanho FFT" #: servers/audio/effects/audio_effect_reverb.cpp msgid "Predelay" -msgstr "" +msgstr "Pré Atraso" #: servers/audio/effects/audio_effect_reverb.cpp msgid "Msec" @@ -27789,7 +27134,7 @@ msgstr "" #: servers/audio/effects/audio_effect_reverb.cpp msgid "Room Size" -msgstr "" +msgstr "Tamanho da Sala" #: servers/audio/effects/audio_effect_reverb.cpp #, fuzzy @@ -27805,9 +27150,8 @@ msgid "Pan Pullout" msgstr "" #: servers/audio/effects/audio_effect_stereo_enhance.cpp -#, fuzzy msgid "Time Pullout (ms)" -msgstr "Tempo expirado." +msgstr "Retirada de Tempo (ms)" #: servers/audio/effects/audio_effect_stereo_enhance.cpp msgid "Surround" @@ -27819,9 +27163,8 @@ msgid "Enable Audio Input" msgstr "Renomear o barramento de áudio" #: servers/audio_server.cpp -#, fuzzy msgid "Output Latency" -msgstr "SaÃda" +msgstr "Latência de SaÃda" #: servers/audio_server.cpp msgid "Channel Disable Threshold dB" @@ -27870,12 +27213,11 @@ msgstr "" #: servers/physics/space_sw.cpp servers/physics_2d/space_2d_sw.cpp msgid "Time Before Sleep" -msgstr "" +msgstr "Tempo Antes de Dormir" #: servers/physics_2d/physics_2d_server_sw.cpp -#, fuzzy msgid "BP Hash Table Size" -msgstr "Tamanho:" +msgstr "Tamanho da \"BP Hash Table\"" #: servers/physics_2d/physics_2d_server_sw.cpp msgid "Large Object Surface Threshold In Cells" @@ -27883,12 +27225,11 @@ msgstr "" #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Inverse Mass" -msgstr "" +msgstr "Inverter Massa" #: servers/physics_2d_server.cpp servers/physics_server.cpp -#, fuzzy msgid "Inverse Inertia" -msgstr "Freelook Esquerda" +msgstr "Inverter Inércia" #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Total Angular Damp" @@ -27911,7 +27252,7 @@ msgstr "Inicializar" #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Exclude" -msgstr "" +msgstr "Excluir" #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Shape RID" @@ -27924,7 +27265,7 @@ msgstr "Modo Colisão" #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Collide With Areas" -msgstr "" +msgstr "Colidir com Ãreas" #: servers/physics_2d_server.cpp servers/physics_server.cpp msgid "Motion Remainder" @@ -28004,9 +27345,8 @@ msgid "Constants cannot be modified." msgstr "Constantes não podem ser modificadas." #: servers/visual/visual_server_scene.cpp -#, fuzzy msgid "Spatial Partitioning" -msgstr "A segmentar..." +msgstr "Particionamento Espacial" #: servers/visual_server.cpp #, fuzzy @@ -28045,16 +27385,15 @@ msgstr "Importar tema" #: servers/visual_server.cpp msgid "Lossless Compression" -msgstr "" +msgstr "Compressão Sem Perda" #: servers/visual_server.cpp -#, fuzzy msgid "Force PNG" -msgstr "Forçar Impulso" +msgstr "Forçar PNG" #: servers/visual_server.cpp msgid "WebP Compression Level" -msgstr "" +msgstr "NÃvel de Compressão WebP" #: servers/visual_server.cpp msgid "Time Rollover Secs" @@ -28098,7 +27437,7 @@ msgstr "Centrar Seleção" #: servers/visual_server.cpp msgid "High Quality GGX" -msgstr "" +msgstr "GGX de Alta Qualidade" #: servers/visual_server.cpp msgid "Irradiance Max Size" @@ -28172,9 +27511,8 @@ msgid "Ninepatch Mode" msgstr "Modo de Interpolação" #: servers/visual_server.cpp -#, fuzzy msgid "OpenGL" -msgstr "Abrir" +msgstr "abrir" #: servers/visual_server.cpp msgid "Batching Send Null" @@ -28194,9 +27532,8 @@ msgid "Legacy Stream" msgstr "" #: servers/visual_server.cpp -#, fuzzy msgid "Batching" -msgstr "A procurar..." +msgstr "Loteamento" #: servers/visual_server.cpp msgid "Use Batching" @@ -28224,9 +27561,8 @@ msgid "Scissor Area Threshold" msgstr "" #: servers/visual_server.cpp -#, fuzzy msgid "Max Join Items" -msgstr "Gerir Itens..." +msgstr "Máximo de Itens de Junção" #: servers/visual_server.cpp msgid "Batch Buffer Size" @@ -28238,7 +27574,7 @@ msgstr "" #: servers/visual_server.cpp msgid "Flash Batching" -msgstr "" +msgstr "Loteamento de Flashes" #: servers/visual_server.cpp #, fuzzy @@ -28247,15 +27583,15 @@ msgstr "Colar Frame" #: servers/visual_server.cpp msgid "GLES2" -msgstr "" +msgstr "GLES2" #: servers/visual_server.cpp msgid "Compatibility" -msgstr "" +msgstr "Compatibilidade" #: servers/visual_server.cpp msgid "Disable Half Float" -msgstr "" +msgstr "Desativar Meia Float" #: servers/visual_server.cpp #, fuzzy @@ -28269,11 +27605,11 @@ msgstr "Expressão" #: servers/visual_server.cpp msgid "UV Contract" -msgstr "" +msgstr "Contrato UV" #: servers/visual_server.cpp msgid "UV Contract Amount" -msgstr "" +msgstr "Valor do Contrato UV" #: servers/visual_server.cpp #, fuzzy @@ -28282,7 +27618,7 @@ msgstr "Usar Ajuste de Escala" #: servers/visual_server.cpp msgid "PVS Logging" -msgstr "" +msgstr "Registo PVS" #: servers/visual_server.cpp #, fuzzy @@ -28306,12 +27642,11 @@ msgstr "Ver Culling da Oclusão" #: servers/visual_server.cpp msgid "Max Active Spheres" -msgstr "" +msgstr "Máximo de Esferas Ativas" #: servers/visual_server.cpp -#, fuzzy msgid "Max Active Polygons" -msgstr "Mover PolÃgono" +msgstr "Máximo de PolÃgonos Ativos" #: servers/visual_server.cpp #, fuzzy diff --git a/editor/translations/pt_BR.po b/editor/translations/pt_BR.po index 30ad718462..8e574f992d 100644 --- a/editor/translations/pt_BR.po +++ b/editor/translations/pt_BR.po @@ -38,7 +38,7 @@ # Pedro Pacheco <pedroxixipa@hotmail.com>, 2018, 2019. # Bruno Henrique <nimbusdroid@gmail.com>, 2018, 2019. # Luciano Scilletta <lucianoscilletta@gmail.com>, 2018. -# Julio Yagami <juliohenrique31501234@hotmail.com>, 2018, 2019. +# Julio Yagami <juliohenrique31501234@hotmail.com>, 2018, 2019, 2022. # Fernando Martinez <contact@fernandodev.com>, 2018. # Marcelo <mitissa@gmail.com>, 2018, 2019. # Walter Bolitto <wrcarval@live.com>, 2018, 2019. @@ -95,21 +95,21 @@ # Felipe Jesus Macedo <fmacedo746@gmail.com>, 2020. # José Paulo <jose.paulo1919@gmail.com>, 2020. # Necco <necco@outlook.com>, 2020. -# Marcelo Silveira Hayden <mshayden.1998@gmail.com>, 2020, 2021. +# Marcelo Silveira Hayden <mshayden.1998@gmail.com>, 2020, 2021, 2022. # GUILHERME SOUZA REIS DE MELO LOPES <guilhermesrml@unipam.edu.br>, 2020. # Gabriela Araújo <Gabirin@outlook.com.br>, 2020. # Jairo Tuboi <tuboi.jairo@gmail.com>, 2020. # Felipe Fetter <felipetfetter@gmail.com>, 2020. # Rafael Henrique Capati <rhcapati@gmail.com>, 2020. -# NogardRyuu <nogardryuu@gmail.com>, 2020, 2021. +# NogardRyuu <nogardryuu@gmail.com>, 2020, 2021, 2022. # Elton <eltondeoliveira@outlook.com>, 2020, 2021. -# ThiagoCTN <thiagocampostn@gmail.com>, 2020. +# ThiagoCTN <thiagocampostn@gmail.com>, 2020, 2022. # Alec Santos <alecsantos96@gmail.com>, 2020. # Augusto Milão <augusto.milao01@gmail.com>, 2021, 2022. # Gabriel Gavazzi Felix <mutcholoko32@gmail.com>, 2021. # Lucas Dantas <lucas.lucantas38@gmail.com>, 2021. -# Carlos Bonifacio <carlosboni.sa@gmail.com>, 2021. -# Lucas Castro <castroclucas@gmail.com>, 2021. +# Carlos Bonifacio <carlosboni.sa@gmail.com>, 2021, 2022. +# Lucas Castro <castroclucas@gmail.com>, 2021, 2022. # Ricardo Zamarrenho Carvalho Correa <ricardozcc17@gmail.com>, 2021. # Diego dos Reis Macedo <diego_dragon97@hotmail.com>, 2021. # Lucas E. <lukas.ed45@gmail.com>, 2021. @@ -153,13 +153,16 @@ # Mauricio Mazur <mauricio.mazur12@gmail.com>, 2022. # ! Zyll <emanueljunior756@gmail.com>, 2022. # Kirrby <kirrby.gaming@gmail.com>, 2022. +# Murilo Gama <murilovsky2030@gmail.com>, 2022. +# Kauã Azevedo <Kazevic@pm.me>, 2022. +# Zer0-Zer0 <dankmemerson@tutanota.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: 2016-05-30\n" -"PO-Revision-Date: 2022-09-27 21:37+0000\n" -"Last-Translator: Kirrby <kirrby.gaming@gmail.com>\n" +"PO-Revision-Date: 2022-12-10 02:13+0000\n" +"Last-Translator: Julio Yagami <juliohenrique31501234@hotmail.com>\n" "Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/" "godot-engine/godot/pt_BR/>\n" "Language: pt_BR\n" @@ -167,7 +170,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.14.1\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -1293,7 +1296,7 @@ msgstr "Manipulador de Entrada" #: editor/animation_track_editor.cpp msgid "Out Handle" -msgstr "Manipulador de SaÃda" +msgstr "Fora do controle" #: editor/animation_track_editor.cpp #: editor/import/resource_importer_texture.cpp @@ -1575,7 +1578,7 @@ msgstr "Editores" #: editor/animation_track_editor.cpp editor/editor_settings.cpp msgid "Confirm Insert Track" -msgstr "Confirmar Inserção de Trilha" +msgstr "Confirmar inserção de faixa" #. TRANSLATORS: %s will be replaced by a phrase describing the target of track. #: editor/animation_track_editor.cpp @@ -1746,7 +1749,7 @@ msgstr "" #: editor/animation_track_editor.cpp msgid "Anim Add RESET Keys" -msgstr "Anim Adicionar Teclas de RESET" +msgstr "Anim adicionar teclas de RESET" #: editor/animation_track_editor.cpp msgid "" @@ -3065,7 +3068,7 @@ msgstr "Em exportações de 32 bits, o PCK embutido não pode ser maior que 4GB. #: editor/editor_export.cpp msgid "Convert Text Resources To Binary On Export" -msgstr "Converter Recursos de Texto para Binário na Exportação" +msgstr "Converter recursos de texto para binário na exportação" #: editor/editor_feature_profile.cpp msgid "3D Editor" @@ -4416,7 +4419,7 @@ msgstr "Sempre Limpar Output no modo Play" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Always Open Output On Play" -msgstr "Sempre abrir a saÃda ao jogar" +msgstr "Sempre abrir a saÃda ao reproduzir" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Always Close Output On Stop" @@ -4424,7 +4427,7 @@ msgstr "Sempre fechar a saÃda ao parar" #: editor/editor_node.cpp msgid "Save On Focus Loss" -msgstr "Salvar em caso de perda de foco" +msgstr "Salvar ao perder o foco" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Save Each Scene On Quit" @@ -4456,7 +4459,7 @@ msgstr "Restaurar Cenas ao Carregar" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Show Thumbnail On Hover" -msgstr "Mostrar miniatura ao passar o mouse" +msgstr "Exibir miniatura ao passar o mouse por cima" #: editor/editor_node.cpp editor/editor_settings.cpp msgid "Inspector" @@ -4464,11 +4467,11 @@ msgstr "Inspetor" #: editor/editor_node.cpp msgid "Default Property Name Style" -msgstr "Estilo de Nome de Propriedade Padrão" +msgstr "Estilo de Nome Padrão de Propriedade" #: editor/editor_node.cpp msgid "Default Float Step" -msgstr "Passo de ponto flutuante padrão" +msgstr "Passo de Float padrão" #: editor/editor_node.cpp scene/gui/tree.cpp msgid "Disable Folding" @@ -5359,7 +5362,7 @@ msgstr "Linguagem do Editor" #: editor/editor_settings.cpp msgid "Display Scale" -msgstr "Escala de Exibição" +msgstr "Exibir Escala" #: editor/editor_settings.cpp msgid "Custom Display Scale" @@ -5367,15 +5370,15 @@ msgstr "Escala de Exibição Customizada" #: editor/editor_settings.cpp msgid "Main Font Size" -msgstr "Tamanho de Fonte Principal" +msgstr "Tamanho da Fonte Principal" #: editor/editor_settings.cpp msgid "Code Font Size" -msgstr "Tamanho de Fonte (Tipo) no Código" +msgstr "Tamanho da Fonte do Código" #: editor/editor_settings.cpp msgid "Font Antialiased" -msgstr "Fonte Com Serrilhado Suavizado" +msgstr "Fonte com Anti-aliasing" #: editor/editor_settings.cpp msgid "Font Hinting" @@ -5387,27 +5390,27 @@ msgstr "Fonte Principal" #: editor/editor_settings.cpp msgid "Main Font Bold" -msgstr "Fonte Principal (Negrito)" +msgstr "Fonte Principal com Negrito" #: editor/editor_settings.cpp msgid "Code Font" -msgstr "Fonte para Código" +msgstr "Fonte do Código" #: editor/editor_settings.cpp msgid "Dim Editor On Dialog Popup" -msgstr "Escurecer o Editor ao Abir Janela Popup" +msgstr "Escurecer Editor no Pop-up de Diálogo" #: editor/editor_settings.cpp main/main.cpp msgid "Low Processor Mode Sleep (µsec)" -msgstr "Tempo de Espera em Modo de Hibernação (µseg)" +msgstr "Modo de baixo processamento tempo (µsec)" #: editor/editor_settings.cpp msgid "Unfocused Low Processor Mode Sleep (µsec)" -msgstr "Tempo de Espera em Modo de Hibernação Quando Fora de Foco (µseg)" +msgstr "Modo de baixo processamento não focado (µsec)" #: editor/editor_settings.cpp msgid "Separate Distraction Mode" -msgstr "Modo \"Sem Distrações\" Desacoplado" +msgstr "Separar Modo Distração" #: editor/editor_settings.cpp msgid "Automatically Open Screenshots" @@ -5429,7 +5432,7 @@ msgstr "Predefinição" #: editor/editor_settings.cpp msgid "Icon And Font Color" -msgstr "Cor da Fonte e do Ãcone" +msgstr "Cores do Ãcone e da fonte" #: editor/editor_settings.cpp msgid "Base Color" @@ -5505,7 +5508,7 @@ msgstr "Tamanho da Miniatura" #: editor/editor_settings.cpp msgid "Docks" -msgstr "Docks" +msgstr "Painéis" #: editor/editor_settings.cpp msgid "Scene Tree" @@ -5702,7 +5705,7 @@ msgstr "Ordenar Prévia de Membros Automaticamente" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Cursor" -msgstr "Cursor" +msgstr "Ponteiro" #: editor/editor_settings.cpp msgid "Scroll Past End Of File" @@ -8485,7 +8488,7 @@ msgstr "Obtido:" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Failed SHA-256 hash check" -msgstr "Falha na verificação do hash SHA-256" +msgstr "Falha na verificação da hash SHA-256" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Asset Download Error:" @@ -8669,8 +8672,8 @@ msgid "" "Some mesh is invalid. Make sure the UV2 channel values are contained within " "the [0.0,1.0] square region." msgstr "" -"Alguma malha é inválida. Certifique-se de que os valores do canal UV2 estão " -"contidos na região quadrada [0.0,1.0]." +"Algum mesh é invalido. Tenha certeza que os valores do canal UV2 estão " +"contidos dentro da região quadrática [0.0,1.0]." #: editor/plugins/baked_lightmap_editor_plugin.cpp msgid "" @@ -8811,8 +8814,8 @@ msgid "" "Children of containers have their anchors and margins values overridden by " "their parent." msgstr "" -"Filhos de contêineres têm suas posições e tamanhos sobrescritos pelos seus " -"pais." +"Filhos de contêineres têm seus valores de âncoras e margens substituÃdos " +"pelos seus pais." #: editor/plugins/canvas_item_editor_plugin.cpp msgid "Presets for the anchors and margins values of a Control node." @@ -11405,11 +11408,11 @@ msgstr "Orbitar Visão Para Baixo" #: editor/plugins/spatial_editor_plugin.cpp msgid "Orbit View Left" -msgstr "Orbitar Visão para a Esquerda" +msgstr "Orbitar Visão à Esquerda" #: editor/plugins/spatial_editor_plugin.cpp msgid "Orbit View Right" -msgstr "Orbitar Visão para a Direita" +msgstr "Orbitar Visão à Direita" #: editor/plugins/spatial_editor_plugin.cpp msgid "Orbit View Up" @@ -11417,7 +11420,7 @@ msgstr "Orbitar Visão para Cima" #: editor/plugins/spatial_editor_plugin.cpp msgid "Orbit View 180" -msgstr "Orbitar Visão em 180" +msgstr "Orbitar Visão 180º" #: editor/plugins/spatial_editor_plugin.cpp msgid "Switch Perspective/Orthogonal View" @@ -12322,7 +12325,7 @@ msgid "" "Toggle the control picker, allowing to visually select control types for " "edit." msgstr "" -"Acionar o selecionador de controles, permitindo selecionar visualmente os " +"Acionar o selecionador de controles, permitindo visualmente selecionar os " "tipos de controles para edição." #: editor/plugins/theme_editor_preview.cpp @@ -12529,6 +12532,7 @@ msgid "Clear Transform" msgstr "Limpar Transformação" #: editor/plugins/tile_map_editor_plugin.cpp +#, fuzzy msgid "Tile Map" msgstr "Tile Map" @@ -12559,9 +12563,8 @@ msgstr "Pré-visualização do Preenchimento de Balde" #: editor/plugins/tile_map_editor_plugin.cpp #: modules/gridmap/grid_map_editor_plugin.cpp -#, fuzzy msgid "Editor Side" -msgstr "Editor" +msgstr "Lado do Editor" #: editor/plugins/tile_map_editor_plugin.cpp msgid "Display Grid" @@ -12915,9 +12918,10 @@ msgstr "Opções de Encaixe" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "Deslocamento" @@ -13003,9 +13007,8 @@ msgid "Selected Collision One Way" msgstr "Colisão em sentido único selecionada" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Collision One Way Margin" -msgstr "Modo Colisão" +msgstr "Margem de colisão em sentido único selecionada" #: editor/plugins/tile_set_editor_plugin.cpp msgid "Selected Navigation" @@ -13147,9 +13150,8 @@ msgid "Branch Name" msgstr "Nome do Ramo" #: editor/plugins/version_control_editor_plugin.cpp -#, fuzzy msgid "Remotes" -msgstr "Remoto" +msgstr "Remotos" #: editor/plugins/version_control_editor_plugin.cpp msgid "Create New Remote" @@ -13160,7 +13162,6 @@ msgid "Remove Remote" msgstr "Remover remoto" #: editor/plugins/version_control_editor_plugin.cpp -#, fuzzy msgid "Remote Name" msgstr "Nome Remoto" @@ -14330,16 +14331,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Caminho de projeto inválido (mudou alguma coisa?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Não foi possÃvel carregar project.godot no caminho do projeto (erro %d). Ele " "pode estar ausente ou corrompido." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "Não foi possÃvel editar project.godot no caminho do projeto." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Não é possÃvel abrir o projeto em '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -15561,18 +15563,16 @@ msgid "Clear Inheritance? (No Undo!)" msgstr "Limpar Herança? (IrreversÃvel!)" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Show Scene Tree Root Selection" -msgstr "Seleção Central" +msgstr "Mostrar seleção da hierarquia de cenas" #: editor/scene_tree_dock.cpp msgid "Derive Script Globals By Name" msgstr "Obter Globais de Script por Nome" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Use Favorites Root Selection" -msgstr "Seleção de Frame" +msgstr "Seleção de favoritos da raÃz" #: editor/scene_tree_editor.cpp msgid "Toggle Visible" @@ -15874,7 +15874,7 @@ msgstr "Copiar Erro" #: editor/script_editor_debugger.cpp msgid "Open C++ Source on GitHub" -msgstr "Abrir Código C++ no GitHub" +msgstr "Abrir código C++ no GitHub" #: editor/script_editor_debugger.cpp msgid "Video RAM" @@ -16158,12 +16158,10 @@ msgid "Set Occluder Sphere Position" msgstr "Definir Posição Da Esfera Do Oclusor" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Set Occluder Polygon Point Position" msgstr "Definir Posição do Ponto do PolÃgono Oclusor" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Set Occluder Hole Point Position" msgstr "Definir Posição do Ponto do Buraco Oclusor" @@ -16172,9 +16170,8 @@ msgid "Occluder Polygon Front" msgstr "Frente do PolÃgono Oclusor" #: editor/spatial_editor_gizmos.cpp -#, fuzzy msgid "Occluder Polygon Back" -msgstr "Costas do PolÃgono Oclusor" +msgstr "Traseira do PolÃgono Oclusor" #: editor/spatial_editor_gizmos.cpp msgid "Occluder Hole" @@ -16182,7 +16179,7 @@ msgstr "Buraco Oclusor" #: main/main.cpp msgid "Godot Physics" -msgstr "Godot Physics" +msgstr "FÃsica Godot" #: main/main.cpp servers/physics_2d/physics_2d_server_sw.cpp #: servers/visual/visual_server_scene.cpp @@ -16203,8 +16200,9 @@ msgid "Multithreaded Server" msgstr "Servidor com Multi-Thread" #: main/main.cpp +#, fuzzy msgid "RID Pool Prealloc" -msgstr "" +msgstr "Pre-alocação de Pool RID" #: main/main.cpp msgid "Debugger stdout" @@ -16371,9 +16369,8 @@ msgid "Enable Warnings" msgstr "Habilitar Avisos" #: main/main.cpp -#, fuzzy msgid "Frame Delay Msec" -msgstr "Seleção de Frame" +msgstr "Atraso de quadro Mseg" #: main/main.cpp msgid "Low Processor Mode" @@ -16531,14 +16528,12 @@ msgid "Auto Accept Quit" msgstr "Aceitar Sair Automaticamente" #: main/main.cpp scene/main/scene_tree.cpp -#, fuzzy msgid "Quit On Go Back" -msgstr "Sair em Voltar" +msgstr "Sair ao Voltar" #: main/main.cpp scene/main/viewport.cpp -#, fuzzy msgid "Snap Controls To Pixels" -msgstr "Encaixar nos Lados do Nó" +msgstr "Encaixar Nós de Controle nos pixels" #: main/main.cpp msgid "Dynamic Fonts" @@ -16660,9 +16655,8 @@ msgid "Path Node" msgstr "Caminho do Nó" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Interval Type" -msgstr "Criar Vertex Interno" +msgstr "Tipo de Intervalo de Caminho" #: modules/csg/csg_shape.cpp msgid "Path Interval" @@ -16677,14 +16671,13 @@ msgid "Path Rotation" msgstr "Rotação do Caminho" #: modules/csg/csg_shape.cpp -#, fuzzy msgid "Path Local" -msgstr "Tornar Local" +msgstr "Caminho Local" #: modules/csg/csg_shape.cpp #, fuzzy msgid "Path Continuous U" -msgstr "ContÃnuo" +msgstr "Caminho ContÃnuo" #: modules/csg/csg_shape.cpp msgid "Path U Distance" @@ -16917,9 +16910,8 @@ msgid "Export GLTF..." msgstr "Exportar GLTF..." #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Buffer View" -msgstr "Visão Traseira" +msgstr "Visão de Buffer" #: modules/gltf/gltf_accessor.cpp modules/gltf/gltf_buffer_view.cpp msgid "Byte Offset" @@ -16946,9 +16938,8 @@ msgid "Max" msgstr "Max" #: modules/gltf/gltf_accessor.cpp -#, fuzzy msgid "Sparse Count" -msgstr "Instância" +msgstr "Contagem Escassa" #: modules/gltf/gltf_accessor.cpp msgid "Sparse Indices Buffer View" @@ -16971,14 +16962,12 @@ msgid "Sparse Values Byte Offset" msgstr "" #: modules/gltf/gltf_buffer_view.cpp -#, fuzzy msgid "Buffer" -msgstr "Visão Traseira" +msgstr "Buffer" #: modules/gltf/gltf_buffer_view.cpp -#, fuzzy msgid "Byte Length" -msgstr "Tema Padrão" +msgstr "Largura do byte" #: modules/gltf/gltf_buffer_view.cpp msgid "Byte Stride" @@ -16994,12 +16983,11 @@ msgstr "Tamanho do FOV" #: modules/gltf/gltf_camera.cpp msgid "Zfar" -msgstr "" +msgstr "Z longe" #: modules/gltf/gltf_camera.cpp -#, fuzzy msgid "Znear" -msgstr "Linear" +msgstr "Z perto" #: modules/gltf/gltf_light.cpp scene/2d/canvas_modulate.cpp #: scene/2d/cpu_particles_2d.cpp scene/2d/light_2d.cpp scene/2d/polygon_2d.cpp @@ -17030,9 +17018,8 @@ msgid "Outer Cone Angle" msgstr "Ângulo externo do cone" #: modules/gltf/gltf_mesh.cpp -#, fuzzy msgid "Blend Weights" -msgstr "Faça mapas de luz" +msgstr "Peso da mesclagem" #: modules/gltf/gltf_mesh.cpp msgid "Instance Materials" @@ -17043,13 +17030,12 @@ msgid "Parent" msgstr "Pai" #: modules/gltf/gltf_node.cpp -#, fuzzy msgid "Xform" -msgstr "Plataforma" +msgstr "" #: modules/gltf/gltf_node.cpp scene/3d/mesh_instance.cpp msgid "Skin" -msgstr "Skin" +msgstr "" #: modules/gltf/gltf_node.cpp scene/3d/spatial.cpp msgid "Translation" @@ -17085,12 +17071,11 @@ msgstr "Pontos Originais" #: modules/gltf/gltf_skin.cpp msgid "Inverse Binds" -msgstr "" +msgstr "Designações invertidas" #: modules/gltf/gltf_skin.cpp -#, fuzzy msgid "Non Joints" -msgstr "Mover Junta" +msgstr "Não-Juntas" #: modules/gltf/gltf_skin.cpp msgid "Joint I To Bone I" @@ -17102,15 +17087,15 @@ msgstr "Junta I ao Nome" #: modules/gltf/gltf_skin.cpp msgid "Godot Skin" -msgstr "" +msgstr "Skin Godot" #: modules/gltf/gltf_spec_gloss.cpp msgid "Diffuse Img" -msgstr "Difusa Img" +msgstr "Imagem Difusa" #: modules/gltf/gltf_spec_gloss.cpp msgid "Diffuse Factor" -msgstr "Difusa Fator" +msgstr "Fator de Difusão" #: modules/gltf/gltf_spec_gloss.cpp msgid "Gloss Factor" @@ -17126,30 +17111,27 @@ msgstr "" #: modules/gltf/gltf_state.cpp msgid "Json" -msgstr "Json" +msgstr "" #: modules/gltf/gltf_state.cpp msgid "Major Version" msgstr "Versão Importante" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Minor Version" -msgstr "Versão" +msgstr "Versão Minoritária" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "GLB Data" -msgstr "Com Dados" +msgstr "Dados do GLB" #: modules/gltf/gltf_state.cpp msgid "Use Named Skin Binds" msgstr "" #: modules/gltf/gltf_state.cpp -#, fuzzy msgid "Buffer Views" -msgstr "Visão Traseira" +msgstr "Visão Buffer" #: modules/gltf/gltf_state.cpp msgid "Accessors" @@ -17197,9 +17179,8 @@ msgid "Animations" msgstr "Animações" #: modules/gltf/gltf_texture.cpp -#, fuzzy msgid "Src Image" -msgstr "Mostrar Ossos" +msgstr "Imagem fonte" #: modules/gridmap/grid_map.cpp msgid "Mesh Library" @@ -17210,18 +17191,16 @@ msgid "Physics Material" msgstr "Material de FÃsica" #: modules/gridmap/grid_map.cpp scene/3d/visual_instance.cpp -#, fuzzy msgid "Use In Baked Light" -msgstr "Faça mapas de luz" +msgstr "Usar no mapa de luz" #: modules/gridmap/grid_map.cpp scene/2d/tile_map.cpp msgid "Cell" msgstr "Célula" #: modules/gridmap/grid_map.cpp -#, fuzzy msgid "Octant Size" -msgstr "Visão Frontal" +msgstr "Tamanho Octante" #: modules/gridmap/grid_map.cpp msgid "Center X" @@ -17382,7 +17361,7 @@ msgstr "Atribua um recurso MeshLibrary a este GridMap para usar seus meshes." #: modules/lightmapper_cpu/lightmapper_cpu.cpp msgid "Begin Bake" -msgstr "Iniciar bake" +msgstr "Iniciar Bake" #: modules/lightmapper_cpu/lightmapper_cpu.cpp msgid "Preparing data structures" @@ -17394,7 +17373,7 @@ msgstr "Gerar buffers" #: modules/lightmapper_cpu/lightmapper_cpu.cpp msgid "Direct lighting" -msgstr "Iluminação direta" +msgstr "Iluminação Direta" #: modules/lightmapper_cpu/lightmapper_cpu.cpp msgid "Indirect lighting" @@ -17406,7 +17385,7 @@ msgstr "Pós-processamento" #: modules/lightmapper_cpu/lightmapper_cpu.cpp msgid "Plotting lightmaps" -msgstr "Traçando mapas de luz" +msgstr "Planejando Luzes" #: modules/lightmapper_cpu/register_types.cpp msgid "CPU Lightmapper" @@ -17448,9 +17427,8 @@ msgid "Display Width" msgstr "Largura de Tela" #: modules/mobile_vr/mobile_vr_interface.cpp -#, fuzzy msgid "Display To Lens" -msgstr "Exibir Sem Sombreamento" +msgstr "Exibir para as Lentes" #: modules/mobile_vr/mobile_vr_interface.cpp msgid "Oversample" @@ -17477,9 +17455,8 @@ msgid "Auto Update Project" msgstr "Atualizar Projeto Automaticamente" #: modules/mono/godotsharp_dirs.cpp -#, fuzzy msgid "Assembly Name" -msgstr "Nome de Exibição" +msgstr "Nome de Montagem" #: modules/mono/godotsharp_dirs.cpp msgid "Solution Directory" @@ -17569,9 +17546,8 @@ msgid "As Normal Map" msgstr "Como Mapa Normal" #: modules/opensimplex/noise_texture.cpp -#, fuzzy msgid "Bump Strength" -msgstr "Força da colisão" +msgstr "Força do Bump" #: modules/opensimplex/noise_texture.cpp msgid "Noise" @@ -17611,7 +17587,7 @@ msgstr "Strings" #: modules/upnp/upnp.cpp msgid "Discover Multicast If" -msgstr "" +msgstr "Descobrir if Multicast" #: modules/upnp/upnp.cpp msgid "Discover Local Port" @@ -17622,9 +17598,8 @@ msgid "Discover IPv6" msgstr "Descobrir IPv6" #: modules/upnp/upnp_device.cpp -#, fuzzy msgid "Description URL" -msgstr "Descrição" +msgstr "URL Descritiva" #: modules/upnp/upnp_device.cpp msgid "Service Type" @@ -18014,9 +17989,8 @@ msgid "Return" msgstr "Retornar" #: modules/visual_script/visual_script_flow_control.cpp -#, fuzzy msgid "Return Enabled" -msgstr "Executável" +msgstr "Retorno Ativado" #: modules/visual_script/visual_script_flow_control.cpp msgid "Return Type" @@ -18045,7 +18019,7 @@ msgstr "Iterador" #: modules/visual_script/visual_script_flow_control.cpp msgid "for (elem) in (input):" -msgstr "para (elem) em (input):" +msgstr "" #: modules/visual_script/visual_script_flow_control.cpp msgid "Input type not iterable:" @@ -18097,9 +18071,8 @@ msgid "On %s" msgstr "Em %s" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "On Self" -msgstr "Self" +msgstr "Em sà mesmo" #: modules/visual_script/visual_script_func_nodes.cpp #: modules/visual_script/visual_script_yield_nodes.cpp @@ -18142,23 +18115,20 @@ msgid "Divide %s" msgstr "Dividir %s" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Mod %s" -msgstr "Mod %s" +msgstr "[code]Mod %s[/code]" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "ShiftLeft %s" -msgstr "ShiftLeft %s" +msgstr "" #: modules/visual_script/visual_script_func_nodes.cpp msgid "ShiftRight %s" msgstr "" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "BitAnd %s" -msgstr "BitAnd %s" +msgstr "" #: modules/visual_script/visual_script_func_nodes.cpp msgid "BitOr %s" @@ -18169,12 +18139,10 @@ msgid "BitXor %s" msgstr "" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Set Mode" -msgstr "Modo de Seleção" +msgstr "Modo de Definição" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "Assign Op" msgstr "Atribuir Op" @@ -18282,9 +18250,8 @@ msgid "Get Self" msgstr "Obter Sà Mesmo" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "CustomNode" -msgstr "CustomNode" +msgstr "" #: modules/visual_script/visual_script_nodes.cpp msgid "Custom node has no _step() method, can't process graph." @@ -18301,9 +18268,8 @@ msgstr "" "string (erro)." #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "SubCall" -msgstr "SubCall" +msgstr "" #: modules/visual_script/visual_script_nodes.cpp scene/gui/graph_node.cpp msgid "Title" @@ -18335,11 +18301,11 @@ msgstr "Buscar VisualScript" #: modules/visual_script/visual_script_yield_nodes.cpp msgid "Yield" -msgstr "Yield" +msgstr "" #: modules/visual_script/visual_script_yield_nodes.cpp msgid "Wait" -msgstr "Esperar" +msgstr "" #: modules/visual_script/visual_script_yield_nodes.cpp msgid "Next Frame" @@ -18358,33 +18324,28 @@ msgid "Wait Time" msgstr "Tempo de Espera" #: modules/visual_script/visual_script_yield_nodes.cpp -#, fuzzy msgid "WaitSignal" -msgstr "WaitSignal" +msgstr "" #: modules/visual_script/visual_script_yield_nodes.cpp -#, fuzzy msgid "WaitNodeSignal" -msgstr "WaitNodeSignal" +msgstr "" #: modules/visual_script/visual_script_yield_nodes.cpp -#, fuzzy msgid "WaitInstanceSignal" -msgstr "WaitInstanceSignal" +msgstr "" #: modules/webrtc/webrtc_data_channel.cpp -#, fuzzy msgid "Write Mode" -msgstr "Modo Prioridade" +msgstr "Modo de Escrita" #: modules/webrtc/webrtc_data_channel.h msgid "WebRTC" -msgstr "WebRTC" +msgstr "" #: modules/webrtc/webrtc_data_channel.h -#, fuzzy msgid "Max Channel In Buffer (KB)" -msgstr "Tamanho do buffer do Ãndice do polÃgono da tela (KB)" +msgstr "Canal Máximo no Buffer (KB)" #: modules/websocket/websocket_client.cpp msgid "Verify SSL" @@ -18439,9 +18400,8 @@ msgid "Handshake Timeout" msgstr "Tempo de Handshake Esgotado" #: modules/webxr/webxr_interface.cpp -#, fuzzy msgid "Session Mode" -msgstr "Modo Região" +msgstr "Modo Sessão" #: modules/webxr/webxr_interface.cpp msgid "Required Features" @@ -18452,12 +18412,10 @@ msgid "Optional Features" msgstr "Funcionalidades Opcionais" #: modules/webxr/webxr_interface.cpp -#, fuzzy msgid "Requested Reference Space Types" msgstr "Tipos de Espaço de Referência Solicitados" #: modules/webxr/webxr_interface.cpp -#, fuzzy msgid "Reference Space Type" msgstr "Tipo de Espaço de Referência" @@ -18466,23 +18424,20 @@ msgid "Visibility State" msgstr "Estado de Visibilidade" #: modules/webxr/webxr_interface.cpp -#, fuzzy msgid "Bounds Geometry" -msgstr "Tentar Novamente" +msgstr "Limita a Geometria" #: modules/webxr/webxr_interface.cpp -#, fuzzy msgid "XR Standard Mapping" -msgstr "Encaixe inteligente" +msgstr "Mapeamento XR Padrão" #: platform/android/export/export.cpp msgid "Android SDK Path" msgstr "Caminho para SDK Android" #: platform/android/export/export.cpp -#, fuzzy msgid "Debug Keystore" -msgstr "Depurador" +msgstr "Depurar Keystore" #: platform/android/export/export.cpp msgid "Debug Keystore User" @@ -18493,7 +18448,6 @@ msgid "Debug Keystore Pass" msgstr "" #: platform/android/export/export.cpp -#, fuzzy msgid "Force System User" msgstr "Forçar Usuário do Sistema" @@ -18545,14 +18499,12 @@ msgid "The package must have at least one '.' separator." msgstr "O pacote deve ter pelo menos um separador '.'." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Custom Build" -msgstr "Usar Diretório de Usuário Personalizado" +msgstr "Build Personalizada" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Use Custom Build" -msgstr "Usar Diretório de Usuário Personalizado" +msgstr "Usar Build Personalizada" #: platform/android/export/export_plugin.cpp msgid "Export Format" @@ -18571,29 +18523,24 @@ msgid "Architectures" msgstr "Arquiteturas" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Keystore" -msgstr "Depurador" +msgstr "Keystore" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Debug User" -msgstr "Depurador" +msgstr "Depurar Usuário" #: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp -#, fuzzy msgid "Debug Password" -msgstr "Senha" +msgstr "Depurar Senha" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Release User" -msgstr "Lançamento" +msgstr "Liberar Usuário" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Release Password" -msgstr "Senha" +msgstr "Liberar Senha" #: platform/android/export/export_plugin.cpp msgid "One Click Deploy" @@ -18636,9 +18583,8 @@ msgid "Graphics" msgstr "Gráficos" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "OpenGL Debug" -msgstr "Abrir" +msgstr "Depurar OpenGL" #: platform/android/export/export_plugin.cpp msgid "XR Features" @@ -18651,7 +18597,7 @@ msgstr "Modo XR" #: platform/android/export/export_plugin.cpp #, fuzzy msgid "Hand Tracking" -msgstr "Empacotando" +msgstr "Detecção de Mãos" #: platform/android/export/export_plugin.cpp msgid "Hand Tracking Frequency" @@ -18666,24 +18612,20 @@ msgid "Immersive Mode" msgstr "Modo Imersivo" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Support Small" -msgstr "Suporte" +msgstr "Suporte Pequeno" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Support Normal" -msgstr "Suporte" +msgstr "Suporte Normal" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Support Large" -msgstr "Suporte" +msgstr "Suporte Grande" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "Support Xlarge" -msgstr "Suporte" +msgstr "Suporte Extra-grande" #: platform/android/export/export_plugin.cpp msgid "User Data Backup" @@ -18702,9 +18644,8 @@ msgid "Extra Args" msgstr "Argumentos Extra" #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "APK Expansion" -msgstr "Expressão" +msgstr "Expansão APK" #: platform/android/export/export_plugin.cpp msgid "Salt" @@ -18796,7 +18737,7 @@ msgstr "Um caminho Android SDK é necessário nas Configurações do Editor." #: platform/android/export/export_plugin.cpp msgid "Invalid Android SDK path in Editor Settings." -msgstr "Caminho do Android SDK está inválido nas Configurações do Editor." +msgstr "Caminho do Android SDK inválido nas Configurações do Editor." #: platform/android/export/export_plugin.cpp msgid "Missing 'platform-tools' directory!" @@ -18815,7 +18756,7 @@ msgstr "" #: platform/android/export/export_plugin.cpp msgid "Missing 'build-tools' directory!" -msgstr "Diretório 'build-tools' está faltando!" +msgstr "Diretório 'build-tools' ausente!" #: platform/android/export/export_plugin.cpp msgid "Unable to find Android SDK build-tools' apksigner command." @@ -18852,18 +18793,16 @@ msgstr "" "utilizar plugins." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "\"Hand Tracking\" is only valid when \"XR Mode\" is \"Oculus Mobile VrApi\" " "or \"OpenXR\"." msgstr "" -"\"Hand Tracking\" só é válido quando o \"Xr Mode\" é \"Oculus Mobile VR\"." +"\"Hand Tracking\" só é válido quando o \"XR Mode\" é \"Oculus Mobile VrApi\" " +"ou \"OpenXR\"." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "\"Passthrough\" is only valid when \"XR Mode\" is \"OpenXR\"." -msgstr "" -"\"Passthrough\" só é válido quando o \"Xr Mode\" é \"Oculus Mobile VR\"." +msgstr "\"Passthrough\" só é válido quando o \"XR Mode\" é \"OpenXR\"." #: platform/android/export/export_plugin.cpp msgid "\"Export AAB\" is only valid when \"Use Custom Build\" is enabled." @@ -18872,12 +18811,11 @@ msgstr "" "habilitado." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "\"Min SDK\" can only be overridden when \"Use Custom Build\" is enabled." msgstr "" -"\"Exportar AAB\" só é válido quando \"Usar Compilação Customizada\" está " -"habilitado." +"\"Min SDK\" só pode ser substituÃdo quando \"Usar Compilação Customizada\" " +"está habilitado." #: platform/android/export/export_plugin.cpp msgid "\"Min SDK\" should be a valid integer, but got \"%s\" which is invalid." @@ -18894,12 +18832,11 @@ msgstr "" "biblioteca Godot." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "" "\"Target SDK\" can only be overridden when \"Use Custom Build\" is enabled." msgstr "" -"\"Exportar AAB\" só é válido quando \"Usar Compilação Customizada\" está " -"habilitado." +"\"Target SDK\" só pode ser substituÃdo quando \"Usar Compilação " +"Customizada\" está habilitado." #: platform/android/export/export_plugin.cpp msgid "" @@ -18917,11 +18854,10 @@ msgstr "" "não foi testado e pode ser instável." #: platform/android/export/export_plugin.cpp -#, fuzzy msgid "\"Target SDK\" version must be greater or equal to \"Min SDK\" version." msgstr "" -"Versão do \"Target Sdk\" precisa ser igual ou maior que a versão do \"Min " -"Sdk\"." +"Versão do \"Target SDK\" precisa ser igual ou maior que a versão do \"Min " +"SDK\"." #: platform/android/export/export_plugin.cpp platform/osx/export/export.cpp #: platform/windows/export/export.cpp @@ -18971,11 +18907,12 @@ msgstr "Exportando para Android" #: platform/android/export/export_plugin.cpp msgid "Invalid filename! Android App Bundle requires the *.aab extension." -msgstr "Nome de arquivo inválido! Android App Bundle requer a extensão *.aab." +msgstr "" +"Nome de arquivo inválido! O Android App Bundle requer a extensão *.aab." #: platform/android/export/export_plugin.cpp msgid "APK Expansion not compatible with Android App Bundle." -msgstr "A expansão APK não é compatÃvel com o Android App Bundle." +msgstr "Expansão do APK não é compatÃvel com Android App Bundle." #: platform/android/export/export_plugin.cpp msgid "Invalid filename! Android APK requires the *.apk extension." @@ -19091,7 +19028,6 @@ msgid "The character '%s' is not allowed in Identifier." msgstr "O caractere '%s' não é permitido no identificador." #: platform/iphone/export/export.cpp -#, fuzzy msgid "Landscape Launch Screens" msgstr "Telas de Inicialização de Paisagem" @@ -19101,15 +19037,15 @@ msgstr "IPhone 2436 X 1125" #: platform/iphone/export/export.cpp msgid "iPhone 2208 X 1242" -msgstr "iPhone 2208 X 1242" +msgstr "" #: platform/iphone/export/export.cpp msgid "iPad 1024 X 768" -msgstr "iPad 1024 X 768" +msgstr "" #: platform/iphone/export/export.cpp msgid "iPad 2048 X 1536" -msgstr "iPad 2048 X 1536" +msgstr "" #: platform/iphone/export/export.cpp msgid "Portrait Launch Screens" @@ -19117,31 +19053,31 @@ msgstr "" #: platform/iphone/export/export.cpp msgid "iPhone 640 X 960" -msgstr "iPhone 640 X 960" +msgstr "" #: platform/iphone/export/export.cpp msgid "iPhone 640 X 1136" -msgstr "iPhone 640 X 1136" +msgstr "" #: platform/iphone/export/export.cpp msgid "iPhone 750 X 1334" -msgstr "iPhone 750 X 1334" +msgstr "" #: platform/iphone/export/export.cpp msgid "iPhone 1125 X 2436" -msgstr "iPhone 1125 X 2436" +msgstr "" #: platform/iphone/export/export.cpp msgid "iPad 768 X 1024" -msgstr "iPad 768 X 1024" +msgstr "" #: platform/iphone/export/export.cpp msgid "iPad 1536 X 2048" -msgstr "iPad 1536 X 2048" +msgstr "" #: platform/iphone/export/export.cpp msgid "iPhone 1242 X 2208" -msgstr "iPhone 1242 X 2208" +msgstr "" #: platform/iphone/export/export.cpp msgid "App Store Team ID" @@ -19240,23 +19176,23 @@ msgstr "Descrições da Propriedade" #: platform/iphone/export/export.cpp msgid "iPhone 120 X 120" -msgstr "iPhone 120 X 120" +msgstr "" #: platform/iphone/export/export.cpp msgid "iPhone 180 X 180" -msgstr "iPhone 180 X 180" +msgstr "" #: platform/iphone/export/export.cpp msgid "iPad 76 X 76" -msgstr "iPad 76 X 76" +msgstr "" #: platform/iphone/export/export.cpp msgid "iPad 152 X 152" -msgstr "iPad 152 X 152" +msgstr "" #: platform/iphone/export/export.cpp msgid "iPad 167 X 167" -msgstr "iPad 167 X 167" +msgstr "" #: platform/iphone/export/export.cpp msgid "App Store 1024 X 1024" @@ -19367,9 +19303,8 @@ msgid "Export Type" msgstr "Tipo de Exportação" #: platform/javascript/export/export.cpp -#, fuzzy msgid "VRAM Texture Compression" -msgstr "Expressão" +msgstr "Compressão de Texturas na VRAM" #: platform/javascript/export/export.cpp msgid "For Desktop" @@ -19410,7 +19345,7 @@ msgstr "Teclado Virtual Experimental" #: platform/javascript/export/export.cpp msgid "Progressive Web App" -msgstr "Progressive Web App" +msgstr "Aplicativo Web Progressivo" #: platform/javascript/export/export.cpp msgid "Offline Page" @@ -19521,9 +19456,8 @@ msgid "Invalid executable file." msgstr "Arquivo executável inválido." #: platform/osx/export/codesign.cpp -#, fuzzy msgid "Can't resize signature load command." -msgstr "Não é possÃvel redimensionar o comando de carregamento da assinatura." +msgstr "Não é possÃvel redimensionar o comando de carregamento de assinatura." #: platform/osx/export/codesign.cpp msgid "Failed to create fat binary." @@ -20203,7 +20137,6 @@ msgid "Failed to rename temporary file \"%s\"." msgstr "Falha ao renomear arquivo temporário \"%s\"." #: platform/windows/export/export.cpp -#, fuzzy msgid "Identity Type" msgstr "Tipo de Identidade" @@ -20337,9 +20270,8 @@ msgid "Executable file header corrupted." msgstr "" #: platform/windows/export/export.cpp platform/x11/export/export.cpp -#, fuzzy msgid "Executable \"pck\" section not found." -msgstr "Executável seção \"pck\" não encontrado." +msgstr "Seção executável \"pck\" não encontrada." #: platform/windows/export/export.cpp msgid "Windows" @@ -20347,7 +20279,7 @@ msgstr "Windows" #: platform/windows/export/export.cpp msgid "Rcedit" -msgstr "Rcedit" +msgstr "" #: platform/windows/export/export.cpp msgid "Osslsigncode" @@ -20355,7 +20287,7 @@ msgstr "" #: platform/windows/export/export.cpp msgid "Wine" -msgstr "Wine" +msgstr "Vinho" #: platform/x11/export/export.cpp msgid "32-bit executables cannot have embedded data >= 4 GiB." @@ -20636,9 +20568,8 @@ msgid "Visible" msgstr "VisÃvel" #: scene/2d/canvas_item.cpp -#, fuzzy msgid "Self Modulate" -msgstr "Popular" +msgstr "Auto Modular" #: scene/2d/canvas_item.cpp msgid "Show Behind Parent" @@ -21088,9 +21019,8 @@ msgstr "" "Uma textura com a forma da luz deve ser fornecida na propriedade \"textura\"." #: scene/2d/light_2d.cpp scene/3d/light.cpp scene/gui/reference_rect.cpp -#, fuzzy msgid "Editor Only" -msgstr "Editor" +msgstr "Somente Editor" #: scene/2d/light_2d.cpp msgid "Texture Scale" @@ -21579,9 +21509,8 @@ msgid "Sync To Physics" msgstr "Sincronizar com a FÃsica" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp -#, fuzzy msgid "Moving Platform" -msgstr "Movendo saÃda" +msgstr "Plataforma Móvel" #: scene/2d/physics_body_2d.cpp scene/3d/physics_body.cpp msgid "Apply Velocity On Leave" @@ -21980,7 +21909,7 @@ msgstr "Gerando captura" #: scene/3d/baked_lightmap.cpp msgid "Saving lightmaps" -msgstr "Salvando mapas de luz" +msgstr "Salvando lightmaps" #: scene/3d/baked_lightmap.cpp msgid "Done" @@ -22416,9 +22345,8 @@ msgid "Bias Split Scale" msgstr "Usar Encaixe Escalar" #: scene/3d/light.cpp -#, fuzzy msgid "Depth Range" -msgstr "Profundidade" +msgstr "Alcance de Profundidade" #: scene/3d/light.cpp msgid "Omni" @@ -22604,19 +22532,16 @@ msgid "Angular Z" msgstr "Z Angular" #: scene/3d/physics_body.cpp -#, fuzzy msgid "Motion X" -msgstr "Ação" +msgstr "Movimento X" #: scene/3d/physics_body.cpp -#, fuzzy msgid "Motion Y" -msgstr "Ação" +msgstr "Movimento Y" #: scene/3d/physics_body.cpp -#, fuzzy msgid "Motion Z" -msgstr "Ação" +msgstr "Movimento Z" #: scene/3d/physics_body.cpp #, fuzzy @@ -23187,9 +23112,8 @@ msgid "Overlap Warning Threshold" msgstr "" #: scene/3d/room_manager.cpp -#, fuzzy msgid "Preview Camera" -msgstr "Visualização" +msgstr "Visualizar Câmera" #: scene/3d/room_manager.cpp msgid "Portal Depth Limit" @@ -23441,6 +23365,16 @@ msgstr "Erro" msgid "AABB" msgstr "AABB" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Ordenar" + +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Use AABB Center" +msgstr "Utilizar Ambient" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "Geometria" @@ -23895,7 +23829,7 @@ msgid "" "children placement behavior.\n" "If you don't intend to add a script, use a plain Control node instead." msgstr "" -"O contêiner por si só não possui propósito algum, a menos que um script " +"O contêiner por si só não tem nenhum propósito, a menos que um script " "configure seu comportamento de posicionamento dos filhos.\n" "Se você não pretende adicionar um script, use um nó de Controle simples." @@ -24071,7 +24005,7 @@ msgstr "Mini-Mapa" #: scene/gui/graph_edit.cpp msgid "Enable grid minimap." -msgstr "Ativar minimap em grade." +msgstr "Ativar o minimapa de grade." #: scene/gui/graph_node.cpp #, fuzzy @@ -24407,7 +24341,7 @@ msgstr "Caractere" #: scene/gui/rich_text_label.cpp msgid "BBCode" -msgstr "BBCode" +msgstr "" #: scene/gui/rich_text_label.cpp msgid "Meta Underlined" @@ -25345,9 +25279,8 @@ msgid "Minimum Spaces" msgstr "Cena Principal" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "BG" -msgstr "Plano de Fundo" +msgstr "" #: scene/resources/default_theme/default_theme.cpp msgid "FG" @@ -25726,9 +25659,8 @@ msgid "Tab FG" msgstr "Guia 1" #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Tab BG" -msgstr "Plano de Fundo da Aba" +msgstr "BG da Aba" #: scene/resources/default_theme/default_theme.cpp #, fuzzy @@ -26184,7 +26116,7 @@ msgstr "Depuração do Canal UV" #: scene/resources/environment.cpp msgid "Blur" -msgstr "Blur" +msgstr "" #: scene/resources/environment.cpp msgid "Edge Sharpness" @@ -26869,7 +26801,7 @@ msgstr "Tamanho da Radiância" #: scene/resources/sky.cpp msgid "Panorama" -msgstr "Panorama" +msgstr "" #: scene/resources/sky.cpp #, fuzzy @@ -26937,7 +26869,7 @@ msgstr "" #: scene/resources/style_box.cpp msgid "Anti Aliasing" -msgstr "Anti Aliasing" +msgstr "Anti Serrilhamento" #: scene/resources/style_box.cpp msgid "Grow Begin" @@ -27162,7 +27094,7 @@ msgstr "Margem de Ligação da Borda" #: scene/resources/world_2d.cpp msgid "Canvas" -msgstr "Canvas" +msgstr "Tela" #: servers/arvr/arvr_interface.cpp msgid "Is Primary" @@ -27244,7 +27176,7 @@ msgstr "NÃvel dB" #: servers/audio/effects/audio_effect_delay.cpp #: servers/audio/effects/audio_effect_panner.cpp msgid "Pan" -msgstr "Panoramizar" +msgstr "" #: servers/audio/effects/audio_effect_compressor.cpp #: servers/audio/effects/audio_effect_filter.cpp @@ -27298,7 +27230,7 @@ msgstr "" #: servers/audio/effects/audio_effect_distortion.cpp msgid "Drive" -msgstr "Drive" +msgstr "" #: servers/audio/effects/audio_effect_distortion.cpp #, fuzzy @@ -27349,7 +27281,7 @@ msgstr "Pré Atraso" #: servers/audio/effects/audio_effect_reverb.cpp msgid "Msec" -msgstr "Msec" +msgstr "" #: servers/audio/effects/audio_effect_reverb.cpp msgid "Room Size" @@ -27607,9 +27539,8 @@ msgid "Lossless Compression" msgstr "Compressão Sem Perda" #: servers/visual_server.cpp -#, fuzzy msgid "Force PNG" -msgstr "Forçar Push" +msgstr "Forçar PNG" #: servers/visual_server.cpp msgid "WebP Compression Level" @@ -27731,9 +27662,8 @@ msgid "Ninepatch Mode" msgstr "Modo de Interpolação" #: servers/visual_server.cpp -#, fuzzy msgid "OpenGL" -msgstr "Abrir" +msgstr "abrir" #: servers/visual_server.cpp msgid "Batching Send Null" @@ -27795,7 +27725,7 @@ msgstr "" #: servers/visual_server.cpp msgid "Flash Batching" -msgstr "" +msgstr "Loteamento de Flashes" #: servers/visual_server.cpp #, fuzzy @@ -27812,7 +27742,7 @@ msgstr "Compatibilidade" #: servers/visual_server.cpp msgid "Disable Half Float" -msgstr "" +msgstr "Desativar Meia Float" #: servers/visual_server.cpp #, fuzzy @@ -27839,7 +27769,7 @@ msgstr "Usar Encaixe Escalar" #: servers/visual_server.cpp msgid "PVS Logging" -msgstr "" +msgstr "Registro PVS" #: servers/visual_server.cpp #, fuzzy @@ -27866,9 +27796,8 @@ msgid "Max Active Spheres" msgstr "Máximo de Esferas Ativas" #: servers/visual_server.cpp -#, fuzzy msgid "Max Active Polygons" -msgstr "Mover PolÃgono" +msgstr "Máximo de PolÃgonos Ativos" #: servers/visual_server.cpp #, fuzzy @@ -27880,8 +27809,9 @@ msgid "Max Simultaneous Compiles" msgstr "Compilações Simultâneas Máximas" #: servers/visual_server.cpp +#, fuzzy msgid "Log Active Async Compiles Count" -msgstr "" +msgstr "Registro do Número de Compilações AssÃncronas Ativas" #: servers/visual_server.cpp msgid "Shader Cache Size (MB)" diff --git a/editor/translations/ro.po b/editor/translations/ro.po index e01815b513..906d6aee71 100644 --- a/editor/translations/ro.po +++ b/editor/translations/ro.po @@ -19,13 +19,14 @@ # N3mEee <n3mebusiness@gmail.com>, 2021. # Psynt <nichita@cadvegra.com>, 2022. # Ilie Adrian Avramescu <himark1977@protonmail.com>, 2022. +# Andres Ene <grassiscomplex420@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-27 21:37+0000\n" -"Last-Translator: Ilie Adrian Avramescu <himark1977@protonmail.com>\n" +"PO-Revision-Date: 2022-11-22 20:37+0000\n" +"Last-Translator: Andres Ene <grassiscomplex420@gmail.com>\n" "Language-Team: Romanian <https://hosted.weblate.org/projects/godot-engine/" "godot/ro/>\n" "Language: ro\n" @@ -34,7 +35,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " "20)) ? 1 : 2;\n" -"X-Generator: Weblate 4.14.1\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -200,9 +201,8 @@ msgid "Limits" msgstr "Limite" #: core/command_queue_mt.cpp -#, fuzzy msgid "Command Queue" -msgstr "Trage: Rotire" +msgstr "Lista de comenzi" #: core/command_queue_mt.cpp msgid "Multithreading Queue Size (KB)" @@ -313,9 +313,8 @@ msgid "Blocking Handshake" msgstr "Blocare Handshake" #: core/io/udp_server.cpp -#, fuzzy msgid "Max Pending Connections" -msgstr "Modifică Conexiunea:" +msgstr "Număr maxim de conexiuni în aÈ™teptare" #: core/math/expression.cpp modules/gdscript/gdscript_functions.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp @@ -544,9 +543,8 @@ msgid "Instrument" msgstr "" #: core/os/input_event.cpp -#, fuzzy msgid "Controller Number" -msgstr "Linia Numărul:" +msgstr "Numărul controlerului" #: core/os/input_event.cpp msgid "Controller Value" @@ -680,9 +678,8 @@ msgid "Main Run Args" msgstr "Argumente principale ale rulării" #: core/project_settings.cpp -#, fuzzy msgid "Scene Naming" -msgstr "Calea Scenei:" +msgstr "Denumirea scenei" #: core/project_settings.cpp msgid "Search In File Extensions" @@ -818,9 +815,8 @@ msgstr "Calitate" #: core/project_settings.cpp scene/gui/file_dialog.cpp #: scene/main/scene_tree.cpp scene/resources/navigation_mesh.cpp #: servers/visual_server.cpp -#, fuzzy msgid "Filters" -msgstr "Filtre:" +msgstr "Filtre" #: core/project_settings.cpp scene/main/viewport.cpp msgid "Sharpen Intensity" @@ -840,9 +836,8 @@ msgstr "Depanare" #: core/project_settings.cpp main/main.cpp modules/gdscript/gdscript.cpp #: modules/visual_script/visual_script.cpp scene/resources/dynamic_font.cpp -#, fuzzy msgid "Settings" -msgstr "Setări:" +msgstr "Setări" #: core/project_settings.cpp editor/script_editor_debugger.cpp main/main.cpp #: modules/mono/mono_gd/gd_mono.cpp @@ -1074,9 +1069,8 @@ msgstr "" #: scene/animation/animation_blend_tree.cpp scene/gui/control.cpp #: scene/main/canvas_layer.cpp scene/resources/environment.cpp #: scene/resources/material.cpp scene/resources/particles_material.cpp -#, fuzzy msgid "Scale" -msgstr "Dimensiune:" +msgstr "Scară" #: drivers/gles3/rasterizer_scene_gles3.cpp #, fuzzy @@ -1184,16 +1178,14 @@ msgstr "Timp" #: editor/animation_track_editor.cpp editor/import/resource_importer_scene.cpp #: platform/osx/export/export.cpp -#, fuzzy msgid "Location" -msgstr "Pas RotaÈ›ie:" +msgstr "LocaÈ›ie" #: editor/animation_track_editor.cpp modules/gltf/gltf_node.cpp #: scene/2d/polygon_2d.cpp scene/2d/remote_transform_2d.cpp #: scene/3d/remote_transform.cpp scene/3d/spatial.cpp scene/gui/control.cpp -#, fuzzy msgid "Rotation" -msgstr "Pas RotaÈ›ie:" +msgstr "RotaÈ›ie" #: editor/animation_track_editor.cpp editor/script_editor_debugger.cpp #: modules/visual_script/visual_script_nodes.cpp scene/gui/range.cpp @@ -1235,14 +1227,12 @@ msgid "Stream" msgstr "" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Start Offset" -msgstr "Compensare Grilă:" +msgstr "Decalaj de pornire" #: editor/animation_track_editor.cpp -#, fuzzy msgid "End Offset" -msgstr "Compensare Grilă:" +msgstr "Decalaj de sfarsire" #: editor/animation_track_editor.cpp editor/editor_settings.cpp #: editor/import/resource_importer_scene.cpp @@ -1366,14 +1356,12 @@ msgid "Remove this track." msgstr "ȘtergeÈ›i pista selectată." #: editor/animation_track_editor.cpp -#, fuzzy msgid "Time (s):" -msgstr "Timp (s): " +msgstr "Timp (s):" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Position:" -msgstr "PoziÈ›ie" +msgstr "PoziÈ›ie:" #: editor/animation_track_editor.cpp #, fuzzy @@ -1414,9 +1402,8 @@ msgid "Out-Handle:" msgstr "Setează Mâner" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Stream:" -msgstr "ÃŽnchidere curbă" +msgstr "Curent:" #: editor/animation_track_editor.cpp #, fuzzy @@ -1646,9 +1633,8 @@ msgid "Add Method Track Key" msgstr "InseraÈ›i Pistă È™i Cheie" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Method not found in object:" -msgstr "Metoda nu a fost găsită în obiect: " +msgstr "Metoda nu a fost găsită în obiect:" #: editor/animation_track_editor.cpp msgid "Anim Move Keys" @@ -2621,9 +2607,8 @@ msgid "There is no '%s' file." msgstr "Nu este niciun '%s' în filă." #: editor/editor_audio_buses.cpp -#, fuzzy msgid "Layout:" -msgstr "Schemă" +msgstr "Dispunere:" #: editor/editor_audio_buses.cpp msgid "Invalid file, not an audio bus layout." @@ -2876,9 +2861,8 @@ msgid "Failed to export project files." msgstr "Nu s-a putut porni subprocesul!" #: editor/editor_export.cpp -#, fuzzy msgid "Can't open file to read from path \"%s\"." -msgstr "Nu pot deschide fiÅŸierul pentru scris:" +msgstr "Nu se poate deschide fiÅŸierul pentru a citi din \"%s\":" #: editor/editor_export.cpp #, fuzzy @@ -3019,9 +3003,8 @@ msgid "The given export path doesn't exist." msgstr "FiÈ™ierul nu există." #: editor/editor_export.cpp platform/javascript/export/export.cpp -#, fuzzy msgid "Template file not found: \"%s\"." -msgstr "FiÈ™ierul È™ablon nu a fost găsit:" +msgstr "FiÈ™ierul È™ablonului nu a fost găsit: \"%s\"." #: editor/editor_export.cpp #, fuzzy @@ -3325,9 +3308,8 @@ msgid "Access" msgstr "Succes!" #: editor/editor_file_dialog.cpp editor/editor_settings.cpp -#, fuzzy msgid "Display Mode" -msgstr "Mod redare:" +msgstr "Modul de afiÈ™are" #: editor/editor_file_dialog.cpp #: editor/import/resource_importer_layered_texture.cpp @@ -3347,17 +3329,15 @@ msgstr "Mod ÃŽn Jur" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp #, fuzzy msgid "Current Dir" -msgstr "Curent:" +msgstr "Dir curent" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Current File" -msgstr "Profil Curent:" +msgstr "FiÈ™ier curent" #: editor/editor_file_dialog.cpp scene/gui/file_dialog.cpp -#, fuzzy msgid "Current Path" -msgstr "Curent:" +msgstr "Calea curentă" #: editor/editor_file_dialog.cpp editor/editor_settings.cpp #: scene/gui/file_dialog.cpp @@ -4930,9 +4910,8 @@ msgid "Install from file" msgstr "Instalează Din FiÈ™ier" #: editor/editor_node.cpp -#, fuzzy msgid "Select android sources file" -msgstr "Selectează un Mesh Sursă:" +msgstr "Selectează fisierele sursa android" #: editor/editor_node.cpp msgid "" @@ -5080,9 +5059,8 @@ msgstr "Actualizare" #: editor/editor_plugin_settings.cpp platform/android/export/export_plugin.cpp #: platform/iphone/export/export.cpp platform/osx/export/export.cpp #: platform/uwp/export/export.cpp -#, fuzzy msgid "Version" -msgstr "Versiune:" +msgstr "Versiune" #: editor/editor_plugin_settings.cpp #, fuzzy @@ -5280,9 +5258,8 @@ msgstr "" #: modules/visual_script/visual_script_func_nodes.cpp #: modules/visual_script/visual_script_nodes.cpp #: modules/visual_script/visual_script_yield_nodes.cpp -#, fuzzy msgid "Base Type" -msgstr "Modificare tip bază:" +msgstr "Tip de bază" #: editor/editor_resource_picker.cpp #, fuzzy @@ -5379,9 +5356,8 @@ msgid "Font Hinting" msgstr "" #: editor/editor_settings.cpp -#, fuzzy msgid "Main Font" -msgstr "Caracteristici active:" +msgstr "Font principal" #: editor/editor_settings.cpp msgid "Main Font Bold" @@ -5642,9 +5618,8 @@ msgid "Appearance" msgstr "" #: editor/editor_settings.cpp scene/gui/text_edit.cpp -#, fuzzy msgid "Show Line Numbers" -msgstr "Linia Numărul:" +msgstr "Afiseaza numerele liniei" #: editor/editor_settings.cpp #, fuzzy @@ -5694,9 +5669,8 @@ msgid "Show Members Overview" msgstr "" #: editor/editor_settings.cpp editor/plugins/script_editor_plugin.cpp -#, fuzzy msgid "Files" -msgstr "FiÈ™ier:" +msgstr "FiÈ™iere" #: editor/editor_settings.cpp msgid "Trim Trailing Whitespace On Save" @@ -5867,14 +5841,12 @@ msgid "Shape" msgstr "" #: editor/editor_settings.cpp -#, fuzzy msgid "Primary Grid Steps" -msgstr "Pas Grilă:" +msgstr "PaÈ™i de grilă primară" #: editor/editor_settings.cpp -#, fuzzy msgid "Grid Size" -msgstr "Pas Grilă:" +msgstr "Dimensiunea grilei" #: editor/editor_settings.cpp msgid "Grid Division Level Max" @@ -6045,9 +6017,8 @@ msgid "Bone Color 2" msgstr "RedenumiÅ£i Autoload" #: editor/editor_settings.cpp -#, fuzzy msgid "Bone Selected Color" -msgstr "Configură Profilul Selectat:" +msgstr "Culoarea osului selectat" #: editor/editor_settings.cpp msgid "Bone IK Color" @@ -6058,9 +6029,8 @@ msgid "Bone Outline Color" msgstr "" #: editor/editor_settings.cpp -#, fuzzy msgid "Bone Outline Size" -msgstr "Dimensiunea Conturului:" +msgstr "Dimensiunea conturului osului" #: editor/editor_settings.cpp msgid "Viewport Border Color" @@ -6198,9 +6168,8 @@ msgstr "" #. TRANSLATORS: Project Manager here refers to the tool used to create/manage Godot projects. #: editor/editor_settings.cpp -#, fuzzy msgid "Sorting Order" -msgstr "Redenumind directorul:" +msgstr "Ordinea de sortare" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Symbol Color" @@ -6215,9 +6184,8 @@ msgid "Control Flow Keyword Color" msgstr "" #: editor/editor_settings.cpp -#, fuzzy msgid "Base Type Color" -msgstr "Modificare tip bază:" +msgstr "Culoare tip de bază" #: editor/editor_settings.cpp msgid "Engine Type Color" @@ -6270,14 +6238,12 @@ msgid "Text Color" msgstr "" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Line Number Color" -msgstr "Linia Numărul:" +msgstr "Culoare numărul liniei" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Safe Line Number Color" -msgstr "Linia Numărul:" +msgstr "Culoarea numărului liniei sigură" #: editor/editor_settings.cpp scene/resources/default_theme/default_theme.cpp msgid "Caret Color" @@ -6429,17 +6395,15 @@ msgstr "Se conectează la Oglinda..." #: editor/export_template_manager.cpp #, fuzzy msgid "Can't resolve the requested address." -msgstr "Nu se poate rezolva numele gazdei:" +msgstr "Nu se poate rezolva adresa solicitată." #: editor/export_template_manager.cpp -#, fuzzy msgid "Can't connect to the mirror." -msgstr "Nu se poate conecta la gazda:" +msgstr "Nu se poate conecta la oglindă." #: editor/export_template_manager.cpp -#, fuzzy msgid "No response from the mirror." -msgstr "Nciun răspuns de la gazda:" +msgstr "Niciun răspuns de la oglinda." #: editor/export_template_manager.cpp #: editor/plugins/asset_library_editor_plugin.cpp @@ -6453,9 +6417,8 @@ msgid "Request ended up in a redirect loop." msgstr "Cerere eÈ™uată, prea multe redirecÈ›ionări" #: editor/export_template_manager.cpp -#, fuzzy msgid "Request failed:" -msgstr "Cerere EÈ™uată." +msgstr "Cerere EÈ™uată:" #: editor/export_template_manager.cpp msgid "Download complete; extracting templates..." @@ -6604,9 +6567,8 @@ msgid "Uninstall templates for the current version." msgstr "" #: editor/export_template_manager.cpp -#, fuzzy msgid "Download from:" -msgstr "Eroare Descărcare" +msgstr "DescărcaÈ›i din:" #: editor/export_template_manager.cpp #, fuzzy @@ -7098,9 +7060,8 @@ msgstr "" #: editor/import/resource_importer_layered_texture.cpp #: editor/import/resource_importer_texture.cpp scene/2d/light_2d.cpp #: scene/gui/control.cpp -#, fuzzy msgid "Filter" -msgstr "Filtre:" +msgstr "Filtru:" #: editor/import/resource_importer_layered_texture.cpp #: editor/import/resource_importer_texture.cpp @@ -7139,9 +7100,8 @@ msgid "Vertical" msgstr "Mută ghidul vertical" #: editor/import/resource_importer_obj.cpp -#, fuzzy msgid "Generate Tangents" -msgstr "Număr de Puncte Generate:" +msgstr "Generează tangente" #: editor/import/resource_importer_obj.cpp #, fuzzy @@ -7217,12 +7177,11 @@ msgstr "Tip Membru" #: editor/import/resource_importer_scene.cpp #, fuzzy msgid "Root Name" -msgstr "Nume Nod:" +msgstr "Nume rădăcină" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Root Scale" -msgstr "Dimensiune:" +msgstr "Dimensiune Radacina" #: editor/import/resource_importer_scene.cpp #, fuzzy @@ -7230,9 +7189,8 @@ msgid "Custom Script" msgstr "Creează Nod" #: editor/import/resource_importer_scene.cpp scene/resources/texture.cpp -#, fuzzy msgid "Storage" -msgstr "FiÅŸierul se Stochează:" +msgstr "Stochare" #: editor/import/resource_importer_scene.cpp msgid "Use Legacy Names" @@ -7318,9 +7276,8 @@ msgid "Enabled" msgstr "ActivaÈ›i" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Max Linear Error" -msgstr "Eroare Lineară Max:" +msgstr "Eroare liniară maximă" #: editor/import/resource_importer_scene.cpp #, fuzzy @@ -7328,9 +7285,8 @@ msgid "Max Angular Error" msgstr "Eroare Angulară Max:" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Max Angle" -msgstr "Valoare:" +msgstr "Unghiul maxim" #: editor/import/resource_importer_scene.cpp #, fuzzy @@ -7338,16 +7294,14 @@ msgid "Remove Unused Tracks" msgstr "Elimină Pista Anim" #: editor/import/resource_importer_scene.cpp -#, fuzzy msgid "Clips" -msgstr "SecvenÈ›e Anim:" +msgstr "Clipuri" #: editor/import/resource_importer_scene.cpp scene/2d/cpu_particles_2d.cpp #: scene/2d/particles_2d.cpp scene/3d/area.cpp scene/3d/cpu_particles.cpp #: scene/3d/particles.cpp scene/resources/environment.cpp -#, fuzzy msgid "Amount" -msgstr "Cantitate:" +msgstr "Cantitate" #: editor/import/resource_importer_scene.cpp #: editor/plugins/mesh_library_editor_plugin.cpp @@ -7455,9 +7409,8 @@ msgid "Invert Color" msgstr "Culori de Emisie" #: editor/import/resource_importer_texture.cpp -#, fuzzy msgid "Normal Map Invert Y" -msgstr "Dimensiune Aleatorie:" +msgstr "Hartă normală inversează Y" #: editor/import/resource_importer_texture.cpp #, fuzzy @@ -7479,9 +7432,8 @@ msgid "" msgstr "" #: editor/import/resource_importer_texture_atlas.cpp -#, fuzzy msgid "Atlas File" -msgstr "Dimensiunea Conturului:" +msgstr "FiÈ™ierul Atlasului" #: editor/import/resource_importer_texture_atlas.cpp #, fuzzy @@ -7498,9 +7450,8 @@ msgid "Trim Alpha Border From Region" msgstr "" #: editor/import/resource_importer_wav.cpp scene/2d/physics_body_2d.cpp -#, fuzzy msgid "Force" -msgstr "Mesh Sursă:" +msgstr "Forță" #: editor/import/resource_importer_wav.cpp msgid "8 Bit" @@ -7527,9 +7478,8 @@ msgid "Trim" msgstr "" #: editor/import/resource_importer_wav.cpp -#, fuzzy msgid "Normalize" -msgstr "Dimensiune Aleatorie:" +msgstr "NormalizaÈ›i" #: editor/import/resource_importer_wav.cpp #: scene/resources/audio_stream_sample.cpp @@ -7633,9 +7583,8 @@ msgid "Capitalized" msgstr "Proprietăți" #: editor/inspector_dock.cpp -#, fuzzy msgid "Localized" -msgstr "Dimensiune Aleatorie:" +msgstr "Localizat" #: editor/inspector_dock.cpp msgid "Localization not available for current language." @@ -7982,9 +7931,8 @@ msgid "Blend:" msgstr "Amestec:" #: editor/plugins/animation_blend_tree_editor_plugin.cpp -#, fuzzy msgid "Parameter Changed:" -msgstr "Modificări ale Actualizării" +msgstr "Parametru modificat:" #: editor/plugins/animation_blend_tree_editor_plugin.cpp #: editor/plugins/animation_tree_player_editor_plugin.cpp @@ -8402,9 +8350,8 @@ msgid "Set the end animation. This is useful for sub-transitions." msgstr "" #: editor/plugins/animation_state_machine_editor.cpp -#, fuzzy msgid "Transition:" -msgstr "TranziÈ›ie: " +msgstr "TranziÈ›ie:" #: editor/plugins/animation_state_machine_editor.cpp msgid "Play Mode:" @@ -8673,7 +8620,7 @@ msgstr "Eroare Descărcare" #: editor/plugins/asset_library_editor_plugin.cpp #, fuzzy msgid "Available URLs" -msgstr "Profile Disponibile:" +msgstr "URL-uri disponibile" #: editor/plugins/asset_library_editor_plugin.cpp msgid "Download for this asset is already in progress!" @@ -9803,9 +9750,8 @@ msgstr "" #: editor/plugins/item_list_editor_plugin.cpp #: scene/resources/default_theme/default_theme.cpp -#, fuzzy msgid "Separator" -msgstr "Enumerări:" +msgstr "Separator" #: editor/plugins/item_list_editor_plugin.cpp msgid "Item %d" @@ -10237,9 +10183,8 @@ msgid "Volume" msgstr "Volum" #: editor/plugins/particles_editor_plugin.cpp -#, fuzzy msgid "Emission Source:" -msgstr "Sursă de Emisie: " +msgstr "Sursă de Emisie:" #: editor/plugins/particles_editor_plugin.cpp msgid "A processor material of type 'ParticlesMaterial' is required." @@ -10659,9 +10604,8 @@ msgid "Flip Portals" msgstr "" #: editor/plugins/room_manager_editor_plugin.cpp -#, fuzzy msgid "Room Generate Points" -msgstr "Număr de Puncte Generate:" +msgstr "Cameră Genereaza puncte" #: editor/plugins/room_manager_editor_plugin.cpp #, fuzzy @@ -13303,9 +13247,10 @@ msgstr "OpÈ›iuni Snapping" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Compensare Grilă:" @@ -14712,13 +14657,13 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "" +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Imposibil de deschis '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -18774,9 +18719,8 @@ msgid "Get Self" msgstr "Propriu" #: modules/visual_script/visual_script_nodes.cpp -#, fuzzy msgid "CustomNode" -msgstr "Creează Nod" +msgstr "Nod Custom" #: modules/visual_script/visual_script_nodes.cpp msgid "Custom node has no _step() method, can't process graph." @@ -22635,7 +22579,7 @@ msgstr "" #: scene/3d/camera.cpp scene/3d/light.cpp scene/3d/reflection_probe.cpp msgid "Cull Mask" -msgstr "" +msgstr "Masca Cull" #: scene/3d/camera.cpp #, fuzzy @@ -23987,6 +23931,15 @@ msgstr "Eroare!" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Se importă:" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "Geometria" @@ -24779,7 +24732,7 @@ msgstr "" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Caret" -msgstr "" +msgstr "Caret" #: scene/gui/line_edit.cpp scene/gui/text_edit.cpp msgid "Blink" @@ -26737,7 +26690,7 @@ msgstr "" #: scene/resources/environment.cpp msgid "Blur" -msgstr "" +msgstr "Blur" #: scene/resources/environment.cpp msgid "Edge Sharpness" diff --git a/editor/translations/ru.po b/editor/translations/ru.po index 0432de4da5..d746bb61ad 100644 --- a/editor/translations/ru.po +++ b/editor/translations/ru.po @@ -126,13 +126,14 @@ # Дмитрий <Dimega@inbox.ru>, 2022. # Vladimir Kirillovskiy <vladimir.kirillovskiy@gmail.com>, 2022. # Evgeniy Khramov <thejenjagamertjg@gmail.com>, 2022. +# kirill blaze <kirillblaze2@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-27 21:37+0000\n" -"Last-Translator: Evgeniy Khramov <thejenjagamertjg@gmail.com>\n" +"PO-Revision-Date: 2022-11-25 12:13+0000\n" +"Last-Translator: Vladimir Kirillovskiy <vladimir.kirillovskiy@gmail.com>\n" "Language-Team: Russian <https://hosted.weblate.org/projects/godot-engine/" "godot/ru/>\n" "Language: ru\n" @@ -141,7 +142,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" -"X-Generator: Weblate 4.14.1\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -1298,9 +1299,8 @@ msgid "Animation" msgstr "ÐнимациÑ" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Easing" -msgstr "Переход Ð’-ИЗ" +msgstr "Облегчение" #: editor/animation_track_editor.cpp msgid "Anim Multi Change Keyframe Time" @@ -1443,12 +1443,10 @@ msgid "Easing:" msgstr "Переход Ð’-ИЗ:" #: editor/animation_track_editor.cpp -#, fuzzy msgid "In-Handle:" msgstr "Обработчик Ввода:" #: editor/animation_track_editor.cpp -#, fuzzy msgid "Out-Handle:" msgstr "Обработчик Вывода:" @@ -11695,9 +11693,8 @@ msgid "New Animation" msgstr "ÐÐ¾Ð²Ð°Ñ Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ñ" #: editor/plugins/sprite_frames_editor_plugin.cpp -#, fuzzy msgid "Filter animations" -msgstr "Фильтровать анимации" +msgstr "Фильтр анимации" #: editor/plugins/sprite_frames_editor_plugin.cpp msgid "Speed:" @@ -12878,9 +12875,10 @@ msgstr "Параметры привÑзки" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "Смещение" @@ -12911,9 +12909,8 @@ msgid "Texture" msgstr "ТекÑтура" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Tex Offset" -msgstr "Смещение байтов" +msgstr "Смещение текÑтуры" #: editor/plugins/tile_set_editor_plugin.cpp modules/csg/csg_shape.cpp #: scene/2d/canvas_item.cpp scene/2d/particles_2d.cpp @@ -12931,44 +12928,36 @@ msgid "Tile Mode" msgstr "Режим плитки" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Autotile Bitmask Mode" msgstr "Режим битовой маÑки" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Subtile Size" msgstr "Размер контура" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Subtile Spacing" msgstr "МежÑтрочный интервал" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Occluder Offset" -msgstr "ОтверÑтие окклюдера" +msgstr "Сдвиг окклюдера" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Navigation Offset" msgstr "ЧувÑтвительноÑÑ‚ÑŒ навигации" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Shape Offset" -msgstr "Базовое Ñмещение" +msgstr "Смещение Формы" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Shape Transform" -msgstr "Преобразование" +msgstr "ТранÑÑ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ñ„Ð¾Ñ€Ð¼Ñ‹" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Selected Collision" -msgstr "ИÑпользовать Ñтолкновение" +msgstr "Выделить Ñтолкновение" #: editor/plugins/tile_set_editor_plugin.cpp #, fuzzy @@ -12991,9 +12980,8 @@ msgid "Selected Occlusion" msgstr "Выделение" #: editor/plugins/tile_set_editor_plugin.cpp -#, fuzzy msgid "Tileset Script" -msgstr "Фильтр Ñценариев" +msgstr "Скрипт набора тайлов" #: editor/plugins/tile_set_editor_plugin.cpp msgid "TileSet" @@ -14305,16 +14293,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Ðеверный путь к проекту (Что-то изменили?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Ðе удалоÑÑŒ загрузить project.godot в пути проекта (ошибка %d). Возможно, он " "отÑутÑтвует или поврежден." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "Ðе удалоÑÑŒ изменить project.godot в папке проекта." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Ðе удаётÑÑ Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚ÑŒ проект в «%s»." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -19322,11 +19311,11 @@ msgstr "" #: platform/javascript/export/export.cpp msgid "For Mobile" -msgstr "" +msgstr "Ð”Ð»Ñ Ð¼Ð¾Ð±Ð¸Ð»ÑŒÐ½Ñ‹Ñ… уÑтройÑтв" #: platform/javascript/export/export.cpp msgid "HTML" -msgstr "" +msgstr "HTML" #: platform/javascript/export/export.cpp msgid "Export Icon" @@ -23386,6 +23375,16 @@ msgstr "ÐœÐ°ÐºÑ Ð¡Ð¸Ð»Ð°" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Сортировать" + +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Use AABB Center" +msgstr "ИÑпользовать Ambient" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "ГеометриÑ" @@ -25895,9 +25894,8 @@ msgid "Height Curve" msgstr "ÐšÑ€Ð¸Ð²Ð°Ñ Ð²Ñ‹Ñоты" #: scene/resources/environment.cpp -#, fuzzy msgid "Tonemap" -msgstr "ПереназначениÑ" +msgstr "Карта тональноÑти" #: scene/resources/environment.cpp #, fuzzy @@ -26011,7 +26009,7 @@ msgstr "" #: scene/resources/environment.cpp #: servers/audio/effects/audio_effect_chorus.cpp msgid "2" -msgstr "" +msgstr "2" #: scene/resources/environment.cpp #: servers/audio/effects/audio_effect_chorus.cpp diff --git a/editor/translations/si.po b/editor/translations/si.po index 5e99894cf1..d0fcba8cfd 100644 --- a/editor/translations/si.po +++ b/editor/translations/si.po @@ -12562,9 +12562,10 @@ msgstr "à·à·Šâ€à¶»à·’à¶:" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13926,12 +13927,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22683,6 +22683,15 @@ msgstr "කà·à¶©à¶´à¶" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "නිවේà·à¶± මà·à¶¯à·’ලිය" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/sk.po b/editor/translations/sk.po index ebd2256728..43c2fa6b5b 100644 --- a/editor/translations/sk.po +++ b/editor/translations/sk.po @@ -13245,9 +13245,10 @@ msgstr "Možnosti Prichytávania" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Odchýlka Mriežky:" @@ -14658,12 +14659,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -23921,6 +23921,15 @@ msgstr "Chyba!" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Importovanie:" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/sl.po b/editor/translations/sl.po index f0e227266d..864dac1b8d 100644 --- a/editor/translations/sl.po +++ b/editor/translations/sl.po @@ -13421,9 +13421,10 @@ msgstr "Možnosti pripenjanja" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Mrežni Zamik:" @@ -14850,13 +14851,13 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "" +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Ni mogoÄe odpreti '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -24167,6 +24168,15 @@ msgstr "Napaka!" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Uvažanje:" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/sq.po b/editor/translations/sq.po index f8ffd0e88d..1215b7dbcb 100644 --- a/editor/translations/sq.po +++ b/editor/translations/sq.po @@ -13106,9 +13106,10 @@ msgstr "Përshkrimi i Klasës" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14502,12 +14503,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -23576,6 +23576,15 @@ msgstr "Pasqyrë" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Duke Importuar:" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/sr_Cyrl.po b/editor/translations/sr_Cyrl.po index f2f6a5bf09..419e33c494 100644 --- a/editor/translations/sr_Cyrl.po +++ b/editor/translations/sr_Cyrl.po @@ -14116,9 +14116,10 @@ msgstr "ПоÑтавке Залепљавања" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "ОфÑет:" @@ -15791,16 +15792,15 @@ msgstr "Ðеважећа путања пројекта(нешто је Ð¸Ð·Ð¼ÐµÑ #: editor/project_manager.cpp #, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "ÐеуÑпешно учитавање project.godot-а у његовој путањи (грешка %d). Могуће да " "нешто недоÑтаје или је корумпирано." #: editor/project_manager.cpp #, fuzzy -msgid "Couldn't edit project.godot in project path." -msgstr "ÐеуÑпешна измена project.godot-а у путањи пројекта." +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Ðе могу отворити '%s'." #: editor/project_manager.cpp #, fuzzy @@ -25808,6 +25808,15 @@ msgstr "Грешка" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Сортирање" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/sr_Latn.po b/editor/translations/sr_Latn.po index 8af5b1daaf..7973756c7e 100644 --- a/editor/translations/sr_Latn.po +++ b/editor/translations/sr_Latn.po @@ -12586,9 +12586,10 @@ msgstr "KaÄenje:" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13957,12 +13958,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22819,6 +22819,15 @@ msgstr "%s GreÅ¡ka" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Postavke UreÄ‘ivaÄa..." + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/sv.po b/editor/translations/sv.po index 44b6fcf8b6..04965e6c69 100644 --- a/editor/translations/sv.po +++ b/editor/translations/sv.po @@ -32,8 +32,8 @@ msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-08-30 03:11+0000\n" -"Last-Translator: Björn Ã…kesson <bjorn.akesson@gmail.com>\n" +"PO-Revision-Date: 2022-09-29 19:16+0000\n" +"Last-Translator: Kristoffer Grundström <swedishsailfishosuser@tutanota.com>\n" "Language-Team: Swedish <https://hosted.weblate.org/projects/godot-engine/" "godot/sv/>\n" "Language: sv\n" @@ -41,7 +41,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.14.1-dev\n" +"X-Generator: Weblate 4.14.1\n" #: core/bind/core_bind.cpp main/main.cpp #, fuzzy @@ -7177,7 +7177,7 @@ msgstr "" #: editor/import/resource_importer_layered_texture.cpp #: editor/import/resource_importer_texture.cpp msgid "sRGB" -msgstr "" +msgstr "sRGB" #: editor/import/resource_importer_layered_texture.cpp #, fuzzy @@ -13310,9 +13310,10 @@ msgstr "Alternativ" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13515,7 +13516,7 @@ msgstr "" #: editor/plugins/version_control_editor_plugin.cpp msgid "SSH Passphrase" -msgstr "" +msgstr "Lösenordsfras för SSH" #: editor/plugins/version_control_editor_plugin.cpp #, fuzzy @@ -14713,13 +14714,13 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "" +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Kan inte öppna projekt vid '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -18486,7 +18487,7 @@ msgstr "" #: modules/visual_script/visual_script_flow_control.cpp msgid "While" -msgstr "" +msgstr "Medans" #: modules/visual_script/visual_script_flow_control.cpp msgid "while (cond):" @@ -23988,6 +23989,15 @@ msgstr "Fel" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Sortera" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/te.po b/editor/translations/te.po index fe9f95b213..22474ca4ba 100644 --- a/editor/translations/te.po +++ b/editor/translations/te.po @@ -12382,9 +12382,10 @@ msgstr "గణనలà±" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -13718,12 +13719,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -22285,6 +22285,15 @@ msgstr "" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "à°¸à±à°¥à°¿à°°à°¾à°‚కాలà±" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/th.po b/editor/translations/th.po index 6e4b0e578f..5f4ee76a4d 100644 --- a/editor/translations/th.po +++ b/editor/translations/th.po @@ -13,13 +13,14 @@ # PT 07 <porton555@gmail.com>, 2021. # SysError_ <ictsanook@hotmail.com>, 2021. # Kanda Ninthfish <akkhaporn@gmail.com>, 2022. +# Absurdnoobman <jakkalin91@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-04-18 09:10+0000\n" -"Last-Translator: Kanda Ninthfish <akkhaporn@gmail.com>\n" +"PO-Revision-Date: 2022-11-26 14:36+0000\n" +"Last-Translator: Absurdnoobman <jakkalin91@gmail.com>\n" "Language-Team: Thai <https://hosted.weblate.org/projects/godot-engine/godot/" "th/>\n" "Language: th\n" @@ -27,7 +28,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.12-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -48,9 +49,8 @@ msgid "Exit Code" msgstr "" #: core/bind/core_bind.cpp -#, fuzzy msgid "V-Sync Enabled" -msgstr "เปิด" +msgstr "เปิด V-Sync" #: core/bind/core_bind.cpp main/main.cpp msgid "V-Sync Via Compositor" @@ -114,14 +114,13 @@ msgid "Maximized" msgstr "" #: core/bind/core_bind.cpp -#, fuzzy msgid "Minimized" -msgstr "เริ่มต้น" +msgstr "ย่à¸à¸‚นาด" #: core/bind/core_bind.cpp core/project_settings.cpp scene/gui/dialogs.cpp #: scene/gui/graph_node.cpp msgid "Resizable" -msgstr "" +msgstr "ปรับขนาดได้" #: core/bind/core_bind.cpp core/os/input_event.cpp scene/2d/node_2d.cpp #: scene/2d/physics_body_2d.cpp scene/2d/remote_transform_2d.cpp @@ -185,12 +184,11 @@ msgstr "ผิดพลาด" #: core/bind/core_bind.cpp #, fuzzy msgid "Error String" -msgstr "ผิดพลาดขณะบันทึà¸" +msgstr "String ผิดพลาด" #: core/bind/core_bind.cpp -#, fuzzy msgid "Error Line" -msgstr "ผิดพลาดขณะบันทึà¸" +msgstr "บรรทัดผิดพลาด" #: core/bind/core_bind.cpp #, fuzzy @@ -213,9 +211,8 @@ msgid "Limits" msgstr "" #: core/command_queue_mt.cpp -#, fuzzy msgid "Command Queue" -msgstr "ctrl: หมุน" +msgstr "คิวคำสั่ง" #: core/command_queue_mt.cpp msgid "Multithreading Queue Size (KB)" @@ -232,7 +229,7 @@ msgstr "ฟังà¸à¹Œà¸Šà¸±à¸™" #: core/image.cpp core/packed_data_container.cpp scene/2d/polygon_2d.cpp #: scene/3d/baked_lightmap.cpp scene/3d/gi_probe.cpp msgid "Data" -msgstr "" +msgstr "ข้à¸à¸¡à¸¹à¸¥" #: core/io/file_access_network.cpp core/register_core_types.cpp #: editor/editor_file_dialog.cpp editor/editor_settings.cpp main/main.cpp @@ -13201,9 +13198,10 @@ msgstr "ตัวเลืà¸à¸à¸à¸²à¸£à¸ªà¹à¸™à¸›" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "เลื่à¸à¸™:" @@ -14635,15 +14633,16 @@ msgid "Invalid project path (changed anything?)." msgstr "ตำà¹à¸«à¸™à¹ˆà¸‡à¹‚ปรเจà¸à¸•à¹Œà¸œà¸´à¸”พลาด (ได้à¹à¸à¹‰à¹„ขà¸à¸°à¹„รไปหรืà¸à¹„ม่?)" #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "โหลดไฟล์ project.godot ในโฟลเดà¸à¸£à¹Œà¹‚ปรเจà¸à¸•à¹Œà¹„ม่ได้ (ข้à¸à¸œà¸´à¸”พลาด %d) ไฟล์à¸à¸²à¸ˆà¸ªà¸¹à¸à¸«à¸²à¸¢à¸«à¸£à¸·à¸à¹€à¸ªà¸µà¸¢à¸«à¸²à¸¢" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "à¹à¸à¹‰à¹„ขไฟล์ project.godot ไม่ได้" +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "ไม่สามารถเปิดโปรเจà¸à¸•à¹Œà¸—ี่ '%s'" #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -24074,6 +24073,15 @@ msgstr "ผิดพลาด" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "เรียง" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" @@ -26878,7 +26886,7 @@ msgstr "ดีบั๊ภUV" #: scene/resources/environment.cpp msgid "Blur" -msgstr "" +msgstr "เบลà¸à¸£à¹Œ" #: scene/resources/environment.cpp msgid "Edge Sharpness" diff --git a/editor/translations/tl.po b/editor/translations/tl.po index bf39f11166..670e52056d 100644 --- a/editor/translations/tl.po +++ b/editor/translations/tl.po @@ -12724,9 +12724,10 @@ msgstr "Pagsasaayos ng Kalansay" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Usog:" @@ -14099,12 +14100,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -23165,6 +23165,15 @@ msgstr "Nabigo" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Pagkakaayos" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/tr.po b/editor/translations/tr.po index 8cbf35a18b..ac4b509150 100644 --- a/editor/translations/tr.po +++ b/editor/translations/tr.po @@ -85,13 +85,17 @@ # bsr <bsndrn16@gmail.com>, 2022. # Ramazan SANCAR <ramazansancar4545@gmail.com>, 2022. # Burak Orcun OZKABLAN <borcunozkablan@gmail.com>, 2022. +# arda4888 <ardagaming2006@gmail.com>, 2022. +# Dream Drunk <myemailpoly149@gmail.com>, 2022. +# alpdenthedev <ekrem_ekrem_45@hotmail.com>, 2022. +# Muhammed Said Gülberk <msgulberk@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-11 22:22+0000\n" -"Last-Translator: Burak Orcun OZKABLAN <borcunozkablan@gmail.com>\n" +"PO-Revision-Date: 2022-12-05 10:16+0000\n" +"Last-Translator: Muhammed Said Gülberk <msgulberk@gmail.com>\n" "Language-Team: Turkish <https://hosted.weblate.org/projects/godot-engine/" "godot/tr/>\n" "Language: tr\n" @@ -99,11 +103,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.14.1-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" -msgstr "Tablet Sürücü" +msgstr "Tablet Sürücüsü" #: core/bind/core_bind.cpp msgid "Clipboard" @@ -114,7 +118,6 @@ msgid "Current Screen" msgstr "Åžu anki Ekran" #: core/bind/core_bind.cpp -#, fuzzy msgid "Exit Code" msgstr "Çıkış Kodu" @@ -132,11 +135,11 @@ msgstr "Delta YumuÅŸatma" #: core/bind/core_bind.cpp msgid "Low Processor Usage Mode" -msgstr "Düşük Ä°ÅŸlemci Kullanım Modu" +msgstr "Ä°ÅŸlemci Dostu Mod" #: core/bind/core_bind.cpp msgid "Low Processor Usage Mode Sleep (µsec)" -msgstr "Düşük Ä°ÅŸlemci Kullanımı Uyku Modu (μsn)" +msgstr "Uykulu Ä°ÅŸlemci Modu (µsec)" #: core/bind/core_bind.cpp main/main.cpp platform/uwp/os_uwp.cpp msgid "Keep Screen On" @@ -152,7 +155,7 @@ msgstr "Maksimum Ekran Boyutu" #: core/bind/core_bind.cpp msgid "Screen Orientation" -msgstr "Ekran Yönü" +msgstr "Ekran oryantasyonu" #: core/bind/core_bind.cpp core/project_settings.cpp main/main.cpp #: platform/uwp/os_uwp.cpp @@ -161,7 +164,7 @@ msgstr "Pencere" #: core/bind/core_bind.cpp core/project_settings.cpp msgid "Borderless" -msgstr "Kenarlıksız" +msgstr "Kenarsız" #: core/bind/core_bind.cpp msgid "Per Pixel Transparency Enabled" @@ -333,7 +336,7 @@ msgstr "AÄŸ Profilcisi" #: core/io/multiplayer_api.cpp scene/animation/animation_player.cpp msgid "Root Node" -msgstr "Kök Düğüm Adı" +msgstr "Kök Düğümü" #: core/io/networked_multiplayer_peer.cpp msgid "Refuse New Connections" @@ -361,7 +364,7 @@ msgstr "Akış EÅŸi" #: core/io/stream_peer.cpp msgid "Big Endian" -msgstr "big-endian" +msgstr "Big Endian" #: core/io/stream_peer.cpp msgid "Data Array" @@ -369,7 +372,7 @@ msgstr "Veri Dizisi" #: core/io/stream_peer_ssl.cpp msgid "Blocking Handshake" -msgstr "TokalaÅŸmayı blokla" +msgstr "El Sıkışmayı Blokla" #: core/io/udp_server.cpp msgid "Max Pending Connections" @@ -388,7 +391,7 @@ msgstr "1(bir) karakter uzunluÄŸunda bir dize bekleniyor ." #: modules/mono/glue/gd_glue.cpp #: modules/visual_script/visual_script_builtin_funcs.cpp msgid "Not enough bytes for decoding bytes, or invalid format." -msgstr "Baytları çözümlemek için yetersiz miktarda bayt ya da geçersiz format." +msgstr "Baytları çözümlemek için yetersiz bayt miktarı veya geçersiz format." #: core/math/expression.cpp msgid "Invalid input %d (not passed) in expression" @@ -396,7 +399,7 @@ msgstr "Ä°fadede geçersiz giriÅŸ %d" #: core/math/expression.cpp msgid "self can't be used because instance is null (not passed)" -msgstr "self kullanılamaz çünkü örnek boÅŸ (geçilmedi)" +msgstr "örnek boÅŸ olduÄŸu için self kullanılamaz (geçilmedi)" #: core/math/expression.cpp msgid "Invalid operands to operator %s, %s and %s." @@ -7222,6 +7225,9 @@ 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: Dokunun 3D'de normal haritası olarak kullanıldığı algılandı. Bellek " +"kullanımını azaltmak için kırmızı-yeÅŸil doku sıkıştırma etkinleÅŸtiriliyor. " +"(mavi kanal kullanılmıyor)." #: editor/import/resource_importer_texture.cpp #, fuzzy @@ -7251,7 +7257,7 @@ msgstr "HDR Modu" #: editor/import/resource_importer_texture.cpp msgid "BPTC LDR" -msgstr "" +msgstr "BPTC LDR" #: editor/import/resource_importer_texture.cpp #: editor/plugins/tile_set_editor_plugin.cpp scene/2d/cpu_particles_2d.cpp @@ -7359,7 +7365,7 @@ msgstr "Maximum Hz Oranı" #: editor/import/resource_importer_wav.cpp msgid "Trim" -msgstr "" +msgstr "Kırp" #: editor/import/resource_importer_wav.cpp msgid "Normalize" @@ -9535,7 +9541,7 @@ msgstr "Simge" #: editor/plugins/item_list_editor_plugin.cpp msgid "ID" -msgstr "" +msgstr "ID" #: editor/plugins/item_list_editor_plugin.cpp #: scene/resources/default_theme/default_theme.cpp @@ -10708,7 +10714,7 @@ msgstr "Script Ä°simlerini Listele" #: editor/plugins/script_editor_plugin.cpp msgid "Exec Flags" -msgstr "" +msgstr "Çalıştırma Bayrakları" #: editor/plugins/script_editor_plugin.cpp msgid "Clear Recent Scripts" @@ -12891,9 +12897,10 @@ msgstr "Hizalama Ayarları" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "Kaydırma" @@ -14319,16 +14326,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Geçersiz proje yolu (bir ÅŸey deÄŸiÅŸti mi?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Proje yolundaki proje.godot düzenlenemedi (error %d). Eksik veya bozulmuÅŸ " "olabilir." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "proje yolundaki proje.godot düzenlenemedi." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "'%s' adresindeki proje açılamıyor." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -15326,6 +15334,9 @@ msgid "" "To save this branch into its own scene, open the original scene, right click " "on this branch, and select \"Save Branch as Scene\"." msgstr "" +"Halihazırda örneklendirilmiÅŸ bir sahnenin alt öğesi olan dal kaydedilemez.\n" +"Bu dalı kendisine ait sahneye kaydetmek için, orijinal sahneyi açın, bu dala " +"saÄŸ tıklayın, ve \"Dalı Sahne olarak Kaydet\"i seçin." #: editor/scene_tree_dock.cpp msgid "" @@ -15333,6 +15344,9 @@ msgid "" "To save this branch into its own scene, open the original scene, right click " "on this branch, and select \"Save Branch as Scene\"." msgstr "" +"Devralınan sahnenin parçası olan bir dal kaydedilemez.\n" +"Bu dalı kendisine ait sahneye kaydetmek için, orijinal sahneyi açın, bu dala " +"saÄŸ tıklayın, ve \"Dalı Sahne olarak Kaydet\"i seçin." #: editor/scene_tree_dock.cpp msgid "Save New Scene As..." @@ -15360,19 +15374,18 @@ msgid "Make Local" msgstr "YerelleÅŸtir" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Enable Scene Unique Name(s)" -msgstr "Sahne Benzersiz Ä°smini Etkin Kıl" +msgstr "Sahne İçi Benzersiz Ä°sim(ler)i Etkin Kıl" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Unique names already used by another node in the scene:" -msgstr "BaÅŸka bir düğüm sahnede bu benzersiz adı zaten kullanıyor." +msgstr "" +"Halihazırda sahnedeki baÅŸka bir düğüm tarafından kullanılan benzersiz " +"isimler:" #: editor/scene_tree_dock.cpp -#, fuzzy msgid "Disable Scene Unique Name(s)" -msgstr "Sahne Benzersiz Ä°smini Etkisiz Kıl" +msgstr "Sahne İçi Benzersiz Ä°sim(ler)i Etkisiz Kıl" #: editor/scene_tree_dock.cpp msgid "New Scene Root" @@ -15400,7 +15413,7 @@ msgstr "DiÄŸer Düğüm" #: editor/scene_tree_dock.cpp msgid "Can't operate on nodes from a foreign scene!" -msgstr "Yad bir sahnedeki düğümler üzerinde çalışamaz!" +msgstr "Yabancı bir sahnedeki düğümler üzerinde çalışılamaz!" #: editor/scene_tree_dock.cpp msgid "Can't operate on nodes the current scene inherits from!" @@ -15439,7 +15452,7 @@ msgstr "Sahne kaydedilirken hata." #: editor/scene_tree_dock.cpp msgid "Error duplicating scene to save it." -msgstr "Kaydetmek için sahne çoÄŸaltılırken hata." +msgstr "Sahne kaydetmek için çoÄŸaltılırken hata." #: editor/scene_tree_dock.cpp msgid "Sub-Resources" @@ -15447,11 +15460,11 @@ msgstr "Alt Kaynaklar" #: editor/scene_tree_dock.cpp msgid "Access as Scene Unique Name" -msgstr "" +msgstr "Sahne İçi Benzersiz Ä°sim olarak EriÅŸim" #: editor/scene_tree_dock.cpp msgid "Clear Inheritance" -msgstr "Kalıtı Temizle" +msgstr "Kalıtımı Temizle" #: editor/scene_tree_dock.cpp msgid "Editable Children" @@ -15476,7 +15489,7 @@ msgstr "Alt Düğüm Ekle" #: editor/scene_tree_dock.cpp msgid "Expand/Collapse All" -msgstr "Hepsini Aç/Kapa" +msgstr "Hepsini GeniÅŸlet/Daralt" #: editor/scene_tree_dock.cpp msgid "Change Type" @@ -16193,7 +16206,7 @@ msgstr "Godot FiziÄŸi" #: main/main.cpp servers/physics_2d/physics_2d_server_sw.cpp #: servers/visual/visual_server_scene.cpp msgid "Use BVH" -msgstr "" +msgstr "BVH Kullan" #: main/main.cpp servers/physics_2d/physics_2d_server_sw.cpp #: servers/visual/visual_server_scene.cpp @@ -16213,7 +16226,7 @@ msgstr "MultiNode Kur" #: main/main.cpp msgid "RID Pool Prealloc" -msgstr "" +msgstr "RID Havuzu Ön Tahsisi" #: main/main.cpp #, fuzzy @@ -16275,7 +16288,7 @@ msgstr "Sürücü Adı" #: main/main.cpp msgid "Fallback To GLES2" -msgstr "" +msgstr "GLES2'ye Geri Dön" #: main/main.cpp msgid "Use Nvidia Rect Flicker Workaround" @@ -16889,9 +16902,8 @@ msgid "Script Class" msgstr "Betik Sınıfı" #: modules/gdnative/nativescript/nativescript.cpp -#, fuzzy msgid "Icon Path" -msgstr "Yola Odaklan" +msgstr "Ä°kon Yolu" #: modules/gdnative/register_types.cpp msgid "GDNative" @@ -16899,9 +16911,8 @@ msgstr "GDYerel" #: modules/gdscript/editor/gdscript_highlighter.cpp #: modules/gdscript/gdscript.cpp -#, fuzzy msgid "GDScript" -msgstr "Betik" +msgstr "GDScript" #: modules/gdscript/editor/gdscript_highlighter.cpp msgid "Function Definition Color" @@ -18203,7 +18214,7 @@ msgstr "" #: modules/visual_script/visual_script_flow_control.cpp msgid "Type Cast" -msgstr "Tür DeÄŸiÅŸimi" +msgstr "Tür Dönüştür" #: modules/visual_script/visual_script_flow_control.cpp msgid "Is %s?" @@ -18253,9 +18264,8 @@ msgid "Validate" msgstr "DoÄŸrula" #: modules/visual_script/visual_script_func_nodes.cpp -#, fuzzy msgid "RPC Call Mode" -msgstr "Esnetme Åžekli" +msgstr "RPC çaÄŸrı modu" #: modules/visual_script/visual_script_func_nodes.cpp msgid "Subtract %s" @@ -23138,7 +23148,7 @@ msgstr "Küçük harf" #: scene/3d/physics_joint.cpp msgid "Motor" -msgstr "" +msgstr "Motor" #: scene/3d/physics_joint.cpp #, fuzzy @@ -23771,6 +23781,16 @@ msgstr "Hata" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Sırala" + +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Use AABB Center" +msgstr "Çevreyi Kullan" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/uk.po b/editor/translations/uk.po index 07cfe5b6b1..f9a6c787a5 100644 --- a/editor/translations/uk.po +++ b/editor/translations/uk.po @@ -30,8 +30,8 @@ msgstr "" "Project-Id-Version: Ukrainian (Godot Engine)\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-27 21:37+0000\n" -"Last-Translator: Teashrock <kajitsu22@gmail.com>\n" +"PO-Revision-Date: 2022-10-03 12:44+0000\n" +"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n" "Language-Team: Ukrainian <https://hosted.weblate.org/projects/godot-engine/" "godot/uk/>\n" "Language: uk\n" @@ -12804,9 +12804,10 @@ msgstr "Параметри прилипаннÑ" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "ЗміщеннÑ" @@ -14218,16 +14219,17 @@ msgid "Invalid project path (changed anything?)." msgstr "Ðекоректний шлÑÑ… до проєкту (щоÑÑŒ змінилоÑÑ?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Ðе вдалоÑÑ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ project.godot у каталозі проєкту (помилка %d). " "Можливо, файл вилучено або пошкоджено." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "Ðе вдалоÑÑ Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ñ‚Ð¸ project.godot у каталозі проєкту." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Ðе вдалоÑÑ Ð²Ñ–Ð´ÐºÑ€Ð¸Ñ‚Ð¸ проєкт у «%s»." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -20477,7 +20479,7 @@ msgstr "Режим змішуваннÑ" #: scene/2d/canvas_item.cpp msgid "Light Mode" -msgstr "Праворуч за шириною" +msgstr "Режим оÑвітленнÑ" #: scene/2d/canvas_item.cpp msgid "Particles Animation" @@ -23232,6 +23234,16 @@ msgstr "МакÑимальна Ñила" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Сортувати" + +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Use AABB Center" +msgstr "ВикориÑтовувати адаптивний" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "ГеометріÑ" diff --git a/editor/translations/ur_PK.po b/editor/translations/ur_PK.po index d09218a600..1046f11996 100644 --- a/editor/translations/ur_PK.po +++ b/editor/translations/ur_PK.po @@ -12827,9 +12827,10 @@ msgstr ".تمام کا انتخاب" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14217,12 +14218,11 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." +msgid "Couldn't save project at '%s' (error %d)." msgstr "" #: editor/project_manager.cpp @@ -23156,6 +23156,15 @@ msgstr "" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr ".تمام کا انتخاب" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "" diff --git a/editor/translations/vi.po b/editor/translations/vi.po index 2a0fadcf9f..b4a5f4494b 100644 --- a/editor/translations/vi.po +++ b/editor/translations/vi.po @@ -22,13 +22,14 @@ # Hung <hungthitkhia@gmail.com>, 2021. # PaweÅ‚ Fertyk <pfertyk@pfertyk.me>, 2022. # MInhTriet <luckyblockblack@gmail.com>, 2022. +# Nháºt Huy <nhat.huy.7996@gmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-08-17 18:20+0000\n" -"Last-Translator: MInhTriet <luckyblockblack@gmail.com>\n" +"PO-Revision-Date: 2022-11-30 15:16+0000\n" +"Last-Translator: Nháºt Huy <nhat.huy.7996@gmail.com>\n" "Language-Team: Vietnamese <https://hosted.weblate.org/projects/godot-engine/" "godot/vi/>\n" "Language: vi\n" @@ -36,7 +37,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.14-dev\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -63,9 +64,8 @@ msgid "V-Sync Via Compositor" msgstr "V-Sync thông qua Compositor" #: core/bind/core_bind.cpp main/main.cpp -#, fuzzy msgid "Delta Smoothing" -msgstr "Delta smoothing" +msgstr "Dealta smooth" #: core/bind/core_bind.cpp msgid "Low Processor Usage Mode" @@ -162,9 +162,8 @@ msgid "Target FPS" msgstr "FPS cần đạt tá»›i" #: core/bind/core_bind.cpp -#, fuzzy msgid "Time Scale" -msgstr "Nút TimeScale" +msgstr "Ä‘á»™ giãn nở thá»i gian" #: core/bind/core_bind.cpp main/main.cpp #, fuzzy @@ -13042,9 +13041,10 @@ msgstr "Tùy chá»n DÃnh" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp #, fuzzy msgid "Offset" msgstr "Äá»™ dá»i:" @@ -14457,16 +14457,17 @@ msgid "Invalid project path (changed anything?)." msgstr "ÄÆ°á»ng dẫn dá»± án không hợp lệ (bạn có thay đổi Ä‘iá»u gì?)." #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "Không thể nạp 'project.godot' trong Ä‘Æ°á»ng dẫn dá»± án (lá»—i %d). Nó có thể bị " "thiếu hoặc đã há»ng." #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "Không thể chỉnh sá»a 'project.godot' trong Ä‘Æ°á»ng dẫn dá»± án." +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "Không thể mở dá»± án tại '%s'." #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -23932,6 +23933,15 @@ msgstr "Lá»—i" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "Sắp xếp" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/zh_CN.po b/editor/translations/zh_CN.po index 1aeaea7087..52f072e946 100644 --- a/editor/translations/zh_CN.po +++ b/editor/translations/zh_CN.po @@ -84,12 +84,15 @@ # nitenook <admin@alterbaum.net>, 2021. # jker <cxgmfy@163.com>, 2021. # Ankar <1511276198@qq.com>, 2022. +# 风é’å±± <idleman@yeah.net>, 2022. +# 1104 EXSPIRAVIT_ <m18621006730@gmail.com>, 2022. +# ChairC <974833488@qq.com>, 2022. 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: 2022-09-22 15:26+0000\n" +"PO-Revision-Date: 2022-12-05 08:51+0000\n" "Last-Translator: Haoyu Qiu <timothyqiu32@gmail.com>\n" "Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/" "godot-engine/godot/zh_Hans/>\n" @@ -98,7 +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.14.1\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -142,11 +145,11 @@ msgstr "å±å¹•å¸¸äº®" #: core/bind/core_bind.cpp msgid "Min Window Size" -msgstr "窗å£æœ€å°å¤§å°" +msgstr "最å°çª—å£å¤§å°" #: core/bind/core_bind.cpp msgid "Max Window Size" -msgstr "窗å£æœ€å¤§å¤§å°" +msgstr "最大窗å£å¤§å°" #: core/bind/core_bind.cpp msgid "Screen Orientation" @@ -4148,7 +4151,7 @@ msgstr "" #: editor/editor_node.cpp msgid "Scene '%s' has broken dependencies:" -msgstr "场景 “%s†的ä¾èµ–å·²è¢«ç ´å:" +msgstr "场景 “%s†的ä¾èµ–å·²æŸå:" #: editor/editor_node.cpp msgid "Clear Recent Scenes" @@ -5637,12 +5640,12 @@ msgstr "选择框颜色" #: editor/editor_settings.cpp editor/plugins/path_editor_plugin.cpp #: editor/spatial_editor_gizmos.cpp modules/csg/csg_gizmos.cpp msgid "3D Gizmos" -msgstr "3D 控制器" +msgstr "3D å°å·¥å…·" #: editor/editor_settings.cpp editor/plugins/path_editor_plugin.cpp #: editor/spatial_editor_gizmos.cpp modules/csg/csg_gizmos.cpp msgid "Gizmo Colors" -msgstr "控制器颜色" +msgstr "å°å·¥å…·é¢œè‰²" #: editor/editor_settings.cpp msgid "Instanced" @@ -7920,7 +7923,7 @@ msgstr "强制用白色调和" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Include Gizmos (3D)" -msgstr "包括控制器(3D)" +msgstr "包括å°å·¥å…·ï¼ˆ3D)" #: editor/plugins/animation_player_editor_plugin.cpp msgid "Pin AnimationPlayer" @@ -8439,7 +8442,7 @@ msgstr "创建光照贴图失败,切确ä¿æ–‡ä»¶æ˜¯å¯å†™çš„。" #: editor/plugins/baked_lightmap_editor_plugin.cpp msgid "Failed determining lightmap size. Maximum lightmap size too small?" -msgstr "æ— æ³•ç¡®å®šå…‰ç…§è´´å›¾å¤§å°ã€‚最大光照贴图大å°å¤ªå°ï¼Ÿ" +msgstr "æ— æ³•ç¡®å®šå…‰ç…§è´´å›¾å¤§å°ã€‚最大光照贴图尺寸太å°ï¼Ÿ" #: editor/plugins/baked_lightmap_editor_plugin.cpp msgid "" @@ -10984,7 +10987,7 @@ msgstr "查看环境" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Gizmos" -msgstr "查看控制器" +msgstr "查看å°å·¥å…·" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Information" @@ -11090,9 +11093,9 @@ msgid "" msgstr "" "点击以切æ¢å¯è§çŠ¶æ€ã€‚\n" "\n" -"ç眼:控制器å¯è§ã€‚\n" -"é—眼:控制器éšè—。\n" -"åŠç眼:控制器也å¯ç©¿è¿‡ä¸é€æ˜Žçš„表é¢å¯è§ï¼ˆâ€œX å…‰â€ï¼‰ã€‚" +"ç眼:å°å·¥å…·å¯è§ã€‚\n" +"é—眼:å°å·¥å…·éšè—。\n" +"åŠç眼:å°å·¥å…·ä¹Ÿå¯ç©¿è¿‡ä¸é€æ˜Žçš„表é¢å¯è§ï¼ˆâ€œX å…‰â€ï¼‰ã€‚" #: editor/plugins/spatial_editor_plugin.cpp msgid "Snap Nodes to Floor" @@ -11224,7 +11227,7 @@ msgstr "4 个视窗" #: editor/plugins/spatial_editor_plugin.cpp msgid "Gizmos" -msgstr "控制器" +msgstr "å°å·¥å…·" #: editor/plugins/spatial_editor_plugin.cpp msgid "View Origin" @@ -11309,19 +11312,19 @@ msgstr "åŽç½®" #: editor/plugins/spatial_editor_plugin.cpp msgid "Manipulator Gizmo Size" -msgstr "æ“作控制器大å°" +msgstr "æ“作å°å·¥å…·å¤§å°" #: editor/plugins/spatial_editor_plugin.cpp msgid "Manipulator Gizmo Opacity" -msgstr "æ“作控制器ä¸é€æ˜Žåº¦" +msgstr "æ“作å°å·¥å…·ä¸é€æ˜Žåº¦" #: editor/plugins/spatial_editor_plugin.cpp msgid "Show Viewport Rotation Gizmo" -msgstr "显示视区旋转控制器" +msgstr "显示视区旋转å°å·¥å…·" #: editor/plugins/spatial_editor_plugin.cpp msgid "Unnamed Gizmo" -msgstr "未命å控制器" +msgstr "未命åå°å·¥å…·" #: editor/plugins/sprite_editor_plugin.cpp msgid "Create Mesh2D" @@ -12636,9 +12639,10 @@ msgstr "å¸é™„选项" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "å移" @@ -14006,15 +14010,16 @@ msgid "Invalid project path (changed anything?)." msgstr "é¡¹ç›®è·¯å¾„æ— æ•ˆï¼ˆè¢«å¤–éƒ¨ä¿®æ”¹ï¼Ÿï¼‰ã€‚" #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" "æ— æ³•åœ¨é¡¹ç›®è·¯å¾„ä¸åŠ è½½ project.godot 文件(错误 %d)。该文件å¯èƒ½ç¼ºå¤±æˆ–å·²æŸå。" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "æ— æ³•åœ¨é¡¹ç›®è·¯å¾„ä¸‹ç¼–è¾‘ project.godot 文件。" +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "æ— æ³•æ‰“å¼€ä½äºŽâ€œ%sâ€çš„项目。" #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -16418,7 +16423,7 @@ msgstr "æ·»åŠ æž¶æž„é¡¹" #: modules/gdnative/gdnative_library_editor_plugin.cpp msgid "GDNativeLibrary" -msgstr "GDNative 库" +msgstr "GDNativeLibrary" #: modules/gdnative/gdnative_library_singleton_editor.cpp msgid "Enabled GDNative Singleton" @@ -20691,7 +20696,7 @@ msgstr "NavigationAgent2D åªèƒ½åœ¨ç»§æ‰¿ Node2D 的父节点下使用。" #: scene/2d/navigation_obstacle_2d.cpp scene/3d/navigation_obstacle.cpp msgid "Estimate Radius" -msgstr "估计åŠå¾„" +msgstr "ä¼°ç®—åŠå¾„" #: scene/2d/navigation_obstacle_2d.cpp msgid "" @@ -21033,7 +21038,7 @@ msgstr "内部顶点数" #: scene/2d/position_2d.cpp msgid "Gizmo Extents" -msgstr "控制器大å°" +msgstr "å°å·¥å…·èŒƒå›´" #: scene/2d/ray_cast_2d.cpp scene/3d/ray_cast.cpp msgid "Exclude Parent" @@ -22607,7 +22612,7 @@ msgstr "矩阵" #: scene/3d/spatial.cpp msgid "Gizmo" -msgstr "控制器" +msgstr "å°å·¥å…·" #: scene/3d/spatial_velocity_tracker.cpp msgid "Track Physics Step" @@ -22693,6 +22698,16 @@ msgstr "最大力度" msgid "AABB" msgstr "AABB" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "排åº" + +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Use AABB Center" +msgstr "使用环境光" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp msgid "Geometry" msgstr "å‡ ä½•ä½“" @@ -25193,7 +25208,7 @@ msgstr "亮度" #: scene/resources/environment.cpp msgid "Saturation" -msgstr "对比度" +msgstr "饱和度" #: scene/resources/environment.cpp msgid "Color Correction" diff --git a/editor/translations/zh_HK.po b/editor/translations/zh_HK.po index f8529ea3ca..8af64cfc4e 100644 --- a/editor/translations/zh_HK.po +++ b/editor/translations/zh_HK.po @@ -13397,9 +13397,10 @@ msgstr "é¸é …" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "" @@ -14821,13 +14822,13 @@ msgstr "" #: editor/project_manager.cpp msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "" +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "ä¸èƒ½é€£æŽ¥ã€‚" #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -24070,6 +24071,15 @@ msgstr "錯誤!" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "排åºï¼š" + +#: scene/3d/visual_instance.cpp +msgid "Use AABB Center" +msgstr "" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/editor/translations/zh_TW.po b/editor/translations/zh_TW.po index 4cd08539e4..dd54885310 100644 --- a/editor/translations/zh_TW.po +++ b/editor/translations/zh_TW.po @@ -43,8 +43,8 @@ msgstr "" "Project-Id-Version: Godot Engine editor\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2022-09-27 21:37+0000\n" -"Last-Translator: nitenook <admin@alterbaum.net>\n" +"PO-Revision-Date: 2022-10-16 07:25+0000\n" +"Last-Translator: BinotaLIU <me@binota.org>\n" "Language-Team: Chinese (Traditional) <https://hosted.weblate.org/projects/" "godot-engine/godot/zh_Hant/>\n" "Language: zh_TW\n" @@ -52,7 +52,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 4.14.1\n" +"X-Generator: Weblate 4.15-dev\n" #: core/bind/core_bind.cpp main/main.cpp msgid "Tablet Driver" @@ -4148,7 +4148,7 @@ msgstr "刪除é…ç½®" #: editor/editor_node.cpp editor/import_dock.cpp #: editor/script_create_dialog.cpp msgid "Default" -msgstr "默èª" +msgstr "é è¨" #: editor/editor_node.cpp editor/editor_resource_picker.cpp #: editor/plugins/script_editor_plugin.cpp editor/property_editor.cpp @@ -12591,9 +12591,10 @@ msgstr "å¸é™„é¸é …" #: scene/2d/path_2d.cpp scene/2d/polygon_2d.cpp scene/2d/sprite.cpp #: scene/3d/cpu_particles.cpp scene/3d/label_3d.cpp scene/3d/path.cpp #: scene/3d/physics_body.cpp scene/3d/soft_body.cpp scene/3d/sprite_3d.cpp -#: scene/gui/graph_node.cpp scene/gui/rich_text_effect.cpp -#: scene/main/canvas_layer.cpp scene/resources/material.cpp -#: scene/resources/particles_material.cpp scene/resources/style_box.cpp +#: scene/3d/visual_instance.cpp scene/gui/graph_node.cpp +#: scene/gui/rich_text_effect.cpp scene/main/canvas_layer.cpp +#: scene/resources/material.cpp scene/resources/particles_material.cpp +#: scene/resources/style_box.cpp msgid "Offset" msgstr "å移" @@ -13962,14 +13963,15 @@ msgid "Invalid project path (changed anything?)." msgstr "ä¸æ£ç¢ºçš„專案路徑(有修改了什麼嗎?)。" #: editor/project_manager.cpp +#, fuzzy msgid "" -"Couldn't load project.godot in project path (error %d). It may be missing or " -"corrupted." +"Couldn't load project at '%s' (error %d). It may be missing or corrupted." msgstr "無法自專案路徑內載入 project.godot(錯誤 %d)。檔案å¯èƒ½éºå¤±æˆ–æ毀。" #: editor/project_manager.cpp -msgid "Couldn't edit project.godot in project path." -msgstr "無法在專案路徑ä¸ç·¨è¼¯ project.godot。" +#, fuzzy +msgid "Couldn't save project at '%s' (error %d)." +msgstr "無法於「%sã€æ‰“開專案。" #: editor/project_manager.cpp msgid "Couldn't create project.godot in project path." @@ -17240,7 +17242,7 @@ msgstr "發ç¾æœ¬åœ°é€šè¨ŠåŸ " #: modules/upnp/upnp.cpp msgid "Discover IPv6" -msgstr "DiscoverIPv6" +msgstr "Discover IPv6" #: modules/upnp/upnp_device.cpp #, fuzzy @@ -18168,7 +18170,7 @@ msgstr "自é©æ‡‰å‰æ™¯ 432 X 432" #: platform/android/export/export_plugin.cpp msgid "Adaptive Background 432 X 432" -msgstr "" +msgstr "自é©æ‡‰èƒŒæ™¯ 432 X 432" #: platform/android/export/export_plugin.cpp msgid "Package name is missing." @@ -18201,7 +18203,7 @@ msgstr "剪下節點" #: platform/android/export/export_plugin.cpp msgid "Use Custom Build" -msgstr "" +msgstr "使用自定義建構" #: platform/android/export/export_plugin.cpp #, fuzzy @@ -18234,7 +18236,7 @@ msgstr "除錯工具" #: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp msgid "Debug Password" -msgstr "" +msgstr "åµéŒ¯å¯†ç¢¼" #: platform/android/export/export_plugin.cpp #, fuzzy @@ -18248,7 +18250,7 @@ msgstr "發行" #: platform/android/export/export_plugin.cpp msgid "One Click Deploy" -msgstr "" +msgstr "一éµéƒ¨ç½²" #: platform/android/export/export_plugin.cpp #, fuzzy @@ -18257,7 +18259,7 @@ msgstr "åµæŸ¥å‰ä¸€å€‹å¯¦é«”" #: platform/android/export/export_plugin.cpp msgid "Code" -msgstr "" +msgstr "程å¼ç¢¼" #: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp #, fuzzy @@ -18279,7 +18281,7 @@ msgstr "分類為éŠæˆ²" #: platform/android/export/export_plugin.cpp msgid "Retain Data On Uninstall" -msgstr "" +msgstr "å–消安è£æ™‚ä¿ç•™è³‡æ–™" #: platform/android/export/export_plugin.cpp #, fuzzy @@ -18312,11 +18314,11 @@ msgstr "æ£åœ¨æ‰“包" #: platform/android/export/export_plugin.cpp msgid "Hand Tracking Frequency" -msgstr "" +msgstr "æ‰‹å‹¢è¿½è¹¤é »çŽ‡" #: platform/android/export/export_plugin.cpp msgid "Passthrough" -msgstr "" +msgstr "ç©¿é€" #: platform/android/export/export_plugin.cpp #, fuzzy @@ -18350,7 +18352,7 @@ msgstr "使用者界é¢" #: platform/android/export/export_plugin.cpp msgid "Allow" -msgstr "" +msgstr "å…許" #: platform/android/export/export_plugin.cpp platform/uwp/export/export.cpp #, fuzzy @@ -18368,7 +18370,7 @@ msgstr "è¨å®šè¡¨ç¤ºå¼" #: platform/android/export/export_plugin.cpp msgid "Salt" -msgstr "" +msgstr "Salt" #: platform/android/export/export_plugin.cpp #, fuzzy @@ -18488,6 +18490,10 @@ msgid "" "Note that the singleton was also renamed from \"GodotPayments\" to " "\"GodotGooglePlayBilling\"." msgstr "" +"「android/modulesã€å°ˆæ¡ˆè¨å®šä¸åŒ…å«äº†ç„¡æ•ˆçš„「GodotPaymentV3ã€ï¼ˆåœ¨ Godot 3.2.2 " +"ä¸å·²æ›´æ”¹ï¼‰ã€‚\n" +"請將其更æ›ç‚ºç¬¬ä¸€æ–¹çš„「GodotGooglePlayBillingã€å¤–掛。\n" +"請注æ„,該單例已從「GodotPaymentsã€æ›´æ”¹ç‚ºã€ŒGodotGooglePlayBillingã€ã€‚" #: platform/android/export/export_plugin.cpp msgid "\"Use Custom Build\" must be enabled to use the plugins." @@ -18519,13 +18525,13 @@ msgstr "å°ã€ŒMin Sdkã€çš„修改僅在「Use Custom Buildã€å•Ÿç”¨æ™‚有效。" #: platform/android/export/export_plugin.cpp msgid "\"Min SDK\" should be a valid integer, but got \"%s\" which is invalid." -msgstr "" +msgstr "ã€Œæœ€å° SDKã€æ‡‰ç‚ºæœ‰æ•ˆæ•´æ•¸ï¼Œä½†ç›®å‰å€¼ç‚ºç„¡æ•ˆçš„「%sã€ã€‚" #: platform/android/export/export_plugin.cpp msgid "" "\"Min SDK\" cannot be lower than %d, which is the version needed by the " "Godot library." -msgstr "" +msgstr "ã€Œæœ€å° SDKã€ä¸å¯ä½Žæ–¼ %dï¼Œå› Godot 函å¼åº«éœ€è¦è©²æœ€å°ç‰ˆæœ¬ã€‚" #: platform/android/export/export_plugin.cpp #, fuzzy @@ -23175,6 +23181,16 @@ msgstr "錯誤" msgid "AABB" msgstr "" +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Sorting" +msgstr "排åº" + +#: scene/3d/visual_instance.cpp +#, fuzzy +msgid "Use AABB Center" +msgstr "使用環境通é“" + #: scene/3d/visual_instance.cpp scene/resources/navigation_mesh.cpp #, fuzzy msgid "Geometry" diff --git a/main/main.cpp b/main/main.cpp index 8fa0a78480..1a005583af 100644 --- a/main/main.cpp +++ b/main/main.cpp @@ -2594,6 +2594,7 @@ bool Main::start() { } if (dump_gdextension_interface || dump_extension_api) { + OS::get_singleton()->set_exit_code(EXIT_SUCCESS); return false; } diff --git a/misc/scripts/compare_extension_api.py b/misc/scripts/compare_extension_api.py deleted file mode 100755 index f96db4278c..0000000000 --- a/misc/scripts/compare_extension_api.py +++ /dev/null @@ -1,11 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- - -import sys - -# TODO: -# Add a process that compares the original godot-cpp/godot-headers/extension_api.json with the new extension_api.json (both passed as arguments) and reports any API calls that have been removed. -# If we only have additions or no changes to the file, we pass -# For now we deem this too early because the API isn't stable enough yet. - -sys.exit(0) diff --git a/modules/gdscript/gdscript_analyzer.cpp b/modules/gdscript/gdscript_analyzer.cpp index 81e50d6b79..1149749ef7 100644 --- a/modules/gdscript/gdscript_analyzer.cpp +++ b/modules/gdscript/gdscript_analyzer.cpp @@ -1595,7 +1595,7 @@ void GDScriptAnalyzer::resolve_constant(GDScriptParser::ConstantNode *p_constant } if (p_constant->datatype_specifier != nullptr) { - if (!is_type_compatible(explicit_type, type)) { + if (!is_type_compatible(explicit_type, type, true)) { push_error(vformat(R"(Assigned value for constant "%s" has type %s which is not compatible with defined type %s.)", p_constant->identifier->name, type.to_string(), explicit_type.to_string()), p_constant->initializer); #ifdef DEBUG_ENABLED } else if (explicit_type.builtin_type == Variant::INT && type.builtin_type == Variant::FLOAT) { @@ -4187,8 +4187,6 @@ bool GDScriptAnalyzer::is_type_compatible(const GDScriptParser::DataType &p_targ if (p_target.kind == GDScriptParser::DataType::BUILTIN) { bool valid = p_source.kind == GDScriptParser::DataType::BUILTIN && p_target.builtin_type == p_source.builtin_type; - valid |= p_source.builtin_type == Variant::STRING && p_target.builtin_type == Variant::STRING_NAME; - valid |= p_source.builtin_type == Variant::STRING_NAME && p_target.builtin_type == Variant::STRING; if (!valid && p_allow_implicit_conversion) { valid = Variant::can_convert_strict(p_source.builtin_type, p_target.builtin_type); } @@ -4204,7 +4202,7 @@ bool GDScriptAnalyzer::is_type_compatible(const GDScriptParser::DataType &p_targ // Variant array can't be appended to typed array. valid = false; } else { - valid = is_type_compatible(p_target.get_container_element_type(), p_source.get_container_element_type(), false); + valid = is_type_compatible(p_target.get_container_element_type(), p_source.get_container_element_type(), p_allow_implicit_conversion); } } } diff --git a/modules/gdscript/tests/scripts/analyzer/features/array_string_stringname_equivalent.gd b/modules/gdscript/tests/scripts/analyzer/features/array_string_stringname_equivalent.gd index 4511c3d10b..eb0003eed8 100644 --- a/modules/gdscript/tests/scripts/analyzer/features/array_string_stringname_equivalent.gd +++ b/modules/gdscript/tests/scripts/analyzer/features/array_string_stringname_equivalent.gd @@ -1,4 +1,11 @@ + +var m_string_array: Array[String] = [&"abc"] +var m_stringname_array: Array[StringName] = ["abc"] + func test(): + print(m_string_array) + print(m_stringname_array) + # Converted to String when initialized var string_array: Array[String] = [&"abc"] print(string_array) diff --git a/modules/gdscript/tests/scripts/analyzer/features/array_string_stringname_equivalent.out b/modules/gdscript/tests/scripts/analyzer/features/array_string_stringname_equivalent.out index 70dd01d88e..09c199bde1 100644 --- a/modules/gdscript/tests/scripts/analyzer/features/array_string_stringname_equivalent.out +++ b/modules/gdscript/tests/scripts/analyzer/features/array_string_stringname_equivalent.out @@ -1,3 +1,5 @@ GDTEST_OK ["abc"] [&"abc"] +["abc"] +[&"abc"] diff --git a/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators.Sample/ExportedFields.cs b/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators.Sample/ExportedFields.cs index 9a46b7d164..ccaba4d727 100644 --- a/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators.Sample/ExportedFields.cs +++ b/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators.Sample/ExportedFields.cs @@ -45,7 +45,7 @@ namespace Godot.SourceGenerators.Sample [Export] private Color field_Color = Colors.Aquamarine; [Export] private Plane field_Plane = Plane.PlaneXZ; [Export] private Callable field_Callable = new Callable(Engine.GetMainLoop(), "_process"); - [Export] private SignalInfo field_SignalInfo = new SignalInfo(Engine.GetMainLoop(), "property_list_changed"); + [Export] private Signal field_Signal = new Signal(Engine.GetMainLoop(), "property_list_changed"); // Enums [SuppressMessage("ReSharper", "UnusedMember.Local")] diff --git a/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators.Sample/ExportedProperties.cs b/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators.Sample/ExportedProperties.cs index eb83833b40..0c0feb3901 100644 --- a/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators.Sample/ExportedProperties.cs +++ b/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators.Sample/ExportedProperties.cs @@ -133,7 +133,7 @@ namespace Godot.SourceGenerators.Sample [Export] private Color property_Color { get; set; } = Colors.Aquamarine; [Export] private Plane property_Plane { get; set; } = Plane.PlaneXZ; [Export] private Callable property_Callable { get; set; } = new Callable(Engine.GetMainLoop(), "_process"); - [Export] private SignalInfo property_SignalInfo { get; set; } = new SignalInfo(Engine.GetMainLoop(), "property_list_changed"); + [Export] private Signal property_Signal { get; set; } = new Signal(Engine.GetMainLoop(), "property_list_changed"); // Enums [SuppressMessage("ReSharper", "UnusedMember.Local")] diff --git a/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators/MarshalType.cs b/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators/MarshalType.cs index 15f5803bf0..ee1374d0b9 100644 --- a/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators/MarshalType.cs +++ b/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators/MarshalType.cs @@ -37,7 +37,7 @@ namespace Godot.SourceGenerators Color, Plane, Callable, - SignalInfo, + Signal, // Enums Enum, diff --git a/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators/MarshalUtils.cs b/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators/MarshalUtils.cs index 6dac120d15..8b2f96036b 100644 --- a/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators/MarshalUtils.cs +++ b/modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators/MarshalUtils.cs @@ -56,7 +56,7 @@ namespace Godot.SourceGenerators MarshalType.Color => VariantType.Color, MarshalType.Plane => VariantType.Plane, MarshalType.Callable => VariantType.Callable, - MarshalType.SignalInfo => VariantType.Signal, + MarshalType.Signal => VariantType.Signal, MarshalType.Enum => VariantType.Int, MarshalType.ByteArray => VariantType.PackedByteArray, MarshalType.Int32Array => VariantType.PackedInt32Array, @@ -147,7 +147,7 @@ namespace Godot.SourceGenerators { Name: "Plane" } => MarshalType.Plane, { Name: "RID" } => MarshalType.RID, { Name: "Callable" } => MarshalType.Callable, - { Name: "SignalInfo" } => MarshalType.SignalInfo, + { Name: "Signal" } => MarshalType.Signal, { Name: "Variant" } => MarshalType.Variant, _ => null }; diff --git a/modules/mono/editor/bindings_generator.cpp b/modules/mono/editor/bindings_generator.cpp index d1d2fb8876..6559cbf75d 100644 --- a/modules/mono/editor/bindings_generator.cpp +++ b/modules/mono/editor/bindings_generator.cpp @@ -3654,7 +3654,7 @@ void BindingsGenerator::_populate_builtin_type_interfaces() { itype.cs_type = itype.proxy_name; itype.cs_in_expr = "%0"; itype.c_in = "%5using %0 %1_in = " C_METHOD_MANAGED_TO_SIGNAL "(in %1);\n"; - itype.c_out = "%5return " C_METHOD_MANAGED_FROM_SIGNAL "(&%1);\n"; + itype.c_out = "%5return " C_METHOD_MANAGED_FROM_SIGNAL "(in %1);\n"; itype.c_arg_in = "&%s_in"; itype.c_type = "godot_signal"; itype.c_type_in = "in " + itype.cs_type; diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/DelegateUtils.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/DelegateUtils.cs index 2a7a9e2026..d94fbff331 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/Core/DelegateUtils.cs +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/DelegateUtils.cs @@ -613,8 +613,8 @@ namespace Godot return VariantUtils.CreateFrom(plane); case Callable callable: return VariantUtils.CreateFrom(callable); - case SignalInfo signalInfo: - return VariantUtils.CreateFrom(signalInfo); + case Signal signal: + return VariantUtils.CreateFrom(signal); case string @string: return VariantUtils.CreateFrom(@string); case byte[] byteArray: @@ -705,7 +705,7 @@ namespace Godot [typeof(Color)] = (in godot_variant variant) => VariantUtils.ConvertTo<Color>(variant), [typeof(Plane)] = (in godot_variant variant) => VariantUtils.ConvertTo<Plane>(variant), [typeof(Callable)] = (in godot_variant variant) => VariantUtils.ConvertTo<Callable>(variant), - [typeof(SignalInfo)] = (in godot_variant variant) => VariantUtils.ConvertTo<SignalInfo>(variant), + [typeof(Signal)] = (in godot_variant variant) => VariantUtils.ConvertTo<Signal>(variant), [typeof(string)] = (in godot_variant variant) => VariantUtils.ConvertTo<string>(variant), [typeof(byte[])] = (in godot_variant variant) => VariantUtils.ConvertTo<byte[]>(variant), [typeof(int[])] = (in godot_variant variant) => VariantUtils.ConvertTo<int[]>(variant), diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/NativeInterop/Marshaling.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/NativeInterop/Marshaling.cs index ab3d3ef60f..0d9a698af0 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/Core/NativeInterop/Marshaling.cs +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/NativeInterop/Marshaling.cs @@ -99,7 +99,7 @@ namespace Godot.NativeInterop if (type == typeof(Callable)) return Variant.Type.Callable; - if (type == typeof(SignalInfo)) + if (type == typeof(Signal)) return Variant.Type.Signal; if (type.IsEnum) @@ -288,9 +288,9 @@ namespace Godot.NativeInterop return new Callable(); } - // SignalInfo + // Signal - public static godot_signal ConvertSignalToNative(in SignalInfo p_managed_signal) + public static godot_signal ConvertSignalToNative(in Signal p_managed_signal) { ulong ownerId = p_managed_signal.Owner.GetInstanceId(); godot_string_name name; @@ -308,12 +308,12 @@ namespace Godot.NativeInterop return new godot_signal(name, ownerId); } - public static SignalInfo ConvertSignalToManaged(in godot_signal p_signal) + public static Signal ConvertSignalToManaged(in godot_signal p_signal) { var owner = GD.InstanceFromId(p_signal.ObjectId); var name = StringName.CreateTakingOwnershipOfDisposableValue( NativeFuncs.godotsharp_string_name_new_copy(p_signal.Name)); - return new SignalInfo(owner, name); + return new Signal(owner, name); } // Array diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/NativeInterop/VariantUtils.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/NativeInterop/VariantUtils.cs index 11f1e31384..6a4717f2c3 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/Core/NativeInterop/VariantUtils.cs +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/NativeInterop/VariantUtils.cs @@ -102,7 +102,7 @@ namespace Godot.NativeInterop => new() { Type = Variant.Type.Signal, Signal = from }; [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static godot_variant CreateFromSignalInfo(SignalInfo from) + public static godot_variant CreateFromSignal(Signal from) => CreateFromSignalTakingOwnershipOfDisposableValue( Marshaling.ConvertSignalToNative(from)); @@ -486,7 +486,7 @@ namespace Godot.NativeInterop => NativeFuncs.godotsharp_variant_as_signal(p_var); [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static SignalInfo ConvertToSignalInfo(in godot_variant p_var) + public static Signal ConvertToSignalManaged(in godot_variant p_var) => Marshaling.ConvertSignalToManaged(ConvertToSignal(p_var)); public static godot_array ConvertToArray(in godot_variant p_var) diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/NativeInterop/VariantUtils.generic.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/NativeInterop/VariantUtils.generic.cs index 80ef2a1ea1..9a3ed85e66 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/Core/NativeInterop/VariantUtils.generic.cs +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/NativeInterop/VariantUtils.generic.cs @@ -125,8 +125,8 @@ public partial class VariantUtils if (typeof(T) == typeof(Callable)) return CreateFromCallable(UnsafeAs<Callable>(from)); - if (typeof(T) == typeof(SignalInfo)) - return CreateFromSignalInfo(UnsafeAs<SignalInfo>(from)); + if (typeof(T) == typeof(Signal)) + return CreateFromSignal(UnsafeAs<Signal>(from)); if (typeof(T) == typeof(string)) return CreateFromString(UnsafeAs<string>(from)); @@ -311,8 +311,8 @@ public partial class VariantUtils if (typeof(T) == typeof(Callable)) return UnsafeAsT(ConvertToCallableManaged(variant)); - if (typeof(T) == typeof(SignalInfo)) - return UnsafeAsT(ConvertToSignalInfo(variant)); + if (typeof(T) == typeof(Signal)) + return UnsafeAsT(ConvertToSignalManaged(variant)); if (typeof(T) == typeof(string)) return UnsafeAsT(ConvertToStringObject(variant)); diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/SignalInfo.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Signal.cs index 3f50df0a0d..f9b8f06603 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/Core/SignalInfo.cs +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Signal.cs @@ -3,7 +3,7 @@ namespace Godot /// <summary> /// Represents a signal defined in an object. /// </summary> - public readonly struct SignalInfo + public readonly struct Signal : IAwaitable<Variant[]> { private readonly Object _owner; private readonly StringName _signalName; @@ -18,15 +18,20 @@ namespace Godot public StringName Name => _signalName; /// <summary> - /// Creates a new <see cref="SignalInfo"/> with the name <paramref name="name"/> + /// Creates a new <see cref="Signal"/> with the name <paramref name="name"/> /// in the specified <paramref name="owner"/>. /// </summary> /// <param name="owner">Object that contains the signal.</param> /// <param name="name">Name of the signal.</param> - public SignalInfo(Object owner, StringName name) + public Signal(Object owner, StringName name) { _owner = owner; _signalName = name; } + + public IAwaiter<Variant[]> GetAwaiter() + { + return new SignalAwaiter(_owner, _signalName, _owner); + } } } diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Variant.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Variant.cs index 49a363cef2..c4c53a39f9 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Variant.cs +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Variant.cs @@ -137,7 +137,7 @@ public partial struct Variant : IDisposable Type.Rid => AsRID(), Type.Object => AsGodotObject(), Type.Callable => AsCallable(), - Type.Signal => AsSignalInfo(), + Type.Signal => AsSignal(), Type.Dictionary => AsGodotDictionary(), Type.Array => AsGodotArray(), Type.PackedByteArray => AsByteArray(), @@ -283,8 +283,8 @@ public partial struct Variant : IDisposable VariantUtils.ConvertToCallableManaged((godot_variant)NativeVar); [MethodImpl(MethodImplOptions.AggressiveInlining)] - public SignalInfo AsSignalInfo() => - VariantUtils.ConvertToSignalInfo((godot_variant)NativeVar); + public Signal AsSignal() => + VariantUtils.ConvertToSignalManaged((godot_variant)NativeVar); [MethodImpl(MethodImplOptions.AggressiveInlining)] public byte[] AsByteArray() => @@ -464,7 +464,7 @@ public partial struct Variant : IDisposable public static explicit operator Callable(Variant from) => from.AsCallable(); [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static explicit operator SignalInfo(Variant from) => from.AsSignalInfo(); + public static explicit operator Signal(Variant from) => from.AsSignal(); [MethodImpl(MethodImplOptions.AggressiveInlining)] public static explicit operator byte[](Variant from) => from.AsByteArray(); @@ -614,7 +614,7 @@ public partial struct Variant : IDisposable public static Variant CreateFrom(Callable from) => from; [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static Variant CreateFrom(SignalInfo from) => from; + public static Variant CreateFrom(Signal from) => from; [MethodImpl(MethodImplOptions.AggressiveInlining)] public static Variant CreateFrom(Span<byte> from) => from; @@ -804,8 +804,8 @@ public partial struct Variant : IDisposable CreateTakingOwnershipOfDisposableValue(VariantUtils.CreateFromCallable(from)); [MethodImpl(MethodImplOptions.AggressiveInlining)] - public static implicit operator Variant(SignalInfo from) => - CreateTakingOwnershipOfDisposableValue(VariantUtils.CreateFromSignalInfo(from)); + public static implicit operator Variant(Signal from) => + CreateTakingOwnershipOfDisposableValue(VariantUtils.CreateFromSignal(from)); [MethodImpl(MethodImplOptions.AggressiveInlining)] public static implicit operator Variant(byte[] from) => diff --git a/modules/mono/glue/GodotSharp/GodotSharp/GodotSharp.csproj b/modules/mono/glue/GodotSharp/GodotSharp/GodotSharp.csproj index 503e5abe37..644212c74d 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/GodotSharp.csproj +++ b/modules/mono/glue/GodotSharp/GodotSharp/GodotSharp.csproj @@ -116,7 +116,7 @@ <Compile Include="Core\NativeInterop\NativeFuncs.cs" /> <Compile Include="Core\NativeInterop\InteropStructs.cs" /> <Compile Include="Core\NativeInterop\Marshaling.cs" /> - <Compile Include="Core\SignalInfo.cs" /> + <Compile Include="Core\Signal.cs" /> <Compile Include="Core\SignalAwaiter.cs" /> <Compile Include="Core\StringExtensions.cs" /> <Compile Include="Core\StringName.cs" /> diff --git a/modules/openxr/action_map/openxr_action.cpp b/modules/openxr/action_map/openxr_action.cpp index 7e02f0374d..634f653376 100644 --- a/modules/openxr/action_map/openxr_action.cpp +++ b/modules/openxr/action_map/openxr_action.cpp @@ -75,6 +75,7 @@ String OpenXRAction::get_name_with_set() const { void OpenXRAction::set_localized_name(const String p_localized_name) { localized_name = p_localized_name; + emit_changed(); } String OpenXRAction::get_localized_name() const { @@ -83,6 +84,7 @@ String OpenXRAction::get_localized_name() const { void OpenXRAction::set_action_type(const OpenXRAction::ActionType p_action_type) { action_type = p_action_type; + emit_changed(); } OpenXRAction::ActionType OpenXRAction::get_action_type() const { @@ -91,6 +93,7 @@ OpenXRAction::ActionType OpenXRAction::get_action_type() const { void OpenXRAction::set_toplevel_paths(const PackedStringArray p_toplevel_paths) { toplevel_paths = p_toplevel_paths; + emit_changed(); } PackedStringArray OpenXRAction::get_toplevel_paths() const { @@ -100,15 +103,18 @@ PackedStringArray OpenXRAction::get_toplevel_paths() const { void OpenXRAction::add_toplevel_path(const String p_toplevel_path) { if (!toplevel_paths.has(p_toplevel_path)) { toplevel_paths.push_back(p_toplevel_path); + emit_changed(); } } void OpenXRAction::rem_toplevel_path(const String p_toplevel_path) { if (toplevel_paths.has(p_toplevel_path)) { toplevel_paths.erase(p_toplevel_path); + emit_changed(); } } void OpenXRAction::parse_toplevel_paths(const String p_toplevel_paths) { toplevel_paths = p_toplevel_paths.split(",", false); + emit_changed(); } diff --git a/modules/openxr/action_map/openxr_action_map.cpp b/modules/openxr/action_map/openxr_action_map.cpp index 123f860ce9..226bfa18ba 100644 --- a/modules/openxr/action_map/openxr_action_map.cpp +++ b/modules/openxr/action_map/openxr_action_map.cpp @@ -95,6 +95,7 @@ void OpenXRActionMap::add_action_set(Ref<OpenXRActionSet> p_action_set) { if (action_sets.find(p_action_set) == -1) { action_sets.push_back(p_action_set); + emit_changed(); } } @@ -102,6 +103,7 @@ void OpenXRActionMap::remove_action_set(Ref<OpenXRActionSet> p_action_set) { int idx = action_sets.find(p_action_set); if (idx != -1) { action_sets.remove_at(idx); + emit_changed(); } } @@ -146,6 +148,7 @@ void OpenXRActionMap::add_interaction_profile(Ref<OpenXRInteractionProfile> p_in if (interaction_profiles.find(p_interaction_profile) == -1) { interaction_profiles.push_back(p_interaction_profile); + emit_changed(); } } @@ -153,6 +156,7 @@ void OpenXRActionMap::remove_interaction_profile(Ref<OpenXRInteractionProfile> p int idx = interaction_profiles.find(p_interaction_profile); if (idx != -1) { interaction_profiles.remove_at(idx); + emit_changed(); } } @@ -489,30 +493,34 @@ Ref<OpenXRAction> OpenXRActionMap::get_action(const String p_path) const { return Ref<OpenXRAction>(); } -void OpenXRActionMap::remove_action(const String p_path) { +void OpenXRActionMap::remove_action(const String p_path, bool p_remove_interaction_profiles) { Ref<OpenXRAction> action = get_action(p_path); if (action.is_valid()) { + for (int i = 0; i < interaction_profiles.size(); i++) { + Ref<OpenXRInteractionProfile> interaction_profile = interaction_profiles[i]; + + if (p_remove_interaction_profiles) { + // Remove any bindings for this action + interaction_profile->remove_binding_for_action(action); + } else { + ERR_FAIL_COND(interaction_profile->has_binding_for_action(action)); + } + } + OpenXRActionSet *action_set = action->get_action_set(); if (action_set != nullptr) { // Remove the action from this action set action_set->remove_action(action); } - - for (int i = 0; i < interaction_profiles.size(); i++) { - Ref<OpenXRInteractionProfile> interaction_profile = interaction_profiles[i]; - - // Remove any bindings for this action - interaction_profile->remove_binding_for_action(action); - } } } -PackedStringArray OpenXRActionMap::get_top_level_paths(Ref<OpenXRAction> p_action) { +PackedStringArray OpenXRActionMap::get_top_level_paths(const Ref<OpenXRAction> p_action) { PackedStringArray arr; for (int i = 0; i < interaction_profiles.size(); i++) { Ref<OpenXRInteractionProfile> ip = interaction_profiles[i]; - const OpenXRDefs::InteractionProfile *profile = OpenXRDefs::get_profile(ip->get_interaction_profile_path()); + const OpenXRInteractionProfileMetaData::InteractionProfile *profile = OpenXRInteractionProfileMetaData::get_singleton()->get_profile(ip->get_interaction_profile_path()); if (profile != nullptr) { for (int j = 0; j < ip->get_binding_count(); j++) { @@ -521,9 +529,9 @@ PackedStringArray OpenXRActionMap::get_top_level_paths(Ref<OpenXRAction> p_actio PackedStringArray paths = binding->get_paths(); for (int k = 0; k < paths.size(); k++) { - const OpenXRDefs::IOPath *io_path = profile->get_io_path(paths[k]); + const OpenXRInteractionProfileMetaData::IOPath *io_path = profile->get_io_path(paths[k]); if (io_path != nullptr) { - String top_path = String(io_path->top_level_path->openxr_path); + String top_path = io_path->top_level_path; if (!arr.has(top_path)) { arr.push_back(top_path); @@ -535,7 +543,7 @@ PackedStringArray OpenXRActionMap::get_top_level_paths(Ref<OpenXRAction> p_actio } } - print_line("Toplevel paths for", p_action->get_name_with_set(), "are", arr); + // print_line("Toplevel paths for", p_action->get_name_with_set(), "are", arr); return arr; } diff --git a/modules/openxr/action_map/openxr_action_map.h b/modules/openxr/action_map/openxr_action_map.h index 8659cd3942..43a4d741f4 100644 --- a/modules/openxr/action_map/openxr_action_map.h +++ b/modules/openxr/action_map/openxr_action_map.h @@ -71,8 +71,8 @@ public: // Helper functions for editor Ref<OpenXRAction> get_action(const String p_path) const; // Retrieve an action using <action name>/<action> as our parameter - void remove_action(const String p_path); // Remove action from action set, also removes it from interaction profiles - PackedStringArray get_top_level_paths(Ref<OpenXRAction> p_action); // Determines the top level paths based on where an action is bound in interaction profiles + void remove_action(const String p_path, bool p_remove_interaction_profiles = false); // Remove action from action set, also removes it from interaction profiles + PackedStringArray get_top_level_paths(const Ref<OpenXRAction> p_action); // Determines the top level paths based on where an action is bound in interaction profiles // TODO add validation to display in the interface that checks if we have action sets with the same name or if we have interaction profiles for the same path diff --git a/modules/openxr/action_map/openxr_action_set.cpp b/modules/openxr/action_map/openxr_action_set.cpp index be45218300..f46ac4a5ce 100644 --- a/modules/openxr/action_map/openxr_action_set.cpp +++ b/modules/openxr/action_map/openxr_action_set.cpp @@ -62,6 +62,7 @@ Ref<OpenXRActionSet> OpenXRActionSet::new_action_set(const char *p_name, const c void OpenXRActionSet::set_localized_name(const String p_localized_name) { localized_name = p_localized_name; + emit_changed(); } String OpenXRActionSet::get_localized_name() const { @@ -70,6 +71,7 @@ String OpenXRActionSet::get_localized_name() const { void OpenXRActionSet::set_priority(const int p_priority) { priority = p_priority; + emit_changed(); } int OpenXRActionSet::get_priority() const { @@ -82,11 +84,16 @@ int OpenXRActionSet::get_action_count() const { void OpenXRActionSet::clear_actions() { // Actions held within our action set should be released and destroyed but just in case they are still used some where else + if (actions.size() == 0) { + return; + } + for (int i = 0; i < actions.size(); i++) { Ref<OpenXRAction> action = actions[i]; action->action_set = nullptr; } actions.clear(); + emit_changed(); } void OpenXRActionSet::set_actions(Array p_actions) { @@ -125,6 +132,7 @@ void OpenXRActionSet::add_action(Ref<OpenXRAction> p_action) { p_action->action_set = this; actions.push_back(p_action); + emit_changed(); } } @@ -135,6 +143,8 @@ void OpenXRActionSet::remove_action(Ref<OpenXRAction> p_action) { ERR_FAIL_COND_MSG(p_action->action_set != this, "Removing action that belongs to this action set but had incorrect action set pointer."); // this should never happen! p_action->action_set = nullptr; + + emit_changed(); } } diff --git a/modules/openxr/action_map/openxr_defs.cpp b/modules/openxr/action_map/openxr_defs.cpp deleted file mode 100644 index 59ce829f1b..0000000000 --- a/modules/openxr/action_map/openxr_defs.cpp +++ /dev/null @@ -1,671 +0,0 @@ -/*************************************************************************/ -/* openxr_defs.cpp */ -/*************************************************************************/ -/* This file is part of: */ -/* GODOT ENGINE */ -/* https://godotengine.org */ -/*************************************************************************/ -/* Copyright (c) 2007-2022 Juan Linietsky, Ariel Manzur. */ -/* Copyright (c) 2014-2022 Godot Engine contributors (cf. AUTHORS.md). */ -/* */ -/* Permission is hereby granted, free of charge, to any person obtaining */ -/* a copy of this software and associated documentation files (the */ -/* "Software"), to deal in the Software without restriction, including */ -/* without limitation the rights to use, copy, modify, merge, publish, */ -/* distribute, sublicense, and/or sell copies of the Software, and to */ -/* permit persons to whom the Software is furnished to do so, subject to */ -/* the following conditions: */ -/* */ -/* The above copyright notice and this permission notice shall be */ -/* included in all copies or substantial portions of the Software. */ -/* */ -/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */ -/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ -/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ -/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */ -/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */ -/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */ -/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -/*************************************************************************/ - -#include "openxr_defs.h" - -// Our top level paths to which devices can be bound -OpenXRDefs::TopLevelPath OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_TOP_LEVEL_PATH_MAX] = { - // Core OpenXR paths - { "Left hand controller", "/user/hand/left" }, - { "Right hand controller", "/user/hand/right" }, - { "Head", "/user/head" }, - { "Gamepad", "/user/gamepad" }, - { "Treadmill", "/user/treadmill" }, - - // Specific to HTC tracker extension - // { "Handheld object tracker", "/user/vive_tracker_htcx/role/handheld_object" }, - { "Left foot tracker", "/user/vive_tracker_htcx/role/left_foot" }, - { "Right foot tracker", "/user/vive_tracker_htcx/role/right_foot" }, - { "Left shoulder tracker", "/user/vive_tracker_htcx/role/left_shoulder" }, - { "Right shoulder tracker", "/user/vive_tracker_htcx/role/right_shoulder" }, - { "Left elbow tracker", "/user/vive_tracker_htcx/role/left_elbow" }, - { "Right elbow tracker", "/user/vive_tracker_htcx/role/right_elbow" }, - { "Left knee tracker", "/user/vive_tracker_htcx/role/left_knee" }, - { "Right knee tracker", "/user/vive_tracker_htcx/role/right_knee" }, - { "Waist tracker", "/user/vive_tracker_htcx/role/waist" }, - { "Chest tracker", "/user/vive_tracker_htcx/role/chest" }, - { "Camera tracker", "/user/vive_tracker_htcx/role/camera" }, - { "Keyboard tracker", "/user/vive_tracker_htcx/role/keyboard" }, - -}; - -// Fallback Khronos simple controller -OpenXRDefs::IOPath OpenXRDefs::simple_io_paths[] = { - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Select click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/select/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Select click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/select/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, -}; - -// Original HTC Vive wands -OpenXRDefs::IOPath OpenXRDefs::vive_io_paths[] = { - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "System click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/system/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "System click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/system/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, -}; - -// Microsoft motion controller (original WMR controllers) -OpenXRDefs::IOPath OpenXRDefs::motion_io_paths[] = { - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Thumbstick", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Thumbstick click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Thumbstick click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, -}; - -// HP MR controller (newer G2 controllers) -OpenXRDefs::IOPath OpenXRDefs::hpmr_io_paths[] = { - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "X click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/x/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Y click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/y/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "A click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/a/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "B click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/b/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Squeeze", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/squeeze/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Squeeze", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/squeeze/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - - { "Thumbstick", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Thumbstick click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Thumbstick click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, -}; - -// Meta touch controller (original touch controllers, Quest 1 and Quest 2 controllers) -OpenXRDefs::IOPath OpenXRDefs::touch_io_paths[] = { - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "System click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/system/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "X click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/x/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "X touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/x/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Y click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/y/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Y touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/y/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "A click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/a/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "A touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/a/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "B click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/b/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "B touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/b/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Squeeze", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/squeeze/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Squeeze", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/squeeze/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - - { "Thumbstick", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Thumbstick click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Thumbstick click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, -}; - -// Valve index controller -OpenXRDefs::IOPath OpenXRDefs::index_io_paths[] = { - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - - { "System click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/system/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "System click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/system/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "A click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/a/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "A touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/a/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "A click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/a/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "A touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/a/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "B click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/b/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "B touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/b/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "B click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/b/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "B touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/b/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Squeeze", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/squeeze/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Squeeze", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/squeeze/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - - { "Thumbstick", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Thumbstick click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Thumbstick click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad force", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad/force", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad force", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad/force", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, -}; - -// Samsung odyssey controller -OpenXRDefs::IOPath OpenXRDefs::odyssey_io_paths[] = { - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Thumbstick", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Thumbstick click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Thumbstick click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, -}; - -// Vive Cosmos controller -OpenXRDefs::IOPath OpenXRDefs::vive_cosmos_paths[] = { - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "System click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/system/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "X click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/x/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Y click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/y/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "A click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/a/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "B click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/b/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Shoulder click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/right/input/shoulder/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Shoulder click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/shoulder/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Thumbstick", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Thumbstick click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Thumbstick click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, -}; - -// Vive Focus 3 controller -OpenXRDefs::IOPath OpenXRDefs::vive_focus3_paths[] = { - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "System click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/system/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "X click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/x/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Y click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/y/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "A click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/a/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "B click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/b/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/touch ", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/squeeze/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/squeeze/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Thumbstick", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Thumbstick click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/thumbstick/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Thumbstick click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Thumbstick touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbstick/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Thumbrest touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/thumbrest/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, -}; - -// Huawei controller -OpenXRDefs::IOPath OpenXRDefs::huawei_controller_paths[] = { - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Aim pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/aim/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Palm pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/palm_ext/pose", OpenXRAction::OPENXR_ACTION_POSE }, - - { "Home click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/home/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Home click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/home/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Back click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/back/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Back click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/back/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Volume up click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/volume_up/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Volume up click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/volume_up/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Volume down click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/volume_down/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Volume down click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/volume_down/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_LEFT_HAND], "/user/hand/left/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_RIGHT_HAND], "/user/hand/right/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, -}; - -// HTC Vive tracker -// Interestingly enough trackers don't have buttons or inputs, yet these are defined in the spec. -// I think this can be supported through attachments on the trackers. -OpenXRDefs::IOPath OpenXRDefs::vive_tracker_controller_paths[] = { - // { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_HANDHELD_TRACKER], "/user/vive_tracker_htcx/role/handheld_object/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/left_foot/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/right_foot/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/left_shoulder/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/right_shoulder/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/left_elbow/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/right_elbow/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/left_knee/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/right_knee/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_WAIST_TRACKER], "/user/vive_tracker_htcx/role/waist/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CHEST_TRACKER], "/user/vive_tracker_htcx/role/chest/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CAMERA_TRACKER], "/user/vive_tracker_htcx/role/camera/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Menu click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_KEYBOARD_TRACKER], "/user/vive_tracker_htcx/role/keyboard/input/menu/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - // { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_HANDHELD_TRACKER], "/user/vive_tracker_htcx/role/handheld_object/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/left_foot/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/right_foot/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/left_shoulder/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/right_shoulder/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/left_elbow/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/right_elbow/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/left_knee/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/right_knee/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_WAIST_TRACKER], "/user/vive_tracker_htcx/role/waist/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CHEST_TRACKER], "/user/vive_tracker_htcx/role/chest/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CAMERA_TRACKER], "/user/vive_tracker_htcx/role/camera/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - { "Trigger", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_KEYBOARD_TRACKER], "/user/vive_tracker_htcx/role/keyboard/input/trigger/value", OpenXRAction::OPENXR_ACTION_FLOAT }, - - // { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_HANDHELD_TRACKER], "/user/vive_tracker_htcx/role/handheld_object/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/left_foot/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/right_foot/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/left_shoulder/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/right_shoulder/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/left_elbow/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/right_elbow/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/left_knee/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/right_knee/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_WAIST_TRACKER], "/user/vive_tracker_htcx/role/waist/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CHEST_TRACKER], "/user/vive_tracker_htcx/role/chest/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CAMERA_TRACKER], "/user/vive_tracker_htcx/role/camera/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trigger click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_KEYBOARD_TRACKER], "/user/vive_tracker_htcx/role/keyboard/input/trigger/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - // { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_HANDHELD_TRACKER], "/user/vive_tracker_htcx/role/handheld_object/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/left_foot/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/right_foot/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/left_shoulder/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/right_shoulder/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/left_elbow/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/right_elbow/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/left_knee/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/right_knee/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_WAIST_TRACKER], "/user/vive_tracker_htcx/role/waist/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CHEST_TRACKER], "/user/vive_tracker_htcx/role/chest/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CAMERA_TRACKER], "/user/vive_tracker_htcx/role/camera/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Squeeze click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_KEYBOARD_TRACKER], "/user/vive_tracker_htcx/role/keyboard/input/squeeze/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - // { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_HANDHELD_TRACKER], "/user/vive_tracker_htcx/role/handheld_object/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/left_foot/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/right_foot/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/left_shoulder/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/right_shoulder/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/left_elbow/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/right_elbow/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/left_knee/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/right_knee/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_WAIST_TRACKER], "/user/vive_tracker_htcx/role/waist/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CHEST_TRACKER], "/user/vive_tracker_htcx/role/chest/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CAMERA_TRACKER], "/user/vive_tracker_htcx/role/camera/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - { "Trackpad", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_KEYBOARD_TRACKER], "/user/vive_tracker_htcx/role/keyboard/input/trackpad", OpenXRAction::OPENXR_ACTION_VECTOR2 }, - - // { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_HANDHELD_TRACKER], "/user/vive_tracker_htcx/role/handheld_object/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/left_foot/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/right_foot/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/left_shoulder/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/right_shoulder/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/left_elbow/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/right_elbow/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/left_knee/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/right_knee/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_WAIST_TRACKER], "/user/vive_tracker_htcx/role/waist/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CHEST_TRACKER], "/user/vive_tracker_htcx/role/chest/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CAMERA_TRACKER], "/user/vive_tracker_htcx/role/camera/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad click", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_KEYBOARD_TRACKER], "/user/vive_tracker_htcx/role/keyboard/input/trackpad/click", OpenXRAction::OPENXR_ACTION_BOOL }, - - // { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_HANDHELD_TRACKER], "/user/vive_tracker_htcx/role/handheld_object/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/left_foot/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/right_foot/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/left_shoulder/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/right_shoulder/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/left_elbow/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/right_elbow/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/left_knee/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/right_knee/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_WAIST_TRACKER], "/user/vive_tracker_htcx/role/waist/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CHEST_TRACKER], "/user/vive_tracker_htcx/role/chest/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CAMERA_TRACKER], "/user/vive_tracker_htcx/role/camera/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - { "Trackpad touch", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_KEYBOARD_TRACKER], "/user/vive_tracker_htcx/role/keyboard/input/trackpad/touch", OpenXRAction::OPENXR_ACTION_BOOL }, - - // { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_HANDHELD_TRACKER], "/user/vive_tracker_htcx/role/handheld_object/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/left_foot/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/right_foot/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/left_shoulder/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/right_shoulder/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/left_elbow/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/right_elbow/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/left_knee/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/right_knee/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_WAIST_TRACKER], "/user/vive_tracker_htcx/role/waist/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CHEST_TRACKER], "/user/vive_tracker_htcx/role/chest/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CAMERA_TRACKER], "/user/vive_tracker_htcx/role/camera/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - { "Grip pose", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_KEYBOARD_TRACKER], "/user/vive_tracker_htcx/role/keyboard/input/grip/pose", OpenXRAction::OPENXR_ACTION_POSE }, - - // { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_HANDHELD_TRACKER], "/user/vive_tracker_htcx/role/handheld_object/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/left_foot/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_FOOT_TRACKER], "/user/vive_tracker_htcx/role/right_foot/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/left_shoulder/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_SHOULDER_TRACKER], "/user/vive_tracker_htcx/role/right_shoulder/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/left_elbow/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_ELBOW_TRACKER], "/user/vive_tracker_htcx/role/right_elbow/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_LEFT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/left_knee/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_RIGHT_KNEE_TRACKER], "/user/vive_tracker_htcx/role/right_knee/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_WAIST_TRACKER], "/user/vive_tracker_htcx/role/waist/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CHEST_TRACKER], "/user/vive_tracker_htcx/role/chest/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_CAMERA_TRACKER], "/user/vive_tracker_htcx/role/camera/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, - { "Haptic output", &OpenXRDefs::available_top_level_paths[OpenXRDefs::OPENXR_HTC_KEYBOARD_TRACKER], "/user/vive_tracker_htcx/role/keyboard/output/haptic", OpenXRAction::OPENXR_ACTION_HAPTIC }, -}; - -OpenXRDefs::InteractionProfile OpenXRDefs::available_interaction_profiles[] = { - { - "Simple controller", // display_name - "/interaction_profiles/khr/simple_controller", // openxr_path - simple_io_paths, // io_paths - sizeof(simple_io_paths) / sizeof(OpenXRDefs::IOPath) // io_path_count - }, - { - "HTC Vive wand", // display_name - "/interaction_profiles/htc/vive_controller", // openxr_path - vive_io_paths, // io_paths - sizeof(vive_io_paths) / sizeof(OpenXRDefs::IOPath) // io_path_count - }, - { - "MS Motion controller", // display_name - "/interaction_profiles/microsoft/motion_controller", // openxr_path - motion_io_paths, // io_paths - sizeof(motion_io_paths) / sizeof(OpenXRDefs::IOPath) // io_path_count - }, - { - "HPMR controller", // display_name - "/interaction_profiles/hp/mixed_reality_controller", // openxr_path - hpmr_io_paths, // io_paths - sizeof(hpmr_io_paths) / sizeof(OpenXRDefs::IOPath) // io_path_count - }, - { - "Touch controller", // display_name - "/interaction_profiles/oculus/touch_controller", // openxr_path - touch_io_paths, // io_paths - sizeof(touch_io_paths) / sizeof(OpenXRDefs::IOPath) // io_path_count - }, - { - "Index controller", // display_name - "/interaction_profiles/valve/index_controller", // openxr_path - index_io_paths, // io_paths - sizeof(index_io_paths) / sizeof(OpenXRDefs::IOPath) // io_path_count - }, - { - "Samsung Odyssey controller", // display_name - "/interaction_profiles/samsung/odyssey_controller", // openxr_path - odyssey_io_paths, // io_paths - sizeof(odyssey_io_paths) / sizeof(OpenXRDefs::IOPath) // io_path_count - }, - { - "Vive Cosmos controller", // display_name - "/interaction_profiles/htc/vive_cosmos_controller", // openxr_path - vive_cosmos_paths, // io_paths - sizeof(vive_cosmos_paths) / sizeof(OpenXRDefs::IOPath) // io_path_count - }, - { - "Vive Focus 3 controller", // display_name - "/interaction_profiles/htc/vive_focus3_controller", // openxr_path - vive_focus3_paths, // io_paths - sizeof(vive_focus3_paths) / sizeof(OpenXRDefs::IOPath) // io_path_count - }, - { - "Huawei controller", // display_name - "/interaction_profiles/huawei/controller", // openxr_path - huawei_controller_paths, // io_paths - sizeof(huawei_controller_paths) / sizeof(OpenXRDefs::IOPath) // io_path_count - }, - - { - "HTC Vive tracker", // display_name - "/interaction_profiles/htc/vive_tracker_htcx", // openxr_path - vive_tracker_controller_paths, // io_paths - sizeof(vive_tracker_controller_paths) / sizeof(OpenXRDefs::IOPath) // io_path_count - }, -}; - -int OpenXRDefs::available_interaction_profile_count = sizeof(OpenXRDefs::available_interaction_profiles) / sizeof(OpenXRDefs::InteractionProfile); - -const OpenXRDefs::TopLevelPath *OpenXRDefs::get_top_level_path(const String p_top_level_path) { - for (int i = 0; i < OPENXR_TOP_LEVEL_PATH_MAX; i++) { - if (available_top_level_paths[i].openxr_path == p_top_level_path) { - return &OpenXRDefs::available_top_level_paths[i]; - } - } - - return nullptr; -} - -const OpenXRDefs::InteractionProfile *OpenXRDefs::get_profile(const String p_interaction_profile_path) { - for (int i = 0; i < available_interaction_profile_count; i++) { - if (available_interaction_profiles[i].openxr_path == p_interaction_profile_path) { - return &available_interaction_profiles[i]; - } - } - - return nullptr; -} - -const OpenXRDefs::IOPath *OpenXRDefs::InteractionProfile::get_io_path(const String p_io_path) const { - for (int i = 0; i < available_interaction_profiles[i].io_path_count; i++) { - if (io_paths[i].openxr_path == p_io_path) { - return &io_paths[i]; - } - } - - return nullptr; -} - -const OpenXRDefs::IOPath *OpenXRDefs::get_io_path(const String p_interaction_profile_path, const String p_io_path) { - const OpenXRDefs::InteractionProfile *profile = OpenXRDefs::get_profile(p_interaction_profile_path); - if (profile != nullptr) { - return profile->get_io_path(p_io_path); - } - - return nullptr; -} - -PackedStringArray OpenXRDefs::get_interaction_profile_paths() { - PackedStringArray arr; - - for (int i = 0; i < available_interaction_profile_count; i++) { - arr.push_back(available_interaction_profiles[i].openxr_path); - } - - return arr; -} diff --git a/modules/openxr/action_map/openxr_defs.h b/modules/openxr/action_map/openxr_defs.h deleted file mode 100644 index 446e6eb9c6..0000000000 --- a/modules/openxr/action_map/openxr_defs.h +++ /dev/null @@ -1,124 +0,0 @@ -/*************************************************************************/ -/* openxr_defs.h */ -/*************************************************************************/ -/* This file is part of: */ -/* GODOT ENGINE */ -/* https://godotengine.org */ -/*************************************************************************/ -/* Copyright (c) 2007-2022 Juan Linietsky, Ariel Manzur. */ -/* Copyright (c) 2014-2022 Godot Engine contributors (cf. AUTHORS.md). */ -/* */ -/* Permission is hereby granted, free of charge, to any person obtaining */ -/* a copy of this software and associated documentation files (the */ -/* "Software"), to deal in the Software without restriction, including */ -/* without limitation the rights to use, copy, modify, merge, publish, */ -/* distribute, sublicense, and/or sell copies of the Software, and to */ -/* permit persons to whom the Software is furnished to do so, subject to */ -/* the following conditions: */ -/* */ -/* The above copyright notice and this permission notice shall be */ -/* included in all copies or substantial portions of the Software. */ -/* */ -/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */ -/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ -/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ -/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */ -/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */ -/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */ -/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -/*************************************************************************/ - -#ifndef OPENXR_DEFS_H -#define OPENXR_DEFS_H - -#include "openxr_action.h" - -/////////////////////////////////////////////////////////////////////////// -// Stores available interaction profiles -// -// OpenXR defines and hardcodes all the supported input devices and their -// paths as part of the OpenXR spec. When support for new devices is -// introduced this often starts life as extensions that need to be enabled -// until they are adopted into the core. As there is no interface to -// enumerate the possibly paths, and that any OpenXR runtime would likely -// limit such enumeration to those input devices supported by that runtime -// there is no other option than to hardcode this. -// -// Note on action type that automatic conversions between boolean and float -// are supported but otherwise action types should match between action and -// input/output paths. - -class OpenXRDefs { -public: - enum TOP_LEVEL_PATH { - // Core OpenXR toplevel paths - OPENXR_LEFT_HAND, - OPENXR_RIGHT_HAND, - OPENXR_HEAD, - OPENXR_GAMEPAD, - OPENXR_TREADMILL, - - // HTC tracker extension toplevel paths - // OPENXR_HTC_HANDHELD_TRACKER, - OPENXR_HTC_LEFT_FOOT_TRACKER, - OPENXR_HTC_RIGHT_FOOT_TRACKER, - OPENXR_HTC_LEFT_SHOULDER_TRACKER, - OPENXR_HTC_RIGHT_SHOULDER_TRACKER, - OPENXR_HTC_LEFT_ELBOW_TRACKER, - OPENXR_HTC_RIGHT_ELBOW_TRACKER, - OPENXR_HTC_LEFT_KNEE_TRACKER, - OPENXR_HTC_RIGHT_KNEE_TRACKER, - OPENXR_HTC_WAIST_TRACKER, - OPENXR_HTC_CHEST_TRACKER, - OPENXR_HTC_CAMERA_TRACKER, - OPENXR_HTC_KEYBOARD_TRACKER, - - OPENXR_TOP_LEVEL_PATH_MAX - }; - - struct TopLevelPath { - const char *display_name; // User friendly display name (i.e. Left controller) - const char *openxr_path; // Path in OpenXR (i.e. /user/hand/left) - }; - - struct IOPath { - const char *display_name; // User friendly display name (i.e. Grip pose (left controller)) - const TopLevelPath *top_level_path; // Top level path identifying the usage of the device in relation to this input/output - const char *openxr_path; // Path in OpenXR (i.e. /user/hand/left/input/grip/pose) - const OpenXRAction::ActionType action_type; // Type of input/output - }; - - struct InteractionProfile { - const char *display_name; // User friendly display name (i.e. Simple controller) - const char *openxr_path; // Path in OpenXR (i.e. /interaction_profiles/khr/simple_controller) - const IOPath *io_paths; // Inputs and outputs for this device - const int io_path_count; // Number of inputs and outputs for this device - - const IOPath *get_io_path(const String p_io_path) const; - }; - -private: - static TopLevelPath available_top_level_paths[OPENXR_TOP_LEVEL_PATH_MAX]; - static IOPath simple_io_paths[]; - static IOPath vive_io_paths[]; - static IOPath motion_io_paths[]; - static IOPath hpmr_io_paths[]; - static IOPath touch_io_paths[]; - static IOPath index_io_paths[]; - static IOPath odyssey_io_paths[]; - static IOPath vive_cosmos_paths[]; - static IOPath vive_focus3_paths[]; - static IOPath huawei_controller_paths[]; - static IOPath vive_tracker_controller_paths[]; - static InteractionProfile available_interaction_profiles[]; - static int available_interaction_profile_count; - -public: - static const TopLevelPath *get_top_level_path(const String p_top_level_path); - static const InteractionProfile *get_profile(const String p_interaction_profile_path); - static const IOPath *get_io_path(const String p_interaction_profile_path, const String p_io_path); - - static PackedStringArray get_interaction_profile_paths(); -}; - -#endif // OPENXR_DEFS_H diff --git a/modules/openxr/action_map/openxr_interaction_profile.cpp b/modules/openxr/action_map/openxr_interaction_profile.cpp index abb714c3bb..8bb657a2db 100644 --- a/modules/openxr/action_map/openxr_interaction_profile.cpp +++ b/modules/openxr/action_map/openxr_interaction_profile.cpp @@ -58,6 +58,7 @@ Ref<OpenXRIPBinding> OpenXRIPBinding::new_binding(const Ref<OpenXRAction> p_acti void OpenXRIPBinding::set_action(const Ref<OpenXRAction> p_action) { action = p_action; + emit_changed(); } Ref<OpenXRAction> OpenXRIPBinding::get_action() const { @@ -70,6 +71,7 @@ int OpenXRIPBinding::get_path_count() const { void OpenXRIPBinding::set_paths(const PackedStringArray p_paths) { paths = p_paths; + emit_changed(); } PackedStringArray OpenXRIPBinding::get_paths() const { @@ -78,6 +80,7 @@ PackedStringArray OpenXRIPBinding::get_paths() const { void OpenXRIPBinding::parse_paths(const String p_paths) { paths = p_paths.split(",", false); + emit_changed(); } bool OpenXRIPBinding::has_path(const String p_path) const { @@ -87,12 +90,14 @@ bool OpenXRIPBinding::has_path(const String p_path) const { void OpenXRIPBinding::add_path(const String p_path) { if (!paths.has(p_path)) { paths.push_back(p_path); + emit_changed(); } } void OpenXRIPBinding::remove_path(const String p_path) { if (paths.has(p_path)) { paths.erase(p_path); + emit_changed(); } } @@ -122,6 +127,7 @@ Ref<OpenXRInteractionProfile> OpenXRInteractionProfile::new_profile(const char * void OpenXRInteractionProfile::set_interaction_profile_path(const String p_input_profile_path) { interaction_profile_path = p_input_profile_path; + emit_changed(); } String OpenXRInteractionProfile::get_interaction_profile_path() const { @@ -139,9 +145,10 @@ Ref<OpenXRIPBinding> OpenXRInteractionProfile::get_binding(int p_index) const { } void OpenXRInteractionProfile::set_bindings(Array p_bindings) { - bindings = p_bindings; - // TODO add check here that our bindings don't contain duplicate actions + + bindings = p_bindings; + emit_changed(); } Array OpenXRInteractionProfile::get_bindings() const { @@ -166,6 +173,7 @@ void OpenXRInteractionProfile::add_binding(Ref<OpenXRIPBinding> p_binding) { ERR_FAIL_COND_MSG(get_binding_for_action(p_binding->get_action()).is_valid(), "There is already a binding for this action in this interaction profile"); bindings.push_back(p_binding); + emit_changed(); } } @@ -173,6 +181,7 @@ void OpenXRInteractionProfile::remove_binding(Ref<OpenXRIPBinding> p_binding) { int idx = bindings.find(p_binding); if (idx != -1) { bindings.remove_at(idx); + emit_changed(); } } @@ -192,6 +201,17 @@ void OpenXRInteractionProfile::remove_binding_for_action(const Ref<OpenXRAction> } } +bool OpenXRInteractionProfile::has_binding_for_action(const Ref<OpenXRAction> p_action) { + for (int i = bindings.size() - 1; i >= 0; i--) { + Ref<OpenXRIPBinding> binding = bindings[i]; + if (binding->get_action() == p_action) { + return true; + } + } + + return false; +} + OpenXRInteractionProfile::~OpenXRInteractionProfile() { bindings.clear(); } diff --git a/modules/openxr/action_map/openxr_interaction_profile.h b/modules/openxr/action_map/openxr_interaction_profile.h index c77fd490bb..c7db77870e 100644 --- a/modules/openxr/action_map/openxr_interaction_profile.h +++ b/modules/openxr/action_map/openxr_interaction_profile.h @@ -34,7 +34,7 @@ #include "core/io/resource.h" #include "openxr_action.h" -#include "openxr_defs.h" +#include "openxr_interaction_profile_meta_data.h" class OpenXRIPBinding : public Resource { GDCLASS(OpenXRIPBinding, Resource); @@ -94,6 +94,7 @@ public: void add_new_binding(const Ref<OpenXRAction> p_action, const char *p_paths); // Create a new binding for this profile void remove_binding_for_action(const Ref<OpenXRAction> p_action); // Remove all bindings for this action + bool has_binding_for_action(const Ref<OpenXRAction> p_action); // Returns true if we have a binding for this action ~OpenXRInteractionProfile(); }; diff --git a/modules/openxr/action_map/openxr_interaction_profile_meta_data.cpp b/modules/openxr/action_map/openxr_interaction_profile_meta_data.cpp new file mode 100644 index 0000000000..db4062b196 --- /dev/null +++ b/modules/openxr/action_map/openxr_interaction_profile_meta_data.cpp @@ -0,0 +1,713 @@ +/*************************************************************************/ +/* openxr_interaction_profile_meta_data.cpp */ +/*************************************************************************/ +/* This file is part of: */ +/* GODOT ENGINE */ +/* https://godotengine.org */ +/*************************************************************************/ +/* Copyright (c) 2007-2022 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2022 Godot Engine contributors (cf. AUTHORS.md). */ +/* */ +/* Permission is hereby granted, free of charge, to any person obtaining */ +/* a copy of this software and associated documentation files (the */ +/* "Software"), to deal in the Software without restriction, including */ +/* without limitation the rights to use, copy, modify, merge, publish, */ +/* distribute, sublicense, and/or sell copies of the Software, and to */ +/* permit persons to whom the Software is furnished to do so, subject to */ +/* the following conditions: */ +/* */ +/* The above copyright notice and this permission notice shall be */ +/* included in all copies or substantial portions of the Software. */ +/* */ +/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */ +/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ +/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ +/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */ +/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */ +/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */ +/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ +/*************************************************************************/ + +#include "openxr_interaction_profile_meta_data.h" + +#include <openxr/openxr.h> + +OpenXRInteractionProfileMetaData *OpenXRInteractionProfileMetaData::singleton = nullptr; + +OpenXRInteractionProfileMetaData::OpenXRInteractionProfileMetaData() { + singleton = this; + + _register_core_metadata(); +} + +OpenXRInteractionProfileMetaData::~OpenXRInteractionProfileMetaData() { + singleton = nullptr; +} + +void OpenXRInteractionProfileMetaData::_bind_methods() { + ClassDB::bind_method(D_METHOD("register_top_level_path", "display_name", "openxr_path", "openxr_extension_name"), &OpenXRInteractionProfileMetaData::register_top_level_path); + ClassDB::bind_method(D_METHOD("register_interaction_profile", "display_name", "openxr_path", "openxr_extension_name"), &OpenXRInteractionProfileMetaData::register_interaction_profile); + ClassDB::bind_method(D_METHOD("register_io_path", "interaction_profile", "display_name", "toplevel_path", "openxr_path", "openxr_extension_name", "action_type"), &OpenXRInteractionProfileMetaData::register_io_path); +} + +void OpenXRInteractionProfileMetaData::register_top_level_path(const String &p_display_name, const String &p_openxr_path, const String &p_openxr_extension_name) { + ERR_FAIL_COND_MSG(has_top_level_path(p_openxr_path), p_openxr_path + " had already been registered"); + + TopLevelPath new_toplevel_path = { + p_display_name, + p_openxr_path, + p_openxr_extension_name + }; + + top_level_paths.push_back(new_toplevel_path); +} + +void OpenXRInteractionProfileMetaData::register_interaction_profile(const String &p_display_name, const String &p_openxr_path, const String &p_openxr_extension_name) { + ERR_FAIL_COND_MSG(has_interaction_profile(p_openxr_path), p_openxr_path + " has already been registered"); + + InteractionProfile new_profile; + new_profile.display_name = p_display_name; + new_profile.openxr_path = p_openxr_path; + new_profile.openxr_extension_name = p_openxr_extension_name; + + interaction_profiles.push_back(new_profile); +} + +void OpenXRInteractionProfileMetaData::register_io_path(const String &p_interaction_profile, const String &p_display_name, const String &p_toplevel_path, const String &p_openxr_path, const String &p_openxr_extension_name, OpenXRAction::ActionType p_action_type) { + ERR_FAIL_COND_MSG(!has_interaction_profile(p_interaction_profile), "Unknown interaction profile " + p_interaction_profile); + ERR_FAIL_COND_MSG(!has_top_level_path(p_toplevel_path), "Unknown top level path " + p_toplevel_path); + + for (int i = 0; i < interaction_profiles.size(); i++) { + if (interaction_profiles[i].openxr_path == p_interaction_profile) { + ERR_FAIL_COND_MSG(interaction_profiles[i].has_io_path(p_openxr_path), p_interaction_profile + " already has io path " + p_openxr_path + " registered!"); + + IOPath new_io_path = { + p_display_name, + p_toplevel_path, + p_openxr_path, + p_openxr_extension_name, + p_action_type + }; + + interaction_profiles.ptrw()[i].io_paths.push_back(new_io_path); + } + } +} + +bool OpenXRInteractionProfileMetaData::has_top_level_path(const String p_openxr_path) const { + for (int i = 0; i < top_level_paths.size(); i++) { + if (top_level_paths[i].openxr_path == p_openxr_path) { + return true; + } + } + + return false; +} + +String OpenXRInteractionProfileMetaData::get_top_level_name(const String p_openxr_path) const { + for (int i = 0; i < top_level_paths.size(); i++) { + if (top_level_paths[i].openxr_path == p_openxr_path) { + return top_level_paths[i].display_name; + } + } + + return String(); +} + +String OpenXRInteractionProfileMetaData::get_top_level_extension(const String p_openxr_path) const { + for (int i = 0; i < top_level_paths.size(); i++) { + if (top_level_paths[i].openxr_path == p_openxr_path) { + return top_level_paths[i].openxr_extension_name; + } + } + + return XR_PATH_UNSUPPORTED_NAME; +} + +bool OpenXRInteractionProfileMetaData::has_interaction_profile(const String p_openxr_path) const { + for (int i = 0; i < interaction_profiles.size(); i++) { + if (interaction_profiles[i].openxr_path == p_openxr_path) { + return true; + } + } + + return false; +} + +String OpenXRInteractionProfileMetaData::get_interaction_profile_extension(const String p_openxr_path) const { + for (int i = 0; i < interaction_profiles.size(); i++) { + if (interaction_profiles[i].openxr_path == p_openxr_path) { + return interaction_profiles[i].openxr_extension_name; + } + } + + return XR_PATH_UNSUPPORTED_NAME; +} + +const OpenXRInteractionProfileMetaData::InteractionProfile *OpenXRInteractionProfileMetaData::get_profile(const String p_openxr_path) const { + for (int i = 0; i < interaction_profiles.size(); i++) { + if (interaction_profiles[i].openxr_path == p_openxr_path) { + return &interaction_profiles[i]; + } + } + + return nullptr; +} + +bool OpenXRInteractionProfileMetaData::InteractionProfile::has_io_path(const String p_io_path) const { + for (int i = 0; i < io_paths.size(); i++) { + if (io_paths[i].openxr_path == p_io_path) { + return true; + } + } + + return false; +} + +const OpenXRInteractionProfileMetaData::IOPath *OpenXRInteractionProfileMetaData::InteractionProfile::get_io_path(const String p_io_path) const { + for (int i = 0; i < io_paths.size(); i++) { + if (io_paths[i].openxr_path == p_io_path) { + return &io_paths[i]; + } + } + + return nullptr; +} + +const OpenXRInteractionProfileMetaData::IOPath *OpenXRInteractionProfileMetaData::get_io_path(const String p_interaction_profile, const String p_io_path) const { + const OpenXRInteractionProfileMetaData::InteractionProfile *profile = get_profile(p_interaction_profile); + if (profile != nullptr) { + return profile->get_io_path(p_io_path); + } + + return nullptr; +} + +PackedStringArray OpenXRInteractionProfileMetaData::get_interaction_profile_paths() const { + PackedStringArray arr; + + for (int i = 0; i < interaction_profiles.size(); i++) { + arr.push_back(interaction_profiles[i].openxr_path); + } + + return arr; +} + +void OpenXRInteractionProfileMetaData::_register_core_metadata() { + // Note, currently we add definitions that belong in extensions. + // Extensions are registered when our OpenXRAPI is instantiated + // however this does not happen in the editor. + // We are changing this in another PR, once that is accepted we + // can make the changes to move code into extensions where needed. + + // Note that we'll make an exception for XR_EXT_palm_pose, which is used everywhere + + // Our core toplevel paths + register_top_level_path("Left hand controller", "/user/hand/left", ""); + register_top_level_path("Right hand controller", "/user/hand/right", ""); + register_top_level_path("Head", "/user/head", ""); + register_top_level_path("Gamepad", "/user/gamepad", ""); + register_top_level_path("Treadmill", "/user/treadmill", ""); + + // TODO move this into OpenXRHTCViveTrackerExtension once this is supported. + // register_top_level_path("Handheld object tracker", "/user/vive_tracker_htcx/role/handheld_object", XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME); + register_top_level_path("Left foot tracker", "/user/vive_tracker_htcx/role/left_foot", XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME); + register_top_level_path("Right foot tracker", "/user/vive_tracker_htcx/role/right_foot", XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME); + register_top_level_path("Left shoulder tracker", "/user/vive_tracker_htcx/role/left_shoulder", XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME); + register_top_level_path("Right shoulder tracker", "/user/vive_tracker_htcx/role/right_shoulder", XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME); + register_top_level_path("Left elbow tracker", "/user/vive_tracker_htcx/role/left_elbow", XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME); + register_top_level_path("Right elbow tracker", "/user/vive_tracker_htcx/role/right_elbow", XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME); + register_top_level_path("Left knee tracker", "/user/vive_tracker_htcx/role/left_knee", XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME); + register_top_level_path("Right knee tracker", "/user/vive_tracker_htcx/role/right_knee", XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME); + register_top_level_path("Waist tracker", "/user/vive_tracker_htcx/role/waist", XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME); + register_top_level_path("Chest tracker", "/user/vive_tracker_htcx/role/chest", XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME); + register_top_level_path("Camera tracker", "/user/vive_tracker_htcx/role/camera", XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME); + register_top_level_path("Keyboard tracker", "/user/vive_tracker_htcx/role/keyboard", XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME); + + // Fallback Khronos simple controller + register_interaction_profile("Simple controller", "/interaction_profiles/khr/simple_controller", ""); + register_io_path("/interaction_profiles/khr/simple_controller", "Grip pose", "/user/hand/left", "/user/hand/left/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/khr/simple_controller", "Grip pose", "/user/hand/right", "/user/hand/right/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/khr/simple_controller", "Aim pose", "/user/hand/left", "/user/hand/left/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/khr/simple_controller", "Aim pose", "/user/hand/right", "/user/hand/right/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/khr/simple_controller", "Palm pose", "/user/hand/left", "/user/hand/left/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/khr/simple_controller", "Palm pose", "/user/hand/right", "/user/hand/right/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + + register_io_path("/interaction_profiles/khr/simple_controller", "Menu click", "/user/hand/left", "/user/hand/left/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/khr/simple_controller", "Menu click", "/user/hand/right", "/user/hand/right/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/khr/simple_controller", "Select click", "/user/hand/left", "/user/hand/left/input/select/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/khr/simple_controller", "Select click", "/user/hand/right", "/user/hand/right/input/select/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/khr/simple_controller", "Haptic output", "/user/hand/left", "/user/hand/left/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/khr/simple_controller", "Haptic output", "/user/hand/right", "/user/hand/right/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + + // Original HTC Vive wands + register_interaction_profile("HTC Vive wand", "/interaction_profiles/htc/vive_controller", ""); + register_io_path("/interaction_profiles/htc/vive_controller", "Grip pose", "/user/hand/left", "/user/hand/left/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_controller", "Grip pose", "/user/hand/right", "/user/hand/right/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_controller", "Aim pose", "/user/hand/left", "/user/hand/left/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_controller", "Aim pose", "/user/hand/right", "/user/hand/right/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_controller", "Palm pose", "/user/hand/left", "/user/hand/left/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_controller", "Palm pose", "/user/hand/right", "/user/hand/right/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + + register_io_path("/interaction_profiles/htc/vive_controller", "Menu click", "/user/hand/left", "/user/hand/left/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_controller", "Menu click", "/user/hand/right", "/user/hand/right/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_controller", "System click", "/user/hand/left", "/user/hand/left/input/system/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_controller", "System click", "/user/hand/right", "/user/hand/right/input/system/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_controller", "Trigger", "/user/hand/left", "/user/hand/left/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_controller", "Trigger click", "/user/hand/left", "/user/hand/left/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_controller", "Trigger", "/user/hand/right", "/user/hand/right/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_controller", "Trigger click", "/user/hand/right", "/user/hand/right/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_controller", "Squeeze click", "/user/hand/left", "/user/hand/left/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_controller", "Squeeze click", "/user/hand/right", "/user/hand/right/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_controller", "Trackpad", "/user/hand/left", "/user/hand/left/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_controller", "Trackpad click", "/user/hand/left", "/user/hand/left/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_controller", "Trackpad touch", "/user/hand/left", "/user/hand/left/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_controller", "Trackpad", "/user/hand/right", "/user/hand/right/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_controller", "Trackpad click", "/user/hand/right", "/user/hand/right/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_controller", "Trackpad touch", "/user/hand/right", "/user/hand/right/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_controller", "Haptic output", "/user/hand/left", "/user/hand/left/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_controller", "Haptic output", "/user/hand/right", "/user/hand/right/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + + // Microsoft motion controller (original WMR controllers) + register_interaction_profile("MS Motion controller", "/interaction_profiles/microsoft/motion_controller", ""); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Grip pose", "/user/hand/left", "/user/hand/left/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Grip pose", "/user/hand/right", "/user/hand/right/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Aim pose", "/user/hand/left", "/user/hand/left/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Aim pose", "/user/hand/right", "/user/hand/right/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Palm pose", "/user/hand/left", "/user/hand/left/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Palm pose", "/user/hand/right", "/user/hand/right/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + + register_io_path("/interaction_profiles/microsoft/motion_controller", "Menu click", "/user/hand/left", "/user/hand/left/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Menu click", "/user/hand/right", "/user/hand/right/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/microsoft/motion_controller", "Trigger", "/user/hand/left", "/user/hand/left/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Trigger click", "/user/hand/left", "/user/hand/left/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Trigger", "/user/hand/right", "/user/hand/right/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Trigger click", "/user/hand/right", "/user/hand/right/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/microsoft/motion_controller", "Squeeze click", "/user/hand/left", "/user/hand/left/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Squeeze click", "/user/hand/right", "/user/hand/right/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/microsoft/motion_controller", "Thumbstick", "/user/hand/left", "/user/hand/left/input/thumbstick", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Thumbstick click", "/user/hand/left", "/user/hand/left/input/thumbstick/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Thumbstick", "/user/hand/right", "/user/hand/right/input/thumbstick", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Thumbstick click", "/user/hand/right", "/user/hand/right/input/thumbstick/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/microsoft/motion_controller", "Trackpad", "/user/hand/left", "/user/hand/left/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Trackpad click", "/user/hand/left", "/user/hand/left/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Trackpad touch", "/user/hand/left", "/user/hand/left/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Trackpad", "/user/hand/right", "/user/hand/right/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Trackpad click", "/user/hand/right", "/user/hand/right/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Trackpad touch", "/user/hand/right", "/user/hand/right/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/microsoft/motion_controller", "Haptic output", "/user/hand/left", "/user/hand/left/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/microsoft/motion_controller", "Haptic output", "/user/hand/right", "/user/hand/right/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + + // Meta touch controller (original touch controllers, Quest 1 and Quest 2 controllers) + register_interaction_profile("Touch controller", "/interaction_profiles/oculus/touch_controller", ""); + register_io_path("/interaction_profiles/oculus/touch_controller", "Grip pose", "/user/hand/left", "/user/hand/left/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/oculus/touch_controller", "Grip pose", "/user/hand/right", "/user/hand/right/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/oculus/touch_controller", "Aim pose", "/user/hand/left", "/user/hand/left/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/oculus/touch_controller", "Aim pose", "/user/hand/right", "/user/hand/right/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/oculus/touch_controller", "Palm pose", "/user/hand/left", "/user/hand/left/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/oculus/touch_controller", "Palm pose", "/user/hand/right", "/user/hand/right/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + + register_io_path("/interaction_profiles/oculus/touch_controller", "Menu click", "/user/hand/left", "/user/hand/left/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/oculus/touch_controller", "System click", "/user/hand/right", "/user/hand/right/input/system/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/oculus/touch_controller", "X click", "/user/hand/left", "/user/hand/left/input/x/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/oculus/touch_controller", "X touch", "/user/hand/left", "/user/hand/left/input/x/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/oculus/touch_controller", "Y click", "/user/hand/left", "/user/hand/left/input/y/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/oculus/touch_controller", "Y touch", "/user/hand/left", "/user/hand/left/input/y/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/oculus/touch_controller", "A click", "/user/hand/right", "/user/hand/right/input/a/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/oculus/touch_controller", "A touch", "/user/hand/right", "/user/hand/right/input/a/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/oculus/touch_controller", "B click", "/user/hand/right", "/user/hand/right/input/b/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/oculus/touch_controller", "B touch", "/user/hand/right", "/user/hand/right/input/b/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/oculus/touch_controller", "Trigger", "/user/hand/left", "/user/hand/left/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/oculus/touch_controller", "Trigger touch", "/user/hand/left", "/user/hand/left/input/trigger/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/oculus/touch_controller", "Trigger", "/user/hand/right", "/user/hand/right/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/oculus/touch_controller", "Trigger touch", "/user/hand/right", "/user/hand/right/input/trigger/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/oculus/touch_controller", "Squeeze", "/user/hand/left", "/user/hand/left/input/squeeze/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/oculus/touch_controller", "Squeeze", "/user/hand/right", "/user/hand/right/input/squeeze/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + + register_io_path("/interaction_profiles/oculus/touch_controller", "Thumbstick", "/user/hand/left", "/user/hand/left/input/thumbstick", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/oculus/touch_controller", "Thumbstick click", "/user/hand/left", "/user/hand/left/input/thumbstick/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/oculus/touch_controller", "Thumbstick touch", "/user/hand/left", "/user/hand/left/input/thumbstick/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/oculus/touch_controller", "Thumbstick", "/user/hand/right", "/user/hand/right/input/thumbstick", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/oculus/touch_controller", "Thumbstick click", "/user/hand/right", "/user/hand/right/input/thumbstick/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/oculus/touch_controller", "Thumbstick touch", "/user/hand/right", "/user/hand/right/input/thumbstick/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/oculus/touch_controller", "Haptic output", "/user/hand/left", "/user/hand/left/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/oculus/touch_controller", "Haptic output", "/user/hand/right", "/user/hand/right/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + + // Valve Index controller + register_interaction_profile("Index controller", "/interaction_profiles/valve/index_controller", ""); + register_io_path("/interaction_profiles/valve/index_controller", "Grip pose", "/user/hand/left", "/user/hand/left/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/valve/index_controller", "Grip pose", "/user/hand/right", "/user/hand/right/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/valve/index_controller", "Aim pose", "/user/hand/left", "/user/hand/left/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/valve/index_controller", "Aim pose", "/user/hand/right", "/user/hand/right/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/valve/index_controller", "Palm pose", "/user/hand/left", "/user/hand/left/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/valve/index_controller", "Palm pose", "/user/hand/right", "/user/hand/right/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + + register_io_path("/interaction_profiles/valve/index_controller", "System click", "/user/hand/left", "/user/hand/left/input/system/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "System click", "/user/hand/right", "/user/hand/right/input/system/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/valve/index_controller", "A click", "/user/hand/left", "/user/hand/left/input/a/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "A touch", "/user/hand/left", "/user/hand/left/input/a/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "A click", "/user/hand/right", "/user/hand/right/input/a/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "A touch", "/user/hand/right", "/user/hand/right/input/a/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "B click", "/user/hand/left", "/user/hand/left/input/b/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "B touch", "/user/hand/left", "/user/hand/left/input/b/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "B click", "/user/hand/right", "/user/hand/right/input/b/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "B touch", "/user/hand/right", "/user/hand/right/input/b/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/valve/index_controller", "Trigger", "/user/hand/left", "/user/hand/left/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/valve/index_controller", "Trigger click", "/user/hand/left", "/user/hand/left/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "Trigger touch", "/user/hand/left", "/user/hand/left/input/trigger/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "Trigger", "/user/hand/right", "/user/hand/right/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/valve/index_controller", "Trigger click", "/user/hand/right", "/user/hand/right/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "Trigger touch", "/user/hand/right", "/user/hand/right/input/trigger/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/valve/index_controller", "Squeeze", "/user/hand/left", "/user/hand/left/input/squeeze/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/valve/index_controller", "Squeeze", "/user/hand/right", "/user/hand/right/input/squeeze/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + + register_io_path("/interaction_profiles/valve/index_controller", "Thumbstick", "/user/hand/left", "/user/hand/left/input/thumbstick", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/valve/index_controller", "Thumbstick click", "/user/hand/left", "/user/hand/left/input/thumbstick/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "Thumbstick touch", "/user/hand/left", "/user/hand/left/input/thumbstick/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "Thumbstick", "/user/hand/right", "/user/hand/right/input/thumbstick", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/valve/index_controller", "Thumbstick click", "/user/hand/right", "/user/hand/right/input/thumbstick/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "Thumbstick touch", "/user/hand/right", "/user/hand/right/input/thumbstick/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/valve/index_controller", "Trackpad", "/user/hand/left", "/user/hand/left/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/valve/index_controller", "Trackpad force", "/user/hand/left", "/user/hand/left/input/trackpad/force", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/valve/index_controller", "Trackpad touch", "/user/hand/left", "/user/hand/left/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/valve/index_controller", "Trackpad", "/user/hand/right", "/user/hand/right/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/valve/index_controller", "Trackpad force", "/user/hand/right", "/user/hand/right/input/trackpad/force", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/valve/index_controller", "Trackpad touch", "/user/hand/right", "/user/hand/right/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/valve/index_controller", "Haptic output", "/user/hand/left", "/user/hand/left/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/valve/index_controller", "Haptic output", "/user/hand/right", "/user/hand/right/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + + // HP MR controller (newer G2 controllers) + // TODO move this into an extension once this is supported. + register_interaction_profile("HPMR controller", "/interaction_profiles/hp/mixed_reality_controller", XR_EXT_HP_MIXED_REALITY_CONTROLLER_EXTENSION_NAME); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Grip pose", "/user/hand/left", "/user/hand/left/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Grip pose", "/user/hand/right", "/user/hand/right/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Aim pose", "/user/hand/left", "/user/hand/left/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Aim pose", "/user/hand/right", "/user/hand/right/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Palm pose", "/user/hand/left", "/user/hand/left/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Palm pose", "/user/hand/right", "/user/hand/right/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Menu click", "/user/hand/left", "/user/hand/left/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Menu click", "/user/hand/right", "/user/hand/right/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "X click", "/user/hand/left", "/user/hand/left/input/x/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Y click", "/user/hand/left", "/user/hand/left/input/y/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "A click", "/user/hand/right", "/user/hand/right/input/a/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "B click", "/user/hand/right", "/user/hand/right/input/b/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Trigger", "/user/hand/left", "/user/hand/left/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Trigger click", "/user/hand/left", "/user/hand/left/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Trigger", "/user/hand/right", "/user/hand/right/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Trigger click", "/user/hand/right", "/user/hand/right/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Squeeze", "/user/hand/left", "/user/hand/left/input/squeeze/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Squeeze", "/user/hand/right", "/user/hand/right/input/squeeze/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Thumbstick", "/user/hand/left", "/user/hand/left/input/thumbstick", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Thumbstick click", "/user/hand/left", "/user/hand/left/input/thumbstick/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Thumbstick", "/user/hand/right", "/user/hand/right/input/thumbstick", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Thumbstick click", "/user/hand/right", "/user/hand/right/input/thumbstick/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Haptic output", "/user/hand/left", "/user/hand/left/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/hp/mixed_reality_controller", "Haptic output", "/user/hand/right", "/user/hand/right/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + + // Samsung Odyssey controller + // TODO move this into an extension once this is supported. + register_interaction_profile("Samsung Odyssey controller", "/interaction_profiles/samsung/odyssey_controller", XR_EXT_SAMSUNG_ODYSSEY_CONTROLLER_EXTENSION_NAME); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Grip pose", "/user/hand/left", "/user/hand/left/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Grip pose", "/user/hand/right", "/user/hand/right/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Aim pose", "/user/hand/left", "/user/hand/left/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Aim pose", "/user/hand/right", "/user/hand/right/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Palm pose", "/user/hand/left", "/user/hand/left/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Palm pose", "/user/hand/right", "/user/hand/right/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Menu click", "/user/hand/left", "/user/hand/left/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Menu click", "/user/hand/right", "/user/hand/right/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Trigger", "/user/hand/left", "/user/hand/left/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Trigger click", "/user/hand/left", "/user/hand/left/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Trigger", "/user/hand/right", "/user/hand/right/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Trigger click", "/user/hand/right", "/user/hand/right/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Squeeze click", "/user/hand/left", "/user/hand/left/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Squeeze click", "/user/hand/right", "/user/hand/right/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Thumbstick", "/user/hand/left", "/user/hand/left/input/thumbstick", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Thumbstick click", "/user/hand/left", "/user/hand/left/input/thumbstick/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Thumbstick", "/user/hand/right", "/user/hand/right/input/thumbstick", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Thumbstick click", "/user/hand/right", "/user/hand/right/input/thumbstick/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Trackpad", "/user/hand/left", "/user/hand/left/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Trackpad click", "/user/hand/left", "/user/hand/left/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Trackpad touch", "/user/hand/left", "/user/hand/left/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Trackpad", "/user/hand/right", "/user/hand/right/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Trackpad click", "/user/hand/right", "/user/hand/right/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Trackpad touch", "/user/hand/right", "/user/hand/right/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Haptic output", "/user/hand/left", "/user/hand/left/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/samsung/odyssey_controller", "Haptic output", "/user/hand/right", "/user/hand/right/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + + // HTC Vive Cosmos controller + // TODO move this into an extension once this is supported. + register_interaction_profile("Vive Cosmos controller", "/interaction_profiles/htc/vive_cosmos_controller", XR_HTC_VIVE_COSMOS_CONTROLLER_INTERACTION_EXTENSION_NAME); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Grip pose", "/user/hand/left", "/user/hand/left/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Grip pose", "/user/hand/right", "/user/hand/right/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Aim pose", "/user/hand/left", "/user/hand/left/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Aim pose", "/user/hand/right", "/user/hand/right/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Palm pose", "/user/hand/left", "/user/hand/left/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Palm pose", "/user/hand/right", "/user/hand/right/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Menu click", "/user/hand/left", "/user/hand/left/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "System click", "/user/hand/right", "/user/hand/right/input/system/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "X click", "/user/hand/left", "/user/hand/left/input/x/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Y click", "/user/hand/left", "/user/hand/left/input/y/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "A click", "/user/hand/right", "/user/hand/right/input/a/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "B click", "/user/hand/right", "/user/hand/right/input/b/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Shoulder click", "/user/hand/left", "/user/hand/left/input/shoulder/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Shoulder click", "/user/hand/right", "/user/hand/right/input/shoulder/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Trigger", "/user/hand/left", "/user/hand/left/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Trigger click", "/user/hand/left", "/user/hand/left/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Trigger", "/user/hand/right", "/user/hand/right/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Trigger click", "/user/hand/right", "/user/hand/right/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Squeeze click", "/user/hand/left", "/user/hand/left/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Squeeze click", "/user/hand/right", "/user/hand/right/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Thumbstick", "/user/hand/left", "/user/hand/left/input/thumbstick", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Thumbstick click", "/user/hand/left", "/user/hand/left/input/thumbstick/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Thumbstick touch", "/user/hand/left", "/user/hand/left/input/thumbstick/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Thumbstick", "/user/hand/right", "/user/hand/right/input/thumbstick", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Thumbstick click", "/user/hand/right", "/user/hand/right/input/thumbstick/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Thumbstick touch", "/user/hand/right", "/user/hand/right/input/thumbstick/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Haptic output", "/user/hand/left", "/user/hand/left/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_cosmos_controller", "Haptic output", "/user/hand/right", "/user/hand/right/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + + // HTC Vive Focus 3 controller + // TODO move this into an extension once this is supported. + register_interaction_profile("Vive Focus 3 controller", "/interaction_profiles/htc/vive_focus3_controller", XR_HTC_VIVE_FOCUS3_CONTROLLER_INTERACTION_EXTENSION_NAME); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Grip pose", "/user/hand/left", "/user/hand/left/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Grip pose", "/user/hand/right", "/user/hand/right/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Aim pose", "/user/hand/left", "/user/hand/left/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Aim pose", "/user/hand/right", "/user/hand/right/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Palm pose", "/user/hand/left", "/user/hand/left/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Palm pose", "/user/hand/right", "/user/hand/right/input/palm_ext/pose", XR_EXT_PALM_POSE_EXTENSION_NAME, OpenXRAction::OPENXR_ACTION_POSE); + + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Menu click", "/user/hand/left", "/user/hand/left/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "System click", "/user/hand/right", "/user/hand/right/input/system/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "X click", "/user/hand/left", "/user/hand/left/input/x/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Y click", "/user/hand/left", "/user/hand/left/input/y/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "A click", "/user/hand/right", "/user/hand/right/input/a/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "B click", "/user/hand/right", "/user/hand/right/input/b/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Trigger", "/user/hand/left", "/user/hand/left/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Trigger click", "/user/hand/left", "/user/hand/left/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Trigger touch", "/user/hand/left", "/user/hand/left/input/trigger/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Trigger", "/user/hand/right", "/user/hand/right/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Trigger click", "/user/hand/right", "/user/hand/right/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Trigger touch", "/user/hand/right", "/user/hand/right/input/trigger/touch ", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Squeeze click", "/user/hand/left", "/user/hand/left/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Squeeze touch", "/user/hand/left", "/user/hand/left/input/squeeze/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Squeeze click", "/user/hand/right", "/user/hand/right/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Squeeze touch", "/user/hand/right", "/user/hand/right/input/squeeze/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Thumbstick", "/user/hand/left", "/user/hand/left/input/thumbstick", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Thumbstick click", "/user/hand/left", "/user/hand/left/input/thumbstick/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Thumbstick touch", "/user/hand/left", "/user/hand/left/input/thumbstick/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Thumbstick", "/user/hand/right", "/user/hand/right/input/thumbstick", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Thumbstick click", "/user/hand/right", "/user/hand/right/input/thumbstick/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Thumbstick touch", "/user/hand/right", "/user/hand/right/input/thumbstick/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Thumbrest touch", "/user/hand/right", "/user/hand/right/input/thumbrest/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Haptic output", "/user/hand/left", "/user/hand/left/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_focus3_controller", "Haptic output", "/user/hand/right", "/user/hand/right/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + + // Huawei controller + // TODO move this into an extension once this is supported. + register_interaction_profile("Huawei controller", "/interaction_profiles/huawei/controller", XR_HUAWEI_CONTROLLER_INTERACTION_EXTENSION_NAME); + register_io_path("/interaction_profiles/huawei/controller", "Grip pose", "/user/hand/left", "/user/hand/left/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/huawei/controller", "Grip pose", "/user/hand/right", "/user/hand/right/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/huawei/controller", "Aim pose", "/user/hand/left", "/user/hand/left/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/huawei/controller", "Aim pose", "/user/hand/right", "/user/hand/right/input/aim/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/huawei/controller", "Palm pose", "/user/hand/left", "/user/hand/left/input/palm_ext/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/huawei/controller", "Palm pose", "/user/hand/right", "/user/hand/right/input/palm_ext/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + + register_io_path("/interaction_profiles/huawei/controller", "Home click", "/user/hand/left", "/user/hand/left/input/home/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/huawei/controller", "Home click", "/user/hand/right", "/user/hand/right/input/home/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/huawei/controller", "Back click", "/user/hand/left", "/user/hand/left/input/back/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/huawei/controller", "Back click", "/user/hand/right", "/user/hand/right/input/back/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/huawei/controller", "Volume up click", "/user/hand/left", "/user/hand/left/input/volume_up/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/huawei/controller", "Volume up click", "/user/hand/right", "/user/hand/right/input/volume_up/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/huawei/controller", "Volume down click", "/user/hand/left", "/user/hand/left/input/volume_down/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/huawei/controller", "Volume down click", "/user/hand/right", "/user/hand/right/input/volume_down/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/huawei/controller", "Trigger", "/user/hand/left", "/user/hand/left/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/huawei/controller", "Trigger click", "/user/hand/left", "/user/hand/left/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/huawei/controller", "Trigger", "/user/hand/right", "/user/hand/right/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/huawei/controller", "Trigger click", "/user/hand/right", "/user/hand/right/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/huawei/controller", "Trackpad", "/user/hand/left", "/user/hand/left/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/huawei/controller", "Trackpad click", "/user/hand/left", "/user/hand/left/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/huawei/controller", "Trackpad touch", "/user/hand/left", "/user/hand/left/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/huawei/controller", "Trackpad", "/user/hand/right", "/user/hand/right/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/huawei/controller", "Trackpad click", "/user/hand/right", "/user/hand/right/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/huawei/controller", "Trackpad touch", "/user/hand/right", "/user/hand/right/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + register_io_path("/interaction_profiles/huawei/controller", "Haptic output", "/user/hand/left", "/user/hand/left/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/huawei/controller", "Haptic output", "/user/hand/right", "/user/hand/right/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + + // HTC Vive tracker + // Interestingly enough trackers don't have buttons or inputs, yet these are defined in the spec. + // I think this can be supported through attachments on the trackers. + // TODO move this into an extension once this is supported. + register_interaction_profile("HTC Vive tracker", "/interaction_profiles/htc/vive_tracker_htcx", XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Menu click", "/user/vive_tracker_htcx/role/left_foot", "/user/vive_tracker_htcx/role/left_foot/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Menu click", "/user/vive_tracker_htcx/role/right_foot", "/user/vive_tracker_htcx/role/right_foot/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Menu click", "/user/vive_tracker_htcx/role/left_shoulder", "/user/vive_tracker_htcx/role/left_shoulder/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Menu click", "/user/vive_tracker_htcx/role/right_shoulder", "/user/vive_tracker_htcx/role/right_shoulder/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Menu click", "/user/vive_tracker_htcx/role/left_elbow", "/user/vive_tracker_htcx/role/left_elbow/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Menu click", "/user/vive_tracker_htcx/role/right_elbow", "/user/vive_tracker_htcx/role/right_elbow/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Menu click", "/user/vive_tracker_htcx/role/left_knee", "/user/vive_tracker_htcx/role/left_knee/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Menu click", "/user/vive_tracker_htcx/role/right_knee", "/user/vive_tracker_htcx/role/right_knee/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Menu click", "/user/vive_tracker_htcx/role/waist", "/user/vive_tracker_htcx/role/waist/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Menu click", "/user/vive_tracker_htcx/role/chest", "/user/vive_tracker_htcx/role/chest/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Menu click", "/user/vive_tracker_htcx/role/camera", "/user/vive_tracker_htcx/role/camera/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Menu click", "/user/vive_tracker_htcx/role/keyboard", "/user/vive_tracker_htcx/role/keyboard/input/menu/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + // register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger", "/user/vive_tracker_htcx/role/handheld_object", "/user/vive_tracker_htcx/role/handheld_object/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger", "/user/vive_tracker_htcx/role/left_foot", "/user/vive_tracker_htcx/role/left_foot/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger", "/user/vive_tracker_htcx/role/right_foot", "/user/vive_tracker_htcx/role/right_foot/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger", "/user/vive_tracker_htcx/role/left_shoulder", "/user/vive_tracker_htcx/role/left_shoulder/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger", "/user/vive_tracker_htcx/role/right_shoulder", "/user/vive_tracker_htcx/role/right_shoulder/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger", "/user/vive_tracker_htcx/role/left_elbow", "/user/vive_tracker_htcx/role/left_elbow/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger", "/user/vive_tracker_htcx/role/right_elbow", "/user/vive_tracker_htcx/role/right_elbow/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger", "/user/vive_tracker_htcx/role/left_knee", "/user/vive_tracker_htcx/role/left_knee/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger", "/user/vive_tracker_htcx/role/right_knee", "/user/vive_tracker_htcx/role/right_knee/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger", "/user/vive_tracker_htcx/role/waist", "/user/vive_tracker_htcx/role/waist/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger", "/user/vive_tracker_htcx/role/chest", "/user/vive_tracker_htcx/role/chest/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger", "/user/vive_tracker_htcx/role/camera", "/user/vive_tracker_htcx/role/camera/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger", "/user/vive_tracker_htcx/role/keyboard", "/user/vive_tracker_htcx/role/keyboard/input/trigger/value", "", OpenXRAction::OPENXR_ACTION_FLOAT); + + // register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger click", "/user/vive_tracker_htcx/role/handheld_object", "/user/vive_tracker_htcx/role/handheld_object/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger click", "/user/vive_tracker_htcx/role/left_foot", "/user/vive_tracker_htcx/role/left_foot/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger click", "/user/vive_tracker_htcx/role/right_foot", "/user/vive_tracker_htcx/role/right_foot/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger click", "/user/vive_tracker_htcx/role/left_shoulder", "/user/vive_tracker_htcx/role/left_shoulder/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger click", "/user/vive_tracker_htcx/role/right_shoulder", "/user/vive_tracker_htcx/role/right_shoulder/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger click", "/user/vive_tracker_htcx/role/left_elbow", "/user/vive_tracker_htcx/role/left_elbow/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger click", "/user/vive_tracker_htcx/role/right_elbow", "/user/vive_tracker_htcx/role/right_elbow/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger click", "/user/vive_tracker_htcx/role/left_knee", "/user/vive_tracker_htcx/role/left_knee/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger click", "/user/vive_tracker_htcx/role/right_knee", "/user/vive_tracker_htcx/role/right_knee/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger click", "/user/vive_tracker_htcx/role/waist", "/user/vive_tracker_htcx/role/waist/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger click", "/user/vive_tracker_htcx/role/chest", "/user/vive_tracker_htcx/role/chest/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger click", "/user/vive_tracker_htcx/role/camera", "/user/vive_tracker_htcx/role/camera/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trigger click", "/user/vive_tracker_htcx/role/keyboard", "/user/vive_tracker_htcx/role/keyboard/input/trigger/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + // register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Squeeze click", "/user/vive_tracker_htcx/role/handheld_object", "/user/vive_tracker_htcx/role/handheld_object/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Squeeze click", "/user/vive_tracker_htcx/role/left_foot", "/user/vive_tracker_htcx/role/left_foot/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Squeeze click", "/user/vive_tracker_htcx/role/right_foot", "/user/vive_tracker_htcx/role/right_foot/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Squeeze click", "/user/vive_tracker_htcx/role/left_shoulder", "/user/vive_tracker_htcx/role/left_shoulder/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Squeeze click", "/user/vive_tracker_htcx/role/right_shoulder", "/user/vive_tracker_htcx/role/right_shoulder/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Squeeze click", "/user/vive_tracker_htcx/role/left_elbow", "/user/vive_tracker_htcx/role/left_elbow/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Squeeze click", "/user/vive_tracker_htcx/role/right_elbow", "/user/vive_tracker_htcx/role/right_elbow/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Squeeze click", "/user/vive_tracker_htcx/role/left_knee", "/user/vive_tracker_htcx/role/left_knee/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Squeeze click", "/user/vive_tracker_htcx/role/right_knee", "/user/vive_tracker_htcx/role/right_knee/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Squeeze click", "/user/vive_tracker_htcx/role/waist", "/user/vive_tracker_htcx/role/waist/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Squeeze click", "/user/vive_tracker_htcx/role/chest", "/user/vive_tracker_htcx/role/chest/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Squeeze click", "/user/vive_tracker_htcx/role/camera", "/user/vive_tracker_htcx/role/camera/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Squeeze click", "/user/vive_tracker_htcx/role/keyboard", "/user/vive_tracker_htcx/role/keyboard/input/squeeze/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + // register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad", "/user/vive_tracker_htcx/role/handheld_object", "/user/vive_tracker_htcx/role/handheld_object/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad", "/user/vive_tracker_htcx/role/left_foot", "/user/vive_tracker_htcx/role/left_foot/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad", "/user/vive_tracker_htcx/role/right_foot", "/user/vive_tracker_htcx/role/right_foot/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad", "/user/vive_tracker_htcx/role/left_shoulder", "/user/vive_tracker_htcx/role/left_shoulder/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad", "/user/vive_tracker_htcx/role/right_shoulder", "/user/vive_tracker_htcx/role/right_shoulder/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad", "/user/vive_tracker_htcx/role/left_elbow", "/user/vive_tracker_htcx/role/left_elbow/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad", "/user/vive_tracker_htcx/role/right_elbow", "/user/vive_tracker_htcx/role/right_elbow/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad", "/user/vive_tracker_htcx/role/left_knee", "/user/vive_tracker_htcx/role/left_knee/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad", "/user/vive_tracker_htcx/role/right_knee", "/user/vive_tracker_htcx/role/right_knee/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad", "/user/vive_tracker_htcx/role/waist", "/user/vive_tracker_htcx/role/waist/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad", "/user/vive_tracker_htcx/role/chest", "/user/vive_tracker_htcx/role/chest/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad", "/user/vive_tracker_htcx/role/camera", "/user/vive_tracker_htcx/role/camera/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad", "/user/vive_tracker_htcx/role/keyboard", "/user/vive_tracker_htcx/role/keyboard/input/trackpad", "", OpenXRAction::OPENXR_ACTION_VECTOR2); + + // register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad click", "/user/vive_tracker_htcx/role/handheld_object", "/user/vive_tracker_htcx/role/handheld_object/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad click", "/user/vive_tracker_htcx/role/left_foot", "/user/vive_tracker_htcx/role/left_foot/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad click", "/user/vive_tracker_htcx/role/right_foot", "/user/vive_tracker_htcx/role/right_foot/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad click", "/user/vive_tracker_htcx/role/left_shoulder", "/user/vive_tracker_htcx/role/left_shoulder/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad click", "/user/vive_tracker_htcx/role/right_shoulder", "/user/vive_tracker_htcx/role/right_shoulder/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad click", "/user/vive_tracker_htcx/role/left_elbow", "/user/vive_tracker_htcx/role/left_elbow/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad click", "/user/vive_tracker_htcx/role/right_elbow", "/user/vive_tracker_htcx/role/right_elbow/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad click", "/user/vive_tracker_htcx/role/left_knee", "/user/vive_tracker_htcx/role/left_knee/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad click", "/user/vive_tracker_htcx/role/right_knee", "/user/vive_tracker_htcx/role/right_knee/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad click", "/user/vive_tracker_htcx/role/waist", "/user/vive_tracker_htcx/role/waist/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad click", "/user/vive_tracker_htcx/role/chest", "/user/vive_tracker_htcx/role/chest/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad click", "/user/vive_tracker_htcx/role/camera", "/user/vive_tracker_htcx/role/camera/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad click", "/user/vive_tracker_htcx/role/keyboard", "/user/vive_tracker_htcx/role/keyboard/input/trackpad/click", "", OpenXRAction::OPENXR_ACTION_BOOL); + + // register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad touch", "/user/vive_tracker_htcx/role/handheld_object", "/user/vive_tracker_htcx/role/handheld_object/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad touch", "/user/vive_tracker_htcx/role/left_foot", "/user/vive_tracker_htcx/role/left_foot/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad touch", "/user/vive_tracker_htcx/role/right_foot", "/user/vive_tracker_htcx/role/right_foot/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad touch", "/user/vive_tracker_htcx/role/left_shoulder", "/user/vive_tracker_htcx/role/left_shoulder/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad touch", "/user/vive_tracker_htcx/role/right_shoulder", "/user/vive_tracker_htcx/role/right_shoulder/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad touch", "/user/vive_tracker_htcx/role/left_elbow", "/user/vive_tracker_htcx/role/left_elbow/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad touch", "/user/vive_tracker_htcx/role/right_elbow", "/user/vive_tracker_htcx/role/right_elbow/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad touch", "/user/vive_tracker_htcx/role/left_knee", "/user/vive_tracker_htcx/role/left_knee/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad touch", "/user/vive_tracker_htcx/role/right_knee", "/user/vive_tracker_htcx/role/right_knee/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad touch", "/user/vive_tracker_htcx/role/waist", "/user/vive_tracker_htcx/role/waist/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad touch", "/user/vive_tracker_htcx/role/chest", "/user/vive_tracker_htcx/role/chest/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad touch", "/user/vive_tracker_htcx/role/camera", "/user/vive_tracker_htcx/role/camera/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Trackpad touch", "/user/vive_tracker_htcx/role/keyboard", "/user/vive_tracker_htcx/role/keyboard/input/trackpad/touch", "", OpenXRAction::OPENXR_ACTION_BOOL); + + // register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Grip pose", "/user/vive_tracker_htcx/role/handheld_object", "/user/vive_tracker_htcx/role/handheld_object/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Grip pose", "/user/vive_tracker_htcx/role/left_foot", "/user/vive_tracker_htcx/role/left_foot/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Grip pose", "/user/vive_tracker_htcx/role/right_foot", "/user/vive_tracker_htcx/role/right_foot/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Grip pose", "/user/vive_tracker_htcx/role/left_shoulder", "/user/vive_tracker_htcx/role/left_shoulder/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Grip pose", "/user/vive_tracker_htcx/role/right_shoulder", "/user/vive_tracker_htcx/role/right_shoulder/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Grip pose", "/user/vive_tracker_htcx/role/left_elbow", "/user/vive_tracker_htcx/role/left_elbow/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Grip pose", "/user/vive_tracker_htcx/role/right_elbow", "/user/vive_tracker_htcx/role/right_elbow/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Grip pose", "/user/vive_tracker_htcx/role/left_knee", "/user/vive_tracker_htcx/role/left_knee/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Grip pose", "/user/vive_tracker_htcx/role/right_knee", "/user/vive_tracker_htcx/role/right_knee/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Grip pose", "/user/vive_tracker_htcx/role/waist", "/user/vive_tracker_htcx/role/waist/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Grip pose", "/user/vive_tracker_htcx/role/chest", "/user/vive_tracker_htcx/role/chest/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Grip pose", "/user/vive_tracker_htcx/role/camera", "/user/vive_tracker_htcx/role/camera/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Grip pose", "/user/vive_tracker_htcx/role/keyboard", "/user/vive_tracker_htcx/role/keyboard/input/grip/pose", "", OpenXRAction::OPENXR_ACTION_POSE); + + // register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Haptic output", "/user/vive_tracker_htcx/role/handheld_object", "/user/vive_tracker_htcx/role/handheld_object/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Haptic output", "/user/vive_tracker_htcx/role/left_foot", "/user/vive_tracker_htcx/role/left_foot/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Haptic output", "/user/vive_tracker_htcx/role/right_foot", "/user/vive_tracker_htcx/role/right_foot/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Haptic output", "/user/vive_tracker_htcx/role/left_shoulder", "/user/vive_tracker_htcx/role/left_shoulder/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Haptic output", "/user/vive_tracker_htcx/role/right_shoulder", "/user/vive_tracker_htcx/role/right_shoulder/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Haptic output", "/user/vive_tracker_htcx/role/left_elbow", "/user/vive_tracker_htcx/role/left_elbow/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Haptic output", "/user/vive_tracker_htcx/role/right_elbow", "/user/vive_tracker_htcx/role/right_elbow/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Haptic output", "/user/vive_tracker_htcx/role/left_knee", "/user/vive_tracker_htcx/role/left_knee/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Haptic output", "/user/vive_tracker_htcx/role/right_knee", "/user/vive_tracker_htcx/role/right_knee/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Haptic output", "/user/vive_tracker_htcx/role/waist", "/user/vive_tracker_htcx/role/waist/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Haptic output", "/user/vive_tracker_htcx/role/chest", "/user/vive_tracker_htcx/role/chest/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Haptic output", "/user/vive_tracker_htcx/role/camera", "/user/vive_tracker_htcx/role/camera/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); + register_io_path("/interaction_profiles/htc/vive_tracker_htcx", "Haptic output", "/user/vive_tracker_htcx/role/keyboard", "/user/vive_tracker_htcx/role/keyboard/output/haptic", "", OpenXRAction::OPENXR_ACTION_HAPTIC); +} diff --git a/modules/openxr/action_map/openxr_interaction_profile_meta_data.h b/modules/openxr/action_map/openxr_interaction_profile_meta_data.h new file mode 100644 index 0000000000..0ae6454be7 --- /dev/null +++ b/modules/openxr/action_map/openxr_interaction_profile_meta_data.h @@ -0,0 +1,118 @@ +/*************************************************************************/ +/* openxr_interaction_profile_meta_data.h */ +/*************************************************************************/ +/* This file is part of: */ +/* GODOT ENGINE */ +/* https://godotengine.org */ +/*************************************************************************/ +/* Copyright (c) 2007-2022 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2022 Godot Engine contributors (cf. AUTHORS.md). */ +/* */ +/* Permission is hereby granted, free of charge, to any person obtaining */ +/* a copy of this software and associated documentation files (the */ +/* "Software"), to deal in the Software without restriction, including */ +/* without limitation the rights to use, copy, modify, merge, publish, */ +/* distribute, sublicense, and/or sell copies of the Software, and to */ +/* permit persons to whom the Software is furnished to do so, subject to */ +/* the following conditions: */ +/* */ +/* The above copyright notice and this permission notice shall be */ +/* included in all copies or substantial portions of the Software. */ +/* */ +/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */ +/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */ +/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.*/ +/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */ +/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */ +/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */ +/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ +/*************************************************************************/ + +#ifndef OPENXR_INTERACTION_PROFILE_META_DATA_H +#define OPENXR_INTERACTION_PROFILE_META_DATA_H + +#include "openxr_action.h" + +/////////////////////////////////////////////////////////////////////////// +// Stores available interaction profile meta data +// +// OpenXR defines and hardcodes all the supported input devices and their +// paths as part of the OpenXR spec. When support for new devices is +// introduced this often starts life as an extension that needs to be enabled +// until it's adopted into the core. As there is no interface to +// enumerate the possibly paths, and that any OpenXR runtime would likely +// limit such enumeration to those input devices supported by that runtime +// there is no other option than to hardcode this. +// +// Note that we need to include paths of our extensions in our action map +// regardless of whether the developers machine supports the extension or +// not. Unsupported paths are filtered out when the action map is submitted +// to the OpenXR runtime. +// +// Note on action type that automatic conversions between boolean and float +// are supported but otherwise action types should match between action and +// input/output paths. + +#include "core/object/object.h" + +#define XR_PATH_UNSUPPORTED_NAME "unsupported" + +class OpenXRInteractionProfileMetaData : public Object { +public: + struct TopLevelPath { + String display_name; // User friendly display name (i.e. Left controller) + String openxr_path; // Path in OpenXR (i.e. /user/hand/left) + String openxr_extension_name; // If set, only available if extension is enabled (i.e. XR_HTCX_vive_tracker_interaction) + }; + + struct IOPath { + String display_name; // User friendly display name (i.e. Grip pose (left controller)) + String top_level_path; // Top level path identifying the usage of the device in relation to this input/output + String openxr_path; // Path in OpenXR (i.e. /user/hand/left/input/grip/pose) + String openxr_extension_name; // If set, only available if extension is enabled (i.e. XR_EXT_palm_pose) + OpenXRAction::ActionType action_type; // Type of input/output + }; + + struct InteractionProfile { + String display_name; // User friendly display name (i.e. Simple controller) + String openxr_path; // Path in OpenXR (i.e. /interaction_profiles/khr/simple_controller) + String openxr_extension_name; // If set, only available if extension is enabled (i.e. XR_HTCX_vive_tracker_interaction) + Vector<IOPath> io_paths; // Inputs and outputs for this device + + bool has_io_path(const String p_io_path) const; + const IOPath *get_io_path(const String p_io_path) const; + }; + +private: + static OpenXRInteractionProfileMetaData *singleton; + + Vector<TopLevelPath> top_level_paths; + Vector<InteractionProfile> interaction_profiles; + + void _register_core_metadata(); + +protected: + static void _bind_methods(); + +public: + static OpenXRInteractionProfileMetaData *get_singleton() { return singleton; } + + OpenXRInteractionProfileMetaData(); + ~OpenXRInteractionProfileMetaData(); + + void register_top_level_path(const String &p_display_name, const String &p_openxr_path, const String &p_openxr_extension_name); + bool has_top_level_path(const String p_openxr_path) const; + String get_top_level_name(const String p_openxr_path) const; + String get_top_level_extension(const String p_openxr_path) const; + + void register_interaction_profile(const String &p_display_name, const String &p_openxr_path, const String &p_openxr_extension_name); + bool has_interaction_profile(const String p_openxr_path) const; + String get_interaction_profile_extension(const String p_openxr_path) const; + const InteractionProfile *get_profile(const String p_openxr_path) const; + PackedStringArray get_interaction_profile_paths() const; + + void register_io_path(const String &p_interaction_profile, const String &p_display_name, const String &p_toplevel_path, const String &p_openxr_path, const String &p_openxr_extension_name, OpenXRAction::ActionType p_action_type); + const IOPath *get_io_path(const String p_interaction_profile, const String p_io_path) const; +}; + +#endif // OPENXR_INTERACTION_PROFILE_META_DATA_H diff --git a/modules/openxr/editor/openxr_action_editor.cpp b/modules/openxr/editor/openxr_action_editor.cpp index 52216fa483..a6c99741d7 100644 --- a/modules/openxr/editor/openxr_action_editor.cpp +++ b/modules/openxr/editor/openxr_action_editor.cpp @@ -29,8 +29,13 @@ /*************************************************************************/ #include "openxr_action_editor.h" +#include "editor/editor_node.h" void OpenXRActionEditor::_bind_methods() { + ClassDB::bind_method(D_METHOD("_do_set_name", "name"), &OpenXRActionEditor::_do_set_name); + ClassDB::bind_method(D_METHOD("_do_set_localized_name", "name"), &OpenXRActionEditor::_do_set_localized_name); + ClassDB::bind_method(D_METHOD("_do_set_action_type", "type"), &OpenXRActionEditor::_do_set_action_type); + ADD_SIGNAL(MethodInfo("remove", PropertyInfo(Variant::OBJECT, "action_editor"))); } @@ -48,24 +53,71 @@ void OpenXRActionEditor::_notification(int p_what) { } void OpenXRActionEditor::_on_action_name_changed(const String p_new_text) { - // TODO validate if entry is allowed - - // If our localized name matches our action name, set this too - if (action->get_name() == action->get_localized_name()) { - action->set_localized_name(p_new_text); - action_localized_name->set_text(p_new_text); + if (action->get_name() != p_new_text) { + undo_redo->create_action(TTR("Rename Action")); + undo_redo->add_do_method(this, "_do_set_name", p_new_text); + undo_redo->add_undo_method(this, "_do_set_name", action->get_name()); + undo_redo->commit_action(false); + + // If our localized name matches our action name, set this too + if (action->get_name() == action->get_localized_name()) { + undo_redo->create_action(TTR("Rename Actions Localized name")); + undo_redo->add_do_method(this, "_do_set_localized_name", p_new_text); + undo_redo->add_undo_method(this, "_do_set_localized_name", action->get_localized_name()); + undo_redo->commit_action(false); + + action->set_localized_name(p_new_text); + action_localized_name->set_text(p_new_text); + } + action->set_name(p_new_text); + action->set_edited(true); } +} + +void OpenXRActionEditor::_do_set_name(const String p_new_text) { action->set_name(p_new_text); + action->set_edited(true); + action_name->set_text(p_new_text); } void OpenXRActionEditor::_on_action_localized_name_changed(const String p_new_text) { + if (action->get_localized_name() != p_new_text) { + undo_redo->create_action(TTR("Rename Actions Localized name")); + undo_redo->add_do_method(this, "_do_set_localized_name", p_new_text); + undo_redo->add_undo_method(this, "_do_set_localized_name", action->get_localized_name()); + undo_redo->commit_action(false); + + action->set_localized_name(p_new_text); + action->set_edited(true); + } +} + +void OpenXRActionEditor::_do_set_localized_name(const String p_new_text) { action->set_localized_name(p_new_text); + action->set_edited(true); + action_localized_name->set_text(p_new_text); } void OpenXRActionEditor::_on_item_selected(int p_idx) { ERR_FAIL_INDEX(p_idx, OpenXRAction::OPENXR_ACTION_MAX); - action->set_action_type(OpenXRAction::ActionType(p_idx)); + OpenXRAction::ActionType action_type = OpenXRAction::ActionType(p_idx); + + if (action->get_action_type() != action_type) { + undo_redo->create_action(TTR("Change Action Type")); + undo_redo->add_do_method(this, "_do_set_action_type", action_type); + undo_redo->add_undo_method(this, "_do_set_action_type", action->get_action_type()); + undo_redo->commit_action(false); + + action->set_action_type(action_type); + action->set_edited(true); + } +} + +void OpenXRActionEditor::_do_set_action_type(OpenXRAction::ActionType p_action_type) { + action->set_action_type(p_action_type); + action->set_edited(true); + action_type_button->select(int(action->get_action_type())); } void OpenXRActionEditor::_on_remove_action() { @@ -73,6 +125,7 @@ void OpenXRActionEditor::_on_remove_action() { } OpenXRActionEditor::OpenXRActionEditor(Ref<OpenXRAction> p_action) { + undo_redo = EditorNode::get_undo_redo(); action = p_action; set_h_size_flags(Control::SIZE_EXPAND_FILL); @@ -90,16 +143,16 @@ OpenXRActionEditor::OpenXRActionEditor(Ref<OpenXRAction> p_action) { action_localized_name->connect("text_changed", callable_mp(this, &OpenXRActionEditor::_on_action_localized_name_changed)); add_child(action_localized_name); - action_type = memnew(OptionButton); - action_type->add_item("Bool", OpenXRAction::OPENXR_ACTION_BOOL); - action_type->add_item("Float", OpenXRAction::OPENXR_ACTION_FLOAT); - action_type->add_item("Vector2", OpenXRAction::OPENXR_ACTION_VECTOR2); - action_type->add_item("Pose", OpenXRAction::OPENXR_ACTION_POSE); - action_type->add_item("Haptic", OpenXRAction::OPENXR_ACTION_HAPTIC); - action_type->select(int(action->get_action_type())); - action_type->set_custom_minimum_size(Size2(100.0, 0.0)); - action_type->connect("item_selected", callable_mp(this, &OpenXRActionEditor::_on_item_selected)); - add_child(action_type); + action_type_button = memnew(OptionButton); + action_type_button->add_item("Bool", OpenXRAction::OPENXR_ACTION_BOOL); + action_type_button->add_item("Float", OpenXRAction::OPENXR_ACTION_FLOAT); + action_type_button->add_item("Vector2", OpenXRAction::OPENXR_ACTION_VECTOR2); + action_type_button->add_item("Pose", OpenXRAction::OPENXR_ACTION_POSE); + action_type_button->add_item("Haptic", OpenXRAction::OPENXR_ACTION_HAPTIC); + action_type_button->select(int(action->get_action_type())); + action_type_button->set_custom_minimum_size(Size2(100.0, 0.0)); + action_type_button->connect("item_selected", callable_mp(this, &OpenXRActionEditor::_on_item_selected)); + add_child(action_type_button); // maybe add dropdown to edit our toplevel paths, or do we deduce them from our suggested bindings? diff --git a/modules/openxr/editor/openxr_action_editor.h b/modules/openxr/editor/openxr_action_editor.h index 6cf098cf08..66b7eebaeb 100644 --- a/modules/openxr/editor/openxr_action_editor.h +++ b/modules/openxr/editor/openxr_action_editor.h @@ -32,6 +32,7 @@ #define OPENXR_ACTION_EDITOR_H #include "../action_map/openxr_action.h" +#include "editor/editor_undo_redo_manager.h" #include "scene/gui/box_container.h" #include "scene/gui/button.h" #include "scene/gui/line_edit.h" @@ -42,11 +43,12 @@ class OpenXRActionEditor : public HBoxContainer { GDCLASS(OpenXRActionEditor, HBoxContainer); private: + Ref<EditorUndoRedoManager> undo_redo; Ref<OpenXRAction> action; LineEdit *action_name = nullptr; LineEdit *action_localized_name = nullptr; - OptionButton *action_type = nullptr; + OptionButton *action_type_button = nullptr; Button *rem_action = nullptr; void _theme_changed(); @@ -59,6 +61,11 @@ protected: static void _bind_methods(); void _notification(int p_what); + // used for undo/redo + void _do_set_name(const String p_new_text); + void _do_set_localized_name(const String p_new_text); + void _do_set_action_type(OpenXRAction::ActionType p_action_type); + public: Ref<OpenXRAction> get_action() { return action; }; OpenXRActionEditor(Ref<OpenXRAction> p_action); diff --git a/modules/openxr/editor/openxr_action_map_editor.cpp b/modules/openxr/editor/openxr_action_map_editor.cpp index b5223e5903..a2c33a91c4 100644 --- a/modules/openxr/editor/openxr_action_map_editor.cpp +++ b/modules/openxr/editor/openxr_action_map_editor.cpp @@ -40,14 +40,16 @@ void OpenXRActionMapEditor::_bind_methods() { ClassDB::bind_method("_add_action_set_editor", &OpenXRActionMapEditor::_add_action_set_editor); - ClassDB::bind_method("_update_action_sets", &OpenXRActionMapEditor::_update_action_sets); - ClassDB::bind_method("_add_interaction_profile_editor", &OpenXRActionMapEditor::_add_interaction_profile_editor); - ClassDB::bind_method("_update_interaction_profiles", &OpenXRActionMapEditor::_update_interaction_profiles); ClassDB::bind_method(D_METHOD("_add_action_set", "name"), &OpenXRActionMapEditor::_add_action_set); ClassDB::bind_method(D_METHOD("_set_focus_on_action_set", "action_set"), &OpenXRActionMapEditor::_set_focus_on_action_set); ClassDB::bind_method(D_METHOD("_remove_action_set", "name"), &OpenXRActionMapEditor::_remove_action_set); + + ClassDB::bind_method(D_METHOD("_do_add_action_set_editor", "action_set_editor"), &OpenXRActionMapEditor::_do_add_action_set_editor); + ClassDB::bind_method(D_METHOD("_do_remove_action_set_editor", "action_set_editor"), &OpenXRActionMapEditor::_do_remove_action_set_editor); + ClassDB::bind_method(D_METHOD("_do_add_interaction_profile_editor", "interaction_profile_editor"), &OpenXRActionMapEditor::_do_add_interaction_profile_editor); + ClassDB::bind_method(D_METHOD("_do_remove_interaction_profile_editor", "interaction_profile_editor"), &OpenXRActionMapEditor::_do_remove_interaction_profile_editor); } void OpenXRActionMapEditor::_notification(int p_what) { @@ -63,8 +65,8 @@ void OpenXRActionMapEditor::_notification(int p_what) { } break; case NOTIFICATION_READY: { - _update_action_sets(); - _update_interaction_profiles(); + _create_action_sets(); + _create_interaction_profiles(); } break; } } @@ -75,18 +77,13 @@ OpenXRActionSetEditor *OpenXRActionMapEditor::_add_action_set_editor(Ref<OpenXRA OpenXRActionSetEditor *action_set_editor = memnew(OpenXRActionSetEditor(action_map, p_action_set)); action_set_editor->connect("remove", callable_mp(this, &OpenXRActionMapEditor::_on_remove_action_set)); action_set_editor->connect("action_removed", callable_mp(this, &OpenXRActionMapEditor::_on_action_removed)); + actionsets_vb->add_child(action_set_editor); return action_set_editor; } -void OpenXRActionMapEditor::_update_action_sets() { - // out with the old... - while (actionsets_vb->get_child_count() > 0) { - memdelete(actionsets_vb->get_child(0)); - } - - // in with the new... +void OpenXRActionMapEditor::_create_action_sets() { if (action_map.is_valid()) { Array action_sets = action_map->get_action_sets(); for (int i = 0; i < action_sets.size(); i++) { @@ -116,22 +113,10 @@ OpenXRInteractionProfileEditorBase *OpenXRActionMapEditor::_add_interaction_prof new_profile_editor->add_theme_style_override("panel", get_theme_stylebox(SNAME("panel"), SNAME("Tree"))); tabs->set_tab_button_icon(tabs->get_tab_count() - 1, get_theme_icon(SNAME("close"), SNAME("TabBar"))); - interaction_profiles.push_back(new_profile_editor); - return new_profile_editor; } -void OpenXRActionMapEditor::_update_interaction_profiles() { - // out with the old... - while (interaction_profiles.size() > 0) { - Node *interaction_profile = interaction_profiles[0]; - interaction_profiles.remove_at(0); - - tabs->remove_child(interaction_profile); - interaction_profile->queue_free(); - } - - // in with the new... +void OpenXRActionMapEditor::_create_interaction_profiles() { if (action_map.is_valid()) { Array new_interaction_profiles = action_map->get_interaction_profiles(); for (int i = 0; i < new_interaction_profiles.size(); i++) { @@ -150,9 +135,17 @@ OpenXRActionSetEditor *OpenXRActionMapEditor::_add_action_set(String p_name) { new_action_set->set_name(p_name); new_action_set->set_localized_name(p_name); action_map->add_action_set(new_action_set); + action_map->set_edited(true); // update our editor right away - return _add_action_set_editor(new_action_set); + OpenXRActionSetEditor *action_set_editor = _add_action_set_editor(new_action_set); + + undo_redo->create_action(TTR("Add action set")); + undo_redo->add_do_method(this, "_do_add_action_set_editor", action_set_editor); + undo_redo->add_undo_method(this, "_do_remove_action_set_editor", action_set_editor); + undo_redo->commit_action(false); + + return action_set_editor; } void OpenXRActionMapEditor::_remove_action_set(String p_name) { @@ -160,13 +153,12 @@ void OpenXRActionMapEditor::_remove_action_set(String p_name) { Ref<OpenXRActionSet> action_set = action_map->find_action_set(p_name); ERR_FAIL_COND(action_set.is_null()); - if (action_set->get_action_count() > 0) { - // we should remove these and add to our redo/undo step before calling _remove_action_set - WARN_PRINT("Action set still has associated actions before being removed!"); + for (int i = 0; i < actionsets_vb->get_child_count(); i++) { + OpenXRActionSetEditor *action_set_editor = Object::cast_to<OpenXRActionSetEditor>(actionsets_vb->get_child(i)); + if (action_set_editor && action_set_editor->get_action_set() == action_set) { + _on_remove_action_set(action_set_editor); + } } - - // now we remove it - action_map->remove_action_set(action_set); } void OpenXRActionMapEditor::_on_add_action_set() { @@ -203,14 +195,23 @@ void OpenXRActionMapEditor::_on_remove_action_set(Object *p_action_set_editor) { Ref<OpenXRActionSet> action_set = action_set_editor->get_action_set(); ERR_FAIL_COND(action_set.is_null()); - action_map->remove_action_set(action_set); - actionsets_vb->remove_child(action_set_editor); - action_set_editor->queue_free(); + action_set_editor->remove_all_actions(); + + undo_redo->create_action(TTR("Remove action set")); + undo_redo->add_do_method(this, "_do_remove_action_set_editor", action_set_editor); + undo_redo->add_undo_method(this, "_do_add_action_set_editor", action_set_editor); + undo_redo->commit_action(true); + + action_map->set_edited(true); } void OpenXRActionMapEditor::_on_action_removed() { - // make sure our interaction profiles are updated - _update_interaction_profiles(); + for (int i = 0; i < tabs->get_tab_count(); i++) { + // First tab won't be an interaction profile editor, but being thorough.. + OpenXRInteractionProfileEditorBase *interaction_profile_editor = static_cast<OpenXRInteractionProfileEditorBase *>(tabs->get_tab_control(i)); + if (interaction_profile_editor) { + } + } } void OpenXRActionMapEditor::_on_add_interaction_profile() { @@ -232,20 +233,35 @@ void OpenXRActionMapEditor::_on_interaction_profile_selected(const String p_path new_profile.instantiate(); new_profile->set_interaction_profile_path(p_path); action_map->add_interaction_profile(new_profile); + action_map->set_edited(true); - _add_interaction_profile_editor(new_profile); + OpenXRInteractionProfileEditorBase *interaction_profile_editor = _add_interaction_profile_editor(new_profile); + + undo_redo->create_action(TTR("Add interaction profile")); + undo_redo->add_do_method(this, "_do_add_interaction_profile_editor", interaction_profile_editor); + undo_redo->add_undo_method(this, "_do_remove_interaction_profile_editor", interaction_profile_editor); + undo_redo->commit_action(false); tabs->set_current_tab(tabs->get_tab_count() - 1); } void OpenXRActionMapEditor::_load_action_map(const String p_path, bool p_create_new_if_missing) { - action_map = ResourceLoader::load(p_path, "", ResourceFormatLoader::CACHE_MODE_IGNORE); - if (action_map.is_null()) { - if (p_create_new_if_missing) { + Error err = OK; + action_map = ResourceLoader::load(p_path, "", ResourceFormatLoader::CACHE_MODE_IGNORE, &err); + if (err != OK) { + if ((err == ERR_FILE_NOT_FOUND || err == ERR_CANT_OPEN) && p_create_new_if_missing) { action_map.instantiate(); action_map->create_default_action_sets(); + + // Save it immediately + err = ResourceSaver::save(action_map, p_path); + if (err != OK) { + // show warning but continue + EditorNode::get_singleton()->show_warning(vformat(TTR("Error saving file %s: %s"), edited_path, error_names[err])); + } + } else { - EditorNode::get_singleton()->show_warning(TTR("Invalid file, not an OpenXR action map.")); + EditorNode::get_singleton()->show_warning(vformat(TTR("Error loading %s: %s."), edited_path, error_names[err])); edited_path = ""; header_label->set_text(""); @@ -254,55 +270,123 @@ void OpenXRActionMapEditor::_load_action_map(const String p_path, bool p_create_ } edited_path = p_path; - header_label->set_text(TTR("OpenXR Action map:") + " " + p_path.get_file()); + header_label->set_text(TTR("OpenXR Action map:") + " " + edited_path.get_file()); } void OpenXRActionMapEditor::_on_save_action_map() { Error err = ResourceSaver::save(action_map, edited_path); if (err != OK) { - EditorNode::get_singleton()->show_warning(vformat(TTR("Error saving file: %s"), edited_path)); + EditorNode::get_singleton()->show_warning(vformat(TTR("Error saving file %s: %s"), edited_path, error_names[err])); return; } - _update_action_sets(); - _update_interaction_profiles(); + // TODO should clear undo/redo history + + // out with the old + _clear_action_map(); + + _create_action_sets(); + _create_interaction_profiles(); } void OpenXRActionMapEditor::_on_reset_to_default_layout() { + // TODO should clear undo/redo history + + // out with the old + _clear_action_map(); + // create a new one action_map.unref(); action_map.instantiate(); action_map->create_default_action_sets(); + action_map->set_edited(true); - _update_action_sets(); - _update_interaction_profiles(); + _create_action_sets(); + _create_interaction_profiles(); } void OpenXRActionMapEditor::_on_tabs_tab_changed(int p_tab) { } void OpenXRActionMapEditor::_on_tab_button_pressed(int p_tab) { - OpenXRInteractionProfileEditorBase *profile_editor = static_cast<OpenXRInteractionProfileEditorBase *>(tabs->get_tab_control(p_tab)); - ERR_FAIL_NULL(profile_editor); + OpenXRInteractionProfileEditorBase *interaction_profile_editor = static_cast<OpenXRInteractionProfileEditorBase *>(tabs->get_tab_control(p_tab)); + ERR_FAIL_NULL(interaction_profile_editor); + + undo_redo->create_action(TTR("Remove interaction profile")); + undo_redo->add_do_method(this, "_do_remove_interaction_profile_editor", interaction_profile_editor); + undo_redo->add_undo_method(this, "_do_add_interaction_profile_editor", interaction_profile_editor); + undo_redo->commit_action(true); + + action_map->set_edited(true); +} + +void OpenXRActionMapEditor::_do_add_action_set_editor(OpenXRActionSetEditor *p_action_set_editor) { + Ref<OpenXRActionSet> action_set = p_action_set_editor->get_action_set(); + ERR_FAIL_COND(action_set.is_null()); + + action_map->add_action_set(action_set); + actionsets_vb->add_child(p_action_set_editor); +} + +void OpenXRActionMapEditor::_do_remove_action_set_editor(OpenXRActionSetEditor *p_action_set_editor) { + Ref<OpenXRActionSet> action_set = p_action_set_editor->get_action_set(); + ERR_FAIL_COND(action_set.is_null()); + + actionsets_vb->remove_child(p_action_set_editor); + action_map->remove_action_set(action_set); +} + +void OpenXRActionMapEditor::_do_add_interaction_profile_editor(OpenXRInteractionProfileEditorBase *p_interaction_profile_editor) { + Ref<OpenXRInteractionProfile> interaction_profile = p_interaction_profile_editor->get_interaction_profile(); + ERR_FAIL_COND(interaction_profile.is_null()); + + action_map->add_interaction_profile(interaction_profile); + tabs->add_child(p_interaction_profile_editor); + tabs->set_tab_button_icon(tabs->get_tab_count() - 1, get_theme_icon(SNAME("close"), SNAME("TabBar"))); + + tabs->set_current_tab(tabs->get_tab_count() - 1); +} - Ref<OpenXRInteractionProfile> interaction_profile = profile_editor->get_interaction_profile(); +void OpenXRActionMapEditor::_do_remove_interaction_profile_editor(OpenXRInteractionProfileEditorBase *p_interaction_profile_editor) { + Ref<OpenXRInteractionProfile> interaction_profile = p_interaction_profile_editor->get_interaction_profile(); ERR_FAIL_COND(interaction_profile.is_null()); + tabs->remove_child(p_interaction_profile_editor); action_map->remove_interaction_profile(interaction_profile); - tabs->remove_child(profile_editor); - profile_editor->queue_free(); } void OpenXRActionMapEditor::open_action_map(String p_path) { EditorNode::get_singleton()->make_bottom_panel_item_visible(this); + // out with the old... + _clear_action_map(); + + // now load in our new action map _load_action_map(p_path); - _update_action_sets(); - _update_interaction_profiles(); + _create_action_sets(); + _create_interaction_profiles(); +} + +void OpenXRActionMapEditor::_clear_action_map() { + while (actionsets_vb->get_child_count() > 0) { + Node *child = actionsets_vb->get_child(0); + actionsets_vb->remove_child(child); + child->queue_free(); + } + + for (int i = 0; i < tabs->get_tab_count(); i++) { + // First tab won't be an interaction profile editor, but being thorough.. + OpenXRInteractionProfileEditorBase *interaction_profile_editor = static_cast<OpenXRInteractionProfileEditorBase *>(tabs->get_tab_control(i)); + if (interaction_profile_editor) { + tabs->remove_child(interaction_profile_editor); + interaction_profile_editor->queue_free(); + } + } } OpenXRActionMapEditor::OpenXRActionMapEditor() { + undo_redo = EditorNode::get_undo_redo(); set_custom_minimum_size(Size2(0.0, 300.0)); top_hb = memnew(HBoxContainer); @@ -364,7 +448,9 @@ OpenXRActionMapEditor::OpenXRActionMapEditor() { select_interaction_profile_dialog->connect("interaction_profile_selected", callable_mp(this, &OpenXRActionMapEditor::_on_interaction_profile_selected)); add_child(select_interaction_profile_dialog); - _load_action_map(GLOBAL_GET("xr/openxr/default_action_map")); + // Our Action map editor is only shown if openxr is enabled in project settings + // So load our action map and if it doesn't exist, create it right away. + _load_action_map(GLOBAL_GET("xr/openxr/default_action_map"), true); } OpenXRActionMapEditor::~OpenXRActionMapEditor() { diff --git a/modules/openxr/editor/openxr_action_map_editor.h b/modules/openxr/editor/openxr_action_map_editor.h index a19bc90f56..8e3210a8e9 100644 --- a/modules/openxr/editor/openxr_action_map_editor.h +++ b/modules/openxr/editor/openxr_action_map_editor.h @@ -37,6 +37,7 @@ #include "../editor/openxr_select_interaction_profile_dialog.h" #include "editor/editor_plugin.h" +#include "editor/editor_undo_redo_manager.h" #include "scene/gui/box_container.h" #include "scene/gui/button.h" #include "scene/gui/label.h" @@ -47,9 +48,9 @@ class OpenXRActionMapEditor : public VBoxContainer { GDCLASS(OpenXRActionMapEditor, VBoxContainer); private: + Ref<EditorUndoRedoManager> undo_redo; String edited_path; Ref<OpenXRActionMap> action_map; - Vector<Node *> interaction_profiles; HBoxContainer *top_hb = nullptr; Label *header_label = nullptr; @@ -64,9 +65,9 @@ private: OpenXRSelectInteractionProfileDialog *select_interaction_profile_dialog = nullptr; OpenXRActionSetEditor *_add_action_set_editor(Ref<OpenXRActionSet> p_action_set); - void _update_action_sets(); + void _create_action_sets(); OpenXRInteractionProfileEditorBase *_add_interaction_profile_editor(Ref<OpenXRInteractionProfile> p_interaction_profile); - void _update_interaction_profiles(); + void _create_interaction_profiles(); OpenXRActionSetEditor *_add_action_set(String p_name); void _remove_action_set(String p_name); @@ -90,6 +91,14 @@ protected: static void _bind_methods(); void _notification(int p_what); + void _clear_action_map(); + + // used for undo/redo + void _do_add_action_set_editor(OpenXRActionSetEditor *p_action_set_editor); + void _do_remove_action_set_editor(OpenXRActionSetEditor *p_action_set_editor); + void _do_add_interaction_profile_editor(OpenXRInteractionProfileEditorBase *p_interaction_profile_editor); + void _do_remove_interaction_profile_editor(OpenXRInteractionProfileEditorBase *p_interaction_profile_editor); + public: void open_action_map(String p_path); diff --git a/modules/openxr/editor/openxr_action_set_editor.cpp b/modules/openxr/editor/openxr_action_set_editor.cpp index 3869146e8e..d3b6945635 100644 --- a/modules/openxr/editor/openxr_action_set_editor.cpp +++ b/modules/openxr/editor/openxr_action_set_editor.cpp @@ -32,8 +32,14 @@ #include "openxr_action_editor.h" void OpenXRActionSetEditor::_bind_methods() { + ClassDB::bind_method(D_METHOD("_do_set_name", "name"), &OpenXRActionSetEditor::_do_set_name); + ClassDB::bind_method(D_METHOD("_do_set_localized_name", "name"), &OpenXRActionSetEditor::_do_set_localized_name); + ClassDB::bind_method(D_METHOD("_do_set_priority", "value"), &OpenXRActionSetEditor::_do_set_priority); + ClassDB::bind_method(D_METHOD("_do_add_action_editor", "action_editor"), &OpenXRActionSetEditor::_do_add_action_editor); + ClassDB::bind_method(D_METHOD("_do_remove_action_editor", "action_editor"), &OpenXRActionSetEditor::_do_remove_action_editor); + ADD_SIGNAL(MethodInfo("remove", PropertyInfo(Variant::OBJECT, "action_set_editor"))); - ADD_SIGNAL(MethodInfo("action_removed")); + ADD_SIGNAL(MethodInfo("action_removed", PropertyInfo(Variant::OBJECT, "action"))); } void OpenXRActionSetEditor::_set_fold_icon() { @@ -68,20 +74,6 @@ OpenXRActionEditor *OpenXRActionSetEditor::_add_action_editor(Ref<OpenXRAction> return action_editor; } -void OpenXRActionSetEditor::_update_actions() { - // out with the old... - while (actions_vb->get_child_count() > 0) { - memdelete(actions_vb->get_child(0)); - } - - // in with the new... - Array actions = action_set->get_actions(); - for (int i = 0; i < actions.size(); i++) { - Ref<OpenXRAction> action = actions[i]; - _add_action_editor(action); - } -} - void OpenXRActionSetEditor::_on_toggle_expand() { is_expanded = !is_expanded; actions_vb->set_visible(is_expanded); @@ -89,24 +81,66 @@ void OpenXRActionSetEditor::_on_toggle_expand() { } void OpenXRActionSetEditor::_on_action_set_name_changed(const String p_new_text) { - // TODO validate if entry is allowed - - // If our localized name matches our action set name, set this too - if (action_set->get_name() == action_set->get_localized_name()) { - action_set->set_localized_name(p_new_text); - action_set_localized_name->set_text(p_new_text); + if (action_set->get_name() != p_new_text) { + undo_redo->create_action(TTR("Rename Action Set")); + undo_redo->add_do_method(this, "_do_set_name", p_new_text); + undo_redo->add_undo_method(this, "_do_set_name", action_set->get_name()); + undo_redo->commit_action(false); + + // If our localized name matches our action set name, set this too + if (action_set->get_name() == action_set->get_localized_name()) { + undo_redo->create_action(TTR("Rename Action Sets Localized name")); + undo_redo->add_do_method(this, "_do_set_localized_name", p_new_text); + undo_redo->add_undo_method(this, "_do_set_localized_name", action_set->get_localized_name()); + undo_redo->commit_action(false); + + action_set->set_localized_name(p_new_text); + action_set_localized_name->set_text(p_new_text); + } + action_set->set_name(p_new_text); + action_set->set_edited(true); } +} + +void OpenXRActionSetEditor::_do_set_name(const String p_new_text) { action_set->set_name(p_new_text); + action_set_name->set_text(p_new_text); } void OpenXRActionSetEditor::_on_action_set_localized_name_changed(const String p_new_text) { + if (action_set->get_localized_name() != p_new_text) { + undo_redo->create_action(TTR("Rename Action Sets Localized name")); + undo_redo->add_do_method(this, "_do_set_localized_name", p_new_text); + undo_redo->add_undo_method(this, "_do_set_localized_name", action_set->get_localized_name()); + undo_redo->commit_action(false); + + action_set->set_localized_name(p_new_text); + action_set->set_edited(true); + } +} + +void OpenXRActionSetEditor::_do_set_localized_name(const String p_new_text) { action_set->set_localized_name(p_new_text); + action_set_localized_name->set_text(p_new_text); } void OpenXRActionSetEditor::_on_action_set_priority_changed(const String p_new_text) { int64_t value = p_new_text.to_int(); - action_set->set_priority(value); + if (action_set->get_priority() != value) { + undo_redo->create_action(TTR("Change Action Sets priority")); + undo_redo->add_do_method(this, "_do_set_priority", value); + undo_redo->add_undo_method(this, "_do_set_priority", action_set->get_priority()); + undo_redo->commit_action(false); + + action_set->set_priority(value); + action_set->set_edited(true); + } +} + +void OpenXRActionSetEditor::_do_set_priority(int64_t p_value) { + action_set->set_priority(p_value); + action_set_priority->set_text(itos(p_value)); } void OpenXRActionSetEditor::_on_add_action() { @@ -116,8 +150,14 @@ void OpenXRActionSetEditor::_on_add_action() { new_action->set_name("New"); new_action->set_localized_name("New"); action_set->add_action(new_action); + action_set->set_edited(true); - _add_action_editor(new_action); + OpenXRActionEditor *action_editor = _add_action_editor(new_action); + + undo_redo->create_action(TTR("Add action")); + undo_redo->add_do_method(this, "_do_add_action_editor", action_editor); + undo_redo->add_undo_method(this, "_do_remove_action_editor", action_editor); + undo_redo->commit_action(false); // TODO handle focus } @@ -133,17 +173,36 @@ void OpenXRActionSetEditor::_on_remove_action(Object *p_action_editor) { Ref<OpenXRAction> action = action_editor->get_action(); ERR_FAIL_COND(action.is_null()); - // TODO add undo/redo action + emit_signal("action_removed", action); + + undo_redo->create_action(TTR("Delete action")); + undo_redo->add_do_method(this, "_do_remove_action_editor", action_editor); + undo_redo->add_undo_method(this, "_do_add_action_editor", action_editor); + undo_redo->commit_action(true); - // TODO find where this action is used by our interaction profiles and remove it there + action_set->set_edited(true); +} - // And remove it.... - action_map->remove_action(action->get_name_with_set()); // remove it from the set and any interaction profile it relates to - actions_vb->remove_child(action_editor); - action_editor->queue_free(); +void OpenXRActionSetEditor::_do_add_action_editor(OpenXRActionEditor *p_action_editor) { + Ref<OpenXRAction> action = p_action_editor->get_action(); + ERR_FAIL_COND(action.is_null()); - // Let action map editor know so we can update our interaction profiles - emit_signal("action_removed"); + action_set->add_action(action); + actions_vb->add_child(p_action_editor); +} + +void OpenXRActionSetEditor::_do_remove_action_editor(OpenXRActionEditor *p_action_editor) { + Ref<OpenXRAction> action = p_action_editor->get_action(); + ERR_FAIL_COND(action.is_null()); + + actions_vb->remove_child(p_action_editor); + action_set->remove_action(action); +} + +void OpenXRActionSetEditor::remove_all_actions() { + for (int i = actions_vb->get_child_count(); i > 0; --i) { + _on_remove_action(actions_vb->get_child(i)); + } } void OpenXRActionSetEditor::set_focus_on_entry() { @@ -214,5 +273,10 @@ OpenXRActionSetEditor::OpenXRActionSetEditor(Ref<OpenXRActionMap> p_action_map, actions_vb->set_h_size_flags(Control::SIZE_EXPAND_FILL); main_vb->add_child(actions_vb); - _update_actions(); + // Add our existing actions + Array actions = action_set->get_actions(); + for (int i = 0; i < actions.size(); i++) { + Ref<OpenXRAction> action = actions[i]; + _add_action_editor(action); + } } diff --git a/modules/openxr/editor/openxr_action_set_editor.h b/modules/openxr/editor/openxr_action_set_editor.h index d8c85d03dd..7a8dc0dcbf 100644 --- a/modules/openxr/editor/openxr_action_set_editor.h +++ b/modules/openxr/editor/openxr_action_set_editor.h @@ -44,6 +44,7 @@ class OpenXRActionSetEditor : public HBoxContainer { GDCLASS(OpenXRActionSetEditor, HBoxContainer); private: + Ref<EditorUndoRedoManager> undo_redo; Ref<OpenXRActionMap> action_map; Ref<OpenXRActionSet> action_set; @@ -63,7 +64,6 @@ private: void _set_fold_icon(); void _theme_changed(); OpenXRActionEditor *_add_action_editor(Ref<OpenXRAction> p_action); - void _update_actions(); void _on_toggle_expand(); void _on_action_set_name_changed(const String p_new_text); @@ -78,10 +78,19 @@ protected: static void _bind_methods(); void _notification(int p_what); + // used for undo/redo + void _do_set_name(const String p_new_text); + void _do_set_localized_name(const String p_new_text); + void _do_set_priority(int64_t value); + void _do_add_action_editor(OpenXRActionEditor *p_action_editor); + void _do_remove_action_editor(OpenXRActionEditor *p_action_editor); + public: Ref<OpenXRActionSet> get_action_set() { return action_set; }; void set_focus_on_entry(); + void remove_all_actions(); + OpenXRActionSetEditor(Ref<OpenXRActionMap> p_action_map, Ref<OpenXRActionSet> p_action_set); }; diff --git a/modules/openxr/editor/openxr_interaction_profile_editor.cpp b/modules/openxr/editor/openxr_interaction_profile_editor.cpp index e2dc2d1b74..3eca1967f5 100644 --- a/modules/openxr/editor/openxr_interaction_profile_editor.cpp +++ b/modules/openxr/editor/openxr_interaction_profile_editor.cpp @@ -29,6 +29,7 @@ /*************************************************************************/ #include "openxr_interaction_profile_editor.h" +#include "editor/editor_node.h" #include "scene/gui/box_container.h" #include "scene/gui/button.h" #include "scene/gui/label.h" @@ -58,6 +59,13 @@ void OpenXRInteractionProfileEditorBase::_notification(int p_what) { } } +void OpenXRInteractionProfileEditorBase::_do_update_interaction_profile() { + if (!is_dirty) { + is_dirty = true; + call_deferred("_update_interaction_profile"); + } +} + void OpenXRInteractionProfileEditorBase::_add_binding(const String p_action, const String p_path) { ERR_FAIL_COND(action_map.is_null()); ERR_FAIL_COND(interaction_profile.is_null()); @@ -71,14 +79,16 @@ void OpenXRInteractionProfileEditorBase::_add_binding(const String p_action, con binding.instantiate(); binding->set_action(action); interaction_profile->add_binding(binding); + interaction_profile->set_edited(true); } binding->add_path(p_path); + binding->set_edited(true); // Update our toplevel paths action->set_toplevel_paths(action_map->get_top_level_paths(action)); - call_deferred("_update_interaction_profile"); + _do_update_interaction_profile(); } void OpenXRInteractionProfileEditorBase::_remove_binding(const String p_action, const String p_path) { @@ -91,25 +101,54 @@ void OpenXRInteractionProfileEditorBase::_remove_binding(const String p_action, Ref<OpenXRIPBinding> binding = interaction_profile->get_binding_for_action(action); if (binding.is_valid()) { binding->remove_path(p_path); + binding->set_edited(true); if (binding->get_path_count() == 0) { interaction_profile->remove_binding(binding); + interaction_profile->set_edited(true); } // Update our toplevel paths action->set_toplevel_paths(action_map->get_top_level_paths(action)); - call_deferred("_update_interaction_profile"); + _do_update_interaction_profile(); + } +} + +void OpenXRInteractionProfileEditorBase::remove_all_bindings_for_action(Ref<OpenXRAction> p_action) { + Ref<OpenXRIPBinding> binding = interaction_profile->get_binding_for_action(p_action); + if (binding.is_valid()) { + String action_name = p_action->get_name_with_set(); + + // for our undo/redo we process all paths + undo_redo->create_action(TTR("Remove action from interaction profile")); + PackedStringArray paths = binding->get_paths(); + for (const String &path : paths) { + undo_redo->add_do_method(this, "_remove_binding", p_action, path); + undo_redo->add_undo_method(this, "_add_binding", p_action, path); + } + undo_redo->commit_action(false); + + // but we take a shortcut here :) + interaction_profile->remove_binding(binding); + interaction_profile->set_edited(true); + + // Update our toplevel paths + p_action->set_toplevel_paths(action_map->get_top_level_paths(p_action)); + + _do_update_interaction_profile(); } } OpenXRInteractionProfileEditorBase::OpenXRInteractionProfileEditorBase(Ref<OpenXRActionMap> p_action_map, Ref<OpenXRInteractionProfile> p_interaction_profile) { + undo_redo = EditorNode::get_undo_redo(); + action_map = p_action_map; interaction_profile = p_interaction_profile; String profile_path = interaction_profile->get_interaction_profile_path(); String profile_name = profile_path; - profile_def = OpenXRDefs::get_profile(profile_path); + profile_def = OpenXRInteractionProfileMetaData::get_singleton()->get_profile(profile_path); if (profile_def != nullptr) { profile_name = profile_def->display_name; } @@ -117,6 +156,9 @@ OpenXRInteractionProfileEditorBase::OpenXRInteractionProfileEditorBase(Ref<OpenX set_name(profile_name); set_h_size_flags(SIZE_EXPAND_FILL); set_v_size_flags(SIZE_EXPAND_FILL); + + // Make sure it is updated when it enters the tree... + is_dirty = true; } /////////////////////////////////////////////////////////////////////////// @@ -128,11 +170,22 @@ void OpenXRInteractionProfileEditor::select_action_for(const String p_io_path) { } void OpenXRInteractionProfileEditor::action_selected(const String p_action) { - _add_binding(p_action, selecting_for_io_path); + undo_redo->create_action(TTR("Add binding")); + undo_redo->add_do_method(this, "_add_binding", p_action, selecting_for_io_path); + undo_redo->add_undo_method(this, "_remove_binding", p_action, selecting_for_io_path); + undo_redo->commit_action(true); + selecting_for_io_path = ""; } -void OpenXRInteractionProfileEditor::_add_io_path(VBoxContainer *p_container, const OpenXRDefs::IOPath *p_io_path) { +void OpenXRInteractionProfileEditor::_on_remove_pressed(const String p_action, const String p_for_io_path) { + undo_redo->create_action(TTR("Remove binding")); + undo_redo->add_do_method(this, "_remove_binding", p_action, p_for_io_path); + undo_redo->add_undo_method(this, "_add_binding", p_action, p_for_io_path); + undo_redo->commit_action(true); +} + +void OpenXRInteractionProfileEditor::_add_io_path(VBoxContainer *p_container, const OpenXRInteractionProfileMetaData::IOPath *p_io_path) { HBoxContainer *path_hb = memnew(HBoxContainer); path_hb->set_h_size_flags(Control::SIZE_EXPAND_FILL); p_container->add_child(path_hb); @@ -196,7 +249,7 @@ void OpenXRInteractionProfileEditor::_add_io_path(VBoxContainer *p_container, co Button *action_rem = memnew(Button); action_rem->set_flat(true); action_rem->set_icon(get_theme_icon(SNAME("Remove"), SNAME("EditorIcons"))); - action_rem->connect("pressed", callable_mp((OpenXRInteractionProfileEditorBase *)this, &OpenXRInteractionProfileEditorBase::_remove_binding).bind(action->get_name_with_set(), String(p_io_path->openxr_path))); + action_rem->connect("pressed", callable_mp((OpenXRInteractionProfileEditor *)this, &OpenXRInteractionProfileEditor::_on_remove_pressed).bind(action->get_name_with_set(), String(p_io_path->openxr_path))); action_hb->add_child(action_rem); } } @@ -206,6 +259,11 @@ void OpenXRInteractionProfileEditor::_add_io_path(VBoxContainer *p_container, co void OpenXRInteractionProfileEditor::_update_interaction_profile() { ERR_FAIL_NULL(profile_def); + if (!is_dirty) { + // no need to update + return; + } + // out with the old... while (main_hb->get_child_count() > 0) { memdelete(main_hb->get_child(0)); @@ -214,9 +272,9 @@ void OpenXRInteractionProfileEditor::_update_interaction_profile() { // in with the new... // Determine toplevel paths - Vector<const OpenXRDefs::TopLevelPath *> top_level_paths; - for (int i = 0; i < profile_def->io_path_count; i++) { - const OpenXRDefs::IOPath *io_path = &profile_def->io_paths[i]; + Vector<String> top_level_paths; + for (int i = 0; i < profile_def->io_paths.size(); i++) { + const OpenXRInteractionProfileMetaData::IOPath *io_path = &profile_def->io_paths[i]; if (!top_level_paths.has(io_path->top_level_path)) { top_level_paths.push_back(io_path->top_level_path); @@ -233,16 +291,19 @@ void OpenXRInteractionProfileEditor::_update_interaction_profile() { panel->add_child(container); Label *label = memnew(Label); - label->set_text(top_level_paths[i]->display_name); + label->set_text(OpenXRInteractionProfileMetaData::get_singleton()->get_top_level_name(top_level_paths[i])); container->add_child(label); - for (int j = 0; j < profile_def->io_path_count; j++) { - const OpenXRDefs::IOPath *io_path = &profile_def->io_paths[j]; + for (int j = 0; j < profile_def->io_paths.size(); j++) { + const OpenXRInteractionProfileMetaData::IOPath *io_path = &profile_def->io_paths[j]; if (io_path->top_level_path == top_level_paths[i]) { _add_io_path(container, io_path); } } } + + // and we've updated it... + is_dirty = false; } void OpenXRInteractionProfileEditor::_theme_changed() { @@ -256,14 +317,10 @@ void OpenXRInteractionProfileEditor::_theme_changed() { OpenXRInteractionProfileEditor::OpenXRInteractionProfileEditor(Ref<OpenXRActionMap> p_action_map, Ref<OpenXRInteractionProfile> p_interaction_profile) : OpenXRInteractionProfileEditorBase(p_action_map, p_interaction_profile) { - // TODO background of scrollbox should be darker with our VBoxContainers we're adding in _update_interaction_profile the normal color - main_hb = memnew(HBoxContainer); add_child(main_hb); select_action_dialog = memnew(OpenXRSelectActionDialog(p_action_map)); select_action_dialog->connect("action_selected", callable_mp(this, &OpenXRInteractionProfileEditor::action_selected)); add_child(select_action_dialog); - - _update_interaction_profile(); } diff --git a/modules/openxr/editor/openxr_interaction_profile_editor.h b/modules/openxr/editor/openxr_interaction_profile_editor.h index 20a37a80eb..14af702b94 100644 --- a/modules/openxr/editor/openxr_interaction_profile_editor.h +++ b/modules/openxr/editor/openxr_interaction_profile_editor.h @@ -32,8 +32,9 @@ #define OPENXR_INTERACTION_PROFILE_EDITOR_H #include "../action_map/openxr_action_map.h" -#include "../action_map/openxr_defs.h" #include "../action_map/openxr_interaction_profile.h" +#include "../action_map/openxr_interaction_profile_meta_data.h" +#include "editor/editor_undo_redo_manager.h" #include "scene/gui/scroll_container.h" #include "openxr_select_action_dialog.h" @@ -42,22 +43,29 @@ class OpenXRInteractionProfileEditorBase : public ScrollContainer { GDCLASS(OpenXRInteractionProfileEditorBase, ScrollContainer); protected: + Ref<EditorUndoRedoManager> undo_redo; Ref<OpenXRInteractionProfile> interaction_profile; Ref<OpenXRActionMap> action_map; + bool is_dirty = false; + static void _bind_methods(); void _notification(int p_what); - const OpenXRDefs::InteractionProfile *profile_def = nullptr; + const OpenXRInteractionProfileMetaData::InteractionProfile *profile_def = nullptr; public: Ref<OpenXRInteractionProfile> get_interaction_profile() { return interaction_profile; } virtual void _update_interaction_profile() {} virtual void _theme_changed() {} + + void _do_update_interaction_profile(); void _add_binding(const String p_action, const String p_path); void _remove_binding(const String p_action, const String p_path); + void remove_all_bindings_for_action(Ref<OpenXRAction> p_action); + OpenXRInteractionProfileEditorBase(Ref<OpenXRActionMap> p_action_map, Ref<OpenXRInteractionProfile> p_interaction_profile); }; @@ -69,11 +77,12 @@ private: HBoxContainer *main_hb = nullptr; OpenXRSelectActionDialog *select_action_dialog = nullptr; - void _add_io_path(VBoxContainer *p_container, const OpenXRDefs::IOPath *p_io_path); + void _add_io_path(VBoxContainer *p_container, const OpenXRInteractionProfileMetaData::IOPath *p_io_path); public: void select_action_for(const String p_io_path); void action_selected(const String p_action); + void _on_remove_pressed(const String p_action, const String p_for_io_path); virtual void _update_interaction_profile() override; virtual void _theme_changed() override; diff --git a/modules/openxr/editor/openxr_select_interaction_profile_dialog.cpp b/modules/openxr/editor/openxr_select_interaction_profile_dialog.cpp index e92519aec2..6ce26a62db 100644 --- a/modules/openxr/editor/openxr_select_interaction_profile_dialog.cpp +++ b/modules/openxr/editor/openxr_select_interaction_profile_dialog.cpp @@ -75,13 +75,13 @@ void OpenXRSelectInteractionProfileDialog::open(PackedStringArray p_do_not_inclu ip_buttons.clear(); // in with the new - PackedStringArray interaction_profiles = OpenXRDefs::get_interaction_profile_paths(); + PackedStringArray interaction_profiles = OpenXRInteractionProfileMetaData::get_singleton()->get_interaction_profile_paths(); for (int i = 0; i < interaction_profiles.size(); i++) { String path = interaction_profiles[i]; if (!p_do_not_include.has(path)) { Button *ip_button = memnew(Button); ip_button->set_flat(true); - ip_button->set_text(OpenXRDefs::get_profile(path)->display_name); + ip_button->set_text(OpenXRInteractionProfileMetaData::get_singleton()->get_profile(path)->display_name); ip_button->connect("pressed", callable_mp(this, &OpenXRSelectInteractionProfileDialog::_on_select_interaction_profile).bind(path)); main_vb->add_child(ip_button); diff --git a/modules/openxr/editor/openxr_select_interaction_profile_dialog.h b/modules/openxr/editor/openxr_select_interaction_profile_dialog.h index 54bfe3120a..767326bc46 100644 --- a/modules/openxr/editor/openxr_select_interaction_profile_dialog.h +++ b/modules/openxr/editor/openxr_select_interaction_profile_dialog.h @@ -31,7 +31,7 @@ #ifndef OPENXR_SELECT_INTERACTION_PROFILE_DIALOG_H #define OPENXR_SELECT_INTERACTION_PROFILE_DIALOG_H -#include "../action_map/openxr_defs.h" +#include "../action_map/openxr_interaction_profile_meta_data.h" #include "scene/gui/box_container.h" #include "scene/gui/button.h" #include "scene/gui/dialogs.h" diff --git a/modules/openxr/extensions/openxr_extension_wrapper.h b/modules/openxr/extensions/openxr_extension_wrapper.h index 77b52ab355..eed969d628 100644 --- a/modules/openxr/extensions/openxr_extension_wrapper.h +++ b/modules/openxr/extensions/openxr_extension_wrapper.h @@ -89,11 +89,6 @@ public: return false; } - // Return false if this extension is responsible for this path but the path is not enabled - virtual bool is_path_supported(const String &p_path) { - return true; - } - OpenXRExtensionWrapper(OpenXRAPI *p_openxr_api) { openxr_api = p_openxr_api; }; virtual ~OpenXRExtensionWrapper() = default; }; diff --git a/modules/openxr/extensions/openxr_htc_vive_tracker_extension.cpp b/modules/openxr/extensions/openxr_htc_vive_tracker_extension.cpp index 29208efb20..302acf4e30 100644 --- a/modules/openxr/extensions/openxr_htc_vive_tracker_extension.cpp +++ b/modules/openxr/extensions/openxr_htc_vive_tracker_extension.cpp @@ -65,38 +65,3 @@ bool OpenXRHTCViveTrackerExtension::on_event_polled(const XrEventDataBuffer &eve } break; } } - -bool OpenXRHTCViveTrackerExtension::is_path_supported(const String &p_path) { - if (p_path == "/interaction_profiles/htc/vive_tracker_htcx") { - return available; - } else if (p_path == "/user/vive_tracker_htcx/role/handheld_object") { - return available; - } else if (p_path == "/user/vive_tracker_htcx/role/left_foot") { - return available; - } else if (p_path == "/user/vive_tracker_htcx/role/right_foot") { - return available; - } else if (p_path == "/user/vive_tracker_htcx/role/left_shoulder") { - return available; - } else if (p_path == "/user/vive_tracker_htcx/role/right_shoulder") { - return available; - } else if (p_path == "/user/vive_tracker_htcx/role/left_elbow") { - return available; - } else if (p_path == "/user/vive_tracker_htcx/role/right_elbow") { - return available; - } else if (p_path == "/user/vive_tracker_htcx/role/left_knee") { - return available; - } else if (p_path == "/user/vive_tracker_htcx/role/right_knee") { - return available; - } else if (p_path == "/user/vive_tracker_htcx/role/waist") { - return available; - } else if (p_path == "/user/vive_tracker_htcx/role/chest") { - return available; - } else if (p_path == "/user/vive_tracker_htcx/role/camera") { - return available; - } else if (p_path == "/user/vive_tracker_htcx/role/keyboard") { - return available; - } - - // Not a path under this extensions control, so we return true; - return true; -} diff --git a/modules/openxr/extensions/openxr_htc_vive_tracker_extension.h b/modules/openxr/extensions/openxr_htc_vive_tracker_extension.h index ab8e8535f1..376af35e37 100644 --- a/modules/openxr/extensions/openxr_htc_vive_tracker_extension.h +++ b/modules/openxr/extensions/openxr_htc_vive_tracker_extension.h @@ -43,7 +43,6 @@ public: bool is_available(); virtual bool on_event_polled(const XrEventDataBuffer &event) override; - virtual bool is_path_supported(const String &p_path) override; private: static OpenXRHTCViveTrackerExtension *singleton; diff --git a/modules/openxr/extensions/openxr_palm_pose_extension.cpp b/modules/openxr/extensions/openxr_palm_pose_extension.cpp index fd3b8f50fe..8f87aaea7f 100644 --- a/modules/openxr/extensions/openxr_palm_pose_extension.cpp +++ b/modules/openxr/extensions/openxr_palm_pose_extension.cpp @@ -51,16 +51,3 @@ OpenXRPalmPoseExtension::~OpenXRPalmPoseExtension() { bool OpenXRPalmPoseExtension::is_available() { return available; } - -bool OpenXRPalmPoseExtension::is_path_supported(const String &p_path) { - if (p_path == "/user/hand/left/input/palm_ext/pose") { - return available; - } - - if (p_path == "/user/hand/right/input/palm_ext/pose") { - return available; - } - - // Not a path under this extensions control, so we return true; - return true; -} diff --git a/modules/openxr/extensions/openxr_palm_pose_extension.h b/modules/openxr/extensions/openxr_palm_pose_extension.h index a7ef83c5d5..a63c57eb51 100644 --- a/modules/openxr/extensions/openxr_palm_pose_extension.h +++ b/modules/openxr/extensions/openxr_palm_pose_extension.h @@ -42,8 +42,6 @@ public: bool is_available(); - virtual bool is_path_supported(const String &p_path) override; - private: static OpenXRPalmPoseExtension *singleton; diff --git a/modules/openxr/openxr_api.cpp b/modules/openxr/openxr_api.cpp index b652ca4617..a075031ac9 100644 --- a/modules/openxr/openxr_api.cpp +++ b/modules/openxr/openxr_api.cpp @@ -208,17 +208,79 @@ bool OpenXRAPI::is_extension_supported(const String &p_extension) const { return false; } -bool OpenXRAPI::is_path_supported(const String &p_path) { - // This checks with extensions whether a path is *unsupported* and returns false if this is so. - // This allows us to filter out paths that are only available if related extensions are supported. - // WARNING: This method will return true for unknown/mistyped paths as we have no way to validate those. +bool OpenXRAPI::is_extension_enabled(const String &p_extension) const { + CharString extension = p_extension.ascii(); - for (OpenXRExtensionWrapper *wrapper : registered_extension_wrappers) { - if (!wrapper->is_path_supported(p_path)) { - return false; + for (int i = 0; i < enabled_extensions.size(); i++) { + if (strcmp(enabled_extensions[i].ptr(), extension.ptr()) == 0) { + return true; } } + return false; +} + +bool OpenXRAPI::is_top_level_path_supported(const String &p_toplevel_path) { + String required_extension = OpenXRInteractionProfileMetaData::get_singleton()->get_top_level_extension(p_toplevel_path); + + // If unsupported is returned we likely have a misspelled interaction profile path in our action map. Always output that as an error. + ERR_FAIL_COND_V_MSG(required_extension == XR_PATH_UNSUPPORTED_NAME, false, "OpenXR: Unsupported interaction profile " + p_toplevel_path); + + if (required_extension == "") { + // no extension needed, core top level are always "supported", they just won't be used if not really supported + return true; + } + + if (!is_extension_enabled(required_extension)) { + // It is very likely we have top level paths for which the extension is not available so don't flood the logs with unnecessary spam. + print_verbose("OpenXR: Top level path " + p_toplevel_path + " requires extension " + required_extension); + return false; + } + + return true; +} + +bool OpenXRAPI::is_interaction_profile_supported(const String &p_ip_path) { + String required_extension = OpenXRInteractionProfileMetaData::get_singleton()->get_interaction_profile_extension(p_ip_path); + + // If unsupported is returned we likely have a misspelled interaction profile path in our action map. Always output that as an error. + ERR_FAIL_COND_V_MSG(required_extension == XR_PATH_UNSUPPORTED_NAME, false, "OpenXR: Unsupported interaction profile " + p_ip_path); + + if (required_extension == "") { + // no extension needed, core interaction profiles are always "supported", they just won't be used if not really supported + return true; + } + + if (!is_extension_enabled(required_extension)) { + // It is very likely we have interaction profiles for which the extension is not available so don't flood the logs with unnecessary spam. + print_verbose("OpenXR: Interaction profile " + p_ip_path + " requires extension " + required_extension); + return false; + } + + return true; +} + +bool OpenXRAPI::interaction_profile_supports_io_path(const String &p_ip_path, const String &p_io_path) { + if (!is_interaction_profile_supported(p_ip_path)) { + return false; + } + + const OpenXRInteractionProfileMetaData::IOPath *io_path = OpenXRInteractionProfileMetaData::get_singleton()->get_io_path(p_ip_path, p_io_path); + + // If the io_path is not part of our meta data we've likely got a misspelled name or a bad action map, report + ERR_FAIL_NULL_V_MSG(io_path, false, "OpenXR: Unsupported io path " + String(p_ip_path) + String(p_io_path)); + + if (io_path->openxr_extension_name == "") { + // no extension needed, core io paths are always "supported", they just won't be used if not really supported + return true; + } + + if (!is_extension_enabled(io_path->openxr_extension_name)) { + // It is very likely we have io paths for which the extension is not available so don't flood the logs with unnecessary spam. + print_verbose("OpenXR: IO path " + String(p_ip_path) + String(p_io_path) + " requires extension " + io_path->openxr_extension_name); + return false; + } + return true; } @@ -283,6 +345,7 @@ bool OpenXRAPI::create_instance() { Vector<const char *> extension_ptrs; for (int i = 0; i < enabled_extensions.size(); i++) { + print_verbose(String("OpenXR: Enabling extension ") + String(enabled_extensions[i])); extension_ptrs.push_back(enabled_extensions[i].get_data()); } @@ -2341,7 +2404,7 @@ XrPath OpenXRAPI::get_interaction_profile_path(RID p_interaction_profile) { } RID OpenXRAPI::interaction_profile_create(const String p_name) { - if (!is_path_supported(p_name)) { + if (!is_interaction_profile_supported(p_name)) { // The extension enabling this path must not be active, we will silently skip this interaction profile return RID(); } @@ -2382,14 +2445,13 @@ void OpenXRAPI::interaction_profile_clear_bindings(RID p_interaction_profile) { } bool OpenXRAPI::interaction_profile_add_binding(RID p_interaction_profile, RID p_action, const String p_path) { - if (!is_path_supported(p_path)) { - // The extension enabling this path must not be active, we will silently skip this binding - return false; - } - InteractionProfile *ip = interaction_profile_owner.get_or_null(p_interaction_profile); ERR_FAIL_NULL_V(ip, false); + if (!interaction_profile_supports_io_path(ip->name, p_path)) { + return false; + } + XrActionSuggestedBinding binding; Action *action = action_owner.get_or_null(p_action); diff --git a/modules/openxr/openxr_api.h b/modules/openxr/openxr_api.h index ac4bbff94c..806e859da0 100644 --- a/modules/openxr/openxr_api.h +++ b/modules/openxr/openxr_api.h @@ -150,6 +150,7 @@ private: bool load_layer_properties(); bool load_supported_extensions(); bool is_extension_supported(const String &p_extension) const; + bool is_extension_enabled(const String &p_extension) const; bool openxr_loader_init(); bool resolve_instance_openxr_symbols(); @@ -301,7 +302,9 @@ public: void parse_velocities(const XrSpaceVelocity &p_velocity, Vector3 &r_linear_velocity, Vector3 &r_angular_velocity); bool xr_result(XrResult result, const char *format, Array args = Array()) const; - bool is_path_supported(const String &p_path); + bool is_top_level_path_supported(const String &p_toplevel_path); + bool is_interaction_profile_supported(const String &p_ip_path); + bool interaction_profile_supports_io_path(const String &p_ip_path, const String &p_io_path); static bool openxr_is_enabled(bool p_check_run_in_editor = true); static OpenXRAPI *get_singleton(); diff --git a/modules/openxr/openxr_interface.cpp b/modules/openxr/openxr_interface.cpp index 40190ab2f3..d6f7cd7b3e 100644 --- a/modules/openxr/openxr_interface.cpp +++ b/modules/openxr/openxr_interface.cpp @@ -158,7 +158,7 @@ void OpenXRInterface::_load_action_map() { for (int k = 0; k < toplevel_paths.size(); k++) { // Only check for our tracker if our path is supported. - if (openxr_api->is_path_supported(toplevel_paths[k])) { + if (openxr_api->is_top_level_path_supported(toplevel_paths[k])) { Tracker *tracker = find_tracker(toplevel_paths[k], true); if (tracker) { trackers_for_action.push_back(tracker); @@ -345,7 +345,7 @@ OpenXRInterface::Tracker *OpenXRInterface::find_tracker(const String &p_tracker_ return nullptr; } - ERR_FAIL_COND_V(!openxr_api->is_path_supported(p_tracker_name), nullptr); + ERR_FAIL_COND_V(!openxr_api->is_top_level_path_supported(p_tracker_name), nullptr); // Create our RID RID tracker_rid = openxr_api->tracker_create(p_tracker_name); diff --git a/modules/openxr/register_types.cpp b/modules/openxr/register_types.cpp index 5694fffe39..0835bbd642 100644 --- a/modules/openxr/register_types.cpp +++ b/modules/openxr/register_types.cpp @@ -37,9 +37,14 @@ #include "action_map/openxr_action_map.h" #include "action_map/openxr_action_set.h" #include "action_map/openxr_interaction_profile.h" +#include "action_map/openxr_interaction_profile_meta_data.h" #include "scene/openxr_hand.h" +static OpenXRAPI *openxr_api = nullptr; +static OpenXRInteractionProfileMetaData *openxr_interaction_profile_meta_data = nullptr; +static Ref<OpenXRInterface> openxr_interface; + #ifdef TOOLS_ENABLED #include "editor/editor_node.h" @@ -49,6 +54,12 @@ static void _editor_init() { if (OpenXRAPI::openxr_is_enabled(false)) { // Only add our OpenXR action map editor if OpenXR is enabled for our project + if (openxr_interaction_profile_meta_data == nullptr) { + // If we didn't initialize our actionmap meta data at startup, we initialise it now. + openxr_interaction_profile_meta_data = memnew(OpenXRInteractionProfileMetaData); + ERR_FAIL_NULL(openxr_interaction_profile_meta_data); + } + OpenXREditorPlugin *openxr_plugin = memnew(OpenXREditorPlugin()); EditorNode::get_singleton()->add_editor_plugin(openxr_plugin); } @@ -56,14 +67,13 @@ static void _editor_init() { #endif -static OpenXRAPI *openxr_api = nullptr; -static Ref<OpenXRInterface> openxr_interface; - void initialize_openxr_module(ModuleInitializationLevel p_level) { if (p_level == MODULE_INITIALIZATION_LEVEL_SERVERS) { // For now we create our openxr device here. If we merge it with openxr_interface we'll create that here soon. if (OpenXRAPI::openxr_is_enabled()) { + openxr_interaction_profile_meta_data = memnew(OpenXRInteractionProfileMetaData); + ERR_FAIL_NULL(openxr_interaction_profile_meta_data); openxr_api = memnew(OpenXRAPI); ERR_FAIL_NULL(openxr_api); @@ -81,6 +91,7 @@ void initialize_openxr_module(ModuleInitializationLevel p_level) { GDREGISTER_CLASS(OpenXRAction); GDREGISTER_CLASS(OpenXRActionSet); GDREGISTER_CLASS(OpenXRActionMap); + GDREGISTER_CLASS(OpenXRInteractionProfileMetaData); GDREGISTER_CLASS(OpenXRIPBinding); GDREGISTER_CLASS(OpenXRInteractionProfile); @@ -131,4 +142,9 @@ void uninitialize_openxr_module(ModuleInitializationLevel p_level) { memdelete(openxr_api); openxr_api = nullptr; } + + if (openxr_interaction_profile_meta_data) { + memdelete(openxr_interaction_profile_meta_data); + openxr_interaction_profile_meta_data = nullptr; + } } diff --git a/modules/raycast/config.py b/modules/raycast/config.py index f4243f01c5..26329d813a 100644 --- a/modules/raycast/config.py +++ b/modules/raycast/config.py @@ -1,13 +1,11 @@ def can_build(env, platform): # Supported architectures depend on the Embree library. - # No ARM32 support planned. - if env["arch"] == "arm32": - return False + if env["arch"] in ["x86_64", "arm64", "wasm32"]: + return True # x86_32 only seems supported on Windows for now. - if env["arch"] == "x86_32" and platform != "windows": - return False - # The rest works, even wasm32! - return True + if env["arch"] == "x86_32" and platform == "windows": + return True + return False def configure(env): diff --git a/modules/text_server_adv/SCsub b/modules/text_server_adv/SCsub index 3c7a89b705..4a9c7b3567 100644 --- a/modules/text_server_adv/SCsub +++ b/modules/text_server_adv/SCsub @@ -223,9 +223,6 @@ if env["builtin_graphite"] and freetype_enabled and env["graphite"]: ] ) - if env.msvc: # Not our business to fix. - env_graphite.Append(CCFLAGS=["-D_SILENCE_ALL_CXX17_DEPRECATION_WARNINGS"]) - lib = env_graphite.add_library("graphite_builtin", thirdparty_sources) thirdparty_obj += lib diff --git a/platform/ios/display_server_ios.h b/platform/ios/display_server_ios.h index 4901eeefaf..0ca0d3d1fe 100644 --- a/platform/ios/display_server_ios.h +++ b/platform/ios/display_server_ios.h @@ -113,7 +113,7 @@ public: // MARK: Keyboard - void key(Key p_key, bool p_pressed); + void key(Key p_key, char32_t p_char, bool p_pressed); // MARK: Motion diff --git a/platform/ios/display_server_ios.mm b/platform/ios/display_server_ios.mm index ed1bc499ed..23b70fbc28 100644 --- a/platform/ios/display_server_ios.mm +++ b/platform/ios/display_server_ios.mm @@ -260,14 +260,14 @@ void DisplayServerIOS::touches_cancelled(int p_idx) { // MARK: Keyboard -void DisplayServerIOS::key(Key p_key, bool p_pressed) { +void DisplayServerIOS::key(Key p_key, char32_t p_char, bool p_pressed) { Ref<InputEventKey> ev; ev.instantiate(); ev->set_echo(false); ev->set_pressed(p_pressed); ev->set_keycode(p_key); ev->set_physical_keycode(p_key); - ev->set_unicode((char32_t)p_key); + ev->set_unicode(p_char); perform_event(ev); } @@ -589,6 +589,16 @@ bool DisplayServerIOS::is_touchscreen_available() const { return true; } +_FORCE_INLINE_ int _convert_utf32_offset_to_utf16(const String &p_existing_text, int p_pos) { + int limit = p_pos; + for (int i = 0; i < MIN(p_existing_text.length(), p_pos); i++) { + if (p_existing_text[i] > 0xffff) { + limit++; + } + } + return limit; +} + void DisplayServerIOS::virtual_keyboard_show(const String &p_existing_text, const Rect2 &p_screen_rect, VirtualKeyboardType p_type, int p_max_length, int p_cursor_start, int p_cursor_end) { NSString *existingString = [[NSString alloc] initWithUTF8String:p_existing_text.utf8().get_data()]; @@ -627,8 +637,8 @@ void DisplayServerIOS::virtual_keyboard_show(const String &p_existing_text, cons [AppDelegate.viewController.keyboardView becomeFirstResponderWithString:existingString - cursorStart:p_cursor_start - cursorEnd:p_cursor_end]; + cursorStart:_convert_utf32_offset_to_utf16(p_existing_text, p_cursor_start) + cursorEnd:_convert_utf32_offset_to_utf16(p_existing_text, p_cursor_end)]; } void DisplayServerIOS::virtual_keyboard_hide() { diff --git a/platform/ios/keyboard_input_view.mm b/platform/ios/keyboard_input_view.mm index f031a1de22..8fb5656c24 100644 --- a/platform/ios/keyboard_input_view.mm +++ b/platform/ios/keyboard_input_view.mm @@ -115,8 +115,8 @@ - (void)deleteText:(NSInteger)charactersToDelete { for (int i = 0; i < charactersToDelete; i++) { - DisplayServerIOS::get_singleton()->key(Key::BACKSPACE, true); - DisplayServerIOS::get_singleton()->key(Key::BACKSPACE, false); + DisplayServerIOS::get_singleton()->key(Key::BACKSPACE, 0, true); + DisplayServerIOS::get_singleton()->key(Key::BACKSPACE, 0, false); } } @@ -126,20 +126,28 @@ for (int i = 0; i < characters.size(); i++) { int character = characters[i]; - - switch (character) { - case 10: - character = (int)Key::ENTER; - break; - case 8198: - character = (int)Key::SPACE; - break; - default: - break; + Key key = Key::NONE; + + if (character == '\t') { // 0x09 + key = Key::TAB; + } else if (character == '\n') { // 0x0A + key = Key::ENTER; + } else if (character == 0x2006) { + key = Key::SPACE; + } else if (character == U'Â¥') { + key = Key::YEN; + } else if (character == U'§') { + key = Key::SECTION; + } else if (character >= 0x20 && character <= 0x7E) { // ASCII. + if (character > 0x60 && character < 0x7B) { // Lowercase ASCII. + key = (Key)(character - 32); + } else { + key = (Key)character; + } } - DisplayServerIOS::get_singleton()->key((Key)character, true); - DisplayServerIOS::get_singleton()->key((Key)character, false); + DisplayServerIOS::get_singleton()->key(key, character, true); + DisplayServerIOS::get_singleton()->key(key, character, false); } } diff --git a/platform/windows/os_windows.cpp b/platform/windows/os_windows.cpp index 34afc4ea14..a083a98c72 100644 --- a/platform/windows/os_windows.cpp +++ b/platform/windows/os_windows.cpp @@ -1059,7 +1059,7 @@ String OS_Windows::get_system_font_path(const String &p_font_name, int p_weight, UINT32 index = 0; BOOL exists = false; HRESULT hr = font_collection->FindFamilyName((const WCHAR *)font_name.utf16().get_data(), &index, &exists); - if (FAILED(hr)) { + if (FAILED(hr) || !exists) { return String(); } diff --git a/scene/2d/canvas_group.cpp b/scene/2d/canvas_group.cpp index d4182f85a7..0ada703837 100644 --- a/scene/2d/canvas_group.cpp +++ b/scene/2d/canvas_group.cpp @@ -47,7 +47,7 @@ void CanvasGroup::set_clear_margin(real_t p_clear_margin) { ERR_FAIL_COND(p_clear_margin < 0.0); clear_margin = p_clear_margin; - RS::get_singleton()->canvas_item_set_canvas_group_mode(get_canvas_item(), RS::CANVAS_GROUP_MODE_TRANSPARENT, clear_margin, true, clear_margin, use_mipmaps); + RS::get_singleton()->canvas_item_set_canvas_group_mode(get_canvas_item(), RS::CANVAS_GROUP_MODE_TRANSPARENT, clear_margin, true, fit_margin, use_mipmaps); queue_redraw(); } diff --git a/scene/2d/gpu_particles_2d.cpp b/scene/2d/gpu_particles_2d.cpp index c8f5d7f5a6..ccbc080768 100644 --- a/scene/2d/gpu_particles_2d.cpp +++ b/scene/2d/gpu_particles_2d.cpp @@ -625,6 +625,8 @@ void GPUParticles2D::_bind_methods() { ADD_PROPERTY_DEFAULT("emitting", true); // Workaround for doctool in headless mode, as dummy rasterizer always returns false. ADD_PROPERTY(PropertyInfo(Variant::INT, "amount", PROPERTY_HINT_RANGE, "1,1000000,1,exp"), "set_amount", "get_amount"); ADD_PROPERTY(PropertyInfo(Variant::NODE_PATH, "sub_emitter", PROPERTY_HINT_NODE_PATH_VALID_TYPES, "GPUParticles2D"), "set_sub_emitter", "get_sub_emitter"); + ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "process_material", PROPERTY_HINT_RESOURCE_TYPE, "ShaderMaterial,ParticleProcessMaterial"), "set_process_material", "get_process_material"); + ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "texture", PROPERTY_HINT_RESOURCE_TYPE, "Texture2D"), "set_texture", "get_texture"); ADD_GROUP("Time", ""); ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "lifetime", PROPERTY_HINT_RANGE, "0.01,600.0,0.01,or_greater,suffix:s"), "set_lifetime", "get_lifetime"); ADD_PROPERTY(PropertyInfo(Variant::BOOL, "one_shot"), "set_one_shot", "get_one_shot"); @@ -646,10 +648,6 @@ void GPUParticles2D::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::FLOAT, "trail_lifetime", PROPERTY_HINT_RANGE, "0.01,10,0.01,or_greater,suffix:s"), "set_trail_lifetime", "get_trail_lifetime"); ADD_PROPERTY(PropertyInfo(Variant::INT, "trail_sections", PROPERTY_HINT_RANGE, "2,128,1"), "set_trail_sections", "get_trail_sections"); ADD_PROPERTY(PropertyInfo(Variant::INT, "trail_section_subdivisions", PROPERTY_HINT_RANGE, "1,1024,1"), "set_trail_section_subdivisions", "get_trail_section_subdivisions"); - ADD_GROUP("Process Material", "process_"); - ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "process_material", PROPERTY_HINT_RESOURCE_TYPE, "ShaderMaterial,ParticleProcessMaterial"), "set_process_material", "get_process_material"); - ADD_GROUP("Textures", ""); - ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "texture", PROPERTY_HINT_RESOURCE_TYPE, "Texture2D"), "set_texture", "get_texture"); BIND_ENUM_CONSTANT(DRAW_ORDER_INDEX); BIND_ENUM_CONSTANT(DRAW_ORDER_LIFETIME); diff --git a/scene/3d/mesh_instance_3d.cpp b/scene/3d/mesh_instance_3d.cpp index 88b1c340d8..10f3ab5c79 100644 --- a/scene/3d/mesh_instance_3d.cpp +++ b/scene/3d/mesh_instance_3d.cpp @@ -52,11 +52,22 @@ bool MeshInstance3D::_set(const StringName &p_name, const Variant &p_value) { if (p_name.operator String().begins_with("surface_material_override/")) { int idx = p_name.operator String().get_slicec('/', 1).to_int(); - if (idx >= surface_override_materials.size() || idx < 0) { + + // This is a bit of a hack to ensure compatibility with older material + // overrides that start indexing at 0. + // We assume that idx 0 is always read first, if its not, this won't work. + if (idx == 0) { + old_surface_index = true; + } + if (old_surface_index) { + idx++; + } + + if (idx > surface_override_materials.size() || idx < 0) { return false; } - set_surface_override_material(idx, p_value); + set_surface_override_material(idx - 1, p_value); return true; } @@ -75,7 +86,7 @@ bool MeshInstance3D::_get(const StringName &p_name, Variant &r_ret) const { } if (p_name.operator String().begins_with("surface_material_override/")) { - int idx = p_name.operator String().get_slicec('/', 1).to_int(); + int idx = p_name.operator String().get_slicec('/', 1).to_int() - 1; if (idx >= surface_override_materials.size() || idx < 0) { return false; } @@ -98,7 +109,7 @@ void MeshInstance3D::_get_property_list(List<PropertyInfo> *p_list) const { } if (mesh.is_valid()) { - for (int i = 0; i < mesh->get_surface_count(); i++) { + for (int i = 1; i <= mesh->get_surface_count(); i++) { p_list->push_back(PropertyInfo(Variant::OBJECT, vformat("%s/%d", PNAME("surface_material_override"), i), PROPERTY_HINT_RESOURCE_TYPE, "BaseMaterial3D,ShaderMaterial", PROPERTY_USAGE_DEFAULT | PROPERTY_USAGE_DEFERRED_SET_RESOURCE)); } } diff --git a/scene/3d/mesh_instance_3d.h b/scene/3d/mesh_instance_3d.h index caf7d25616..9e6dbaf160 100644 --- a/scene/3d/mesh_instance_3d.h +++ b/scene/3d/mesh_instance_3d.h @@ -57,6 +57,7 @@ protected: bool _set(const StringName &p_name, const Variant &p_value); bool _get(const StringName &p_name, Variant &r_ret) const; void _get_property_list(List<PropertyInfo> *p_list) const; + bool old_surface_index = false; void _notification(int p_what); static void _bind_methods(); diff --git a/scene/animation/animation_tree.cpp b/scene/animation/animation_tree.cpp index fbc85bd5e1..b06a21dea9 100644 --- a/scene/animation/animation_tree.cpp +++ b/scene/animation/animation_tree.cpp @@ -1759,7 +1759,7 @@ void AnimationTree::_setup_animation_player() { AnimationPlayer *new_player = nullptr; if (!animation_player.is_empty()) { - new_player = Object::cast_to<AnimationPlayer>(get_node(animation_player)); + new_player = Object::cast_to<AnimationPlayer>(get_node_or_null(animation_player)); if (new_player && !new_player->is_connected("animation_list_changed", callable_mp(this, &AnimationTree::_animation_player_changed))) { new_player->connect("animation_list_changed", callable_mp(this, &AnimationTree::_animation_player_changed)); } diff --git a/scene/gui/item_list.cpp b/scene/gui/item_list.cpp index 82f089735d..c44feddd38 100644 --- a/scene/gui/item_list.cpp +++ b/scene/gui/item_list.cpp @@ -1550,6 +1550,7 @@ bool ItemList::get_allow_reselect() const { } void ItemList::set_icon_scale(real_t p_scale) { + ERR_FAIL_COND(!Math::is_finite(p_scale)); icon_scale = p_scale; } diff --git a/scene/gui/text_edit.cpp b/scene/gui/text_edit.cpp index a96d85dffa..6d9e8a90c2 100644 --- a/scene/gui/text_edit.cpp +++ b/scene/gui/text_edit.cpp @@ -680,7 +680,7 @@ void TextEdit::_notification(int p_what) { } } - bool draw_placeholder = text.size() == 1 && text[0].length() == 0; + bool draw_placeholder = text.size() == 1 && text[0].is_empty() && ime_text.is_empty(); // Get the highlighted words. String highlighted_text = get_selected_text(0); diff --git a/scene/resources/curve.cpp b/scene/resources/curve.cpp index bc2149a8c6..b0a63bb7fa 100644 --- a/scene/resources/curve.cpp +++ b/scene/resources/curve.cpp @@ -790,6 +790,19 @@ void Curve2D::_bake_segment2d_even_length(RBMap<real_t, Vector2> &r_bake, real_t } } +Vector2 Curve2D::_calculate_tangent(const Vector2 &p_begin, const Vector2 &p_control_1, const Vector2 &p_control_2, const Vector2 &p_end, const real_t p_t) { + // Handle corner cases. + if (Math::is_zero_approx(p_t - 0.0f) && p_control_1.is_equal_approx(p_begin)) { + return (p_end - p_begin).normalized(); + } + + if (Math::is_zero_approx(p_t - 1.0f) && p_control_2.is_equal_approx(p_end)) { + return (p_end - p_begin).normalized(); + } + + return p_begin.bezier_derivative(p_control_1, p_control_2, p_end, p_t).normalized(); +} + void Curve2D::_bake() const { if (!baked_cache_dirty) { return; @@ -835,19 +848,19 @@ void Curve2D::_bake() const { // Collect positions and sample tilts and tangents for each baked points. bpw[0] = points[0].position; - bfw[0] = points[0].position.bezier_derivative(points[0].position + points[0].out, points[1].position + points[1].in, points[1].position, 0.0).normalized(); + bfw[0] = _calculate_tangent(points[0].position, points[0].position + points[0].out, points[1].position + points[1].in, points[1].position, 0.0); int pidx = 0; for (int i = 0; i < points.size() - 1; i++) { for (const KeyValue<real_t, Vector2> &E : midpoints[i]) { pidx++; bpw[pidx] = E.value; - bfw[pidx] = points[i].position.bezier_derivative(points[i].position + points[i].out, points[i + 1].position + points[i + 1].in, points[i + 1].position, E.key).normalized(); + bfw[pidx] = _calculate_tangent(points[i].position, points[i].position + points[i].out, points[i + 1].position + points[i + 1].in, points[i + 1].position, E.key); } pidx++; bpw[pidx] = points[i + 1].position; - bfw[pidx] = points[i].position.bezier_derivative(points[i].position + points[i].out, points[i + 1].position + points[i + 1].in, points[i + 1].position, 1.0).normalized(); + bfw[pidx] = _calculate_tangent(points[i].position, points[i].position + points[i].out, points[i + 1].position + points[i + 1].in, points[i + 1].position, 1.0); } // Recalculate the baked distances. @@ -1031,10 +1044,11 @@ Vector2 Curve2D::get_closest_point(const Vector2 &p_to_point) const { real_t nearest_dist = -1.0f; for (int i = 0; i < pc - 1; i++) { + const real_t interval = baked_dist_cache[i + 1] - baked_dist_cache[i]; Vector2 origin = r[i]; - Vector2 direction = (r[i + 1] - origin) / bake_interval; + Vector2 direction = (r[i + 1] - origin) / interval; - real_t d = CLAMP((p_to_point - origin).dot(direction), 0.0f, bake_interval); + real_t d = CLAMP((p_to_point - origin).dot(direction), 0.0f, interval); Vector2 proj = origin + direction * d; real_t dist = proj.distance_squared_to(p_to_point); @@ -1070,10 +1084,13 @@ real_t Curve2D::get_closest_offset(const Vector2 &p_to_point) const { real_t offset = 0.0f; for (int i = 0; i < pc - 1; i++) { + offset = baked_dist_cache[i]; + + const real_t interval = baked_dist_cache[i + 1] - baked_dist_cache[i]; Vector2 origin = r[i]; - Vector2 direction = (r[i + 1] - origin) / bake_interval; + Vector2 direction = (r[i + 1] - origin) / interval; - real_t d = CLAMP((p_to_point - origin).dot(direction), 0.0f, bake_interval); + real_t d = CLAMP((p_to_point - origin).dot(direction), 0.0f, interval); Vector2 proj = origin + direction * d; real_t dist = proj.distance_squared_to(p_to_point); @@ -1082,8 +1099,6 @@ real_t Curve2D::get_closest_offset(const Vector2 &p_to_point) const { nearest = offset + d; nearest_dist = dist; } - - offset += bake_interval; } return nearest; @@ -1480,6 +1495,19 @@ void Curve3D::_bake_segment3d_even_length(RBMap<real_t, Vector3> &r_bake, real_t } } +Vector3 Curve3D::_calculate_tangent(const Vector3 &p_begin, const Vector3 &p_control_1, const Vector3 &p_control_2, const Vector3 &p_end, const real_t p_t) { + // Handle corner cases. + if (Math::is_zero_approx(p_t - 0.0f) && p_control_1.is_equal_approx(p_begin)) { + return (p_end - p_begin).normalized(); + } + + if (Math::is_zero_approx(p_t - 1.0f) && p_control_2.is_equal_approx(p_end)) { + return (p_end - p_begin).normalized(); + } + + return p_begin.bezier_derivative(p_control_1, p_control_2, p_end, p_t).normalized(); +} + void Curve3D::_bake() const { if (!baked_cache_dirty) { return; @@ -1539,7 +1567,7 @@ void Curve3D::_bake() const { // Collect positions and sample tilts and tangents for each baked points. bpw[0] = points[0].position; - bfw[0] = points[0].position.bezier_derivative(points[0].position + points[0].out, points[1].position + points[1].in, points[1].position, 0.0).normalized(); + bfw[0] = _calculate_tangent(points[0].position, points[0].position + points[0].out, points[1].position + points[1].in, points[1].position, 0.0); btw[0] = points[0].tilt; int pidx = 0; @@ -1547,13 +1575,13 @@ void Curve3D::_bake() const { for (const KeyValue<real_t, Vector3> &E : midpoints[i]) { pidx++; bpw[pidx] = E.value; - bfw[pidx] = points[i].position.bezier_derivative(points[i].position + points[i].out, points[i + 1].position + points[i + 1].in, points[i + 1].position, E.key).normalized(); + bfw[pidx] = _calculate_tangent(points[i].position, points[i].position + points[i].out, points[i + 1].position + points[i + 1].in, points[i + 1].position, E.key); btw[pidx] = Math::lerp(points[i].tilt, points[i + 1].tilt, E.key); } pidx++; bpw[pidx] = points[i + 1].position; - bfw[pidx] = points[i].position.bezier_derivative(points[i].position + points[i].out, points[i + 1].position + points[i + 1].in, points[i + 1].position, 1.0).normalized(); + bfw[pidx] = _calculate_tangent(points[i].position, points[i].position + points[i].out, points[i + 1].position + points[i + 1].in, points[i + 1].position, 1.0); btw[pidx] = points[i + 1].tilt; } diff --git a/scene/resources/curve.h b/scene/resources/curve.h index ea3ceabb14..26608c47cd 100644 --- a/scene/resources/curve.h +++ b/scene/resources/curve.h @@ -178,6 +178,7 @@ class Curve2D : public Resource { void mark_dirty(); + static Vector2 _calculate_tangent(const Vector2 &p_begin, const Vector2 &p_control_1, const Vector2 &p_control_2, const Vector2 &p_end, const real_t p_t); void _bake() const; real_t bake_interval = 5.0; @@ -261,6 +262,7 @@ class Curve3D : public Resource { void mark_dirty(); + static Vector3 _calculate_tangent(const Vector3 &p_begin, const Vector3 &p_control_1, const Vector3 &p_control_2, const Vector3 &p_end, const real_t p_t); void _bake() const; struct Interval { diff --git a/scene/resources/resource_format_text.cpp b/scene/resources/resource_format_text.cpp index 36e4a8ea37..092f672cba 100644 --- a/scene/resources/resource_format_text.cpp +++ b/scene/resources/resource_format_text.cpp @@ -836,7 +836,8 @@ void ResourceLoaderText::set_translation_remapped(bool p_remapped) { translation_remapped = p_remapped; } -ResourceLoaderText::ResourceLoaderText() {} +ResourceLoaderText::ResourceLoaderText() : + stream(false) {} void ResourceLoaderText::get_dependencies(Ref<FileAccess> p_f, List<String> *p_dependencies, bool p_add_types) { open(p_f); @@ -981,15 +982,26 @@ Error ResourceLoaderText::rename_dependencies(Ref<FileAccess> p_f, const String f->seek(tag_end); - uint8_t c = f->get_8(); - if (c == '\n' && !f->eof_reached()) { - // Skip first newline character since we added one - c = f->get_8(); + const uint32_t buffer_size = 2048; + uint8_t *buffer = (uint8_t *)alloca(buffer_size); + uint32_t num_read; + + num_read = f->get_buffer(buffer, buffer_size); + ERR_FAIL_COND_V_MSG(num_read == UINT32_MAX, ERR_CANT_CREATE, "Failed to allocate memory for buffer."); + ERR_FAIL_COND_V(num_read == 0, ERR_FILE_CORRUPT); + + if (*buffer == '\n') { + // Skip first newline character since we added one. + if (num_read > 1) { + fw->store_buffer(buffer + 1, num_read - 1); + } + } else { + fw->store_buffer(buffer, num_read); } while (!f->eof_reached()) { - fw->store_8(c); - c = f->get_8(); + num_read = f->get_buffer(buffer, buffer_size); + fw->store_buffer(buffer, num_read); } bool all_ok = fw->get_error() == OK; diff --git a/servers/physics_2d/godot_body_pair_2d.cpp b/servers/physics_2d/godot_body_pair_2d.cpp index 7b7c67bbc2..79e084e90e 100644 --- a/servers/physics_2d/godot_body_pair_2d.cpp +++ b/servers/physics_2d/godot_body_pair_2d.cpp @@ -161,6 +161,11 @@ void GodotBodyPair2D::_validate_contacts() { } } +// _test_ccd prevents tunneling by slowing down a high velocity body that is about to collide so that next frame it will be at an appropriate location to collide (i.e. slight overlap) +// Warning: the way velocity is adjusted down to cause a collision means the momentum will be weaker than it should for a bounce! +// Process: only proceed if body A's motion is high relative to its size. +// cast forward along motion vector to see if A is going to enter/pass B's collider next frame, only proceed if it does. +// adjust the velocity of A down so that it will just slightly intersect the collider instead of blowing right past it. bool GodotBodyPair2D::_test_ccd(real_t p_step, GodotBody2D *p_A, int p_shape_A, const Transform2D &p_xform_A, GodotBody2D *p_B, int p_shape_B, const Transform2D &p_xform_B) { Vector2 motion = p_A->get_linear_velocity() * p_step; real_t mlen = motion.length(); @@ -180,24 +185,32 @@ bool GodotBodyPair2D::_test_ccd(real_t p_step, GodotBody2D *p_A, int p_shape_A, return false; } - // Going too fast in that direction. + // A is moving fast enough that tunneling might occur. See if it's really about to collide. // Cast a segment from support in motion normal, in the same direction of motion by motion length. - // Support is the worst case collision point, so real collision happened before. + // Support point will the farthest forward collision point along the movement vector. + // i.e. the point that should hit B first if any collision does occur. + + // convert mnormal into body A's local xform because get_support requires (and returns) local coordinates. int a; Vector2 s[2]; - p_A->get_shape(p_shape_A)->get_supports(p_xform_A.basis_xform(mnormal).normalized(), s, a); + p_A->get_shape(p_shape_A)->get_supports(p_xform_A.basis_xform_inv(mnormal).normalized(), s, a); Vector2 from = p_xform_A.xform(s[0]); + // Back up 10% of the per-frame motion behind the support point and use that as the beginning of our cast. + // This should ensure the calculated new velocity will really cause a bit of overlap instead of just getting us very close. + from -= motion * 0.1; Vector2 to = from + motion; Transform2D from_inv = p_xform_B.affine_inverse(); // Start from a little inside the bounding box. - Vector2 local_from = from_inv.xform(from - mnormal * mlen * 0.1); + Vector2 local_from = from_inv.xform(from); Vector2 local_to = from_inv.xform(to); Vector2 rpos, rnorm; if (!p_B->get_shape(p_shape_B)->intersect_segment(local_from, local_to, rpos, rnorm)) { + // there was no hit. Since the segment is the length of per-frame motion, this means the bodies will not + // actually collide yet on next frame. We'll probably check again next frame once they're closer. return false; } @@ -215,7 +228,7 @@ bool GodotBodyPair2D::_test_ccd(real_t p_step, GodotBody2D *p_A, int p_shape_A, // next frame will hit softly or soft enough. Vector2 hitpos = p_xform_B.xform(rpos); - real_t newlen = hitpos.distance_to(from) - (max - min) * 0.01; + real_t newlen = hitpos.distance_to(from); p_A->set_linear_velocity(mnormal * (newlen / p_step)); return true; diff --git a/servers/physics_3d/godot_body_pair_3d.cpp b/servers/physics_3d/godot_body_pair_3d.cpp index 7e6cc6f834..981a7c502f 100644 --- a/servers/physics_3d/godot_body_pair_3d.cpp +++ b/servers/physics_3d/godot_body_pair_3d.cpp @@ -161,6 +161,11 @@ void GodotBodyPair3D::validate_contacts() { } } +// _test_ccd prevents tunneling by slowing down a high velocity body that is about to collide so that next frame it will be at an appropriate location to collide (i.e. slight overlap) +// Warning: the way velocity is adjusted down to cause a collision means the momentum will be weaker than it should for a bounce! +// Process: only proceed if body A's motion is high relative to its size. +// cast forward along motion vector to see if A is going to enter/pass B's collider next frame, only proceed if it does. +// adjust the velocity of A down so that it will just slightly intersect the collider instead of blowing right past it. bool GodotBodyPair3D::_test_ccd(real_t p_step, GodotBody3D *p_A, int p_shape_A, const Transform3D &p_xform_A, GodotBody3D *p_B, int p_shape_B, const Transform3D &p_xform_B) { Vector3 motion = p_A->get_linear_velocity() * p_step; real_t mlen = motion.length(); @@ -177,33 +182,39 @@ bool GodotBodyPair3D::_test_ccd(real_t p_step, GodotBody3D *p_A, int p_shape_A, // Let's say it should move more than 1/3 the size of the object in that axis. bool fast_object = mlen > (max - min) * 0.3; if (!fast_object) { - return false; + return false; // moving slow enough that there's no chance of tunneling. } - // Going too fast in that direction. + // A is moving fast enough that tunneling might occur. See if it's really about to collide. // Cast a segment from support in motion normal, in the same direction of motion by motion length. - // Support is the worst case collision point, so real collision happened before. - Vector3 s = p_A->get_shape(p_shape_A)->get_support(p_xform_A.basis.xform(mnormal).normalized()); + // Support point will the farthest forward collision point along the movement vector. + // i.e. the point that should hit B first if any collision does occur. + + // convert mnormal into body A's local xform because get_support requires (and returns) local coordinates. + Vector3 s = p_A->get_shape(p_shape_A)->get_support(p_xform_A.basis.xform_inv(mnormal).normalized()); Vector3 from = p_xform_A.xform(s); + // Back up 10% of the per-frame motion behind the support point and use that as the beginning of our cast. + // This should ensure the calculated new velocity will really cause a bit of overlap instead of just getting us very close. + from -= motion * 0.1; Vector3 to = from + motion; Transform3D from_inv = p_xform_B.affine_inverse(); - // Start from a little inside the bounding box. - Vector3 local_from = from_inv.xform(from - mnormal * mlen * 0.1); + Vector3 local_from = from_inv.xform(from); Vector3 local_to = from_inv.xform(to); Vector3 rpos, rnorm; if (!p_B->get_shape(p_shape_B)->intersect_segment(local_from, local_to, rpos, rnorm, true)) { + // there was no hit. Since the segment is the length of per-frame motion, this means the bodies will not + // actually collide yet on next frame. We'll probably check again next frame once they're closer. return false; } - // Shorten the linear velocity so it does not hit, but gets close enough, - // next frame will hit softly or soft enough. + // Shorten the linear velocity so it will collide next frame. Vector3 hitpos = p_xform_B.xform(rpos); - real_t newlen = hitpos.distance_to(from) - (max - min) * 0.01; + real_t newlen = hitpos.distance_to(from); // this length (speed) should cause the point we chose slightly behind A's support point to arrive right at B's collider next frame. p_A->set_linear_velocity((mnormal * newlen) / p_step); return true; diff --git a/servers/rendering/dummy/rasterizer_scene_dummy.h b/servers/rendering/dummy/rasterizer_scene_dummy.h index bc8f7c523b..3937362920 100644 --- a/servers/rendering/dummy/rasterizer_scene_dummy.h +++ b/servers/rendering/dummy/rasterizer_scene_dummy.h @@ -112,7 +112,6 @@ public: /* ENVIRONMENT API */ void environment_glow_set_use_bicubic_upscale(bool p_enable) override {} - void environment_glow_set_use_high_quality(bool p_enable) override {} void environment_set_ssr_roughness_quality(RS::EnvironmentSSRRoughnessQuality p_quality) override {} diff --git a/servers/rendering/renderer_rd/effects/copy_effects.cpp b/servers/rendering/renderer_rd/effects/copy_effects.cpp index f94abd66d7..9fda54a34d 100644 --- a/servers/rendering/renderer_rd/effects/copy_effects.cpp +++ b/servers/rendering/renderer_rd/effects/copy_effects.cpp @@ -628,7 +628,7 @@ void CopyEffects::copy_raster(RID p_source_texture, RID p_dest_framebuffer) { RD::get_singleton()->draw_list_end(); } -void CopyEffects::gaussian_blur(RID p_source_rd_texture, RID p_texture, const Rect2i &p_region, bool p_8bit_dst) { +void CopyEffects::gaussian_blur(RID p_source_rd_texture, RID p_texture, const Rect2i &p_region, const Size2i &p_size, bool p_8bit_dst) { ERR_FAIL_COND_MSG(prefer_raster_effects, "Can't use the compute version of the gaussian blur with the mobile renderer."); UniformSetCacheRD *uniform_set_cache = UniformSetCacheRD::get_singleton(); @@ -640,8 +640,10 @@ void CopyEffects::gaussian_blur(RID p_source_rd_texture, RID p_texture, const Re copy.push_constant.section[0] = p_region.position.x; copy.push_constant.section[1] = p_region.position.y; - copy.push_constant.section[2] = p_region.size.width; - copy.push_constant.section[3] = p_region.size.height; + copy.push_constant.target[0] = p_region.position.x; + copy.push_constant.target[1] = p_region.position.y; + copy.push_constant.section[2] = p_size.width; + copy.push_constant.section[3] = p_size.height; // setup our uniforms RID default_sampler = material_storage->sampler_rd_get_default(RS::CANVAS_ITEM_TEXTURE_FILTER_LINEAR, RS::CANVAS_ITEM_TEXTURE_REPEAT_DISABLED); @@ -702,7 +704,7 @@ void CopyEffects::gaussian_blur_raster(RID p_source_rd_texture, RID p_dest_textu RD::get_singleton()->draw_list_end(); } -void CopyEffects::gaussian_glow(RID p_source_rd_texture, RID p_back_texture, const Size2i &p_size, float p_strength, bool p_high_quality, bool p_first_pass, float p_luminance_cap, float p_exposure, float p_bloom, float p_hdr_bleed_threshold, float p_hdr_bleed_scale, RID p_auto_exposure, float p_auto_exposure_scale) { +void CopyEffects::gaussian_glow(RID p_source_rd_texture, RID p_back_texture, const Size2i &p_size, float p_strength, bool p_first_pass, float p_luminance_cap, float p_exposure, float p_bloom, float p_hdr_bleed_threshold, float p_hdr_bleed_scale, RID p_auto_exposure, float p_auto_exposure_scale) { ERR_FAIL_COND_MSG(prefer_raster_effects, "Can't use the compute version of the gaussian glow with the mobile renderer."); UniformSetCacheRD *uniform_set_cache = UniformSetCacheRD::get_singleton(); @@ -746,14 +748,14 @@ void CopyEffects::gaussian_glow(RID p_source_rd_texture, RID p_back_texture, con RD::get_singleton()->compute_list_bind_uniform_set(compute_list, uniform_set_cache->get_cache(shader, 1, u_auto_exposure), 1); } - copy.push_constant.flags = base_flags | (p_first_pass ? COPY_FLAG_GLOW_FIRST_PASS : 0) | (p_high_quality ? COPY_FLAG_HIGH_QUALITY_GLOW : 0); + copy.push_constant.flags = base_flags | (p_first_pass ? COPY_FLAG_GLOW_FIRST_PASS : 0); RD::get_singleton()->compute_list_set_push_constant(compute_list, ©.push_constant, sizeof(CopyPushConstant)); RD::get_singleton()->compute_list_dispatch_threads(compute_list, p_size.width, p_size.height, 1); RD::get_singleton()->compute_list_end(); } -void CopyEffects::gaussian_glow_raster(RID p_source_rd_texture, RID p_half_texture, RID p_dest_texture, float p_luminance_multiplier, const Size2i &p_size, float p_strength, bool p_high_quality, bool p_first_pass, float p_luminance_cap, float p_exposure, float p_bloom, float p_hdr_bleed_threshold, float p_hdr_bleed_scale, RID p_auto_exposure, float p_auto_exposure_scale) { +void CopyEffects::gaussian_glow_raster(RID p_source_rd_texture, RID p_half_texture, RID p_dest_texture, float p_luminance_multiplier, const Size2i &p_size, float p_strength, bool p_first_pass, float p_luminance_cap, float p_exposure, float p_bloom, float p_hdr_bleed_threshold, float p_hdr_bleed_scale, RID p_auto_exposure, float p_auto_exposure_scale) { ERR_FAIL_COND_MSG(!prefer_raster_effects, "Can't use the raster version of the gaussian glow with the clustered renderer."); UniformSetCacheRD *uniform_set_cache = UniformSetCacheRD::get_singleton(); diff --git a/servers/rendering/renderer_rd/effects/copy_effects.h b/servers/rendering/renderer_rd/effects/copy_effects.h index 83f7a51a36..a0904f0b8e 100644 --- a/servers/rendering/renderer_rd/effects/copy_effects.h +++ b/servers/rendering/renderer_rd/effects/copy_effects.h @@ -132,8 +132,7 @@ private: COPY_FLAG_FLIP_Y = (1 << 5), COPY_FLAG_FORCE_LUMINANCE = (1 << 6), COPY_FLAG_ALL_SOURCE = (1 << 7), - COPY_FLAG_HIGH_QUALITY_GLOW = (1 << 8), - COPY_FLAG_ALPHA_TO_ONE = (1 << 9), + COPY_FLAG_ALPHA_TO_ONE = (1 << 8), }; struct CopyPushConstant { @@ -331,10 +330,10 @@ public: void copy_to_atlas_fb(RID p_source_rd_texture, RID p_dest_framebuffer, const Rect2 &p_uv_rect, RD::DrawListID p_draw_list, bool p_flip_y = false, bool p_panorama = false); void copy_raster(RID p_source_texture, RID p_dest_framebuffer); - void gaussian_blur(RID p_source_rd_texture, RID p_texture, const Rect2i &p_region, bool p_8bit_dst = false); + void gaussian_blur(RID p_source_rd_texture, RID p_texture, const Rect2i &p_region, const Size2i &p_size, bool p_8bit_dst = false); void gaussian_blur_raster(RID p_source_rd_texture, RID p_dest_texture, const Rect2i &p_region, const Size2i &p_size); - void gaussian_glow(RID p_source_rd_texture, RID p_back_texture, const Size2i &p_size, float p_strength = 1.0, bool p_high_quality = false, bool p_first_pass = false, float p_luminance_cap = 16.0, float p_exposure = 1.0, float p_bloom = 0.0, float p_hdr_bleed_threshold = 1.0, float p_hdr_bleed_scale = 1.0, RID p_auto_exposure = RID(), float p_auto_exposure_scale = 1.0); - void gaussian_glow_raster(RID p_source_rd_texture, RID p_half_texture, RID p_dest_texture, float p_luminance_multiplier, const Size2i &p_size, float p_strength = 1.0, bool p_high_quality = false, bool p_first_pass = false, float p_luminance_cap = 16.0, float p_exposure = 1.0, float p_bloom = 0.0, float p_hdr_bleed_threshold = 1.0, float p_hdr_bleed_scale = 1.0, RID p_auto_exposure = RID(), float p_auto_exposure_scale = 1.0); + void gaussian_glow(RID p_source_rd_texture, RID p_back_texture, const Size2i &p_size, float p_strength = 1.0, bool p_first_pass = false, float p_luminance_cap = 16.0, float p_exposure = 1.0, float p_bloom = 0.0, float p_hdr_bleed_threshold = 1.0, float p_hdr_bleed_scale = 1.0, RID p_auto_exposure = RID(), float p_auto_exposure_scale = 1.0); + void gaussian_glow_raster(RID p_source_rd_texture, RID p_half_texture, RID p_dest_texture, float p_luminance_multiplier, const Size2i &p_size, float p_strength = 1.0, bool p_first_pass = false, float p_luminance_cap = 16.0, float p_exposure = 1.0, float p_bloom = 0.0, float p_hdr_bleed_threshold = 1.0, float p_hdr_bleed_scale = 1.0, RID p_auto_exposure = RID(), float p_auto_exposure_scale = 1.0); void make_mipmap(RID p_source_rd_texture, RID p_dest_texture, const Size2i &p_size); void make_mipmap_raster(RID p_source_rd_texture, RID p_dest_texture, const Size2i &p_size); diff --git a/servers/rendering/renderer_rd/renderer_scene_render_rd.cpp b/servers/rendering/renderer_rd/renderer_scene_render_rd.cpp index 1b5665855f..3d84d47333 100644 --- a/servers/rendering/renderer_rd/renderer_scene_render_rd.cpp +++ b/servers/rendering/renderer_rd/renderer_scene_render_rd.cpp @@ -171,10 +171,6 @@ void RendererSceneRenderRD::environment_glow_set_use_bicubic_upscale(bool p_enab glow_bicubic_upscale = p_enable; } -void RendererSceneRenderRD::environment_glow_set_use_high_quality(bool p_enable) { - glow_high_quality = p_enable; -} - void RendererSceneRenderRD::environment_set_volumetric_fog_volume_size(int p_size, int p_depth) { volumetric_fog_size = p_size; volumetric_fog_depth = p_depth; @@ -599,20 +595,20 @@ void RendererSceneRenderRD::_render_buffers_post_process_and_tonemap(const Rende RID source = rb->get_internal_texture(l); RID dest = rb->get_texture_slice(RB_SCOPE_BUFFERS, RB_TEX_BLUR_1, l, i); if (can_use_storage) { - copy_effects->gaussian_glow(source, dest, vp_size, environment_get_glow_strength(p_render_data->environment), glow_high_quality, true, environment_get_glow_hdr_luminance_cap(p_render_data->environment), environment_get_exposure(p_render_data->environment), environment_get_glow_bloom(p_render_data->environment), environment_get_glow_hdr_bleed_threshold(p_render_data->environment), environment_get_glow_hdr_bleed_scale(p_render_data->environment), luminance_texture, auto_exposure_scale); + copy_effects->gaussian_glow(source, dest, vp_size, environment_get_glow_strength(p_render_data->environment), true, environment_get_glow_hdr_luminance_cap(p_render_data->environment), environment_get_exposure(p_render_data->environment), environment_get_glow_bloom(p_render_data->environment), environment_get_glow_hdr_bleed_threshold(p_render_data->environment), environment_get_glow_hdr_bleed_scale(p_render_data->environment), luminance_texture, auto_exposure_scale); } else { RID half = rb->get_texture_slice(RB_SCOPE_BUFFERS, RB_TEX_HALF_BLUR, 0, i); // we can reuse this for each view - copy_effects->gaussian_glow_raster(source, half, dest, luminance_multiplier, vp_size, environment_get_glow_strength(p_render_data->environment), glow_high_quality, true, environment_get_glow_hdr_luminance_cap(p_render_data->environment), environment_get_exposure(p_render_data->environment), environment_get_glow_bloom(p_render_data->environment), environment_get_glow_hdr_bleed_threshold(p_render_data->environment), environment_get_glow_hdr_bleed_scale(p_render_data->environment), luminance_texture, auto_exposure_scale); + copy_effects->gaussian_glow_raster(source, half, dest, luminance_multiplier, vp_size, environment_get_glow_strength(p_render_data->environment), true, environment_get_glow_hdr_luminance_cap(p_render_data->environment), environment_get_exposure(p_render_data->environment), environment_get_glow_bloom(p_render_data->environment), environment_get_glow_hdr_bleed_threshold(p_render_data->environment), environment_get_glow_hdr_bleed_scale(p_render_data->environment), luminance_texture, auto_exposure_scale); } } else { RID source = rb->get_texture_slice(RB_SCOPE_BUFFERS, RB_TEX_BLUR_1, l, i - 1); RID dest = rb->get_texture_slice(RB_SCOPE_BUFFERS, RB_TEX_BLUR_1, l, i); if (can_use_storage) { - copy_effects->gaussian_glow(source, dest, vp_size, environment_get_glow_strength(p_render_data->environment), glow_high_quality); + copy_effects->gaussian_glow(source, dest, vp_size, environment_get_glow_strength(p_render_data->environment)); } else { RID half = rb->get_texture_slice(RB_SCOPE_BUFFERS, RB_TEX_HALF_BLUR, 0, i); // we can reuse this for each view - copy_effects->gaussian_glow_raster(source, half, dest, luminance_multiplier, vp_size, environment_get_glow_strength(p_render_data->environment), glow_high_quality); + copy_effects->gaussian_glow_raster(source, half, dest, luminance_multiplier, vp_size, environment_get_glow_strength(p_render_data->environment)); } } } @@ -1401,7 +1397,6 @@ void RendererSceneRenderRD::init() { screen_space_roughness_limiter_amount = GLOBAL_GET("rendering/anti_aliasing/screen_space_roughness_limiter/amount"); screen_space_roughness_limiter_limit = GLOBAL_GET("rendering/anti_aliasing/screen_space_roughness_limiter/limit"); glow_bicubic_upscale = int(GLOBAL_GET("rendering/environment/glow/upscale_mode")) > 0; - glow_high_quality = GLOBAL_GET("rendering/environment/glow/use_high_quality"); directional_penumbra_shadow_kernel = memnew_arr(float, 128); directional_soft_shadow_kernel = memnew_arr(float, 128); diff --git a/servers/rendering/renderer_rd/renderer_scene_render_rd.h b/servers/rendering/renderer_rd/renderer_scene_render_rd.h index 2312603829..d813d96f77 100644 --- a/servers/rendering/renderer_rd/renderer_scene_render_rd.h +++ b/servers/rendering/renderer_rd/renderer_scene_render_rd.h @@ -114,7 +114,6 @@ protected: /* ENVIRONMENT */ bool glow_bicubic_upscale = false; - bool glow_high_quality = false; bool use_physical_light_units = false; @@ -239,7 +238,6 @@ public: /* ENVIRONMENT API */ virtual void environment_glow_set_use_bicubic_upscale(bool p_enable) override; - virtual void environment_glow_set_use_high_quality(bool p_enable) override; virtual void environment_set_volumetric_fog_volume_size(int p_size, int p_depth) override; virtual void environment_set_volumetric_fog_filter_active(bool p_enable) override; diff --git a/servers/rendering/renderer_rd/shaders/effects/copy.glsl b/servers/rendering/renderer_rd/shaders/effects/copy.glsl index 5cc2ed7622..3a82861057 100644 --- a/servers/rendering/renderer_rd/shaders/effects/copy.glsl +++ b/servers/rendering/renderer_rd/shaders/effects/copy.glsl @@ -14,8 +14,7 @@ layout(local_size_x = 8, local_size_y = 8, local_size_z = 1) in; #define FLAG_FLIP_Y (1 << 5) #define FLAG_FORCE_LUMINANCE (1 << 6) #define FLAG_COPY_ALL_SOURCE (1 << 7) -#define FLAG_HIGH_QUALITY_GLOW (1 << 8) -#define FLAG_ALPHA_TO_ONE (1 << 9) +#define FLAG_ALPHA_TO_ONE (1 << 8) layout(push_constant, std430) uniform Params { ivec4 section; @@ -93,25 +92,14 @@ void main() { #ifdef MODE_GAUSSIAN_BLUR // First pass copy texture into 16x16 local memory for every 8x8 thread block - vec2 quad_center_uv = clamp(vec2(gl_GlobalInvocationID.xy + gl_LocalInvocationID.xy - 3.5) / params.section.zw, vec2(0.5 / params.section.zw), vec2(1.0 - 1.5 / params.section.zw)); + vec2 quad_center_uv = clamp(vec2(params.section.xy + gl_GlobalInvocationID.xy + gl_LocalInvocationID.xy - 3.5) / params.section.zw, vec2(0.5 / params.section.zw), vec2(1.0 - 1.5 / params.section.zw)); uint dest_index = gl_LocalInvocationID.x * 2 + gl_LocalInvocationID.y * 2 * 16; -#ifdef MODE_GLOW - if (bool(params.flags & FLAG_HIGH_QUALITY_GLOW)) { - vec2 quad_offset_uv = clamp((vec2(gl_GlobalInvocationID.xy + gl_LocalInvocationID.xy - 3.0)) / params.section.zw, vec2(0.5 / params.section.zw), vec2(1.0 - 1.5 / params.section.zw)); - - local_cache[dest_index] = (textureLod(source_color, quad_center_uv, 0) + textureLod(source_color, quad_offset_uv, 0)) * 0.5; - local_cache[dest_index + 1] = (textureLod(source_color, quad_center_uv + vec2(1.0 / params.section.z, 0.0), 0) + textureLod(source_color, quad_offset_uv + vec2(1.0 / params.section.z, 0.0), 0)) * 0.5; - local_cache[dest_index + 16] = (textureLod(source_color, quad_center_uv + vec2(0.0, 1.0 / params.section.w), 0) + textureLod(source_color, quad_offset_uv + vec2(0.0, 1.0 / params.section.w), 0)) * 0.5; - local_cache[dest_index + 16 + 1] = (textureLod(source_color, quad_center_uv + vec2(1.0 / params.section.zw), 0) + textureLod(source_color, quad_offset_uv + vec2(1.0 / params.section.zw), 0)) * 0.5; - } else -#endif - { - local_cache[dest_index] = textureLod(source_color, quad_center_uv, 0); - local_cache[dest_index + 1] = textureLod(source_color, quad_center_uv + vec2(1.0 / params.section.z, 0.0), 0); - local_cache[dest_index + 16] = textureLod(source_color, quad_center_uv + vec2(0.0, 1.0 / params.section.w), 0); - local_cache[dest_index + 16 + 1] = textureLod(source_color, quad_center_uv + vec2(1.0 / params.section.zw), 0); - } + local_cache[dest_index] = textureLod(source_color, quad_center_uv, 0); + local_cache[dest_index + 1] = textureLod(source_color, quad_center_uv + vec2(1.0 / params.section.z, 0.0), 0); + local_cache[dest_index + 16] = textureLod(source_color, quad_center_uv + vec2(0.0, 1.0 / params.section.w), 0); + local_cache[dest_index + 16 + 1] = textureLod(source_color, quad_center_uv + vec2(1.0 / params.section.zw), 0); + #ifdef MODE_GLOW if (bool(params.flags & FLAG_GLOW_FIRST_PASS)) { // Tonemap initial samples to reduce weight of fireflies: https://graphicrants.blogspot.com/2013/12/tone-mapping.html diff --git a/servers/rendering/renderer_rd/shaders/effects/copy_to_fb.glsl b/servers/rendering/renderer_rd/shaders/effects/copy_to_fb.glsl index 46bb99794d..6137224162 100644 --- a/servers/rendering/renderer_rd/shaders/effects/copy_to_fb.glsl +++ b/servers/rendering/renderer_rd/shaders/effects/copy_to_fb.glsl @@ -88,6 +88,7 @@ layout(push_constant, std430) uniform Params { } params; +#ifndef MODE_SET_COLOR #ifdef MULTIVIEW layout(location = 0) in vec3 uv_interp; #else @@ -106,6 +107,7 @@ layout(set = 0, binding = 0) uniform sampler2D source_color; layout(set = 1, binding = 0) uniform sampler2D source_color2; #endif /* MODE_TWO_SOURCES */ #endif /* MULTIVIEW */ +#endif /* !SET_COLOR */ layout(location = 0) out vec4 frag_color; diff --git a/servers/rendering/renderer_rd/shaders/effects/screen_space_reflection.glsl b/servers/rendering/renderer_rd/shaders/effects/screen_space_reflection.glsl index 9d8294a7da..a8b2d77718 100644 --- a/servers/rendering/renderer_rd/shaders/effects/screen_space_reflection.glsl +++ b/servers/rendering/renderer_rd/shaders/effects/screen_space_reflection.glsl @@ -212,6 +212,9 @@ void main() { float grad = (steps_taken + 1.0) / float(params.num_steps); float initial_fade = params.curve_fade_in == 0.0 ? 1.0 : pow(clamp(grad, 0.0, 1.0), params.curve_fade_in); float fade = pow(clamp(1.0 - grad, 0.0, 1.0), params.distance_fade) * initial_fade; + // This is an ad-hoc term to fade out the SSR as roughness increases. Values used + // are meant to match the visual appearance of a ReflectionProbe. + float roughness_fade = smoothstep(0.4, 0.7, 1.0 - normal_roughness.w); final_pos = pos; vec4 final_color; @@ -246,7 +249,7 @@ void main() { #endif // MODE_ROUGH - final_color = vec4(imageLoad(source_diffuse, ivec2(final_pos - 0.5)).rgb, fade * margin_blend); + final_color = vec4(imageLoad(source_diffuse, ivec2(final_pos - 0.5)).rgb, fade * margin_blend * roughness_fade); // Schlick term. float metallic = texelFetch(source_metallic, ssC << 1, 0).w; diff --git a/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl b/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl index ba31b9c6dd..b30b0c8169 100644 --- a/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl +++ b/servers/rendering/renderer_rd/shaders/scene_forward_lights_inc.glsl @@ -134,7 +134,8 @@ void light_compute(vec3 N, vec3 L, vec3 V, float A, vec3 light_color, float atte #endif #if defined(LIGHT_RIM_USED) - float rim_light = pow(max(0.0, 1.0 - cNdotV), max(0.0, (1.0 - roughness) * 16.0)); + // Epsilon min to prevent pow(0, 0) singularity which results in undefined behavior. + float rim_light = pow(max(1e-4, 1.0 - cNdotV), max(0.0, (1.0 - roughness) * 16.0)); diffuse_light += rim_light * rim * mix(vec3(1.0), albedo, rim_tint) * light_color; #endif diff --git a/servers/rendering/renderer_rd/storage_rd/texture_storage.cpp b/servers/rendering/renderer_rd/storage_rd/texture_storage.cpp index 15c5687665..543eb0cb72 100644 --- a/servers/rendering/renderer_rd/storage_rd/texture_storage.cpp +++ b/servers/rendering/renderer_rd/storage_rd/texture_storage.cpp @@ -3140,13 +3140,13 @@ void TextureStorage::render_target_copy_to_back_buffer(RID p_render_target, cons region.position.y >>= 1; region.size.x = MAX(1, region.size.x >> 1); region.size.y = MAX(1, region.size.y >> 1); + texture_size.x = MAX(1, texture_size.x >> 1); + texture_size.y = MAX(1, texture_size.y >> 1); RID mipmap = rt->backbuffer_mipmaps[i]; if (RendererSceneRenderRD::get_singleton()->_render_buffers_can_be_storage()) { - copy_effects->gaussian_blur(prev_texture, mipmap, region, true); + copy_effects->gaussian_blur(prev_texture, mipmap, region, texture_size, true); } else { - texture_size.x = MAX(1, texture_size.x >> 1); - texture_size.y = MAX(1, texture_size.y >> 1); copy_effects->gaussian_blur_raster(prev_texture, mipmap, region, texture_size); } prev_texture = mipmap; @@ -3179,7 +3179,7 @@ void TextureStorage::render_target_clear_back_buffer(RID p_render_target, const if (RendererSceneRenderRD::get_singleton()->_render_buffers_can_be_storage()) { copy_effects->set_color(rt->backbuffer_mipmap0, p_color, region, true); } else { - copy_effects->set_color(rt->backbuffer_mipmap0, p_color, region, true); + copy_effects->set_color_raster(rt->backbuffer_mipmap0, p_color, region); } } @@ -3213,14 +3213,14 @@ void TextureStorage::render_target_gen_back_buffer_mipmaps(RID p_render_target, region.position.y >>= 1; region.size.x = MAX(1, region.size.x >> 1); region.size.y = MAX(1, region.size.y >> 1); + texture_size.x = MAX(1, texture_size.x >> 1); + texture_size.y = MAX(1, texture_size.y >> 1); RID mipmap = rt->backbuffer_mipmaps[i]; if (RendererSceneRenderRD::get_singleton()->_render_buffers_can_be_storage()) { - copy_effects->gaussian_blur(prev_texture, mipmap, region, true); + copy_effects->gaussian_blur(prev_texture, mipmap, region, texture_size, true); } else { - texture_size.x = MAX(1, texture_size.x >> 1); - texture_size.y = MAX(1, texture_size.y >> 1); copy_effects->gaussian_blur_raster(prev_texture, mipmap, region, texture_size); } prev_texture = mipmap; diff --git a/servers/rendering/renderer_scene_cull.h b/servers/rendering/renderer_scene_cull.h index d085b84a8c..2030af204d 100644 --- a/servers/rendering/renderer_scene_cull.h +++ b/servers/rendering/renderer_scene_cull.h @@ -1173,7 +1173,6 @@ public: PASS1RC(RID, environment_get_glow_map, RID) PASS1(environment_glow_set_use_bicubic_upscale, bool) - PASS1(environment_glow_set_use_high_quality, bool) // SSR PASS6(environment_set_ssr, RID, bool, int, float, float, float) diff --git a/servers/rendering/renderer_scene_render.h b/servers/rendering/renderer_scene_render.h index 2c2d5a5a9e..71f0a78ef3 100644 --- a/servers/rendering/renderer_scene_render.h +++ b/servers/rendering/renderer_scene_render.h @@ -162,7 +162,6 @@ public: RID environment_get_glow_map(RID p_env) const; virtual void environment_glow_set_use_bicubic_upscale(bool p_enable) = 0; - virtual void environment_glow_set_use_high_quality(bool p_enable) = 0; // SSR void environment_set_ssr(RID p_env, bool p_enable, int p_max_steps, float p_fade_int, float p_fade_out, float p_depth_tolerance); diff --git a/servers/rendering/rendering_method.h b/servers/rendering/rendering_method.h index c4d9e25ecd..51b9cb2bcf 100644 --- a/servers/rendering/rendering_method.h +++ b/servers/rendering/rendering_method.h @@ -203,7 +203,6 @@ public: virtual RID environment_get_glow_map(RID p_env) const = 0; virtual void environment_glow_set_use_bicubic_upscale(bool p_enable) = 0; - virtual void environment_glow_set_use_high_quality(bool p_enable) = 0; // SSR diff --git a/servers/rendering/rendering_server_default.h b/servers/rendering/rendering_server_default.h index b77b95bb62..662b582411 100644 --- a/servers/rendering/rendering_server_default.h +++ b/servers/rendering/rendering_server_default.h @@ -698,7 +698,6 @@ public: FUNC13(environment_set_glow, RID, bool, Vector<float>, float, float, float, float, EnvironmentGlowBlendMode, float, float, float, float, RID) FUNC1(environment_glow_set_use_bicubic_upscale, bool) - FUNC1(environment_glow_set_use_high_quality, bool) FUNC4(environment_set_tonemap, RID, EnvironmentToneMapper, float, float) diff --git a/servers/rendering/shader_compiler.cpp b/servers/rendering/shader_compiler.cpp index 7ccf3af6eb..3604756fd8 100644 --- a/servers/rendering/shader_compiler.cpp +++ b/servers/rendering/shader_compiler.cpp @@ -1287,7 +1287,7 @@ String ShaderCompiler::_dump_node_code(const SL::Node *p_node, int p_level, Gene } code += ")"; if (is_screen_texture && actions.apply_luminance_multiplier) { - code = "(" + code + " / vec4(vec3(sc_luminance_multiplier), 1.0))"; + code = "(" + code + " * vec4(vec3(sc_luminance_multiplier), 1.0))"; } } break; case SL::OP_INDEX: { diff --git a/servers/rendering_server.cpp b/servers/rendering_server.cpp index 9551b983fc..8d6d756edc 100644 --- a/servers/rendering_server.cpp +++ b/servers/rendering_server.cpp @@ -2353,7 +2353,6 @@ void RenderingServer::_bind_methods() { ClassDB::bind_method(D_METHOD("environment_set_volumetric_fog", "env", "enable", "density", "albedo", "emission", "emission_energy", "anisotropy", "length", "p_detail_spread", "gi_inject", "temporal_reprojection", "temporal_reprojection_amount", "ambient_inject", "sky_affect"), &RenderingServer::environment_set_volumetric_fog); ClassDB::bind_method(D_METHOD("environment_glow_set_use_bicubic_upscale", "enable"), &RenderingServer::environment_glow_set_use_bicubic_upscale); - ClassDB::bind_method(D_METHOD("environment_glow_set_use_high_quality", "enable"), &RenderingServer::environment_glow_set_use_high_quality); ClassDB::bind_method(D_METHOD("environment_set_ssr_roughness_quality", "quality"), &RenderingServer::environment_set_ssr_roughness_quality); ClassDB::bind_method(D_METHOD("environment_set_ssao_quality", "quality", "half_size", "adaptive_target", "blur_passes", "fadeout_from", "fadeout_to"), &RenderingServer::environment_set_ssao_quality); ClassDB::bind_method(D_METHOD("environment_set_ssil_quality", "quality", "half_size", "adaptive_target", "blur_passes", "fadeout_from", "fadeout_to"), &RenderingServer::environment_set_ssil_quality); @@ -2987,7 +2986,6 @@ void RenderingServer::init() { GLOBAL_DEF("rendering/environment/glow/upscale_mode", 1); ProjectSettings::get_singleton()->set_custom_property_info("rendering/environment/glow/upscale_mode", PropertyInfo(Variant::INT, "rendering/environment/glow/upscale_mode", PROPERTY_HINT_ENUM, "Linear (Fast),Bicubic (Slow)")); GLOBAL_DEF("rendering/environment/glow/upscale_mode.mobile", 0); - GLOBAL_DEF("rendering/environment/glow/use_high_quality", false); GLOBAL_DEF("rendering/environment/screen_space_reflection/roughness_quality", 1); ProjectSettings::get_singleton()->set_custom_property_info("rendering/environment/screen_space_reflection/roughness_quality", PropertyInfo(Variant::INT, "rendering/environment/screen_space_reflection/roughness_quality", PROPERTY_HINT_ENUM, "Disabled (Fastest),Low (Fast),Medium (Average),High (Slow)")); diff --git a/servers/rendering_server.h b/servers/rendering_server.h index 1d364dfcff..1d74bb54b9 100644 --- a/servers/rendering_server.h +++ b/servers/rendering_server.h @@ -1038,7 +1038,6 @@ public: virtual void environment_set_glow(RID p_env, bool p_enable, Vector<float> p_levels, float p_intensity, float p_strength, float p_mix, float p_bloom_threshold, EnvironmentGlowBlendMode p_blend_mode, float p_hdr_bleed_threshold, float p_hdr_bleed_scale, float p_hdr_luminance_cap, float p_glow_map_strength, RID p_glow_map) = 0; virtual void environment_glow_set_use_bicubic_upscale(bool p_enable) = 0; - virtual void environment_glow_set_use_high_quality(bool p_enable) = 0; enum EnvironmentToneMapper { ENV_TONE_MAPPER_LINEAR, diff --git a/tests/scene/test_arraymesh.h b/tests/scene/test_arraymesh.h index fc23adcd06..a11916fbd0 100644 --- a/tests/scene/test_arraymesh.h +++ b/tests/scene/test_arraymesh.h @@ -82,7 +82,9 @@ TEST_CASE("[SceneTree][ArrayMesh] Adding and modifying blendshapes.") { cylinder->create_mesh_array(cylinder_array, 3.f, 3.f, 5.f); mesh->add_surface_from_arrays(Mesh::PRIMITIVE_TRIANGLES, cylinder_array); + ERR_PRINT_OFF mesh->add_blend_shape(name_a); + ERR_PRINT_ON CHECK(mesh->get_blend_shape_count() == 0); } @@ -121,7 +123,9 @@ TEST_CASE("[SceneTree][ArrayMesh] Adding and modifying blendshapes.") { cylinder->create_mesh_array(cylinder_array, 3.f, 3.f, 5.f); mesh->add_surface_from_arrays(Mesh::PRIMITIVE_TRIANGLES, cylinder_array); + ERR_PRINT_OFF mesh->clear_blend_shapes(); + ERR_PRINT_ON CHECK(mesh->get_blend_shape_count() == 2); } diff --git a/tests/scene/test_bit_map.h b/tests/scene/test_bit_map.h index dc47bd7863..a8ee7505ec 100644 --- a/tests/scene/test_bit_map.h +++ b/tests/scene/test_bit_map.h @@ -49,6 +49,8 @@ TEST_CASE("[BitMap] Create bit map") { CHECK(bit_map.get_size() == Size2i(256, 512)); CHECK_MESSAGE(bit_map.get_true_bit_count() == 0, "This will go through the entire bitmask inside of bitmap, thus hopefully checking if the bitmask was correctly set up."); + ERR_PRINT_OFF + dim = Size2i(0, 256); bit_map.create(dim); CHECK_MESSAGE(bit_map.get_size() == Size2i(256, 512), "We should still have the same dimensions as before, because the new dimension is invalid."); @@ -60,6 +62,8 @@ TEST_CASE("[BitMap] Create bit map") { dim = Size2i(46341, 46341); bit_map.create(dim); CHECK_MESSAGE(bit_map.get_size() == Size2i(256, 512), "We should still have the same dimensions as before, because the new dimension is too large (46341*46341=2147488281)."); + + ERR_PRINT_ON } TEST_CASE("[BitMap] Create bit map from image alpha") { @@ -67,6 +71,8 @@ TEST_CASE("[BitMap] Create bit map from image alpha") { BitMap bit_map{}; bit_map.create(dim); + ERR_PRINT_OFF + const Ref<Image> null_img = nullptr; bit_map.create_from_image_alpha(null_img); CHECK_MESSAGE(bit_map.get_size() == Size2i(256, 256), "Bitmap should have its old values because bitmap creation from a nullptr should fail."); @@ -80,6 +86,8 @@ TEST_CASE("[BitMap] Create bit map from image alpha") { bit_map.create_from_image_alpha(wrong_format_img); CHECK_MESSAGE(bit_map.get_size() == Size2i(256, 256), "Bitmap should have its old values because converting from a compressed image should fail."); + ERR_PRINT_ON + Ref<Image> img = Image::create_empty(3, 3, false, Image::Format::FORMAT_RGBA8); img->set_pixel(0, 0, Color(0, 0, 0, 0)); img->set_pixel(0, 1, Color(0, 0, 0, 0.09f)); @@ -105,6 +113,8 @@ TEST_CASE("[BitMap] Set bit") { BitMap bit_map{}; // Setting a point before a bit map is created should not crash, because there are checks to see if we are out of bounds. + ERR_PRINT_OFF + bit_map.set_bitv(Point2i(128, 128), true); bit_map.create(dim); @@ -120,12 +130,16 @@ TEST_CASE("[BitMap] Set bit") { bit_map.create(dim); bit_map.set_bitv(Point2i(512, 512), true); CHECK_MESSAGE(bit_map.get_true_bit_count() == 0, "Nothing should change as we were trying to edit a bit outside of the correct range."); + + ERR_PRINT_ON } TEST_CASE("[BitMap] Get bit") { const Size2i dim{ 256, 256 }; BitMap bit_map{}; + ERR_PRINT_OFF + CHECK_MESSAGE(bit_map.get_bitv(Point2i(128, 128)) == false, "Trying to access a bit outside of the BitMap's range should always return false"); bit_map.create(dim); @@ -140,6 +154,8 @@ TEST_CASE("[BitMap] Get bit") { CHECK(bit_map.get_bitv(Point2i(255, 255)) == true); CHECK(bit_map.get_bitv(Point2i(256, 256)) == false); CHECK(bit_map.get_bitv(Point2i(257, 257)) == false); + + ERR_PRINT_ON } TEST_CASE("[BitMap] Set bit rect") { @@ -158,6 +174,9 @@ TEST_CASE("[BitMap] Set bit rect") { reset_bit_map(bit_map); // Checking out of bounds handling. + + ERR_PRINT_OFF + bit_map.set_bit_rect(Rect2i{ 128, 128, 256, 256 }, true); CHECK(bit_map.get_true_bit_count() == 16384); @@ -170,6 +189,8 @@ TEST_CASE("[BitMap] Set bit rect") { bit_map.set_bit_rect(Rect2i{ -128, -128, 512, 512 }, true); CHECK(bit_map.get_true_bit_count() == 65536); + + ERR_PRINT_ON } TEST_CASE("[BitMap] Get true bit count") { @@ -197,7 +218,9 @@ TEST_CASE("[BitMap] Get size") { bit_map.create(dim); CHECK(bit_map.get_size() == Size2i(256, 256)); + ERR_PRINT_OFF bit_map.create(Size2i(-1, 0)); + ERR_PRINT_ON CHECK_MESSAGE(bit_map.get_size() == Size2i(256, 256), "Invalid size should not be accepted by create"); bit_map.create(Size2i(256, 128)); @@ -219,7 +242,9 @@ TEST_CASE("[BitMap] Resize") { CHECK_MESSAGE(bit_map.get_true_bit_count() == 50, "There should be 25 bits in the top left corner, and 25 bits in the bottom right corner"); bit_map.create(dim); + ERR_PRINT_OFF bit_map.resize(Size2i(-1, 128)); + ERR_PRINT_ON CHECK_MESSAGE(bit_map.get_size() == Size2i(128, 128), "When an invalid size is given the bit map will keep its size"); bit_map.create(dim); @@ -234,7 +259,9 @@ TEST_CASE("[BitMap] Resize") { TEST_CASE("[BitMap] Grow and shrink mask") { const Size2i dim{ 256, 256 }; BitMap bit_map{}; + ERR_PRINT_OFF bit_map.grow_mask(100, Rect2i(0, 0, 128, 128)); // Check if method does not crash when working with an uninitialized bit map. + ERR_PRINT_ON CHECK_MESSAGE(bit_map.get_size() == Size2i(0, 0), "Size should still be equal to 0x0"); bit_map.create(dim); @@ -331,7 +358,9 @@ TEST_CASE("[BitMap] Blit") { Ref<BitMap> blit_bit_map{}; // Testing null reference to blit bit map. + ERR_PRINT_OFF bit_map.blit(blit_pos, blit_bit_map); + ERR_PRINT_ON blit_bit_map.instantiate(); @@ -378,7 +407,9 @@ TEST_CASE("[BitMap] Convert to image") { BitMap bit_map{}; Ref<Image> img; + ERR_PRINT_OFF img = bit_map.convert_to_image(); + ERR_PRINT_ON CHECK_MESSAGE(img.is_valid(), "We should receive a valid Image Object even if BitMap is not created yet"); CHECK_MESSAGE(img->get_format() == Image::FORMAT_L8, "We should receive a valid Image Object even if BitMap is not created yet"); CHECK_MESSAGE(img->get_size() == (Size2i(0, 0)), "Image should have no width or height, because BitMap has not yet been created"); @@ -392,7 +423,7 @@ TEST_CASE("[BitMap] Convert to image") { bit_map.set_bit_rect(Rect2i(0, 0, 128, 128), true); img = bit_map.convert_to_image(); CHECK_MESSAGE(img->get_pixel(0, 0).is_equal_approx(Color(1, 1, 1)), "BitMap's top-left quadrant is all 1's, so Image should be white"); - CHECK_MESSAGE(img->get_pixel(256, 256).is_equal_approx(Color(0, 0, 0)), "All other quadrants were 0's, so these should be black"); + CHECK_MESSAGE(img->get_pixel(255, 255).is_equal_approx(Color(0, 0, 0)), "All other quadrants were 0's, so these should be black"); } TEST_CASE("[BitMap] Clip to polygon") { @@ -400,7 +431,9 @@ TEST_CASE("[BitMap] Clip to polygon") { BitMap bit_map{}; Vector<Vector<Vector2>> polygons; + ERR_PRINT_OFF polygons = bit_map.clip_opaque_to_polygons(Rect2i(0, 0, 128, 128)); + ERR_PRINT_ON CHECK_MESSAGE(polygons.size() == 0, "We should have no polygons, because the BitMap was not initialized"); bit_map.create(dim); diff --git a/tests/scene/test_curve.h b/tests/scene/test_curve.h index 4afd5b293f..4f95568b4a 100644 --- a/tests/scene/test_curve.h +++ b/tests/scene/test_curve.h @@ -240,8 +240,9 @@ TEST_CASE("[Curve3D] Linear sampling should return exact value") { curve->add_point(Vector3(0, 0, 0)); curve->add_point(Vector3(len, 0, 0)); - + ERR_PRINT_OFF real_t baked_length = curve->get_baked_length(); + ERR_PRINT_ON CHECK(len == baked_length); for (int i = 0; i < len; i++) { diff --git a/thirdparty/README.md b/thirdparty/README.md index ed38fe0ec8..717cc835b0 100644 --- a/thirdparty/README.md +++ b/thirdparty/README.md @@ -217,8 +217,8 @@ Files extracted from upstream source: ## graphite - Upstream: https://github.com/silnrsi/graphite -- Version: 1.3.14 (80c52493ef42e6fe605a69dcddd2a691cd8a1380, 2021) -- License: MPL-2.0 +- Version: 1.3.14 (27572742003b93dc53dc02c01c237b72c6c25f54, 2022) +- License: MIT Files extracted from upstream source: @@ -548,7 +548,7 @@ Patch files are provided in `oidn/patches/`. ## openxr - Upstream: https://github.com/KhronosGroup/OpenXR-SDK -- Version: 1.0.25 (c16a18c99740ea5dd251e3af117e0e5aea4ceaa9, 2022) +- Version: 1.0.26 (e2da9ce83a4388c9622da328bf48548471261290, 2022) - License: Apache 2.0 Files extracted from upstream source: diff --git a/thirdparty/graphite/include/graphite2/Font.h b/thirdparty/graphite/include/graphite2/Font.h index fe569295a5..b0a1e36370 100644 --- a/thirdparty/graphite/include/graphite2/Font.h +++ b/thirdparty/graphite/include/graphite2/Font.h @@ -1,29 +1,5 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - - Alternatively, the contents of this file may be used under the terms - of the Mozilla Public License (http://mozilla.org/MPL) or the GNU - General Public License, as published by the Free Software Foundation, - either version 2 of the License or (at your option) any later version. -*/ +/* SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later */ +/* Copyright 2010, SIL International, All rights reserved. */ #pragma once #include "graphite2/Types.h" diff --git a/thirdparty/graphite/include/graphite2/Log.h b/thirdparty/graphite/include/graphite2/Log.h index a5a6947fab..d83b1b90e7 100644 --- a/thirdparty/graphite/include/graphite2/Log.h +++ b/thirdparty/graphite/include/graphite2/Log.h @@ -1,29 +1,5 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - - Alternatively, the contents of this file may be used under the terms - of the Mozilla Public License (http://mozilla.org/MPL) or the GNU - General Public License, as published by the Free Software Foundation, - either version 2 of the License or (at your option) any later version. -*/ +/* SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later */ +/* Copyright 2010, SIL International, All rights reserved. */ #pragma once #include <graphite2/Types.h> diff --git a/thirdparty/graphite/include/graphite2/Segment.h b/thirdparty/graphite/include/graphite2/Segment.h index 0e24f5d795..9969b4eb45 100644 --- a/thirdparty/graphite/include/graphite2/Segment.h +++ b/thirdparty/graphite/include/graphite2/Segment.h @@ -1,29 +1,5 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - - Alternatively, the contents of this file may be used under the terms - of the Mozilla Public License (http://mozilla.org/MPL) or the GNU - General Public License, as published by the Free Software Foundation, - either version 2 of the License or (at your option) any later version. -*/ +/* SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later */ +/* Copyright 2010, SIL International, All rights reserved. */ #pragma once #include "graphite2/Types.h" diff --git a/thirdparty/graphite/include/graphite2/Types.h b/thirdparty/graphite/include/graphite2/Types.h index 916c91191b..32236a6195 100644 --- a/thirdparty/graphite/include/graphite2/Types.h +++ b/thirdparty/graphite/include/graphite2/Types.h @@ -1,29 +1,5 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - - Alternatively, the contents of this file may be used under the terms - of the Mozilla Public License (http://mozilla.org/MPL) or the GNU - General Public License, as published by the Free Software Foundation, - either version 2 of the License or (at your option) any later version. -*/ +/* SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later */ +/* Copyright 2010, SIL International, All rights reserved. */ #pragma once #include <stddef.h> diff --git a/thirdparty/graphite/src/CmapCache.cpp b/thirdparty/graphite/src/CmapCache.cpp index d070019a34..ac860e9ee2 100644 --- a/thirdparty/graphite/src/CmapCache.cpp +++ b/thirdparty/graphite/src/CmapCache.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #include "inc/Main.h" #include "inc/CmapCache.h" diff --git a/thirdparty/graphite/src/Code.cpp b/thirdparty/graphite/src/Code.cpp index ec5ab298ca..4a53ae871b 100644 --- a/thirdparty/graphite/src/Code.cpp +++ b/thirdparty/graphite/src/Code.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + // This class represents loaded graphite stack machine code. It performs // basic sanity checks, on the incoming code to prevent more obvious problems // from crashing graphite. diff --git a/thirdparty/graphite/src/Collider.cpp b/thirdparty/graphite/src/Collider.cpp index 1929b39a58..ca36d4550a 100644 --- a/thirdparty/graphite/src/Collider.cpp +++ b/thirdparty/graphite/src/Collider.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #include <algorithm> #include <limits> #include <cmath> diff --git a/thirdparty/graphite/src/Decompressor.cpp b/thirdparty/graphite/src/Decompressor.cpp index 42dc9113e5..f9f1e28e5b 100644 --- a/thirdparty/graphite/src/Decompressor.cpp +++ b/thirdparty/graphite/src/Decompressor.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2015, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2015, SIL International, All rights reserved. + #include <cassert> #include "inc/Decompressor.h" diff --git a/thirdparty/graphite/src/Face.cpp b/thirdparty/graphite/src/Face.cpp index 3e106050d7..4dd5a780cf 100644 --- a/thirdparty/graphite/src/Face.cpp +++ b/thirdparty/graphite/src/Face.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #include <cstring> #include "graphite2/Segment.h" #include "inc/CmapCache.h" diff --git a/thirdparty/graphite/src/FeatureMap.cpp b/thirdparty/graphite/src/FeatureMap.cpp index 014a88fd08..992be05540 100644 --- a/thirdparty/graphite/src/FeatureMap.cpp +++ b/thirdparty/graphite/src/FeatureMap.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #include <cstring> #include "inc/Main.h" diff --git a/thirdparty/graphite/src/FileFace.cpp b/thirdparty/graphite/src/FileFace.cpp index 7e663876a7..2e41044688 100644 --- a/thirdparty/graphite/src/FileFace.cpp +++ b/thirdparty/graphite/src/FileFace.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2012, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2012, SIL International, All rights reserved. + #include <cstring> #include "inc/FileFace.h" diff --git a/thirdparty/graphite/src/Font.cpp b/thirdparty/graphite/src/Font.cpp index faf3715f9d..bffb4223d5 100644 --- a/thirdparty/graphite/src/Font.cpp +++ b/thirdparty/graphite/src/Font.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #include "inc/Face.h" #include "inc/Font.h" #include "inc/GlyphCache.h" diff --git a/thirdparty/graphite/src/GlyphCache.cpp b/thirdparty/graphite/src/GlyphCache.cpp index 282bdc18fd..30479bdc4d 100644 --- a/thirdparty/graphite/src/GlyphCache.cpp +++ b/thirdparty/graphite/src/GlyphCache.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2012, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2012, SIL International, All rights reserved. + #include "graphite2/Font.h" #include "inc/Main.h" @@ -44,12 +21,18 @@ namespace // variable length structures. template<typename W> - class _glat_iterator : public std::iterator<std::input_iterator_tag, std::pair<sparse::key_type, sparse::mapped_type> > + class _glat_iterator { unsigned short key() const { return uint16(be::peek<W>(_e) + _n); } unsigned int run() const { return be::peek<W>(_e+sizeof(W)); } void advance_entry() { _n = 0; _e = _v; be::skip<W>(_v,2); } public: + using iterator_category = std::input_iterator_tag; + using value_type = std::pair<sparse::key_type, sparse::mapped_type>; + using difference_type = ptrdiff_t; + using pointer = value_type *; + using reference = value_type &; + _glat_iterator(const void * glat=0) : _e(reinterpret_cast<const byte *>(glat)), _v(_e+2*sizeof(W)), _n(0) {} _glat_iterator<W> & operator ++ () { diff --git a/thirdparty/graphite/src/GlyphFace.cpp b/thirdparty/graphite/src/GlyphFace.cpp index bc5e63a9f0..d9408f556b 100644 --- a/thirdparty/graphite/src/GlyphFace.cpp +++ b/thirdparty/graphite/src/GlyphFace.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #include "inc/GlyphFace.h" diff --git a/thirdparty/graphite/src/Intervals.cpp b/thirdparty/graphite/src/Intervals.cpp index 0fe99a127a..b223a67f56 100644 --- a/thirdparty/graphite/src/Intervals.cpp +++ b/thirdparty/graphite/src/Intervals.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #include <algorithm> #include <cmath> #include <limits> diff --git a/thirdparty/graphite/src/Justifier.cpp b/thirdparty/graphite/src/Justifier.cpp index 78c11e6a51..0bb18225b9 100644 --- a/thirdparty/graphite/src/Justifier.cpp +++ b/thirdparty/graphite/src/Justifier.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2012, SIL International, All rights reserved. - Copyright 2012, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #include "inc/Segment.h" #include "graphite2/Font.h" diff --git a/thirdparty/graphite/src/NameTable.cpp b/thirdparty/graphite/src/NameTable.cpp index d42b7f95bd..85892f179c 100644 --- a/thirdparty/graphite/src/NameTable.cpp +++ b/thirdparty/graphite/src/NameTable.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #include "inc/Main.h" #include "inc/Endian.h" diff --git a/thirdparty/graphite/src/Pass.cpp b/thirdparty/graphite/src/Pass.cpp index 47ae2064f7..986fed83b1 100644 --- a/thirdparty/graphite/src/Pass.cpp +++ b/thirdparty/graphite/src/Pass.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #include "inc/Main.h" #include "inc/debug.h" #include "inc/Endian.h" @@ -194,7 +171,7 @@ bool Pass::readPass(const byte * const pass_start, size_t pass_length, size_t su m_cPConstraint = vm::Machine::Code(true, pcCode, pcCode + pass_constraint_len, precontext[0], be::peek<uint16>(sort_keys), *m_silf, face, PASS_TYPE_UNKNOWN); if (e.test(!m_cPConstraint, E_OUTOFMEM) - || e.test(m_cPConstraint.status() != Code::loaded, m_cPConstraint.status() + E_CODEFAILURE)) + || e.test(m_cPConstraint.status() != Code::loaded, int(m_cPConstraint.status()) + E_CODEFAILURE)) return face.error(e); face.error_context(face.error_context() - 1); } @@ -266,8 +243,8 @@ bool Pass::readRules(const byte * rule_map, const size_t num_entries, r->constraint = new (m_codes+n*2-1) vm::Machine::Code(true, rc_begin, rc_end, r->preContext, r->sort, *m_silf, face, pt, &prog_pool_free); if (e.test(!r->action || !r->constraint, E_OUTOFMEM) - || e.test(r->action->status() != Code::loaded, r->action->status() + E_CODEFAILURE) - || e.test(r->constraint->status() != Code::loaded, r->constraint->status() + E_CODEFAILURE) + || e.test(r->action->status() != Code::loaded, int(r->action->status()) + E_CODEFAILURE) + || e.test(r->constraint->status() != Code::loaded, int(r->constraint->status()) + E_CODEFAILURE) || e.test(!r->constraint->immutable(), E_MUTABLECCODE)) return face.error(e); } diff --git a/thirdparty/graphite/src/Position.cpp b/thirdparty/graphite/src/Position.cpp index d2fdbd4e7c..a727f61664 100644 --- a/thirdparty/graphite/src/Position.cpp +++ b/thirdparty/graphite/src/Position.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #include "inc/Position.h" #include <cmath> diff --git a/thirdparty/graphite/src/Segment.cpp b/thirdparty/graphite/src/Segment.cpp index 62edd4250f..7bb3d132fa 100644 --- a/thirdparty/graphite/src/Segment.cpp +++ b/thirdparty/graphite/src/Segment.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #include "inc/UtfCodec.h" #include <cstring> #include <cstdlib> diff --git a/thirdparty/graphite/src/Silf.cpp b/thirdparty/graphite/src/Silf.cpp index 44d3c96171..51a7473627 100644 --- a/thirdparty/graphite/src/Silf.cpp +++ b/thirdparty/graphite/src/Silf.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #include <cstdlib> #include "graphite2/Segment.h" #include "inc/debug.h" diff --git a/thirdparty/graphite/src/Slot.cpp b/thirdparty/graphite/src/Slot.cpp index 0fdb098952..040e90d109 100644 --- a/thirdparty/graphite/src/Slot.cpp +++ b/thirdparty/graphite/src/Slot.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #include "inc/Segment.h" #include "inc/Slot.h" #include "inc/Silf.h" diff --git a/thirdparty/graphite/src/Sparse.cpp b/thirdparty/graphite/src/Sparse.cpp index aa43113669..746dfc9522 100644 --- a/thirdparty/graphite/src/Sparse.cpp +++ b/thirdparty/graphite/src/Sparse.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2011, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2011, SIL International, All rights reserved. + #include <cassert> #include "inc/Sparse.h" #include "inc/bits.h" diff --git a/thirdparty/graphite/src/TtfUtil.cpp b/thirdparty/graphite/src/TtfUtil.cpp index 2eb46a11fb..47940112ee 100644 --- a/thirdparty/graphite/src/TtfUtil.cpp +++ b/thirdparty/graphite/src/TtfUtil.cpp @@ -1,39 +1,14 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ -/*--------------------------------------------------------------------*//*:Ignore this sentence. +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. -File: TtfUtil.cpp +/* Responsibility: Alan Ward Last reviewed: Not yet. Description Implements the methods for TtfUtil class. This file should remain portable to any C++ environment by only using standard C++ and the TTF structurs defined in Tt.h. --------------------------------------------------------------------------------*//*:End Ignore*/ +*/ /*********************************************************************************************** diff --git a/thirdparty/graphite/src/UtfCodec.cpp b/thirdparty/graphite/src/UtfCodec.cpp index a944bbf9d0..9156bad00f 100644 --- a/thirdparty/graphite/src/UtfCodec.cpp +++ b/thirdparty/graphite/src/UtfCodec.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #include "inc/UtfCodec.h" //using namespace graphite2; diff --git a/thirdparty/graphite/src/call_machine.cpp b/thirdparty/graphite/src/call_machine.cpp index fcd8a0c2c1..7d9d1ef315 100644 --- a/thirdparty/graphite/src/call_machine.cpp +++ b/thirdparty/graphite/src/call_machine.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + // This call threaded interpreter implmentation for machine.h // Author: Tim Eves diff --git a/thirdparty/graphite/src/direct_machine.cpp b/thirdparty/graphite/src/direct_machine.cpp index 86206cfe37..e3a28fa536 100644 --- a/thirdparty/graphite/src/direct_machine.cpp +++ b/thirdparty/graphite/src/direct_machine.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + // This direct threaded interpreter implmentation for machine.h // Author: Tim Eves diff --git a/thirdparty/graphite/src/gr_char_info.cpp b/thirdparty/graphite/src/gr_char_info.cpp index 612f9ba694..1345fae847 100644 --- a/thirdparty/graphite/src/gr_char_info.cpp +++ b/thirdparty/graphite/src/gr_char_info.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #include <cassert> #include "graphite2/Segment.h" #include "inc/CharInfo.h" diff --git a/thirdparty/graphite/src/gr_face.cpp b/thirdparty/graphite/src/gr_face.cpp index baa469727b..6e80036113 100644 --- a/thirdparty/graphite/src/gr_face.cpp +++ b/thirdparty/graphite/src/gr_face.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #include "graphite2/Font.h" #include "inc/Face.h" #include "inc/FileFace.h" diff --git a/thirdparty/graphite/src/gr_features.cpp b/thirdparty/graphite/src/gr_features.cpp index a560e053f2..67208f14e6 100644 --- a/thirdparty/graphite/src/gr_features.cpp +++ b/thirdparty/graphite/src/gr_features.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #include "graphite2/Font.h" #include "inc/Face.h" #include "inc/FeatureMap.h" diff --git a/thirdparty/graphite/src/gr_font.cpp b/thirdparty/graphite/src/gr_font.cpp index 724cc83c13..fc85112e24 100644 --- a/thirdparty/graphite/src/gr_font.cpp +++ b/thirdparty/graphite/src/gr_font.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #include "graphite2/Font.h" #include "inc/Font.h" diff --git a/thirdparty/graphite/src/gr_logging.cpp b/thirdparty/graphite/src/gr_logging.cpp index 8f1e675e62..c6f03fd616 100644 --- a/thirdparty/graphite/src/gr_logging.cpp +++ b/thirdparty/graphite/src/gr_logging.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #include <cstdio> #include "graphite2/Log.h" diff --git a/thirdparty/graphite/src/gr_segment.cpp b/thirdparty/graphite/src/gr_segment.cpp index 7a27e9c562..7592296c04 100644 --- a/thirdparty/graphite/src/gr_segment.cpp +++ b/thirdparty/graphite/src/gr_segment.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #include "graphite2/Segment.h" #include "inc/UtfCodec.h" #include "inc/Segment.h" diff --git a/thirdparty/graphite/src/gr_slot.cpp b/thirdparty/graphite/src/gr_slot.cpp index a3c6b46a7f..a6adefec61 100644 --- a/thirdparty/graphite/src/gr_slot.cpp +++ b/thirdparty/graphite/src/gr_slot.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #include "graphite2/Segment.h" #include "inc/Segment.h" #include "inc/Slot.h" diff --git a/thirdparty/graphite/src/inc/CharInfo.h b/thirdparty/graphite/src/inc/CharInfo.h index 01e7e31ac9..0fbfefda4d 100644 --- a/thirdparty/graphite/src/inc/CharInfo.h +++ b/thirdparty/graphite/src/inc/CharInfo.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #pragma once #include "inc/Main.h" diff --git a/thirdparty/graphite/src/inc/CmapCache.h b/thirdparty/graphite/src/inc/CmapCache.h index 7820c958b0..b18ce2929b 100644 --- a/thirdparty/graphite/src/inc/CmapCache.h +++ b/thirdparty/graphite/src/inc/CmapCache.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #pragma once #include "inc/Main.h" diff --git a/thirdparty/graphite/src/inc/Code.h b/thirdparty/graphite/src/inc/Code.h index 3cee67c81d..24e92e429d 100644 --- a/thirdparty/graphite/src/inc/Code.h +++ b/thirdparty/graphite/src/inc/Code.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + // This class represents loaded graphite stack machine code. It performs // basic sanity checks, on the incoming code to prevent more obvious problems // from crashing graphite. diff --git a/thirdparty/graphite/src/inc/Collider.h b/thirdparty/graphite/src/inc/Collider.h index 71e8400501..3a922660d4 100644 --- a/thirdparty/graphite/src/inc/Collider.h +++ b/thirdparty/graphite/src/inc/Collider.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #pragma once #include "inc/List.h" diff --git a/thirdparty/graphite/src/inc/Compression.h b/thirdparty/graphite/src/inc/Compression.h index 9fe10e025d..4f5193b931 100644 --- a/thirdparty/graphite/src/inc/Compression.h +++ b/thirdparty/graphite/src/inc/Compression.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2015, SIL International, All rights reserved. - Copyright 2015, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #pragma once diff --git a/thirdparty/graphite/src/inc/Decompressor.h b/thirdparty/graphite/src/inc/Decompressor.h index 10f21b7af1..1113e004c1 100644 --- a/thirdparty/graphite/src/inc/Decompressor.h +++ b/thirdparty/graphite/src/inc/Decompressor.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2015, SIL International, All rights reserved. - Copyright 2015, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #pragma once diff --git a/thirdparty/graphite/src/inc/Endian.h b/thirdparty/graphite/src/inc/Endian.h index 56ecfd8667..7bd201f92b 100644 --- a/thirdparty/graphite/src/inc/Endian.h +++ b/thirdparty/graphite/src/inc/Endian.h @@ -1,30 +1,5 @@ -/* GRAPHITE2 LICENSING - - Copyright 2011, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ - +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2011, SIL International, All rights reserved. /* Description: A set of fast template based decoders for decoding values of any C integer diff --git a/thirdparty/graphite/src/inc/Error.h b/thirdparty/graphite/src/inc/Error.h index 2b7ab763a2..7e14c8e754 100644 --- a/thirdparty/graphite/src/inc/Error.h +++ b/thirdparty/graphite/src/inc/Error.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2013, SIL International, All rights reserved. - Copyright 2013, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #pragma once // numbers are explicitly assigned for future proofing @@ -38,7 +15,7 @@ public: operator bool() { return (_e != 0); } int error() { return _e; } void error(int e) { _e = e; } - bool test(bool pr, int err) { return (_e = int(pr) * err); } + bool test(bool pr, int err) { return (_e = pr ? err : 0); } private: int _e; @@ -56,7 +33,7 @@ enum errcontext { EC_ARULEMAP = 9 // in Silf %d, pass %d, state %d }; -enum errors { +enum error { E_OUTOFMEM = 1, // Out of memory E_NOGLYPHS = 2, // There are no glyphs in the font E_BADUPEM = 3, // The units per em for the font is bad (0) @@ -125,7 +102,7 @@ enum errors { E_BADJUMPCODE = 65, // Code jumps past end of op codes E_CODEBADARGS = 66, // Code arguments exhausted E_CODENORETURN = 67, // Missing return type op code at end of code - E_CODENESTEDCTXT = 68, // Nested context encountered in code + E_CODENESTEDCTXT = 68, // Nested context encountered in code // Compression errors E_BADSCHEME = 69, E_SHRINKERFAILED = 70, diff --git a/thirdparty/graphite/src/inc/Face.h b/thirdparty/graphite/src/inc/Face.h index 355c5aa0d3..fac7fd4b8e 100644 --- a/thirdparty/graphite/src/inc/Face.h +++ b/thirdparty/graphite/src/inc/Face.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #pragma once #include <cstdio> diff --git a/thirdparty/graphite/src/inc/FeatureMap.h b/thirdparty/graphite/src/inc/FeatureMap.h index 0f05e941a2..a98008f738 100644 --- a/thirdparty/graphite/src/inc/FeatureMap.h +++ b/thirdparty/graphite/src/inc/FeatureMap.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #pragma once #include "inc/Main.h" #include "inc/FeatureVal.h" diff --git a/thirdparty/graphite/src/inc/FeatureVal.h b/thirdparty/graphite/src/inc/FeatureVal.h index cd3f93b2b5..35397f0f3b 100644 --- a/thirdparty/graphite/src/inc/FeatureVal.h +++ b/thirdparty/graphite/src/inc/FeatureVal.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #pragma once #include <cstring> #include <cassert> diff --git a/thirdparty/graphite/src/inc/FileFace.h b/thirdparty/graphite/src/inc/FileFace.h index 35927847f8..521942ee85 100644 --- a/thirdparty/graphite/src/inc/FileFace.h +++ b/thirdparty/graphite/src/inc/FileFace.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2012, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2012, SIL International, All rights reserved. + #pragma once //#include "inc/FeatureMap.h" diff --git a/thirdparty/graphite/src/inc/Font.h b/thirdparty/graphite/src/inc/Font.h index 9bc9ffb510..537ad9de0e 100644 --- a/thirdparty/graphite/src/inc/Font.h +++ b/thirdparty/graphite/src/inc/Font.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #pragma once #include <cassert> #include "graphite2/Font.h" diff --git a/thirdparty/graphite/src/inc/GlyphCache.h b/thirdparty/graphite/src/inc/GlyphCache.h index 7d5324e522..5f6d3eea18 100644 --- a/thirdparty/graphite/src/inc/GlyphCache.h +++ b/thirdparty/graphite/src/inc/GlyphCache.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2012, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2012, SIL International, All rights reserved. + #pragma once diff --git a/thirdparty/graphite/src/inc/GlyphFace.h b/thirdparty/graphite/src/inc/GlyphFace.h index fc29056146..f964c0581a 100644 --- a/thirdparty/graphite/src/inc/GlyphFace.h +++ b/thirdparty/graphite/src/inc/GlyphFace.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #pragma once #include "inc/Main.h" diff --git a/thirdparty/graphite/src/inc/Intervals.h b/thirdparty/graphite/src/inc/Intervals.h index 81d23187b6..15427d428a 100644 --- a/thirdparty/graphite/src/inc/Intervals.h +++ b/thirdparty/graphite/src/inc/Intervals.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #pragma once #include <utility> diff --git a/thirdparty/graphite/src/inc/List.h b/thirdparty/graphite/src/inc/List.h index a3b7a77961..3a36c17a7a 100644 --- a/thirdparty/graphite/src/inc/List.h +++ b/thirdparty/graphite/src/inc/List.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + // designed to have a limited subset of the std::vector api #pragma once diff --git a/thirdparty/graphite/src/inc/Machine.h b/thirdparty/graphite/src/inc/Machine.h index b23819fb98..5ceedc296d 100644 --- a/thirdparty/graphite/src/inc/Machine.h +++ b/thirdparty/graphite/src/inc/Machine.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + // This general interpreter interface. // Author: Tim Eves diff --git a/thirdparty/graphite/src/inc/Main.h b/thirdparty/graphite/src/inc/Main.h index ebf02dd553..6a412efeca 100644 --- a/thirdparty/graphite/src/inc/Main.h +++ b/thirdparty/graphite/src/inc/Main.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #pragma once #include <cstdlib> diff --git a/thirdparty/graphite/src/inc/NameTable.h b/thirdparty/graphite/src/inc/NameTable.h index 0fdbeb4d85..5a7913ddc5 100644 --- a/thirdparty/graphite/src/inc/NameTable.h +++ b/thirdparty/graphite/src/inc/NameTable.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #pragma once #include <graphite2/Segment.h> diff --git a/thirdparty/graphite/src/inc/Pass.h b/thirdparty/graphite/src/inc/Pass.h index e687a87d8c..fb507e6a04 100644 --- a/thirdparty/graphite/src/inc/Pass.h +++ b/thirdparty/graphite/src/inc/Pass.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #pragma once #include <cstdlib> diff --git a/thirdparty/graphite/src/inc/Position.h b/thirdparty/graphite/src/inc/Position.h index 510e4f4c41..554acc411e 100644 --- a/thirdparty/graphite/src/inc/Position.h +++ b/thirdparty/graphite/src/inc/Position.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #pragma once namespace graphite2 { diff --git a/thirdparty/graphite/src/inc/Rule.h b/thirdparty/graphite/src/inc/Rule.h index 5964e003a6..09025dc799 100644 --- a/thirdparty/graphite/src/inc/Rule.h +++ b/thirdparty/graphite/src/inc/Rule.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2011, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2011, SIL International, All rights reserved. + #pragma once diff --git a/thirdparty/graphite/src/inc/Segment.h b/thirdparty/graphite/src/inc/Segment.h index 6cf83408d4..a3a8eef648 100644 --- a/thirdparty/graphite/src/inc/Segment.h +++ b/thirdparty/graphite/src/inc/Segment.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #pragma once #include "inc/Main.h" diff --git a/thirdparty/graphite/src/inc/Silf.h b/thirdparty/graphite/src/inc/Silf.h index edc0c3a16d..6fe2aaef1f 100644 --- a/thirdparty/graphite/src/inc/Silf.h +++ b/thirdparty/graphite/src/inc/Silf.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #pragma once #include "graphite2/Font.h" diff --git a/thirdparty/graphite/src/inc/Slot.h b/thirdparty/graphite/src/inc/Slot.h index df39d9a3bb..0d8571d336 100644 --- a/thirdparty/graphite/src/inc/Slot.h +++ b/thirdparty/graphite/src/inc/Slot.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #pragma once #include "graphite2/Types.h" diff --git a/thirdparty/graphite/src/inc/Sparse.h b/thirdparty/graphite/src/inc/Sparse.h index fcda890171..3c5d33ae5d 100644 --- a/thirdparty/graphite/src/inc/Sparse.h +++ b/thirdparty/graphite/src/inc/Sparse.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2011, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2011, SIL International, All rights reserved. + #pragma once #include <iterator> #include <utility> diff --git a/thirdparty/graphite/src/inc/TtfTypes.h b/thirdparty/graphite/src/inc/TtfTypes.h index ae67915304..e4fd49f943 100644 --- a/thirdparty/graphite/src/inc/TtfTypes.h +++ b/thirdparty/graphite/src/inc/TtfTypes.h @@ -1,39 +1,14 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ -#pragma once -/*--------------------------------------------------------------------*//*:Ignore this sentence. +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. -File: TtfTypes.h +#pragma once +/* Responsibility: Tim Eves Last reviewed: Not yet. Description: Provides types required to represent the TTF basic types. --------------------------------------------------------------------------------*//*:End Ignore*/ +*/ //********************************************************************************************** diff --git a/thirdparty/graphite/src/inc/TtfUtil.h b/thirdparty/graphite/src/inc/TtfUtil.h index 3952bc06fb..1ccab42fb8 100644 --- a/thirdparty/graphite/src/inc/TtfUtil.h +++ b/thirdparty/graphite/src/inc/TtfUtil.h @@ -1,39 +1,13 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ -#pragma once -/*--------------------------------------------------------------------*//*:Ignore this sentence. - -File: TtfUtil.h +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. +/* Responsibility: Alan Ward Last reviewed: Not yet. Description: Utility class for handling TrueType font files. -----------------------------------------------------------------------------------------------*/ +*/ +#pragma once #include <cstddef> diff --git a/thirdparty/graphite/src/inc/UtfCodec.h b/thirdparty/graphite/src/inc/UtfCodec.h index 24a343d8d9..bab652c119 100644 --- a/thirdparty/graphite/src/inc/UtfCodec.h +++ b/thirdparty/graphite/src/inc/UtfCodec.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2011, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2011, SIL International, All rights reserved. + #pragma once #include <cstdlib> diff --git a/thirdparty/graphite/src/inc/bits.h b/thirdparty/graphite/src/inc/bits.h index 9365986a10..168ff256d3 100644 --- a/thirdparty/graphite/src/inc/bits.h +++ b/thirdparty/graphite/src/inc/bits.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2012, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2012, SIL International, All rights reserved. + #pragma once namespace graphite2 diff --git a/thirdparty/graphite/src/inc/debug.h b/thirdparty/graphite/src/inc/debug.h index 97175eb2cc..5b9c63872b 100644 --- a/thirdparty/graphite/src/inc/debug.h +++ b/thirdparty/graphite/src/inc/debug.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2011, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2011, SIL International, All rights reserved. + // debug.h // // Created on: 22 Dec 2011 diff --git a/thirdparty/graphite/src/inc/json.h b/thirdparty/graphite/src/inc/json.h index 554cd9a3d1..72011ef198 100644 --- a/thirdparty/graphite/src/inc/json.h +++ b/thirdparty/graphite/src/inc/json.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2011, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2011, SIL International, All rights reserved. + // JSON pretty printer for graphite font debug output logging. // Created on: 15 Dec 2011 // Author: Tim Eves diff --git a/thirdparty/graphite/src/inc/locale2lcid.h b/thirdparty/graphite/src/inc/locale2lcid.h index 25d5c0a3c8..e591c42b28 100644 --- a/thirdparty/graphite/src/inc/locale2lcid.h +++ b/thirdparty/graphite/src/inc/locale2lcid.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ #pragma once #include <cstring> #include <cassert> diff --git a/thirdparty/graphite/src/inc/opcode_table.h b/thirdparty/graphite/src/inc/opcode_table.h index cb5acde9a4..01a84831bc 100644 --- a/thirdparty/graphite/src/inc/opcode_table.h +++ b/thirdparty/graphite/src/inc/opcode_table.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ // This file will be pulled into and integrated into a machine implmentation // DO NOT build directly #pragma once diff --git a/thirdparty/graphite/src/inc/opcodes.h b/thirdparty/graphite/src/inc/opcodes.h index ff2f1741e2..10ba177229 100644 --- a/thirdparty/graphite/src/inc/opcodes.h +++ b/thirdparty/graphite/src/inc/opcodes.h @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2010, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2010, SIL International, All rights reserved. + #pragma once // This file will be pulled into and integrated into a machine implmentation // DO NOT build directly and under no circumstances ever #include headers in diff --git a/thirdparty/graphite/src/json.cpp b/thirdparty/graphite/src/json.cpp index 25f2190f71..7990654eb8 100644 --- a/thirdparty/graphite/src/json.cpp +++ b/thirdparty/graphite/src/json.cpp @@ -1,29 +1,6 @@ -/* GRAPHITE2 LICENSING - - Copyright 2011, SIL International - All rights reserved. - - This library is free software; you can redistribute it and/or modify - it under the terms of the GNU Lesser General Public License as published - by the Free Software Foundation; either version 2.1 of License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should also have received a copy of the GNU Lesser General Public - License along with this library in the file named "LICENSE". - If not, write to the Free Software Foundation, 51 Franklin Street, - Suite 500, Boston, MA 02110-1335, USA or visit their web page on the - internet at http://www.fsf.org/licenses/lgpl.html. - -Alternatively, the contents of this file may be used under the terms of the -Mozilla Public License (http://mozilla.org/MPL) or the GNU General Public -License, as published by the Free Software Foundation, either version 2 -of the License or (at your option) any later version. -*/ +// SPDX-License-Identifier: MIT OR MPL-2.0 OR LGPL-2.1-or-later OR GPL-2.0-or-later +// Copyright 2011, SIL International, All rights reserved. + // JSON debug logging // Author: Tim Eves diff --git a/thirdparty/openxr/include/openxr/openxr.h b/thirdparty/openxr/include/openxr/openxr.h index 6f9b71aa68..3663f9f14d 100644 --- a/thirdparty/openxr/include/openxr/openxr.h +++ b/thirdparty/openxr/include/openxr/openxr.h @@ -25,7 +25,7 @@ extern "C" { ((((major) & 0xffffULL) << 48) | (((minor) & 0xffffULL) << 32) | ((patch) & 0xffffffffULL)) // OpenXR current version number. -#define XR_CURRENT_API_VERSION XR_MAKE_VERSION(1, 0, 25) +#define XR_CURRENT_API_VERSION XR_MAKE_VERSION(1, 0, 26) #define XR_VERSION_MAJOR(version) (uint16_t)(((uint64_t)(version) >> 48)& 0xffffULL) #define XR_VERSION_MINOR(version) (uint16_t)(((uint64_t)(version) >> 32) & 0xffffULL) @@ -450,6 +450,15 @@ typedef enum XrStructureType { XR_TYPE_VULKAN_SWAPCHAIN_CREATE_INFO_META = 1000227000, XR_TYPE_PERFORMANCE_METRICS_STATE_META = 1000232001, XR_TYPE_PERFORMANCE_METRICS_COUNTER_META = 1000232002, + XR_TYPE_SYSTEM_HEADSET_ID_PROPERTIES_META = 1000245000, + XR_TYPE_PASSTHROUGH_CREATE_INFO_HTC = 1000317001, + XR_TYPE_PASSTHROUGH_COLOR_HTC = 1000317002, + XR_TYPE_PASSTHROUGH_MESH_TRANSFORM_INFO_HTC = 1000317003, + XR_TYPE_COMPOSITION_LAYER_PASSTHROUGH_HTC = 1000317004, + XR_TYPE_FOVEATION_APPLY_INFO_HTC = 1000318000, + XR_TYPE_FOVEATION_DYNAMIC_MODE_INFO_HTC = 1000318001, + XR_TYPE_FOVEATION_CUSTOM_MODE_INFO_HTC = 1000318002, + XR_TYPE_ACTIVE_ACTION_SET_PRIORITIES_EXT = 1000373000, XR_TYPE_GRAPHICS_BINDING_VULKAN2_KHR = XR_TYPE_GRAPHICS_BINDING_VULKAN_KHR, XR_TYPE_SWAPCHAIN_IMAGE_VULKAN2_KHR = XR_TYPE_SWAPCHAIN_IMAGE_VULKAN_KHR, XR_TYPE_GRAPHICS_REQUIREMENTS_VULKAN2_KHR = XR_TYPE_GRAPHICS_REQUIREMENTS_VULKAN_KHR, @@ -536,6 +545,7 @@ typedef enum XrObjectType { XR_OBJECT_TYPE_PASSTHROUGH_LAYER_FB = 1000118002, XR_OBJECT_TYPE_GEOMETRY_INSTANCE_FB = 1000118004, XR_OBJECT_TYPE_SPATIAL_ANCHOR_STORE_CONNECTION_MSFT = 1000142000, + XR_OBJECT_TYPE_PASSTHROUGH_HTC = 1000317000, XR_OBJECT_TYPE_MAX_ENUM = 0x7FFFFFFF } XrObjectType; typedef XrFlags64 XrInstanceCreateFlags; @@ -1631,7 +1641,7 @@ typedef struct XrBindingModificationsKHR { #define XR_EXT_performance_settings 1 -#define XR_EXT_performance_settings_SPEC_VERSION 3 +#define XR_EXT_performance_settings_SPEC_VERSION 4 #define XR_EXT_PERFORMANCE_SETTINGS_EXTENSION_NAME "XR_EXT_performance_settings" typedef enum XrPerfSettingsDomainEXT { @@ -3007,7 +3017,7 @@ XRAPI_ATTR XrResult XRAPI_CALL xrRequestDisplayRefreshRateFB( #define XR_HTCX_vive_tracker_interaction 1 -#define XR_HTCX_vive_tracker_interaction_SPEC_VERSION 1 +#define XR_HTCX_vive_tracker_interaction_SPEC_VERSION 2 #define XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME "XR_HTCX_vive_tracker_interaction" typedef struct XrViveTrackerPathsHTCX { XrStructureType type; @@ -3043,7 +3053,7 @@ XRAPI_ATTR XrResult XRAPI_CALL xrEnumerateViveTrackerPathsHTCX( #define XR_FACIAL_EXPRESSION_LIP_COUNT_HTC 37 XR_DEFINE_HANDLE(XrFacialTrackerHTC) -#define XR_HTC_facial_tracking_SPEC_VERSION 1 +#define XR_HTC_facial_tracking_SPEC_VERSION 2 #define XR_HTC_FACIAL_TRACKING_EXTENSION_NAME "XR_HTC_facial_tracking" typedef enum XrEyeExpressionHTC { @@ -4508,7 +4518,7 @@ typedef struct XrCompositionLayerSettingsFB { #define XR_META_performance_metrics 1 -#define XR_META_performance_metrics_SPEC_VERSION 1 +#define XR_META_performance_metrics_SPEC_VERSION 2 #define XR_META_PERFORMANCE_METRICS_EXTENSION_NAME "XR_META_performance_metrics" typedef enum XrPerformanceMetricsCounterUnitMETA { @@ -4570,10 +4580,167 @@ XRAPI_ATTR XrResult XRAPI_CALL xrQueryPerformanceMetricsCounterMETA( #endif /* !XR_NO_PROTOTYPES */ +#define XR_META_headset_id 1 +#define XR_META_headset_id_SPEC_VERSION 1 +#define XR_META_HEADSET_ID_EXTENSION_NAME "XR_META_headset_id" +// XrSystemHeadsetIdPropertiesMETA extends XrSystemProperties +typedef struct XrSystemHeadsetIdPropertiesMETA { + XrStructureType type; + void* XR_MAY_ALIAS next; + XrUuidEXT id; +} XrSystemHeadsetIdPropertiesMETA; + + + #define XR_EXT_uuid 1 #define XR_EXT_uuid_SPEC_VERSION 1 #define XR_EXT_UUID_EXTENSION_NAME "XR_EXT_uuid" + +#define XR_HTC_passthrough 1 +XR_DEFINE_HANDLE(XrPassthroughHTC) +#define XR_HTC_passthrough_SPEC_VERSION 1 +#define XR_HTC_PASSTHROUGH_EXTENSION_NAME "XR_HTC_passthrough" + +typedef enum XrPassthroughFormHTC { + XR_PASSTHROUGH_FORM_PLANAR_HTC = 0, + XR_PASSTHROUGH_FORM_PROJECTED_HTC = 1, + XR_PASSTHROUGH_FORM_MAX_ENUM_HTC = 0x7FFFFFFF +} XrPassthroughFormHTC; +typedef struct XrPassthroughCreateInfoHTC { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrPassthroughFormHTC form; +} XrPassthroughCreateInfoHTC; + +typedef struct XrPassthroughColorHTC { + XrStructureType type; + const void* XR_MAY_ALIAS next; + float alpha; +} XrPassthroughColorHTC; + +// XrPassthroughMeshTransformInfoHTC extends XrCompositionLayerPassthroughHTC +typedef struct XrPassthroughMeshTransformInfoHTC { + XrStructureType type; + const void* XR_MAY_ALIAS next; + uint32_t vertexCount; + const XrVector3f* vertices; + uint32_t indexCount; + const uint32_t* indices; + XrSpace baseSpace; + XrTime time; + XrPosef pose; + XrVector3f scale; +} XrPassthroughMeshTransformInfoHTC; + +typedef struct XrCompositionLayerPassthroughHTC { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrCompositionLayerFlags layerFlags; + XrSpace space; + XrPassthroughHTC passthrough; + XrPassthroughColorHTC color; +} XrCompositionLayerPassthroughHTC; + +typedef XrResult (XRAPI_PTR *PFN_xrCreatePassthroughHTC)(XrSession session, const XrPassthroughCreateInfoHTC* createInfo, XrPassthroughHTC* passthrough); +typedef XrResult (XRAPI_PTR *PFN_xrDestroyPassthroughHTC)(XrPassthroughHTC passthrough); + +#ifndef XR_NO_PROTOTYPES +#ifdef XR_EXTENSION_PROTOTYPES +XRAPI_ATTR XrResult XRAPI_CALL xrCreatePassthroughHTC( + XrSession session, + const XrPassthroughCreateInfoHTC* createInfo, + XrPassthroughHTC* passthrough); + +XRAPI_ATTR XrResult XRAPI_CALL xrDestroyPassthroughHTC( + XrPassthroughHTC passthrough); +#endif /* XR_EXTENSION_PROTOTYPES */ +#endif /* !XR_NO_PROTOTYPES */ + + +#define XR_HTC_foveation 1 +#define XR_HTC_foveation_SPEC_VERSION 1 +#define XR_HTC_FOVEATION_EXTENSION_NAME "XR_HTC_foveation" + +typedef enum XrFoveationModeHTC { + XR_FOVEATION_MODE_DISABLE_HTC = 0, + XR_FOVEATION_MODE_FIXED_HTC = 1, + XR_FOVEATION_MODE_DYNAMIC_HTC = 2, + XR_FOVEATION_MODE_CUSTOM_HTC = 3, + XR_FOVEATION_MODE_MAX_ENUM_HTC = 0x7FFFFFFF +} XrFoveationModeHTC; + +typedef enum XrFoveationLevelHTC { + XR_FOVEATION_LEVEL_NONE_HTC = 0, + XR_FOVEATION_LEVEL_LOW_HTC = 1, + XR_FOVEATION_LEVEL_MEDIUM_HTC = 2, + XR_FOVEATION_LEVEL_HIGH_HTC = 3, + XR_FOVEATION_LEVEL_MAX_ENUM_HTC = 0x7FFFFFFF +} XrFoveationLevelHTC; +typedef XrFlags64 XrFoveationDynamicFlagsHTC; + +// Flag bits for XrFoveationDynamicFlagsHTC +static const XrFoveationDynamicFlagsHTC XR_FOVEATION_DYNAMIC_LEVEL_ENABLED_BIT_HTC = 0x00000001; +static const XrFoveationDynamicFlagsHTC XR_FOVEATION_DYNAMIC_CLEAR_FOV_ENABLED_BIT_HTC = 0x00000002; +static const XrFoveationDynamicFlagsHTC XR_FOVEATION_DYNAMIC_FOCAL_CENTER_OFFSET_ENABLED_BIT_HTC = 0x00000004; + +typedef struct XrFoveationApplyInfoHTC { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrFoveationModeHTC mode; + uint32_t subImageCount; + XrSwapchainSubImage* subImages; +} XrFoveationApplyInfoHTC; + +typedef struct XrFoveationConfigurationHTC { + XrFoveationLevelHTC level; + float clearFovDegree; + XrVector2f focalCenterOffset; +} XrFoveationConfigurationHTC; + +// XrFoveationDynamicModeInfoHTC extends XrFoveationApplyInfoHTC +typedef struct XrFoveationDynamicModeInfoHTC { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrFoveationDynamicFlagsHTC dynamicFlags; +} XrFoveationDynamicModeInfoHTC; + +// XrFoveationCustomModeInfoHTC extends XrFoveationApplyInfoHTC +typedef struct XrFoveationCustomModeInfoHTC { + XrStructureType type; + const void* XR_MAY_ALIAS next; + uint32_t configCount; + const XrFoveationConfigurationHTC* configs; +} XrFoveationCustomModeInfoHTC; + +typedef XrResult (XRAPI_PTR *PFN_xrApplyFoveationHTC)(XrSession session, const XrFoveationApplyInfoHTC* applyInfo); + +#ifndef XR_NO_PROTOTYPES +#ifdef XR_EXTENSION_PROTOTYPES +XRAPI_ATTR XrResult XRAPI_CALL xrApplyFoveationHTC( + XrSession session, + const XrFoveationApplyInfoHTC* applyInfo); +#endif /* XR_EXTENSION_PROTOTYPES */ +#endif /* !XR_NO_PROTOTYPES */ + + +#define XR_EXT_active_action_set_priority 1 +#define XR_EXT_active_action_set_priority_SPEC_VERSION 1 +#define XR_EXT_ACTIVE_ACTION_SET_PRIORITY_EXTENSION_NAME "XR_EXT_active_action_set_priority" +typedef struct XrActiveActionSetPriorityEXT { + XrActionSet actionSet; + uint32_t priorityOverride; +} XrActiveActionSetPriorityEXT; + +// XrActiveActionSetPrioritiesEXT extends XrActionsSyncInfo +typedef struct XrActiveActionSetPrioritiesEXT { + XrStructureType type; + const void* XR_MAY_ALIAS next; + uint32_t actionSetPriorityCount; + const XrActiveActionSetPriorityEXT* actionSetPriorities; +} XrActiveActionSetPrioritiesEXT; + + #ifdef __cplusplus } #endif diff --git a/thirdparty/openxr/include/openxr/openxr_reflection.h b/thirdparty/openxr/include/openxr/openxr_reflection.h index ac6f452377..1a873c1770 100644 --- a/thirdparty/openxr/include/openxr/openxr_reflection.h +++ b/thirdparty/openxr/include/openxr/openxr_reflection.h @@ -351,6 +351,15 @@ XR_ENUM_STR(XrResult); _(XR_TYPE_VULKAN_SWAPCHAIN_CREATE_INFO_META, 1000227000) \ _(XR_TYPE_PERFORMANCE_METRICS_STATE_META, 1000232001) \ _(XR_TYPE_PERFORMANCE_METRICS_COUNTER_META, 1000232002) \ + _(XR_TYPE_SYSTEM_HEADSET_ID_PROPERTIES_META, 1000245000) \ + _(XR_TYPE_PASSTHROUGH_CREATE_INFO_HTC, 1000317001) \ + _(XR_TYPE_PASSTHROUGH_COLOR_HTC, 1000317002) \ + _(XR_TYPE_PASSTHROUGH_MESH_TRANSFORM_INFO_HTC, 1000317003) \ + _(XR_TYPE_COMPOSITION_LAYER_PASSTHROUGH_HTC, 1000317004) \ + _(XR_TYPE_FOVEATION_APPLY_INFO_HTC, 1000318000) \ + _(XR_TYPE_FOVEATION_DYNAMIC_MODE_INFO_HTC, 1000318001) \ + _(XR_TYPE_FOVEATION_CUSTOM_MODE_INFO_HTC, 1000318002) \ + _(XR_TYPE_ACTIVE_ACTION_SET_PRIORITIES_EXT, 1000373000) \ _(XR_STRUCTURE_TYPE_MAX_ENUM, 0x7FFFFFFF) #define XR_LIST_ENUM_XrFormFactor(_) \ @@ -426,6 +435,7 @@ XR_ENUM_STR(XrResult); _(XR_OBJECT_TYPE_PASSTHROUGH_LAYER_FB, 1000118002) \ _(XR_OBJECT_TYPE_GEOMETRY_INSTANCE_FB, 1000118004) \ _(XR_OBJECT_TYPE_SPATIAL_ANCHOR_STORE_CONNECTION_MSFT, 1000142000) \ + _(XR_OBJECT_TYPE_PASSTHROUGH_HTC, 1000317000) \ _(XR_OBJECT_TYPE_MAX_ENUM, 0x7FFFFFFF) #define XR_LIST_ENUM_XrAndroidThreadTypeKHR(_) \ @@ -748,6 +758,25 @@ XR_ENUM_STR(XrResult); _(XR_PERFORMANCE_METRICS_COUNTER_UNIT_HERTZ_META, 4) \ _(XR_PERFORMANCE_METRICS_COUNTER_UNIT_MAX_ENUM_META, 0x7FFFFFFF) +#define XR_LIST_ENUM_XrPassthroughFormHTC(_) \ + _(XR_PASSTHROUGH_FORM_PLANAR_HTC, 0) \ + _(XR_PASSTHROUGH_FORM_PROJECTED_HTC, 1) \ + _(XR_PASSTHROUGH_FORM_MAX_ENUM_HTC, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrFoveationModeHTC(_) \ + _(XR_FOVEATION_MODE_DISABLE_HTC, 0) \ + _(XR_FOVEATION_MODE_FIXED_HTC, 1) \ + _(XR_FOVEATION_MODE_DYNAMIC_HTC, 2) \ + _(XR_FOVEATION_MODE_CUSTOM_HTC, 3) \ + _(XR_FOVEATION_MODE_MAX_ENUM_HTC, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrFoveationLevelHTC(_) \ + _(XR_FOVEATION_LEVEL_NONE_HTC, 0) \ + _(XR_FOVEATION_LEVEL_LOW_HTC, 1) \ + _(XR_FOVEATION_LEVEL_MEDIUM_HTC, 2) \ + _(XR_FOVEATION_LEVEL_HIGH_HTC, 3) \ + _(XR_FOVEATION_LEVEL_MAX_ENUM_HTC, 0x7FFFFFFF) + #define XR_LIST_BITS_XrInstanceCreateFlags(_) #define XR_LIST_BITS_XrSessionCreateFlags(_) @@ -891,6 +920,12 @@ XR_ENUM_STR(XrResult); _(XR_PERFORMANCE_METRICS_COUNTER_UINT_VALUE_VALID_BIT_META, 0x00000002) \ _(XR_PERFORMANCE_METRICS_COUNTER_FLOAT_VALUE_VALID_BIT_META, 0x00000004) \ +#define XR_LIST_BITS_XrFoveationDynamicFlagsHTC(_) \ + _(XR_FOVEATION_DYNAMIC_LEVEL_ENABLED_BIT_HTC, 0x00000001) \ + _(XR_FOVEATION_DYNAMIC_CLEAR_FOV_ENABLED_BIT_HTC, 0x00000002) \ + _(XR_FOVEATION_DYNAMIC_FOCAL_CENTER_OFFSET_ENABLED_BIT_HTC, 0x00000004) \ + +/// Calls your macro with the name of each member of XrApiLayerProperties, in order. #define XR_LIST_STRUCT_XrApiLayerProperties(_) \ _(type) \ _(next) \ @@ -899,12 +934,14 @@ XR_ENUM_STR(XrResult); _(layerVersion) \ _(description) \ +/// Calls your macro with the name of each member of XrExtensionProperties, in order. #define XR_LIST_STRUCT_XrExtensionProperties(_) \ _(type) \ _(next) \ _(extensionName) \ _(extensionVersion) \ +/// Calls your macro with the name of each member of XrApplicationInfo, in order. #define XR_LIST_STRUCT_XrApplicationInfo(_) \ _(applicationName) \ _(applicationVersion) \ @@ -912,6 +949,7 @@ XR_ENUM_STR(XrResult); _(engineVersion) \ _(apiVersion) \ +/// Calls your macro with the name of each member of XrInstanceCreateInfo, in order. #define XR_LIST_STRUCT_XrInstanceCreateInfo(_) \ _(type) \ _(next) \ @@ -922,31 +960,37 @@ XR_ENUM_STR(XrResult); _(enabledExtensionCount) \ _(enabledExtensionNames) \ +/// Calls your macro with the name of each member of XrInstanceProperties, in order. #define XR_LIST_STRUCT_XrInstanceProperties(_) \ _(type) \ _(next) \ _(runtimeVersion) \ _(runtimeName) \ +/// Calls your macro with the name of each member of XrEventDataBuffer, in order. #define XR_LIST_STRUCT_XrEventDataBuffer(_) \ _(type) \ _(next) \ _(varying) \ +/// Calls your macro with the name of each member of XrSystemGetInfo, in order. #define XR_LIST_STRUCT_XrSystemGetInfo(_) \ _(type) \ _(next) \ _(formFactor) \ +/// Calls your macro with the name of each member of XrSystemGraphicsProperties, in order. #define XR_LIST_STRUCT_XrSystemGraphicsProperties(_) \ _(maxSwapchainImageHeight) \ _(maxSwapchainImageWidth) \ _(maxLayerCount) \ +/// Calls your macro with the name of each member of XrSystemTrackingProperties, in order. #define XR_LIST_STRUCT_XrSystemTrackingProperties(_) \ _(orientationTracking) \ _(positionTracking) \ +/// Calls your macro with the name of each member of XrSystemProperties, in order. #define XR_LIST_STRUCT_XrSystemProperties(_) \ _(type) \ _(next) \ @@ -956,17 +1000,20 @@ XR_ENUM_STR(XrResult); _(graphicsProperties) \ _(trackingProperties) \ +/// Calls your macro with the name of each member of XrSessionCreateInfo, in order. #define XR_LIST_STRUCT_XrSessionCreateInfo(_) \ _(type) \ _(next) \ _(createFlags) \ _(systemId) \ +/// Calls your macro with the name of each member of XrVector3f, in order. #define XR_LIST_STRUCT_XrVector3f(_) \ _(x) \ _(y) \ _(z) \ +/// Calls your macro with the name of each member of XrSpaceVelocity, in order. #define XR_LIST_STRUCT_XrSpaceVelocity(_) \ _(type) \ _(next) \ @@ -974,26 +1021,31 @@ XR_ENUM_STR(XrResult); _(linearVelocity) \ _(angularVelocity) \ +/// Calls your macro with the name of each member of XrQuaternionf, in order. #define XR_LIST_STRUCT_XrQuaternionf(_) \ _(x) \ _(y) \ _(z) \ _(w) \ +/// Calls your macro with the name of each member of XrPosef, in order. #define XR_LIST_STRUCT_XrPosef(_) \ _(orientation) \ _(position) \ +/// Calls your macro with the name of each member of XrReferenceSpaceCreateInfo, in order. #define XR_LIST_STRUCT_XrReferenceSpaceCreateInfo(_) \ _(type) \ _(next) \ _(referenceSpaceType) \ _(poseInReferenceSpace) \ +/// Calls your macro with the name of each member of XrExtent2Df, in order. #define XR_LIST_STRUCT_XrExtent2Df(_) \ _(width) \ _(height) \ +/// Calls your macro with the name of each member of XrActionSpaceCreateInfo, in order. #define XR_LIST_STRUCT_XrActionSpaceCreateInfo(_) \ _(type) \ _(next) \ @@ -1001,18 +1053,21 @@ XR_ENUM_STR(XrResult); _(subactionPath) \ _(poseInActionSpace) \ +/// Calls your macro with the name of each member of XrSpaceLocation, in order. #define XR_LIST_STRUCT_XrSpaceLocation(_) \ _(type) \ _(next) \ _(locationFlags) \ _(pose) \ +/// Calls your macro with the name of each member of XrViewConfigurationProperties, in order. #define XR_LIST_STRUCT_XrViewConfigurationProperties(_) \ _(type) \ _(next) \ _(viewConfigurationType) \ _(fovMutable) \ +/// Calls your macro with the name of each member of XrViewConfigurationView, in order. #define XR_LIST_STRUCT_XrViewConfigurationView(_) \ _(type) \ _(next) \ @@ -1023,6 +1078,7 @@ XR_ENUM_STR(XrResult); _(recommendedSwapchainSampleCount) \ _(maxSwapchainSampleCount) \ +/// Calls your macro with the name of each member of XrSwapchainCreateInfo, in order. #define XR_LIST_STRUCT_XrSwapchainCreateInfo(_) \ _(type) \ _(next) \ @@ -1036,32 +1092,39 @@ XR_ENUM_STR(XrResult); _(arraySize) \ _(mipCount) \ +/// Calls your macro with the name of each member of XrSwapchainImageBaseHeader, in order. #define XR_LIST_STRUCT_XrSwapchainImageBaseHeader(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrSwapchainImageAcquireInfo, in order. #define XR_LIST_STRUCT_XrSwapchainImageAcquireInfo(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrSwapchainImageWaitInfo, in order. #define XR_LIST_STRUCT_XrSwapchainImageWaitInfo(_) \ _(type) \ _(next) \ _(timeout) \ +/// Calls your macro with the name of each member of XrSwapchainImageReleaseInfo, in order. #define XR_LIST_STRUCT_XrSwapchainImageReleaseInfo(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrSessionBeginInfo, in order. #define XR_LIST_STRUCT_XrSessionBeginInfo(_) \ _(type) \ _(next) \ _(primaryViewConfigurationType) \ +/// Calls your macro with the name of each member of XrFrameWaitInfo, in order. #define XR_LIST_STRUCT_XrFrameWaitInfo(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrFrameState, in order. #define XR_LIST_STRUCT_XrFrameState(_) \ _(type) \ _(next) \ @@ -1069,16 +1132,19 @@ XR_ENUM_STR(XrResult); _(predictedDisplayPeriod) \ _(shouldRender) \ +/// Calls your macro with the name of each member of XrFrameBeginInfo, in order. #define XR_LIST_STRUCT_XrFrameBeginInfo(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrCompositionLayerBaseHeader, in order. #define XR_LIST_STRUCT_XrCompositionLayerBaseHeader(_) \ _(type) \ _(next) \ _(layerFlags) \ _(space) \ +/// Calls your macro with the name of each member of XrFrameEndInfo, in order. #define XR_LIST_STRUCT_XrFrameEndInfo(_) \ _(type) \ _(next) \ @@ -1087,6 +1153,7 @@ XR_ENUM_STR(XrResult); _(layerCount) \ _(layers) \ +/// Calls your macro with the name of each member of XrViewLocateInfo, in order. #define XR_LIST_STRUCT_XrViewLocateInfo(_) \ _(type) \ _(next) \ @@ -1094,23 +1161,27 @@ XR_ENUM_STR(XrResult); _(displayTime) \ _(space) \ +/// Calls your macro with the name of each member of XrViewState, in order. #define XR_LIST_STRUCT_XrViewState(_) \ _(type) \ _(next) \ _(viewStateFlags) \ +/// Calls your macro with the name of each member of XrFovf, in order. #define XR_LIST_STRUCT_XrFovf(_) \ _(angleLeft) \ _(angleRight) \ _(angleUp) \ _(angleDown) \ +/// Calls your macro with the name of each member of XrView, in order. #define XR_LIST_STRUCT_XrView(_) \ _(type) \ _(next) \ _(pose) \ _(fov) \ +/// Calls your macro with the name of each member of XrActionSetCreateInfo, in order. #define XR_LIST_STRUCT_XrActionSetCreateInfo(_) \ _(type) \ _(next) \ @@ -1118,6 +1189,7 @@ XR_ENUM_STR(XrResult); _(localizedActionSetName) \ _(priority) \ +/// Calls your macro with the name of each member of XrActionCreateInfo, in order. #define XR_LIST_STRUCT_XrActionCreateInfo(_) \ _(type) \ _(next) \ @@ -1127,10 +1199,12 @@ XR_ENUM_STR(XrResult); _(subactionPaths) \ _(localizedActionName) \ +/// Calls your macro with the name of each member of XrActionSuggestedBinding, in order. #define XR_LIST_STRUCT_XrActionSuggestedBinding(_) \ _(action) \ _(binding) \ +/// Calls your macro with the name of each member of XrInteractionProfileSuggestedBinding, in order. #define XR_LIST_STRUCT_XrInteractionProfileSuggestedBinding(_) \ _(type) \ _(next) \ @@ -1138,23 +1212,27 @@ XR_ENUM_STR(XrResult); _(countSuggestedBindings) \ _(suggestedBindings) \ +/// Calls your macro with the name of each member of XrSessionActionSetsAttachInfo, in order. #define XR_LIST_STRUCT_XrSessionActionSetsAttachInfo(_) \ _(type) \ _(next) \ _(countActionSets) \ _(actionSets) \ +/// Calls your macro with the name of each member of XrInteractionProfileState, in order. #define XR_LIST_STRUCT_XrInteractionProfileState(_) \ _(type) \ _(next) \ _(interactionProfile) \ +/// Calls your macro with the name of each member of XrActionStateGetInfo, in order. #define XR_LIST_STRUCT_XrActionStateGetInfo(_) \ _(type) \ _(next) \ _(action) \ _(subactionPath) \ +/// Calls your macro with the name of each member of XrActionStateBoolean, in order. #define XR_LIST_STRUCT_XrActionStateBoolean(_) \ _(type) \ _(next) \ @@ -1163,6 +1241,7 @@ XR_ENUM_STR(XrResult); _(lastChangeTime) \ _(isActive) \ +/// Calls your macro with the name of each member of XrActionStateFloat, in order. #define XR_LIST_STRUCT_XrActionStateFloat(_) \ _(type) \ _(next) \ @@ -1171,10 +1250,12 @@ XR_ENUM_STR(XrResult); _(lastChangeTime) \ _(isActive) \ +/// Calls your macro with the name of each member of XrVector2f, in order. #define XR_LIST_STRUCT_XrVector2f(_) \ _(x) \ _(y) \ +/// Calls your macro with the name of each member of XrActionStateVector2f, in order. #define XR_LIST_STRUCT_XrActionStateVector2f(_) \ _(type) \ _(next) \ @@ -1183,67 +1264,81 @@ XR_ENUM_STR(XrResult); _(lastChangeTime) \ _(isActive) \ +/// Calls your macro with the name of each member of XrActionStatePose, in order. #define XR_LIST_STRUCT_XrActionStatePose(_) \ _(type) \ _(next) \ _(isActive) \ +/// Calls your macro with the name of each member of XrActiveActionSet, in order. #define XR_LIST_STRUCT_XrActiveActionSet(_) \ _(actionSet) \ _(subactionPath) \ +/// Calls your macro with the name of each member of XrActionsSyncInfo, in order. #define XR_LIST_STRUCT_XrActionsSyncInfo(_) \ _(type) \ _(next) \ _(countActiveActionSets) \ _(activeActionSets) \ +/// Calls your macro with the name of each member of XrBoundSourcesForActionEnumerateInfo, in order. #define XR_LIST_STRUCT_XrBoundSourcesForActionEnumerateInfo(_) \ _(type) \ _(next) \ _(action) \ +/// Calls your macro with the name of each member of XrInputSourceLocalizedNameGetInfo, in order. #define XR_LIST_STRUCT_XrInputSourceLocalizedNameGetInfo(_) \ _(type) \ _(next) \ _(sourcePath) \ _(whichComponents) \ +/// Calls your macro with the name of each member of XrHapticActionInfo, in order. #define XR_LIST_STRUCT_XrHapticActionInfo(_) \ _(type) \ _(next) \ _(action) \ _(subactionPath) \ +/// Calls your macro with the name of each member of XrHapticBaseHeader, in order. #define XR_LIST_STRUCT_XrHapticBaseHeader(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrBaseInStructure, in order. #define XR_LIST_STRUCT_XrBaseInStructure(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrBaseOutStructure, in order. #define XR_LIST_STRUCT_XrBaseOutStructure(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrOffset2Di, in order. #define XR_LIST_STRUCT_XrOffset2Di(_) \ _(x) \ _(y) \ +/// Calls your macro with the name of each member of XrExtent2Di, in order. #define XR_LIST_STRUCT_XrExtent2Di(_) \ _(width) \ _(height) \ +/// Calls your macro with the name of each member of XrRect2Di, in order. #define XR_LIST_STRUCT_XrRect2Di(_) \ _(offset) \ _(extent) \ +/// Calls your macro with the name of each member of XrSwapchainSubImage, in order. #define XR_LIST_STRUCT_XrSwapchainSubImage(_) \ _(swapchain) \ _(imageRect) \ _(imageArrayIndex) \ +/// Calls your macro with the name of each member of XrCompositionLayerProjectionView, in order. #define XR_LIST_STRUCT_XrCompositionLayerProjectionView(_) \ _(type) \ _(next) \ @@ -1251,6 +1346,7 @@ XR_ENUM_STR(XrResult); _(fov) \ _(subImage) \ +/// Calls your macro with the name of each member of XrCompositionLayerProjection, in order. #define XR_LIST_STRUCT_XrCompositionLayerProjection(_) \ _(type) \ _(next) \ @@ -1259,6 +1355,7 @@ XR_ENUM_STR(XrResult); _(viewCount) \ _(views) \ +/// Calls your macro with the name of each member of XrCompositionLayerQuad, in order. #define XR_LIST_STRUCT_XrCompositionLayerQuad(_) \ _(type) \ _(next) \ @@ -1269,20 +1366,24 @@ XR_ENUM_STR(XrResult); _(pose) \ _(size) \ +/// Calls your macro with the name of each member of XrEventDataBaseHeader, in order. #define XR_LIST_STRUCT_XrEventDataBaseHeader(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrEventDataEventsLost, in order. #define XR_LIST_STRUCT_XrEventDataEventsLost(_) \ _(type) \ _(next) \ _(lostEventCount) \ +/// Calls your macro with the name of each member of XrEventDataInstanceLossPending, in order. #define XR_LIST_STRUCT_XrEventDataInstanceLossPending(_) \ _(type) \ _(next) \ _(lossTime) \ +/// Calls your macro with the name of each member of XrEventDataSessionStateChanged, in order. #define XR_LIST_STRUCT_XrEventDataSessionStateChanged(_) \ _(type) \ _(next) \ @@ -1290,6 +1391,7 @@ XR_ENUM_STR(XrResult); _(state) \ _(time) \ +/// Calls your macro with the name of each member of XrEventDataReferenceSpaceChangePending, in order. #define XR_LIST_STRUCT_XrEventDataReferenceSpaceChangePending(_) \ _(type) \ _(next) \ @@ -1299,11 +1401,13 @@ XR_ENUM_STR(XrResult); _(poseValid) \ _(poseInPreviousSpace) \ +/// Calls your macro with the name of each member of XrEventDataInteractionProfileChanged, in order. #define XR_LIST_STRUCT_XrEventDataInteractionProfileChanged(_) \ _(type) \ _(next) \ _(session) \ +/// Calls your macro with the name of each member of XrHapticVibration, in order. #define XR_LIST_STRUCT_XrHapticVibration(_) \ _(type) \ _(next) \ @@ -1311,26 +1415,31 @@ XR_ENUM_STR(XrResult); _(frequency) \ _(amplitude) \ +/// Calls your macro with the name of each member of XrOffset2Df, in order. #define XR_LIST_STRUCT_XrOffset2Df(_) \ _(x) \ _(y) \ +/// Calls your macro with the name of each member of XrRect2Df, in order. #define XR_LIST_STRUCT_XrRect2Df(_) \ _(offset) \ _(extent) \ +/// Calls your macro with the name of each member of XrVector4f, in order. #define XR_LIST_STRUCT_XrVector4f(_) \ _(x) \ _(y) \ _(z) \ _(w) \ +/// Calls your macro with the name of each member of XrColor4f, in order. #define XR_LIST_STRUCT_XrColor4f(_) \ _(r) \ _(g) \ _(b) \ _(a) \ +/// Calls your macro with the name of each member of XrCompositionLayerCubeKHR, in order. #define XR_LIST_STRUCT_XrCompositionLayerCubeKHR(_) \ _(type) \ _(next) \ @@ -1341,12 +1450,14 @@ XR_ENUM_STR(XrResult); _(imageArrayIndex) \ _(orientation) \ +/// Calls your macro with the name of each member of XrInstanceCreateInfoAndroidKHR, in order. #define XR_LIST_STRUCT_XrInstanceCreateInfoAndroidKHR(_) \ _(type) \ _(next) \ _(applicationVM) \ _(applicationActivity) \ +/// Calls your macro with the name of each member of XrCompositionLayerDepthInfoKHR, in order. #define XR_LIST_STRUCT_XrCompositionLayerDepthInfoKHR(_) \ _(type) \ _(next) \ @@ -1356,12 +1467,14 @@ XR_ENUM_STR(XrResult); _(nearZ) \ _(farZ) \ +/// Calls your macro with the name of each member of XrVulkanSwapchainFormatListCreateInfoKHR, in order. #define XR_LIST_STRUCT_XrVulkanSwapchainFormatListCreateInfoKHR(_) \ _(type) \ _(next) \ _(viewFormatCount) \ _(viewFormats) \ +/// Calls your macro with the name of each member of XrCompositionLayerCylinderKHR, in order. #define XR_LIST_STRUCT_XrCompositionLayerCylinderKHR(_) \ _(type) \ _(next) \ @@ -1374,6 +1487,7 @@ XR_ENUM_STR(XrResult); _(centralAngle) \ _(aspectRatio) \ +/// Calls your macro with the name of each member of XrCompositionLayerEquirectKHR, in order. #define XR_LIST_STRUCT_XrCompositionLayerEquirectKHR(_) \ _(type) \ _(next) \ @@ -1386,12 +1500,14 @@ XR_ENUM_STR(XrResult); _(scale) \ _(bias) \ +/// Calls your macro with the name of each member of XrGraphicsBindingOpenGLWin32KHR, in order. #define XR_LIST_STRUCT_XrGraphicsBindingOpenGLWin32KHR(_) \ _(type) \ _(next) \ _(hDC) \ _(hGLRC) \ +/// Calls your macro with the name of each member of XrGraphicsBindingOpenGLXlibKHR, in order. #define XR_LIST_STRUCT_XrGraphicsBindingOpenGLXlibKHR(_) \ _(type) \ _(next) \ @@ -1401,6 +1517,7 @@ XR_ENUM_STR(XrResult); _(glxDrawable) \ _(glxContext) \ +/// Calls your macro with the name of each member of XrGraphicsBindingOpenGLXcbKHR, in order. #define XR_LIST_STRUCT_XrGraphicsBindingOpenGLXcbKHR(_) \ _(type) \ _(next) \ @@ -1411,22 +1528,26 @@ XR_ENUM_STR(XrResult); _(glxDrawable) \ _(glxContext) \ +/// Calls your macro with the name of each member of XrGraphicsBindingOpenGLWaylandKHR, in order. #define XR_LIST_STRUCT_XrGraphicsBindingOpenGLWaylandKHR(_) \ _(type) \ _(next) \ _(display) \ +/// Calls your macro with the name of each member of XrSwapchainImageOpenGLKHR, in order. #define XR_LIST_STRUCT_XrSwapchainImageOpenGLKHR(_) \ _(type) \ _(next) \ _(image) \ +/// Calls your macro with the name of each member of XrGraphicsRequirementsOpenGLKHR, in order. #define XR_LIST_STRUCT_XrGraphicsRequirementsOpenGLKHR(_) \ _(type) \ _(next) \ _(minApiVersionSupported) \ _(maxApiVersionSupported) \ +/// Calls your macro with the name of each member of XrGraphicsBindingOpenGLESAndroidKHR, in order. #define XR_LIST_STRUCT_XrGraphicsBindingOpenGLESAndroidKHR(_) \ _(type) \ _(next) \ @@ -1434,17 +1555,20 @@ XR_ENUM_STR(XrResult); _(config) \ _(context) \ +/// Calls your macro with the name of each member of XrSwapchainImageOpenGLESKHR, in order. #define XR_LIST_STRUCT_XrSwapchainImageOpenGLESKHR(_) \ _(type) \ _(next) \ _(image) \ +/// Calls your macro with the name of each member of XrGraphicsRequirementsOpenGLESKHR, in order. #define XR_LIST_STRUCT_XrGraphicsRequirementsOpenGLESKHR(_) \ _(type) \ _(next) \ _(minApiVersionSupported) \ _(maxApiVersionSupported) \ +/// Calls your macro with the name of each member of XrGraphicsBindingVulkanKHR, in order. #define XR_LIST_STRUCT_XrGraphicsBindingVulkanKHR(_) \ _(type) \ _(next) \ @@ -1454,50 +1578,59 @@ XR_ENUM_STR(XrResult); _(queueFamilyIndex) \ _(queueIndex) \ +/// Calls your macro with the name of each member of XrSwapchainImageVulkanKHR, in order. #define XR_LIST_STRUCT_XrSwapchainImageVulkanKHR(_) \ _(type) \ _(next) \ _(image) \ +/// Calls your macro with the name of each member of XrGraphicsRequirementsVulkanKHR, in order. #define XR_LIST_STRUCT_XrGraphicsRequirementsVulkanKHR(_) \ _(type) \ _(next) \ _(minApiVersionSupported) \ _(maxApiVersionSupported) \ +/// Calls your macro with the name of each member of XrGraphicsBindingD3D11KHR, in order. #define XR_LIST_STRUCT_XrGraphicsBindingD3D11KHR(_) \ _(type) \ _(next) \ _(device) \ +/// Calls your macro with the name of each member of XrSwapchainImageD3D11KHR, in order. #define XR_LIST_STRUCT_XrSwapchainImageD3D11KHR(_) \ _(type) \ _(next) \ _(texture) \ +/// Calls your macro with the name of each member of XrGraphicsRequirementsD3D11KHR, in order. #define XR_LIST_STRUCT_XrGraphicsRequirementsD3D11KHR(_) \ _(type) \ _(next) \ _(adapterLuid) \ _(minFeatureLevel) \ +/// Calls your macro with the name of each member of XrGraphicsBindingD3D12KHR, in order. #define XR_LIST_STRUCT_XrGraphicsBindingD3D12KHR(_) \ _(type) \ _(next) \ _(device) \ _(queue) \ +/// Calls your macro with the name of each member of XrSwapchainImageD3D12KHR, in order. #define XR_LIST_STRUCT_XrSwapchainImageD3D12KHR(_) \ _(type) \ _(next) \ _(texture) \ +/// Calls your macro with the name of each member of XrGraphicsRequirementsD3D12KHR, in order. #define XR_LIST_STRUCT_XrGraphicsRequirementsD3D12KHR(_) \ _(type) \ _(next) \ _(adapterLuid) \ _(minFeatureLevel) \ +/// Calls your macro with the name of each member of XrVisibilityMaskKHR, in order. #define XR_LIST_STRUCT_XrVisibilityMaskKHR(_) \ _(type) \ _(next) \ @@ -1508,6 +1641,7 @@ XR_ENUM_STR(XrResult); _(indexCountOutput) \ _(indices) \ +/// Calls your macro with the name of each member of XrEventDataVisibilityMaskChangedKHR, in order. #define XR_LIST_STRUCT_XrEventDataVisibilityMaskChangedKHR(_) \ _(type) \ _(next) \ @@ -1515,22 +1649,26 @@ XR_ENUM_STR(XrResult); _(viewConfigurationType) \ _(viewIndex) \ +/// Calls your macro with the name of each member of XrCompositionLayerColorScaleBiasKHR, in order. #define XR_LIST_STRUCT_XrCompositionLayerColorScaleBiasKHR(_) \ _(type) \ _(next) \ _(colorScale) \ _(colorBias) \ +/// Calls your macro with the name of each member of XrLoaderInitInfoBaseHeaderKHR, in order. #define XR_LIST_STRUCT_XrLoaderInitInfoBaseHeaderKHR(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrLoaderInitInfoAndroidKHR, in order. #define XR_LIST_STRUCT_XrLoaderInitInfoAndroidKHR(_) \ _(type) \ _(next) \ _(applicationVM) \ _(applicationContext) \ +/// Calls your macro with the name of each member of XrVulkanInstanceCreateInfoKHR, in order. #define XR_LIST_STRUCT_XrVulkanInstanceCreateInfoKHR(_) \ _(type) \ _(next) \ @@ -1540,6 +1678,7 @@ XR_ENUM_STR(XrResult); _(vulkanCreateInfo) \ _(vulkanAllocator) \ +/// Calls your macro with the name of each member of XrVulkanDeviceCreateInfoKHR, in order. #define XR_LIST_STRUCT_XrVulkanDeviceCreateInfoKHR(_) \ _(type) \ _(next) \ @@ -1550,12 +1689,14 @@ XR_ENUM_STR(XrResult); _(vulkanCreateInfo) \ _(vulkanAllocator) \ +/// Calls your macro with the name of each member of XrVulkanGraphicsDeviceGetInfoKHR, in order. #define XR_LIST_STRUCT_XrVulkanGraphicsDeviceGetInfoKHR(_) \ _(type) \ _(next) \ _(systemId) \ _(vulkanInstance) \ +/// Calls your macro with the name of each member of XrCompositionLayerEquirect2KHR, in order. #define XR_LIST_STRUCT_XrCompositionLayerEquirect2KHR(_) \ _(type) \ _(next) \ @@ -1569,16 +1710,19 @@ XR_ENUM_STR(XrResult); _(upperVerticalAngle) \ _(lowerVerticalAngle) \ +/// Calls your macro with the name of each member of XrBindingModificationBaseHeaderKHR, in order. #define XR_LIST_STRUCT_XrBindingModificationBaseHeaderKHR(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrBindingModificationsKHR, in order. #define XR_LIST_STRUCT_XrBindingModificationsKHR(_) \ _(type) \ _(next) \ _(bindingModificationCount) \ _(bindingModifications) \ +/// Calls your macro with the name of each member of XrEventDataPerfSettingsEXT, in order. #define XR_LIST_STRUCT_XrEventDataPerfSettingsEXT(_) \ _(type) \ _(next) \ @@ -1587,6 +1731,7 @@ XR_ENUM_STR(XrResult); _(fromLevel) \ _(toLevel) \ +/// Calls your macro with the name of each member of XrDebugUtilsObjectNameInfoEXT, in order. #define XR_LIST_STRUCT_XrDebugUtilsObjectNameInfoEXT(_) \ _(type) \ _(next) \ @@ -1594,11 +1739,13 @@ XR_ENUM_STR(XrResult); _(objectHandle) \ _(objectName) \ +/// Calls your macro with the name of each member of XrDebugUtilsLabelEXT, in order. #define XR_LIST_STRUCT_XrDebugUtilsLabelEXT(_) \ _(type) \ _(next) \ _(labelName) \ +/// Calls your macro with the name of each member of XrDebugUtilsMessengerCallbackDataEXT, in order. #define XR_LIST_STRUCT_XrDebugUtilsMessengerCallbackDataEXT(_) \ _(type) \ _(next) \ @@ -1610,6 +1757,7 @@ XR_ENUM_STR(XrResult); _(sessionLabelCount) \ _(sessionLabels) \ +/// Calls your macro with the name of each member of XrDebugUtilsMessengerCreateInfoEXT, in order. #define XR_LIST_STRUCT_XrDebugUtilsMessengerCreateInfoEXT(_) \ _(type) \ _(next) \ @@ -1618,28 +1766,33 @@ XR_ENUM_STR(XrResult); _(userCallback) \ _(userData) \ +/// Calls your macro with the name of each member of XrSystemEyeGazeInteractionPropertiesEXT, in order. #define XR_LIST_STRUCT_XrSystemEyeGazeInteractionPropertiesEXT(_) \ _(type) \ _(next) \ _(supportsEyeGazeInteraction) \ +/// Calls your macro with the name of each member of XrEyeGazeSampleTimeEXT, in order. #define XR_LIST_STRUCT_XrEyeGazeSampleTimeEXT(_) \ _(type) \ _(next) \ _(time) \ +/// Calls your macro with the name of each member of XrSessionCreateInfoOverlayEXTX, in order. #define XR_LIST_STRUCT_XrSessionCreateInfoOverlayEXTX(_) \ _(type) \ _(next) \ _(createFlags) \ _(sessionLayersPlacement) \ +/// Calls your macro with the name of each member of XrEventDataMainSessionVisibilityChangedEXTX, in order. #define XR_LIST_STRUCT_XrEventDataMainSessionVisibilityChangedEXTX(_) \ _(type) \ _(next) \ _(visible) \ _(flags) \ +/// Calls your macro with the name of each member of XrSpatialAnchorCreateInfoMSFT, in order. #define XR_LIST_STRUCT_XrSpatialAnchorCreateInfoMSFT(_) \ _(type) \ _(next) \ @@ -1647,17 +1800,20 @@ XR_ENUM_STR(XrResult); _(pose) \ _(time) \ +/// Calls your macro with the name of each member of XrSpatialAnchorSpaceCreateInfoMSFT, in order. #define XR_LIST_STRUCT_XrSpatialAnchorSpaceCreateInfoMSFT(_) \ _(type) \ _(next) \ _(anchor) \ _(poseInAnchorSpace) \ +/// Calls your macro with the name of each member of XrCompositionLayerImageLayoutFB, in order. #define XR_LIST_STRUCT_XrCompositionLayerImageLayoutFB(_) \ _(type) \ _(next) \ _(flags) \ +/// Calls your macro with the name of each member of XrCompositionLayerAlphaBlendFB, in order. #define XR_LIST_STRUCT_XrCompositionLayerAlphaBlendFB(_) \ _(type) \ _(next) \ @@ -1666,6 +1822,7 @@ XR_ENUM_STR(XrResult); _(srcFactorAlpha) \ _(dstFactorAlpha) \ +/// Calls your macro with the name of each member of XrViewConfigurationDepthRangeEXT, in order. #define XR_LIST_STRUCT_XrViewConfigurationDepthRangeEXT(_) \ _(type) \ _(next) \ @@ -1674,6 +1831,7 @@ XR_ENUM_STR(XrResult); _(recommendedFarZ) \ _(maxFarZ) \ +/// Calls your macro with the name of each member of XrGraphicsBindingEGLMNDX, in order. #define XR_LIST_STRUCT_XrGraphicsBindingEGLMNDX(_) \ _(type) \ _(next) \ @@ -1682,6 +1840,7 @@ XR_ENUM_STR(XrResult); _(config) \ _(context) \ +/// Calls your macro with the name of each member of XrSpatialGraphNodeSpaceCreateInfoMSFT, in order. #define XR_LIST_STRUCT_XrSpatialGraphNodeSpaceCreateInfoMSFT(_) \ _(type) \ _(next) \ @@ -1689,6 +1848,7 @@ XR_ENUM_STR(XrResult); _(nodeId) \ _(pose) \ +/// Calls your macro with the name of each member of XrSpatialGraphStaticNodeBindingCreateInfoMSFT, in order. #define XR_LIST_STRUCT_XrSpatialGraphStaticNodeBindingCreateInfoMSFT(_) \ _(type) \ _(next) \ @@ -1696,43 +1856,51 @@ XR_ENUM_STR(XrResult); _(poseInSpace) \ _(time) \ +/// Calls your macro with the name of each member of XrSpatialGraphNodeBindingPropertiesGetInfoMSFT, in order. #define XR_LIST_STRUCT_XrSpatialGraphNodeBindingPropertiesGetInfoMSFT(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrSpatialGraphNodeBindingPropertiesMSFT, in order. #define XR_LIST_STRUCT_XrSpatialGraphNodeBindingPropertiesMSFT(_) \ _(type) \ _(next) \ _(nodeId) \ _(poseInNodeSpace) \ +/// Calls your macro with the name of each member of XrSystemHandTrackingPropertiesEXT, in order. #define XR_LIST_STRUCT_XrSystemHandTrackingPropertiesEXT(_) \ _(type) \ _(next) \ _(supportsHandTracking) \ +/// Calls your macro with the name of each member of XrHandTrackerCreateInfoEXT, in order. #define XR_LIST_STRUCT_XrHandTrackerCreateInfoEXT(_) \ _(type) \ _(next) \ _(hand) \ _(handJointSet) \ +/// Calls your macro with the name of each member of XrHandJointsLocateInfoEXT, in order. #define XR_LIST_STRUCT_XrHandJointsLocateInfoEXT(_) \ _(type) \ _(next) \ _(baseSpace) \ _(time) \ +/// Calls your macro with the name of each member of XrHandJointLocationEXT, in order. #define XR_LIST_STRUCT_XrHandJointLocationEXT(_) \ _(locationFlags) \ _(pose) \ _(radius) \ +/// Calls your macro with the name of each member of XrHandJointVelocityEXT, in order. #define XR_LIST_STRUCT_XrHandJointVelocityEXT(_) \ _(velocityFlags) \ _(linearVelocity) \ _(angularVelocity) \ +/// Calls your macro with the name of each member of XrHandJointLocationsEXT, in order. #define XR_LIST_STRUCT_XrHandJointLocationsEXT(_) \ _(type) \ _(next) \ @@ -1740,12 +1908,14 @@ XR_ENUM_STR(XrResult); _(jointCount) \ _(jointLocations) \ +/// Calls your macro with the name of each member of XrHandJointVelocitiesEXT, in order. #define XR_LIST_STRUCT_XrHandJointVelocitiesEXT(_) \ _(type) \ _(next) \ _(jointCount) \ _(jointVelocities) \ +/// Calls your macro with the name of each member of XrSystemHandTrackingMeshPropertiesMSFT, in order. #define XR_LIST_STRUCT_XrSystemHandTrackingMeshPropertiesMSFT(_) \ _(type) \ _(next) \ @@ -1753,34 +1923,40 @@ XR_ENUM_STR(XrResult); _(maxHandMeshIndexCount) \ _(maxHandMeshVertexCount) \ +/// Calls your macro with the name of each member of XrHandMeshSpaceCreateInfoMSFT, in order. #define XR_LIST_STRUCT_XrHandMeshSpaceCreateInfoMSFT(_) \ _(type) \ _(next) \ _(handPoseType) \ _(poseInHandMeshSpace) \ +/// Calls your macro with the name of each member of XrHandMeshUpdateInfoMSFT, in order. #define XR_LIST_STRUCT_XrHandMeshUpdateInfoMSFT(_) \ _(type) \ _(next) \ _(time) \ _(handPoseType) \ +/// Calls your macro with the name of each member of XrHandMeshIndexBufferMSFT, in order. #define XR_LIST_STRUCT_XrHandMeshIndexBufferMSFT(_) \ _(indexBufferKey) \ _(indexCapacityInput) \ _(indexCountOutput) \ _(indices) \ +/// Calls your macro with the name of each member of XrHandMeshVertexMSFT, in order. #define XR_LIST_STRUCT_XrHandMeshVertexMSFT(_) \ _(position) \ _(normal) \ +/// Calls your macro with the name of each member of XrHandMeshVertexBufferMSFT, in order. #define XR_LIST_STRUCT_XrHandMeshVertexBufferMSFT(_) \ _(vertexUpdateTime) \ _(vertexCapacityInput) \ _(vertexCountOutput) \ _(vertices) \ +/// Calls your macro with the name of each member of XrHandMeshMSFT, in order. #define XR_LIST_STRUCT_XrHandMeshMSFT(_) \ _(type) \ _(next) \ @@ -1790,29 +1966,34 @@ XR_ENUM_STR(XrResult); _(indexBuffer) \ _(vertexBuffer) \ +/// Calls your macro with the name of each member of XrHandPoseTypeInfoMSFT, in order. #define XR_LIST_STRUCT_XrHandPoseTypeInfoMSFT(_) \ _(type) \ _(next) \ _(handPoseType) \ +/// Calls your macro with the name of each member of XrSecondaryViewConfigurationSessionBeginInfoMSFT, in order. #define XR_LIST_STRUCT_XrSecondaryViewConfigurationSessionBeginInfoMSFT(_) \ _(type) \ _(next) \ _(viewConfigurationCount) \ _(enabledViewConfigurationTypes) \ +/// Calls your macro with the name of each member of XrSecondaryViewConfigurationStateMSFT, in order. #define XR_LIST_STRUCT_XrSecondaryViewConfigurationStateMSFT(_) \ _(type) \ _(next) \ _(viewConfigurationType) \ _(active) \ +/// Calls your macro with the name of each member of XrSecondaryViewConfigurationFrameStateMSFT, in order. #define XR_LIST_STRUCT_XrSecondaryViewConfigurationFrameStateMSFT(_) \ _(type) \ _(next) \ _(viewConfigurationCount) \ _(viewConfigurationStates) \ +/// Calls your macro with the name of each member of XrSecondaryViewConfigurationLayerInfoMSFT, in order. #define XR_LIST_STRUCT_XrSecondaryViewConfigurationLayerInfoMSFT(_) \ _(type) \ _(next) \ @@ -1821,28 +2002,33 @@ XR_ENUM_STR(XrResult); _(layerCount) \ _(layers) \ +/// Calls your macro with the name of each member of XrSecondaryViewConfigurationFrameEndInfoMSFT, in order. #define XR_LIST_STRUCT_XrSecondaryViewConfigurationFrameEndInfoMSFT(_) \ _(type) \ _(next) \ _(viewConfigurationCount) \ _(viewConfigurationLayersInfo) \ +/// Calls your macro with the name of each member of XrSecondaryViewConfigurationSwapchainCreateInfoMSFT, in order. #define XR_LIST_STRUCT_XrSecondaryViewConfigurationSwapchainCreateInfoMSFT(_) \ _(type) \ _(next) \ _(viewConfigurationType) \ +/// Calls your macro with the name of each member of XrControllerModelKeyStateMSFT, in order. #define XR_LIST_STRUCT_XrControllerModelKeyStateMSFT(_) \ _(type) \ _(next) \ _(modelKey) \ +/// Calls your macro with the name of each member of XrControllerModelNodePropertiesMSFT, in order. #define XR_LIST_STRUCT_XrControllerModelNodePropertiesMSFT(_) \ _(type) \ _(next) \ _(parentNodeName) \ _(nodeName) \ +/// Calls your macro with the name of each member of XrControllerModelPropertiesMSFT, in order. #define XR_LIST_STRUCT_XrControllerModelPropertiesMSFT(_) \ _(type) \ _(next) \ @@ -1850,11 +2036,13 @@ XR_ENUM_STR(XrResult); _(nodeCountOutput) \ _(nodeProperties) \ +/// Calls your macro with the name of each member of XrControllerModelNodeStateMSFT, in order. #define XR_LIST_STRUCT_XrControllerModelNodeStateMSFT(_) \ _(type) \ _(next) \ _(nodePose) \ +/// Calls your macro with the name of each member of XrControllerModelStateMSFT, in order. #define XR_LIST_STRUCT_XrControllerModelStateMSFT(_) \ _(type) \ _(next) \ @@ -1862,23 +2050,27 @@ XR_ENUM_STR(XrResult); _(nodeCountOutput) \ _(nodeStates) \ +/// Calls your macro with the name of each member of XrViewConfigurationViewFovEPIC, in order. #define XR_LIST_STRUCT_XrViewConfigurationViewFovEPIC(_) \ _(type) \ _(next) \ _(recommendedFov) \ _(maxMutableFov) \ +/// Calls your macro with the name of each member of XrHolographicWindowAttachmentMSFT, in order. #define XR_LIST_STRUCT_XrHolographicWindowAttachmentMSFT(_) \ _(type) \ _(next) \ _(holographicSpace) \ _(coreWindow) \ +/// Calls your macro with the name of each member of XrCompositionLayerReprojectionInfoMSFT, in order. #define XR_LIST_STRUCT_XrCompositionLayerReprojectionInfoMSFT(_) \ _(type) \ _(next) \ _(reprojectionMode) \ +/// Calls your macro with the name of each member of XrCompositionLayerReprojectionPlaneOverrideMSFT, in order. #define XR_LIST_STRUCT_XrCompositionLayerReprojectionPlaneOverrideMSFT(_) \ _(type) \ _(next) \ @@ -1886,20 +2078,24 @@ XR_ENUM_STR(XrResult); _(normal) \ _(velocity) \ +/// Calls your macro with the name of each member of XrAndroidSurfaceSwapchainCreateInfoFB, in order. #define XR_LIST_STRUCT_XrAndroidSurfaceSwapchainCreateInfoFB(_) \ _(type) \ _(next) \ _(createFlags) \ +/// Calls your macro with the name of each member of XrSwapchainStateBaseHeaderFB, in order. #define XR_LIST_STRUCT_XrSwapchainStateBaseHeaderFB(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrCompositionLayerSecureContentFB, in order. #define XR_LIST_STRUCT_XrCompositionLayerSecureContentFB(_) \ _(type) \ _(next) \ _(flags) \ +/// Calls your macro with the name of each member of XrInteractionProfileDpadBindingEXT, in order. #define XR_LIST_STRUCT_XrInteractionProfileDpadBindingEXT(_) \ _(type) \ _(next) \ @@ -1913,6 +2109,7 @@ XR_ENUM_STR(XrResult); _(onHaptic) \ _(offHaptic) \ +/// Calls your macro with the name of each member of XrInteractionProfileAnalogThresholdVALVE, in order. #define XR_LIST_STRUCT_XrInteractionProfileAnalogThresholdVALVE(_) \ _(type) \ _(next) \ @@ -1923,35 +2120,43 @@ XR_ENUM_STR(XrResult); _(onHaptic) \ _(offHaptic) \ +/// Calls your macro with the name of each member of XrHandJointsMotionRangeInfoEXT, in order. #define XR_LIST_STRUCT_XrHandJointsMotionRangeInfoEXT(_) \ _(type) \ _(next) \ _(handJointsMotionRange) \ +/// Calls your macro with the name of each member of XrUuidMSFT, in order. #define XR_LIST_STRUCT_XrUuidMSFT(_) \ _(bytes) \ +/// Calls your macro with the name of each member of XrSceneObserverCreateInfoMSFT, in order. #define XR_LIST_STRUCT_XrSceneObserverCreateInfoMSFT(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrSceneCreateInfoMSFT, in order. #define XR_LIST_STRUCT_XrSceneCreateInfoMSFT(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrSceneSphereBoundMSFT, in order. #define XR_LIST_STRUCT_XrSceneSphereBoundMSFT(_) \ _(center) \ _(radius) \ +/// Calls your macro with the name of each member of XrSceneOrientedBoxBoundMSFT, in order. #define XR_LIST_STRUCT_XrSceneOrientedBoxBoundMSFT(_) \ _(pose) \ _(extents) \ +/// Calls your macro with the name of each member of XrSceneFrustumBoundMSFT, in order. #define XR_LIST_STRUCT_XrSceneFrustumBoundMSFT(_) \ _(pose) \ _(fov) \ _(farDistance) \ +/// Calls your macro with the name of each member of XrSceneBoundsMSFT, in order. #define XR_LIST_STRUCT_XrSceneBoundsMSFT(_) \ _(space) \ _(time) \ @@ -1962,6 +2167,7 @@ XR_ENUM_STR(XrResult); _(frustumCount) \ _(frustums) \ +/// Calls your macro with the name of each member of XrNewSceneComputeInfoMSFT, in order. #define XR_LIST_STRUCT_XrNewSceneComputeInfoMSFT(_) \ _(type) \ _(next) \ @@ -1970,17 +2176,20 @@ XR_ENUM_STR(XrResult); _(consistency) \ _(bounds) \ +/// Calls your macro with the name of each member of XrVisualMeshComputeLodInfoMSFT, in order. #define XR_LIST_STRUCT_XrVisualMeshComputeLodInfoMSFT(_) \ _(type) \ _(next) \ _(lod) \ +/// Calls your macro with the name of each member of XrSceneComponentMSFT, in order. #define XR_LIST_STRUCT_XrSceneComponentMSFT(_) \ _(componentType) \ _(id) \ _(parentId) \ _(updateTime) \ +/// Calls your macro with the name of each member of XrSceneComponentsMSFT, in order. #define XR_LIST_STRUCT_XrSceneComponentsMSFT(_) \ _(type) \ _(next) \ @@ -1988,21 +2197,25 @@ XR_ENUM_STR(XrResult); _(componentCountOutput) \ _(components) \ +/// Calls your macro with the name of each member of XrSceneComponentsGetInfoMSFT, in order. #define XR_LIST_STRUCT_XrSceneComponentsGetInfoMSFT(_) \ _(type) \ _(next) \ _(componentType) \ +/// Calls your macro with the name of each member of XrSceneComponentLocationMSFT, in order. #define XR_LIST_STRUCT_XrSceneComponentLocationMSFT(_) \ _(flags) \ _(pose) \ +/// Calls your macro with the name of each member of XrSceneComponentLocationsMSFT, in order. #define XR_LIST_STRUCT_XrSceneComponentLocationsMSFT(_) \ _(type) \ _(next) \ _(locationCount) \ _(locations) \ +/// Calls your macro with the name of each member of XrSceneComponentsLocateInfoMSFT, in order. #define XR_LIST_STRUCT_XrSceneComponentsLocateInfoMSFT(_) \ _(type) \ _(next) \ @@ -2011,63 +2224,75 @@ XR_ENUM_STR(XrResult); _(componentIdCount) \ _(componentIds) \ +/// Calls your macro with the name of each member of XrSceneObjectMSFT, in order. #define XR_LIST_STRUCT_XrSceneObjectMSFT(_) \ _(objectType) \ +/// Calls your macro with the name of each member of XrSceneObjectsMSFT, in order. #define XR_LIST_STRUCT_XrSceneObjectsMSFT(_) \ _(type) \ _(next) \ _(sceneObjectCount) \ _(sceneObjects) \ +/// Calls your macro with the name of each member of XrSceneComponentParentFilterInfoMSFT, in order. #define XR_LIST_STRUCT_XrSceneComponentParentFilterInfoMSFT(_) \ _(type) \ _(next) \ _(parentId) \ +/// Calls your macro with the name of each member of XrSceneObjectTypesFilterInfoMSFT, in order. #define XR_LIST_STRUCT_XrSceneObjectTypesFilterInfoMSFT(_) \ _(type) \ _(next) \ _(objectTypeCount) \ _(objectTypes) \ +/// Calls your macro with the name of each member of XrScenePlaneMSFT, in order. #define XR_LIST_STRUCT_XrScenePlaneMSFT(_) \ _(alignment) \ _(size) \ _(meshBufferId) \ _(supportsIndicesUint16) \ +/// Calls your macro with the name of each member of XrScenePlanesMSFT, in order. #define XR_LIST_STRUCT_XrScenePlanesMSFT(_) \ _(type) \ _(next) \ _(scenePlaneCount) \ _(scenePlanes) \ +/// Calls your macro with the name of each member of XrScenePlaneAlignmentFilterInfoMSFT, in order. #define XR_LIST_STRUCT_XrScenePlaneAlignmentFilterInfoMSFT(_) \ _(type) \ _(next) \ _(alignmentCount) \ _(alignments) \ +/// Calls your macro with the name of each member of XrSceneMeshMSFT, in order. #define XR_LIST_STRUCT_XrSceneMeshMSFT(_) \ _(meshBufferId) \ _(supportsIndicesUint16) \ +/// Calls your macro with the name of each member of XrSceneMeshesMSFT, in order. #define XR_LIST_STRUCT_XrSceneMeshesMSFT(_) \ _(type) \ _(next) \ _(sceneMeshCount) \ _(sceneMeshes) \ +/// Calls your macro with the name of each member of XrSceneMeshBuffersGetInfoMSFT, in order. #define XR_LIST_STRUCT_XrSceneMeshBuffersGetInfoMSFT(_) \ _(type) \ _(next) \ _(meshBufferId) \ +/// Calls your macro with the name of each member of XrSceneMeshBuffersMSFT, in order. #define XR_LIST_STRUCT_XrSceneMeshBuffersMSFT(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrSceneMeshVertexBufferMSFT, in order. #define XR_LIST_STRUCT_XrSceneMeshVertexBufferMSFT(_) \ _(type) \ _(next) \ @@ -2075,6 +2300,7 @@ XR_ENUM_STR(XrResult); _(vertexCountOutput) \ _(vertices) \ +/// Calls your macro with the name of each member of XrSceneMeshIndicesUint32MSFT, in order. #define XR_LIST_STRUCT_XrSceneMeshIndicesUint32MSFT(_) \ _(type) \ _(next) \ @@ -2082,6 +2308,7 @@ XR_ENUM_STR(XrResult); _(indexCountOutput) \ _(indices) \ +/// Calls your macro with the name of each member of XrSceneMeshIndicesUint16MSFT, in order. #define XR_LIST_STRUCT_XrSceneMeshIndicesUint16MSFT(_) \ _(type) \ _(next) \ @@ -2089,44 +2316,52 @@ XR_ENUM_STR(XrResult); _(indexCountOutput) \ _(indices) \ +/// Calls your macro with the name of each member of XrSerializedSceneFragmentDataGetInfoMSFT, in order. #define XR_LIST_STRUCT_XrSerializedSceneFragmentDataGetInfoMSFT(_) \ _(type) \ _(next) \ _(sceneFragmentId) \ +/// Calls your macro with the name of each member of XrDeserializeSceneFragmentMSFT, in order. #define XR_LIST_STRUCT_XrDeserializeSceneFragmentMSFT(_) \ _(bufferSize) \ _(buffer) \ +/// Calls your macro with the name of each member of XrSceneDeserializeInfoMSFT, in order. #define XR_LIST_STRUCT_XrSceneDeserializeInfoMSFT(_) \ _(type) \ _(next) \ _(fragmentCount) \ _(fragments) \ +/// Calls your macro with the name of each member of XrEventDataDisplayRefreshRateChangedFB, in order. #define XR_LIST_STRUCT_XrEventDataDisplayRefreshRateChangedFB(_) \ _(type) \ _(next) \ _(fromDisplayRefreshRate) \ _(toDisplayRefreshRate) \ +/// Calls your macro with the name of each member of XrViveTrackerPathsHTCX, in order. #define XR_LIST_STRUCT_XrViveTrackerPathsHTCX(_) \ _(type) \ _(next) \ _(persistentPath) \ _(rolePath) \ +/// Calls your macro with the name of each member of XrEventDataViveTrackerConnectedHTCX, in order. #define XR_LIST_STRUCT_XrEventDataViveTrackerConnectedHTCX(_) \ _(type) \ _(next) \ _(paths) \ +/// Calls your macro with the name of each member of XrSystemFacialTrackingPropertiesHTC, in order. #define XR_LIST_STRUCT_XrSystemFacialTrackingPropertiesHTC(_) \ _(type) \ _(next) \ _(supportEyeFacialTracking) \ _(supportLipFacialTracking) \ +/// Calls your macro with the name of each member of XrFacialExpressionsHTC, in order. #define XR_LIST_STRUCT_XrFacialExpressionsHTC(_) \ _(type) \ _(next) \ @@ -2135,22 +2370,26 @@ XR_ENUM_STR(XrResult); _(expressionCount) \ _(expressionWeightings) \ +/// Calls your macro with the name of each member of XrFacialTrackerCreateInfoHTC, in order. #define XR_LIST_STRUCT_XrFacialTrackerCreateInfoHTC(_) \ _(type) \ _(next) \ _(facialTrackingType) \ +/// Calls your macro with the name of each member of XrSystemColorSpacePropertiesFB, in order. #define XR_LIST_STRUCT_XrSystemColorSpacePropertiesFB(_) \ _(type) \ _(next) \ _(colorSpace) \ +/// Calls your macro with the name of each member of XrVector4sFB, in order. #define XR_LIST_STRUCT_XrVector4sFB(_) \ _(x) \ _(y) \ _(z) \ _(w) \ +/// Calls your macro with the name of each member of XrHandTrackingMeshFB, in order. #define XR_LIST_STRUCT_XrHandTrackingMeshFB(_) \ _(type) \ _(next) \ @@ -2170,6 +2409,7 @@ XR_ENUM_STR(XrResult); _(indexCountOutput) \ _(indices) \ +/// Calls your macro with the name of each member of XrHandTrackingScaleFB, in order. #define XR_LIST_STRUCT_XrHandTrackingScaleFB(_) \ _(type) \ _(next) \ @@ -2178,6 +2418,7 @@ XR_ENUM_STR(XrResult); _(overrideHandScale) \ _(overrideValueInput) \ +/// Calls your macro with the name of each member of XrHandTrackingAimStateFB, in order. #define XR_LIST_STRUCT_XrHandTrackingAimStateFB(_) \ _(type) \ _(next) \ @@ -2188,21 +2429,25 @@ XR_ENUM_STR(XrResult); _(pinchStrengthRing) \ _(pinchStrengthLittle) \ +/// Calls your macro with the name of each member of XrHandCapsuleFB, in order. #define XR_LIST_STRUCT_XrHandCapsuleFB(_) \ _(points) \ _(radius) \ _(joint) \ +/// Calls your macro with the name of each member of XrHandTrackingCapsulesStateFB, in order. #define XR_LIST_STRUCT_XrHandTrackingCapsulesStateFB(_) \ _(type) \ _(next) \ _(capsules) \ +/// Calls your macro with the name of each member of XrSystemSpatialEntityPropertiesFB, in order. #define XR_LIST_STRUCT_XrSystemSpatialEntityPropertiesFB(_) \ _(type) \ _(next) \ _(supportsSpatialEntity) \ +/// Calls your macro with the name of each member of XrSpatialAnchorCreateInfoFB, in order. #define XR_LIST_STRUCT_XrSpatialAnchorCreateInfoFB(_) \ _(type) \ _(next) \ @@ -2210,6 +2455,7 @@ XR_ENUM_STR(XrResult); _(poseInSpace) \ _(time) \ +/// Calls your macro with the name of each member of XrSpaceComponentStatusSetInfoFB, in order. #define XR_LIST_STRUCT_XrSpaceComponentStatusSetInfoFB(_) \ _(type) \ _(next) \ @@ -2217,15 +2463,18 @@ XR_ENUM_STR(XrResult); _(enabled) \ _(timeout) \ +/// Calls your macro with the name of each member of XrSpaceComponentStatusFB, in order. #define XR_LIST_STRUCT_XrSpaceComponentStatusFB(_) \ _(type) \ _(next) \ _(enabled) \ _(changePending) \ +/// Calls your macro with the name of each member of XrUuidEXT, in order. #define XR_LIST_STRUCT_XrUuidEXT(_) \ _(data) \ +/// Calls your macro with the name of each member of XrEventDataSpatialAnchorCreateCompleteFB, in order. #define XR_LIST_STRUCT_XrEventDataSpatialAnchorCreateCompleteFB(_) \ _(type) \ _(next) \ @@ -2234,6 +2483,7 @@ XR_ENUM_STR(XrResult); _(space) \ _(uuid) \ +/// Calls your macro with the name of each member of XrEventDataSpaceSetStatusCompleteFB, in order. #define XR_LIST_STRUCT_XrEventDataSpaceSetStatusCompleteFB(_) \ _(type) \ _(next) \ @@ -2244,21 +2494,25 @@ XR_ENUM_STR(XrResult); _(componentType) \ _(enabled) \ +/// Calls your macro with the name of each member of XrFoveationProfileCreateInfoFB, in order. #define XR_LIST_STRUCT_XrFoveationProfileCreateInfoFB(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrSwapchainCreateInfoFoveationFB, in order. #define XR_LIST_STRUCT_XrSwapchainCreateInfoFoveationFB(_) \ _(type) \ _(next) \ _(flags) \ +/// Calls your macro with the name of each member of XrSwapchainStateFoveationFB, in order. #define XR_LIST_STRUCT_XrSwapchainStateFoveationFB(_) \ _(type) \ _(next) \ _(flags) \ _(profile) \ +/// Calls your macro with the name of each member of XrFoveationLevelProfileCreateInfoFB, in order. #define XR_LIST_STRUCT_XrFoveationLevelProfileCreateInfoFB(_) \ _(type) \ _(next) \ @@ -2266,27 +2520,32 @@ XR_ENUM_STR(XrResult); _(verticalOffset) \ _(dynamic) \ +/// Calls your macro with the name of each member of XrSystemKeyboardTrackingPropertiesFB, in order. #define XR_LIST_STRUCT_XrSystemKeyboardTrackingPropertiesFB(_) \ _(type) \ _(next) \ _(supportsKeyboardTracking) \ +/// Calls your macro with the name of each member of XrKeyboardTrackingDescriptionFB, in order. #define XR_LIST_STRUCT_XrKeyboardTrackingDescriptionFB(_) \ _(trackedKeyboardId) \ _(size) \ _(flags) \ _(name) \ +/// Calls your macro with the name of each member of XrKeyboardSpaceCreateInfoFB, in order. #define XR_LIST_STRUCT_XrKeyboardSpaceCreateInfoFB(_) \ _(type) \ _(next) \ _(trackedKeyboardId) \ +/// Calls your macro with the name of each member of XrKeyboardTrackingQueryFB, in order. #define XR_LIST_STRUCT_XrKeyboardTrackingQueryFB(_) \ _(type) \ _(next) \ _(flags) \ +/// Calls your macro with the name of each member of XrTriangleMeshCreateInfoFB, in order. #define XR_LIST_STRUCT_XrTriangleMeshCreateInfoFB(_) \ _(type) \ _(next) \ @@ -2297,21 +2556,25 @@ XR_ENUM_STR(XrResult); _(triangleCount) \ _(indexBuffer) \ +/// Calls your macro with the name of each member of XrSystemPassthroughPropertiesFB, in order. #define XR_LIST_STRUCT_XrSystemPassthroughPropertiesFB(_) \ _(type) \ _(next) \ _(supportsPassthrough) \ +/// Calls your macro with the name of each member of XrSystemPassthroughProperties2FB, in order. #define XR_LIST_STRUCT_XrSystemPassthroughProperties2FB(_) \ _(type) \ _(next) \ _(capabilities) \ +/// Calls your macro with the name of each member of XrPassthroughCreateInfoFB, in order. #define XR_LIST_STRUCT_XrPassthroughCreateInfoFB(_) \ _(type) \ _(next) \ _(flags) \ +/// Calls your macro with the name of each member of XrPassthroughLayerCreateInfoFB, in order. #define XR_LIST_STRUCT_XrPassthroughLayerCreateInfoFB(_) \ _(type) \ _(next) \ @@ -2319,6 +2582,7 @@ XR_ENUM_STR(XrResult); _(flags) \ _(purpose) \ +/// Calls your macro with the name of each member of XrCompositionLayerPassthroughFB, in order. #define XR_LIST_STRUCT_XrCompositionLayerPassthroughFB(_) \ _(type) \ _(next) \ @@ -2326,6 +2590,7 @@ XR_ENUM_STR(XrResult); _(space) \ _(layerHandle) \ +/// Calls your macro with the name of each member of XrGeometryInstanceCreateInfoFB, in order. #define XR_LIST_STRUCT_XrGeometryInstanceCreateInfoFB(_) \ _(type) \ _(next) \ @@ -2335,6 +2600,7 @@ XR_ENUM_STR(XrResult); _(pose) \ _(scale) \ +/// Calls your macro with the name of each member of XrGeometryInstanceTransformFB, in order. #define XR_LIST_STRUCT_XrGeometryInstanceTransformFB(_) \ _(type) \ _(next) \ @@ -2343,22 +2609,26 @@ XR_ENUM_STR(XrResult); _(pose) \ _(scale) \ +/// Calls your macro with the name of each member of XrPassthroughStyleFB, in order. #define XR_LIST_STRUCT_XrPassthroughStyleFB(_) \ _(type) \ _(next) \ _(textureOpacityFactor) \ _(edgeColor) \ +/// Calls your macro with the name of each member of XrPassthroughColorMapMonoToRgbaFB, in order. #define XR_LIST_STRUCT_XrPassthroughColorMapMonoToRgbaFB(_) \ _(type) \ _(next) \ _(textureColorMap) \ +/// Calls your macro with the name of each member of XrPassthroughColorMapMonoToMonoFB, in order. #define XR_LIST_STRUCT_XrPassthroughColorMapMonoToMonoFB(_) \ _(type) \ _(next) \ _(textureColorMap) \ +/// Calls your macro with the name of each member of XrPassthroughBrightnessContrastSaturationFB, in order. #define XR_LIST_STRUCT_XrPassthroughBrightnessContrastSaturationFB(_) \ _(type) \ _(next) \ @@ -2366,16 +2636,19 @@ XR_ENUM_STR(XrResult); _(contrast) \ _(saturation) \ +/// Calls your macro with the name of each member of XrEventDataPassthroughStateChangedFB, in order. #define XR_LIST_STRUCT_XrEventDataPassthroughStateChangedFB(_) \ _(type) \ _(next) \ _(flags) \ +/// Calls your macro with the name of each member of XrRenderModelPathInfoFB, in order. #define XR_LIST_STRUCT_XrRenderModelPathInfoFB(_) \ _(type) \ _(next) \ _(path) \ +/// Calls your macro with the name of each member of XrRenderModelPropertiesFB, in order. #define XR_LIST_STRUCT_XrRenderModelPropertiesFB(_) \ _(type) \ _(next) \ @@ -2385,6 +2658,7 @@ XR_ENUM_STR(XrResult); _(modelVersion) \ _(flags) \ +/// Calls your macro with the name of each member of XrRenderModelBufferFB, in order. #define XR_LIST_STRUCT_XrRenderModelBufferFB(_) \ _(type) \ _(next) \ @@ -2392,47 +2666,56 @@ XR_ENUM_STR(XrResult); _(bufferCountOutput) \ _(buffer) \ +/// Calls your macro with the name of each member of XrRenderModelLoadInfoFB, in order. #define XR_LIST_STRUCT_XrRenderModelLoadInfoFB(_) \ _(type) \ _(next) \ _(modelKey) \ +/// Calls your macro with the name of each member of XrSystemRenderModelPropertiesFB, in order. #define XR_LIST_STRUCT_XrSystemRenderModelPropertiesFB(_) \ _(type) \ _(next) \ _(supportsRenderModelLoading) \ +/// Calls your macro with the name of each member of XrRenderModelCapabilitiesRequestFB, in order. #define XR_LIST_STRUCT_XrRenderModelCapabilitiesRequestFB(_) \ _(type) \ _(next) \ _(flags) \ +/// Calls your macro with the name of each member of XrViewLocateFoveatedRenderingVARJO, in order. #define XR_LIST_STRUCT_XrViewLocateFoveatedRenderingVARJO(_) \ _(type) \ _(next) \ _(foveatedRenderingActive) \ +/// Calls your macro with the name of each member of XrFoveatedViewConfigurationViewVARJO, in order. #define XR_LIST_STRUCT_XrFoveatedViewConfigurationViewVARJO(_) \ _(type) \ _(next) \ _(foveatedRenderingActive) \ +/// Calls your macro with the name of each member of XrSystemFoveatedRenderingPropertiesVARJO, in order. #define XR_LIST_STRUCT_XrSystemFoveatedRenderingPropertiesVARJO(_) \ _(type) \ _(next) \ _(supportsFoveatedRendering) \ +/// Calls your macro with the name of each member of XrCompositionLayerDepthTestVARJO, in order. #define XR_LIST_STRUCT_XrCompositionLayerDepthTestVARJO(_) \ _(type) \ _(next) \ _(depthTestRangeNearZ) \ _(depthTestRangeFarZ) \ +/// Calls your macro with the name of each member of XrSystemMarkerTrackingPropertiesVARJO, in order. #define XR_LIST_STRUCT_XrSystemMarkerTrackingPropertiesVARJO(_) \ _(type) \ _(next) \ _(supportsMarkerTracking) \ +/// Calls your macro with the name of each member of XrEventDataMarkerTrackingUpdateVARJO, in order. #define XR_LIST_STRUCT_XrEventDataMarkerTrackingUpdateVARJO(_) \ _(type) \ _(next) \ @@ -2441,35 +2724,42 @@ XR_ENUM_STR(XrResult); _(isPredicted) \ _(time) \ +/// Calls your macro with the name of each member of XrMarkerSpaceCreateInfoVARJO, in order. #define XR_LIST_STRUCT_XrMarkerSpaceCreateInfoVARJO(_) \ _(type) \ _(next) \ _(markerId) \ _(poseInMarkerSpace) \ +/// Calls your macro with the name of each member of XrSpatialAnchorPersistenceNameMSFT, in order. #define XR_LIST_STRUCT_XrSpatialAnchorPersistenceNameMSFT(_) \ _(name) \ +/// Calls your macro with the name of each member of XrSpatialAnchorPersistenceInfoMSFT, in order. #define XR_LIST_STRUCT_XrSpatialAnchorPersistenceInfoMSFT(_) \ _(type) \ _(next) \ _(spatialAnchorPersistenceName) \ _(spatialAnchor) \ +/// Calls your macro with the name of each member of XrSpatialAnchorFromPersistedAnchorCreateInfoMSFT, in order. #define XR_LIST_STRUCT_XrSpatialAnchorFromPersistedAnchorCreateInfoMSFT(_) \ _(type) \ _(next) \ _(spatialAnchorStore) \ _(spatialAnchorPersistenceName) \ +/// Calls your macro with the name of each member of XrSpaceQueryInfoBaseHeaderFB, in order. #define XR_LIST_STRUCT_XrSpaceQueryInfoBaseHeaderFB(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrSpaceFilterInfoBaseHeaderFB, in order. #define XR_LIST_STRUCT_XrSpaceFilterInfoBaseHeaderFB(_) \ _(type) \ _(next) \ +/// Calls your macro with the name of each member of XrSpaceQueryInfoFB, in order. #define XR_LIST_STRUCT_XrSpaceQueryInfoFB(_) \ _(type) \ _(next) \ @@ -2479,26 +2769,31 @@ XR_ENUM_STR(XrResult); _(filter) \ _(excludeFilter) \ +/// Calls your macro with the name of each member of XrSpaceStorageLocationFilterInfoFB, in order. #define XR_LIST_STRUCT_XrSpaceStorageLocationFilterInfoFB(_) \ _(type) \ _(next) \ _(location) \ +/// Calls your macro with the name of each member of XrSpaceUuidFilterInfoFB, in order. #define XR_LIST_STRUCT_XrSpaceUuidFilterInfoFB(_) \ _(type) \ _(next) \ _(uuidCount) \ _(uuids) \ +/// Calls your macro with the name of each member of XrSpaceComponentFilterInfoFB, in order. #define XR_LIST_STRUCT_XrSpaceComponentFilterInfoFB(_) \ _(type) \ _(next) \ _(componentType) \ +/// Calls your macro with the name of each member of XrSpaceQueryResultFB, in order. #define XR_LIST_STRUCT_XrSpaceQueryResultFB(_) \ _(space) \ _(uuid) \ +/// Calls your macro with the name of each member of XrSpaceQueryResultsFB, in order. #define XR_LIST_STRUCT_XrSpaceQueryResultsFB(_) \ _(type) \ _(next) \ @@ -2506,17 +2801,20 @@ XR_ENUM_STR(XrResult); _(resultCountOutput) \ _(results) \ +/// Calls your macro with the name of each member of XrEventDataSpaceQueryResultsAvailableFB, in order. #define XR_LIST_STRUCT_XrEventDataSpaceQueryResultsAvailableFB(_) \ _(type) \ _(next) \ _(requestId) \ +/// Calls your macro with the name of each member of XrEventDataSpaceQueryCompleteFB, in order. #define XR_LIST_STRUCT_XrEventDataSpaceQueryCompleteFB(_) \ _(type) \ _(next) \ _(requestId) \ _(result) \ +/// Calls your macro with the name of each member of XrSpaceSaveInfoFB, in order. #define XR_LIST_STRUCT_XrSpaceSaveInfoFB(_) \ _(type) \ _(next) \ @@ -2524,12 +2822,14 @@ XR_ENUM_STR(XrResult); _(location) \ _(persistenceMode) \ +/// Calls your macro with the name of each member of XrSpaceEraseInfoFB, in order. #define XR_LIST_STRUCT_XrSpaceEraseInfoFB(_) \ _(type) \ _(next) \ _(space) \ _(location) \ +/// Calls your macro with the name of each member of XrEventDataSpaceSaveCompleteFB, in order. #define XR_LIST_STRUCT_XrEventDataSpaceSaveCompleteFB(_) \ _(type) \ _(next) \ @@ -2539,6 +2839,7 @@ XR_ENUM_STR(XrResult); _(uuid) \ _(location) \ +/// Calls your macro with the name of each member of XrEventDataSpaceEraseCompleteFB, in order. #define XR_LIST_STRUCT_XrEventDataSpaceEraseCompleteFB(_) \ _(type) \ _(next) \ @@ -2548,6 +2849,7 @@ XR_ENUM_STR(XrResult); _(uuid) \ _(location) \ +/// Calls your macro with the name of each member of XrSwapchainImageFoveationVulkanFB, in order. #define XR_LIST_STRUCT_XrSwapchainImageFoveationVulkanFB(_) \ _(type) \ _(next) \ @@ -2555,12 +2857,14 @@ XR_ENUM_STR(XrResult); _(width) \ _(height) \ +/// Calls your macro with the name of each member of XrSwapchainStateAndroidSurfaceDimensionsFB, in order. #define XR_LIST_STRUCT_XrSwapchainStateAndroidSurfaceDimensionsFB(_) \ _(type) \ _(next) \ _(width) \ _(height) \ +/// Calls your macro with the name of each member of XrSwapchainStateSamplerOpenGLESFB, in order. #define XR_LIST_STRUCT_XrSwapchainStateSamplerOpenGLESFB(_) \ _(type) \ _(next) \ @@ -2575,6 +2879,7 @@ XR_ENUM_STR(XrResult); _(maxAnisotropy) \ _(borderColor) \ +/// Calls your macro with the name of each member of XrSwapchainStateSamplerVulkanFB, in order. #define XR_LIST_STRUCT_XrSwapchainStateSamplerVulkanFB(_) \ _(type) \ _(next) \ @@ -2590,6 +2895,7 @@ XR_ENUM_STR(XrResult); _(maxAnisotropy) \ _(borderColor) \ +/// Calls your macro with the name of each member of XrCompositionLayerSpaceWarpInfoFB, in order. #define XR_LIST_STRUCT_XrCompositionLayerSpaceWarpInfoFB(_) \ _(type) \ _(next) \ @@ -2602,26 +2908,31 @@ XR_ENUM_STR(XrResult); _(nearZ) \ _(farZ) \ +/// Calls your macro with the name of each member of XrSystemSpaceWarpPropertiesFB, in order. #define XR_LIST_STRUCT_XrSystemSpaceWarpPropertiesFB(_) \ _(type) \ _(next) \ _(recommendedMotionVectorImageRectWidth) \ _(recommendedMotionVectorImageRectHeight) \ +/// Calls your macro with the name of each member of XrExtent3DfFB, in order. #define XR_LIST_STRUCT_XrExtent3DfFB(_) \ _(width) \ _(height) \ _(depth) \ +/// Calls your macro with the name of each member of XrOffset3DfFB, in order. #define XR_LIST_STRUCT_XrOffset3DfFB(_) \ _(x) \ _(y) \ _(z) \ +/// Calls your macro with the name of each member of XrRect3DfFB, in order. #define XR_LIST_STRUCT_XrRect3DfFB(_) \ _(offset) \ _(extent) \ +/// Calls your macro with the name of each member of XrSemanticLabelsFB, in order. #define XR_LIST_STRUCT_XrSemanticLabelsFB(_) \ _(type) \ _(next) \ @@ -2629,6 +2940,7 @@ XR_ENUM_STR(XrResult); _(bufferCountOutput) \ _(buffer) \ +/// Calls your macro with the name of each member of XrRoomLayoutFB, in order. #define XR_LIST_STRUCT_XrRoomLayoutFB(_) \ _(type) \ _(next) \ @@ -2638,6 +2950,7 @@ XR_ENUM_STR(XrResult); _(wallUuidCountOutput) \ _(wallUuids) \ +/// Calls your macro with the name of each member of XrBoundary2DFB, in order. #define XR_LIST_STRUCT_XrBoundary2DFB(_) \ _(type) \ _(next) \ @@ -2645,11 +2958,13 @@ XR_ENUM_STR(XrResult); _(vertexCountOutput) \ _(vertices) \ +/// Calls your macro with the name of each member of XrDigitalLensControlALMALENCE, in order. #define XR_LIST_STRUCT_XrDigitalLensControlALMALENCE(_) \ _(type) \ _(next) \ _(flags) \ +/// Calls your macro with the name of each member of XrSpaceContainerFB, in order. #define XR_LIST_STRUCT_XrSpaceContainerFB(_) \ _(type) \ _(next) \ @@ -2657,28 +2972,33 @@ XR_ENUM_STR(XrResult); _(uuidCountOutput) \ _(uuids) \ +/// Calls your macro with the name of each member of XrPassthroughKeyboardHandsIntensityFB, in order. #define XR_LIST_STRUCT_XrPassthroughKeyboardHandsIntensityFB(_) \ _(type) \ _(next) \ _(leftHandIntensity) \ _(rightHandIntensity) \ +/// Calls your macro with the name of each member of XrCompositionLayerSettingsFB, in order. #define XR_LIST_STRUCT_XrCompositionLayerSettingsFB(_) \ _(type) \ _(next) \ _(layerFlags) \ +/// Calls your macro with the name of each member of XrVulkanSwapchainCreateInfoMETA, in order. #define XR_LIST_STRUCT_XrVulkanSwapchainCreateInfoMETA(_) \ _(type) \ _(next) \ _(additionalCreateFlags) \ _(additionalUsageFlags) \ +/// Calls your macro with the name of each member of XrPerformanceMetricsStateMETA, in order. #define XR_LIST_STRUCT_XrPerformanceMetricsStateMETA(_) \ _(type) \ _(next) \ _(enabled) \ +/// Calls your macro with the name of each member of XrPerformanceMetricsCounterMETA, in order. #define XR_LIST_STRUCT_XrPerformanceMetricsCounterMETA(_) \ _(type) \ _(next) \ @@ -2687,8 +3007,107 @@ XR_ENUM_STR(XrResult); _(uintValue) \ _(floatValue) \ +/// Calls your macro with the name of each member of XrSystemHeadsetIdPropertiesMETA, in order. +#define XR_LIST_STRUCT_XrSystemHeadsetIdPropertiesMETA(_) \ + _(type) \ + _(next) \ + _(id) \ + +/// Calls your macro with the name of each member of XrPassthroughCreateInfoHTC, in order. +#define XR_LIST_STRUCT_XrPassthroughCreateInfoHTC(_) \ + _(type) \ + _(next) \ + _(form) \ + +/// Calls your macro with the name of each member of XrPassthroughColorHTC, in order. +#define XR_LIST_STRUCT_XrPassthroughColorHTC(_) \ + _(type) \ + _(next) \ + _(alpha) \ + +/// Calls your macro with the name of each member of XrPassthroughMeshTransformInfoHTC, in order. +#define XR_LIST_STRUCT_XrPassthroughMeshTransformInfoHTC(_) \ + _(type) \ + _(next) \ + _(vertexCount) \ + _(vertices) \ + _(indexCount) \ + _(indices) \ + _(baseSpace) \ + _(time) \ + _(pose) \ + _(scale) \ + +/// Calls your macro with the name of each member of XrCompositionLayerPassthroughHTC, in order. +#define XR_LIST_STRUCT_XrCompositionLayerPassthroughHTC(_) \ + _(type) \ + _(next) \ + _(layerFlags) \ + _(space) \ + _(passthrough) \ + _(color) \ + +/// Calls your macro with the name of each member of XrFoveationApplyInfoHTC, in order. +#define XR_LIST_STRUCT_XrFoveationApplyInfoHTC(_) \ + _(type) \ + _(next) \ + _(mode) \ + _(subImageCount) \ + _(subImages) \ + +/// Calls your macro with the name of each member of XrFoveationConfigurationHTC, in order. +#define XR_LIST_STRUCT_XrFoveationConfigurationHTC(_) \ + _(level) \ + _(clearFovDegree) \ + _(focalCenterOffset) \ +/// Calls your macro with the name of each member of XrFoveationDynamicModeInfoHTC, in order. +#define XR_LIST_STRUCT_XrFoveationDynamicModeInfoHTC(_) \ + _(type) \ + _(next) \ + _(dynamicFlags) \ +/// Calls your macro with the name of each member of XrFoveationCustomModeInfoHTC, in order. +#define XR_LIST_STRUCT_XrFoveationCustomModeInfoHTC(_) \ + _(type) \ + _(next) \ + _(configCount) \ + _(configs) \ + +/// Calls your macro with the name of each member of XrActiveActionSetPriorityEXT, in order. +#define XR_LIST_STRUCT_XrActiveActionSetPriorityEXT(_) \ + _(actionSet) \ + _(priorityOverride) \ + +/// Calls your macro with the name of each member of XrActiveActionSetPrioritiesEXT, in order. +#define XR_LIST_STRUCT_XrActiveActionSetPrioritiesEXT(_) \ + _(type) \ + _(next) \ + _(actionSetPriorityCount) \ + _(actionSetPriorities) \ + + + +/// Calls your macro with the structure type name and the XrStructureType constant for +/// each known/available structure type, excluding those unavailable due to preprocessor definitions. +#define XR_LIST_STRUCTURE_TYPES(_) \ + XR_LIST_STRUCTURE_TYPES_CORE(_) \ + XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_D3D11(_) \ + XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_D3D12(_) \ + XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL(_) \ + XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_WAYLAND(_) \ + XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_WIN32(_) \ + XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_XCB(_) \ + XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_XLIB(_) \ + XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_ES(_) \ + XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_ES_XR_USE_PLATFORM_ANDROID(_) \ + XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_VULKAN(_) \ + XR_LIST_STRUCTURE_TYPES_XR_USE_PLATFORM_ANDROID(_) \ + XR_LIST_STRUCTURE_TYPES_XR_USE_PLATFORM_EGL(_) \ + XR_LIST_STRUCTURE_TYPES_XR_USE_PLATFORM_WIN32(_) \ + + +/// Implementation detail of XR_LIST_STRUCTURE_TYPES() - structure types available without any preprocessor definitions #define XR_LIST_STRUCTURE_TYPES_CORE(_) \ _(XrApiLayerProperties, XR_TYPE_API_LAYER_PROPERTIES) \ _(XrExtensionProperties, XR_TYPE_EXTENSION_PROPERTIES) \ @@ -2889,99 +3308,117 @@ XR_ENUM_STR(XrResult); _(XrCompositionLayerSettingsFB, XR_TYPE_COMPOSITION_LAYER_SETTINGS_FB) \ _(XrPerformanceMetricsStateMETA, XR_TYPE_PERFORMANCE_METRICS_STATE_META) \ _(XrPerformanceMetricsCounterMETA, XR_TYPE_PERFORMANCE_METRICS_COUNTER_META) \ - - + _(XrSystemHeadsetIdPropertiesMETA, XR_TYPE_SYSTEM_HEADSET_ID_PROPERTIES_META) \ + _(XrPassthroughCreateInfoHTC, XR_TYPE_PASSTHROUGH_CREATE_INFO_HTC) \ + _(XrPassthroughColorHTC, XR_TYPE_PASSTHROUGH_COLOR_HTC) \ + _(XrPassthroughMeshTransformInfoHTC, XR_TYPE_PASSTHROUGH_MESH_TRANSFORM_INFO_HTC) \ + _(XrCompositionLayerPassthroughHTC, XR_TYPE_COMPOSITION_LAYER_PASSTHROUGH_HTC) \ + _(XrFoveationApplyInfoHTC, XR_TYPE_FOVEATION_APPLY_INFO_HTC) \ + _(XrFoveationDynamicModeInfoHTC, XR_TYPE_FOVEATION_DYNAMIC_MODE_INFO_HTC) \ + _(XrFoveationCustomModeInfoHTC, XR_TYPE_FOVEATION_CUSTOM_MODE_INFO_HTC) \ + _(XrActiveActionSetPrioritiesEXT, XR_TYPE_ACTIVE_ACTION_SET_PRIORITIES_EXT) \ #if defined(XR_USE_GRAPHICS_API_D3D11) +/// Implementation detail of XR_LIST_STRUCTURE_TYPES() +/// Structure types available only when XR_USE_GRAPHICS_API_D3D11 is defined #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_D3D11(_) \ _(XrGraphicsBindingD3D11KHR, XR_TYPE_GRAPHICS_BINDING_D3D11_KHR) \ _(XrSwapchainImageD3D11KHR, XR_TYPE_SWAPCHAIN_IMAGE_D3D11_KHR) \ _(XrGraphicsRequirementsD3D11KHR, XR_TYPE_GRAPHICS_REQUIREMENTS_D3D11_KHR) \ - #else #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_D3D11(_) #endif #if defined(XR_USE_GRAPHICS_API_D3D12) +/// Implementation detail of XR_LIST_STRUCTURE_TYPES() +/// Structure types available only when XR_USE_GRAPHICS_API_D3D12 is defined #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_D3D12(_) \ _(XrGraphicsBindingD3D12KHR, XR_TYPE_GRAPHICS_BINDING_D3D12_KHR) \ _(XrSwapchainImageD3D12KHR, XR_TYPE_SWAPCHAIN_IMAGE_D3D12_KHR) \ _(XrGraphicsRequirementsD3D12KHR, XR_TYPE_GRAPHICS_REQUIREMENTS_D3D12_KHR) \ - #else #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_D3D12(_) #endif #if defined(XR_USE_GRAPHICS_API_OPENGL) +/// Implementation detail of XR_LIST_STRUCTURE_TYPES() +/// Structure types available only when XR_USE_GRAPHICS_API_OPENGL is defined #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL(_) \ _(XrSwapchainImageOpenGLKHR, XR_TYPE_SWAPCHAIN_IMAGE_OPENGL_KHR) \ _(XrGraphicsRequirementsOpenGLKHR, XR_TYPE_GRAPHICS_REQUIREMENTS_OPENGL_KHR) \ - #else #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL(_) #endif #if defined(XR_USE_GRAPHICS_API_OPENGL) && defined(XR_USE_PLATFORM_WAYLAND) +/// Implementation detail of XR_LIST_STRUCTURE_TYPES() +/// Structure types available only when XR_USE_GRAPHICS_API_OPENGL and XR_USE_PLATFORM_WAYLAND are defined #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_WAYLAND(_) \ _(XrGraphicsBindingOpenGLWaylandKHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_WAYLAND_KHR) \ - #else #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_WAYLAND(_) #endif #if defined(XR_USE_GRAPHICS_API_OPENGL) && defined(XR_USE_PLATFORM_WIN32) +/// Implementation detail of XR_LIST_STRUCTURE_TYPES() +/// Structure types available only when XR_USE_GRAPHICS_API_OPENGL and XR_USE_PLATFORM_WIN32 are defined #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_WIN32(_) \ _(XrGraphicsBindingOpenGLWin32KHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_WIN32_KHR) \ - #else #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_WIN32(_) #endif #if defined(XR_USE_GRAPHICS_API_OPENGL) && defined(XR_USE_PLATFORM_XCB) +/// Implementation detail of XR_LIST_STRUCTURE_TYPES() +/// Structure types available only when XR_USE_GRAPHICS_API_OPENGL and XR_USE_PLATFORM_XCB are defined #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_XCB(_) \ _(XrGraphicsBindingOpenGLXcbKHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_XCB_KHR) \ - #else #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_XCB(_) #endif #if defined(XR_USE_GRAPHICS_API_OPENGL) && defined(XR_USE_PLATFORM_XLIB) +/// Implementation detail of XR_LIST_STRUCTURE_TYPES() +/// Structure types available only when XR_USE_GRAPHICS_API_OPENGL and XR_USE_PLATFORM_XLIB are defined #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_XLIB(_) \ _(XrGraphicsBindingOpenGLXlibKHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_XLIB_KHR) \ - #else #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_XLIB(_) #endif #if defined(XR_USE_GRAPHICS_API_OPENGL_ES) +/// Implementation detail of XR_LIST_STRUCTURE_TYPES() +/// Structure types available only when XR_USE_GRAPHICS_API_OPENGL_ES is defined #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_ES(_) \ _(XrSwapchainImageOpenGLESKHR, XR_TYPE_SWAPCHAIN_IMAGE_OPENGL_ES_KHR) \ _(XrGraphicsRequirementsOpenGLESKHR, XR_TYPE_GRAPHICS_REQUIREMENTS_OPENGL_ES_KHR) \ _(XrSwapchainStateSamplerOpenGLESFB, XR_TYPE_SWAPCHAIN_STATE_SAMPLER_OPENGL_ES_FB) \ - #else #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_ES(_) #endif #if defined(XR_USE_GRAPHICS_API_OPENGL_ES) && defined(XR_USE_PLATFORM_ANDROID) +/// Implementation detail of XR_LIST_STRUCTURE_TYPES() +/// Structure types available only when XR_USE_GRAPHICS_API_OPENGL_ES and XR_USE_PLATFORM_ANDROID are defined #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_ES_XR_USE_PLATFORM_ANDROID(_) \ _(XrGraphicsBindingOpenGLESAndroidKHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_ES_ANDROID_KHR) \ - #else #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_ES_XR_USE_PLATFORM_ANDROID(_) #endif #if defined(XR_USE_GRAPHICS_API_VULKAN) +/// Implementation detail of XR_LIST_STRUCTURE_TYPES() +/// Structure types available only when XR_USE_GRAPHICS_API_VULKAN is defined #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_VULKAN(_) \ _(XrVulkanSwapchainFormatListCreateInfoKHR, XR_TYPE_VULKAN_SWAPCHAIN_FORMAT_LIST_CREATE_INFO_KHR) \ _(XrGraphicsBindingVulkanKHR, XR_TYPE_GRAPHICS_BINDING_VULKAN_KHR) \ @@ -2994,58 +3431,47 @@ XR_ENUM_STR(XrResult); _(XrSwapchainStateSamplerVulkanFB, XR_TYPE_SWAPCHAIN_STATE_SAMPLER_VULKAN_FB) \ _(XrVulkanSwapchainCreateInfoMETA, XR_TYPE_VULKAN_SWAPCHAIN_CREATE_INFO_META) \ - #else #define XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_VULKAN(_) #endif #if defined(XR_USE_PLATFORM_ANDROID) +/// Implementation detail of XR_LIST_STRUCTURE_TYPES() +/// Structure types available only when XR_USE_PLATFORM_ANDROID is defined #define XR_LIST_STRUCTURE_TYPES_XR_USE_PLATFORM_ANDROID(_) \ _(XrInstanceCreateInfoAndroidKHR, XR_TYPE_INSTANCE_CREATE_INFO_ANDROID_KHR) \ _(XrLoaderInitInfoAndroidKHR, XR_TYPE_LOADER_INIT_INFO_ANDROID_KHR) \ _(XrAndroidSurfaceSwapchainCreateInfoFB, XR_TYPE_ANDROID_SURFACE_SWAPCHAIN_CREATE_INFO_FB) \ _(XrSwapchainStateAndroidSurfaceDimensionsFB, XR_TYPE_SWAPCHAIN_STATE_ANDROID_SURFACE_DIMENSIONS_FB) \ - #else #define XR_LIST_STRUCTURE_TYPES_XR_USE_PLATFORM_ANDROID(_) #endif #if defined(XR_USE_PLATFORM_EGL) +/// Implementation detail of XR_LIST_STRUCTURE_TYPES() +/// Structure types available only when XR_USE_PLATFORM_EGL is defined #define XR_LIST_STRUCTURE_TYPES_XR_USE_PLATFORM_EGL(_) \ _(XrGraphicsBindingEGLMNDX, XR_TYPE_GRAPHICS_BINDING_EGL_MNDX) \ - #else #define XR_LIST_STRUCTURE_TYPES_XR_USE_PLATFORM_EGL(_) #endif #if defined(XR_USE_PLATFORM_WIN32) +/// Implementation detail of XR_LIST_STRUCTURE_TYPES() +/// Structure types available only when XR_USE_PLATFORM_WIN32 is defined #define XR_LIST_STRUCTURE_TYPES_XR_USE_PLATFORM_WIN32(_) \ _(XrHolographicWindowAttachmentMSFT, XR_TYPE_HOLOGRAPHIC_WINDOW_ATTACHMENT_MSFT) \ - #else #define XR_LIST_STRUCTURE_TYPES_XR_USE_PLATFORM_WIN32(_) #endif -#define XR_LIST_STRUCTURE_TYPES(_) \ - XR_LIST_STRUCTURE_TYPES_CORE(_) \ - XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_D3D11(_) \ - XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_D3D12(_) \ - XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL(_) \ - XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_WAYLAND(_) \ - XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_WIN32(_) \ - XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_XCB(_) \ - XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_XLIB(_) \ - XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_ES(_) \ - XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_ES_XR_USE_PLATFORM_ANDROID(_) \ - XR_LIST_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_VULKAN(_) \ - XR_LIST_STRUCTURE_TYPES_XR_USE_PLATFORM_ANDROID(_) \ - XR_LIST_STRUCTURE_TYPES_XR_USE_PLATFORM_EGL(_) \ - XR_LIST_STRUCTURE_TYPES_XR_USE_PLATFORM_WIN32(_) \ +/// Calls your macro with the name and extension number of all known +/// extensions in this version of the spec. #define XR_LIST_EXTENSIONS(_) \ _(XR_KHR_android_thread_settings, 4) \ _(XR_KHR_android_surface_swapchain, 5) \ @@ -3151,7 +3577,11 @@ XR_ENUM_STR(XrResult); _(XR_FB_composition_layer_settings, 205) \ _(XR_META_vulkan_swapchain_create_info, 228) \ _(XR_META_performance_metrics, 233) \ + _(XR_META_headset_id, 246) \ _(XR_EXT_uuid, 300) \ + _(XR_HTC_passthrough, 318) \ + _(XR_HTC_foveation, 319) \ + _(XR_EXT_active_action_set_priority, 374) \ #endif diff --git a/thirdparty/openxr/include/openxr/openxr_reflection_parent_structs.h b/thirdparty/openxr/include/openxr/openxr_reflection_parent_structs.h new file mode 100644 index 0000000000..19b0e1c3f6 --- /dev/null +++ b/thirdparty/openxr/include/openxr/openxr_reflection_parent_structs.h @@ -0,0 +1,261 @@ +#ifndef OPENXR_REFLECTION_PARENT_STRUCTS_H_ +#define OPENXR_REFLECTION_PARENT_STRUCTS_H_ 1 + +/* +** Copyright (c) 2017-2022, The Khronos Group Inc. +** +** SPDX-License-Identifier: Apache-2.0 OR MIT +*/ + +/* +** This header is generated from the Khronos OpenXR XML API Registry. +** +*/ + +#include "openxr.h" + +/* +This file contains expansion macros (X Macros) for OpenXR structures that have a parent type. +*/ + + +/// Like XR_LIST_ALL_STRUCTURE_TYPES, but only includes types whose parent struct type is XrCompositionLayerBaseHeader +#define XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrCompositionLayerBaseHeader(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrCompositionLayerBaseHeader_CORE(_avail, _unavail) \ + + +// Implementation detail of XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrCompositionLayerBaseHeader() +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrCompositionLayerBaseHeader_CORE(_avail, _unavail) \ + _avail(XrCompositionLayerProjection, XR_TYPE_COMPOSITION_LAYER_PROJECTION) \ + _avail(XrCompositionLayerQuad, XR_TYPE_COMPOSITION_LAYER_QUAD) \ + _avail(XrCompositionLayerCubeKHR, XR_TYPE_COMPOSITION_LAYER_CUBE_KHR) \ + _avail(XrCompositionLayerCylinderKHR, XR_TYPE_COMPOSITION_LAYER_CYLINDER_KHR) \ + _avail(XrCompositionLayerEquirectKHR, XR_TYPE_COMPOSITION_LAYER_EQUIRECT_KHR) \ + _avail(XrCompositionLayerEquirect2KHR, XR_TYPE_COMPOSITION_LAYER_EQUIRECT2_KHR) \ + _avail(XrCompositionLayerPassthroughHTC, XR_TYPE_COMPOSITION_LAYER_PASSTHROUGH_HTC) \ + + + + + +/// Like XR_LIST_ALL_STRUCTURE_TYPES, but only includes types whose parent struct type is XrEventDataBaseHeader +#define XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrEventDataBaseHeader(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrEventDataBaseHeader_CORE(_avail, _unavail) \ + + +// Implementation detail of XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrEventDataBaseHeader() +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrEventDataBaseHeader_CORE(_avail, _unavail) \ + _avail(XrEventDataEventsLost, XR_TYPE_EVENT_DATA_EVENTS_LOST) \ + _avail(XrEventDataInstanceLossPending, XR_TYPE_EVENT_DATA_INSTANCE_LOSS_PENDING) \ + _avail(XrEventDataSessionStateChanged, XR_TYPE_EVENT_DATA_SESSION_STATE_CHANGED) \ + _avail(XrEventDataReferenceSpaceChangePending, XR_TYPE_EVENT_DATA_REFERENCE_SPACE_CHANGE_PENDING) \ + _avail(XrEventDataInteractionProfileChanged, XR_TYPE_EVENT_DATA_INTERACTION_PROFILE_CHANGED) \ + _avail(XrEventDataVisibilityMaskChangedKHR, XR_TYPE_EVENT_DATA_VISIBILITY_MASK_CHANGED_KHR) \ + _avail(XrEventDataPerfSettingsEXT, XR_TYPE_EVENT_DATA_PERF_SETTINGS_EXT) \ + _avail(XrEventDataMainSessionVisibilityChangedEXTX, XR_TYPE_EVENT_DATA_MAIN_SESSION_VISIBILITY_CHANGED_EXTX) \ + _avail(XrEventDataDisplayRefreshRateChangedFB, XR_TYPE_EVENT_DATA_DISPLAY_REFRESH_RATE_CHANGED_FB) \ + _avail(XrEventDataViveTrackerConnectedHTCX, XR_TYPE_EVENT_DATA_VIVE_TRACKER_CONNECTED_HTCX) \ + _avail(XrEventDataSpatialAnchorCreateCompleteFB, XR_TYPE_EVENT_DATA_SPATIAL_ANCHOR_CREATE_COMPLETE_FB) \ + _avail(XrEventDataSpaceSetStatusCompleteFB, XR_TYPE_EVENT_DATA_SPACE_SET_STATUS_COMPLETE_FB) \ + _avail(XrEventDataMarkerTrackingUpdateVARJO, XR_TYPE_EVENT_DATA_MARKER_TRACKING_UPDATE_VARJO) \ + _avail(XrEventDataSpaceQueryResultsAvailableFB, XR_TYPE_EVENT_DATA_SPACE_QUERY_RESULTS_AVAILABLE_FB) \ + _avail(XrEventDataSpaceQueryCompleteFB, XR_TYPE_EVENT_DATA_SPACE_QUERY_COMPLETE_FB) \ + _avail(XrEventDataSpaceSaveCompleteFB, XR_TYPE_EVENT_DATA_SPACE_SAVE_COMPLETE_FB) \ + _avail(XrEventDataSpaceEraseCompleteFB, XR_TYPE_EVENT_DATA_SPACE_ERASE_COMPLETE_FB) \ + + + + + +/// Like XR_LIST_ALL_STRUCTURE_TYPES, but only includes types whose parent struct type is XrHapticBaseHeader +#define XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrHapticBaseHeader(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrHapticBaseHeader_CORE(_avail, _unavail) \ + + +// Implementation detail of XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrHapticBaseHeader() +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrHapticBaseHeader_CORE(_avail, _unavail) \ + _avail(XrHapticVibration, XR_TYPE_HAPTIC_VIBRATION) \ + + + + + +/// Like XR_LIST_ALL_STRUCTURE_TYPES, but only includes types whose parent struct type is XrSwapchainImageBaseHeader +#define XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_CORE(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_D3D11(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_D3D12(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_OPENGL(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_OPENGL_ES(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_VULKAN(_avail, _unavail) \ + + +// Implementation detail of XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader() +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_CORE(_avail, _unavail) \ + + +#if defined(XR_USE_GRAPHICS_API_D3D11) +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_D3D11(_avail, _unavail) \ + _avail(XrSwapchainImageD3D11KHR, XR_TYPE_SWAPCHAIN_IMAGE_D3D11_KHR) \ + +#else +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_D3D11(_avail, _unavail) \ + _unavail(XrSwapchainImageD3D11KHR, XR_TYPE_SWAPCHAIN_IMAGE_D3D11_KHR) \ + +#endif + +#if defined(XR_USE_GRAPHICS_API_D3D12) +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_D3D12(_avail, _unavail) \ + _avail(XrSwapchainImageD3D12KHR, XR_TYPE_SWAPCHAIN_IMAGE_D3D12_KHR) \ + +#else +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_D3D12(_avail, _unavail) \ + _unavail(XrSwapchainImageD3D12KHR, XR_TYPE_SWAPCHAIN_IMAGE_D3D12_KHR) \ + +#endif + +#if defined(XR_USE_GRAPHICS_API_OPENGL) +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_OPENGL(_avail, _unavail) \ + _avail(XrSwapchainImageOpenGLKHR, XR_TYPE_SWAPCHAIN_IMAGE_OPENGL_KHR) \ + +#else +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_OPENGL(_avail, _unavail) \ + _unavail(XrSwapchainImageOpenGLKHR, XR_TYPE_SWAPCHAIN_IMAGE_OPENGL_KHR) \ + +#endif + +#if defined(XR_USE_GRAPHICS_API_OPENGL_ES) +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_OPENGL_ES(_avail, _unavail) \ + _avail(XrSwapchainImageOpenGLESKHR, XR_TYPE_SWAPCHAIN_IMAGE_OPENGL_ES_KHR) \ + +#else +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_OPENGL_ES(_avail, _unavail) \ + _unavail(XrSwapchainImageOpenGLESKHR, XR_TYPE_SWAPCHAIN_IMAGE_OPENGL_ES_KHR) \ + +#endif + +#if defined(XR_USE_GRAPHICS_API_VULKAN) +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_VULKAN(_avail, _unavail) \ + _avail(XrSwapchainImageVulkanKHR, XR_TYPE_SWAPCHAIN_IMAGE_VULKAN_KHR) \ + +#else +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainImageBaseHeader_XR_USE_GRAPHICS_API_VULKAN(_avail, _unavail) \ + _unavail(XrSwapchainImageVulkanKHR, XR_TYPE_SWAPCHAIN_IMAGE_VULKAN_KHR) \ + +#endif + + + + +/// Like XR_LIST_ALL_STRUCTURE_TYPES, but only includes types whose parent struct type is XrLoaderInitInfoBaseHeaderKHR +#define XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrLoaderInitInfoBaseHeaderKHR(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrLoaderInitInfoBaseHeaderKHR_CORE(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrLoaderInitInfoBaseHeaderKHR_XR_USE_PLATFORM_ANDROID(_avail, _unavail) \ + + +// Implementation detail of XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrLoaderInitInfoBaseHeaderKHR() +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrLoaderInitInfoBaseHeaderKHR_CORE(_avail, _unavail) \ + + +#if defined(XR_USE_PLATFORM_ANDROID) +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrLoaderInitInfoBaseHeaderKHR_XR_USE_PLATFORM_ANDROID(_avail, _unavail) \ + _avail(XrLoaderInitInfoAndroidKHR, XR_TYPE_LOADER_INIT_INFO_ANDROID_KHR) \ + +#else +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrLoaderInitInfoBaseHeaderKHR_XR_USE_PLATFORM_ANDROID(_avail, _unavail) \ + _unavail(XrLoaderInitInfoAndroidKHR, XR_TYPE_LOADER_INIT_INFO_ANDROID_KHR) \ + +#endif + + + + +/// Like XR_LIST_ALL_STRUCTURE_TYPES, but only includes types whose parent struct type is XrBindingModificationBaseHeaderKHR +#define XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrBindingModificationBaseHeaderKHR(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrBindingModificationBaseHeaderKHR_CORE(_avail, _unavail) \ + + +// Implementation detail of XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrBindingModificationBaseHeaderKHR() +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrBindingModificationBaseHeaderKHR_CORE(_avail, _unavail) \ + _avail(XrInteractionProfileDpadBindingEXT, XR_TYPE_INTERACTION_PROFILE_DPAD_BINDING_EXT) \ + _avail(XrInteractionProfileAnalogThresholdVALVE, XR_TYPE_INTERACTION_PROFILE_ANALOG_THRESHOLD_VALVE) \ + + + + + +/// Like XR_LIST_ALL_STRUCTURE_TYPES, but only includes types whose parent struct type is XrSwapchainStateBaseHeaderFB +#define XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainStateBaseHeaderFB(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainStateBaseHeaderFB_CORE(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainStateBaseHeaderFB_XR_USE_GRAPHICS_API_OPENGL_ES(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainStateBaseHeaderFB_XR_USE_GRAPHICS_API_VULKAN(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainStateBaseHeaderFB_XR_USE_PLATFORM_ANDROID(_avail, _unavail) \ + + +// Implementation detail of XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainStateBaseHeaderFB() +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainStateBaseHeaderFB_CORE(_avail, _unavail) \ + _avail(XrSwapchainStateFoveationFB, XR_TYPE_SWAPCHAIN_STATE_FOVEATION_FB) \ + + +#if defined(XR_USE_GRAPHICS_API_OPENGL_ES) +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainStateBaseHeaderFB_XR_USE_GRAPHICS_API_OPENGL_ES(_avail, _unavail) \ + _avail(XrSwapchainStateSamplerOpenGLESFB, XR_TYPE_SWAPCHAIN_STATE_SAMPLER_OPENGL_ES_FB) \ + +#else +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainStateBaseHeaderFB_XR_USE_GRAPHICS_API_OPENGL_ES(_avail, _unavail) \ + _unavail(XrSwapchainStateSamplerOpenGLESFB, XR_TYPE_SWAPCHAIN_STATE_SAMPLER_OPENGL_ES_FB) \ + +#endif + +#if defined(XR_USE_GRAPHICS_API_VULKAN) +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainStateBaseHeaderFB_XR_USE_GRAPHICS_API_VULKAN(_avail, _unavail) \ + _avail(XrSwapchainStateSamplerVulkanFB, XR_TYPE_SWAPCHAIN_STATE_SAMPLER_VULKAN_FB) \ + +#else +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainStateBaseHeaderFB_XR_USE_GRAPHICS_API_VULKAN(_avail, _unavail) \ + _unavail(XrSwapchainStateSamplerVulkanFB, XR_TYPE_SWAPCHAIN_STATE_SAMPLER_VULKAN_FB) \ + +#endif + +#if defined(XR_USE_PLATFORM_ANDROID) +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainStateBaseHeaderFB_XR_USE_PLATFORM_ANDROID(_avail, _unavail) \ + _avail(XrSwapchainStateAndroidSurfaceDimensionsFB, XR_TYPE_SWAPCHAIN_STATE_ANDROID_SURFACE_DIMENSIONS_FB) \ + +#else +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSwapchainStateBaseHeaderFB_XR_USE_PLATFORM_ANDROID(_avail, _unavail) \ + _unavail(XrSwapchainStateAndroidSurfaceDimensionsFB, XR_TYPE_SWAPCHAIN_STATE_ANDROID_SURFACE_DIMENSIONS_FB) \ + +#endif + + + + +/// Like XR_LIST_ALL_STRUCTURE_TYPES, but only includes types whose parent struct type is XrSpaceQueryInfoBaseHeaderFB +#define XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSpaceQueryInfoBaseHeaderFB(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSpaceQueryInfoBaseHeaderFB_CORE(_avail, _unavail) \ + + +// Implementation detail of XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSpaceQueryInfoBaseHeaderFB() +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSpaceQueryInfoBaseHeaderFB_CORE(_avail, _unavail) \ + _avail(XrSpaceQueryInfoFB, XR_TYPE_SPACE_QUERY_INFO_FB) \ + + + + + +/// Like XR_LIST_ALL_STRUCTURE_TYPES, but only includes types whose parent struct type is XrSpaceFilterInfoBaseHeaderFB +#define XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSpaceFilterInfoBaseHeaderFB(_avail, _unavail) \ + _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSpaceFilterInfoBaseHeaderFB_CORE(_avail, _unavail) \ + + +// Implementation detail of XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSpaceFilterInfoBaseHeaderFB() +#define _impl_XR_LIST_ALL_CHILD_STRUCTURE_TYPES_XrSpaceFilterInfoBaseHeaderFB_CORE(_avail, _unavail) \ + _avail(XrSpaceUuidFilterInfoFB, XR_TYPE_SPACE_UUID_FILTER_INFO_FB) \ + _avail(XrSpaceComponentFilterInfoFB, XR_TYPE_SPACE_COMPONENT_FILTER_INFO_FB) \ + + + + + +#endif + diff --git a/thirdparty/openxr/include/openxr/openxr_reflection_structs.h b/thirdparty/openxr/include/openxr/openxr_reflection_structs.h new file mode 100644 index 0000000000..300bbbad6d --- /dev/null +++ b/thirdparty/openxr/include/openxr/openxr_reflection_structs.h @@ -0,0 +1,427 @@ +#ifndef OPENXR_REFLECTION_STRUCTS_H_ +#define OPENXR_REFLECTION_STRUCTS_H_ 1 + +/* +** Copyright (c) 2017-2022, The Khronos Group Inc. +** +** SPDX-License-Identifier: Apache-2.0 OR MIT +*/ + +/* +** This header is generated from the Khronos OpenXR XML API Registry. +** +*/ + +#include "openxr.h" + +/* +This file contains expansion macros (X Macros) for OpenXR structures. +*/ + + + +/// Calls one of your macros with the structure type name and the XrStructureType constant for +/// each known structure type. The first macro (_avail) is called for those that are available, +/// while the second macro (_unavail) is called for those unavailable due to preprocessor definitions. +#define XR_LIST_ALL_STRUCTURE_TYPES(_avail, _unavail) \ + _impl_XR_LIST_ALL_STRUCTURE_TYPES_CORE(_avail, _unavail) \ + _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_D3D11(_avail, _unavail) \ + _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_D3D12(_avail, _unavail) \ + _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL(_avail, _unavail) \ + _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_WAYLAND(_avail, _unavail) \ + _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_WIN32(_avail, _unavail) \ + _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_XCB(_avail, _unavail) \ + _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_XLIB(_avail, _unavail) \ + _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_ES(_avail, _unavail) \ + _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_ES_XR_USE_PLATFORM_ANDROID(_avail, _unavail) \ + _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_VULKAN(_avail, _unavail) \ + _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_PLATFORM_ANDROID(_avail, _unavail) \ + _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_PLATFORM_EGL(_avail, _unavail) \ + _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_PLATFORM_WIN32(_avail, _unavail) \ + + +// Implementation detail of XR_LIST_ALL_STRUCTURE_TYPES() +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_CORE(_avail, _unavail) \ + _avail(XrApiLayerProperties, XR_TYPE_API_LAYER_PROPERTIES) \ + _avail(XrExtensionProperties, XR_TYPE_EXTENSION_PROPERTIES) \ + _avail(XrInstanceCreateInfo, XR_TYPE_INSTANCE_CREATE_INFO) \ + _avail(XrInstanceProperties, XR_TYPE_INSTANCE_PROPERTIES) \ + _avail(XrEventDataBuffer, XR_TYPE_EVENT_DATA_BUFFER) \ + _avail(XrSystemGetInfo, XR_TYPE_SYSTEM_GET_INFO) \ + _avail(XrSystemProperties, XR_TYPE_SYSTEM_PROPERTIES) \ + _avail(XrSessionCreateInfo, XR_TYPE_SESSION_CREATE_INFO) \ + _avail(XrSpaceVelocity, XR_TYPE_SPACE_VELOCITY) \ + _avail(XrReferenceSpaceCreateInfo, XR_TYPE_REFERENCE_SPACE_CREATE_INFO) \ + _avail(XrActionSpaceCreateInfo, XR_TYPE_ACTION_SPACE_CREATE_INFO) \ + _avail(XrSpaceLocation, XR_TYPE_SPACE_LOCATION) \ + _avail(XrViewConfigurationProperties, XR_TYPE_VIEW_CONFIGURATION_PROPERTIES) \ + _avail(XrViewConfigurationView, XR_TYPE_VIEW_CONFIGURATION_VIEW) \ + _avail(XrSwapchainCreateInfo, XR_TYPE_SWAPCHAIN_CREATE_INFO) \ + _avail(XrSwapchainImageAcquireInfo, XR_TYPE_SWAPCHAIN_IMAGE_ACQUIRE_INFO) \ + _avail(XrSwapchainImageWaitInfo, XR_TYPE_SWAPCHAIN_IMAGE_WAIT_INFO) \ + _avail(XrSwapchainImageReleaseInfo, XR_TYPE_SWAPCHAIN_IMAGE_RELEASE_INFO) \ + _avail(XrSessionBeginInfo, XR_TYPE_SESSION_BEGIN_INFO) \ + _avail(XrFrameWaitInfo, XR_TYPE_FRAME_WAIT_INFO) \ + _avail(XrFrameState, XR_TYPE_FRAME_STATE) \ + _avail(XrFrameBeginInfo, XR_TYPE_FRAME_BEGIN_INFO) \ + _avail(XrFrameEndInfo, XR_TYPE_FRAME_END_INFO) \ + _avail(XrViewLocateInfo, XR_TYPE_VIEW_LOCATE_INFO) \ + _avail(XrViewState, XR_TYPE_VIEW_STATE) \ + _avail(XrView, XR_TYPE_VIEW) \ + _avail(XrActionSetCreateInfo, XR_TYPE_ACTION_SET_CREATE_INFO) \ + _avail(XrActionCreateInfo, XR_TYPE_ACTION_CREATE_INFO) \ + _avail(XrInteractionProfileSuggestedBinding, XR_TYPE_INTERACTION_PROFILE_SUGGESTED_BINDING) \ + _avail(XrSessionActionSetsAttachInfo, XR_TYPE_SESSION_ACTION_SETS_ATTACH_INFO) \ + _avail(XrInteractionProfileState, XR_TYPE_INTERACTION_PROFILE_STATE) \ + _avail(XrActionStateGetInfo, XR_TYPE_ACTION_STATE_GET_INFO) \ + _avail(XrActionStateBoolean, XR_TYPE_ACTION_STATE_BOOLEAN) \ + _avail(XrActionStateFloat, XR_TYPE_ACTION_STATE_FLOAT) \ + _avail(XrActionStateVector2f, XR_TYPE_ACTION_STATE_VECTOR2F) \ + _avail(XrActionStatePose, XR_TYPE_ACTION_STATE_POSE) \ + _avail(XrActionsSyncInfo, XR_TYPE_ACTIONS_SYNC_INFO) \ + _avail(XrBoundSourcesForActionEnumerateInfo, XR_TYPE_BOUND_SOURCES_FOR_ACTION_ENUMERATE_INFO) \ + _avail(XrInputSourceLocalizedNameGetInfo, XR_TYPE_INPUT_SOURCE_LOCALIZED_NAME_GET_INFO) \ + _avail(XrHapticActionInfo, XR_TYPE_HAPTIC_ACTION_INFO) \ + _avail(XrCompositionLayerProjectionView, XR_TYPE_COMPOSITION_LAYER_PROJECTION_VIEW) \ + _avail(XrCompositionLayerProjection, XR_TYPE_COMPOSITION_LAYER_PROJECTION) \ + _avail(XrCompositionLayerQuad, XR_TYPE_COMPOSITION_LAYER_QUAD) \ + _avail(XrEventDataEventsLost, XR_TYPE_EVENT_DATA_EVENTS_LOST) \ + _avail(XrEventDataInstanceLossPending, XR_TYPE_EVENT_DATA_INSTANCE_LOSS_PENDING) \ + _avail(XrEventDataSessionStateChanged, XR_TYPE_EVENT_DATA_SESSION_STATE_CHANGED) \ + _avail(XrEventDataReferenceSpaceChangePending, XR_TYPE_EVENT_DATA_REFERENCE_SPACE_CHANGE_PENDING) \ + _avail(XrEventDataInteractionProfileChanged, XR_TYPE_EVENT_DATA_INTERACTION_PROFILE_CHANGED) \ + _avail(XrHapticVibration, XR_TYPE_HAPTIC_VIBRATION) \ + _avail(XrCompositionLayerCubeKHR, XR_TYPE_COMPOSITION_LAYER_CUBE_KHR) \ + _avail(XrCompositionLayerDepthInfoKHR, XR_TYPE_COMPOSITION_LAYER_DEPTH_INFO_KHR) \ + _avail(XrCompositionLayerCylinderKHR, XR_TYPE_COMPOSITION_LAYER_CYLINDER_KHR) \ + _avail(XrCompositionLayerEquirectKHR, XR_TYPE_COMPOSITION_LAYER_EQUIRECT_KHR) \ + _avail(XrVisibilityMaskKHR, XR_TYPE_VISIBILITY_MASK_KHR) \ + _avail(XrEventDataVisibilityMaskChangedKHR, XR_TYPE_EVENT_DATA_VISIBILITY_MASK_CHANGED_KHR) \ + _avail(XrCompositionLayerColorScaleBiasKHR, XR_TYPE_COMPOSITION_LAYER_COLOR_SCALE_BIAS_KHR) \ + _avail(XrCompositionLayerEquirect2KHR, XR_TYPE_COMPOSITION_LAYER_EQUIRECT2_KHR) \ + _avail(XrBindingModificationsKHR, XR_TYPE_BINDING_MODIFICATIONS_KHR) \ + _avail(XrEventDataPerfSettingsEXT, XR_TYPE_EVENT_DATA_PERF_SETTINGS_EXT) \ + _avail(XrDebugUtilsObjectNameInfoEXT, XR_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT) \ + _avail(XrDebugUtilsLabelEXT, XR_TYPE_DEBUG_UTILS_LABEL_EXT) \ + _avail(XrDebugUtilsMessengerCallbackDataEXT, XR_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT) \ + _avail(XrDebugUtilsMessengerCreateInfoEXT, XR_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT) \ + _avail(XrSystemEyeGazeInteractionPropertiesEXT, XR_TYPE_SYSTEM_EYE_GAZE_INTERACTION_PROPERTIES_EXT) \ + _avail(XrEyeGazeSampleTimeEXT, XR_TYPE_EYE_GAZE_SAMPLE_TIME_EXT) \ + _avail(XrSessionCreateInfoOverlayEXTX, XR_TYPE_SESSION_CREATE_INFO_OVERLAY_EXTX) \ + _avail(XrEventDataMainSessionVisibilityChangedEXTX, XR_TYPE_EVENT_DATA_MAIN_SESSION_VISIBILITY_CHANGED_EXTX) \ + _avail(XrSpatialAnchorCreateInfoMSFT, XR_TYPE_SPATIAL_ANCHOR_CREATE_INFO_MSFT) \ + _avail(XrSpatialAnchorSpaceCreateInfoMSFT, XR_TYPE_SPATIAL_ANCHOR_SPACE_CREATE_INFO_MSFT) \ + _avail(XrCompositionLayerImageLayoutFB, XR_TYPE_COMPOSITION_LAYER_IMAGE_LAYOUT_FB) \ + _avail(XrCompositionLayerAlphaBlendFB, XR_TYPE_COMPOSITION_LAYER_ALPHA_BLEND_FB) \ + _avail(XrViewConfigurationDepthRangeEXT, XR_TYPE_VIEW_CONFIGURATION_DEPTH_RANGE_EXT) \ + _avail(XrSpatialGraphNodeSpaceCreateInfoMSFT, XR_TYPE_SPATIAL_GRAPH_NODE_SPACE_CREATE_INFO_MSFT) \ + _avail(XrSpatialGraphStaticNodeBindingCreateInfoMSFT, XR_TYPE_SPATIAL_GRAPH_STATIC_NODE_BINDING_CREATE_INFO_MSFT) \ + _avail(XrSpatialGraphNodeBindingPropertiesGetInfoMSFT, XR_TYPE_SPATIAL_GRAPH_NODE_BINDING_PROPERTIES_GET_INFO_MSFT) \ + _avail(XrSpatialGraphNodeBindingPropertiesMSFT, XR_TYPE_SPATIAL_GRAPH_NODE_BINDING_PROPERTIES_MSFT) \ + _avail(XrSystemHandTrackingPropertiesEXT, XR_TYPE_SYSTEM_HAND_TRACKING_PROPERTIES_EXT) \ + _avail(XrHandTrackerCreateInfoEXT, XR_TYPE_HAND_TRACKER_CREATE_INFO_EXT) \ + _avail(XrHandJointsLocateInfoEXT, XR_TYPE_HAND_JOINTS_LOCATE_INFO_EXT) \ + _avail(XrHandJointLocationsEXT, XR_TYPE_HAND_JOINT_LOCATIONS_EXT) \ + _avail(XrHandJointVelocitiesEXT, XR_TYPE_HAND_JOINT_VELOCITIES_EXT) \ + _avail(XrSystemHandTrackingMeshPropertiesMSFT, XR_TYPE_SYSTEM_HAND_TRACKING_MESH_PROPERTIES_MSFT) \ + _avail(XrHandMeshSpaceCreateInfoMSFT, XR_TYPE_HAND_MESH_SPACE_CREATE_INFO_MSFT) \ + _avail(XrHandMeshUpdateInfoMSFT, XR_TYPE_HAND_MESH_UPDATE_INFO_MSFT) \ + _avail(XrHandMeshMSFT, XR_TYPE_HAND_MESH_MSFT) \ + _avail(XrHandPoseTypeInfoMSFT, XR_TYPE_HAND_POSE_TYPE_INFO_MSFT) \ + _avail(XrSecondaryViewConfigurationSessionBeginInfoMSFT, XR_TYPE_SECONDARY_VIEW_CONFIGURATION_SESSION_BEGIN_INFO_MSFT) \ + _avail(XrSecondaryViewConfigurationStateMSFT, XR_TYPE_SECONDARY_VIEW_CONFIGURATION_STATE_MSFT) \ + _avail(XrSecondaryViewConfigurationFrameStateMSFT, XR_TYPE_SECONDARY_VIEW_CONFIGURATION_FRAME_STATE_MSFT) \ + _avail(XrSecondaryViewConfigurationLayerInfoMSFT, XR_TYPE_SECONDARY_VIEW_CONFIGURATION_LAYER_INFO_MSFT) \ + _avail(XrSecondaryViewConfigurationFrameEndInfoMSFT, XR_TYPE_SECONDARY_VIEW_CONFIGURATION_FRAME_END_INFO_MSFT) \ + _avail(XrSecondaryViewConfigurationSwapchainCreateInfoMSFT, XR_TYPE_SECONDARY_VIEW_CONFIGURATION_SWAPCHAIN_CREATE_INFO_MSFT) \ + _avail(XrControllerModelKeyStateMSFT, XR_TYPE_CONTROLLER_MODEL_KEY_STATE_MSFT) \ + _avail(XrControllerModelNodePropertiesMSFT, XR_TYPE_CONTROLLER_MODEL_NODE_PROPERTIES_MSFT) \ + _avail(XrControllerModelPropertiesMSFT, XR_TYPE_CONTROLLER_MODEL_PROPERTIES_MSFT) \ + _avail(XrControllerModelNodeStateMSFT, XR_TYPE_CONTROLLER_MODEL_NODE_STATE_MSFT) \ + _avail(XrControllerModelStateMSFT, XR_TYPE_CONTROLLER_MODEL_STATE_MSFT) \ + _avail(XrViewConfigurationViewFovEPIC, XR_TYPE_VIEW_CONFIGURATION_VIEW_FOV_EPIC) \ + _avail(XrCompositionLayerReprojectionInfoMSFT, XR_TYPE_COMPOSITION_LAYER_REPROJECTION_INFO_MSFT) \ + _avail(XrCompositionLayerReprojectionPlaneOverrideMSFT, XR_TYPE_COMPOSITION_LAYER_REPROJECTION_PLANE_OVERRIDE_MSFT) \ + _avail(XrCompositionLayerSecureContentFB, XR_TYPE_COMPOSITION_LAYER_SECURE_CONTENT_FB) \ + _avail(XrInteractionProfileDpadBindingEXT, XR_TYPE_INTERACTION_PROFILE_DPAD_BINDING_EXT) \ + _avail(XrInteractionProfileAnalogThresholdVALVE, XR_TYPE_INTERACTION_PROFILE_ANALOG_THRESHOLD_VALVE) \ + _avail(XrHandJointsMotionRangeInfoEXT, XR_TYPE_HAND_JOINTS_MOTION_RANGE_INFO_EXT) \ + _avail(XrSceneObserverCreateInfoMSFT, XR_TYPE_SCENE_OBSERVER_CREATE_INFO_MSFT) \ + _avail(XrSceneCreateInfoMSFT, XR_TYPE_SCENE_CREATE_INFO_MSFT) \ + _avail(XrNewSceneComputeInfoMSFT, XR_TYPE_NEW_SCENE_COMPUTE_INFO_MSFT) \ + _avail(XrVisualMeshComputeLodInfoMSFT, XR_TYPE_VISUAL_MESH_COMPUTE_LOD_INFO_MSFT) \ + _avail(XrSceneComponentsMSFT, XR_TYPE_SCENE_COMPONENTS_MSFT) \ + _avail(XrSceneComponentsGetInfoMSFT, XR_TYPE_SCENE_COMPONENTS_GET_INFO_MSFT) \ + _avail(XrSceneComponentLocationsMSFT, XR_TYPE_SCENE_COMPONENT_LOCATIONS_MSFT) \ + _avail(XrSceneComponentsLocateInfoMSFT, XR_TYPE_SCENE_COMPONENTS_LOCATE_INFO_MSFT) \ + _avail(XrSceneObjectsMSFT, XR_TYPE_SCENE_OBJECTS_MSFT) \ + _avail(XrSceneComponentParentFilterInfoMSFT, XR_TYPE_SCENE_COMPONENT_PARENT_FILTER_INFO_MSFT) \ + _avail(XrSceneObjectTypesFilterInfoMSFT, XR_TYPE_SCENE_OBJECT_TYPES_FILTER_INFO_MSFT) \ + _avail(XrScenePlanesMSFT, XR_TYPE_SCENE_PLANES_MSFT) \ + _avail(XrScenePlaneAlignmentFilterInfoMSFT, XR_TYPE_SCENE_PLANE_ALIGNMENT_FILTER_INFO_MSFT) \ + _avail(XrSceneMeshesMSFT, XR_TYPE_SCENE_MESHES_MSFT) \ + _avail(XrSceneMeshBuffersGetInfoMSFT, XR_TYPE_SCENE_MESH_BUFFERS_GET_INFO_MSFT) \ + _avail(XrSceneMeshBuffersMSFT, XR_TYPE_SCENE_MESH_BUFFERS_MSFT) \ + _avail(XrSceneMeshVertexBufferMSFT, XR_TYPE_SCENE_MESH_VERTEX_BUFFER_MSFT) \ + _avail(XrSceneMeshIndicesUint32MSFT, XR_TYPE_SCENE_MESH_INDICES_UINT32_MSFT) \ + _avail(XrSceneMeshIndicesUint16MSFT, XR_TYPE_SCENE_MESH_INDICES_UINT16_MSFT) \ + _avail(XrSerializedSceneFragmentDataGetInfoMSFT, XR_TYPE_SERIALIZED_SCENE_FRAGMENT_DATA_GET_INFO_MSFT) \ + _avail(XrSceneDeserializeInfoMSFT, XR_TYPE_SCENE_DESERIALIZE_INFO_MSFT) \ + _avail(XrEventDataDisplayRefreshRateChangedFB, XR_TYPE_EVENT_DATA_DISPLAY_REFRESH_RATE_CHANGED_FB) \ + _avail(XrViveTrackerPathsHTCX, XR_TYPE_VIVE_TRACKER_PATHS_HTCX) \ + _avail(XrEventDataViveTrackerConnectedHTCX, XR_TYPE_EVENT_DATA_VIVE_TRACKER_CONNECTED_HTCX) \ + _avail(XrSystemFacialTrackingPropertiesHTC, XR_TYPE_SYSTEM_FACIAL_TRACKING_PROPERTIES_HTC) \ + _avail(XrFacialExpressionsHTC, XR_TYPE_FACIAL_EXPRESSIONS_HTC) \ + _avail(XrFacialTrackerCreateInfoHTC, XR_TYPE_FACIAL_TRACKER_CREATE_INFO_HTC) \ + _avail(XrSystemColorSpacePropertiesFB, XR_TYPE_SYSTEM_COLOR_SPACE_PROPERTIES_FB) \ + _avail(XrHandTrackingMeshFB, XR_TYPE_HAND_TRACKING_MESH_FB) \ + _avail(XrHandTrackingScaleFB, XR_TYPE_HAND_TRACKING_SCALE_FB) \ + _avail(XrHandTrackingAimStateFB, XR_TYPE_HAND_TRACKING_AIM_STATE_FB) \ + _avail(XrHandTrackingCapsulesStateFB, XR_TYPE_HAND_TRACKING_CAPSULES_STATE_FB) \ + _avail(XrSystemSpatialEntityPropertiesFB, XR_TYPE_SYSTEM_SPATIAL_ENTITY_PROPERTIES_FB) \ + _avail(XrSpatialAnchorCreateInfoFB, XR_TYPE_SPATIAL_ANCHOR_CREATE_INFO_FB) \ + _avail(XrSpaceComponentStatusSetInfoFB, XR_TYPE_SPACE_COMPONENT_STATUS_SET_INFO_FB) \ + _avail(XrSpaceComponentStatusFB, XR_TYPE_SPACE_COMPONENT_STATUS_FB) \ + _avail(XrEventDataSpatialAnchorCreateCompleteFB, XR_TYPE_EVENT_DATA_SPATIAL_ANCHOR_CREATE_COMPLETE_FB) \ + _avail(XrEventDataSpaceSetStatusCompleteFB, XR_TYPE_EVENT_DATA_SPACE_SET_STATUS_COMPLETE_FB) \ + _avail(XrFoveationProfileCreateInfoFB, XR_TYPE_FOVEATION_PROFILE_CREATE_INFO_FB) \ + _avail(XrSwapchainCreateInfoFoveationFB, XR_TYPE_SWAPCHAIN_CREATE_INFO_FOVEATION_FB) \ + _avail(XrSwapchainStateFoveationFB, XR_TYPE_SWAPCHAIN_STATE_FOVEATION_FB) \ + _avail(XrFoveationLevelProfileCreateInfoFB, XR_TYPE_FOVEATION_LEVEL_PROFILE_CREATE_INFO_FB) \ + _avail(XrSystemKeyboardTrackingPropertiesFB, XR_TYPE_SYSTEM_KEYBOARD_TRACKING_PROPERTIES_FB) \ + _avail(XrKeyboardSpaceCreateInfoFB, XR_TYPE_KEYBOARD_SPACE_CREATE_INFO_FB) \ + _avail(XrKeyboardTrackingQueryFB, XR_TYPE_KEYBOARD_TRACKING_QUERY_FB) \ + _avail(XrTriangleMeshCreateInfoFB, XR_TYPE_TRIANGLE_MESH_CREATE_INFO_FB) \ + _avail(XrSystemPassthroughPropertiesFB, XR_TYPE_SYSTEM_PASSTHROUGH_PROPERTIES_FB) \ + _avail(XrSystemPassthroughProperties2FB, XR_TYPE_SYSTEM_PASSTHROUGH_PROPERTIES2_FB) \ + _avail(XrPassthroughCreateInfoFB, XR_TYPE_PASSTHROUGH_CREATE_INFO_FB) \ + _avail(XrPassthroughLayerCreateInfoFB, XR_TYPE_PASSTHROUGH_LAYER_CREATE_INFO_FB) \ + _avail(XrCompositionLayerPassthroughFB, XR_TYPE_COMPOSITION_LAYER_PASSTHROUGH_FB) \ + _avail(XrGeometryInstanceCreateInfoFB, XR_TYPE_GEOMETRY_INSTANCE_CREATE_INFO_FB) \ + _avail(XrGeometryInstanceTransformFB, XR_TYPE_GEOMETRY_INSTANCE_TRANSFORM_FB) \ + _avail(XrPassthroughStyleFB, XR_TYPE_PASSTHROUGH_STYLE_FB) \ + _avail(XrPassthroughColorMapMonoToRgbaFB, XR_TYPE_PASSTHROUGH_COLOR_MAP_MONO_TO_RGBA_FB) \ + _avail(XrPassthroughColorMapMonoToMonoFB, XR_TYPE_PASSTHROUGH_COLOR_MAP_MONO_TO_MONO_FB) \ + _avail(XrPassthroughBrightnessContrastSaturationFB, XR_TYPE_PASSTHROUGH_BRIGHTNESS_CONTRAST_SATURATION_FB) \ + _avail(XrEventDataPassthroughStateChangedFB, XR_TYPE_EVENT_DATA_PASSTHROUGH_STATE_CHANGED_FB) \ + _avail(XrRenderModelPathInfoFB, XR_TYPE_RENDER_MODEL_PATH_INFO_FB) \ + _avail(XrRenderModelPropertiesFB, XR_TYPE_RENDER_MODEL_PROPERTIES_FB) \ + _avail(XrRenderModelBufferFB, XR_TYPE_RENDER_MODEL_BUFFER_FB) \ + _avail(XrRenderModelLoadInfoFB, XR_TYPE_RENDER_MODEL_LOAD_INFO_FB) \ + _avail(XrSystemRenderModelPropertiesFB, XR_TYPE_SYSTEM_RENDER_MODEL_PROPERTIES_FB) \ + _avail(XrRenderModelCapabilitiesRequestFB, XR_TYPE_RENDER_MODEL_CAPABILITIES_REQUEST_FB) \ + _avail(XrViewLocateFoveatedRenderingVARJO, XR_TYPE_VIEW_LOCATE_FOVEATED_RENDERING_VARJO) \ + _avail(XrFoveatedViewConfigurationViewVARJO, XR_TYPE_FOVEATED_VIEW_CONFIGURATION_VIEW_VARJO) \ + _avail(XrSystemFoveatedRenderingPropertiesVARJO, XR_TYPE_SYSTEM_FOVEATED_RENDERING_PROPERTIES_VARJO) \ + _avail(XrCompositionLayerDepthTestVARJO, XR_TYPE_COMPOSITION_LAYER_DEPTH_TEST_VARJO) \ + _avail(XrSystemMarkerTrackingPropertiesVARJO, XR_TYPE_SYSTEM_MARKER_TRACKING_PROPERTIES_VARJO) \ + _avail(XrEventDataMarkerTrackingUpdateVARJO, XR_TYPE_EVENT_DATA_MARKER_TRACKING_UPDATE_VARJO) \ + _avail(XrMarkerSpaceCreateInfoVARJO, XR_TYPE_MARKER_SPACE_CREATE_INFO_VARJO) \ + _avail(XrSpatialAnchorPersistenceInfoMSFT, XR_TYPE_SPATIAL_ANCHOR_PERSISTENCE_INFO_MSFT) \ + _avail(XrSpatialAnchorFromPersistedAnchorCreateInfoMSFT, XR_TYPE_SPATIAL_ANCHOR_FROM_PERSISTED_ANCHOR_CREATE_INFO_MSFT) \ + _avail(XrSpaceQueryInfoFB, XR_TYPE_SPACE_QUERY_INFO_FB) \ + _avail(XrSpaceStorageLocationFilterInfoFB, XR_TYPE_SPACE_STORAGE_LOCATION_FILTER_INFO_FB) \ + _avail(XrSpaceUuidFilterInfoFB, XR_TYPE_SPACE_UUID_FILTER_INFO_FB) \ + _avail(XrSpaceComponentFilterInfoFB, XR_TYPE_SPACE_COMPONENT_FILTER_INFO_FB) \ + _avail(XrSpaceQueryResultsFB, XR_TYPE_SPACE_QUERY_RESULTS_FB) \ + _avail(XrEventDataSpaceQueryResultsAvailableFB, XR_TYPE_EVENT_DATA_SPACE_QUERY_RESULTS_AVAILABLE_FB) \ + _avail(XrEventDataSpaceQueryCompleteFB, XR_TYPE_EVENT_DATA_SPACE_QUERY_COMPLETE_FB) \ + _avail(XrSpaceSaveInfoFB, XR_TYPE_SPACE_SAVE_INFO_FB) \ + _avail(XrSpaceEraseInfoFB, XR_TYPE_SPACE_ERASE_INFO_FB) \ + _avail(XrEventDataSpaceSaveCompleteFB, XR_TYPE_EVENT_DATA_SPACE_SAVE_COMPLETE_FB) \ + _avail(XrEventDataSpaceEraseCompleteFB, XR_TYPE_EVENT_DATA_SPACE_ERASE_COMPLETE_FB) \ + _avail(XrCompositionLayerSpaceWarpInfoFB, XR_TYPE_COMPOSITION_LAYER_SPACE_WARP_INFO_FB) \ + _avail(XrSystemSpaceWarpPropertiesFB, XR_TYPE_SYSTEM_SPACE_WARP_PROPERTIES_FB) \ + _avail(XrSemanticLabelsFB, XR_TYPE_SEMANTIC_LABELS_FB) \ + _avail(XrRoomLayoutFB, XR_TYPE_ROOM_LAYOUT_FB) \ + _avail(XrBoundary2DFB, XR_TYPE_BOUNDARY_2D_FB) \ + _avail(XrDigitalLensControlALMALENCE, XR_TYPE_DIGITAL_LENS_CONTROL_ALMALENCE) \ + _avail(XrSpaceContainerFB, XR_TYPE_SPACE_CONTAINER_FB) \ + _avail(XrPassthroughKeyboardHandsIntensityFB, XR_TYPE_PASSTHROUGH_KEYBOARD_HANDS_INTENSITY_FB) \ + _avail(XrCompositionLayerSettingsFB, XR_TYPE_COMPOSITION_LAYER_SETTINGS_FB) \ + _avail(XrPerformanceMetricsStateMETA, XR_TYPE_PERFORMANCE_METRICS_STATE_META) \ + _avail(XrPerformanceMetricsCounterMETA, XR_TYPE_PERFORMANCE_METRICS_COUNTER_META) \ + _avail(XrSystemHeadsetIdPropertiesMETA, XR_TYPE_SYSTEM_HEADSET_ID_PROPERTIES_META) \ + _avail(XrPassthroughCreateInfoHTC, XR_TYPE_PASSTHROUGH_CREATE_INFO_HTC) \ + _avail(XrPassthroughColorHTC, XR_TYPE_PASSTHROUGH_COLOR_HTC) \ + _avail(XrPassthroughMeshTransformInfoHTC, XR_TYPE_PASSTHROUGH_MESH_TRANSFORM_INFO_HTC) \ + _avail(XrCompositionLayerPassthroughHTC, XR_TYPE_COMPOSITION_LAYER_PASSTHROUGH_HTC) \ + _avail(XrFoveationApplyInfoHTC, XR_TYPE_FOVEATION_APPLY_INFO_HTC) \ + _avail(XrFoveationDynamicModeInfoHTC, XR_TYPE_FOVEATION_DYNAMIC_MODE_INFO_HTC) \ + _avail(XrFoveationCustomModeInfoHTC, XR_TYPE_FOVEATION_CUSTOM_MODE_INFO_HTC) \ + _avail(XrActiveActionSetPrioritiesEXT, XR_TYPE_ACTIVE_ACTION_SET_PRIORITIES_EXT) \ + + +#if defined(XR_USE_GRAPHICS_API_D3D11) +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_D3D11(_avail, _unavail) \ + _avail(XrGraphicsBindingD3D11KHR, XR_TYPE_GRAPHICS_BINDING_D3D11_KHR) \ + _avail(XrSwapchainImageD3D11KHR, XR_TYPE_SWAPCHAIN_IMAGE_D3D11_KHR) \ + _avail(XrGraphicsRequirementsD3D11KHR, XR_TYPE_GRAPHICS_REQUIREMENTS_D3D11_KHR) \ + +#else +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_D3D11(_avail, _unavail) \ + _unavail(XrGraphicsBindingD3D11KHR, XR_TYPE_GRAPHICS_BINDING_D3D11_KHR) \ + _unavail(XrSwapchainImageD3D11KHR, XR_TYPE_SWAPCHAIN_IMAGE_D3D11_KHR) \ + _unavail(XrGraphicsRequirementsD3D11KHR, XR_TYPE_GRAPHICS_REQUIREMENTS_D3D11_KHR) \ + +#endif + +#if defined(XR_USE_GRAPHICS_API_D3D12) +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_D3D12(_avail, _unavail) \ + _avail(XrGraphicsBindingD3D12KHR, XR_TYPE_GRAPHICS_BINDING_D3D12_KHR) \ + _avail(XrSwapchainImageD3D12KHR, XR_TYPE_SWAPCHAIN_IMAGE_D3D12_KHR) \ + _avail(XrGraphicsRequirementsD3D12KHR, XR_TYPE_GRAPHICS_REQUIREMENTS_D3D12_KHR) \ + +#else +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_D3D12(_avail, _unavail) \ + _unavail(XrGraphicsBindingD3D12KHR, XR_TYPE_GRAPHICS_BINDING_D3D12_KHR) \ + _unavail(XrSwapchainImageD3D12KHR, XR_TYPE_SWAPCHAIN_IMAGE_D3D12_KHR) \ + _unavail(XrGraphicsRequirementsD3D12KHR, XR_TYPE_GRAPHICS_REQUIREMENTS_D3D12_KHR) \ + +#endif + +#if defined(XR_USE_GRAPHICS_API_OPENGL) +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL(_avail, _unavail) \ + _avail(XrSwapchainImageOpenGLKHR, XR_TYPE_SWAPCHAIN_IMAGE_OPENGL_KHR) \ + _avail(XrGraphicsRequirementsOpenGLKHR, XR_TYPE_GRAPHICS_REQUIREMENTS_OPENGL_KHR) \ + +#else +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL(_avail, _unavail) \ + _unavail(XrSwapchainImageOpenGLKHR, XR_TYPE_SWAPCHAIN_IMAGE_OPENGL_KHR) \ + _unavail(XrGraphicsRequirementsOpenGLKHR, XR_TYPE_GRAPHICS_REQUIREMENTS_OPENGL_KHR) \ + +#endif + +#if defined(XR_USE_GRAPHICS_API_OPENGL) && defined(XR_USE_PLATFORM_WAYLAND) +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_WAYLAND(_avail, _unavail) \ + _avail(XrGraphicsBindingOpenGLWaylandKHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_WAYLAND_KHR) \ + +#else +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_WAYLAND(_avail, _unavail) \ + _unavail(XrGraphicsBindingOpenGLWaylandKHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_WAYLAND_KHR) \ + +#endif + +#if defined(XR_USE_GRAPHICS_API_OPENGL) && defined(XR_USE_PLATFORM_WIN32) +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_WIN32(_avail, _unavail) \ + _avail(XrGraphicsBindingOpenGLWin32KHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_WIN32_KHR) \ + +#else +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_WIN32(_avail, _unavail) \ + _unavail(XrGraphicsBindingOpenGLWin32KHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_WIN32_KHR) \ + +#endif + +#if defined(XR_USE_GRAPHICS_API_OPENGL) && defined(XR_USE_PLATFORM_XCB) +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_XCB(_avail, _unavail) \ + _avail(XrGraphicsBindingOpenGLXcbKHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_XCB_KHR) \ + +#else +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_XCB(_avail, _unavail) \ + _unavail(XrGraphicsBindingOpenGLXcbKHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_XCB_KHR) \ + +#endif + +#if defined(XR_USE_GRAPHICS_API_OPENGL) && defined(XR_USE_PLATFORM_XLIB) +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_XLIB(_avail, _unavail) \ + _avail(XrGraphicsBindingOpenGLXlibKHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_XLIB_KHR) \ + +#else +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_XR_USE_PLATFORM_XLIB(_avail, _unavail) \ + _unavail(XrGraphicsBindingOpenGLXlibKHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_XLIB_KHR) \ + +#endif + +#if defined(XR_USE_GRAPHICS_API_OPENGL_ES) +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_ES(_avail, _unavail) \ + _avail(XrSwapchainImageOpenGLESKHR, XR_TYPE_SWAPCHAIN_IMAGE_OPENGL_ES_KHR) \ + _avail(XrGraphicsRequirementsOpenGLESKHR, XR_TYPE_GRAPHICS_REQUIREMENTS_OPENGL_ES_KHR) \ + _avail(XrSwapchainStateSamplerOpenGLESFB, XR_TYPE_SWAPCHAIN_STATE_SAMPLER_OPENGL_ES_FB) \ + +#else +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_ES(_avail, _unavail) \ + _unavail(XrSwapchainImageOpenGLESKHR, XR_TYPE_SWAPCHAIN_IMAGE_OPENGL_ES_KHR) \ + _unavail(XrGraphicsRequirementsOpenGLESKHR, XR_TYPE_GRAPHICS_REQUIREMENTS_OPENGL_ES_KHR) \ + _unavail(XrSwapchainStateSamplerOpenGLESFB, XR_TYPE_SWAPCHAIN_STATE_SAMPLER_OPENGL_ES_FB) \ + +#endif + +#if defined(XR_USE_GRAPHICS_API_OPENGL_ES) && defined(XR_USE_PLATFORM_ANDROID) +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_ES_XR_USE_PLATFORM_ANDROID(_avail, _unavail) \ + _avail(XrGraphicsBindingOpenGLESAndroidKHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_ES_ANDROID_KHR) \ + +#else +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_OPENGL_ES_XR_USE_PLATFORM_ANDROID(_avail, _unavail) \ + _unavail(XrGraphicsBindingOpenGLESAndroidKHR, XR_TYPE_GRAPHICS_BINDING_OPENGL_ES_ANDROID_KHR) \ + +#endif + +#if defined(XR_USE_GRAPHICS_API_VULKAN) +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_VULKAN(_avail, _unavail) \ + _avail(XrVulkanSwapchainFormatListCreateInfoKHR, XR_TYPE_VULKAN_SWAPCHAIN_FORMAT_LIST_CREATE_INFO_KHR) \ + _avail(XrGraphicsBindingVulkanKHR, XR_TYPE_GRAPHICS_BINDING_VULKAN_KHR) \ + _avail(XrSwapchainImageVulkanKHR, XR_TYPE_SWAPCHAIN_IMAGE_VULKAN_KHR) \ + _avail(XrGraphicsRequirementsVulkanKHR, XR_TYPE_GRAPHICS_REQUIREMENTS_VULKAN_KHR) \ + _avail(XrVulkanInstanceCreateInfoKHR, XR_TYPE_VULKAN_INSTANCE_CREATE_INFO_KHR) \ + _avail(XrVulkanDeviceCreateInfoKHR, XR_TYPE_VULKAN_DEVICE_CREATE_INFO_KHR) \ + _avail(XrVulkanGraphicsDeviceGetInfoKHR, XR_TYPE_VULKAN_GRAPHICS_DEVICE_GET_INFO_KHR) \ + _avail(XrSwapchainImageFoveationVulkanFB, XR_TYPE_SWAPCHAIN_IMAGE_FOVEATION_VULKAN_FB) \ + _avail(XrSwapchainStateSamplerVulkanFB, XR_TYPE_SWAPCHAIN_STATE_SAMPLER_VULKAN_FB) \ + _avail(XrVulkanSwapchainCreateInfoMETA, XR_TYPE_VULKAN_SWAPCHAIN_CREATE_INFO_META) \ + +#else +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_GRAPHICS_API_VULKAN(_avail, _unavail) \ + _unavail(XrVulkanSwapchainFormatListCreateInfoKHR, XR_TYPE_VULKAN_SWAPCHAIN_FORMAT_LIST_CREATE_INFO_KHR) \ + _unavail(XrGraphicsBindingVulkanKHR, XR_TYPE_GRAPHICS_BINDING_VULKAN_KHR) \ + _unavail(XrSwapchainImageVulkanKHR, XR_TYPE_SWAPCHAIN_IMAGE_VULKAN_KHR) \ + _unavail(XrGraphicsRequirementsVulkanKHR, XR_TYPE_GRAPHICS_REQUIREMENTS_VULKAN_KHR) \ + _unavail(XrVulkanInstanceCreateInfoKHR, XR_TYPE_VULKAN_INSTANCE_CREATE_INFO_KHR) \ + _unavail(XrVulkanDeviceCreateInfoKHR, XR_TYPE_VULKAN_DEVICE_CREATE_INFO_KHR) \ + _unavail(XrVulkanGraphicsDeviceGetInfoKHR, XR_TYPE_VULKAN_GRAPHICS_DEVICE_GET_INFO_KHR) \ + _unavail(XrSwapchainImageFoveationVulkanFB, XR_TYPE_SWAPCHAIN_IMAGE_FOVEATION_VULKAN_FB) \ + _unavail(XrSwapchainStateSamplerVulkanFB, XR_TYPE_SWAPCHAIN_STATE_SAMPLER_VULKAN_FB) \ + _unavail(XrVulkanSwapchainCreateInfoMETA, XR_TYPE_VULKAN_SWAPCHAIN_CREATE_INFO_META) \ + +#endif + +#if defined(XR_USE_PLATFORM_ANDROID) +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_PLATFORM_ANDROID(_avail, _unavail) \ + _avail(XrInstanceCreateInfoAndroidKHR, XR_TYPE_INSTANCE_CREATE_INFO_ANDROID_KHR) \ + _avail(XrLoaderInitInfoAndroidKHR, XR_TYPE_LOADER_INIT_INFO_ANDROID_KHR) \ + _avail(XrAndroidSurfaceSwapchainCreateInfoFB, XR_TYPE_ANDROID_SURFACE_SWAPCHAIN_CREATE_INFO_FB) \ + _avail(XrSwapchainStateAndroidSurfaceDimensionsFB, XR_TYPE_SWAPCHAIN_STATE_ANDROID_SURFACE_DIMENSIONS_FB) \ + +#else +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_PLATFORM_ANDROID(_avail, _unavail) \ + _unavail(XrInstanceCreateInfoAndroidKHR, XR_TYPE_INSTANCE_CREATE_INFO_ANDROID_KHR) \ + _unavail(XrLoaderInitInfoAndroidKHR, XR_TYPE_LOADER_INIT_INFO_ANDROID_KHR) \ + _unavail(XrAndroidSurfaceSwapchainCreateInfoFB, XR_TYPE_ANDROID_SURFACE_SWAPCHAIN_CREATE_INFO_FB) \ + _unavail(XrSwapchainStateAndroidSurfaceDimensionsFB, XR_TYPE_SWAPCHAIN_STATE_ANDROID_SURFACE_DIMENSIONS_FB) \ + +#endif + +#if defined(XR_USE_PLATFORM_EGL) +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_PLATFORM_EGL(_avail, _unavail) \ + _avail(XrGraphicsBindingEGLMNDX, XR_TYPE_GRAPHICS_BINDING_EGL_MNDX) \ + +#else +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_PLATFORM_EGL(_avail, _unavail) \ + _unavail(XrGraphicsBindingEGLMNDX, XR_TYPE_GRAPHICS_BINDING_EGL_MNDX) \ + +#endif + +#if defined(XR_USE_PLATFORM_WIN32) +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_PLATFORM_WIN32(_avail, _unavail) \ + _avail(XrHolographicWindowAttachmentMSFT, XR_TYPE_HOLOGRAPHIC_WINDOW_ATTACHMENT_MSFT) \ + +#else +#define _impl_XR_LIST_ALL_STRUCTURE_TYPES_XR_USE_PLATFORM_WIN32(_avail, _unavail) \ + _unavail(XrHolographicWindowAttachmentMSFT, XR_TYPE_HOLOGRAPHIC_WINDOW_ATTACHMENT_MSFT) \ + +#endif + + + + +#endif + diff --git a/thirdparty/openxr/src/loader/loader_core.cpp b/thirdparty/openxr/src/loader/loader_core.cpp index a8bbfb4de2..f2bc87d1fa 100644 --- a/thirdparty/openxr/src/loader/loader_core.cpp +++ b/thirdparty/openxr/src/loader/loader_core.cpp @@ -35,7 +35,7 @@ // Global loader lock to: // 1. Ensure ActiveLoaderInstance get and set operations are done atomically. // 2. Ensure RuntimeInterface isn't used to unload the runtime while the runtime is in use. -std::mutex &GetGlobalLoaderMutex() { +static std::mutex &GetGlobalLoaderMutex() { static std::mutex loader_mutex; return loader_mutex; } @@ -58,6 +58,8 @@ static XRAPI_ATTR XrResult XRAPI_CALL LoaderXrTermDestroyDebugUtilsMessengerEXT( static XRAPI_ATTR XrResult XRAPI_CALL LoaderXrTermSubmitDebugUtilsMessageEXT( XrInstance instance, XrDebugUtilsMessageSeverityFlagsEXT messageSeverity, XrDebugUtilsMessageTypeFlagsEXT messageTypes, const XrDebugUtilsMessengerCallbackDataEXT *callbackData); +static XRAPI_ATTR XrResult XRAPI_CALL LoaderXrGetInstanceProcAddr(XrInstance instance, const char *name, + PFN_xrVoidFunction *function); // Utility template function meant to validate if a fixed size string contains // a null-terminator. diff --git a/thirdparty/openxr/src/loader/manifest_file.cpp b/thirdparty/openxr/src/loader/manifest_file.cpp index df99d51f8f..1b0ef07848 100644 --- a/thirdparty/openxr/src/loader/manifest_file.cpp +++ b/thirdparty/openxr/src/loader/manifest_file.cpp @@ -348,14 +348,20 @@ static void ReadRuntimeDataFilesInRegistry(const std::string &runtime_registry_l if (ERROR_SUCCESS != open_value) { LoaderLogger::LogWarningMessage("", "ReadRuntimeDataFilesInRegistry - failed to open registry key " + full_registry_location); - } else if (ERROR_SUCCESS != RegGetValueW(hkey, nullptr, default_runtime_value_name_w.c_str(), - RRF_RT_REG_SZ | REG_EXPAND_SZ | RRF_ZEROONFAILURE, NULL, - reinterpret_cast<LPBYTE>(&value_w), &value_size_w)) { + + return; + } + + if (ERROR_SUCCESS != RegGetValueW(hkey, nullptr, default_runtime_value_name_w.c_str(), + RRF_RT_REG_SZ | REG_EXPAND_SZ | RRF_ZEROONFAILURE, NULL, reinterpret_cast<LPBYTE>(&value_w), + &value_size_w)) { LoaderLogger::LogWarningMessage( "", "ReadRuntimeDataFilesInRegistry - failed to read registry value " + default_runtime_value_name); } else { AddFilesInPath(wide_to_utf8(value_w), false, manifest_files); } + + RegCloseKey(hkey); } // Look for layer data files in the provided paths, but first check the environment override to determine diff --git a/thirdparty/openxr/src/xr_generated_dispatch_table.c b/thirdparty/openxr/src/xr_generated_dispatch_table.c index 91fa0c3ca0..094f9fbbda 100644 --- a/thirdparty/openxr/src/xr_generated_dispatch_table.c +++ b/thirdparty/openxr/src/xr_generated_dispatch_table.c @@ -354,6 +354,13 @@ void GeneratedXrPopulateDispatchTable(struct XrGeneratedDispatchTable *table, (get_inst_proc_addr(instance, "xrGetAudioInputDeviceGuidOculus", (PFN_xrVoidFunction*)&table->GetAudioInputDeviceGuidOculus)); #endif // defined(XR_USE_PLATFORM_WIN32) + // ---- XR_FB_scene extension commands + (get_inst_proc_addr(instance, "xrGetSpaceBoundingBox2DFB", (PFN_xrVoidFunction*)&table->GetSpaceBoundingBox2DFB)); + (get_inst_proc_addr(instance, "xrGetSpaceBoundingBox3DFB", (PFN_xrVoidFunction*)&table->GetSpaceBoundingBox3DFB)); + (get_inst_proc_addr(instance, "xrGetSpaceSemanticLabelsFB", (PFN_xrVoidFunction*)&table->GetSpaceSemanticLabelsFB)); + (get_inst_proc_addr(instance, "xrGetSpaceBoundary2DFB", (PFN_xrVoidFunction*)&table->GetSpaceBoundary2DFB)); + (get_inst_proc_addr(instance, "xrGetSpaceRoomLayoutFB", (PFN_xrVoidFunction*)&table->GetSpaceRoomLayoutFB)); + // ---- XR_ALMALENCE_digital_lens_control extension commands (get_inst_proc_addr(instance, "xrSetDigitalLensControlALMALENCE", (PFN_xrVoidFunction*)&table->SetDigitalLensControlALMALENCE)); @@ -368,6 +375,13 @@ void GeneratedXrPopulateDispatchTable(struct XrGeneratedDispatchTable *table, (get_inst_proc_addr(instance, "xrSetPerformanceMetricsStateMETA", (PFN_xrVoidFunction*)&table->SetPerformanceMetricsStateMETA)); (get_inst_proc_addr(instance, "xrGetPerformanceMetricsStateMETA", (PFN_xrVoidFunction*)&table->GetPerformanceMetricsStateMETA)); (get_inst_proc_addr(instance, "xrQueryPerformanceMetricsCounterMETA", (PFN_xrVoidFunction*)&table->QueryPerformanceMetricsCounterMETA)); + + // ---- XR_HTC_passthrough extension commands + (get_inst_proc_addr(instance, "xrCreatePassthroughHTC", (PFN_xrVoidFunction*)&table->CreatePassthroughHTC)); + (get_inst_proc_addr(instance, "xrDestroyPassthroughHTC", (PFN_xrVoidFunction*)&table->DestroyPassthroughHTC)); + + // ---- XR_HTC_foveation extension commands + (get_inst_proc_addr(instance, "xrApplyFoveationHTC", (PFN_xrVoidFunction*)&table->ApplyFoveationHTC)); } diff --git a/thirdparty/openxr/src/xr_generated_dispatch_table.h b/thirdparty/openxr/src/xr_generated_dispatch_table.h index 51d48bef43..93d07a149e 100644 --- a/thirdparty/openxr/src/xr_generated_dispatch_table.h +++ b/thirdparty/openxr/src/xr_generated_dispatch_table.h @@ -357,6 +357,13 @@ struct XrGeneratedDispatchTable { PFN_xrGetAudioInputDeviceGuidOculus GetAudioInputDeviceGuidOculus; #endif // defined(XR_USE_PLATFORM_WIN32) + // ---- XR_FB_scene extension commands + PFN_xrGetSpaceBoundingBox2DFB GetSpaceBoundingBox2DFB; + PFN_xrGetSpaceBoundingBox3DFB GetSpaceBoundingBox3DFB; + PFN_xrGetSpaceSemanticLabelsFB GetSpaceSemanticLabelsFB; + PFN_xrGetSpaceBoundary2DFB GetSpaceBoundary2DFB; + PFN_xrGetSpaceRoomLayoutFB GetSpaceRoomLayoutFB; + // ---- XR_ALMALENCE_digital_lens_control extension commands PFN_xrSetDigitalLensControlALMALENCE SetDigitalLensControlALMALENCE; @@ -371,6 +378,13 @@ struct XrGeneratedDispatchTable { PFN_xrSetPerformanceMetricsStateMETA SetPerformanceMetricsStateMETA; PFN_xrGetPerformanceMetricsStateMETA GetPerformanceMetricsStateMETA; PFN_xrQueryPerformanceMetricsCounterMETA QueryPerformanceMetricsCounterMETA; + + // ---- XR_HTC_passthrough extension commands + PFN_xrCreatePassthroughHTC CreatePassthroughHTC; + PFN_xrDestroyPassthroughHTC DestroyPassthroughHTC; + + // ---- XR_HTC_foveation extension commands + PFN_xrApplyFoveationHTC ApplyFoveationHTC; }; |