diff options
Diffstat (limited to 'doc')
253 files changed, 15412 insertions, 5478 deletions
diff --git a/doc/classes/@GlobalScope.xml b/doc/classes/@GlobalScope.xml index ed404ea504..6b0dccd7fc 100644 --- a/doc/classes/@GlobalScope.xml +++ b/doc/classes/@GlobalScope.xml @@ -16,7 +16,7 @@ <return type="Variant" /> <param index="0" name="x" type="Variant" /> <description> - Returns the absolute value of a [Variant] parameter [param x] (i.e. non-negative value). Variant types [int], [float], [Vector2], [Vector2i], [Vector3] and [Vector3i] are supported. + Returns the absolute value of a [Variant] parameter [param x] (i.e. non-negative value). Supported types: [int], [float], [Vector2], [Vector2i], [Vector3], [Vector3i], [Vector4], [Vector4i]. [codeblock] var a = abs(-1) # a is 1 @@ -36,6 +36,7 @@ var f = abs(Vector3i(-7, -8, -9)) # f is (7, 8, 9) [/codeblock] + [b]Note:[/b] For better type safety, use [method absf], [method absi], [method Vector2.abs], [method Vector2i.abs], [method Vector3.abs], [method Vector3i.abs], [method Vector4.abs], or [method Vector4i.abs]. </description> </method> <method name="absf"> @@ -106,6 +107,17 @@ [/codeblock] </description> </method> + <method name="bezier_derivative"> + <return type="float" /> + <param index="0" name="start" type="float" /> + <param index="1" name="control_1" type="float" /> + <param index="2" name="control_2" type="float" /> + <param index="3" name="end" type="float" /> + <param index="4" name="t" type="float" /> + <description> + Returns the derivative at the given [param t] on a one-dimensional [url=https://en.wikipedia.org/wiki/B%C3%A9zier_curve]Bézier curve[/url] defined by the given [param control_1], [param control_2], and [param end] points. + </description> + </method> <method name="bezier_interpolate"> <return type="float" /> <param index="0" name="start" type="float" /> @@ -114,7 +126,7 @@ <param index="3" name="end" type="float" /> <param index="4" name="t" type="float" /> <description> - Returns the point at the given [param t] on a one-dimensional [url=https://en.wikipedia.org/wiki/B%C3%A9zier_curve]Bezier curve[/url] defined by the given [param control_1], [param control_2], and [param end] points. + Returns the point at the given [param t] on a one-dimensional [url=https://en.wikipedia.org/wiki/B%C3%A9zier_curve]Bézier curve[/url] defined by the given [param control_1], [param control_2], and [param end] points. </description> </method> <method name="bytes_to_var"> @@ -143,7 +155,7 @@ i = ceil(1.001) # i is 2.0 [/codeblock] See also [method floor], [method round], and [method snapped]. - [b]Note:[/b] For better type safety, see [method ceilf], [method ceili], [method Vector2.ceil], [method Vector3.ceil] and [method Vector4.ceil]. + [b]Note:[/b] For better type safety, use [method ceilf], [method ceili], [method Vector2.ceil], [method Vector3.ceil], or [method Vector4.ceil]. </description> </method> <method name="ceilf"> @@ -168,7 +180,7 @@ <param index="1" name="min" type="Variant" /> <param index="2" name="max" type="Variant" /> <description> - Clamps the [param value], returning a [Variant] not less than [param min] and not more than [param max]. Variant types [int], [float], [Vector2], [Vector2i], [Vector3] and [Vector3i] are supported. + Clamps the [param value], returning a [Variant] not less than [param min] and not more than [param max]. Supported types: [int], [float], [Vector2], [Vector2i], [Vector3], [Vector3i], [Vector4], [Vector4i]. [codeblock] var a = clamp(-10, -1, 5) # a is -1 @@ -188,6 +200,7 @@ var f = clamp(Vector3i(-7, -8, -9), Vector3i(-1, 2, 3), Vector3i(-4, -5, -6)) # f is (-4, -5, -6) [/codeblock] + [b]Note:[/b] For better type safety, use [method clampf], [method clampi], [method Vector2.clamp], [method Vector2i.clamp], [method Vector3.clamp], [method Vector3i.clamp], [method Vector4.clamp], or [method Vector4i.clamp]. </description> </method> <method name="clampf"> @@ -367,7 +380,7 @@ a = floor(-2.99) # a is -3.0 [/codeblock] See also [method ceil], [method round], and [method snapped]. - [b]Note:[/b] For better type safety, see [method floorf], [method floori], [method Vector2.floor], [method Vector3.floor] and [method Vector4.floor]. + [b]Note:[/b] For better type safety, use [method floorf], [method floori], [method Vector2.floor], [method Vector3.floor], or [method Vector4.floor]. </description> </method> <method name="floorf"> @@ -527,7 +540,7 @@ <param index="2" name="weight" type="Variant" /> <description> Linearly interpolates between two values by the factor defined in [param weight]. To perform interpolation, [param weight] should be between [code]0.0[/code] and [code]1.0[/code] (inclusive). However, values outside this range are allowed and can be used to perform [i]extrapolation[/i]. If this is not desired, use [method clamp] on the result of this function. - Both [param from] and [param to] must be the same type. Supported types: [float], [Vector2], [Vector3], [Vector4], [Color], [Quaternion], [Basis]. + Both [param from] and [param to] must be the same type. Supported types: [int], [float], [Vector2], [Vector3], [Vector4], [Color], [Quaternion], [Basis]. [codeblock] lerp(0, 4, 0.75) # Returns 3.0 [/codeblock] @@ -783,14 +796,13 @@ </method> <method name="printraw" qualifiers="vararg"> <description> - Prints one or more arguments to strings in the best way possible to console. Unlike [method print], no newline is automatically added at the end. + Prints one or more arguments to strings in the best way possible to the OS terminal. Unlike [method print], no newline is automatically added at the end. [codeblock] printraw("A") printraw("B") printraw("C") - # Prints ABC + # Prints ABC to terminal [/codeblock] - [b]Note:[/b] Due to limitations with Godot's built-in console, this only prints to the terminal. If you need to print in the editor, use another method, such as [method print]. </description> </method> <method name="prints" qualifiers="vararg"> @@ -950,7 +962,7 @@ round(2.6) # Returns 3 [/codeblock] See also [method floor], [method ceil], and [method snapped]. - [b]Note:[/b] For better type safety, use [method roundf], [method roundi], [method Vector2.round], [method Vector3.round] or [method Vector4.round], instead. + [b]Note:[/b] For better type safety, use [method roundf], [method roundi], [method Vector2.round], [method Vector3.round], or [method Vector4.round]. </description> </method> <method name="roundf"> @@ -987,21 +999,22 @@ <return type="Variant" /> <param index="0" name="x" type="Variant" /> <description> - Returns the sign of [param x] as same type of [Variant] as [param x] with each component being -1, 0 and 1 for each negative, zero and positive values respectively. Variant types [int], [float], [Vector2], [Vector2i], [Vector3] and [Vector3i] are supported. + Returns the same type of [Variant] as [param x], with [code]-1[/code] for negative values, [code]1[/code] for positive values, and [code]0[/code] for zeros. Supported types: [int], [float], [Vector2], [Vector2i], [Vector3], [Vector3i], [Vector4], [Vector4i]. [codeblock] sign(-6.0) # Returns -1 sign(0.0) # Returns 0 sign(6.0) # Returns 1 - sign(Vector3(-6.0, 0.0, 6.0) # Returns (-1, 0, 1) + sign(Vector3(-6.0, 0.0, 6.0)) # Returns (-1, 0, 1) [/codeblock] + [b]Note:[/b] For better type safety, use [method signf], [method signi], [method Vector2.sign], [method Vector2i.sign], [method Vector3.sign], [method Vector3i.sign], [method Vector4.sign], or [method Vector4i.sign]. </description> </method> <method name="signf"> <return type="float" /> <param index="0" name="x" type="float" /> <description> - Returns the sign of [param x] as a [float]: -1.0 or 1.0. Returns 0.0 if [param x] is 0.0. + Returns [code]-1.0[/code] if [param x] is negative, [code]1.0[/code] if [param x] is positive, and [code]0.0[/code] if if [param x] is zero. [codeblock] sign(-6.5) # Returns -1.0 sign(0.0) # Returns 0.0 @@ -1013,7 +1026,7 @@ <return type="int" /> <param index="0" name="x" type="int" /> <description> - Returns the sign of [param x] as an [int]: -1 or 1. Returns 0 if [param x] is 0. + Returns [code]-1[/code] if [param x] is negative, [code]1[/code] if [param x] is positive, and [code]0[/code] if if [param x] is zero. [codeblock] sign(-6) # Returns -1 sign(0) # Returns 0 @@ -1063,16 +1076,46 @@ </description> </method> <method name="snapped"> + <return type="Variant" /> + <param index="0" name="x" type="Variant" /> + <param index="1" name="step" type="Variant" /> + <description> + Returns the multiple of [param step] that is the closest to [param x]. This can also be used to round a floating point number to an arbitrary number of decimals. + The returned value is the same type of [Variant] as [param step]. Supported types: [int], [float], [Vector2], [Vector2i], [Vector3], [Vector3i], [Vector4], [Vector4i]. + [codeblock] + snapped(100, 32) # Returns 96 + snapped(3.14159, 0.01) # Returns 3.14 + + snapped(Vector2(34, 70), Vector2(8, 8)) # Returns (32, 72) + [/codeblock] + See also [method ceil], [method floor], and [method round]. + [b]Note:[/b] For better type safety, use [method snappedf], [method snappedi], [method Vector2.snapped], [method Vector2i.snapped], [method Vector3.snapped], [method Vector3i.snapped], [method Vector4.snapped], or [method Vector4i.snapped]. + </description> + </method> + <method name="snappedf"> <return type="float" /> <param index="0" name="x" type="float" /> <param index="1" name="step" type="float" /> <description> - Snaps the float value [param x] to a given [param step]. This can also be used to round a floating point number to an arbitrary number of decimals. + Returns the multiple of [param step] that is the closest to [param x]. This can also be used to round a floating point number to an arbitrary number of decimals. + A type-safe version of [method snapped], returning a [float]. [codeblock] - snapped(100, 32) # Returns 96 - snapped(3.14159, 0.01) # Returns 3.14 + snapped(32.0, 2.5) # Returns 32.5 + snapped(3.14159, 0.01) # Returns 3.14 + [/codeblock] + </description> + </method> + <method name="snappedi"> + <return type="int" /> + <param index="0" name="x" type="float" /> + <param index="1" name="step" type="int" /> + <description> + Returns the multiple of [param step] that is the closest to [param x]. + A type-safe version of [method snapped], returning an [int]. + [codeblock] + snapped(53, 16) # Returns 48 + snapped(4096, 100) # Returns 4100 [/codeblock] - See also [method ceil], [method floor], and [method round]. </description> </method> <method name="sqrt"> @@ -1276,6 +1319,9 @@ <member name="EngineDebugger" type="EngineDebugger" setter="" getter=""> The [EngineDebugger] singleton. </member> + <member name="GDExtensionManager" type="GDExtensionManager" setter="" getter=""> + The [GDExtensionManager] singleton. + </member> <member name="Geometry2D" type="Geometry2D" setter="" getter=""> The [Geometry2D] singleton. </member> @@ -1305,9 +1351,6 @@ <member name="Marshalls" type="Marshalls" setter="" getter=""> The [Marshalls] singleton. </member> - <member name="NativeExtensionManager" type="NativeExtensionManager" setter="" getter=""> - The [NativeExtensionManager] singleton. - </member> <member name="NavigationMeshGenerator" type="NavigationMeshGenerator" setter="" getter=""> The [NavigationMeshGenerator] singleton. </member> @@ -1436,6 +1479,9 @@ <constant name="INLINE_ALIGNMENT_CENTER_TO" value="1" enum="InlineAlignment"> Aligns the center of the inline object (e.g. image, table) to the position of the text specified by [code]INLINE_ALIGNMENT_TO_*[/code] constant. </constant> + <constant name="INLINE_ALIGNMENT_BASELINE_TO" value="3" enum="InlineAlignment"> + Aligns the baseline (user defined) of the inline object (e.g. image, table) to the position of the text specified by [code]INLINE_ALIGNMENT_TO_*[/code] constant. + </constant> <constant name="INLINE_ALIGNMENT_BOTTOM_TO" value="2" enum="InlineAlignment"> Aligns the bottom of the inline object (e.g. image, table) to the position of the text specified by [code]INLINE_ALIGNMENT_TO_*[/code] constant. </constant> @@ -2734,17 +2780,10 @@ <constant name="PROPERTY_HINT_COLOR_NO_ALPHA" value="21" enum="PropertyHint"> Hints that a [Color] property should be edited without affecting its transparency ([member Color.a] is not editable). </constant> - <constant name="PROPERTY_HINT_IMAGE_COMPRESS_LOSSY" value="22" enum="PropertyHint"> - Hints that an image is compressed using lossy compression. The editor does not internally use this property hint. + <constant name="PROPERTY_HINT_OBJECT_ID" value="22" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_IMAGE_COMPRESS_LOSSLESS" value="23" enum="PropertyHint"> - Hints that an image is compressed using lossless compression. The editor does not internally use this property hint. - </constant> - <constant name="PROPERTY_HINT_OBJECT_ID" value="24" enum="PropertyHint"> - </constant> - <constant name="PROPERTY_HINT_TYPE_STRING" value="25" enum="PropertyHint"> - Hints 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. - [b]Example:[/b] + <constant name="PROPERTY_HINT_TYPE_STRING" value="23" enum="PropertyHint"> + 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: [codeblock] hint_string = "%s:" % [TYPE_INT] # Array of integers. hint_string = "%s:%s:" % [TYPE_ARRAY, TYPE_REAL] # Two-dimensional array of floats. @@ -2753,56 +2792,53 @@ [/codeblock] [b]Note:[/b] The final colon is required for properly detecting built-in types. </constant> - <constant name="PROPERTY_HINT_NODE_PATH_TO_EDITED_NODE" value="26" enum="PropertyHint"> + <constant name="PROPERTY_HINT_NODE_PATH_TO_EDITED_NODE" value="24" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_METHOD_OF_VARIANT_TYPE" value="27" enum="PropertyHint"> + <constant name="PROPERTY_HINT_METHOD_OF_VARIANT_TYPE" value="25" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_METHOD_OF_BASE_TYPE" value="28" enum="PropertyHint"> + <constant name="PROPERTY_HINT_METHOD_OF_BASE_TYPE" value="26" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_METHOD_OF_INSTANCE" value="29" enum="PropertyHint"> + <constant name="PROPERTY_HINT_METHOD_OF_INSTANCE" value="27" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_METHOD_OF_SCRIPT" value="30" enum="PropertyHint"> + <constant name="PROPERTY_HINT_METHOD_OF_SCRIPT" value="28" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_PROPERTY_OF_VARIANT_TYPE" value="31" enum="PropertyHint"> + <constant name="PROPERTY_HINT_PROPERTY_OF_VARIANT_TYPE" value="29" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_PROPERTY_OF_BASE_TYPE" value="32" enum="PropertyHint"> + <constant name="PROPERTY_HINT_PROPERTY_OF_BASE_TYPE" value="30" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_PROPERTY_OF_INSTANCE" value="33" enum="PropertyHint"> + <constant name="PROPERTY_HINT_PROPERTY_OF_INSTANCE" value="31" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_PROPERTY_OF_SCRIPT" value="34" enum="PropertyHint"> + <constant name="PROPERTY_HINT_PROPERTY_OF_SCRIPT" value="32" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_OBJECT_TOO_BIG" value="35" enum="PropertyHint"> - Hints that a property's size (in bytes) is too big to be displayed, when debugging a running project. The debugger uses this hint internally. + <constant name="PROPERTY_HINT_OBJECT_TOO_BIG" value="33" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_NODE_PATH_VALID_TYPES" value="36" enum="PropertyHint"> + <constant name="PROPERTY_HINT_NODE_PATH_VALID_TYPES" value="34" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_SAVE_FILE" value="37" enum="PropertyHint"> + <constant name="PROPERTY_HINT_SAVE_FILE" value="35" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_GLOBAL_SAVE_FILE" value="38" enum="PropertyHint"> + <constant name="PROPERTY_HINT_GLOBAL_SAVE_FILE" value="36" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_INT_IS_OBJECTID" value="39" enum="PropertyHint"> + <constant name="PROPERTY_HINT_INT_IS_OBJECTID" value="37" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_INT_IS_POINTER" value="40" enum="PropertyHint"> + <constant name="PROPERTY_HINT_INT_IS_POINTER" value="38" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_ARRAY_TYPE" value="41" enum="PropertyHint"> + <constant name="PROPERTY_HINT_ARRAY_TYPE" value="39" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_LOCALE_ID" value="42" enum="PropertyHint"> - Hints that a [String] property is a locale code. Editing it will show a locale dialog for picking language and country. + <constant name="PROPERTY_HINT_LOCALE_ID" value="40" enum="PropertyHint"> + Hints that a string property is a locale code. Editing it will show a locale dialog for picking language and country. </constant> - <constant name="PROPERTY_HINT_LOCALIZABLE_STRING" value="43" enum="PropertyHint"> - Hints that a [Dictionary] property is string translation map. Dictionary keys are locale codes and, values are translated strings. + <constant name="PROPERTY_HINT_LOCALIZABLE_STRING" value="41" enum="PropertyHint"> + Hints that a dictionary property is string translation map. Dictionary keys are locale codes and, values are translated strings. </constant> - <constant name="PROPERTY_HINT_NODE_TYPE" value="44" enum="PropertyHint"> + <constant name="PROPERTY_HINT_NODE_TYPE" value="42" enum="PropertyHint"> </constant> - <constant name="PROPERTY_HINT_HIDE_QUATERNION_EDIT" value="45" enum="PropertyHint"> - Hints that a [Quaternion] property should disable the temporary euler editor. + <constant name="PROPERTY_HINT_HIDE_QUATERNION_EDIT" value="43" enum="PropertyHint"> + Hints that a quaternion property should disable the temporary euler editor. </constant> - <constant name="PROPERTY_HINT_PASSWORD" value="46" enum="PropertyHint"> - Hints that a [String] property is a password. Every character of the string is displayed as the secret character (typically [code]*[/code]). - An optional placeholder text can be shown on its input field, similarly to [constant PROPERTY_HINT_PLACEHOLDER_TEXT]. + <constant name="PROPERTY_HINT_PASSWORD" value="44" enum="PropertyHint"> + Hints that a string property is a password, and every character is replaced with the secret character. </constant> - <constant name="PROPERTY_HINT_MAX" value="47" enum="PropertyHint"> - Represents the size of the [enum PropertyHint] enum. + <constant name="PROPERTY_HINT_MAX" value="45" enum="PropertyHint"> </constant> <constant name="PROPERTY_USAGE_NONE" value="0" enum="PropertyUsageFlags"> The property is not stored, and does not display in the editor. This is the default for non-exported properties. @@ -2844,40 +2880,38 @@ </constant> <constant name="PROPERTY_USAGE_STORE_IF_NULL" value="8192" enum="PropertyUsageFlags"> </constant> - <constant name="PROPERTY_USAGE_ANIMATE_AS_TRIGGER" value="16384" enum="PropertyUsageFlags"> - </constant> - <constant name="PROPERTY_USAGE_UPDATE_ALL_IF_MODIFIED" value="32768" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_UPDATE_ALL_IF_MODIFIED" value="16384" enum="PropertyUsageFlags"> </constant> - <constant name="PROPERTY_USAGE_SCRIPT_DEFAULT_VALUE" value="65536" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_SCRIPT_DEFAULT_VALUE" value="32768" enum="PropertyUsageFlags"> </constant> - <constant name="PROPERTY_USAGE_CLASS_IS_ENUM" value="131072" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_CLASS_IS_ENUM" value="65536" enum="PropertyUsageFlags"> </constant> - <constant name="PROPERTY_USAGE_NIL_IS_VARIANT" value="262144" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_NIL_IS_VARIANT" value="131072" enum="PropertyUsageFlags"> </constant> - <constant name="PROPERTY_USAGE_INTERNAL" value="524288" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_INTERNAL" value="262144" enum="PropertyUsageFlags"> </constant> - <constant name="PROPERTY_USAGE_DO_NOT_SHARE_ON_DUPLICATE" value="1048576" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_DO_NOT_SHARE_ON_DUPLICATE" value="524288" enum="PropertyUsageFlags"> If the property is a [Resource], a new copy of it is always created when calling [method Node.duplicate] or [method Resource.duplicate]. </constant> - <constant name="PROPERTY_USAGE_HIGH_END_GFX" value="2097152" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_HIGH_END_GFX" value="1048576" enum="PropertyUsageFlags"> The property is only shown in the editor if modern renderers are supported (GLES3 is excluded). </constant> - <constant name="PROPERTY_USAGE_NODE_PATH_FROM_SCENE_ROOT" value="4194304" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_NODE_PATH_FROM_SCENE_ROOT" value="2097152" enum="PropertyUsageFlags"> </constant> - <constant name="PROPERTY_USAGE_RESOURCE_NOT_PERSISTENT" value="8388608" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_RESOURCE_NOT_PERSISTENT" value="4194304" enum="PropertyUsageFlags"> </constant> - <constant name="PROPERTY_USAGE_KEYING_INCREMENTS" value="16777216" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_KEYING_INCREMENTS" value="8388608" enum="PropertyUsageFlags"> </constant> - <constant name="PROPERTY_USAGE_DEFERRED_SET_RESOURCE" value="33554432" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_DEFERRED_SET_RESOURCE" value="16777216" enum="PropertyUsageFlags"> </constant> - <constant name="PROPERTY_USAGE_EDITOR_INSTANTIATE_OBJECT" value="67108864" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_EDITOR_INSTANTIATE_OBJECT" value="33554432" enum="PropertyUsageFlags"> </constant> - <constant name="PROPERTY_USAGE_EDITOR_BASIC_SETTING" value="134217728" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_EDITOR_BASIC_SETTING" value="67108864" enum="PropertyUsageFlags"> </constant> - <constant name="PROPERTY_USAGE_READ_ONLY" value="268435456" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_READ_ONLY" value="134217728" enum="PropertyUsageFlags"> The property is read-only in the [EditorInspector]. </constant> - <constant name="PROPERTY_USAGE_ARRAY" value="536870912" enum="PropertyUsageFlags"> + <constant name="PROPERTY_USAGE_ARRAY" value="268435456" enum="PropertyUsageFlags"> The property is an array. </constant> <constant name="PROPERTY_USAGE_DEFAULT" value="6" enum="PropertyUsageFlags"> diff --git a/doc/classes/AStarGrid2D.xml b/doc/classes/AStarGrid2D.xml index 8dde3748d7..cba783246f 100644 --- a/doc/classes/AStarGrid2D.xml +++ b/doc/classes/AStarGrid2D.xml @@ -69,6 +69,20 @@ [b]Note:[/b] This method is not thread-safe. If called from a [Thread], it will return an empty [PackedVector3Array] and will print an error message. </description> </method> + <method name="get_point_position" qualifiers="const"> + <return type="Vector2" /> + <param index="0" name="id" type="Vector2i" /> + <description> + Returns the position of the point associated with the given [param id]. + </description> + </method> + <method name="get_point_weight_scale" qualifiers="const"> + <return type="float" /> + <param index="0" name="id" type="Vector2i" /> + <description> + Returns the weight scale of the point associated with the given [param id]. + </description> + </method> <method name="is_dirty" qualifiers="const"> <return type="bool" /> <description> @@ -103,6 +117,16 @@ <param index="1" name="solid" type="bool" default="true" /> <description> Disables or enables the specified point for pathfinding. Useful for making an obstacle. By default, all points are enabled. + [b]Note:[/b] Calling [method update] is not needed after the call of this function. + </description> + </method> + <method name="set_point_weight_scale"> + <return type="void" /> + <param index="0" name="id" type="Vector2i" /> + <param index="1" name="weight_scale" type="float" /> + <description> + Sets the [param weight_scale] for the point with the given [param id]. The [param weight_scale] is multiplied by the result of [method _compute_cost] when determining the overall cost of traveling across a segment from a neighboring point to this point. + [b]Note:[/b] Calling [method update] is not needed after the call of this function. </description> </method> <method name="update"> @@ -124,6 +148,7 @@ </member> <member name="jumping_enabled" type="bool" setter="set_jumping_enabled" getter="is_jumping_enabled" default="false"> Enables or disables jumping to skip up the intermediate points and speeds up the searching algorithm. + [b]Note:[/b] Currently, toggling it on disables the consideration of weight scaling in pathfinding. </member> <member name="offset" type="Vector2" setter="set_offset" getter="get_offset" default="Vector2(0, 0)"> The offset of the grid which will be applied to calculate the resulting point position returned by [method get_point_path]. If changed, [method update] needs to be called before finding the next path. @@ -134,20 +159,22 @@ </members> <constants> <constant name="HEURISTIC_EUCLIDEAN" value="0" enum="Heuristic"> - The Euclidean heuristic to be used for the pathfinding using the following formula: + The [url=https://en.wikipedia.org/wiki/Euclidean_distance]Euclidean heuristic[/url] to be used for the pathfinding using the following formula: [codeblock] dx = abs(to_id.x - from_id.x) dy = abs(to_id.y - from_id.y) result = sqrt(dx * dx + dy * dy) [/codeblock] + [b]Note:[/b] This is also the internal heuristic used in [AStar3D] and [AStar2D] by default (with the inclusion of possible z-axis coordinate). </constant> <constant name="HEURISTIC_MANHATTAN" value="1" enum="Heuristic"> - The Manhattan heuristic to be used for the pathfinding using the following formula: + The [url=https://en.wikipedia.org/wiki/Taxicab_geometry]Manhattan heuristic[/url] to be used for the pathfinding using the following formula: [codeblock] dx = abs(to_id.x - from_id.x) dy = abs(to_id.y - from_id.y) result = dx + dy [/codeblock] + [b]Note:[/b] This heuristic is intended to be used with 4-side orthogonal movements, provided by setting the [member diagonal_mode] to [constant DIAGONAL_MODE_NEVER]. </constant> <constant name="HEURISTIC_OCTILE" value="2" enum="Heuristic"> The Octile heuristic to be used for the pathfinding using the following formula: @@ -159,7 +186,7 @@ [/codeblock] </constant> <constant name="HEURISTIC_CHEBYSHEV" value="3" enum="Heuristic"> - The Chebyshev heuristic to be used for the pathfinding using the following formula: + The [url=https://en.wikipedia.org/wiki/Chebyshev_distance]Chebyshev heuristic[/url] to be used for the pathfinding using the following formula: [codeblock] dx = abs(to_id.x - from_id.x) dy = abs(to_id.y - from_id.y) diff --git a/doc/classes/AnimatedTexture.xml b/doc/classes/AnimatedTexture.xml index f0c86ba47b..57a7f86901 100644 --- a/doc/classes/AnimatedTexture.xml +++ b/doc/classes/AnimatedTexture.xml @@ -57,6 +57,7 @@ <member name="pause" type="bool" setter="set_pause" getter="get_pause" default="false"> If [code]true[/code], the animation will pause where it currently is (i.e. at [member current_frame]). The animation will continue from where it was paused when changing this property to [code]false[/code]. </member> + <member name="resource_local_to_scene" type="bool" setter="set_local_to_scene" getter="is_local_to_scene" overrides="Resource" default="false" /> <member name="speed_scale" type="float" setter="set_speed_scale" getter="get_speed_scale" default="1.0"> The animation speed is multiplied by this value. If set to a negative value, the animation is played in reverse. </member> diff --git a/doc/classes/Animation.xml b/doc/classes/Animation.xml index 008296713d..c0626dcfe4 100644 --- a/doc/classes/Animation.xml +++ b/doc/classes/Animation.xml @@ -251,15 +251,6 @@ Returns the amount of tracks in the animation. </description> </method> - <method name="method_track_get_key_indices" qualifiers="const"> - <return type="PackedInt32Array" /> - <param index="0" name="track_idx" type="int" /> - <param index="1" name="time_sec" type="float" /> - <param index="2" name="delta" type="float" /> - <description> - Returns all the key indices of a method track, given a position and delta time. - </description> - </method> <method name="method_track_get_name" qualifiers="const"> <return type="StringName" /> <param index="0" name="track_idx" type="int" /> @@ -314,9 +305,9 @@ <return type="int" /> <param index="0" name="track_idx" type="int" /> <param index="1" name="time" type="float" /> - <param index="2" name="exact" type="bool" default="false" /> + <param index="2" name="find_mode" type="int" enum="Animation.FindMode" default="0" /> <description> - Finds the key index by time in a given track. Optionally, only find it if the exact time is given. + Finds the key index by time in a given track. Optionally, only find it if the approx/exact time is given. </description> </method> <method name="track_get_interpolation_loop_wrap" qualifiers="const"> @@ -523,15 +514,6 @@ Swaps the track [param track_idx]'s index position with the track [param with_idx]. </description> </method> - <method name="value_track_get_key_indices" qualifiers="const"> - <return type="PackedInt32Array" /> - <param index="0" name="track_idx" type="int" /> - <param index="1" name="time_sec" type="float" /> - <param index="2" name="delta" type="float" /> - <description> - Returns all the key indices of a value track, given a position and delta time. - </description> - </method> <method name="value_track_get_update_mode" qualifiers="const"> <return type="int" enum="Animation.UpdateMode" /> <param index="0" name="track_idx" type="int" /> @@ -568,13 +550,6 @@ The animation step value. </member> </members> - <signals> - <signal name="tracks_changed"> - <description> - Emitted when there's a change in the list of tracks, e.g. tracks are added, moved or have changed paths. - </description> - </signal> - </signals> <constants> <constant name="TYPE_VALUE" value="0" enum="TrackType"> Value tracks set values in node properties, but only those which can be interpolated. For 3D position/rotation/scale, using the dedicated [constant TYPE_POSITION_3D], [constant TYPE_ROTATION_3D] and [constant TYPE_SCALE_3D] track types instead of [constant TYPE_VALUE] is recommended for performance reasons. @@ -621,15 +596,12 @@ [b]Note:[/b] The result value is always normalized and may not match the key value. </constant> <constant name="UPDATE_CONTINUOUS" value="0" enum="UpdateMode"> - Update between keyframes. + Update between keyframes and hold the value. </constant> <constant name="UPDATE_DISCRETE" value="1" enum="UpdateMode"> - Update at the keyframes and hold the value. - </constant> - <constant name="UPDATE_TRIGGER" value="2" enum="UpdateMode"> Update at the keyframes. </constant> - <constant name="UPDATE_CAPTURE" value="3" enum="UpdateMode"> + <constant name="UPDATE_CAPTURE" value="2" enum="UpdateMode"> Same as linear interpolation, but also interpolates from the current value (i.e. dynamically at runtime) if the first key isn't at 0 seconds. </constant> <constant name="LOOP_NONE" value="0" enum="LoopMode"> @@ -641,5 +613,23 @@ <constant name="LOOP_PINGPONG" value="2" enum="LoopMode"> Repeats playback and reverse playback at both ends of the animation. </constant> + <constant name="LOOPED_FLAG_NONE" value="0" enum="LoopedFlag"> + This flag indicates that the animation proceeds without any looping. + </constant> + <constant name="LOOPED_FLAG_END" value="1" enum="LoopedFlag"> + This flag indicates that the animation has reached the end of the animation and just after loop processed. + </constant> + <constant name="LOOPED_FLAG_START" value="2" enum="LoopedFlag"> + This flag indicates that the animation has reached the start of the animation and just after loop processed. + </constant> + <constant name="FIND_MODE_NEAREST" value="0" enum="FindMode"> + Finds the nearest time key. + </constant> + <constant name="FIND_MODE_APPROX" value="1" enum="FindMode"> + Finds only the key with approximating the time. + </constant> + <constant name="FIND_MODE_EXACT" value="2" enum="FindMode"> + Finds only the key with matching the time. + </constant> </constants> </class> diff --git a/doc/classes/AnimationLibrary.xml b/doc/classes/AnimationLibrary.xml index 769b338063..9be4cda5d6 100644 --- a/doc/classes/AnimationLibrary.xml +++ b/doc/classes/AnimationLibrary.xml @@ -65,6 +65,13 @@ Emitted when an [Animation] is added, under the key [param name]. </description> </signal> + <signal name="animation_changed"> + <param index="0" name="name" type="StringName" /> + <description> + Emitted when there's a change in one of the animations, e.g. tracks are added, moved or have changed paths. [param name] is the key of the animation that was changed. + See also [signal Resource.changed], which this acts as a relay for. + </description> + </signal> <signal name="animation_removed"> <param index="0" name="name" type="StringName" /> <description> diff --git a/doc/classes/AnimationNode.xml b/doc/classes/AnimationNode.xml index b856b5f208..79deb008d2 100644 --- a/doc/classes/AnimationNode.xml +++ b/doc/classes/AnimationNode.xml @@ -53,7 +53,7 @@ <return type="float" /> <param index="0" name="time" type="float" /> <param index="1" name="seek" type="bool" /> - <param index="2" name="seek_root" type="bool" /> + <param index="2" name="is_external_seeking" type="bool" /> <description> When inheriting from [AnimationRootNode], implement this virtual method to run some code when this node is processed. The [param time] parameter is a relative delta, unless [param seek] is [code]true[/code], in which case it is absolute. Here, call the [method blend_input], [method blend_node] or [method blend_animation] functions. You can also use [method get_parameter] and [method set_parameter] to modify local memory. @@ -73,11 +73,12 @@ <param index="1" name="time" type="float" /> <param index="2" name="delta" type="float" /> <param index="3" name="seeked" type="bool" /> - <param index="4" name="seek_root" type="bool" /> + <param index="4" name="is_external_seeking" type="bool" /> <param index="5" name="blend" type="float" /> - <param index="6" name="pingponged" type="int" default="0" /> + <param index="6" name="looped_flag" type="int" enum="Animation.LoopedFlag" default="0" /> <description> Blend an animation by [param blend] amount (name must be valid in the linked [AnimationPlayer]). A [param time] and [param delta] may be passed, as well as whether [param seeked] happened. + A [param looped_flag] is used by internal processing immediately after the loop. See also [enum Animation.LoopedFlag]. </description> </method> <method name="blend_input"> @@ -85,7 +86,7 @@ <param index="0" name="input_index" type="int" /> <param index="1" name="time" type="float" /> <param index="2" name="seek" type="bool" /> - <param index="3" name="seek_root" type="bool" /> + <param index="3" name="is_external_seeking" type="bool" /> <param index="4" name="blend" type="float" /> <param index="5" name="filter" type="int" enum="AnimationNode.FilterAction" default="0" /> <param index="6" name="sync" type="bool" default="true" /> @@ -99,7 +100,7 @@ <param index="1" name="node" type="AnimationNode" /> <param index="2" name="time" type="float" /> <param index="3" name="seek" type="bool" /> - <param index="4" name="seek_root" type="bool" /> + <param index="4" name="is_external_seeking" type="bool" /> <param index="5" name="blend" type="float" /> <param index="6" name="filter" type="int" enum="AnimationNode.FilterAction" default="0" /> <param index="7" name="sync" type="bool" default="true" /> diff --git a/doc/classes/AnimationNodeStateMachineTransition.xml b/doc/classes/AnimationNodeStateMachineTransition.xml index 4c2a30030b..814b2d0052 100644 --- a/doc/classes/AnimationNodeStateMachineTransition.xml +++ b/doc/classes/AnimationNodeStateMachineTransition.xml @@ -22,14 +22,11 @@ <member name="advance_expression" type="String" setter="set_advance_expression" getter="get_advance_expression" default=""""> Use an expression as a condition for state machine transitions. It is possible to create complex animation advance conditions for switching between states and gives much greater flexibility for creating complex state machines by directly interfacing with the script code. </member> - <member name="auto_advance" type="bool" setter="set_auto_advance" getter="has_auto_advance" default="false"> - Turn on the transition automatically when this state is reached. This works best with [constant SWITCH_MODE_AT_END]. - </member> - <member name="disabled" type="bool" setter="set_disabled" getter="is_disabled" default="false"> - Don't use this transition during [method AnimationNodeStateMachinePlayback.travel] or [member auto_advance]. + <member name="advance_mode" type="int" setter="set_advance_mode" getter="get_advance_mode" enum="AnimationNodeStateMachineTransition.AdvanceMode" default="1"> + Determines whether the transition should disabled, enabled when using [method AnimationNodeStateMachinePlayback.travel], or traversed automatically if the [member advance_condition] and [member advance_expression] checks are true (if assigned). </member> <member name="priority" type="int" setter="set_priority" getter="get_priority" default="1"> - Lower priority transitions are preferred when travelling through the tree via [method AnimationNodeStateMachinePlayback.travel] or [member auto_advance]. + Lower priority transitions are preferred when travelling through the tree via [method AnimationNodeStateMachinePlayback.travel] or [member advance_mode] is set to [constant ADVANCE_MODE_AUTO]. </member> <member name="switch_mode" type="int" setter="set_switch_mode" getter="get_switch_mode" enum="AnimationNodeStateMachineTransition.SwitchMode" default="0"> The transition type. @@ -58,5 +55,14 @@ <constant name="SWITCH_MODE_AT_END" value="2" enum="SwitchMode"> Wait for the current state playback to end, then switch to the beginning of the next state animation. </constant> + <constant name="ADVANCE_MODE_DISABLED" value="0" enum="AdvanceMode"> + Don't use this transition. + </constant> + <constant name="ADVANCE_MODE_ENABLED" value="1" enum="AdvanceMode"> + Only use this transition during [method AnimationNodeStateMachinePlayback.travel]. + </constant> + <constant name="ADVANCE_MODE_AUTO" value="2" enum="AdvanceMode"> + Automatically use this transition if the [member advance_condition] and [member advance_expression] checks are true (if assigned). + </constant> </constants> </class> diff --git a/doc/classes/AnimationTree.xml b/doc/classes/AnimationTree.xml index 27797b00b5..a17a727d7e 100644 --- a/doc/classes/AnimationTree.xml +++ b/doc/classes/AnimationTree.xml @@ -19,10 +19,66 @@ Manually advance the animations by the specified time (in seconds). </description> </method> - <method name="get_root_motion_transform" qualifiers="const"> - <return type="Transform3D" /> + <method name="get_root_motion_position" qualifiers="const"> + <return type="Vector3" /> <description> - Retrieve the motion of the [member root_motion_track] as a [Transform3D] that can be used elsewhere. If [member root_motion_track] is not a path to a track of type [constant Animation.TYPE_POSITION_3D], [constant Animation.TYPE_SCALE_3D] or [constant Animation.TYPE_ROTATION_3D], returns an identity transformation. See also [member root_motion_track] and [RootMotionView]. + Retrieve the motion of position with the [member root_motion_track] as a [Vector3] that can be used elsewhere. + If [member root_motion_track] is not a path to a track of type [constant Animation.TYPE_POSITION_3D], returns [code]Vector3(0, 0, 0)[/code]. + See also [member root_motion_track] and [RootMotionView]. + The most basic example is applying position to [CharacterBody3D]: + [codeblocks] + [gdscript] + var current_rotation: Quaternion + + func _process(delta): + if Input.is_action_just_pressed("animate"): + current_rotation = get_quaternion() + state_machine.travel("Animate") + var velocity: Vector3 = current_rotation * animation_tree.get_root_motion_position() / delta + set_velocity(velocity) + move_and_slide() + [/gdscript] + [/codeblocks] + </description> + </method> + <method name="get_root_motion_rotation" qualifiers="const"> + <return type="Quaternion" /> + <description> + Retrieve the motion of rotation with the [member root_motion_track] as a [Quaternion] that can be used elsewhere. + If [member root_motion_track] is not a path to a track of type [constant Animation.TYPE_ROTATION_3D], returns [code]Quaternion(0, 0, 0, 1)[/code]. + See also [member root_motion_track] and [RootMotionView]. + The most basic example is applying rotation to [CharacterBody3D]: + [codeblocks] + [gdscript] + func _process(delta): + if Input.is_action_just_pressed("animate"): + state_machine.travel("Animate") + set_quaternion(get_quaternion() * animation_tree.get_root_motion_rotation()) + [/gdscript] + [/codeblocks] + </description> + </method> + <method name="get_root_motion_scale" qualifiers="const"> + <return type="Vector3" /> + <description> + Retrieve the motion of scale with the [member root_motion_track] as a [Vector3] that can be used elsewhere. + If [member root_motion_track] is not a path to a track of type [constant Animation.TYPE_SCALE_3D], returns [code]Vector3(0, 0, 0)[/code]. + See also [member root_motion_track] and [RootMotionView]. + The most basic example is applying scale to [CharacterBody3D]: + [codeblocks] + [gdscript] + var current_scale: Vector3 = Vector3(1, 1, 1) + var scale_accum: Vector3 = Vector3(1, 1, 1) + + func _process(delta): + if Input.is_action_just_pressed("animate"): + current_scale = get_scale() + scale_accum = Vector3(1, 1, 1) + state_machine.travel("Animate") + scale_accum += animation_tree.get_root_motion_scale() + set_scale(current_scale * scale_accum) + [/gdscript] + [/codeblocks] </description> </method> <method name="rename_parameter"> @@ -48,18 +104,32 @@ </member> <member name="root_motion_track" type="NodePath" setter="set_root_motion_track" getter="get_root_motion_track" default="NodePath("")"> The path to the Animation track used for root motion. Paths must be valid scene-tree paths to a node, and must be specified starting from the parent node of the node that will reproduce the animation. To specify a track that controls properties or bones, append its name after the path, separated by [code]":"[/code]. For example, [code]"character/skeleton:ankle"[/code] or [code]"character/mesh:transform/local"[/code]. - If the track has type [constant Animation.TYPE_POSITION_3D], [constant Animation.TYPE_ROTATION_3D] or [constant Animation.TYPE_SCALE_3D] the transformation will be cancelled visually, and the animation will appear to stay in place. See also [method get_root_motion_transform] and [RootMotionView]. + If the track has type [constant Animation.TYPE_POSITION_3D], [constant Animation.TYPE_ROTATION_3D] or [constant Animation.TYPE_SCALE_3D] the transformation will be cancelled visually, and the animation will appear to stay in place. See also [method get_root_motion_position], [method get_root_motion_rotation], [method get_root_motion_scale] and [RootMotionView]. </member> <member name="tree_root" type="AnimationNode" setter="set_tree_root" getter="get_tree_root"> The root animation node of this [AnimationTree]. See [AnimationNode]. </member> </members> <signals> + <signal name="animation_finished"> + <param index="0" name="anim_name" type="StringName" /> + <description> + Notifies when an animation finished playing. + [b]Note:[/b] This signal is not emitted if an animation is looping or aborted. Also be aware of the possibility of unseen playback by sync and xfade. + </description> + </signal> <signal name="animation_player_changed"> <description> Emitted when the [member anim_player] is changed. </description> </signal> + <signal name="animation_started"> + <param index="0" name="anim_name" type="StringName" /> + <description> + Notifies when an animation starts playing. + [b]Note:[/b] This signal is not emitted if an animation is looping or playbacked from the middle. Also be aware of the possibility of unseen playback by sync and xfade. + </description> + </signal> </signals> <constants> <constant name="ANIMATION_PROCESS_PHYSICS" value="0" enum="AnimationProcessCallback"> diff --git a/doc/classes/Area2D.xml b/doc/classes/Area2D.xml index 29592f133d..3f76cc16ec 100644 --- a/doc/classes/Area2D.xml +++ b/doc/classes/Area2D.xml @@ -114,15 +114,13 @@ <signal name="area_entered"> <param index="0" name="area" type="Area2D" /> <description> - Emitted when another Area2D enters this Area2D. Requires [member monitoring] to be set to [code]true[/code]. - [param area] the other Area2D. + Emitted when the received [param area] enters this area. Requires [member monitoring] to be set to [code]true[/code]. </description> </signal> <signal name="area_exited"> <param index="0" name="area" type="Area2D" /> <description> - Emitted when another Area2D exits this Area2D. Requires [member monitoring] to be set to [code]true[/code]. - [param area] the other Area2D. + Emitted when the received [param area] exits this area. Requires [member monitoring] to be set to [code]true[/code]. </description> </signal> <signal name="area_shape_entered"> @@ -131,11 +129,18 @@ <param index="2" name="area_shape_index" type="int" /> <param index="3" name="local_shape_index" type="int" /> <description> - Emitted when one of another Area2D's [Shape2D]s enters one of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to [code]true[/code]. - [param area_rid] the [RID] of the other Area2D's [CollisionObject2D] used by the [PhysicsServer2D]. - [param area] the other Area2D. - [param area_shape_index] the index of the [Shape2D] of the other Area2D used by the [PhysicsServer2D]. Get the [CollisionShape2D] node with [code]area.shape_owner_get_owner(area.shape_find_owner(area_shape_index))[/code]. - [param local_shape_index] the index of the [Shape2D] of this Area2D used by the [PhysicsServer2D]. Get the [CollisionShape2D] node with [code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/code]. + Emitted when a [Shape2D] of the received [param area] enters a shape of this area. Requires [member monitoring] to be set to [code]true[/code]. + [param local_shape_index] and [param area_shape_index] contain indices of the interacting shapes from this area and the other area, respectively. [param area_rid] contains the [RID] of the other area. These values can be used with the [PhysicsServer2D]. + [b]Example of getting the[/b] [CollisionShape2D] [b]node from the shape index:[/b] + [codeblocks] + [gdscript] + var other_shape_owner = area.shape_find_owner(area_shape_index) + var other_shape_node = area.shape_owner_get_owner(other_shape_owner) + + var local_shape_owner = shape_find_owner(local_shape_index) + var local_shape_node = shape_owner_get_owner(local_shape_owner) + [/gdscript] + [/codeblocks] </description> </signal> <signal name="area_shape_exited"> @@ -144,25 +149,20 @@ <param index="2" name="area_shape_index" type="int" /> <param index="3" name="local_shape_index" type="int" /> <description> - Emitted when one of another Area2D's [Shape2D]s exits one of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to [code]true[/code]. - [param area_rid] the [RID] of the other Area2D's [CollisionObject2D] used by the [PhysicsServer2D]. - [param area] the other Area2D. - [param area_shape_index] the index of the [Shape2D] of the other Area2D used by the [PhysicsServer2D]. Get the [CollisionShape2D] node with [code]area.shape_owner_get_owner(area.shape_find_owner(area_shape_index))[/code]. - [param local_shape_index] the index of the [Shape2D] of this Area2D used by the [PhysicsServer2D]. Get the [CollisionShape2D] node with [code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/code]. + Emitted when a [Shape2D] of the received [param area] exits a shape of this area. Requires [member monitoring] to be set to [code]true[/code]. + See also [signal area_shape_entered]. </description> </signal> <signal name="body_entered"> <param index="0" name="body" type="Node2D" /> <description> - Emitted when a [PhysicsBody2D] or [TileMap] enters this Area2D. Requires [member monitoring] to be set to [code]true[/code]. [TileMap]s are detected if the [TileSet] has Collision [Shape2D]s. - [param body] the [Node], if it exists in the tree, of the other [PhysicsBody2D] or [TileMap]. + Emitted when the received [param body] enters this area. [param body] can be a [PhysicsBody2D] or a [TileMap]. [TileMap]s are detected if their [TileSet] has collision shapes configured. Requires [member monitoring] to be set to [code]true[/code]. </description> </signal> <signal name="body_exited"> <param index="0" name="body" type="Node2D" /> <description> - Emitted when a [PhysicsBody2D] or [TileMap] exits this Area2D. Requires [member monitoring] to be set to [code]true[/code]. [TileMap]s are detected if the [TileSet] has Collision [Shape2D]s. - [param body] the [Node], if it exists in the tree, of the other [PhysicsBody2D] or [TileMap]. + Emitted when the received [param body] exits this area. [param body] can be a [PhysicsBody2D] or a [TileMap]. [TileMap]s are detected if their [TileSet] has collision shapes configured. Requires [member monitoring] to be set to [code]true[/code]. </description> </signal> <signal name="body_shape_entered"> @@ -171,11 +171,18 @@ <param index="2" name="body_shape_index" type="int" /> <param index="3" name="local_shape_index" type="int" /> <description> - Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s enters one of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to [code]true[/code]. [TileMap]s are detected if the [TileSet] has Collision [Shape2D]s. - [param body_rid] the [RID] of the [PhysicsBody2D] or [TileSet]'s [CollisionObject2D] used by the [PhysicsServer2D]. - [param body] the [Node], if it exists in the tree, of the [PhysicsBody2D] or [TileMap]. - [param body_shape_index] the index of the [Shape2D] of the [PhysicsBody2D] or [TileMap] used by the [PhysicsServer2D]. Get the [CollisionShape2D] node with [code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/code]. - [param local_shape_index] the index of the [Shape2D] of this Area2D used by the [PhysicsServer2D]. Get the [CollisionShape2D] node with [code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/code]. + Emitted when a [Shape2D] of the received [param body] enters a shape of this area. [param body] can be a [PhysicsBody2D] or a [TileMap]. [TileMap]s are detected if their [TileSet] has collision shapes configured. Requires [member monitoring] to be set to [code]true[/code]. + [param local_shape_index] and [param body_shape_index] contain indices of the interacting shapes from this area and the interacting body, respectively. [param body_rid] contains the [RID] of the body. These values can be used with the [PhysicsServer2D]. + [b]Example of getting the[/b] [CollisionShape2D] [b]node from the shape index:[/b] + [codeblocks] + [gdscript] + var body_shape_owner = body.shape_find_owner(body_shape_index) + var body_shape_node = body.shape_owner_get_owner(body_shape_owner) + + var local_shape_owner = shape_find_owner(local_shape_index) + var local_shape_node = shape_owner_get_owner(local_shape_owner) + [/gdscript] + [/codeblocks] </description> </signal> <signal name="body_shape_exited"> @@ -184,11 +191,8 @@ <param index="2" name="body_shape_index" type="int" /> <param index="3" name="local_shape_index" type="int" /> <description> - Emitted when one of a [PhysicsBody2D] or [TileMap]'s [Shape2D]s exits one of this Area2D's [Shape2D]s. Requires [member monitoring] to be set to [code]true[/code]. [TileMap]s are detected if the [TileSet] has Collision [Shape2D]s. - [param body_rid] the [RID] of the [PhysicsBody2D] or [TileSet]'s [CollisionObject2D] used by the [PhysicsServer2D]. - [param body] the [Node], if it exists in the tree, of the [PhysicsBody2D] or [TileMap]. - [param body_shape_index] the index of the [Shape2D] of the [PhysicsBody2D] or [TileMap] used by the [PhysicsServer2D]. Get the [CollisionShape2D] node with [code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/code]. - [param local_shape_index] the index of the [Shape2D] of this Area2D used by the [PhysicsServer2D]. Get the [CollisionShape2D] node with [code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/code]. + Emitted when a [Shape2D] of the received [param body] exits a shape of this area. [param body] can be a [PhysicsBody2D] or a [TileMap]. [TileMap]s are detected if their [TileSet] has collision shapes configured. Requires [member monitoring] to be set to [code]true[/code]. + See also [signal body_shape_entered]. </description> </signal> </signals> diff --git a/doc/classes/Area3D.xml b/doc/classes/Area3D.xml index ea8cab324d..8923ac8aae 100644 --- a/doc/classes/Area3D.xml +++ b/doc/classes/Area3D.xml @@ -133,15 +133,13 @@ <signal name="area_entered"> <param index="0" name="area" type="Area3D" /> <description> - Emitted when another Area3D enters this Area3D. Requires [member monitoring] to be set to [code]true[/code]. - [param area] the other Area3D. + Emitted when the received [param area] enters this area. Requires [member monitoring] to be set to [code]true[/code]. </description> </signal> <signal name="area_exited"> <param index="0" name="area" type="Area3D" /> <description> - Emitted when another Area3D exits this Area3D. Requires [member monitoring] to be set to [code]true[/code]. - [param area] the other Area3D. + Emitted when the received [param area] exits this area. Requires [member monitoring] to be set to [code]true[/code]. </description> </signal> <signal name="area_shape_entered"> @@ -150,11 +148,18 @@ <param index="2" name="area_shape_index" type="int" /> <param index="3" name="local_shape_index" type="int" /> <description> - Emitted when one of another Area3D's [Shape3D]s enters one of this Area3D's [Shape3D]s. Requires [member monitoring] to be set to [code]true[/code]. - [param area_rid] the [RID] of the other Area3D's [CollisionObject3D] used by the [PhysicsServer3D]. - [param area] the other Area3D. - [param area_shape_index] the index of the [Shape3D] of the other Area3D used by the [PhysicsServer3D]. Get the [CollisionShape3D] node with [code]area.shape_owner_get_owner(area.shape_find_owner(area_shape_index))[/code]. - [param local_shape_index] the index of the [Shape3D] of this Area3D used by the [PhysicsServer3D]. Get the [CollisionShape3D] node with [code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/code]. + Emitted when a [Shape3D] of the received [param area] enters a shape of this area. Requires [member monitoring] to be set to [code]true[/code]. + [param local_shape_index] and [param area_shape_index] contain indices of the interacting shapes from this area and the other area, respectively. [param area_rid] contains the [RID] of the other area. These values can be used with the [PhysicsServer3D]. + [b]Example of getting the[/b] [CollisionShape3D] [b]node from the shape index:[/b] + [codeblocks] + [gdscript] + var other_shape_owner = area.shape_find_owner(area_shape_index) + var other_shape_node = area.shape_owner_get_owner(other_shape_owner) + + var local_shape_owner = shape_find_owner(local_shape_index) + var local_shape_node = shape_owner_get_owner(local_shape_owner) + [/gdscript] + [/codeblocks] </description> </signal> <signal name="area_shape_exited"> @@ -163,25 +168,20 @@ <param index="2" name="area_shape_index" type="int" /> <param index="3" name="local_shape_index" type="int" /> <description> - Emitted when one of another Area3D's [Shape3D]s exits one of this Area3D's [Shape3D]s. Requires [member monitoring] to be set to [code]true[/code]. - [param area_rid] the [RID] of the other Area3D's [CollisionObject3D] used by the [PhysicsServer3D]. - [param area] the other Area3D. - [param area_shape_index] the index of the [Shape3D] of the other Area3D used by the [PhysicsServer3D]. Get the [CollisionShape3D] node with [code]area.shape_owner_get_owner(area.shape_find_owner(area_shape_index))[/code]. - [param local_shape_index] the index of the [Shape3D] of this Area3D used by the [PhysicsServer3D]. Get the [CollisionShape3D] node with [code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/code]. + Emitted when a [Shape3D] of the received [param area] exits a shape of this area. Requires [member monitoring] to be set to [code]true[/code]. + See also [signal area_shape_entered]. </description> </signal> <signal name="body_entered"> <param index="0" name="body" type="Node3D" /> <description> - Emitted when a [PhysicsBody3D] or [GridMap] enters this Area3D. Requires [member monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the [MeshLibrary] has Collision [Shape3D]s. - [param body] the [Node], if it exists in the tree, of the other [PhysicsBody3D] or [GridMap]. + Emitted when the received [param body] enters this area. [param body] can be a [PhysicsBody3D] or a [GridMap]. [GridMap]s are detected if their [MeshLibrary] has collision shapes configured. Requires [member monitoring] to be set to [code]true[/code]. </description> </signal> <signal name="body_exited"> <param index="0" name="body" type="Node3D" /> <description> - Emitted when a [PhysicsBody3D] or [GridMap] exits this Area3D. Requires [member monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the [MeshLibrary] has Collision [Shape3D]s. - [param body] the [Node], if it exists in the tree, of the other [PhysicsBody3D] or [GridMap]. + Emitted when the received [param body] exits this area. [param body] can be a [PhysicsBody3D] or a [GridMap]. [GridMap]s are detected if their [MeshLibrary] has collision shapes configured. Requires [member monitoring] to be set to [code]true[/code]. </description> </signal> <signal name="body_shape_entered"> @@ -190,11 +190,18 @@ <param index="2" name="body_shape_index" type="int" /> <param index="3" name="local_shape_index" type="int" /> <description> - Emitted when one of a [PhysicsBody3D] or [GridMap]'s [Shape3D]s enters one of this Area3D's [Shape3D]s. Requires [member monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the [MeshLibrary] has Collision [Shape3D]s. - [param body_rid] the [RID] of the [PhysicsBody3D] or [MeshLibrary]'s [CollisionObject3D] used by the [PhysicsServer3D]. - [param body] the [Node], if it exists in the tree, of the [PhysicsBody3D] or [GridMap]. - [param body_shape_index] the index of the [Shape3D] of the [PhysicsBody3D] or [GridMap] used by the [PhysicsServer3D]. Get the [CollisionShape3D] node with [code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/code]. - [param local_shape_index] the index of the [Shape3D] of this Area3D used by the [PhysicsServer3D]. Get the [CollisionShape3D] node with [code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/code]. + Emitted when a [Shape3D] of the received [param body] enters a shape of this area. [param body] can be a [PhysicsBody3D] or a [GridMap]. [GridMap]s are detected if their [MeshLibrary] has collision shapes configured. Requires [member monitoring] to be set to [code]true[/code]. + [param local_shape_index] and [param body_shape_index] contain indices of the interacting shapes from this area and the interacting body, respectively. [param body_rid] contains the [RID] of the body. These values can be used with the [PhysicsServer3D]. + [b]Example of getting the[/b] [CollisionShape3D] [b]node from the shape index:[/b] + [codeblocks] + [gdscript] + var body_shape_owner = body.shape_find_owner(body_shape_index) + var body_shape_node = body.shape_owner_get_owner(body_shape_owner) + + var local_shape_owner = shape_find_owner(local_shape_index) + var local_shape_node = shape_owner_get_owner(local_shape_owner) + [/gdscript] + [/codeblocks] </description> </signal> <signal name="body_shape_exited"> @@ -203,11 +210,8 @@ <param index="2" name="body_shape_index" type="int" /> <param index="3" name="local_shape_index" type="int" /> <description> - Emitted when one of a [PhysicsBody3D] or [GridMap]'s [Shape3D]s enters one of this Area3D's [Shape3D]s. Requires [member monitoring] to be set to [code]true[/code]. [GridMap]s are detected if the [MeshLibrary] has Collision [Shape3D]s. - [param body_rid] the [RID] of the [PhysicsBody3D] or [MeshLibrary]'s [CollisionObject3D] used by the [PhysicsServer3D]. - [param body] the [Node], if it exists in the tree, of the [PhysicsBody3D] or [GridMap]. - [param body_shape_index] the index of the [Shape3D] of the [PhysicsBody3D] or [GridMap] used by the [PhysicsServer3D]. Get the [CollisionShape3D] node with [code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/code]. - [param local_shape_index] the index of the [Shape3D] of this Area3D used by the [PhysicsServer3D]. Get the [CollisionShape3D] node with [code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/code]. + Emitted when a [Shape3D] of the received [param body] exits a shape of this area. [param body] can be a [PhysicsBody3D] or a [GridMap]. [GridMap]s are detected if their [MeshLibrary] has collision shapes configured. Requires [member monitoring] to be set to [code]true[/code]. + See also [signal body_shape_entered]. </description> </signal> </signals> diff --git a/doc/classes/Array.xml b/doc/classes/Array.xml index 2ec37651f7..603974d619 100644 --- a/doc/classes/Array.xml +++ b/doc/classes/Array.xml @@ -300,13 +300,6 @@ Searches the array for a value and returns its index or [code]-1[/code] if not found. Optionally, the initial search index can be passed. </description> </method> - <method name="find_last" qualifiers="const"> - <return type="int" /> - <param index="0" name="value" type="Variant" /> - <description> - Searches the array in reverse order for a value and returns its index or [code]-1[/code] if not found. - </description> - </method> <method name="front" qualifiers="const"> <return type="Variant" /> <description> diff --git a/doc/classes/ArrayMesh.xml b/doc/classes/ArrayMesh.xml index ab948dd0de..70ce4ad516 100644 --- a/doc/classes/ArrayMesh.xml +++ b/doc/classes/ArrayMesh.xml @@ -25,10 +25,12 @@ m.mesh = arr_mesh [/gdscript] [csharp] - var vertices = new Godot.Collections.Array<Vector3>(); - vertices.Add(new Vector3(0, 1, 0)); - vertices.Add(new Vector3(1, 0, 0)); - vertices.Add(new Vector3(0, 0, 1)); + var vertices = new Vector3[] + { + new Vector3(0, 1, 0), + new Vector3(1, 0, 0), + new Vector3(0, 0, 1), + }; // Initialize the ArrayMesh. var arrMesh = new ArrayMesh(); @@ -38,7 +40,7 @@ // Create the Mesh. arrMesh.AddSurfaceFromArrays(Mesh.PrimitiveType.Triangles, arrays); - var m = new MeshInstance(); + var m = new MeshInstance3D(); m.Mesh = arrMesh; [/csharp] [/codeblocks] @@ -100,13 +102,13 @@ <param index="0" name="transform" type="Transform3D" /> <param index="1" name="texel_size" type="float" /> <description> - Will perform a UV unwrap on the [ArrayMesh] to prepare the mesh for lightmapping. + Performs a UV unwrap on the [ArrayMesh] to prepare the mesh for lightmapping. </description> </method> <method name="regen_normal_maps"> <return type="void" /> <description> - Will regenerate normal maps for the [ArrayMesh]. + Regenerates tangents for each of the [ArrayMesh]'s surfaces. </description> </method> <method name="set_blend_shape_name"> diff --git a/doc/classes/AtlasTexture.xml b/doc/classes/AtlasTexture.xml index 809d983a9d..fc75459e46 100644 --- a/doc/classes/AtlasTexture.xml +++ b/doc/classes/AtlasTexture.xml @@ -23,5 +23,6 @@ <member name="region" type="Rect2" setter="set_region" getter="get_region" default="Rect2(0, 0, 0, 0)"> The region used to draw the [member atlas]. </member> + <member name="resource_local_to_scene" type="bool" setter="set_local_to_scene" getter="is_local_to_scene" overrides="Resource" default="false" /> </members> </class> diff --git a/doc/classes/AudioEffectDistortion.xml b/doc/classes/AudioEffectDistortion.xml index 6bd8522459..ef39a9c60e 100644 --- a/doc/classes/AudioEffectDistortion.xml +++ b/doc/classes/AudioEffectDistortion.xml @@ -2,11 +2,11 @@ <class name="AudioEffectDistortion" inherits="AudioEffect" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> Adds a distortion audio effect to an Audio bus. - Modify the sound to make it distorted. + Modifies the sound to make it distorted. </brief_description> <description> Different types are available: clip, tan, lo-fi (bit crushing), overdrive, or waveshape. - By distorting the waveform the frequency content change, which will often make the sound "crunchy" or "abrasive". For games, it can simulate sound coming from some saturated device or speaker very efficiently. + By distorting the waveform the frequency content changes, which will often make the sound "crunchy" or "abrasive". For games, it can simulate sound coming from some saturated device or speaker very efficiently. </description> <tutorials> <link title="Audio buses">$DOCS_URL/tutorials/audio/audio_buses.html</link> @@ -22,10 +22,10 @@ Distortion type. </member> <member name="post_gain" type="float" setter="set_post_gain" getter="get_post_gain" default="0.0"> - Increases or decreases the volume after the effect. Value can range from -80 to 24. + Increases or decreases the volume after the effect, in decibels. Value can range from -80 to 24. </member> <member name="pre_gain" type="float" setter="set_pre_gain" getter="get_pre_gain" default="0.0"> - Increases or decreases the volume before the effect. Value can range from -60 to 60. + Increases or decreases the volume before the effect, in decibels. Value can range from -60 to 60. </member> </members> <constants> @@ -35,10 +35,10 @@ <constant name="MODE_ATAN" value="1" enum="Mode"> </constant> <constant name="MODE_LOFI" value="2" enum="Mode"> - Low-resolution digital distortion effect. You can use it to emulate the sound of early digital audio devices. + Low-resolution digital distortion effect (bit depth reduction). You can use it to emulate the sound of early digital audio devices. </constant> <constant name="MODE_OVERDRIVE" value="3" enum="Mode"> - Emulates the warm distortion produced by a field effect transistor, which is commonly used in solid-state musical instrument amplifiers. + Emulates the warm distortion produced by a field effect transistor, which is commonly used in solid-state musical instrument amplifiers. The [member drive] property has no effect in this mode. </constant> <constant name="MODE_WAVESHAPE" value="4" enum="Mode"> Waveshaper distortions are used mainly by electronic musicians to achieve an extra-abrasive sound. diff --git a/doc/classes/AudioStreamPlayer2D.xml b/doc/classes/AudioStreamPlayer2D.xml index ae86fd0e66..81755b580f 100644 --- a/doc/classes/AudioStreamPlayer2D.xml +++ b/doc/classes/AudioStreamPlayer2D.xml @@ -29,7 +29,7 @@ <return type="void" /> <param index="0" name="from_position" type="float" default="0.0" /> <description> - Plays the audio from the given position [param from_position], in seconds. + Queues the audio to play on the next physics frame, from the given position [param from_position], in seconds. </description> </method> <method name="seek"> @@ -73,7 +73,7 @@ The pitch and the tempo of the audio, as a multiplier of the audio sample's sample rate. </member> <member name="playing" type="bool" setter="_set_playing" getter="is_playing" default="false"> - If [code]true[/code], audio is playing. + If [code]true[/code], audio is playing or is queued to be played (see [method play]). </member> <member name="stream" type="AudioStream" setter="set_stream" getter="get_stream"> The [AudioStream] object to be played. diff --git a/doc/classes/AudioStreamPlayer3D.xml b/doc/classes/AudioStreamPlayer3D.xml index 11d6e9cc7a..f711210ca1 100644 --- a/doc/classes/AudioStreamPlayer3D.xml +++ b/doc/classes/AudioStreamPlayer3D.xml @@ -29,7 +29,7 @@ <return type="void" /> <param index="0" name="from_position" type="float" default="0.0" /> <description> - Plays the audio from the given position [param from_position], in seconds. + Queues the audio to play on the next physics frame, from the given position [param from_position], in seconds. </description> </method> <method name="seek"> @@ -94,7 +94,7 @@ The pitch and the tempo of the audio, as a multiplier of the audio sample's sample rate. </member> <member name="playing" type="bool" setter="_set_playing" getter="is_playing" default="false"> - If [code]true[/code], audio is playing. + If [code]true[/code], audio is playing or is queued to be played (see [method play]). </member> <member name="stream" type="AudioStream" setter="set_stream" getter="get_stream"> The [AudioStream] resource to be played. diff --git a/doc/classes/AudioStreamRandomizer.xml b/doc/classes/AudioStreamRandomizer.xml index 5490770b7d..d93f853c89 100644 --- a/doc/classes/AudioStreamRandomizer.xml +++ b/doc/classes/AudioStreamRandomizer.xml @@ -12,8 +12,10 @@ <method name="add_stream"> <return type="void" /> <param index="0" name="index" type="int" /> + <param index="1" name="stream" type="AudioStream" /> + <param index="2" name="weight" type="float" default="1.0" /> <description> - Insert a stream at the specified index. + Insert a stream at the specified index. If the index is less than zero, the insertion occurs at the end of the underlying pool. </description> </method> <method name="get_stream" qualifiers="const"> @@ -78,13 +80,13 @@ </members> <constants> <constant name="PLAYBACK_RANDOM_NO_REPEATS" value="0" enum="PlaybackMode"> - Pick a stream at random according to the probability weights chosen for each stream, but avoid playing the same stream twice in a row whenever possible. + Pick a stream at random according to the probability weights chosen for each stream, but avoid playing the same stream twice in a row whenever possible. If only 1 sound is present in the pool, the same sound will always play, effectively allowing repeats to occur. </constant> <constant name="PLAYBACK_RANDOM" value="1" enum="PlaybackMode"> - Pick a stream at random according to the probability weights chosen for each stream. + Pick a stream at random according to the probability weights chosen for each stream. If only 1 sound is present in the pool, the same sound will always play. </constant> <constant name="PLAYBACK_SEQUENTIAL" value="2" enum="PlaybackMode"> - Play streams in the order they appear in the stream pool. + Play streams in the order they appear in the stream pool. If only 1 sound is present in the pool, the same sound will always play. </constant> </constants> </class> diff --git a/doc/classes/BackBufferCopy.xml b/doc/classes/BackBufferCopy.xml index 3c811e6226..b2c5a1756f 100644 --- a/doc/classes/BackBufferCopy.xml +++ b/doc/classes/BackBufferCopy.xml @@ -4,8 +4,8 @@ Copies a region of the screen (or the whole screen) to a buffer so it can be accessed in your shader scripts through the [code]texture(SCREEN_TEXTURE, ...)[/code] function. </brief_description> <description> - Node for back-buffering the currently-displayed screen. The region defined in the BackBufferCopy node is buffered with the content of the screen it covers, or the entire screen according to the copy mode set. Use the [code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to access the buffer. - [b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), anchors and margins won't apply to child [Control]-derived nodes. This can be problematic when resizing the window. To avoid this, add [Control]-derived nodes as [i]siblings[/i] to the BackBufferCopy node instead of adding them as children. + Node for back-buffering the currently-displayed screen. The region defined in the [BackBufferCopy] node is buffered with the content of the screen it covers, or the entire screen according to the copy mode set. Use the [code]texture(SCREEN_TEXTURE, ...)[/code] function in your shader scripts to access the buffer. + [b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), anchors and margins won't apply to child [Control]-derived nodes. This can be problematic when resizing the window. To avoid this, add [Control]-derived nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of adding them as children. </description> <tutorials> </tutorials> @@ -14,18 +14,18 @@ Buffer mode. See [enum CopyMode] constants. </member> <member name="rect" type="Rect2" setter="set_rect" getter="get_rect" default="Rect2(-100, -100, 200, 200)"> - The area covered by the BackBufferCopy. Only used if [member copy_mode] is [constant COPY_MODE_RECT]. + The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is [constant COPY_MODE_RECT]. </member> </members> <constants> <constant name="COPY_MODE_DISABLED" value="0" enum="CopyMode"> - Disables the buffering mode. This means the BackBufferCopy node will directly use the portion of screen it covers. + Disables the buffering mode. This means the [BackBufferCopy] node will directly use the portion of screen it covers. </constant> <constant name="COPY_MODE_RECT" value="1" enum="CopyMode"> - BackBufferCopy buffers a rectangular region. + [BackBufferCopy] buffers a rectangular region. </constant> <constant name="COPY_MODE_VIEWPORT" value="2" enum="CopyMode"> - BackBufferCopy buffers the entire screen. + [BackBufferCopy] buffers the entire screen. </constant> </constants> </class> diff --git a/doc/classes/BaseMaterial3D.xml b/doc/classes/BaseMaterial3D.xml index de980eab0c..8a5048de6b 100644 --- a/doc/classes/BaseMaterial3D.xml +++ b/doc/classes/BaseMaterial3D.xml @@ -319,7 +319,7 @@ Texture that controls the strength of the refraction per-pixel. Multiplied by [member refraction_scale]. </member> <member name="refraction_texture_channel" type="int" setter="set_refraction_texture_channel" getter="get_refraction_texture_channel" enum="BaseMaterial3D.TextureChannel" default="0"> - Specifies the channel of the [member ao_texture] in which the ambient occlusion information is stored. This is useful when you store the information for multiple effects in a single texture. For example if you stored metallic in the red channel, roughness in the blue, and ambient occlusion in the green you could reduce the number of textures you use. + Specifies the channel of the [member refraction_texture] in which the refraction information is stored. This is useful when you store the information for multiple effects in a single texture. For example if you stored refraction in the red channel, roughness in the blue, and ambient occlusion in the green you could reduce the number of textures you use. </member> <member name="rim" type="float" setter="set_rim" getter="get_rim" default="1.0"> Sets the strength of the rim lighting effect. @@ -341,7 +341,7 @@ Texture used to control the roughness per-pixel. Multiplied by [member roughness]. </member> <member name="roughness_texture_channel" type="int" setter="set_roughness_texture_channel" getter="get_roughness_texture_channel" enum="BaseMaterial3D.TextureChannel" default="0"> - Specifies the channel of the [member ao_texture] in which the ambient occlusion information is stored. This is useful when you store the information for multiple effects in a single texture. For example if you stored metallic in the red channel, roughness in the blue, and ambient occlusion in the green you could reduce the number of textures you use. + Specifies the channel of the [member roughness_texture] in which the roughness information is stored. This is useful when you store the information for multiple effects in a single texture. For example if you stored metallic in the red channel, roughness in the blue, and ambient occlusion in the green you could reduce the number of textures you use. </member> <member name="shading_mode" type="int" setter="set_shading_mode" getter="get_shading_mode" enum="BaseMaterial3D.ShadingMode" default="1"> Sets whether the shading takes place per-pixel or per-vertex. Per-vertex lighting is faster, making it the best choice for mobile applications, however it looks considerably worse than per-pixel. @@ -529,13 +529,13 @@ The material will use the texture's alpha values for transparency. </constant> <constant name="TRANSPARENCY_ALPHA_SCISSOR" value="2" enum="Transparency"> - The material will cut off all values below a threshold, the rest will remain opaque. + The material will cut off all values below a threshold, the rest will remain opaque. The opaque portions will be rendering in the depth prepass. </constant> <constant name="TRANSPARENCY_ALPHA_HASH" value="3" enum="Transparency"> The material will cut off all values below a spatially-deterministic threshold, the rest will remain opaque. </constant> <constant name="TRANSPARENCY_ALPHA_DEPTH_PRE_PASS" value="4" enum="Transparency"> - The material will use the texture's alpha value for transparency, but will still be rendered in the pre-pass. + The material will use the texture's alpha value for transparency, but will still be rendered in the depth prepass. </constant> <constant name="TRANSPARENCY_MAX" value="5" enum="Transparency"> Represents the size of the [enum Transparency] enum. @@ -613,13 +613,14 @@ Enables AlphaToCoverage and forces all non-zero alpha values to [code]1[/code]. Alpha values in the material are passed to the AntiAliasing sample mask. </constant> <constant name="DEPTH_DRAW_OPAQUE_ONLY" value="0" enum="DepthDrawMode"> - Default depth draw mode. Depth is drawn only for opaque objects. + Default depth draw mode. Depth is drawn only for opaque objects during the opaque prepass (if any) and during the opaque pass. </constant> <constant name="DEPTH_DRAW_ALWAYS" value="1" enum="DepthDrawMode"> - Depth draw is calculated for both opaque and transparent objects. + Objects will write to depth during the opaque and the transparent passes. Transparent objects that are close to the camera may obscure other transparent objects behind them. + [b]Note:[/b] This does not influence whether transparent objects are included in the depth prepass or not. For that, see [enum Transparency]. </constant> <constant name="DEPTH_DRAW_DISABLED" value="2" enum="DepthDrawMode"> - No depth draw. + Objects will not write their depth to the depth buffer, even during the depth prepass (if enabled). </constant> <constant name="CULL_BACK" value="0" enum="CullMode"> Default cull mode. The back of the object is culled when not visible. Back face triangles will be culled when facing the camera. This results in only the front side of triangles being drawn. For closed-surface meshes this means that only the exterior of the mesh will be visible. @@ -631,7 +632,7 @@ No culling is performed. </constant> <constant name="FLAG_DISABLE_DEPTH_TEST" value="0" enum="Flags"> - Disables the depth test, so this object is drawn on top of all others. However, objects drawn after it in the draw order may cover it. + Disables the depth test, so this object is drawn on top of all others drawn before it. This puts the object in the transparent draw pass where it is sorted based on distance to camera. Objects drawn after it in the draw order may cover it. This also disables writing to depth. </constant> <constant name="FLAG_ALBEDO_FROM_VERTEX_COLOR" value="1" enum="Flags"> Set [code]ALBEDO[/code] to the per-vertex color specified in the mesh. diff --git a/doc/classes/Button.xml b/doc/classes/Button.xml index d2c9a77486..961f3c495a 100644 --- a/doc/classes/Button.xml +++ b/doc/classes/Button.xml @@ -118,6 +118,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="font" data_type="font" type="Font"> [Font] of the [Button]'s text. diff --git a/doc/classes/ButtonGroup.xml b/doc/classes/ButtonGroup.xml index 277bda2836..8195669b10 100644 --- a/doc/classes/ButtonGroup.xml +++ b/doc/classes/ButtonGroup.xml @@ -4,8 +4,8 @@ Group of Buttons. </brief_description> <description> - Group of [Button]. All direct and indirect children buttons become radios. Only one allows being pressed. - [member BaseButton.toggle_mode] should be [code]true[/code]. + Group of [BaseButton]. The members of this group are treated like radio buttons in the sense that only one button can be pressed at the same time. + Every member of the ButtonGroup should have [member BaseButton.toggle_mode] set to [code]true[/code]. </description> <tutorials> </tutorials> diff --git a/doc/classes/Callable.xml b/doc/classes/Callable.xml index dd48ee6790..1fb4f91920 100644 --- a/doc/classes/Callable.xml +++ b/doc/classes/Callable.xml @@ -1,10 +1,10 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="Callable" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> - An object representing a method in a certain object that can be called. + Built-in type representing a method in an object instance or a standalone function. </brief_description> <description> - [Callable] is a first class object which can be held in variables and passed to functions. It represents a given method in an [Object], and is typically used for signal callbacks. + [Callable] is a built-in [Variant] type that represents a function. It can either be a method within an [Object] instance, or a standalone function not related to any object, like a lambda function. Like all [Variant] types, it can be stored in variables and passed to other functions. It is most commonly used for signal callbacks. [b]Example:[/b] [codeblocks] [gdscript] @@ -32,6 +32,18 @@ } [/csharp] [/codeblocks] + In GDScript, it's possible to create lambda functions within a method. Lambda functions are custom callables that are not associated with an [Object] instance. Optionally, lambda functions can also be named. The name will be displayed in the debugger, or when calling [method get_method]. + [codeblock] + func _init(): + var my_lambda = func (message): + print(message) + + # Prints Hello everyone! + my_lambda.call("Hello everyone!") + + # Prints "Attack!", when the button_pressed signal is emitted. + button_pressed.connect(func(): print("Attack!")) + [/codeblock] </description> <tutorials> </tutorials> @@ -39,7 +51,7 @@ <constructor name="Callable"> <return type="Callable" /> <description> - Constructs a null [Callable] with no object nor method bound. + Constructs an empty [Callable], with no object nor method bound. </description> </constructor> <constructor name="Callable"> @@ -54,7 +66,7 @@ <param index="0" name="object" type="Object" /> <param index="1" name="method" type="StringName" /> <description> - Creates a new [Callable] for the method called [param method] in the specified [param object]. + Creates a new [Callable] for the method named [param method] in the specified [param object]. </description> </constructor> </constructors> @@ -62,7 +74,7 @@ <method name="bind" qualifiers="vararg const"> <return type="Callable" /> <description> - Returns a copy of this [Callable] with the arguments bound. Bound arguments are passed after the arguments supplied by [method call]. + Returns a copy of this [Callable] with one or more arguments bound. When called, the bound arguments are passed [i]after[/i] the arguments supplied by [method call]. </description> </method> <method name="call" qualifiers="vararg const"> @@ -85,13 +97,13 @@ <return type="Variant" /> <param index="0" name="arguments" type="Array" /> <description> - Calls the method represented by this [Callable]. Contrary to [method call], this method does not take a variable number of arguments but expects all arguments to be passed via a single [Array]. + Calls the method represented by this [Callable]. Unlike [method call], this method expects all arguments to be contained inside the [param arguments] [Array]. </description> </method> <method name="get_method" qualifiers="const"> <return type="StringName" /> <description> - Returns the name of the method represented by this [Callable]. + Returns the name of the method represented by this [Callable]. If the callable is a lambda function, returns the function's name. </description> </method> <method name="get_object" qualifiers="const"> @@ -116,7 +128,7 @@ <method name="is_custom" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if this [Callable] is a custom callable whose behavior differs based on implementation details. Custom callables are used in the engine for various reasons. If [code]true[/code], you can't use [method get_method]. + Returns [code]true[/code] if this [Callable] is a custom callable. Custom callables are created from [method bind] or [method unbind]. In GDScript, lambda functions are also custom callables. </description> </method> <method name="is_null" qualifiers="const"> @@ -128,33 +140,33 @@ <method name="is_standard" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if this [Callable] is a standard callable, referencing an object and a method using a [StringName]. + Returns [code]true[/code] if this [Callable] is a standard callable. This method is the opposite of [method is_custom]. Returns [code]false[/code] if this callable is a lambda function. </description> </method> <method name="is_valid" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if the object exists and has a valid function assigned, or is a custom callable. + Returns [code]true[/code] if the callable's object exists and has a valid method name assigned, or is a custom callable. </description> </method> <method name="rpc" qualifiers="vararg const"> <return type="void" /> <description> - Perform an RPC (Remote Procedure Call). This is used for multiplayer and is normally not available unless the function being called has been marked as [i]RPC[/i]. Calling it on unsupported functions will result in an error. + Perform an RPC (Remote Procedure Call). This is used for multiplayer and is normally not available, unless the function being called has been marked as [i]RPC[/i]. Calling this method on unsupported functions will result in an error. </description> </method> <method name="rpc_id" qualifiers="vararg const"> <return type="void" /> <param index="0" name="peer_id" type="int" /> <description> - Perform an RPC (Remote Procedure Call) on a specific peer ID (see multiplayer documentation for reference). This is used for multiplayer and is normally not available unless the function being called has been marked as [i]RPC[/i]. Calling it on unsupported functions will result in an error. + Perform an RPC (Remote Procedure Call) on a specific peer ID (see multiplayer documentation for reference). This is used for multiplayer and is normally not available unless the function being called has been marked as [i]RPC[/i]. Calling this method on unsupported functions will result in an error. </description> </method> <method name="unbind" qualifiers="const"> <return type="Callable" /> <param index="0" name="argcount" type="int" /> <description> - Returns a copy of this [Callable] with the arguments unbound. Calling the returned [Callable] will call the method without the extra arguments that are supplied in the [Callable] on which you are calling this method. + Returns a copy of this [Callable] with the arguments unbound, as defined by [param argcount]. Calling the returned [Callable] will call the method without the extra arguments that are supplied in the [Callable] on which you are calling this method. </description> </method> </methods> diff --git a/doc/classes/CameraTexture.xml b/doc/classes/CameraTexture.xml index 8eedfe3580..e7020c869e 100644 --- a/doc/classes/CameraTexture.xml +++ b/doc/classes/CameraTexture.xml @@ -16,6 +16,7 @@ <member name="camera_is_active" type="bool" setter="set_camera_active" getter="get_camera_active" default="false"> Convenience property that gives access to the active property of the [CameraFeed]. </member> + <member name="resource_local_to_scene" type="bool" setter="set_local_to_scene" getter="is_local_to_scene" overrides="Resource" default="false" /> <member name="which_feed" type="int" setter="set_which_feed" getter="get_which_feed" enum="CameraServer.FeedImage" default="0"> Which image within the [CameraFeed] we want access to, important if the camera image is split in a Y and CbCr component. </member> diff --git a/doc/classes/CanvasGroup.xml b/doc/classes/CanvasGroup.xml index 3bea8cde21..37827defec 100644 --- a/doc/classes/CanvasGroup.xml +++ b/doc/classes/CanvasGroup.xml @@ -1,17 +1,37 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="CanvasGroup" inherits="Node2D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Merges several 2D nodes into a single draw operation. </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/CanvasItem.xml b/doc/classes/CanvasItem.xml index a2859552a9..5171e0acbe 100644 --- a/doc/classes/CanvasItem.xml +++ b/doc/classes/CanvasItem.xml @@ -153,6 +153,7 @@ <param index="3" name="modulate" type="Color" default="Color(1, 1, 1, 1)" /> <param index="4" name="outline" type="float" default="0.0" /> <param index="5" name="pixel_range" type="float" default="4.0" /> + <param index="6" name="scale" type="float" default="1.0" /> <description> Draws a textured rectangle region of the multi-channel signed distance field texture at a given position, optionally modulated by a color. See [member FontFile.multichannel_signed_distance_field] for more information and caveats about MSDF font rendering. If [param outline] is positive, each alpha channel value of pixel in region is set to maximum value of true distance in the [param outline] radius. @@ -404,7 +405,7 @@ <method name="get_canvas_transform" qualifiers="const"> <return type="Transform2D" /> <description> - Returns the transform matrix of this item's canvas. + Returns the transform from the coordinate system of the canvas, this item is in, to the [Viewport]s coordinate system. </description> </method> <method name="get_global_mouse_position" qualifiers="const"> @@ -422,7 +423,7 @@ <method name="get_global_transform_with_canvas" qualifiers="const"> <return type="Transform2D" /> <description> - Returns the global transform matrix of this item in relation to the canvas. + Returns the transform from the local coordinate system of this [CanvasItem] to the [Viewport]s coordinate system. </description> </method> <method name="get_local_mouse_position" qualifiers="const"> @@ -453,7 +454,7 @@ <method name="get_viewport_transform" qualifiers="const"> <return type="Transform2D" /> <description> - Returns this item's transform in relation to the viewport. + Returns the transform from the coordinate system of the canvas, this item is in, to the [Viewport]s embedders coordinate system. </description> </method> <method name="get_visibility_layer_bit" qualifiers="const"> @@ -510,7 +511,7 @@ <method name="move_to_front"> <return type="void" /> <description> - Moves this node to display on top of its siblings. This has more use in [Control], as [Node2D] can be ordered with [member Node2D.z_index]. + Moves this node to display on top of its siblings. Internally, the node is moved to the bottom of parent's children list. The method has no effect on nodes without a parent. </description> </method> @@ -587,6 +588,17 @@ If [code]true[/code], this [CanvasItem] is drawn. The node is only visible if all of its antecedents are visible as well (in other words, [method is_visible_in_tree] must return [code]true[/code]). [b]Note:[/b] For controls that inherit [Popup], the correct way to make them visible is to call one of the multiple [code]popup*()[/code] functions instead. </member> + <member name="y_sort_enabled" type="bool" setter="set_y_sort_enabled" getter="is_y_sort_enabled" default="false"> + If [code]true[/code], child nodes with the lowest Y position are drawn before those with a higher Y position. If [code]false[/code], Y-sorting is disabled. Y-sorting only affects children that inherit from [CanvasItem]. + You can nest nodes with Y-sorting. Child Y-sorted nodes are sorted in the same space as the parent Y-sort. This feature allows you to organize a scene better or divide it into multiple ones without changing your scene tree. + </member> + <member name="z_as_relative" type="bool" setter="set_z_as_relative" getter="is_z_relative" default="true"> + If [code]true[/code], the node's Z index is relative to its parent's Z index. If this node's Z index is 2 and its parent's effective Z index is 3, then this node's effective Z index will be 2 + 3 = 5. + </member> + <member name="z_index" type="int" setter="set_z_index" getter="get_z_index" default="0"> + Z index. Controls the order in which the nodes render. A node with a higher Z index will display in front of others. Must be between [constant RenderingServer.CANVAS_ITEM_Z_MIN] and [constant RenderingServer.CANVAS_ITEM_Z_MAX] (inclusive). + [b]Note:[/b] Changing the Z index of a [Control] only affects the drawing order, not the order in which input events are handled. This can be useful to implement certain UI animations, e.g. a menu where hovered items are scaled and should overlap others. + </member> </members> <signals> <signal name="draw"> @@ -672,12 +684,16 @@ Represents the size of the [enum TextureRepeat] enum. </constant> <constant name="CLIP_CHILDREN_DISABLED" value="0" enum="ClipChildrenMode"> + Child draws over parent and is not clipped. </constant> <constant name="CLIP_CHILDREN_ONLY" value="1" enum="ClipChildrenMode"> + Parent is used for the purposes of clipping only. Child is clipped to the parent's visible area, parent is not drawn. </constant> <constant name="CLIP_CHILDREN_AND_DRAW" value="2" enum="ClipChildrenMode"> + Parent is used for clipping child, but parent is also drawn underneath child as normal before clipping child to its visible area. </constant> <constant name="CLIP_CHILDREN_MAX" value="3" enum="ClipChildrenMode"> + Represents the size of the [enum ClipChildrenMode] enum. </constant> </constants> </class> diff --git a/doc/classes/CanvasLayer.xml b/doc/classes/CanvasLayer.xml index 7c1b19b961..ce999c06d3 100644 --- a/doc/classes/CanvasLayer.xml +++ b/doc/classes/CanvasLayer.xml @@ -19,6 +19,12 @@ Returns the RID of the canvas used by this layer. </description> </method> + <method name="get_final_transform" qualifiers="const"> + <return type="Transform2D" /> + <description> + Returns the transform from the [CanvasLayer]s coordinate system to the [Viewport]s coordinate system. + </description> + </method> <method name="hide"> <return type="void" /> <description> diff --git a/doc/classes/CanvasTexture.xml b/doc/classes/CanvasTexture.xml index 2dc83790c7..d5bf65835f 100644 --- a/doc/classes/CanvasTexture.xml +++ b/doc/classes/CanvasTexture.xml @@ -17,6 +17,7 @@ The normal map texture to use. Only has a visible effect if [Light2D]s are affecting this [CanvasTexture]. [b]Note:[/b] Godot expects the normal map to use X+, Y+, and Z+ coordinates. See [url=http://wiki.polycount.com/wiki/Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for a comparison of normal map coordinates expected by popular engines. </member> + <member name="resource_local_to_scene" type="bool" setter="set_local_to_scene" getter="is_local_to_scene" overrides="Resource" default="false" /> <member name="specular_color" type="Color" setter="set_specular_color" getter="get_specular_color" default="Color(1, 1, 1, 1)"> The multiplier for specular reflection colors. The [Light2D]'s color is also taken into account when determining the reflection color. Only has a visible effect if [Light2D]s are affecting this [CanvasTexture]. </member> diff --git a/doc/classes/CharFXTransform.xml b/doc/classes/CharFXTransform.xml index c98b194a4d..a6f707383f 100644 --- a/doc/classes/CharFXTransform.xml +++ b/doc/classes/CharFXTransform.xml @@ -46,6 +46,9 @@ <member name="range" type="Vector2i" setter="set_range" getter="get_range" default="Vector2i(0, 0)"> Absolute character range in the string, corresponding to the glyph. Setting this property won't affect drawing. </member> + <member name="relative_index" type="int" setter="set_relative_index" getter="get_relative_index" default="0"> + The character offset of the glyph, relative to the current [RichTextEffect] custom block. Setting this property won't affect drawing. + </member> <member name="visible" type="bool" setter="set_visibility" getter="is_visible" default="true"> If [code]true[/code], the character will be drawn. If [code]false[/code], the character will be hidden. Characters around hidden characters will reflow to take the space of hidden characters. If this is not desired, set their [member color] to [code]Color(1, 1, 1, 0)[/code] instead. </member> diff --git a/doc/classes/CharacterBody2D.xml b/doc/classes/CharacterBody2D.xml index 0111ef804e..7395556d05 100644 --- a/doc/classes/CharacterBody2D.xml +++ b/doc/classes/CharacterBody2D.xml @@ -10,7 +10,7 @@ </description> <tutorials> <link title="Kinematic character (2D)">$DOCS_URL/tutorials/physics/kinematic_character_2d.html</link> - <link title="Using KinematicBody2D">$DOCS_URL/tutorials/physics/using_kinematic_body_2d.html</link> + <link title="Using CharacterBody2D">$DOCS_URL/tutorials/physics/using_character_body_2d.html</link> <link title="2D Kinematic Character Demo">https://godotengine.org/asset-library/asset/113</link> <link title="2D Platformer Demo">https://godotengine.org/asset-library/asset/120</link> </tutorials> diff --git a/doc/classes/CheckBox.xml b/doc/classes/CheckBox.xml index 699e872e99..3ee18cf351 100644 --- a/doc/classes/CheckBox.xml +++ b/doc/classes/CheckBox.xml @@ -43,6 +43,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="font" data_type="font" type="Font"> The [Font] to use for the [CheckBox] text. diff --git a/doc/classes/CheckButton.xml b/doc/classes/CheckButton.xml index dfbaa7cbee..03578cafd0 100644 --- a/doc/classes/CheckButton.xml +++ b/doc/classes/CheckButton.xml @@ -43,6 +43,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="font" data_type="font" type="Font"> The [Font] to use for the [CheckButton] text. diff --git a/doc/classes/CodeEdit.xml b/doc/classes/CodeEdit.xml index e7ef5fb289..c313e6c875 100644 --- a/doc/classes/CodeEdit.xml +++ b/doc/classes/CodeEdit.xml @@ -651,6 +651,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="font" data_type="font" type="Font"> Sets the default [Font]. diff --git a/doc/classes/CollisionObject2D.xml b/doc/classes/CollisionObject2D.xml index ee69015ae1..3ed2c9d3de 100644 --- a/doc/classes/CollisionObject2D.xml +++ b/doc/classes/CollisionObject2D.xml @@ -157,7 +157,7 @@ <param index="0" name="owner_id" type="int" /> <param index="1" name="shape_id" type="int" /> <description> - Returns the [Shape2D] with the given id from the given shape owner. + Returns the [Shape2D] with the given ID from the given shape owner. </description> </method> <method name="shape_owner_get_shape_count" qualifiers="const"> @@ -172,7 +172,7 @@ <param index="0" name="owner_id" type="int" /> <param index="1" name="shape_id" type="int" /> <description> - Returns the child index of the [Shape2D] with the given id from the given shape owner. + Returns the child index of the [Shape2D] with the given ID from the given shape owner. </description> </method> <method name="shape_owner_get_transform" qualifiers="const"> diff --git a/doc/classes/CollisionObject3D.xml b/doc/classes/CollisionObject3D.xml index f10136521a..c302963b92 100644 --- a/doc/classes/CollisionObject3D.xml +++ b/doc/classes/CollisionObject3D.xml @@ -130,7 +130,7 @@ <param index="0" name="owner_id" type="int" /> <param index="1" name="shape_id" type="int" /> <description> - Returns the [Shape3D] with the given id from the given shape owner. + Returns the [Shape3D] with the given ID from the given shape owner. </description> </method> <method name="shape_owner_get_shape_count" qualifiers="const"> @@ -145,7 +145,7 @@ <param index="0" name="owner_id" type="int" /> <param index="1" name="shape_id" type="int" /> <description> - Returns the child index of the [Shape3D] with the given id from the given shape owner. + Returns the child index of the [Shape3D] with the given ID from the given shape owner. </description> </method> <method name="shape_owner_get_transform" qualifiers="const"> diff --git a/doc/classes/Color.xml b/doc/classes/Color.xml index 90fbdcc622..d1387d088d 100644 --- a/doc/classes/Color.xml +++ b/doc/classes/Color.xml @@ -1,12 +1,11 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="Color" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> - Color in RGBA format using floats on the range of 0 to 1. + Color built-in type, in RGBA format. </brief_description> <description> - A color represented by red, green, blue, and alpha (RGBA) components. The alpha component is often used for opacity. Values are in floating-point and usually range from 0 to 1. Some properties (such as CanvasItem.modulate) may accept values greater than 1 (overbright or HDR colors). - You can also create a color from standardized color names by using the string constructor or directly using the color constants defined here. The standardized color set is based on the [url=https://en.wikipedia.org/wiki/X11_color_names]X11 color names[/url]. - If you want to supply values in a range of 0 to 255, you should use [method @GDScript.Color8]. + A color represented in RGBA format by red ([member r]), green ([member g]), blue ([member b]), and alpha ([member a]) components. Each component is a 16-bit floating-point value, usually ranging from 0 to 1. Some properties (such as [member CanvasItem.modulate]) may support values greater than 1, for overbright or High Dynamic Range colors. If you want to supply values in a range of 0 to 255, you should use [method @GDScript.Color8]. + Colors can also be created by name from a set of standardized colors, through the [String] constructor, [method from_string], or by directly fetching the color constants documented here. The standardized color set is based on the [url=https://en.wikipedia.org/wiki/X11_color_names]X11 color names[/url], with the addition of [constant TRANSPARENT]. [b]Note:[/b] In a boolean context, a Color will evaluate to [code]false[/code] if it's equal to [code]Color(0, 0, 0, 1)[/code] (opaque black). Otherwise, a Color will always evaluate to [code]true[/code]. [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/color_constants.png]Color constants cheatsheet[/url] </description> @@ -19,7 +18,8 @@ <constructor name="Color"> <return type="Color" /> <description> - Constructs a default-initialized [Color] with all components set to [code]0[/code]. + Constructs a default [Color] from opaque black. This is the same as [constant BLACK]. + [b]Note:[/b] in C#, constructs an empty color with all of its components set to [code]0.0[/code] (transparent black). </description> </constructor> <constructor name="Color"> @@ -27,10 +27,10 @@ <param index="0" name="from" type="Color" /> <param index="1" name="alpha" type="float" /> <description> - Constructs a [Color] from an existing color, but with a custom alpha value. + Constructs a [Color] from the existing color, with [member a] set to the given [param alpha] value. [codeblocks] [gdscript] - var red = Color(Color.red, 0.2) # 20% opaque red. + var red = Color(Color.RED, 0.2) # 20% opaque red. [/gdscript] [csharp] var red = new Color(Colors.Red, 0.2f); // 20% opaque red. @@ -49,7 +49,7 @@ <return type="Color" /> <param index="0" name="code" type="String" /> <description> - Constructs a [Color] either from an HTML color code or from a standardized color name. Supported color names are the same as the constants. + Constructs a [Color] either from an HTML color code or from a standardized color name. The supported color names are the same as the constants. </description> </constructor> <constructor name="Color"> @@ -57,7 +57,7 @@ <param index="0" name="code" type="String" /> <param index="1" name="alpha" type="float" /> <description> - Constructs a [Color] either from an HTML color code or from a standardized color name, with [param alpha] on the range of 0 to 1. Supported color names are the same as the constants. + Constructs a [Color] either from an HTML color code or from a standardized color name, with [param alpha] on the range of 0.0 to 1.0. The supported color names are the same as the constants. </description> </constructor> <constructor name="Color"> @@ -66,7 +66,7 @@ <param index="1" name="g" type="float" /> <param index="2" name="b" type="float" /> <description> - Constructs a [Color] from RGB values, typically between 0 and 1. Alpha will be 1. + Constructs a [Color] from RGB values, typically between 0.0 and 1.0. [member a] is set to 1.0. [codeblocks] [gdscript] var color = Color(0.2, 1.0, 0.7) # Similar to `Color8(51, 255, 178, 255)` @@ -84,7 +84,7 @@ <param index="2" name="b" type="float" /> <param index="3" name="a" type="float" /> <description> - Constructs a [Color] from RGBA values, typically between 0 and 1. + Constructs a [Color] from RGBA values, typically between 0.0 and 1.0. [codeblocks] [gdscript] var color = Color(0.2, 1.0, 0.7, 0.8) # Similar to `Color8(51, 255, 178, 204)` @@ -101,7 +101,7 @@ <return type="Color" /> <param index="0" name="over" type="Color" /> <description> - Returns a new color resulting from blending this color over another. If the color is opaque, the result is also opaque. The second color may have a range of alpha values. + Returns a new color resulting from overlaying this color over the given color. In a painting program, you can imagine it as the [param over] color painted over this colour (including alpha). [codeblocks] [gdscript] var bg = Color(0.0, 1.0, 0.0, 0.5) # Green with alpha of 50% @@ -128,7 +128,7 @@ <return type="Color" /> <param index="0" name="amount" type="float" /> <description> - Returns a new color resulting from making this color darker by the specified percentage (ratio from 0 to 1). + Returns a new color resulting from making this color darker by the specified [param amount] (ratio from 0.0 to 1.0). See also [method lightened]. [codeblocks] [gdscript] var green = Color(0.0, 1.0, 0.0) @@ -148,7 +148,7 @@ <param index="2" name="v" type="float" /> <param index="3" name="alpha" type="float" default="1.0" /> <description> - Constructs a color from an [url=https://en.wikipedia.org/wiki/HSL_and_HSV]HSV profile[/url]. [param h] (hue), [param s] (saturation), and [param v] (value) are typically between 0 and 1. + Constructs a color from an [url=https://en.wikipedia.org/wiki/HSL_and_HSV]HSV profile[/url]. The hue ([param h]), saturation ([param s]), and value ([param v]) are typically between 0.0 and 1.0. [codeblocks] [gdscript] var color = Color.from_hsv(0.58, 0.5, 0.79, 0.8) @@ -166,7 +166,7 @@ <param index="2" name="l" type="float" /> <param index="3" name="alpha" type="float" default="1.0" /> <description> - Constructs a color from an [url=https://bottosson.github.io/posts/colorpicker/]OK HSL profile[/url]. [param h] (hue), [param s] (saturation), and [param l] (lightness) are typically between 0 and 1. + Constructs a color from an [url=https://bottosson.github.io/posts/colorpicker/]OK HSL profile[/url]. The hue ([param h]), saturation ([param s]), and lightness ([param l]) are typically between 0.0 and 1.0. [codeblocks] [gdscript] var color = Color.from_ok_hsl(0.58, 0.5, 0.79, 0.8) @@ -189,14 +189,13 @@ <param index="0" name="str" type="String" /> <param index="1" name="default" type="Color" /> <description> - Creates a [Color] from string, which can be either a HTML color code or a named color. Fallbacks to [param default] if the string does not denote any valid color. + Creates a [Color] from the given string, which can be either an HTML color code or a named color (case-insensitive). Returns [param default] if the color cannot be inferred from the string. </description> </method> <method name="get_luminance" qualifiers="const"> <return type="float" /> <description> - Returns the luminance of the color in the [code][0.0, 1.0][/code] range. - This is useful when determining light or dark color. Colors with a luminance smaller than 0.5 can be generally considered dark. + Returns the light intensity of the color, as a value between 0.0 and 1.0 (inclusive). This is useful when determining light or dark color. Colors with a luminance smaller than 0.5 can be generally considered dark. [b]Note:[/b] [method get_luminance] relies on the color being in the linear color space to return an accurate relative luminance value. If the color is in the sRGB color space, use [method srgb_to_linear] to convert it to the linear color space first. </description> </method> @@ -204,35 +203,47 @@ <return type="Color" /> <param index="0" name="hex" type="int" /> <description> - Returns the [Color] associated with the provided integer number, with 8 bits per channel in ARGB order. The integer should be 32-bit. Best used with hexadecimal notation. - [codeblock] - modulate = Color.hex(0xffff0000) # red - [/codeblock] + Returns the [Color] associated with the provided [param hex] integer in 32-bit ARGB format (8 bits per channel, alpha channel first). + In GDScript and C#, the [int] is best visualized with hexadecimal notation ([code]"0x"[/code] prefix). + [codeblocks] + [gdscript] + var red = Color.hex(0xffff0000) + var dark_cyan = Color.hex(0xff008b8b) + var my_color = Color.hex(0xa4bbefd2) + [/gdscript] + [csharp] + var red = new Color(0xffff0000); + var dark_cyan = new Color(0xff008b8b); + var my_color = new Color(0xa4bbefd2); + [/csharp] + [/codeblocks] </description> </method> <method name="hex64" qualifiers="static"> <return type="Color" /> <param index="0" name="hex" type="int" /> <description> - Same as [method hex], but takes 64-bit integer and the color uses 16 bits per channel. + Returns the [Color] associated with the provided [param hex] integer in 64-bit ARGB format (16 bits per channel, alpha channel first). + In GDScript and C#, the [int] is best visualized with hexadecimal notation ([code]"0x"[/code] prefix). </description> </method> <method name="html" qualifiers="static"> <return type="Color" /> <param index="0" name="rgba" type="String" /> <description> - Returns a new color from [param rgba], an HTML hexadecimal color string. [param rgba] is not case sensitive, and may be prefixed with a '#' character. - [param rgba] must be a valid three-digit or six-digit hexadecimal color string, and may contain an alpha channel value. If [param rgba] does not contain an alpha channel value, an alpha channel value of 1.0 is applied. - If [param rgba] is invalid a Color(0.0, 0.0, 0.0, 1.0) is returned. - [b]Note:[/b] This method is not implemented in C#, but the same functionality is provided in the class constructor. + Returns a new color from [param rgba], an HTML hexadecimal color string. [param rgba] is not case-sensitive, and may be prefixed by a hash sign ([code]#[/code]). + [param rgba] must be a valid three-digit or six-digit hexadecimal color string, and may contain an alpha channel value. If [param rgba] does not contain an alpha channel value, an alpha channel value of 1.0 is applied. If [param rgba] is invalid, returns an empty color. + [b]Note:[/b] In C#, this method is not implemented. The same functionality is provided by the Color constructor. [codeblocks] [gdscript] - var green = Color.html("#00FF00FF") # set green to Color(0.0, 1.0, 0.0, 1.0) - var blue = Color.html("#0000FF") # set blue to Color(0.0, 0.0, 1.0, 1.0) + var blue = Color.html("#0000ff") # blue is Color(0.0, 0.0, 1.0, 1.0) + var green = Color.html("#0F0") # green is Color(0.0, 1.0, 0.0, 1.0) + var col = Color.html("663399cc") # col is Color(0.4, 0.2, 0.6, 0.8) [/gdscript] [csharp] - var green = new Color("#00FF00FF"); // set green to Color(0.0, 1.0, 0.0, 1.0) - var blue = new Color("#0000FF"); // set blue to Color(0.0, 0.0, 1.0, 1.0) + var blue = Color.FromHtml("#0000ff"); // blue is Color(0.0, 0.0, 1.0, 1.0) + var green = Color.FromHtml("#0F0"); // green is Color(0.0, 1.0, 0.0, 1.0) + var col = Color.FromHtml("663399cc"); // col is Color(0.4, 0.2, 0.6, 0.8) [/csharp] [/codeblocks] </description> @@ -241,24 +252,25 @@ <return type="bool" /> <param index="0" name="color" type="String" /> <description> - Returns [code]true[/code] if [param color] is a valid HTML hexadecimal color string. [param color] is not case sensitive, and may be prefixed with a '#' character. - For a string to be valid it must be three-digit or six-digit hexadecimal, and may contain an alpha channel value. + Returns [code]true[/code] if [param color] is a valid HTML hexadecimal color string. The string must be a hexadecimal value (case-insensitive) of either 3, 4, 6 or 8 digits, and may be prefixed by a hash sign ([code]#[/code]). This method is identical to [method String.is_valid_html_color]. [codeblocks] [gdscript] - var result = Color.html_is_valid("#55aaFF") # result is true - result = Color.html_is_valid("#55AAFF20") # result is true - result = Color.html_is_valid("55AAFF") # result is true - result = Color.html_is_valid("#F2C") # result is true - result = Color.html_is_valid("#AABBC) # result is false - result = Color.html_is_valid("#55aaFF5") # result is false + Color.html_is_valid("#55aaFF") # Returns true + Color.html_is_valid("#55AAFF20") # Returns true + Color.html_is_valid("55AAFF") # Returns true + Color.html_is_valid("#F2C") # Returns true + + Color.html_is_valid("#AABBC) # Returns false + Color.html_is_valid("#55aaFF5") # Returns false [/gdscript] [csharp] - var result = Color.HtmlIsValid("#55AAFF"); // result is true - result = Color.HtmlIsValid("#55AAFF20"); // result is true - result = Color.HtmlIsValid("55AAFF); // result is true - result = Color.HtmlIsValid("#F2C"); // result is true - result = Color.HtmlIsValid("#AABBC"); // result is false - result = Color.HtmlIsValid("#55aaFF5"); // result is false + Color.IsHtmlValid("#55AAFF"); // Returns true + Color.IsHtmlValid("#55AAFF20"); // Returns true + Color.IsHtmlValid("55AAFF"); // Returns true + Color.IsHtmlValid("#F2C"); // Returns true + + Color.IsHtmlValid("#AABBC"); // Returns false + Color.IsHtmlValid("#55aaFF5"); // Returns false [/csharp] [/codeblocks] </description> @@ -266,13 +278,15 @@ <method name="inverted" qualifiers="const"> <return type="Color" /> <description> - Returns the inverted color [code](1 - r, 1 - g, 1 - b, a)[/code]. + Returns the color with its [member r], [member g], and [member b] components inverted ([code](1 - r, 1 - g, 1 - b, a)[/code]). [codeblocks] [gdscript] + var black = Color.WHITE.inverted() var color = Color(0.3, 0.4, 0.9) var inverted_color = color.inverted() # Equivalent to `Color(0.7, 0.6, 0.1)` [/gdscript] [csharp] + var black = Colors.White.Inverted(); var color = new Color(0.3f, 0.4f, 0.9f); Color invertedColor = color.Inverted(); // Equivalent to `new Color(0.7f, 0.6f, 0.1f)` [/csharp] @@ -291,17 +305,23 @@ <param index="0" name="to" type="Color" /> <param index="1" name="weight" type="float" /> <description> - Returns the linear interpolation with another color. The interpolation factor [param weight] is between 0 and 1. + Returns the linear interpolation between this color's components and [param to]'s components. The interpolation factor [param weight] should be between 0.0 and 1.0 (inclusive). See also [method @GlobalScope.lerp]. [codeblocks] [gdscript] - var c1 = Color(1.0, 0.0, 0.0) - var c2 = Color(0.0, 1.0, 0.0) - var lerp_color = c1.lerp(c2, 0.5) # Equivalent to `Color(0.5, 0.5, 0.0)` + var red = Color(1.0, 0.0, 0.0) + var aqua = Color(0.0, 1.0, 0.8) + + red.lerp(aqua, 0.2) # Returns Color(0.8, 0.2, 0.16) + red.lerp(aqua, 0.5) # Returns Color(0.5, 0.5, 0.4) + red.lerp(aqua, 1.0) # Returns Color(0.0, 1.0, 0.8) [/gdscript] [csharp] - var c1 = new Color(1.0f, 0.0f, 0.0f); - var c2 = new Color(0.0f, 1.0f, 0.0f); - Color lerpColor = c1.Lerp(c2, 0.5f); // Equivalent to `new Color(0.5f, 0.5f, 0.0f)` + var red = new Color(1.0f, 0.0f, 0.0f); + var aqua = new Color(0.0f, 1.0f, 0.8f); + + red.Lerp(aqua, 0.2f); // Returns Color(0.8f, 0.2f, 0.16f) + red.Lerp(aqua, 0.5f); // Returns Color(0.5f, 0.5f, 0.4f) + red.Lerp(aqua, 1.0f); // Returns Color(0.0f, 1.0f, 0.8f) [/csharp] [/codeblocks] </description> @@ -310,15 +330,15 @@ <return type="Color" /> <param index="0" name="amount" type="float" /> <description> - Returns a new color resulting from making this color lighter by the specified percentage (ratio from 0 to 1). + Returns a new color resulting from making this color lighter by the specified [param amount], which should be a ratio from 0.0 to 1.0. See also [method darkened]. [codeblocks] [gdscript] var green = Color(0.0, 1.0, 0.0) - var lightgreen = green.lightened(0.2) # 20% lighter than regular green + var light_green = green.lightened(0.2) # 20% lighter than regular green [/gdscript] [csharp] var green = new Color(0.0f, 1.0f, 0.0f); - Color lightgreen = green.Lightened(0.2f); // 20% lighter than regular green + Color lightGreen = green.Lightened(0.2f); // 20% lighter than regular green [/csharp] [/codeblocks] </description> @@ -326,19 +346,19 @@ <method name="linear_to_srgb" qualifiers="const"> <return type="Color" /> <description> - Returns the color converted to the [url=https://en.wikipedia.org/wiki/SRGB]sRGB[/url] color space. This assumes the original color is in the linear color space. See also [method srgb_to_linear] which performs the opposite operation. + Returns the color converted to the [url=https://en.wikipedia.org/wiki/SRGB]sRGB[/url] color space. This method assumes the original color is in the linear color space. See also [method srgb_to_linear] which performs the opposite operation. </description> </method> <method name="srgb_to_linear" qualifiers="const"> <return type="Color" /> <description> - Returns the color converted to the linear color space. This assumes the original color is in the sRGB color space. See also [method linear_to_srgb] which performs the opposite operation. + Returns the color converted to the linear color space. This method assumes the original color already is in the sRGB color space. See also [method linear_to_srgb] which performs the opposite operation. </description> </method> <method name="to_abgr32" qualifiers="const"> <return type="int" /> <description> - Returns the color converted to a 32-bit integer in ABGR format (each byte represents a color channel). ABGR is the reversed version of the default format. + Returns the color converted to a 32-bit integer in ABGR format (each component is 8 bits). ABGR is the reversed version of the default RGBA format. [codeblocks] [gdscript] var color = Color(1, 0.5, 0.2) @@ -354,7 +374,7 @@ <method name="to_abgr64" qualifiers="const"> <return type="int" /> <description> - Returns the color converted to a 64-bit integer in ABGR format (each word represents a color channel). ABGR is the reversed version of the default format. + Returns the color converted to a 64-bit integer in ABGR format (each component is 16 bits). ABGR is the reversed version of the default RGBA format. [codeblocks] [gdscript] var color = Color(1, 0.5, 0.2) @@ -370,7 +390,7 @@ <method name="to_argb32" qualifiers="const"> <return type="int" /> <description> - Returns the color converted to a 32-bit integer in ARGB format (each byte represents a color channel). ARGB is more compatible with DirectX. + Returns the color converted to a 32-bit integer in ARGB format (each component is 8 bits). ARGB is more compatible with DirectX. [codeblocks] [gdscript] var color = Color(1, 0.5, 0.2) @@ -386,7 +406,7 @@ <method name="to_argb64" qualifiers="const"> <return type="int" /> <description> - Returns the color converted to a 64-bit integer in ARGB format (each word represents a color channel). ARGB is more compatible with DirectX. + Returns the color converted to a 64-bit integer in ARGB format (each component is 16 bits). ARGB is more compatible with DirectX. [codeblocks] [gdscript] var color = Color(1, 0.5, 0.2) @@ -403,18 +423,18 @@ <return type="String" /> <param index="0" name="with_alpha" type="bool" default="true" /> <description> - Returns the color converted to an HTML hexadecimal color string in RGBA format (ex: [code]ff34f822[/code]). - Setting [param with_alpha] to [code]false[/code] excludes alpha from the hexadecimal string (and uses RGB instead of RGBA format). + Returns the color converted to an HTML hexadecimal color [String] in RGBA format, without the hash ([code]#[/code]) prefix. + Setting [param with_alpha] to [code]false[/code], excludes alpha from the hexadecimal string, using RGB format instead of RGBA format. [codeblocks] [gdscript] - var color = Color(1, 1, 1, 0.5) - var with_alpha = color.to_html() # Returns "ffffff7f" - var without_alpha = color.to_html(false) # Returns "ffffff" + var white = Color(1, 1, 1, 0.5) + var with_alpha = white.to_html() # Returns "ffffff7f" + var without_alpha = white.to_html(false) # Returns "ffffff" [/gdscript] [csharp] - var color = new Color(1, 1, 1, 0.5f); - String withAlpha = color.ToHtml(); // Returns "ffffff7f" - String withoutAlpha = color.ToHtml(false); // Returns "ffffff" + var white = new Color(1, 1, 1, 0.5f); + string withAlpha = white.ToHtml(); // Returns "ffffff7f" + string withoutAlpha = white.ToHtml(false); // Returns "ffffff" [/csharp] [/codeblocks] </description> @@ -422,7 +442,7 @@ <method name="to_rgba32" qualifiers="const"> <return type="int" /> <description> - Returns the color converted to a 32-bit integer in RGBA format (each byte represents a color channel). RGBA is Godot's default format. + Returns the color converted to a 32-bit integer in RGBA format (each component is 8 bits). RGBA is Godot's default format. [codeblocks] [gdscript] var color = Color(1, 0.5, 0.2) @@ -438,7 +458,7 @@ <method name="to_rgba64" qualifiers="const"> <return type="int" /> <description> - Returns the color converted to a 64-bit integer in RGBA format (each word represents a color channel). RGBA is Godot's default format. + Returns the color converted to a 64-bit integer in RGBA format (each component is 16 bits). RGBA is Godot's default format. [codeblocks] [gdscript] var color = Color(1, 0.5, 0.2) @@ -457,19 +477,19 @@ The color's alpha component, typically on the range of 0 to 1. A value of 0 means that the color is fully transparent. A value of 1 means that the color is fully opaque. </member> <member name="a8" type="int" setter="" getter="" default="255"> - Wrapper for [member a] that uses the range 0 to 255 instead of 0 to 1. + Wrapper for [member a] that uses the range 0 to 255, instead of 0 to 1. </member> <member name="b" type="float" setter="" getter="" default="0.0"> The color's blue component, typically on the range of 0 to 1. </member> <member name="b8" type="int" setter="" getter="" default="0"> - Wrapper for [member b] that uses the range 0 to 255 instead of 0 to 1. + Wrapper for [member b] that uses the range 0 to 255, instead of 0 to 1. </member> <member name="g" type="float" setter="" getter="" default="0.0"> The color's green component, typically on the range of 0 to 1. </member> <member name="g8" type="int" setter="" getter="" default="0"> - Wrapper for [member g] that uses the range 0 to 255 instead of 0 to 1. + Wrapper for [member g] that uses the range 0 to 255, instead of 0 to 1. </member> <member name="h" type="float" setter="" getter="" default="0.0"> The HSV hue of this color, on the range 0 to 1. @@ -478,7 +498,7 @@ The color's red component, typically on the range of 0 to 1. </member> <member name="r8" type="int" setter="" getter="" default="0"> - Wrapper for [member r] that uses the range 0 to 255 instead of 0 to 1. + Wrapper for [member r] that uses the range 0 to 255, instead of 0 to 1. </member> <member name="s" type="float" setter="" getter="" default="0.0"> The HSV saturation of this color, on the range 0 to 1. @@ -510,7 +530,7 @@ Bisque color. </constant> <constant name="BLACK" value="Color(0, 0, 0, 1)"> - Black color. + Black color. In GDScript, this is the default value of any color. </constant> <constant name="BLANCHED_ALMOND" value="Color(1, 0.921569, 0.803922, 1)"> Blanched almond color. @@ -932,7 +952,7 @@ <return type="bool" /> <param index="0" name="right" type="Color" /> <description> - Returns [code]true[/code] if the colors are not equal. + Returns [code]true[/code] if the colors are not exactly equal. [b]Note:[/b] Due to floating-point precision errors, consider using [method is_equal_approx] instead, which is more reliable. </description> </operator> @@ -1004,7 +1024,7 @@ <return type="float" /> <param index="0" name="index" type="int" /> <description> - Access color components using their index. [code]c[0][/code] is equivalent to [code]c.r[/code], [code]c[1][/code] is equivalent to [code]c.g[/code], [code]c[2][/code] is equivalent to [code]c.b[/code], and [code]c[3][/code] is equivalent to [code]c.a[/code]. + Access color components using their index. [code][0][/code] is equivalent to [member r], [code][1][/code] is equivalent to [member g], [code][2][/code] is equivalent to [member b], and [code][3][/code] is equivalent to [member a]. </description> </operator> <operator name="operator unary+"> @@ -1016,7 +1036,7 @@ <operator name="operator unary-"> <return type="Color" /> <description> - Inverts the given color. This is equivalent to [code]Color.WHITE - c[/code] or [code]Color(1 - c.r, 1 - c.g, 1 - c.b, 1 - c.a)[/code]. + Inverts the given color. This is equivalent to [code]Color.WHITE - c[/code] or [code]Color(1 - c.r, 1 - c.g, 1 - c.b, 1 - c.a)[/code]. Unlike with [method inverted], the [member a] component is inverted, too. </description> </operator> </operators> diff --git a/doc/classes/ColorPicker.xml b/doc/classes/ColorPicker.xml index 2b287d7546..823433c2df 100644 --- a/doc/classes/ColorPicker.xml +++ b/doc/classes/ColorPicker.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="ColorPicker" inherits="BoxContainer" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="ColorPicker" inherits="VBoxContainer" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> Color picker control. </brief_description> @@ -88,7 +88,6 @@ <member name="sliders_visible" type="bool" setter="set_sliders_visible" getter="are_sliders_visible" default="true"> If [code]true[/code], the color sliders are visible. </member> - <member name="vertical" type="bool" setter="set_vertical" getter="is_vertical" overrides="BoxContainer" default="true" /> </members> <signals> <signal name="color_changed"> diff --git a/doc/classes/ColorPickerButton.xml b/doc/classes/ColorPickerButton.xml index b7a0bdfb0c..2a37cc162a 100644 --- a/doc/classes/ColorPickerButton.xml +++ b/doc/classes/ColorPickerButton.xml @@ -79,6 +79,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="font" data_type="font" type="Font"> [Font] of the [ColorPickerButton]'s text. diff --git a/doc/classes/CompressedCubemap.xml b/doc/classes/CompressedCubemap.xml index fbb0879fdc..10ee266897 100644 --- a/doc/classes/CompressedCubemap.xml +++ b/doc/classes/CompressedCubemap.xml @@ -1,8 +1,17 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="CompressedCubemap" inherits="CompressedTextureLayered" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + 6-sided texture typically used in 3D rendering, optionally compressed. </brief_description> <description> + A cubemap that is loaded from a [code].ccube[/code] file. This file format is internal to Godot; it is created by importing other image formats with the import system. [CompressedCubemap] can use one of 4 compresson methods: + - Uncompressed (uncompressed on the GPU) + - Lossless (WebP or PNG, uncompressed on the GPU) + - Lossy (WebP, uncompressed on the GPU) + - VRAM Compressed (compressed on the GPU) + Only [b]VRAM Compressed[/b] actually reduces the memory usage on the GPU. The [b]Lossless[/b] and [b]Lossy[/b] compression methods will reduce the required storage on disk, but they will not reduce memory usage on the GPU as the texture is sent to the GPU uncompressed. + Using [b]VRAM Compressed[/b] also improves loading times, as VRAM-compressed textures are faster to load compared to textures using lossless or lossy compression. VRAM compression can exhibit noticeable artifacts and is intended to be used for 3D rendering, not 2D. + See [Cubemap] for a general description of cubemaps. </description> <tutorials> </tutorials> diff --git a/doc/classes/CompressedCubemapArray.xml b/doc/classes/CompressedCubemapArray.xml index ff096cea47..4221241910 100644 --- a/doc/classes/CompressedCubemapArray.xml +++ b/doc/classes/CompressedCubemapArray.xml @@ -1,8 +1,17 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="CompressedCubemapArray" inherits="CompressedTextureLayered" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Array of 6-sided textures typically used in 3D rendering, optionally compressed. </brief_description> <description> + A cubemap array that is loaded from a [code].ccubearray[/code] file. This file format is internal to Godot; it is created by importing other image formats with the import system. [CompressedCubemapArray] can use one of 4 compresson methods: + - Uncompressed (uncompressed on the GPU) + - Lossless (WebP or PNG, uncompressed on the GPU) + - Lossy (WebP, uncompressed on the GPU) + - VRAM Compressed (compressed on the GPU) + Only [b]VRAM Compressed[/b] actually reduces the memory usage on the GPU. The [b]Lossless[/b] and [b]Lossy[/b] compression methods will reduce the required storage on disk, but they will not reduce memory usage on the GPU as the texture is sent to the GPU uncompressed. + Using [b]VRAM Compressed[/b] also improves loading times, as VRAM-compressed textures are faster to load compared to textures using lossless or lossy compression. VRAM compression can exhibit noticeable artifacts and is intended to be used for 3D rendering, not 2D. + See [CubemapArray] for a general description of cubemap arrays. </description> <tutorials> </tutorials> diff --git a/doc/classes/CompressedTexture2D.xml b/doc/classes/CompressedTexture2D.xml index f74265b8d5..660062af7b 100644 --- a/doc/classes/CompressedTexture2D.xml +++ b/doc/classes/CompressedTexture2D.xml @@ -1,10 +1,16 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="CompressedTexture2D" inherits="Texture2D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> - A [code].ctex[/code] texture. + Texture with 2 dimensions, optionally compressed. </brief_description> <description> - A texture that is loaded from a [code].ctex[/code] file. + A texture that is loaded from a [code].ctex[/code] file. This file format is internal to Godot; it is created by importing other image formats with the import system. [CompressedTexture2D] can use one of 4 compression methods (including a lack of any compression): + - Uncompressed (uncompressed on the GPU) + - Lossless (WebP or PNG, uncompressed on the GPU) + - Lossy (WebP, uncompressed on the GPU) + - VRAM Compressed (compressed on the GPU) + Only [b]VRAM Compressed[/b] actually reduces the memory usage on the GPU. The [b]Lossless[/b] and [b]Lossy[/b] compression methods will reduce the required storage on disk, but they will not reduce memory usage on the GPU as the texture is sent to the GPU uncompressed. + Using [b]VRAM Compressed[/b] also improves loading times, as VRAM-compressed textures are faster to load compared to textures using lossless or lossy compression. VRAM compression can exhibit noticeable artifacts and is intended to be used for 3D rendering, not 2D. </description> <tutorials> </tutorials> @@ -13,13 +19,14 @@ <return type="int" enum="Error" /> <param index="0" name="path" type="String" /> <description> - Loads the texture from the given path. + Loads the texture from the specified [param path]. </description> </method> </methods> <members> <member name="load_path" type="String" setter="load" getter="get_load_path" default=""""> - The CompressedTexture's file path to a [code].ctex[/code] file. + The [CompressedTexture2D]'s file path to a [code].ctex[/code] file. </member> + <member name="resource_local_to_scene" type="bool" setter="set_local_to_scene" getter="is_local_to_scene" overrides="Resource" default="false" /> </members> </class> diff --git a/doc/classes/CompressedTexture2DArray.xml b/doc/classes/CompressedTexture2DArray.xml index 0c751759af..0bd894a2da 100644 --- a/doc/classes/CompressedTexture2DArray.xml +++ b/doc/classes/CompressedTexture2DArray.xml @@ -1,8 +1,17 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="CompressedTexture2DArray" inherits="CompressedTextureLayered" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Array of 2-dimensional textures, optionally compressed. </brief_description> <description> + A texture array that is loaded from a [code].ctexarray[/code] file. This file format is internal to Godot; it is created by importing other image formats with the import system. [CompressedTexture2DArray] can use one of 4 compresson methods: + - Uncompressed (uncompressed on the GPU) + - Lossless (WebP or PNG, uncompressed on the GPU) + - Lossy (WebP, uncompressed on the GPU) + - VRAM Compressed (compressed on the GPU) + Only [b]VRAM Compressed[/b] actually reduces the memory usage on the GPU. The [b]Lossless[/b] and [b]Lossy[/b] compression methods will reduce the required storage on disk, but they will not reduce memory usage on the GPU as the texture is sent to the GPU uncompressed. + Using [b]VRAM Compressed[/b] also improves loading times, as VRAM-compressed textures are faster to load compared to textures using lossless or lossy compression. VRAM compression can exhibit noticeable artifacts and is intended to be used for 3D rendering, not 2D. + See [Texture2DArray] for a general description of texture arrays. </description> <tutorials> </tutorials> diff --git a/doc/classes/CompressedTexture3D.xml b/doc/classes/CompressedTexture3D.xml index 50bd025861..b11583b684 100644 --- a/doc/classes/CompressedTexture3D.xml +++ b/doc/classes/CompressedTexture3D.xml @@ -1,8 +1,12 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="CompressedTexture3D" inherits="Texture3D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Texture with 3 dimensions, optionally compressed. </brief_description> <description> + [CompressedTexture3D] is the VRAM-compressed counterpart of [ImageTexture3D]. The file extension for [CompressedTexture3D] files is [code].ctex3d[/code]. This file format is internal to Godot; it is created by importing other image formats with the import system. + [CompressedTexture3D] uses VRAM compression, which allows to reduce memory usage on the GPU when rendering the texture. This also improves loading times, as VRAM-compressed textures are faster to load compared to textures using lossless compression. VRAM compression can exhibit noticeable artifacts and is intended to be used for 3D rendering, not 2D. + See [Texture3D] for a general description of 3D textures. </description> <tutorials> </tutorials> @@ -11,11 +15,13 @@ <return type="int" enum="Error" /> <param index="0" name="path" type="String" /> <description> + Loads the texture from the specified [param path]. </description> </method> </methods> <members> <member name="load_path" type="String" setter="load" getter="get_load_path" default=""""> + The [CompressedTexture3D]'s file path to a [code].ctex3d[/code] file. </member> </members> </class> diff --git a/doc/classes/CompressedTextureLayered.xml b/doc/classes/CompressedTextureLayered.xml index 547679c0f0..376483ae5c 100644 --- a/doc/classes/CompressedTextureLayered.xml +++ b/doc/classes/CompressedTextureLayered.xml @@ -1,8 +1,16 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="CompressedTextureLayered" inherits="TextureLayered" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Base class for texture arrays that can optionally be compressed. </brief_description> <description> + A texture array that is loaded from a [code].ctexarray[/code] file. This file format is internal to Godot; it is created by importing other image formats with the import system. [CompressedTexture2D] can use one of 4 compresson methods: + - Uncompressed (uncompressed on the GPU) + - Lossless (WebP or PNG, uncompressed on the GPU) + - Lossy (WebP, uncompressed on the GPU) + - VRAM Compressed (compressed on the GPU) + Only [b]VRAM Compressed[/b] actually reduces the memory usage on the GPU. The [b]Lossless[/b] and [b]Lossy[/b] compression methods will reduce the required storage on disk, but they will not reduce memory usage on the GPU as the texture is sent to the GPU uncompressed. + Using [b]VRAM Compressed[/b] also improves loading times, as VRAM-compressed textures are faster to load compared to textures using lossless or lossy compression. VRAM compression can exhibit noticeable artifacts and is intended to be used for 3D rendering, not 2D. </description> <tutorials> </tutorials> @@ -11,11 +19,13 @@ <return type="int" enum="Error" /> <param index="0" name="path" type="String" /> <description> + Loads the texture at [param path]. </description> </method> </methods> <members> <member name="load_path" type="String" setter="load" getter="get_load_path" default=""""> + The path the texture should be loaded from. </member> </members> </class> diff --git a/doc/classes/Control.xml b/doc/classes/Control.xml index e1dd2819b2..b0351559ee 100644 --- a/doc/classes/Control.xml +++ b/doc/classes/Control.xml @@ -1010,6 +1010,10 @@ <member name="layout_direction" type="int" setter="set_layout_direction" getter="get_layout_direction" enum="Control.LayoutDirection" default="0"> Controls layout direction and text writing direction. Right-to-left layouts are necessary for certain languages (e.g. Arabic and Hebrew). </member> + <member name="localize_numeral_system" type="bool" setter="set_localize_numeral_system" getter="is_localizing_numeral_system" default="true"> + If [code]true[/code], automatically converts code line numbers, list indices, [SpinBox] and [ProgressBar] values from the Western Arabic (0..9) to the numeral systems used in current locale. + [b]Note:[/b] Numbers within the text are not automatically converted, it can be done manually, using [method TextServer.format_number]. + </member> <member name="mouse_default_cursor_shape" type="int" setter="set_default_cursor_shape" getter="get_default_cursor_shape" enum="Control.CursorShape" default="0"> The default cursor shape for this control. Useful for Godot plugins and applications or games that use the system's mouse cursors. [b]Note:[/b] On Linux, shapes may vary depending on the cursor theme of the system. @@ -1046,9 +1050,12 @@ <member name="rotation" type="float" setter="set_rotation" getter="get_rotation" default="0.0"> The node's rotation around its pivot, in radians. See [member pivot_offset] to change the pivot's position. </member> + <member name="rotation_degrees" type="float" setter="set_rotation_degrees" getter="get_rotation_degrees"> + Helper property to access [member rotation] in degrees instead of radians. + </member> <member name="scale" type="Vector2" setter="set_scale" getter="get_scale" default="Vector2(1, 1)"> The node's scale, relative to its [member size]. Change this property to scale the node around its [member pivot_offset]. The Control's [member tooltip_text] will also scale according to this value. - [b]Note:[/b] This property is mainly intended to be used for animation purposes. Text inside the Control will look pixelated or blurry when the Control is scaled. To support multiple resolutions in your project, use an appropriate viewport stretch mode as described in the [url=$DOCS_URL/tutorials/viewports/multiple_resolutions.html]documentation[/url] instead of scaling Controls individually. + [b]Note:[/b] This property is mainly intended to be used for animation purposes. Text inside the Control will look pixelated or blurry when the Control is scaled. To support multiple resolutions in your project, use an appropriate viewport stretch mode as described in the [url=$DOCS_URL/tutorials/rendering/multiple_resolutions.html]documentation[/url] instead of scaling Controls individually. [b]Note:[/b] If the Control node is a child of a [Container] node, the scale will be reset to [code]Vector2(1, 1)[/code] when the scene is instantiated. To set the Control's scale when it's instantiated, wait for one frame using [code]await get_tree().process_frame[/code] then set its [member scale] property. </member> <member name="shortcut_context" type="Node" setter="set_shortcut_context" getter="get_shortcut_context"> @@ -1067,7 +1074,8 @@ Tells the parent [Container] nodes how they should resize and place the node on the Y axis. Use one of the [enum SizeFlags] constants to change the flags. See the constants to learn what each does. </member> <member name="theme" type="Theme" setter="set_theme" getter="get_theme"> - The [Theme] resource this node and all its [Control] children use. If a child node has its own [Theme] resource set, theme items are merged with child's definitions having higher priority. + The [Theme] resource this node and all its [Control] and [Window] children use. If a child node has its own [Theme] resource set, theme items are merged with child's definitions having higher priority. + [b]Note:[/b] [Window] styles will have no effect unless the window is embedded. </member> <member name="theme_type_variation" type="StringName" setter="set_theme_type_variation" getter="get_theme_type_variation" default="&"""> The name of a theme type variation used by this [Control] to look up its own theme items. When empty, the class name of the node is used (e.g. [code]Button[/code] for the [Button] control), as well as the class names of all parent classes (in order of inheritance). diff --git a/doc/classes/Cubemap.xml b/doc/classes/Cubemap.xml index 0cdebeda95..46ddede9b1 100644 --- a/doc/classes/Cubemap.xml +++ b/doc/classes/Cubemap.xml @@ -4,8 +4,9 @@ 6-sided texture typically used in 3D rendering. </brief_description> <description> - A cubemap is made of 6 textures organized in layers. They are typically used for faking reflections (see [ReflectionProbe]) in 3D rendering. It can be used to make an object look as if it's reflecting its surroundings. This usually delivers much better performance than other reflection methods. - This resource is typically used as a uniform in custom shaders. Few core Godot methods make use of Cubemap resources. + A cubemap is made of 6 textures organized in layers. They are typically used for faking reflections in 3D rendering (see [ReflectionProbe]). It can be used to make an object look as if it's reflecting its surroundings. This usually delivers much better performance than other reflection methods. + This resource is typically used as a uniform in custom shaders. Few core Godot methods make use of [Cubemap] resources. + To create such a texture file yourself, reimport your image files using the Godot Editor import presets. [b]Note:[/b] Godot doesn't support using cubemaps in a [PanoramaSkyMaterial]. You can use [url=https://danilw.github.io/GLSL-howto/cubemap_to_panorama_js/cubemap_to_panorama.html]this tool[/url] to convert a cubemap to an equirectangular sky map. </description> <tutorials> diff --git a/doc/classes/CubemapArray.xml b/doc/classes/CubemapArray.xml index 07e401a13d..2fd55b66c6 100644 --- a/doc/classes/CubemapArray.xml +++ b/doc/classes/CubemapArray.xml @@ -5,8 +5,9 @@ </brief_description> <description> [CubemapArray]s are made of an array of [Cubemap]s. Accordingly, like [Cubemap]s they are made of multiple textures the amount of which must be divisible by 6 (one image for each face of the cube). The primary benefit of [CubemapArray]s is that they can be accessed in shader code using a single texture reference. In other words, you can pass multiple [Cubemap]s into a shader using a single [CubemapArray]. - Generally, [CubemapArray]s provide a more efficient way for storing multiple [Cubemap]s, than storing multiple [Cubemap]s themselves in an array. - Internally Godot, uses [CubemapArray]s for many effects including the [Sky], if you set [member ProjectSettings.rendering/reflections/sky_reflections/texture_array_reflections] to [code]true[/code]. + Generally, [CubemapArray]s provide a more efficient way for storing multiple [Cubemap]s compared to storing multiple [Cubemap]s themselves in an array. + Internally, Godot uses [CubemapArray]s for many effects including the [Sky], if you set [member ProjectSettings.rendering/reflections/sky_reflections/texture_array_reflections] to [code]true[/code]. + To create such a texture file yourself, reimport your image files using the Godot Editor import presets. [b]Note:[/b] [CubemapArray] is not supported in the OpenGL 3 rendering backend. </description> <tutorials> diff --git a/doc/classes/Curve2D.xml b/doc/classes/Curve2D.xml index ccdf085319..b5e75dff68 100644 --- a/doc/classes/Curve2D.xml +++ b/doc/classes/Curve2D.xml @@ -51,7 +51,7 @@ <return type="Vector2" /> <param index="0" name="to_point" type="Vector2" /> <description> - Returns the closest baked point (in curve's local space) to [param to_point]. + Returns the closest point on baked segments (in curve's local space) to [param to_point]. [param to_point] must be in this curve's local space. </description> </method> @@ -94,7 +94,7 @@ </method> <method name="sample_baked" qualifiers="const"> <return type="Vector2" /> - <param index="0" name="offset" type="float" /> + <param index="0" name="offset" type="float" default="0.0" /> <param index="1" name="cubic" type="bool" default="false" /> <description> Returns a point within the curve at position [param offset], where [param offset] is measured as a pixel distance along the curve. @@ -104,13 +104,10 @@ </method> <method name="sample_baked_with_rotation" qualifiers="const"> <return type="Transform2D" /> - <param index="0" name="offset" type="float" /> + <param index="0" name="offset" type="float" default="0.0" /> <param index="1" name="cubic" type="bool" default="false" /> - <param index="2" name="loop" type="bool" default="true" /> - <param index="3" name="lookahead" type="float" default="4.0" /> <description> Similar to [method sample_baked], but returns [Transform2D] that includes a rotation along the curve. Returns empty transform if length of the curve is [code]0[/code]. - Use [param loop] to smooth the tangent at the end of the curve. [param lookahead] defines the distance to a nearby point for calculating the tangent vector. [codeblock] var transform = curve.sample_baked_with_rotation(offset) position = transform.get_origin() @@ -160,6 +157,13 @@ [param tolerance_degrees] controls how many degrees the midpoint of a segment may deviate from the real curve, before the segment has to be subdivided. </description> </method> + <method name="tessellate_even_length" qualifiers="const"> + <return type="PackedVector2Array" /> + <param index="0" name="max_stages" type="int" default="5" /> + <param index="1" name="tolerance_length" type="float" default="20.0" /> + <description> + </description> + </method> </methods> <members> <member name="bake_interval" type="float" setter="set_bake_interval" getter="get_bake_interval" default="5.0"> diff --git a/doc/classes/Curve3D.xml b/doc/classes/Curve3D.xml index 3e4e05f51a..362d792b39 100644 --- a/doc/classes/Curve3D.xml +++ b/doc/classes/Curve3D.xml @@ -64,7 +64,7 @@ <return type="Vector3" /> <param index="0" name="to_point" type="Vector3" /> <description> - Returns the closest baked point (in curve's local space) to [param to_point]. + Returns the closest point on baked segments (in curve's local space) to [param to_point]. [param to_point] must be in this curve's local space. </description> </method> @@ -114,7 +114,7 @@ </method> <method name="sample_baked" qualifiers="const"> <return type="Vector3" /> - <param index="0" name="offset" type="float" /> + <param index="0" name="offset" type="float" default="0.0" /> <param index="1" name="cubic" type="bool" default="false" /> <description> Returns a point within the curve at position [param offset], where [param offset] is measured as a distance in 3D units along the curve. @@ -132,6 +132,15 @@ If the curve has no up vectors, the function sends an error to the console, and returns [code](0, 1, 0)[/code]. </description> </method> + <method name="sample_baked_with_rotation" qualifiers="const"> + <return type="Transform3D" /> + <param index="0" name="offset" type="float" default="0.0" /> + <param index="1" name="cubic" type="bool" default="false" /> + <param index="2" name="apply_tilt" type="bool" default="false" /> + <description> + Similar with [code]interpolate_baked()[/code]. The the return value is [code]Transform3D[/code], with [code]origin[/code] as point position, [code]basis.x[/code] as sideway vector, [code]basis.y[/code] as up vector, [code]basis.z[/code] as forward vector. When the curve length is 0, there is no reasonable way to calculate the rotation, all vectors aligned with global space axes. + </description> + </method> <method name="samplef" qualifiers="const"> <return type="Vector3" /> <param index="0" name="fofs" type="float" /> @@ -183,6 +192,15 @@ [param tolerance_degrees] controls how many degrees the midpoint of a segment may deviate from the real curve, before the segment has to be subdivided. </description> </method> + <method name="tessellate_even_length" qualifiers="const"> + <return type="PackedVector3Array" /> + <param index="0" name="max_stages" type="int" default="5" /> + <param index="1" name="tolerance_length" type="float" default="0.2" /> + <description> + Returns a list of points along the curve, with almost uniform density. [param max_stages] controls how many subdivisions a curve segment may face before it is considered approximate enough. Each subdivision splits the segment in half, so the default 5 stages may mean up to 32 subdivisions per curve segment. Increase with care! + [param tolerance_length] controls the maximal distance between two neighbouring points, before the segment has to be subdivided. + </description> + </method> </methods> <members> <member name="bake_interval" type="float" setter="set_bake_interval" getter="get_bake_interval" default="0.2"> diff --git a/doc/classes/CurveTexture.xml b/doc/classes/CurveTexture.xml index 85473fc237..03e008d738 100644 --- a/doc/classes/CurveTexture.xml +++ b/doc/classes/CurveTexture.xml @@ -13,6 +13,7 @@ <member name="curve" type="Curve" setter="set_curve" getter="get_curve"> The [Curve] that is rendered onto the texture. </member> + <member name="resource_local_to_scene" type="bool" setter="set_local_to_scene" getter="is_local_to_scene" overrides="Resource" default="false" /> <member name="texture_mode" type="int" setter="set_texture_mode" getter="get_texture_mode" enum="CurveTexture.TextureMode" default="0"> The format the texture should be generated with. When passing a CurveTexture as a input to a [Shader], this may need to be adjusted. </member> diff --git a/doc/classes/CurveXYZTexture.xml b/doc/classes/CurveXYZTexture.xml index e3f2e8fc45..8c4e2dce0f 100644 --- a/doc/classes/CurveXYZTexture.xml +++ b/doc/classes/CurveXYZTexture.xml @@ -19,6 +19,7 @@ <member name="curve_z" type="Curve" setter="set_curve_z" getter="get_curve_z"> The [Curve] that is rendered onto the texture's blue channel. </member> + <member name="resource_local_to_scene" type="bool" setter="set_local_to_scene" getter="is_local_to_scene" overrides="Resource" default="false" /> <member name="width" type="int" setter="set_width" getter="get_width" default="256"> The width of the texture (in pixels). Higher values make it possible to represent high-frequency data better (such as sudden direction changes), at the cost of increased generation time and memory usage. </member> diff --git a/doc/classes/Dictionary.xml b/doc/classes/Dictionary.xml index 9842288d35..5f99ba82b8 100644 --- a/doc/classes/Dictionary.xml +++ b/doc/classes/Dictionary.xml @@ -4,9 +4,8 @@ Dictionary type. </brief_description> <description> - Dictionary type. Associative container, which contains values referenced by unique keys. Dictionaries are composed of pairs of keys (which must be unique) and values. Dictionaries will preserve the insertion order when adding elements. In other programming languages, this data structure is sometimes referred to as a hash map or associative array. + Dictionary type. Associative container, which contains values referenced by unique keys. Dictionaries are composed of pairs of keys (which must be unique) and values. Dictionaries will preserve the insertion order when adding new entries. In other programming languages, this data structure is sometimes referred to as a hash map or associative array. You can define a dictionary by placing a comma-separated list of [code]key: value[/code] pairs in curly braces [code]{}[/code]. - Erasing elements while iterating over them [b]is not supported[/b] and will result in undefined behavior. [b]Note:[/b] Dictionaries are always passed by reference. To get a copy of a dictionary which can be modified independently of the original dictionary, use [method duplicate]. Creating a dictionary: [codeblocks] @@ -40,10 +39,10 @@ }; [/csharp] [/codeblocks] - You can access a dictionary's values by referencing the appropriate key. In the above example, [code]points_dict["White"][/code] will return [code]50[/code]. You can also write [code]points_dict.White[/code], which is equivalent. However, you'll have to use the bracket syntax if the key you're accessing the dictionary with isn't a fixed string (such as a number or variable). + You can access a dictionary's value by referencing its corresponding key. In the above example, [code]points_dict["White"][/code] will return [code]50[/code]. You can also write [code]points_dict.White[/code], which is equivalent. However, you'll have to use the bracket syntax if the key you're accessing the dictionary with isn't a fixed string (such as a number or variable). [codeblocks] [gdscript] - export(String, "White", "Yellow", "Orange") var my_color + @export(String, "White", "Yellow", "Orange") var my_color var points_dict = {"White": 50, "Yellow": 75, "Orange": 100} func _ready(): # We can't use dot syntax here as `my_color` is a variable. @@ -69,7 +68,9 @@ Dictionaries can contain more complex data: [codeblocks] [gdscript] - my_dict = {"First Array": [1, 2, 3, 4]} # Assigns an Array to a String key. + var my_dict = { + "First Array": [1, 2, 3, 4] # Assigns an Array to a String key. + } [/gdscript] [csharp] var myDict = new Godot.Collections.Dictionary @@ -91,7 +92,7 @@ {"Yellow", 75}, {"Orange", 100} }; - pointsDict["blue"] = 150; // Add "Blue" as a key and assign 150 as its value. + pointsDict["Blue"] = 150; // Add "Blue" as a key and assign 150 as its value. [/csharp] [/codeblocks] Finally, dictionaries can contain different types of keys and values in the same dictionary: @@ -118,63 +119,23 @@ }; [/csharp] [/codeblocks] - [b]Note:[/b] Unlike [Array]s, you can't compare dictionaries directly: + The keys of a dictionary can be iterated with the [code]for[/code] keyword: [codeblocks] [gdscript] - var array1 = [1, 2, 3] - var array2 = [1, 2, 3] - - func compare_arrays(): - print(array1 == array2) # Will print true. - - var dict1 = {"a": 1, "b": 2, "c": 3} - var dict2 = {"a": 1, "b": 2, "c": 3} - - func compare_dictionaries(): - print(dict1 == dict2) # Will NOT print true. + var groceries = {"Orange": 20, "Apple": 2, "Banana": 4} + for fruit in groceries: + var amount = groceries[fruit] [/gdscript] [csharp] - // You have to use GD.Hash(). - - public Godot.Collections.Array array1 = new Godot.Collections.Array{1, 2, 3}; - public Godot.Collections.Array array2 = new Godot.Collections.Array{1, 2, 3}; - - public void CompareArrays() + var groceries = new Godot.Collections.Dictionary{{"Orange", 20}, {"Apple", 2}, {"Banana", 4}}; + foreach (var (fruit, amount) in groceries) { - GD.Print(array1 == array2); // Will print FALSE!! - GD.Print(GD.Hash(array1) == GD.Hash(array2)); // Will print true. - } - - public Godot.Collections.Dictionary dict1 = new Godot.Collections.Dictionary{{"a", 1}, {"b", 2}, {"c", 3}}; - public Godot.Collections.Dictionary dict2 = new Godot.Collections.Dictionary{{"a", 1}, {"b", 2}, {"c", 3}}; - - public void CompareDictionaries() - { - GD.Print(dict1 == dict2); // Will NOT print true. + // `fruit` is the key, `amount` is the value. } [/csharp] [/codeblocks] - You need to first calculate the dictionary's hash with [method hash] before you can compare them: - [codeblocks] - [gdscript] - var dict1 = {"a": 1, "b": 2, "c": 3} - var dict2 = {"a": 1, "b": 2, "c": 3} - - func compare_dictionaries(): - print(dict1.hash() == dict2.hash()) # Will print true. - [/gdscript] - [csharp] - // You have to use GD.Hash(). - public Godot.Collections.Dictionary dict1 = new Godot.Collections.Dictionary{{"a", 1}, {"b", 2}, {"c", 3}}; - public Godot.Collections.Dictionary dict2 = new Godot.Collections.Dictionary{{"a", 1}, {"b", 2}, {"c", 3}}; - - public void CompareDictionaries() - { - GD.Print(GD.Hash(dict1) == GD.Hash(dict2)); // Will print true. - } - [/csharp] - [/codeblocks] - [b]Note:[/b] When declaring a dictionary with [code]const[/code], the dictionary itself can still be mutated by defining the values of individual keys. Using [code]const[/code] will only prevent assigning the constant with another value after it was initialized. + [b]Note:[/b] Erasing elements while iterating over dictionaries is [b]not[/b] supported and will result in unpredictable behavior. + [b]Note:[/b] When declaring a dictionary with [code]const[/code], the dictionary becomes read-only. A read-only Dictionary's entries cannot be overridden at run-time. This does [i]not[/i] affect nested [Array] and [Dictionary] values. </description> <tutorials> <link title="GDScript basics: Dictionary">$DOCS_URL/tutorials/scripting/gdscript/gdscript_basics.html#dictionary</link> @@ -192,7 +153,7 @@ <return type="Dictionary" /> <param index="0" name="from" type="Dictionary" /> <description> - Constructs a [Dictionary] as a copy of the given [Dictionary]. + Returns the same array as [param from]. If you need a copy of the array, use [method duplicate]. </description> </constructor> </constructors> @@ -200,30 +161,30 @@ <method name="clear"> <return type="void" /> <description> - Clear the dictionary, removing all key/value pairs. + Clears the dictionary, removing all entries from it. </description> </method> <method name="duplicate" qualifiers="const"> <return type="Dictionary" /> <param index="0" name="deep" type="bool" default="false" /> <description> - Creates a copy of the dictionary, and returns it. The [param deep] parameter causes inner dictionaries and arrays to be copied recursively, but does not apply to objects. + Creates and returns a new copy of the dictionary. If [param deep] is [code]true[/code], inner [Dictionary] and [Array] keys and values are also copied, recursively. </description> </method> <method name="erase"> <return type="bool" /> <param index="0" name="key" type="Variant" /> <description> - Erase a dictionary key/value pair by key. Returns [code]true[/code] if the given key was present in the dictionary, [code]false[/code] otherwise. - [b]Note:[/b] Don't erase elements while iterating over the dictionary. You can iterate over the [method keys] array instead. + Removes the dictionary entry by key, if it exists. Returns [code]true[/code] if the given [param key] existed in the dictionary, otherwise [code]false[/code]. + [b]Note:[/b] Do not erase entries while iterating over the dictionary. You can iterate over the [method keys] array instead. </description> </method> <method name="find_key" qualifiers="const"> <return type="Variant" /> <param index="0" name="value" type="Variant" /> <description> - Returns the first key whose associated value is equal to [param value], or [code]null[/code] if no such value is found. - [b]Note:[/b] [code]null[/code] is also a valid key. If you have it in your [Dictionary], the [method find_key] method can give misleading results. + Finds and returns the first key whose associated value is equal to [param value], or [code]null[/code] if it is not found. + [b]Note:[/b] [code]null[/code] is also a valid key. If inside the dictionary, [method find_key] may give misleading results. </description> </method> <method name="get" qualifiers="const"> @@ -231,72 +192,89 @@ <param index="0" name="key" type="Variant" /> <param index="1" name="default" type="Variant" default="null" /> <description> - Returns the current value for the specified key in the [Dictionary]. If the key does not exist, the method returns the value of the optional default argument, or [code]null[/code] if it is omitted. + Returns the corresponding value for the given [param key] in the dictionary. If the [param key] does not exist, returns [param default], or [code]null[/code] if the parameter is omitted. </description> </method> <method name="has" qualifiers="const"> <return type="bool" /> <param index="0" name="key" type="Variant" /> <description> - Returns [code]true[/code] if the dictionary has a given key. - [b]Note:[/b] This is equivalent to using the [code]in[/code] operator as follows: + Returns [code]true[/code] if the dictionary contains an entry with the given [param key]. [codeblocks] [gdscript] - # Will evaluate to `true`. - if "godot" in {"godot": "engine"}: - pass + var my_dict = { + "Godot" : 4, + 210 : null, + } + + print(my_dict.has("Godot")) # Prints true + print(my_dict.has(210)) # Prints true + print(my_dict.has(4)) # Prints false [/gdscript] [csharp] - // You have to use Contains() here as an alternative to GDScript's `in` operator. - if (new Godot.Collections.Dictionary{{"godot", "engine"}}.Contains("godot")) + var myDict = new Godot.Collections.Dictionary { - // I am executed. - } + { "Godot", 4 }, + { 210, default }, + }; + + GD.Print(myDict.Contains("Godot")); // Prints true + GD.Print(myDict.Contains(210)); // Prints true + GD.Print(myDict.Contains(4)); // Prints false [/csharp] [/codeblocks] - This method (like the [code]in[/code] operator) will evaluate to [code]true[/code] as long as the key exists, even if the associated value is [code]null[/code]. + In GDScript, this is equivalent to the [code]in[/code] operator: + [codeblock] + if "Godot" in {"Godot": 4}: + print("The key is here!") # Will be printed. + [/codeblock] + [b]Note:[/b] This method returns [code]true[/code] as long as the [param key] exists, even if its corresponding value is [code]null[/code]. </description> </method> <method name="has_all" qualifiers="const"> <return type="bool" /> <param index="0" name="keys" type="Array" /> <description> - Returns [code]true[/code] if the dictionary has all the keys in the given array. + Returns [code]true[/code] if the dictionary contains all keys in the given [param keys] array. + [codeblock] + var data = {"width" : 10, "height" : 20} + data.has_all(["height", "width"]) # Returns true + [/codeblock] </description> </method> <method name="hash" qualifiers="const"> <return type="int" /> <description> - Returns a hashed 32-bit integer value representing the dictionary contents. This can be used to compare dictionaries by value: + Returns a hashed 32-bit integer value representing the dictionary contents. [codeblocks] [gdscript] - var dict1 = {0: 10} - var dict2 = {0: 10} - # The line below prints `true`, whereas it would have printed `false` if both variables were compared directly. - print(dict1.hash() == dict2.hash()) + var dict1 = {"A": 10, "B": 2} + var dict2 = {"A": 10, "B": 2} + + print(dict1.hash() == dict2.hash()) # Prints true [/gdscript] [csharp] - var dict1 = new Godot.Collections.Dictionary{{0, 10}}; - var dict2 = new Godot.Collections.Dictionary{{0, 10}}; - // The line below prints `true`, whereas it would have printed `false` if both variables were compared directly. - // Dictionary has no Hash() method. Use GD.Hash() instead. - GD.Print(GD.Hash(dict1) == GD.Hash(dict2)); + var dict1 = new Godot.Collections.Dictionary{{"A", 10}, {"B", 2}}; + var dict2 = new Godot.Collections.Dictionary{{"A", 10}, {"B", 2}}; + + // Godot.Collections.Dictionary has no Hash() method. Use GD.Hash() instead. + GD.Print(GD.Hash(dict1) == GD.Hash(dict2)); // Prints true [/csharp] [/codeblocks] - [b]Note:[/b] Dictionaries with the same keys/values but in a different order will have a different hash. - [b]Note:[/b] Dictionaries with equal content will always produce identical hash values. However, the reverse is not true. Returning identical hash values does [i]not[/i] imply the dictionaries are equal, because different dictionaries can have identical hash values due to hash collisions. + [b]Note:[/b] Dictionaries with the same entries but in a different order will not have the same hash. + [b]Note:[/b] Dictionaries with equal hash values are [i]not[/i] guaranteed to be the same, because of hash collisions. On the countrary, dictionaries with different hash values are guaranteed to be different. </description> </method> <method name="is_empty" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if the dictionary is empty. + Returns [code]true[/code] if the dictionary is empty (its size is [code]0[/code]). See also [method size]. </description> </method> <method name="keys" qualifiers="const"> <return type="Array" /> <description> - Returns the list of keys in the [Dictionary]. + Returns the list of keys in the dictionary. </description> </method> <method name="merge"> @@ -304,19 +282,19 @@ <param index="0" name="dictionary" type="Dictionary" /> <param index="1" name="overwrite" type="bool" default="false" /> <description> - Adds elements from [param dictionary] to this [Dictionary]. By default, duplicate keys will not be copied over, unless [param overwrite] is [code]true[/code]. + Adds entries from [param dictionary] to this dictionary. By default, duplicate keys are not copied over, unless [param overwrite] is [code]true[/code]. </description> </method> <method name="size" qualifiers="const"> <return type="int" /> <description> - Returns the number of keys in the dictionary. + Returns the number of entries in the dictionary. Empty dictionaries ([code]{ }[/code]) always return [code]0[/code]. See also [method is_empty]. </description> </method> <method name="values" qualifiers="const"> <return type="Array" /> <description> - Returns the list of values in the [Dictionary]. + Returns the list of values in this dictionary. </description> </method> </methods> @@ -325,21 +303,22 @@ <return type="bool" /> <param index="0" name="right" type="Dictionary" /> <description> - Returns [code]true[/code] if the dictionaries differ, i.e. their key or value lists are different (including the order). + Returns [code]true[/code] if the two dictionaries do not contain the same keys and values. </description> </operator> <operator name="operator =="> <return type="bool" /> <param index="0" name="right" type="Dictionary" /> <description> - Returns [code]true[/code] if both dictionaries have the same contents, i.e. their keys list and value list are equal. + Returns [code]true[/code] if the two dictionaries contain the same keys and values. The order of the entries does not matter. + [b]Note:[/b] In C#, by convention, this operator compares by [b]reference[/b]. If you need to compare by value, iterate over both dictionaries. </description> </operator> <operator name="operator []"> <return type="Variant" /> <param index="0" name="key" type="Variant" /> <description> - Returns a value at the given [param key] or [code]null[/code] and error if the key does not exist. For safe access, use [method get] or [method has]. + Returns the corresponding value for the given [param key] in the dictionary. If the entry does not exist, fails and returns [code]null[/code]. For safe access, use [method get] or [method has]. </description> </operator> </operators> diff --git a/doc/classes/DirectionalLight2D.xml b/doc/classes/DirectionalLight2D.xml index a1b8ea86be..f825a9e082 100644 --- a/doc/classes/DirectionalLight2D.xml +++ b/doc/classes/DirectionalLight2D.xml @@ -1,16 +1,20 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="DirectionalLight2D" inherits="Light2D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Directional 2D light from a distance. </brief_description> <description> + A directional light is a type of [Light2D] node that models an infinite number of parallel rays covering the entire scene. It is used for lights with strong intensity that are located far away from the scene (for example: to model sunlight or moonlight). </description> <tutorials> + <link title="2D lights and shadows">$DOCS_URL/tutorials/2d/2d_lights_and_shadows.html</link> </tutorials> <members> <member name="height" type="float" setter="set_height" getter="get_height" default="0.0"> The height of the light. Used with 2D normal mapping. Ranges from 0 (parallel to the plane) to 1 (perpendicular to the plane). </member> <member name="max_distance" type="float" setter="set_max_distance" getter="get_max_distance" default="10000.0"> + The maximum distance from the camera center objects can be before their shadows are culled (in pixels). Decreasing this value can prevent objects located outside the camera from casting shadows (while also improving performance). [member Camera2D.zoom] is not taken into account by [member max_distance], which means that at higher zoom values, shadows will appear to fade out sooner when zooming onto a given point. </member> </members> </class> diff --git a/doc/classes/DisplayServer.xml b/doc/classes/DisplayServer.xml index 113987bb52..29135376c5 100644 --- a/doc/classes/DisplayServer.xml +++ b/doc/classes/DisplayServer.xml @@ -719,6 +719,12 @@ [b]Note:[/b] This method is implemented on macOS, Windows and Linux (X11). </description> </method> + <method name="is_touchscreen_available" qualifiers="const"> + <return type="bool" /> + <description> + Returns [code]true[/code] if touch events are available (Android or iOS), the capability is detected on the Webplatform or if [member ProjectSettings.input_devices/pointing/emulate_touch_from_mouse] is [code]true[/code]. + </description> + </method> <method name="keyboard_get_current_layout" qualifiers="const"> <return type="int" /> <description> @@ -889,13 +895,6 @@ Returns [code]true[/code] if the screen should never be turned off by the operating system's power-saving measures. See also [method screen_set_keep_on]. </description> </method> - <method name="screen_is_touchscreen" qualifiers="const"> - <return type="bool" /> - <param index="0" name="screen" type="int" default="-1" /> - <description> - Returns [code]true[/code] if the screen can send touch events or if [member ProjectSettings.input_devices/pointing/emulate_touch_from_mouse] is [code]true[/code]. - </description> - </method> <method name="screen_set_keep_on"> <return type="void" /> <param index="0" name="enable" type="bool" /> @@ -1156,14 +1155,14 @@ <return type="Vector2i" /> <param index="0" name="window_id" type="int" default="0" /> <description> - Returns the position of the given window to on the screen. + Returns the position of the client area of the given window on the screen. </description> </method> - <method name="window_get_real_size" qualifiers="const"> + <method name="window_get_position_with_decorations" qualifiers="const"> <return type="Vector2i" /> <param index="0" name="window_id" type="int" default="0" /> <description> - Returns the size of the window specified by [param window_id] (in pixels), including the borders drawn by the operating system. See also [method window_get_size]. + Returns the position of the given window on the screen including the borders drawn by the operating system. See also [method window_get_position]. </description> </method> <method name="window_get_safe_title_margins" qualifiers="const"> @@ -1177,7 +1176,14 @@ <return type="Vector2i" /> <param index="0" name="window_id" type="int" default="0" /> <description> - Returns the size of the window specified by [param window_id] (in pixels), excluding the borders drawn by the operating system. This is also called the "client area". See also [method window_get_real_size], [method window_set_size] and [method window_get_position]. + Returns the size of the window specified by [param window_id] (in pixels), excluding the borders drawn by the operating system. This is also called the "client area". See also [method window_get_size_with_decorations], [method window_set_size] and [method window_get_position]. + </description> + </method> + <method name="window_get_size_with_decorations" qualifiers="const"> + <return type="Vector2i" /> + <param index="0" name="window_id" type="int" default="0" /> + <description> + Returns the size of the window specified by [param window_id] (in pixels), including the borders drawn by the operating system. See also [method window_get_size]. </description> </method> <method name="window_get_vsync_mode" qualifiers="const"> @@ -1634,13 +1640,17 @@ Maximized window mode, i.e. [Window] will occupy whole screen area except task bar and still display its borders. Normally happens when the minimize button is pressed. </constant> <constant name="WINDOW_MODE_FULLSCREEN" value="3" enum="WindowMode"> - Full screen window mode. Note that this is not [i]exclusive[/i] full screen. On Windows and Linux (X11), a borderless window is used to emulate full screen. On macOS, a new desktop is used to display the running project. - Regardless of the platform, enabling full screen will change the window size to match the monitor's size. Therefore, make sure your project supports [url=$DOCS_URL/tutorials/rendering/multiple_resolutions.html]multiple resolutions[/url] when enabling full screen mode. + Full screen mode with full multi-window support. + Full screen window cover the entire display area of a screen, have no border or decorations. Display video mode is not changed. + [b]Note:[/b] Regardless of the platform, enabling full screen will change the window size to match the monitor's size. Therefore, make sure your project supports [url=$DOCS_URL/tutorials/rendering/multiple_resolutions.html]multiple resolutions[/url] when enabling full screen mode. </constant> <constant name="WINDOW_MODE_EXCLUSIVE_FULLSCREEN" value="4" enum="WindowMode"> - Exclusive full screen window mode. This mode is implemented on Windows only. On other platforms, it is equivalent to [constant WINDOW_MODE_FULLSCREEN]. - Only one window in exclusive full screen mode can be visible on a given screen at a time. If multiple windows are in exclusive full screen mode for the same screen, the last one being set to this mode takes precedence. - Regardless of the platform, enabling full screen will change the window size to match the monitor's size. Therefore, make sure your project supports [url=$DOCS_URL/tutorials/rendering/multiple_resolutions.html]multiple resolutions[/url] when enabling full screen mode. + A single window full screen mode. This mode has less overhead, but only one window can be open on a given screen at a time (opening a child window or application switching will trigger a full screen transition). + Full screen window cover the entire display area of a screen, have no border or decorations. Display video mode is not changed. + [b]On Windows:[/b] Depending on video driver, full screen transition might cause screens to go black for a moment. + [b]On macOS:[/b] Exclusive full screen mode prevents Dock and Menu from showing up when the mouse pointer is hovering the edge of the screen. + [b]On Linux (X11):[/b] Exclusive full screen mode bypasses compositor. + [b]Note:[/b] Regardless of the platform, enabling full screen will change the window size to match the monitor's size. Therefore, make sure your project supports [url=$DOCS_URL/tutorials/rendering/multiple_resolutions.html]multiple resolutions[/url] when enabling full screen mode. </constant> <constant name="WINDOW_FLAG_RESIZE_DISABLED" value="0" enum="WindowFlags"> The window can't be resizing by dragging its resize grip. It's still possible to resize the window using [method window_set_size]. This flag is ignored for full screen windows. @@ -1714,6 +1724,7 @@ <constant name="DISPLAY_HANDLE" value="0" enum="HandleType"> Display handle: - Linux (X11): [code]X11::Display*[/code] for the display. + - Android: [code]EGLDisplay[/code] for the display. </constant> <constant name="WINDOW_HANDLE" value="1" enum="HandleType"> Window handle: @@ -1725,9 +1736,17 @@ </constant> <constant name="WINDOW_VIEW" value="2" enum="HandleType"> Window view: + - Windows: [code]HDC[/code] for the window (only with the GL Compatibility renderer). - macOS: [code]NSView*[/code] for the window main view. - iOS: [code]UIView*[/code] for the window main view. </constant> + <constant name="OPENGL_CONTEXT" value="3" enum="HandleType"> + OpenGL context (only with the GL Compatibility renderer): + - Windows: [code]HGLRC[/code] for the window. + - Linux: [code]GLXContext*[/code] for the window. + - MacOS: [code]NSOpenGLContext*[/code] for the window. + - Android: [code]EGLContext[/code] for the window. + </constant> <constant name="TTS_UTTERANCE_STARTED" value="0" enum="TTSUtteranceEvent"> Utterance has begun to be spoken. </constant> diff --git a/doc/classes/EditorDebuggerPlugin.xml b/doc/classes/EditorDebuggerPlugin.xml index c3e0a995c6..10da1edd56 100644 --- a/doc/classes/EditorDebuggerPlugin.xml +++ b/doc/classes/EditorDebuggerPlugin.xml @@ -1,88 +1,88 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="EditorDebuggerPlugin" inherits="Control" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="EditorDebuggerPlugin" inherits="RefCounted" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> A base class to implement debugger plugins. </brief_description> <description> [EditorDebuggerPlugin] provides functions related to the editor side of the debugger. - You don't need to instantiate this class; that is automatically handled by the debugger. [Control] nodes can be added as child nodes to provide a GUI for the plugin. - Do not free or reparent this node, otherwise it becomes unusable. - To use [EditorDebuggerPlugin], register it using the [method EditorPlugin.add_debugger_plugin] method first. + To interact with the debugger, an instance of this class must be added to the editor via [method EditorPlugin.add_debugger_plugin]. + Once added, the [method _setup_session] callback will be called for every [EditorDebuggerSession] available to the plugin, and when new ones are created (the sessions may be inactive during this stage). + You can retrieve the available [EditorDebuggerSession]s via [method get_sessions] or get a specific one via [method get_session]. + [codeblocks] + [gdscript] + @tool + extends EditorPlugin + + class ExampleEditorDebugger extends EditorDebuggerPlugin: + + func _has_capture(prefix): + # Return true if you wish to handle message with this prefix. + return prefix == "my_plugin" + + func _capture(message, data, session_id): + if message == "my_plugin:ping": + get_session(session_id).send_message("my_plugin:echo", data) + + func _setup_session(session_id): + # Add a new tab in the debugger session UI containing a label. + var label = Label.new() + label.name = "Example plugin" + label.text = "Example plugin" + var session = get_session(session_id) + # Listens to the session started and stopped signals. + session.started.connect(func (): print("Session started")) + session.stopped.connect(func (): print("Session stopped")) + session.add_session_tab(label) + + var debugger = ExampleEditorDebugger.new() + + func _enter_tree(): + add_debugger_plugin(debugger) + + func _exit_tree(): + remove_debugger_plugin(debugger) + [/gdscript] + [/codeblocks] </description> <tutorials> </tutorials> <methods> - <method name="has_capture"> - <return type="bool" /> - <param index="0" name="name" type="StringName" /> - <description> - Returns [code]true[/code] if a message capture with given name is present otherwise [code]false[/code]. - </description> - </method> - <method name="is_breaked"> - <return type="bool" /> - <description> - Returns [code]true[/code] if the game is in break state otherwise [code]false[/code]. - </description> - </method> - <method name="is_debuggable"> + <method name="_capture" qualifiers="virtual"> <return type="bool" /> + <param index="0" name="message" type="String" /> + <param index="1" name="data" type="Array" /> + <param index="2" name="session_id" type="int" /> <description> - Returns [code]true[/code] if the game can be debugged otherwise [code]false[/code]. + Override this method to process incoming messages. The [param session_id] is the ID of the [EditorDebuggerSession] that received the message (which you can retrieve via [method get_session]). </description> </method> - <method name="is_session_active"> + <method name="_has_capture" qualifiers="virtual const"> <return type="bool" /> + <param index="0" name="capture" type="String" /> <description> - Returns [code]true[/code] if there is an instance of the game running with the attached debugger otherwise [code]false[/code]. + Override this method to enable receiving messages from the debugger. If [param capture] is "my_message" then messages starting with "my_message:" will be passes to the [method _capture] method. </description> </method> - <method name="register_message_capture"> + <method name="_setup_session" qualifiers="virtual"> <return type="void" /> - <param index="0" name="name" type="StringName" /> - <param index="1" name="callable" type="Callable" /> + <param index="0" name="session_id" type="int" /> <description> - Registers a message capture with given [param name]. If [param name] is "my_message" then messages starting with "my_message:" will be called with the given callable. - Callable must accept a message string and a data array as argument. If the message and data are valid then callable must return [code]true[/code] otherwise [code]false[/code]. + Override this method to be notified whenever a new [EditorDebuggerSession] is created (the session may be inactive during this stage). </description> </method> - <method name="send_message"> - <return type="void" /> - <param index="0" name="message" type="String" /> - <param index="1" name="data" type="Array" /> + <method name="get_session"> + <return type="EditorDebuggerSession" /> + <param index="0" name="id" type="int" /> <description> - Sends a message with given [param message] and [param data] array. + Returns the [EditorDebuggerSession] with the given [param id]. </description> </method> - <method name="unregister_message_capture"> - <return type="void" /> - <param index="0" name="name" type="StringName" /> + <method name="get_sessions"> + <return type="Array" /> <description> - Unregisters the message capture with given name. + Returns an array of [EditorDebuggerSession] currently available to this debugger plugin. + Note: Not sessions in the array may be inactive, check their state via [method EditorDebuggerSession.is_active] </description> </method> </methods> - <signals> - <signal name="breaked"> - <param index="0" name="can_debug" type="bool" /> - <description> - Emitted when the game enters a break state. - </description> - </signal> - <signal name="continued"> - <description> - Emitted when the game exists a break state. - </description> - </signal> - <signal name="started"> - <description> - Emitted when the debugging starts. - </description> - </signal> - <signal name="stopped"> - <description> - Emitted when the debugging stops. - </description> - </signal> - </signals> </class> diff --git a/doc/classes/EditorDebuggerSession.xml b/doc/classes/EditorDebuggerSession.xml new file mode 100644 index 0000000000..faf528c143 --- /dev/null +++ b/doc/classes/EditorDebuggerSession.xml @@ -0,0 +1,86 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<class name="EditorDebuggerSession" inherits="RefCounted" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> + <brief_description> + A class to interact with the editor debugger. + </brief_description> + <description> + This class cannot be directly instantiated and must be retrieved via a [EditorDebuggerPlugin]. + You can add tabs to the session UI via [method add_session_tab], send messages via [method send_message], and toggle [EngineProfiler]s via [method toggle_profiler]. + </description> + <tutorials> + </tutorials> + <methods> + <method name="add_session_tab"> + <return type="void" /> + <param index="0" name="control" type="Control" /> + <description> + Adds the given [param control] to the debug session UI in the debugger bottom panel. + </description> + </method> + <method name="is_active"> + <return type="bool" /> + <description> + Returns [code]true[/code] if the debug session is currently attached to a remote instance. + </description> + </method> + <method name="is_breaked"> + <return type="bool" /> + <description> + Returns [code]true[/code] if the attached remote instance is currently in the debug loop. + </description> + </method> + <method name="is_debuggable"> + <return type="bool" /> + <description> + Returns [code]true[/code] if the attached remote instance can be debugged. + </description> + </method> + <method name="remove_session_tab"> + <return type="void" /> + <param index="0" name="control" type="Control" /> + <description> + Removes the given [param control] from the debug session UI in the debugger bottom panel. + </description> + </method> + <method name="send_message"> + <return type="void" /> + <param index="0" name="message" type="String" /> + <param index="1" name="data" type="Array" default="[]" /> + <description> + Sends the given [param message] to the attached remote instance, optionally passing additionally [param data]. See [EngineDebugger] for how to retrieve those messages. + </description> + </method> + <method name="toggle_profiler"> + <return type="void" /> + <param index="0" name="profiler" type="String" /> + <param index="1" name="enable" type="bool" /> + <param index="2" name="data" type="Array" default="[]" /> + <description> + Toggle the given [param profiler] on the attached remote instance, optionally passing additionally [param data]. See [EngineProfiler] for more details. + </description> + </method> + </methods> + <signals> + <signal name="breaked"> + <param index="0" name="can_debug" type="bool" /> + <description> + Emitted when the attached remote instance enters a break state. If [param can_debug] is [code]true[/code], the remote instance will enter the debug loop. + </description> + </signal> + <signal name="continued"> + <description> + Emitted when the attached remote instance exits a break state. + </description> + </signal> + <signal name="started"> + <description> + Emitted when a remote instance is attached to this session (i.e. the session becomes active). + </description> + </signal> + <signal name="stopped"> + <description> + Emitted when a remote instance is detached from this session (i.e. the session becomes inactive). + </description> + </signal> + </signals> +</class> diff --git a/doc/classes/EditorInspector.xml b/doc/classes/EditorInspector.xml index 0cda49f1bf..ab35a62794 100644 --- a/doc/classes/EditorInspector.xml +++ b/doc/classes/EditorInspector.xml @@ -7,7 +7,7 @@ This is the control that implements property editing in the editor's Settings dialogs, the Inspector dock, etc. To get the [EditorInspector] used in the editor's Inspector dock, use [method EditorInterface.get_inspector]. [EditorInspector] will show properties in the same order as the array returned by [method Object.get_property_list]. If a property's name is path-like (i.e. if it contains forward slashes), [EditorInspector] will create nested sections for "directories" along the path. For example, if a property is named [code]highlighting/gdscript/node_path_color[/code], it will be shown as "Node Path Color" inside the "GDScript" section nested inside the "Highlighting" section. - If a property has [constant PROPERTY_USAGE_GROUP] usage, it will group subsequent properties whose name starts with the property's hint string. The group ends when a property does not start with that hint string or when a new group starts. An empty group name effectively ends the current group. [EditorInspector] will create a top-level section for each group. For example, if a property with group usage is named [code]Collide With[/code] and its hint string is [code]collide_with_[/code], a subsequent [code]collide_with_area[/code] property will be shown as "Area" inside the "Collide With" section. + If a property has [constant PROPERTY_USAGE_GROUP] usage, it will group subsequent properties whose name starts with the property's hint string. The group ends when a property does not start with that hint string or when a new group starts. An empty group name effectively ends the current group. [EditorInspector] will create a top-level section for each group. For example, if a property with group usage is named [code]Collide With[/code] and its hint string is [code]collide_with_[/code], a subsequent [code]collide_with_area[/code] property will be shown as "Area" inside the "Collide With" section. There is also a special case: when the hint string contains the name of a property, that property is grouped too. This is mainly to help grouping properties like [code]font[/code], [code]font_color[/code] and [code]font_size[/code] (using the hint string [code]font_[/code]). If a property has [constant PROPERTY_USAGE_SUBGROUP] usage, a subgroup will be created in the same way as a group, and a second-level section will be created for each subgroup. [b]Note:[/b] Unlike sections created from path-like property names, [EditorInspector] won't capitalize the name for sections created from groups. So properties with group usage usually use capitalized names instead of snake_cased names. </description> diff --git a/doc/classes/EditorInterface.xml b/doc/classes/EditorInterface.xml index bb319cb5a3..5d4b83bc27 100644 --- a/doc/classes/EditorInterface.xml +++ b/doc/classes/EditorInterface.xml @@ -48,6 +48,12 @@ [b]Warning:[/b] Removing and freeing this node will render a part of the editor useless and may cause a crash. </description> </method> + <method name="get_current_directory" qualifiers="const"> + <return type="String" /> + <description> + Returns the current directory being viewed in the [FileSystemDock]. If a file is selected, its base directory will be returned using [method String.get_base_dir] instead. + </description> + </method> <method name="get_current_path" qualifiers="const"> <return type="String" /> <description> @@ -131,10 +137,10 @@ [b]Warning:[/b] Removing and freeing this node will render a part of the editor useless and may cause a crash. </description> </method> - <method name="get_selected_path" qualifiers="const"> - <return type="String" /> + <method name="get_selected_paths" qualifiers="const"> + <return type="PackedStringArray" /> <description> - Returns the path of the directory currently selected in the [FileSystemDock]. If a file is selected, its base directory will be returned using [method String.get_base_dir] instead. + Returns an array containing the paths of the currently selected files (and directories) in the [FileSystemDock]. </description> </method> <method name="get_selection"> diff --git a/doc/classes/EditorNode3DGizmoPlugin.xml b/doc/classes/EditorNode3DGizmoPlugin.xml index 24e1a2da7c..3ab13ec5c0 100644 --- a/doc/classes/EditorNode3DGizmoPlugin.xml +++ b/doc/classes/EditorNode3DGizmoPlugin.xml @@ -8,7 +8,7 @@ To use [EditorNode3DGizmoPlugin], register it using the [method EditorPlugin.add_node_3d_gizmo_plugin] method first. </description> <tutorials> - <link title="Node3D gizmo plugins">$DOCS_URL/tutorials/plugins/editor/spatial_gizmos.html</link> + <link title="Node3D gizmo plugins">$DOCS_URL/tutorials/plugins/editor/3d_gizmos.html</link> </tutorials> <methods> <method name="_can_be_hidden" qualifiers="virtual const"> diff --git a/doc/classes/EditorPaths.xml b/doc/classes/EditorPaths.xml index 2975ea6d75..929cf767a6 100644 --- a/doc/classes/EditorPaths.xml +++ b/doc/classes/EditorPaths.xml @@ -6,7 +6,7 @@ <description> This editor-only singleton returns OS-specific paths to various data folders and files. It can be used in editor plugins to ensure files are saved in the correct location on each operating system. [b]Note:[/b] This singleton is not accessible in exported projects. Attempting to access it in an exported project will result in a script error as the singleton won't be declared. To prevent script errors in exported projects, use [method Engine.has_singleton] to check whether the singleton is available before using it. - [b]Note:[/b] Godot complies with the [url=https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html]XDG Base Directory Specification[/url] on [i]all[/i] platforms. You can override environment variables following the specification to change the editor and project data paths. + [b]Note:[/b] On the Linux/BSD platform, Godot complies with the [url=https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html]XDG Base Directory Specification[/url]. You can override environment variables following the specification to change the editor and project data paths. </description> <tutorials> <link title="File paths in Godot projects">https://docs.godotengine.org/en/latest/tutorials/io/data_paths.html</link> diff --git a/doc/classes/EditorPlugin.xml b/doc/classes/EditorPlugin.xml index 2289a373bf..adcc87d062 100644 --- a/doc/classes/EditorPlugin.xml +++ b/doc/classes/EditorPlugin.xml @@ -415,7 +415,7 @@ </method> <method name="add_debugger_plugin"> <return type="void" /> - <param index="0" name="script" type="Script" /> + <param index="0" name="script" type="EditorDebuggerPlugin" /> <description> Adds a [Script] as debugger plugin to the Debugger. The script must extend [EditorDebuggerPlugin]. </description> @@ -599,7 +599,7 @@ </method> <method name="remove_debugger_plugin"> <return type="void" /> - <param index="0" name="script" type="Script" /> + <param index="0" name="script" type="EditorDebuggerPlugin" /> <description> Removes the debugger plugin with given script from the Debugger. </description> @@ -719,44 +719,64 @@ </signals> <constants> <constant name="CONTAINER_TOOLBAR" value="0" enum="CustomControlContainer"> + Main editor toolbar, next to play buttons. </constant> <constant name="CONTAINER_SPATIAL_EDITOR_MENU" value="1" enum="CustomControlContainer"> + The toolbar that appears when 3D editor is active. </constant> <constant name="CONTAINER_SPATIAL_EDITOR_SIDE_LEFT" value="2" enum="CustomControlContainer"> + Left sidebar of the 3D editor. </constant> <constant name="CONTAINER_SPATIAL_EDITOR_SIDE_RIGHT" value="3" enum="CustomControlContainer"> + Right sidebar of the 3D editor. </constant> <constant name="CONTAINER_SPATIAL_EDITOR_BOTTOM" value="4" enum="CustomControlContainer"> + Bottom panel of the 3D editor. </constant> <constant name="CONTAINER_CANVAS_EDITOR_MENU" value="5" enum="CustomControlContainer"> + The toolbar that appears when 2D editor is active. </constant> <constant name="CONTAINER_CANVAS_EDITOR_SIDE_LEFT" value="6" enum="CustomControlContainer"> + Left sidebar of the 2D editor. </constant> <constant name="CONTAINER_CANVAS_EDITOR_SIDE_RIGHT" value="7" enum="CustomControlContainer"> + Right sidebar of the 2D editor. </constant> <constant name="CONTAINER_CANVAS_EDITOR_BOTTOM" value="8" enum="CustomControlContainer"> + Bottom panel of the 2D editor. </constant> <constant name="CONTAINER_INSPECTOR_BOTTOM" value="9" enum="CustomControlContainer"> + Bottom section of the inspector. </constant> <constant name="CONTAINER_PROJECT_SETTING_TAB_LEFT" value="10" enum="CustomControlContainer"> + Tab of Project Settings dialog, to the left of other tabs. </constant> <constant name="CONTAINER_PROJECT_SETTING_TAB_RIGHT" value="11" enum="CustomControlContainer"> + Tab of Project Settings dialog, to the right of other tabs. </constant> <constant name="DOCK_SLOT_LEFT_UL" value="0" enum="DockSlot"> + Dock slot, left side, upper-left (empty in default layout). </constant> <constant name="DOCK_SLOT_LEFT_BL" value="1" enum="DockSlot"> + Dock slot, left side, bottom-left (empty in default layout). </constant> <constant name="DOCK_SLOT_LEFT_UR" value="2" enum="DockSlot"> + Dock slot, left side, upper-right (in default layout includes Scene and Import docks). </constant> <constant name="DOCK_SLOT_LEFT_BR" value="3" enum="DockSlot"> + Dock slot, left side, bottom-right (in default layout includes FileSystem dock). </constant> <constant name="DOCK_SLOT_RIGHT_UL" value="4" enum="DockSlot"> + Dock slot, right side, upper-left (empty in default layout). </constant> <constant name="DOCK_SLOT_RIGHT_BL" value="5" enum="DockSlot"> + Dock slot, right side, bottom-left (empty in default layout). </constant> <constant name="DOCK_SLOT_RIGHT_UR" value="6" enum="DockSlot"> + Dock slot, right side, upper-right (in default layout includes Inspector, Node and History docks). </constant> <constant name="DOCK_SLOT_RIGHT_BR" value="7" enum="DockSlot"> + Dock slot, right side, bottom-right (empty in default layout). </constant> <constant name="DOCK_SLOT_MAX" value="8" enum="DockSlot"> Represents the size of the [enum DockSlot] enum. diff --git a/doc/classes/EditorProperty.xml b/doc/classes/EditorProperty.xml index 2aca19510b..e18bea1f67 100644 --- a/doc/classes/EditorProperty.xml +++ b/doc/classes/EditorProperty.xml @@ -150,7 +150,7 @@ <param index="1" name="pinned" type="bool" /> <description> Emit it if you want to mark (or unmark) the value of a property for being saved regardless of being equal to the default value. - The default value is the one the property will get when the node is just instantiated and can come from an ancestor scene in the inheritance/instancing chain, a script or a builtin class. + The default value is the one the property will get when the node is just instantiated and can come from an ancestor scene in the inheritance/instantiation chain, a script or a builtin class. </description> </signal> <signal name="resource_selected"> diff --git a/doc/classes/EditorSceneFormatImporter.xml b/doc/classes/EditorSceneFormatImporter.xml index 6de9c2c5dc..db93cab14c 100644 --- a/doc/classes/EditorSceneFormatImporter.xml +++ b/doc/classes/EditorSceneFormatImporter.xml @@ -39,7 +39,6 @@ <param index="0" name="path" type="String" /> <param index="1" name="flags" type="int" /> <param index="2" name="options" type="Dictionary" /> - <param index="3" name="bake_fps" type="int" /> <description> </description> </method> diff --git a/doc/classes/EditorScenePostImport.xml b/doc/classes/EditorScenePostImport.xml index 2bf2accf17..d2ad8d1bed 100644 --- a/doc/classes/EditorScenePostImport.xml +++ b/doc/classes/EditorScenePostImport.xml @@ -28,12 +28,12 @@ // This sample changes all node names. // Called right after the scene is imported and gets the root node. [Tool] - public class NodeRenamer : EditorScenePostImport + public partial class NodeRenamer : EditorScenePostImport { - public override Object PostImport(Object scene) + public override Object _PostImport(Node scene) { // Change all node names to "modified_[oldnodename]" - Iterate(scene as Node); + Iterate(scene); return scene; // Remember to return the imported scene } public void Iterate(Node node) diff --git a/doc/classes/EditorSettings.xml b/doc/classes/EditorSettings.xml index 07457387a0..98f4789163 100644 --- a/doc/classes/EditorSettings.xml +++ b/doc/classes/EditorSettings.xml @@ -592,6 +592,9 @@ <member name="interface/theme/custom_theme" type="String" setter="" getter=""> The custom theme resource to use for the editor. Must be a Godot theme resource in [code].tres[/code] or [code].res[/code] format. </member> + <member name="interface/theme/draw_extra_borders" type="bool" setter="" getter=""> + If [code]true[/code], draws additional borders around interactive UI elements in the editor. This is automatically enabled when using the [b]Black (OLED)[/b] theme preset, as this theme preset uses a fully black background. + </member> <member name="interface/theme/icon_and_font_color" type="int" setter="" getter=""> The icon and font color scheme to use in the editor. - [b]Auto[/b] determines the color scheme to use automatically based on [member interface/theme/base_color]. @@ -625,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/EditorSpinSlider.xml b/doc/classes/EditorSpinSlider.xml index 784a3c1214..d270d32df7 100644 --- a/doc/classes/EditorSpinSlider.xml +++ b/doc/classes/EditorSpinSlider.xml @@ -22,8 +22,32 @@ <member name="read_only" type="bool" setter="set_read_only" getter="is_read_only" default="false"> If [code]true[/code], the slider can't be interacted with. </member> + <member name="size_flags_vertical" type="int" setter="set_v_size_flags" getter="get_v_size_flags" overrides="Control" default="1" /> + <member name="step" type="float" setter="set_step" getter="get_step" overrides="Range" default="1.0" /> <member name="suffix" type="String" setter="set_suffix" getter="get_suffix" default=""""> The suffix to display after the value (in a faded color). This should generally be a plural word. You may have to use an abbreviation if the suffix is too long to be displayed. </member> </members> + <signals> + <signal name="grabbed"> + <description> + Emitted when the spinner/slider is grabbed. + </description> + </signal> + <signal name="ungrabbed"> + <description> + Emitted when the spinner/slider is ungrabbed. + </description> + </signal> + <signal name="value_focus_entered"> + <description> + Emitted when the value form gains focus. + </description> + </signal> + <signal name="value_focus_exited"> + <description> + Emitted when the value form loses focus. + </description> + </signal> + </signals> </class> diff --git a/doc/classes/EditorUndoRedoManager.xml b/doc/classes/EditorUndoRedoManager.xml index c1e771d653..cd96e740e8 100644 --- a/doc/classes/EditorUndoRedoManager.xml +++ b/doc/classes/EditorUndoRedoManager.xml @@ -110,7 +110,7 @@ <signals> <signal name="history_changed"> <description> - Emitted when the list of actions in any history has changed, either when an action is commited or a history is cleared. + Emitted when the list of actions in any history has changed, either when an action is committed or a history is cleared. </description> </signal> <signal name="version_changed"> @@ -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/EditorVCSInterface.xml b/doc/classes/EditorVCSInterface.xml index b766978c04..85c10fefd9 100644 --- a/doc/classes/EditorVCSInterface.xml +++ b/doc/classes/EditorVCSInterface.xml @@ -53,7 +53,7 @@ </description> </method> <method name="_get_branch_list" qualifiers="virtual"> - <return type="Dictionary[]" /> + <return type="String[]" /> <description> Gets an instance of an [Array] of [String]s containing available branch names in the VCS. </description> @@ -94,7 +94,7 @@ </description> </method> <method name="_get_remotes" qualifiers="virtual"> - <return type="Dictionary[]" /> + <return type="String[]" /> <description> Returns an [Array] of [String]s, each containing the name of a remote configured in the VCS. </description> diff --git a/doc/classes/Engine.xml b/doc/classes/Engine.xml index 821fae37a6..d583e07f59 100644 --- a/doc/classes/Engine.xml +++ b/doc/classes/Engine.xml @@ -275,13 +275,16 @@ If [member ProjectSettings.display/window/vsync/vsync_mode] is [code]Disabled[/code], limiting the FPS to a high value that can be consistently reached on the system can reduce input lag compared to an uncapped framerate. Since this works by ensuring the GPU load is lower than 100%, this latency reduction is only effective in GPU-bottlenecked scenarios, not CPU-bottlenecked scenarios. See also [member physics_ticks_per_second] and [member ProjectSettings.application/run/max_fps]. </member> + <member name="max_physics_steps_per_frame" type="int" setter="set_max_physics_steps_per_frame" getter="get_max_physics_steps_per_frame" default="8"> + Controls the maximum number of physics steps that can be simulated each rendered frame. The default value is tuned to avoid "spiral of death" situations where expensive physics simulations trigger more expensive simulations indefinitely. However, the game will appear to slow down if the rendering FPS is less than [code]1 / max_physics_steps_per_frame[/code] of [member physics_ticks_per_second]. This occurs even if [code]delta[/code] is consistently used in physics calculations. To avoid this, increase [member max_physics_steps_per_frame] if you have increased [member physics_ticks_per_second] significantly above its default value. + </member> <member name="physics_jitter_fix" type="float" setter="set_physics_jitter_fix" getter="get_physics_jitter_fix" default="0.5"> Controls how much physics ticks are synchronized with real time. For 0 or less, the ticks are synchronized. Such values are recommended for network games, where clock synchronization matters. Higher values cause higher deviation of the in-game clock and real clock but smooth out framerate jitters. The default value of 0.5 should be fine for most; values above 2 could cause the game to react to dropped frames with a noticeable delay and are not recommended. [b]Note:[/b] For best results, when using a custom physics interpolation solution, the physics jitter fix should be disabled by setting [member physics_jitter_fix] to [code]0[/code]. </member> <member name="physics_ticks_per_second" type="int" setter="set_physics_ticks_per_second" getter="get_physics_ticks_per_second" default="60"> The number of fixed iterations per second. This controls how often physics simulation and [method Node._physics_process] methods are run. This value should generally always be set to [code]60[/code] or above, as Godot doesn't interpolate the physics step. As a result, values lower than [code]60[/code] will look stuttery. This value can be increased to make input more reactive or work around collision tunneling issues, but keep in mind doing so will increase CPU usage. See also [member max_fps] and [member ProjectSettings.physics/common/physics_ticks_per_second]. - [b]Note:[/b] Only 8 physics ticks may be simulated per rendered frame at most. If more than 8 physics ticks have to be simulated per rendered frame to keep up with rendering, the game will appear to slow down (even if [code]delta[/code] is used consistently in physics calculations). Therefore, it is recommended not to increase [member physics_ticks_per_second] above 240. Otherwise, the game will slow down when the rendering framerate goes below 30 FPS. + [b]Note:[/b] Only [member max_physics_steps_per_frame] physics ticks may be simulated per rendered frame at most. If more physics ticks have to be simulated per rendered frame to keep up with rendering, the project will appear to slow down (even if [code]delta[/code] is used consistently in physics calculations). Therefore, it is recommended to also increase [member max_physics_steps_per_frame] if increasing [member physics_ticks_per_second] significantly above its default value. </member> <member name="print_error_messages" type="bool" setter="set_print_error_messages" getter="is_printing_error_messages" default="true"> If [code]false[/code], stops printing error and warning messages to the console and editor Output log. This can be used to hide error and warning messages during unit test suite runs. This property is equivalent to the [member ProjectSettings.application/run/disable_stderr] project setting. diff --git a/doc/classes/FileAccess.xml b/doc/classes/FileAccess.xml index e52f897164..be0c8fd6ca 100644 --- a/doc/classes/FileAccess.xml +++ b/doc/classes/FileAccess.xml @@ -153,6 +153,20 @@ Returns the last error that happened when trying to perform operations. Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]. </description> </method> + <method name="get_file_as_bytes" qualifiers="static"> + <return type="PackedByteArray" /> + <param index="0" name="path" type="String" /> + <description> + Returns the whole [param path] file contents as a [PackedByteArray] without any decoding. + </description> + </method> + <method name="get_file_as_string" qualifiers="static"> + <return type="String" /> + <param index="0" name="path" type="String" /> + <description> + Returns the whole [param path] file contents as a [String]. Text is interpreted as being UTF-8 encoded. + </description> + </method> <method name="get_float" qualifiers="const"> <return type="float" /> <description> diff --git a/doc/classes/FileSystemDock.xml b/doc/classes/FileSystemDock.xml index 5578f449b3..00f5c7ddff 100644 --- a/doc/classes/FileSystemDock.xml +++ b/doc/classes/FileSystemDock.xml @@ -46,7 +46,7 @@ <description> </description> </signal> - <signal name="instance"> + <signal name="instantiate"> <param index="0" name="files" type="PackedStringArray" /> <description> </description> diff --git a/doc/classes/Font.xml b/doc/classes/Font.xml index 6a42b62bcf..761e75339a 100644 --- a/doc/classes/Font.xml +++ b/doc/classes/Font.xml @@ -161,6 +161,12 @@ Returns font family name. </description> </method> + <method name="get_font_stretch" qualifiers="const"> + <return type="int" /> + <description> + Returns font stretch amount, compared to a normal width. A percentage value between [code]50%[/code] and [code]200%[/code]. + </description> + </method> <method name="get_font_style" qualifiers="const"> <return type="int" enum="TextServer.FontStyle" /> <description> @@ -173,6 +179,12 @@ Returns font style name. </description> </method> + <method name="get_font_weight" qualifiers="const"> + <return type="int" /> + <description> + Returns weight (boldness) of the font. A value in the [code]100...999[/code] range, normal font weight is [code]400[/code], bold font weight is [code]700[/code]. + </description> + </method> <method name="get_height" qualifiers="const"> <return type="float" /> <param index="0" name="font_size" type="int" default="16" /> diff --git a/doc/classes/FontFile.xml b/doc/classes/FontFile.xml index 271f6a13e0..69a7627774 100644 --- a/doc/classes/FontFile.xml +++ b/doc/classes/FontFile.xml @@ -542,6 +542,9 @@ </method> </methods> <members> + <member name="allow_system_fallback" type="bool" setter="set_allow_system_fallback" getter="is_allow_system_fallback" default="true"> + If set to [code]true[/code], system fonts can be automatically used as fallbacks. + </member> <member name="antialiasing" type="int" setter="set_antialiasing" getter="get_antialiasing" enum="TextServer.FontAntialiasing" default="1"> Font anti-aliasing mode. </member> @@ -557,11 +560,17 @@ <member name="font_name" type="String" setter="set_font_name" getter="get_font_name" default=""""> Font family name. </member> + <member name="font_stretch" type="int" setter="set_font_stretch" getter="get_font_stretch" default="100"> + Font stretch amount, compared to a normal width. A percentage value between [code]50%[/code] and [code]200%[/code]. + </member> <member name="font_style" type="int" setter="set_font_style" getter="get_font_style" enum="TextServer.FontStyle" default="0"> Font style flags, see [enum TextServer.FontStyle]. </member> + <member name="font_weight" type="int" setter="set_font_weight" getter="get_font_weight" default="400"> + Weight (boldness) of the font. A value in the [code]100...999[/code] range, normal font weight is [code]400[/code], bold font weight is [code]700[/code]. + </member> <member name="force_autohinter" type="bool" setter="set_force_autohinter" getter="is_force_autohinter" default="false"> - If set to [code]true[/code], auto-hinting is supported and preferred over font built-in hinting. Used by dynamic fonts only. + If set to [code]true[/code], auto-hinting is supported and preferred over font built-in hinting. Used by dynamic fonts only (MSDF fonts don't support hinting). </member> <member name="generate_mipmaps" type="bool" setter="set_generate_mipmaps" getter="get_generate_mipmaps" default="false"> If set to [code]true[/code], generate mipmaps for the font textures. @@ -570,25 +579,27 @@ Font hinting mode. Used by dynamic fonts only. </member> <member name="msdf_pixel_range" type="int" setter="set_msdf_pixel_range" getter="get_msdf_pixel_range" default="16"> - The width of the range around the shape between the minimum and maximum representable signed distance. + The width of the range around the shape between the minimum and maximum representable signed distance. If using font outlines, [member msdf_pixel_range] must be set to at least [i]twice[/i] the size of the largest font outline. The default [member msdf_pixel_range] value of [code]16[/code] allows outline sizes up to [code]8[/code] to look correct. </member> <member name="msdf_size" type="int" setter="set_msdf_size" getter="get_msdf_size" default="48"> - Source font size used to generate MSDF textures. + Source font size used to generate MSDF textures. Higher values allow for more precision, but are slower to render and require more memory. Only increase this value if you notice a visible lack of precision in glyph rendering. </member> <member name="multichannel_signed_distance_field" type="bool" setter="set_multichannel_signed_distance_field" getter="is_multichannel_signed_distance_field" default="false"> - If set to [code]true[/code], glyphs of all sizes are rendered using single multichannel signed distance field generated from the dynamic font vector data. + If set to [code]true[/code], glyphs of all sizes are rendered using single multichannel signed distance field (MSDF) generated from the dynamic font vector data. Since this approach does not rely on rasterizing the font every time its size changes, this allows for resizing the font in real-time without any performance penalty. Text will also not look grainy for [Control]s that are scaled down (or for [Label3D]s viewed from a long distance). As a downside, font hinting is not available with MSDF. The lack of font hinting may result in less crisp and less readable fonts at small sizes. + [b]Note:[/b] If using font outlines, [member msdf_pixel_range] must be set to at least [i]twice[/i] the size of the largest font outline. + [b]Note:[/b] MSDF font rendering does not render glyphs with overlapping shapes correctly. Overlapping shapes are not valid per the OpenType standard, but are still commonly found in many font files, especially those converted by Google Fonts. To avoid issues with overlapping glyphs, consider downloading the font file directly from the type foundry instead of relying on Google Fonts. </member> <member name="opentype_feature_overrides" type="Dictionary" setter="set_opentype_feature_overrides" getter="get_opentype_feature_overrides" default="{}"> Font OpenType feature set override. </member> <member name="oversampling" type="float" setter="set_oversampling" getter="get_oversampling" default="0.0"> - Font oversampling factor, if set to [code]0.0[/code] global oversampling factor is used instead. Used by dynamic fonts only. + Font oversampling factor. If set to [code]0.0[/code], the global oversampling factor is used instead. Used by dynamic fonts only (MSDF fonts ignore oversampling). </member> <member name="style_name" type="String" setter="set_font_style_name" getter="get_font_style_name" default=""""> Font style name. </member> <member name="subpixel_positioning" type="int" setter="set_subpixel_positioning" getter="get_subpixel_positioning" enum="TextServer.SubpixelPositioning" default="1"> - Font glyph subpixel positioning mode. Subpixel positioning provides shaper text and better kerning for smaller font sizes, at the cost of memory usage and font rasterization speed. Use [constant TextServer.SUBPIXEL_POSITIONING_AUTO] to automatically enable it based on the font size. + Font glyph subpixel positioning mode. Subpixel positioning provides shaper text and better kerning for smaller font sizes, at the cost of higher memory usage and lower font rasterization speed. Use [constant TextServer.SUBPIXEL_POSITIONING_AUTO] to automatically enable it based on the font size. </member> </members> </class> diff --git a/doc/classes/NativeExtension.xml b/doc/classes/GDExtension.xml index 50f976ca6f..9791290bd9 100644 --- a/doc/classes/NativeExtension.xml +++ b/doc/classes/GDExtension.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NativeExtension" inherits="Resource" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="GDExtension" inherits="Resource" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> </brief_description> <description> @@ -13,13 +13,13 @@ </description> </method> <method name="get_minimum_library_initialization_level" qualifiers="const"> - <return type="int" enum="NativeExtension.InitializationLevel" /> + <return type="int" enum="GDExtension.InitializationLevel" /> <description> </description> </method> <method name="initialize_library"> <return type="void" /> - <param index="0" name="level" type="int" enum="NativeExtension.InitializationLevel" /> + <param index="0" name="level" type="int" enum="GDExtension.InitializationLevel" /> <description> </description> </method> diff --git a/doc/classes/NativeExtensionManager.xml b/doc/classes/GDExtensionManager.xml index 7d6eefa94f..f682d800c6 100644 --- a/doc/classes/NativeExtensionManager.xml +++ b/doc/classes/GDExtensionManager.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NativeExtensionManager" inherits="Object" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="GDExtensionManager" inherits="Object" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> </brief_description> <description> @@ -8,7 +8,7 @@ </tutorials> <methods> <method name="get_extension"> - <return type="NativeExtension" /> + <return type="GDExtension" /> <param index="0" name="path" type="String" /> <description> </description> @@ -25,19 +25,19 @@ </description> </method> <method name="load_extension"> - <return type="int" enum="NativeExtensionManager.LoadStatus" /> + <return type="int" enum="GDExtensionManager.LoadStatus" /> <param index="0" name="path" type="String" /> <description> </description> </method> <method name="reload_extension"> - <return type="int" enum="NativeExtensionManager.LoadStatus" /> + <return type="int" enum="GDExtensionManager.LoadStatus" /> <param index="0" name="path" type="String" /> <description> </description> </method> <method name="unload_extension"> - <return type="int" enum="NativeExtensionManager.LoadStatus" /> + <return type="int" enum="GDExtensionManager.LoadStatus" /> <param index="0" name="path" type="String" /> <description> </description> diff --git a/doc/classes/GeometryInstance3D.xml b/doc/classes/GeometryInstance3D.xml index 86d52ae9be..1ae4718536 100644 --- a/doc/classes/GeometryInstance3D.xml +++ b/doc/classes/GeometryInstance3D.xml @@ -13,13 +13,7 @@ <return type="Variant" /> <param index="0" name="name" type="StringName" /> <description> - </description> - </method> - <method name="set_custom_aabb"> - <return type="void" /> - <param index="0" name="aabb" type="AABB" /> - <description> - Overrides the bounding box of this node with a custom one. To remove it, set an [AABB] with all fields set to zero. + Get the value of a shader parameter as set on this instance. </description> </method> <method name="set_instance_shader_parameter"> @@ -27,6 +21,7 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="value" type="Variant" /> <description> + Set the value of a shader parameter for this instance only. </description> </method> </methods> @@ -34,6 +29,9 @@ <member name="cast_shadow" type="int" setter="set_cast_shadows_setting" getter="get_cast_shadows_setting" enum="GeometryInstance3D.ShadowCastingSetting" default="1"> The selected shadow casting flag. See [enum ShadowCastingSetting] for possible values. </member> + <member name="custom_aabb" type="AABB" setter="set_custom_aabb" getter="get_custom_aabb" default="AABB(0, 0, 0, 0, 0, 0)"> + Overrides the bounding box of this node with a custom one. This can be used to avoid the expensive [AABB] recalculation that happens when a skeleton is used with a [MeshInstance3D] or to have fine control over the [MeshInstance3D]'s bounding box. To remove this, set value to an [AABB] with all fields set to zero. + </member> <member name="extra_cull_margin" type="float" setter="set_extra_cull_margin" getter="get_extra_cull_margin" default="0.0"> The extra distance added to the GeometryInstance3D's bounding box ([AABB]) to increase its cull box. </member> @@ -45,8 +43,11 @@ [b]Note:[/b] Lights' bake mode will also affect the global illumination rendering. See [member Light3D.light_bake_mode]. </member> <member name="ignore_occlusion_culling" type="bool" setter="set_ignore_occlusion_culling" getter="is_ignoring_occlusion_culling" default="false"> + If [code]true[/code], disables occlusion culling for this instance. Useful for gizmos that must be rendered even when occlusion culling is in use. </member> <member name="lod_bias" type="float" setter="set_lod_bias" getter="get_lod_bias" default="1.0"> + Changes how quickly the mesh transitions to a lower level of detail. A value of 0 will force the mesh to its lowest level of detail, a value of 1 will use the default settings, and larger values will keep the mesh in a higher level of detail at farther distances. + Useful for testing level of detail transitions in the editor. </member> <member name="material_overlay" type="Material" setter="set_material_overlay" getter="get_material_overlay"> The material overlay for the whole geometry. diff --git a/doc/classes/GradientTexture1D.xml b/doc/classes/GradientTexture1D.xml index 3254754ac1..fa572eeed0 100644 --- a/doc/classes/GradientTexture1D.xml +++ b/doc/classes/GradientTexture1D.xml @@ -12,6 +12,7 @@ <member name="gradient" type="Gradient" setter="set_gradient" getter="get_gradient"> The [Gradient] that will be used to fill the texture. </member> + <member name="resource_local_to_scene" type="bool" setter="set_local_to_scene" getter="is_local_to_scene" overrides="Resource" default="false" /> <member name="use_hdr" type="bool" setter="set_use_hdr" getter="is_using_hdr" default="false"> If [code]true[/code], the generated texture will support high dynamic range ([constant Image.FORMAT_RGBAF] format). This allows for glow effects to work if [member Environment.glow_enabled] is [code]true[/code]. If [code]false[/code], the generated texture will use low dynamic range; overbright colors will be clamped ([constant Image.FORMAT_RGBA8] format). </member> diff --git a/doc/classes/GradientTexture2D.xml b/doc/classes/GradientTexture2D.xml index 7561f1b947..87d86e7a59 100644 --- a/doc/classes/GradientTexture2D.xml +++ b/doc/classes/GradientTexture2D.xml @@ -27,6 +27,7 @@ <member name="repeat" type="int" setter="set_repeat" getter="get_repeat" enum="GradientTexture2D.Repeat" default="0"> The gradient repeat type, one of the [enum Repeat] values. The texture is filled starting from [member fill_from] to [member fill_to] offsets by default, but the gradient fill can be repeated to cover the entire texture. </member> + <member name="resource_local_to_scene" type="bool" setter="set_local_to_scene" getter="is_local_to_scene" overrides="Resource" default="false" /> <member name="use_hdr" type="bool" setter="set_use_hdr" getter="is_using_hdr" default="false"> If [code]true[/code], the generated texture will support high dynamic range ([constant Image.FORMAT_RGBAF] format). This allows for glow effects to work if [member Environment.glow_enabled] is [code]true[/code]. If [code]false[/code], the generated texture will use low dynamic range; overbright colors will be clamped ([constant Image.FORMAT_RGBA8] format). </member> diff --git a/doc/classes/GraphEdit.xml b/doc/classes/GraphEdit.xml index 5050ce7715..ea4e4b53ba 100644 --- a/doc/classes/GraphEdit.xml +++ b/doc/classes/GraphEdit.xml @@ -291,7 +291,7 @@ </description> </signal> <signal name="connection_drag_started"> - <param index="0" name="from_node" type="String" /> + <param index="0" name="from_node" type="StringName" /> <param index="1" name="from_port" type="int" /> <param index="2" name="is_output" type="bool" /> <description> diff --git a/doc/classes/HSlider.xml b/doc/classes/HSlider.xml index cb0a8b34db..19bb26a1b0 100644 --- a/doc/classes/HSlider.xml +++ b/doc/classes/HSlider.xml @@ -29,6 +29,7 @@ The background of the area to the left of the grabber. </theme_item> <theme_item name="grabber_area_highlight" data_type="style" type="StyleBox"> + The background of the area to the left of the grabber that displays when it's being hovered or focused. </theme_item> <theme_item name="slider" data_type="style" type="StyleBox"> The background for the whole slider. Determines the height of the [code]grabber_area[/code]. diff --git a/doc/classes/Image.xml b/doc/classes/Image.xml index bbd633819b..ed1b40488e 100644 --- a/doc/classes/Image.xml +++ b/doc/classes/Image.xml @@ -76,8 +76,12 @@ <param index="0" name="mode" type="int" enum="Image.CompressMode" /> <param index="1" name="source" type="int" enum="Image.CompressSource" default="0" /> <param index="2" name="lossy_quality" type="float" default="0.7" /> + <param index="3" name="astc_format" type="int" enum="Image.ASTCFormat" default="0" /> <description> - Compresses the image to use less memory. Can not directly access pixel data while the image is compressed. Returns error if the chosen compression mode is not available. See [enum CompressMode] and [enum CompressSource] constants. + Compresses the image to use less memory. Can not directly access pixel data while the image is compressed. Returns error if the chosen compression mode is not available. + The [param mode] parameter helps to pick the best compression method for DXT and ETC2 formats. It is ignored for ASTC compression. + The [param lossy_quality] parameter is optional for compressors that support it. + For ASTC compression, the [param astc_format] parameter must be supplied. </description> </method> <method name="compress_from_channels"> @@ -85,7 +89,12 @@ <param index="0" name="mode" type="int" enum="Image.CompressMode" /> <param index="1" name="channels" type="int" enum="Image.UsedChannels" /> <param index="2" name="lossy_quality" type="float" default="0.7" /> + <param index="3" name="astc_format" type="int" enum="Image.ASTCFormat" default="0" /> <description> + Compresses the image to use less memory. Can not directly access pixel data while the image is compressed. Returns error if the chosen compression mode is not available. + This is an alternative to [method compress] that lets the user supply the channels used in order for the compressor to pick the best DXT and ETC2 formats. For other formats (non DXT or ETC2), this argument is ignored. + The [param lossy_quality] parameter is optional for compressors that support it. + For ASTC compression, the [param astc_format] parameter must be supplied. </description> </method> <method name="compute_image_metrics"> @@ -118,7 +127,7 @@ <param index="2" name="use_mipmaps" type="bool" /> <param index="3" name="format" type="int" enum="Image.Format" /> <description> - Creates an empty image of given size and format. See [enum Format] constants. If [param use_mipmaps] is [code]true[/code] then generate mipmaps for this image. See the [method generate_mipmaps]. + Creates an empty image of given size and format. See [enum Format] constants. If [param use_mipmaps] is [code]true[/code], then generate mipmaps for this image. See the [method generate_mipmaps]. </description> </method> <method name="create_from_data" qualifiers="static"> @@ -658,7 +667,19 @@ </constant> <constant name="FORMAT_DXT5_RA_AS_RG" value="34" enum="Format"> </constant> - <constant name="FORMAT_MAX" value="35" enum="Format"> + <constant name="FORMAT_ASTC_4x4" value="35" enum="Format"> + [url=https://en.wikipedia.org/wiki/Adaptive_scalable_texture_compression]Adaptive Scalable Texutre Compression[/url]. This implements the 4x4 (high quality) mode. + </constant> + <constant name="FORMAT_ASTC_4x4_HDR" value="36" enum="Format"> + Same format as [constant FORMAT_ASTC_4x4], but with the hint to let the GPU know it is used for HDR. + </constant> + <constant name="FORMAT_ASTC_8x8" value="37" enum="Format"> + [url=https://en.wikipedia.org/wiki/Adaptive_scalable_texture_compression]Adaptive Scalable Texutre Compression[/url]. This implements the 8x8 (low quality) mode. + </constant> + <constant name="FORMAT_ASTC_8x8_HDR" value="38" enum="Format"> + Same format as [constant FORMAT_ASTC_8x8], but with the hint to let the GPU know it is used for HDR. + </constant> + <constant name="FORMAT_MAX" value="39" enum="Format"> Represents the size of the [enum Format] enum. </constant> <constant name="INTERPOLATE_NEAREST" value="0" enum="Interpolation"> @@ -722,5 +743,11 @@ <constant name="COMPRESS_SOURCE_NORMAL" value="2" enum="CompressSource"> Source texture (before compression) is a normal texture (e.g. it can be compressed into two channels). </constant> + <constant name="ASTC_FORMAT_4x4" value="0" enum="ASTCFormat"> + Hint to indicate that the high quality 4x4 ASTC compression format should be used. + </constant> + <constant name="ASTC_FORMAT_8x8" value="1" enum="ASTCFormat"> + Hint to indicate that the low quality 8x8 ASTC compression format should be used. + </constant> </constants> </class> diff --git a/doc/classes/ImageTexture.xml b/doc/classes/ImageTexture.xml index 45cbd7ac87..03d1947475 100644 --- a/doc/classes/ImageTexture.xml +++ b/doc/classes/ImageTexture.xml @@ -67,4 +67,7 @@ </description> </method> </methods> + <members> + <member name="resource_local_to_scene" type="bool" setter="set_local_to_scene" getter="is_local_to_scene" overrides="Resource" default="false" /> + </members> </class> diff --git a/doc/classes/ImageTexture3D.xml b/doc/classes/ImageTexture3D.xml index 958c5f90f1..ee26a959aa 100644 --- a/doc/classes/ImageTexture3D.xml +++ b/doc/classes/ImageTexture3D.xml @@ -1,8 +1,11 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="ImageTexture3D" inherits="Texture3D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Texture with 3 dimensions. </brief_description> <description> + [ImageTexture3D] is a 3-dimensional [ImageTexture] that has a width, height, and depth. See also [ImageTextureLayered]. + 3D textures are typically used to store density maps for [FogMaterial], color correction LUTs for [Environment], vector fields for [GPUParticlesAttractorVectorField3D] and collision maps for [GPUParticlesCollisionSDF3D]. 3D textures can also be used in custom shaders. </description> <tutorials> </tutorials> @@ -16,12 +19,14 @@ <param index="4" name="use_mipmaps" type="bool" /> <param index="5" name="data" type="Image[]" /> <description> + Creates the [ImageTexture3D] with specified [param width], [param height], and [param depth]. See [enum Image.Format] for [param format] options. If [param use_mipmaps] is [code]true[/code], then generate mipmaps for the [ImageTexture3D]. </description> </method> <method name="update"> <return type="void" /> <param index="0" name="data" type="Image[]" /> <description> + Replaces the texture's existing data with the layers specified in [code]data[/code]. The size of [code]data[/code] must match the parameters that were used for [method create]. In other words, the texture cannot be resized or have its format changed by calling [method update]. </description> </method> </methods> diff --git a/doc/classes/ImageTextureLayered.xml b/doc/classes/ImageTextureLayered.xml index f5786f070a..0aa1d65d5a 100644 --- a/doc/classes/ImageTextureLayered.xml +++ b/doc/classes/ImageTextureLayered.xml @@ -1,8 +1,10 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="ImageTextureLayered" inherits="TextureLayered" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Base class for texture types which contain the data of multiple [ImageTexture]s. Each image is of the same size and format. </brief_description> <description> + Base class for [Texture2DArray], [Cubemap] and [CubemapArray]. Cannot be used directly, but contains all the functions necessary for accessing the derived resource types. See also [Texture3D]. </description> <tutorials> </tutorials> @@ -11,7 +13,7 @@ <return type="int" enum="Error" /> <param index="0" name="images" type="Image[]" /> <description> - Creates an [ImageTextureLayered] from an array of [Image]s. The first image decides the width, height, image format and mipmapping setting. The other images must have the same width, height, image format and mipmapping setting. + Creates an [ImageTextureLayered] from an array of [Image]s. See [method Image.create] for the expected data format. The first image decides the width, height, image format and mipmapping setting. The other images [i]must[/i] have the same width, height, image format and mipmapping setting. Each [Image] represents one [code]layer[/code]. </description> </method> @@ -23,7 +25,7 @@ Replaces the existing [Image] data at the given [code]layer[/code] with this new image. The given [Image] must have the same width, height, image format and mipmapping setting (a [code]bool[/code] value) as the rest of the referenced images. If the image format is unsupported, it will be decompressed and converted to a similar and supported [enum Image.Format]. - The update is immediate: synced with the draw. + The update is immediate: it's synchronized with drawing. </description> </method> </methods> diff --git a/doc/classes/Input.xml b/doc/classes/Input.xml index d246e64251..be8c8ff83f 100644 --- a/doc/classes/Input.xml +++ b/doc/classes/Input.xml @@ -339,7 +339,7 @@ <param index="2" name="strong_magnitude" type="float" /> <param index="3" name="duration" type="float" default="0" /> <description> - Starts to vibrate the joypad. Joypads usually come with two rumble motors, a strong and a weak one. [param weak_magnitude] is the strength of the weak motor (between 0 and 1) and [param strong_magnitude] is the strength of the strong motor (between 0 and 1). [param duration] is the duration of the effect in seconds (a duration of 0 will try to play the vibration indefinitely). + Starts to vibrate the joypad. Joypads usually come with two rumble motors, a strong and a weak one. [param weak_magnitude] is the strength of the weak motor (between 0 and 1) and [param strong_magnitude] is the strength of the strong motor (between 0 and 1). [param duration] is the duration of the effect in seconds (a duration of 0 will try to play the vibration indefinitely). The vibration can be stopped early by calling [method stop_joy_vibration]. [b]Note:[/b] Not every hardware is compatible with long effect durations; it is recommended to restart an effect if it has to be played for more than a few seconds. </description> </method> @@ -347,18 +347,18 @@ <return type="void" /> <param index="0" name="device" type="int" /> <description> - Stops the vibration of the joypad. + Stops the vibration of the joypad started with [method start_joy_vibration]. </description> </method> <method name="vibrate_handheld"> <return type="void" /> <param index="0" name="duration_ms" type="int" default="500" /> <description> - Vibrate handheld devices. - [b]Note:[/b] This method is implemented on Android, iOS, and Web. - [b]Note:[/b] For Android, it requires enabling the [code]VIBRATE[/code] permission in the export preset. - [b]Note:[/b] For iOS, specifying the duration is supported in iOS 13 and later. - [b]Note:[/b] Some web browsers such as Safari and Firefox for Android do not support this method. + Vibrate the handheld device for the specified duration in milliseconds. + [b]Note:[/b] This method is implemented on Android, iOS, and Web. It has no effect on other platforms. + [b]Note:[/b] For Android, [method vibrate_handheld] requires enabling the [code]VIBRATE[/code] permission in the export preset. Otherwise, [method vibrate_handheld] will have no effect. + [b]Note:[/b] For iOS, specifying the duration is only supported in iOS 13 and later. + [b]Note:[/b] Some web browsers such as Safari and Firefox for Android do not support [method vibrate_handheld]. </description> </method> <method name="warp_mouse"> diff --git a/doc/classes/ItemList.xml b/doc/classes/ItemList.xml index 844f260971..c485d26e0c 100644 --- a/doc/classes/ItemList.xml +++ b/doc/classes/ItemList.xml @@ -459,6 +459,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the item text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="v_separation" data_type="constant" type="int" default="2"> The vertical spacing between items. diff --git a/doc/classes/Label.xml b/doc/classes/Label.xml index 615aceac53..1a8cbf0584 100644 --- a/doc/classes/Label.xml +++ b/doc/classes/Label.xml @@ -50,6 +50,7 @@ Controls the text's horizontal alignment. Supports left, center, right, and fill, or justify. Set it to one of the [enum HorizontalAlignment] constants. </member> <member name="label_settings" type="LabelSettings" setter="set_label_settings" getter="get_label_settings"> + A [LabelSettings] resource that can be shared between multiple [Label] nodes. Takes priority over theme properties. </member> <member name="language" type="String" setter="set_language" getter="get_language" default=""""> Language code used for line-breaking and text shaping algorithms, if left empty current locale is used instead. @@ -100,7 +101,7 @@ Default text [Color] of the [Label]. </theme_item> <theme_item name="font_outline_color" data_type="color" type="Color" default="Color(1, 1, 1, 1)"> - The tint of text outline. + The color of text outline. </theme_item> <theme_item name="font_shadow_color" data_type="color" type="Color" default="Color(0, 0, 0, 0)"> [Color] of the text's shadow effect. @@ -110,6 +111,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> Text outline size. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="shadow_offset_x" data_type="constant" type="int" default="1"> The horizontal offset of the text's shadow. diff --git a/doc/classes/LabelSettings.xml b/doc/classes/LabelSettings.xml index aa972f2cf3..d73cb78295 100644 --- a/doc/classes/LabelSettings.xml +++ b/doc/classes/LabelSettings.xml @@ -1,29 +1,40 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="LabelSettings" inherits="Resource" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Collection of common settings to customize label text. </brief_description> <description> + [LabelSettings] is a resource that can be assigned to a [Label] node to customize it. It will take priority over the properties defined in theme. The resource can be shared between multiple labels and swapped on the fly, so it's convenient and flexible way to setup text style. </description> <tutorials> </tutorials> <members> <member name="font" type="Font" setter="set_font" getter="get_font"> + [Font] used for the text. </member> <member name="font_color" type="Color" setter="set_font_color" getter="get_font_color" default="Color(1, 1, 1, 1)"> + Color of the text. </member> <member name="font_size" type="int" setter="set_font_size" getter="get_font_size" default="16"> + Size of the text. </member> <member name="line_spacing" type="float" setter="set_line_spacing" getter="get_line_spacing" default="3.0"> + Vertical space between lines when the text is multiline. </member> <member name="outline_color" type="Color" setter="set_outline_color" getter="get_outline_color" default="Color(1, 1, 1, 1)"> + The color of the outline. </member> <member name="outline_size" type="int" setter="set_outline_size" getter="get_outline_size" default="0"> + Text outline size. </member> <member name="shadow_color" type="Color" setter="set_shadow_color" getter="get_shadow_color" default="Color(0, 0, 0, 0)"> + Color of the shadow effect. If alpha is [code]0[/code], no shadow will be drawn. </member> <member name="shadow_offset" type="Vector2" setter="set_shadow_offset" getter="get_shadow_offset" default="Vector2(1, 1)"> + Offset of the shadow effect, in pixels. </member> <member name="shadow_size" type="int" setter="set_shadow_size" getter="get_shadow_size" default="1"> + Size of the shadow effect. </member> </members> </class> diff --git a/doc/classes/Light2D.xml b/doc/classes/Light2D.xml index 00815758a1..062d532464 100644 --- a/doc/classes/Light2D.xml +++ b/doc/classes/Light2D.xml @@ -4,8 +4,7 @@ Casts light in a 2D environment. </brief_description> <description> - Casts light in a 2D environment. Light is defined by a (usually grayscale) texture, a color, an energy value, a mode (see constants), and various other parameters (range and shadows-related). - [b]Note:[/b] Light2D can also be used as a mask. + Casts light in a 2D environment. A light is defined as a color, an energy value, a mode (see constants), and various other parameters (range and shadows-related). </description> <tutorials> <link title="2D lights and shadows">$DOCS_URL/tutorials/2d/2d_lights_and_shadows.html</link> @@ -14,12 +13,14 @@ <method name="get_height" qualifiers="const"> <return type="float" /> <description> + Returns the light's height, which is used in 2D normal mapping. See [member PointLight2D.height] and [member DirectionalLight2D.height]. </description> </method> <method name="set_height"> <return type="void" /> <param index="0" name="height" type="float" /> <description> + Sets the light's height, which is used in 2D normal mapping. See [member PointLight2D.height] and [member DirectionalLight2D.height]. </description> </method> </methods> @@ -64,7 +65,7 @@ Shadow filter type. See [enum ShadowFilter] for possible values. </member> <member name="shadow_filter_smooth" type="float" setter="set_shadow_smooth" getter="get_shadow_smooth" default="0.0"> - Smoothing value for shadows. + Smoothing value for shadows. Higher values will result in softer shadows, at the cost of visible streaks that can appear in shadow rendering. [member shadow_filter_smooth] only has an effect if [member shadow_filter] is [constant SHADOW_FILTER_PCF5] or [constant SHADOW_FILTER_PCF13]. </member> <member name="shadow_item_cull_mask" type="int" setter="set_item_shadow_cull_mask" getter="get_item_shadow_cull_mask" default="1"> The shadow mask. Used with [LightOccluder2D] to cast shadows. Only occluders with a matching light mask will cast shadows. @@ -72,13 +73,13 @@ </members> <constants> <constant name="SHADOW_FILTER_NONE" value="0" enum="ShadowFilter"> - No filter applies to the shadow map. See [member shadow_filter]. + No filter applies to the shadow map. This provides hard shadow edges and is the fastest to render. See [member shadow_filter]. </constant> <constant name="SHADOW_FILTER_PCF5" value="1" enum="ShadowFilter"> - Percentage closer filtering (5 samples) applies to the shadow map. See [member shadow_filter]. + Percentage closer filtering (5 samples) applies to the shadow map. This is slower compared to hard shadow rendering. See [member shadow_filter]. </constant> <constant name="SHADOW_FILTER_PCF13" value="2" enum="ShadowFilter"> - Percentage closer filtering (13 samples) applies to the shadow map. See [member shadow_filter]. + Percentage closer filtering (13 samples) applies to the shadow map. This is the slowest shadow filtereing mode, and should be used sparingly. See [member shadow_filter]. </constant> <constant name="BLEND_MODE_ADD" value="0" enum="BlendMode"> Adds the value of pixels corresponding to the Light2D to the values of pixels under it. This is the common behavior of a light. diff --git a/doc/classes/Light3D.xml b/doc/classes/Light3D.xml index 60e20cd97d..fe7756faaf 100644 --- a/doc/classes/Light3D.xml +++ b/doc/classes/Light3D.xml @@ -114,7 +114,7 @@ <member name="shadow_enabled" type="bool" setter="set_shadow" getter="has_shadow" default="false"> If [code]true[/code], the light will cast real-time shadows. This has a significant performance cost. Only enable shadow rendering when it makes a noticeable difference in the scene's appearance, and consider using [member distance_fade_enabled] to hide the light when far away from the [Camera3D]. </member> - <member name="shadow_normal_bias" type="float" setter="set_param" getter="get_param" default="1.0"> + <member name="shadow_normal_bias" type="float" setter="set_param" getter="get_param" default="2.0"> Offsets the lookup into the shadow map by the object's normal. This can be used to reduce self-shadowing artifacts without using [member shadow_bias]. In practice, this value should be tweaked along with [member shadow_bias] to reduce artifacts as much as possible. </member> <member name="shadow_opacity" type="float" setter="set_param" getter="get_param" default="1.0"> diff --git a/doc/classes/LineEdit.xml b/doc/classes/LineEdit.xml index e57cc68b36..b8383aaed9 100644 --- a/doc/classes/LineEdit.xml +++ b/doc/classes/LineEdit.xml @@ -424,6 +424,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="font" data_type="font" type="Font"> Font used for the text. diff --git a/doc/classes/LinkButton.xml b/doc/classes/LinkButton.xml index d7701ea184..b3938999f3 100644 --- a/doc/classes/LinkButton.xml +++ b/doc/classes/LinkButton.xml @@ -28,7 +28,23 @@ Base text writing direction. </member> <member name="underline" type="int" setter="set_underline_mode" getter="get_underline_mode" enum="LinkButton.UnderlineMode" default="0"> - Determines when to show the underline. See [enum UnderlineMode] for options. + The underline mode to use for the text. See [enum LinkButton.UnderlineMode] for the available modes. + </member> + <member name="uri" type="String" setter="set_uri" getter="get_uri" default=""""> + The [url=https://en.wikipedia.org/wiki/Uniform_Resource_Identifier]URI[/url] for this [LinkButton]. If set to a valid URI, pressing the button opens the URI using the operating system's default program for the protocol (via [method OS.shell_open]). HTTP and HTTPS URLs open the default web browser. + [b]Examples:[/b] + [codeblocks] + [gdscript] + uri = "https://godotengine.org" # Opens the URL in the default web browser. + uri = "C:\SomeFolder" # Opens the file explorer at the given path. + uri = "C:\SomeImage.png" # Opens the given image in the default viewing app. + [/gdscript] + [csharp] + Uri = "https://godotengine.org"; // Opens the URL in the default web browser. + Uri = "C:\SomeFolder"; // Opens the file explorer at the given path. + Uri = "C:\SomeImage.png"; // Opens the given image in the default viewing app. + [/csharp] + [/codeblocks] </member> </members> <constants> @@ -60,6 +76,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="underline_spacing" data_type="constant" type="int" default="2"> The vertical space between the baseline of text and the underline. diff --git a/doc/classes/MenuBar.xml b/doc/classes/MenuBar.xml index e8505937ff..79876e56a3 100644 --- a/doc/classes/MenuBar.xml +++ b/doc/classes/MenuBar.xml @@ -143,6 +143,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="font" data_type="font" type="Font"> [Font] of the menu item's text. diff --git a/doc/classes/MenuButton.xml b/doc/classes/MenuButton.xml index 4d5d5a011b..3061149570 100644 --- a/doc/classes/MenuButton.xml +++ b/doc/classes/MenuButton.xml @@ -75,6 +75,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="font" data_type="font" type="Font"> [Font] of the [MenuButton]'s text. diff --git a/doc/classes/Mesh.xml b/doc/classes/Mesh.xml index 640fa9efec..4d3fb7ed5c 100644 --- a/doc/classes/Mesh.xml +++ b/doc/classes/Mesh.xml @@ -97,7 +97,7 @@ </description> </method> <method name="create_convex_shape" qualifiers="const"> - <return type="Shape3D" /> + <return type="ConvexPolygonShape3D" /> <param index="0" name="clean" type="bool" default="true" /> <param index="1" name="simplify" type="bool" default="false" /> <description> @@ -115,7 +115,7 @@ </description> </method> <method name="create_trimesh_shape" qualifiers="const"> - <return type="Shape3D" /> + <return type="ConcavePolygonShape3D" /> <description> Calculate a [ConcavePolygonShape3D] from the mesh. </description> diff --git a/doc/classes/MeshLibrary.xml b/doc/classes/MeshLibrary.xml index 85e57dd0f3..7c93ba5dce 100644 --- a/doc/classes/MeshLibrary.xml +++ b/doc/classes/MeshLibrary.xml @@ -59,14 +59,21 @@ Returns the item's name. </description> </method> - <method name="get_item_navmesh" qualifiers="const"> + <method name="get_item_navigation_layers" qualifiers="const"> + <return type="int" /> + <param index="0" name="id" type="int" /> + <description> + Returns the item's navigation layers bitmask. + </description> + </method> + <method name="get_item_navigation_mesh" qualifiers="const"> <return type="NavigationMesh" /> <param index="0" name="id" type="int" /> <description> Returns the item's navigation mesh. </description> </method> - <method name="get_item_navmesh_transform" qualifiers="const"> + <method name="get_item_navigation_mesh_transform" qualifiers="const"> <return type="Transform3D" /> <param index="0" name="id" type="int" /> <description> @@ -126,18 +133,26 @@ This name is shown in the editor. It can also be used to look up the item later using [method find_item_by_name]. </description> </method> - <method name="set_item_navmesh"> + <method name="set_item_navigation_layers"> + <return type="void" /> + <param index="0" name="id" type="int" /> + <param index="1" name="navigation_layers" type="int" /> + <description> + Sets the item's navigation layers bitmask. + </description> + </method> + <method name="set_item_navigation_mesh"> <return type="void" /> <param index="0" name="id" type="int" /> - <param index="1" name="navmesh" type="NavigationMesh" /> + <param index="1" name="navigation_mesh" type="NavigationMesh" /> <description> Sets the item's navigation mesh. </description> </method> - <method name="set_item_navmesh_transform"> + <method name="set_item_navigation_mesh_transform"> <return type="void" /> <param index="0" name="id" type="int" /> - <param index="1" name="navmesh" type="Transform3D" /> + <param index="1" name="navigation_mesh" type="Transform3D" /> <description> Sets the transform to apply to the item's navigation mesh. </description> diff --git a/doc/classes/MeshTexture.xml b/doc/classes/MeshTexture.xml index 8e2bccc79f..d09fa4c898 100644 --- a/doc/classes/MeshTexture.xml +++ b/doc/classes/MeshTexture.xml @@ -18,5 +18,6 @@ <member name="mesh" type="Mesh" setter="set_mesh" getter="get_mesh"> Sets the mesh used to draw. It must be a mesh using 2D vertices. </member> + <member name="resource_local_to_scene" type="bool" setter="set_local_to_scene" getter="is_local_to_scene" overrides="Resource" default="false" /> </members> </class> diff --git a/doc/classes/MissingNode.xml b/doc/classes/MissingNode.xml index b5aa02cfd6..ac54329313 100644 --- a/doc/classes/MissingNode.xml +++ b/doc/classes/MissingNode.xml @@ -4,7 +4,7 @@ This is an internal editor class intended for keeping data of nodes of unknown type. </brief_description> <description> - This is an internal editor class intended for keeping data of nodes of unknown type (most likely this type was supplied by an extension that is no longer loaded). It can´t be manually instantiated or placed in the scene. Ignore it if you don't know what it is. + This is an internal editor class intended for keeping data of nodes of unknown type (most likely this type was supplied by an extension that is no longer loaded). It can't be manually instantiated or placed in the scene. Ignore it if you don't know what it is. </description> <tutorials> </tutorials> diff --git a/doc/classes/MissingResource.xml b/doc/classes/MissingResource.xml index eede6350d8..e5a6c4d064 100644 --- a/doc/classes/MissingResource.xml +++ b/doc/classes/MissingResource.xml @@ -4,7 +4,7 @@ This is an internal editor class intended for keeping data of resources of unknown type. </brief_description> <description> - This is an internal editor class intended for keeping data of resources of unknown type (most likely this type was supplied by an extension that is no longer loaded). It can´t be manually instantiated or placed in the scene. Ignore it if you don't know what it is. + This is an internal editor class intended for keeping data of resources of unknown type (most likely this type was supplied by an extension that is no longer loaded). It can't be manually instantiated or placed in the scene. Ignore it if you don't know what it is. </description> <tutorials> </tutorials> diff --git a/doc/classes/NavigationAgent2D.xml b/doc/classes/NavigationAgent2D.xml index 8cf7824ff7..31d347d76c 100644 --- a/doc/classes/NavigationAgent2D.xml +++ b/doc/classes/NavigationAgent2D.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationAgent2D" inherits="Node" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationAgent2D" inherits="Node" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> 2D Agent used in navigation for collision avoidance. </brief_description> @@ -16,24 +16,30 @@ Returns the distance to the target location, using the agent's global position. The user must set [member target_location] in order for this to be accurate. </description> </method> - <method name="get_final_location"> - <return type="Vector2" /> - <description> - Returns the reachable final location in global coordinates. This can change if the navigation path is altered in any way. Because of this, it would be best to check this each frame. - </description> - </method> - <method name="get_nav_path" qualifiers="const"> + <method name="get_current_navigation_path" qualifiers="const"> <return type="PackedVector2Array" /> <description> Returns this agent's current path from start to finish in global coordinates. The path only updates when the target location is changed or the agent requires a repath. The path array is not intended to be used in direct path movement as the agent has its own internal path logic that would get corrupted by changing the path array manually. Use the intended [method get_next_location] once every physics frame to receive the next path point for the agents movement as this function also updates the internal path logic. </description> </method> - <method name="get_nav_path_index" qualifiers="const"> + <method name="get_current_navigation_path_index" qualifiers="const"> <return type="int" /> <description> Returns which index the agent is currently on in the navigation path's [PackedVector2Array]. </description> </method> + <method name="get_current_navigation_result" qualifiers="const"> + <return type="NavigationPathQueryResult2D" /> + <description> + Returns the path query result for the path the agent is currently following. + </description> + </method> + <method name="get_final_location"> + <return type="Vector2" /> + <description> + Returns the reachable final location in global coordinates. This can change if the navigation path is altered in any way. Because of this, it would be best to check this each frame. + </description> + </method> <method name="get_navigation_layer_value" qualifiers="const"> <return type="bool" /> <param index="0" name="layer_number" type="int" /> @@ -122,6 +128,9 @@ <member name="path_max_distance" type="float" setter="set_path_max_distance" getter="get_path_max_distance" default="3.0"> The maximum distance the agent is allowed away from the ideal path to the final location. This can happen due to trying to avoid collisions. When the maximum distance is exceeded, it recalculates the ideal path. </member> + <member name="path_metadata_flags" type="int" setter="set_path_metadata_flags" getter="get_path_metadata_flags" enum="NavigationPathQueryParameters2D.PathMetadataFlags" default="7"> + Additional information to return with the navigation path. + </member> <member name="radius" type="float" setter="set_radius" getter="get_radius" default="10.0"> The radius of the avoidance agent. This is the "body" of the avoidance agent and not the avoidance maneuver starting radius (which is controlled by [member neighbor_distance]). Does not affect normal pathfinding. To change an actor's pathfinding radius bake [NavigationMesh] resources with a different [member NavigationMesh.agent_radius] property and use different navigation maps for each actor size. @@ -137,6 +146,17 @@ </member> </members> <signals> + <signal name="link_reached"> + <param index="0" name="details" type="Dictionary" /> + <description> + Notifies when a navigation link has been reached. + The details dictionary may contain the following keys depending on the value of [member path_metadata_flags]: + - [code]location[/code]: The start location of the link that was reached. + - [code]type[/code]: Always [constant NavigationPathQueryResult2D.PATH_SEGMENT_TYPE_LINK]. + - [code]rid[/code]: The [RID] of the link. + - [code]owner[/code]: The object which manages the link (usually [NavigationLink2D]). + </description> + </signal> <signal name="navigation_finished"> <description> Notifies when the final location is reached. @@ -158,5 +178,16 @@ Notifies when the collision avoidance velocity is calculated. Emitted by [method set_velocity]. Only emitted when [member avoidance_enabled] is true. </description> </signal> + <signal name="waypoint_reached"> + <param index="0" name="details" type="Dictionary" /> + <description> + Notifies when a waypoint along the path has been reached. + The details dictionary may contain the following keys depending on the value of [member path_metadata_flags]: + - [code]location[/code]: The location of the waypoint that was reached. + - [code]type[/code]: The type of navigation primitive (region or link) that contains this waypoint. + - [code]rid[/code]: The [RID] of the containing navigation primitive (region or link). + - [code]owner[/code]: The object which manages the containing navigation primitive (region or link). + </description> + </signal> </signals> </class> diff --git a/doc/classes/NavigationAgent3D.xml b/doc/classes/NavigationAgent3D.xml index 44c17647f7..c3f4809b5e 100644 --- a/doc/classes/NavigationAgent3D.xml +++ b/doc/classes/NavigationAgent3D.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationAgent3D" inherits="Node" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationAgent3D" inherits="Node" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> 3D Agent used in navigation for collision avoidance. </brief_description> @@ -16,24 +16,30 @@ Returns the distance to the target location, using the agent's global position. The user must set [member target_location] in order for this to be accurate. </description> </method> - <method name="get_final_location"> - <return type="Vector3" /> - <description> - Returns the reachable final location in global coordinates. This can change if the navigation path is altered in any way. Because of this, it would be best to check this each frame. - </description> - </method> - <method name="get_nav_path" qualifiers="const"> + <method name="get_current_navigation_path" qualifiers="const"> <return type="PackedVector3Array" /> <description> Returns this agent's current path from start to finish in global coordinates. The path only updates when the target location is changed or the agent requires a repath. The path array is not intended to be used in direct path movement as the agent has its own internal path logic that would get corrupted by changing the path array manually. Use the intended [method get_next_location] once every physics frame to receive the next path point for the agents movement as this function also updates the internal path logic. </description> </method> - <method name="get_nav_path_index" qualifiers="const"> + <method name="get_current_navigation_path_index" qualifiers="const"> <return type="int" /> <description> Returns which index the agent is currently on in the navigation path's [PackedVector3Array]. </description> </method> + <method name="get_current_navigation_result" qualifiers="const"> + <return type="NavigationPathQueryResult3D" /> + <description> + Returns the path query result for the path the agent is currently following. + </description> + </method> + <method name="get_final_location"> + <return type="Vector3" /> + <description> + Returns the reachable final location in global coordinates. This can change if the navigation path is altered in any way. Because of this, it would be best to check this each frame. + </description> + </method> <method name="get_navigation_layer_value" qualifiers="const"> <return type="bool" /> <param index="0" name="layer_number" type="int" /> @@ -128,6 +134,9 @@ <member name="path_max_distance" type="float" setter="set_path_max_distance" getter="get_path_max_distance" default="3.0"> The maximum distance the agent is allowed away from the ideal path to the final location. This can happen due to trying to avoid collisions. When the maximum distance is exceeded, it recalculates the ideal path. </member> + <member name="path_metadata_flags" type="int" setter="set_path_metadata_flags" getter="get_path_metadata_flags" enum="NavigationPathQueryParameters3D.PathMetadataFlags" default="7"> + Additional information to return with the navigation path. + </member> <member name="radius" type="float" setter="set_radius" getter="get_radius" default="1.0"> The radius of the avoidance agent. This is the "body" of the avoidance agent and not the avoidance maneuver starting radius (which is controlled by [member neighbor_distance]). Does not affect normal pathfinding. To change an actor's pathfinding radius bake [NavigationMesh] resources with a different [member NavigationMesh.agent_radius] property and use different navigation maps for each actor size. @@ -143,6 +152,17 @@ </member> </members> <signals> + <signal name="link_reached"> + <param index="0" name="details" type="Dictionary" /> + <description> + Notifies when a navigation link has been reached. + The details dictionary may contain the following keys depending on the value of [member path_metadata_flags]: + - [code]location[/code]: The start location of the link that was reached. + - [code]type[/code]: Always [constant NavigationPathQueryResult3D.PATH_SEGMENT_TYPE_LINK]. + - [code]rid[/code]: The [RID] of the link. + - [code]owner[/code]: The object which manages the link (usually [NavigationLink3D]). + </description> + </signal> <signal name="navigation_finished"> <description> Notifies when the final location is reached. @@ -164,5 +184,16 @@ Notifies when the collision avoidance velocity is calculated. Emitted by [method set_velocity]. Only emitted when [member avoidance_enabled] is true. </description> </signal> + <signal name="waypoint_reached"> + <param index="0" name="details" type="Dictionary" /> + <description> + Notifies when a waypoint along the path has been reached. + The details dictionary may contain the following keys depending on the value of [member path_metadata_flags]: + - [code]location[/code]: The location of the waypoint that was reached. + - [code]type[/code]: The type of navigation primitive (region or link) that contains this waypoint. + - [code]rid[/code]: The [RID] of the containing navigation primitive (region or link). + - [code]owner[/code]: The object which manages the containing navigation primitive (region or link). + </description> + </signal> </signals> </class> diff --git a/doc/classes/NavigationLink2D.xml b/doc/classes/NavigationLink2D.xml index 1e086fb730..9d75694360 100644 --- a/doc/classes/NavigationLink2D.xml +++ b/doc/classes/NavigationLink2D.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationLink2D" inherits="Node2D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationLink2D" inherits="Node2D" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> Creates a link between two locations that [NavigationServer2D] can route agents through. </brief_description> @@ -38,7 +38,7 @@ The distance the link will search is controlled by [method NavigationServer2D.map_set_link_connection_radius]. </member> <member name="enter_cost" type="float" setter="set_enter_cost" getter="get_enter_cost" default="0.0"> - When pathfinding enters this link from another regions navmesh the [code]enter_cost[/code] value is added to the path distance for determining the shortest path. + When pathfinding enters this link from another regions navigation mesh the [code]enter_cost[/code] value is added to the path distance for determining the shortest path. </member> <member name="navigation_layers" type="int" setter="set_navigation_layers" getter="get_navigation_layers" default="1"> A bitfield determining all navigation layers the link belongs to. These navigation layers will be checked when requesting a path with [method NavigationServer2D.map_get_path]. diff --git a/doc/classes/NavigationLink3D.xml b/doc/classes/NavigationLink3D.xml index 4d5d81bec5..730c43c5a8 100644 --- a/doc/classes/NavigationLink3D.xml +++ b/doc/classes/NavigationLink3D.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationLink3D" inherits="Node3D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationLink3D" inherits="Node3D" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> Creates a link between two locations that [NavigationServer3D] can route agents through. </brief_description> @@ -38,7 +38,7 @@ The distance the link will search is controlled by [method NavigationServer3D.map_set_link_connection_radius]. </member> <member name="enter_cost" type="float" setter="set_enter_cost" getter="get_enter_cost" default="0.0"> - When pathfinding enters this link from another regions navmesh the [code]enter_cost[/code] value is added to the path distance for determining the shortest path. + When pathfinding enters this link from another regions navigation mesh the [code]enter_cost[/code] value is added to the path distance for determining the shortest path. </member> <member name="navigation_layers" type="int" setter="set_navigation_layers" getter="get_navigation_layers" default="1"> A bitfield determining all navigation layers the link belongs to. These navigation layers will be checked when requesting a path with [method NavigationServer3D.map_get_path]. diff --git a/doc/classes/NavigationMesh.xml b/doc/classes/NavigationMesh.xml index c86bc47e04..ff898551d4 100644 --- a/doc/classes/NavigationMesh.xml +++ b/doc/classes/NavigationMesh.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationMesh" inherits="Resource" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationMesh" inherits="Resource" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> A mesh to approximate the walkable areas and obstacles. </brief_description> @@ -133,13 +133,10 @@ <member name="geometry_source_geometry_mode" type="int" setter="set_source_geometry_mode" getter="get_source_geometry_mode" enum="NavigationMesh.SourceGeometryMode" default="0"> The source of the geometry used when baking. See [enum SourceGeometryMode] for possible values. </member> - <member name="geometry_source_group_name" type="StringName" setter="set_source_group_name" getter="get_source_group_name" default="&"navmesh""> + <member name="geometry_source_group_name" type="StringName" setter="set_source_group_name" getter="get_source_group_name" default="&"navigation_mesh_source_group""> The name of the group to scan for geometry. Only used when [member geometry_source_geometry_mode] is [constant SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN] or [constant SOURCE_GEOMETRY_GROUPS_EXPLICIT]. </member> - <member name="polygon_verts_per_poly" type="float" setter="set_verts_per_poly" getter="get_verts_per_poly" default="6.0"> - The maximum number of vertices allowed for polygons generated during the contour to polygon conversion process. - </member> <member name="region_merge_size" type="float" setter="set_region_merge_size" getter="get_region_merge_size" default="20.0"> Any regions with a size smaller than this will be merged with larger regions if possible. [b]Note:[/b] This value will be squared to calculate the number of cells. For example, a value of 20 will set the number of cells to 400. @@ -151,6 +148,9 @@ <member name="sample_partition_type" type="int" setter="set_sample_partition_type" getter="get_sample_partition_type" enum="NavigationMesh.SamplePartitionType" default="0"> Partitioning algorithm for creating the navigation mesh polys. See [enum SamplePartitionType] for possible values. </member> + <member name="vertices_per_polygon" type="float" setter="set_vertices_per_polygon" getter="get_vertices_per_polygon" default="6.0"> + The maximum number of vertices allowed for polygons generated during the contour to polygon conversion process. + </member> </members> <constants> <constant name="SAMPLE_PARTITION_WATERSHED" value="0" enum="SamplePartitionType"> @@ -177,8 +177,8 @@ <constant name="PARSED_GEOMETRY_MAX" value="3" enum="ParsedGeometryType"> Represents the size of the [enum ParsedGeometryType] enum. </constant> - <constant name="SOURCE_GEOMETRY_NAVMESH_CHILDREN" value="0" enum="SourceGeometryMode"> - Scans the child nodes of [NavigationRegion3D] recursively for geometry. + <constant name="SOURCE_GEOMETRY_ROOT_NODE_CHILDREN" value="0" enum="SourceGeometryMode"> + Scans the child nodes of the root node recursively for geometry. </constant> <constant name="SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN" value="1" enum="SourceGeometryMode"> Scans nodes in a group and their child nodes recursively for geometry. The group is specified by [member geometry_source_group_name]. diff --git a/doc/classes/NavigationMeshGenerator.xml b/doc/classes/NavigationMeshGenerator.xml index 4c337db90f..15d149a229 100644 --- a/doc/classes/NavigationMeshGenerator.xml +++ b/doc/classes/NavigationMeshGenerator.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationMeshGenerator" inherits="Object" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationMeshGenerator" inherits="Object" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> Helper class for creating and clearing navigation meshes. </brief_description> @@ -15,17 +15,17 @@ <methods> <method name="bake"> <return type="void" /> - <param index="0" name="nav_mesh" type="NavigationMesh" /> + <param index="0" name="navigation_mesh" type="NavigationMesh" /> <param index="1" name="root_node" type="Node" /> <description> - Bakes navigation data to the provided [param nav_mesh] by parsing child nodes under the provided [param root_node] or a specific group of nodes for potential source geometry. The parse behavior can be controlled with the [member NavigationMesh.geometry_parsed_geometry_type] and [member NavigationMesh.geometry_source_geometry_mode] properties on the [NavigationMesh] resource. + Bakes navigation data to the provided [param navigation_mesh] by parsing child nodes under the provided [param root_node] or a specific group of nodes for potential source geometry. The parse behavior can be controlled with the [member NavigationMesh.geometry_parsed_geometry_type] and [member NavigationMesh.geometry_source_geometry_mode] properties on the [NavigationMesh] resource. </description> </method> <method name="clear"> <return type="void" /> - <param index="0" name="nav_mesh" type="NavigationMesh" /> + <param index="0" name="navigation_mesh" type="NavigationMesh" /> <description> - Removes all polygons and vertices from the provided [param nav_mesh] resource. + Removes all polygons and vertices from the provided [param navigation_mesh] resource. </description> </method> </methods> diff --git a/doc/classes/NavigationObstacle2D.xml b/doc/classes/NavigationObstacle2D.xml index 68d9691ccf..ce0f05ad28 100644 --- a/doc/classes/NavigationObstacle2D.xml +++ b/doc/classes/NavigationObstacle2D.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationObstacle2D" inherits="Node" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationObstacle2D" inherits="Node" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> 2D Obstacle used in navigation for collision avoidance. </brief_description> diff --git a/doc/classes/NavigationObstacle3D.xml b/doc/classes/NavigationObstacle3D.xml index 90eb55887f..78bbb788d9 100644 --- a/doc/classes/NavigationObstacle3D.xml +++ b/doc/classes/NavigationObstacle3D.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationObstacle3D" inherits="Node" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationObstacle3D" inherits="Node" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> 3D Obstacle used in navigation for collision avoidance. </brief_description> diff --git a/doc/classes/NavigationPathQueryParameters2D.xml b/doc/classes/NavigationPathQueryParameters2D.xml index 397ca8b713..511b2e7a8c 100644 --- a/doc/classes/NavigationPathQueryParameters2D.xml +++ b/doc/classes/NavigationPathQueryParameters2D.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationPathQueryParameters2D" inherits="RefCounted" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationPathQueryParameters2D" inherits="RefCounted" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> Parameters to be sent to a 2D navigation path query. </brief_description> @@ -12,6 +12,9 @@ <member name="map" type="RID" setter="set_map" getter="get_map"> The navigation [code]map[/code] [RID] used in the path query. </member> + <member name="metadata_flags" type="int" setter="set_metadata_flags" getter="get_metadata_flags" enum="NavigationPathQueryParameters2D.PathMetadataFlags" default="7"> + Additional information to include with the navigation path. + </member> <member name="navigation_layers" type="int" setter="set_navigation_layers" getter="get_navigation_layers" default="1"> The navigation layers the query will use (as a bitmask). </member> @@ -33,10 +36,25 @@ The path query uses the default A* pathfinding algorithm. </constant> <constant name="PATH_POSTPROCESSING_CORRIDORFUNNEL" value="0" enum="PathPostProcessing"> - Applies a funnel algorithm to the raw path corridor found by the pathfinding algorithm. This will result in the shortest path possible inside the path corridor. This postprocessing very much depends on the navmesh polygon layout and the created corridor. Especially tile- or gridbased layouts can face artificial corners with diagonal movement due to a jagged path corridor imposed by the cell shapes. + Applies a funnel algorithm to the raw path corridor found by the pathfinding algorithm. This will result in the shortest path possible inside the path corridor. This postprocessing very much depends on the navigation mesh polygon layout and the created corridor. Especially tile- or gridbased layouts can face artificial corners with diagonal movement due to a jagged path corridor imposed by the cell shapes. </constant> <constant name="PATH_POSTPROCESSING_EDGECENTERED" value="1" enum="PathPostProcessing"> - Centers every path position in the middle of the traveled navmesh polygon edge. This creates better paths for tile- or gridbased layouts that restrict the movement to the cells center. + Centers every path position in the middle of the traveled navigation mesh polygon edge. This creates better paths for tile- or gridbased layouts that restrict the movement to the cells center. + </constant> + <constant name="PATH_METADATA_INCLUDE_NONE" value="0" enum="PathMetadataFlags" is_bitfield="true"> + Don't include any additional metadata about the returned path. + </constant> + <constant name="PATH_METADATA_INCLUDE_TYPES" value="1" enum="PathMetadataFlags" is_bitfield="true"> + Include the type of navigation primitive (region or link) that each point of the path goes through. + </constant> + <constant name="PATH_METADATA_INCLUDE_RIDS" value="2" enum="PathMetadataFlags" is_bitfield="true"> + Include the [RID]s of the regions and links that each point of the path goes through. + </constant> + <constant name="PATH_METADATA_INCLUDE_OWNERS" value="4" enum="PathMetadataFlags" is_bitfield="true"> + Include the [code]ObjectID[/code]s of the [Object]s which manage the regions and links each point of the path goes through. + </constant> + <constant name="PATH_METADATA_INCLUDE_ALL" value="7" enum="PathMetadataFlags" is_bitfield="true"> + Include all available metadata about the returned path. </constant> </constants> </class> diff --git a/doc/classes/NavigationPathQueryParameters3D.xml b/doc/classes/NavigationPathQueryParameters3D.xml index 29faa5561b..b5031f60f2 100644 --- a/doc/classes/NavigationPathQueryParameters3D.xml +++ b/doc/classes/NavigationPathQueryParameters3D.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationPathQueryParameters3D" inherits="RefCounted" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationPathQueryParameters3D" inherits="RefCounted" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> Parameters to be sent to a 3D navigation path query. </brief_description> @@ -12,6 +12,9 @@ <member name="map" type="RID" setter="set_map" getter="get_map"> The navigation [code]map[/code] [RID] used in the path query. </member> + <member name="metadata_flags" type="int" setter="set_metadata_flags" getter="get_metadata_flags" enum="NavigationPathQueryParameters3D.PathMetadataFlags" default="7"> + Additional information to include with the navigation path. + </member> <member name="navigation_layers" type="int" setter="set_navigation_layers" getter="get_navigation_layers" default="1"> The navigation layers the query will use (as a bitmask). </member> @@ -33,10 +36,25 @@ The path query uses the default A* pathfinding algorithm. </constant> <constant name="PATH_POSTPROCESSING_CORRIDORFUNNEL" value="0" enum="PathPostProcessing"> - Applies a funnel algorithm to the raw path corridor found by the pathfinding algorithm. This will result in the shortest path possible inside the path corridor. This postprocessing very much depends on the navmesh polygon layout and the created corridor. Especially tile- or gridbased layouts can face artificial corners with diagonal movement due to a jagged path corridor imposed by the cell shapes. + Applies a funnel algorithm to the raw path corridor found by the pathfinding algorithm. This will result in the shortest path possible inside the path corridor. This postprocessing very much depends on the navigation mesh polygon layout and the created corridor. Especially tile- or gridbased layouts can face artificial corners with diagonal movement due to a jagged path corridor imposed by the cell shapes. </constant> <constant name="PATH_POSTPROCESSING_EDGECENTERED" value="1" enum="PathPostProcessing"> - Centers every path position in the middle of the traveled navmesh polygon edge. This creates better paths for tile- or gridbased layouts that restrict the movement to the cells center. + Centers every path position in the middle of the traveled navigation mesh polygon edge. This creates better paths for tile- or gridbased layouts that restrict the movement to the cells center. + </constant> + <constant name="PATH_METADATA_INCLUDE_NONE" value="0" enum="PathMetadataFlags" is_bitfield="true"> + Don't include any additional metadata about the returned path. + </constant> + <constant name="PATH_METADATA_INCLUDE_TYPES" value="1" enum="PathMetadataFlags" is_bitfield="true"> + Include the type of navigation primitive (region or link) that each point of the path goes through. + </constant> + <constant name="PATH_METADATA_INCLUDE_RIDS" value="2" enum="PathMetadataFlags" is_bitfield="true"> + Include the [RID]s of the regions and links that each point of the path goes through. + </constant> + <constant name="PATH_METADATA_INCLUDE_OWNERS" value="4" enum="PathMetadataFlags" is_bitfield="true"> + Include the [code]ObjectID[/code]s of the [Object]s which manage the regions and links each point of the path goes through. + </constant> + <constant name="PATH_METADATA_INCLUDE_ALL" value="7" enum="PathMetadataFlags" is_bitfield="true"> + Include all available metadata about the returned path. </constant> </constants> </class> diff --git a/doc/classes/NavigationPathQueryResult2D.xml b/doc/classes/NavigationPathQueryResult2D.xml index 95b90e9383..75f7cc47aa 100644 --- a/doc/classes/NavigationPathQueryResult2D.xml +++ b/doc/classes/NavigationPathQueryResult2D.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationPathQueryResult2D" inherits="RefCounted" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationPathQueryResult2D" inherits="RefCounted" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> Result from a [NavigationPathQueryParameters2D] navigation path query. </brief_description> @@ -20,5 +20,22 @@ <member name="path" type="PackedVector2Array" setter="set_path" getter="get_path" default="PackedVector2Array()"> The resulting path array from the navigation query. All path array positions are in global coordinates. Without customized query parameters this is the same path as returned by [method NavigationServer2D.map_get_path]. </member> + <member name="path_owner_ids" type="PackedInt64Array" setter="set_path_owner_ids" getter="get_path_owner_ids" default="PackedInt64Array()"> + The [code]ObjectID[/code]s of the [Object]s which manage the regions and links each point of the path goes through. + </member> + <member name="path_rids" type="RID[]" setter="set_path_rids" getter="get_path_rids" default="[]"> + The [RID]s of the regions and links that each point of the path goes through. + </member> + <member name="path_types" type="PackedInt32Array" setter="set_path_types" getter="get_path_types" default="PackedInt32Array()"> + The type of navigation primitive (region or link) that each point of the path goes through. + </member> </members> + <constants> + <constant name="PATH_SEGMENT_TYPE_REGION" value="0" enum="PathSegmentType"> + This segment of the path goes through a region. + </constant> + <constant name="PATH_SEGMENT_TYPE_LINK" value="1" enum="PathSegmentType"> + This segment of the path goes through a link. + </constant> + </constants> </class> diff --git a/doc/classes/NavigationPathQueryResult3D.xml b/doc/classes/NavigationPathQueryResult3D.xml index b4ca8288db..03d41cb230 100644 --- a/doc/classes/NavigationPathQueryResult3D.xml +++ b/doc/classes/NavigationPathQueryResult3D.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationPathQueryResult3D" inherits="RefCounted" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationPathQueryResult3D" inherits="RefCounted" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> Result from a [NavigationPathQueryParameters3D] navigation path query. </brief_description> @@ -20,5 +20,22 @@ <member name="path" type="PackedVector3Array" setter="set_path" getter="get_path" default="PackedVector3Array()"> The resulting path array from the navigation query. All path array positions are in global coordinates. Without customized query parameters this is the same path as returned by [method NavigationServer3D.map_get_path]. </member> + <member name="path_owner_ids" type="PackedInt64Array" setter="set_path_owner_ids" getter="get_path_owner_ids" default="PackedInt64Array()"> + The [code]ObjectID[/code]s of the [Object]s which manage the regions and links each point of the path goes through. + </member> + <member name="path_rids" type="RID[]" setter="set_path_rids" getter="get_path_rids" default="[]"> + The [RID]s of the regions and links that each point of the path goes through. + </member> + <member name="path_types" type="PackedInt32Array" setter="set_path_types" getter="get_path_types" default="PackedInt32Array()"> + The type of navigation primitive (region or link) that each point of the path goes through. + </member> </members> + <constants> + <constant name="PATH_SEGMENT_TYPE_REGION" value="0" enum="PathSegmentType"> + This segment of the path goes through a region. + </constant> + <constant name="PATH_SEGMENT_TYPE_LINK" value="1" enum="PathSegmentType"> + This segment of the path goes through a link. + </constant> + </constants> </class> diff --git a/doc/classes/NavigationPolygon.xml b/doc/classes/NavigationPolygon.xml index 19466c171f..b30dd2703a 100644 --- a/doc/classes/NavigationPolygon.xml +++ b/doc/classes/NavigationPolygon.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationPolygon" inherits="Resource" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationPolygon" inherits="Resource" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> A node that has methods to draw outlines or use indices of vertices to create navigation polygons. </brief_description> @@ -12,14 +12,14 @@ var outline = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, 50), Vector2(50, 0)]) polygon.add_outline(outline) polygon.make_polygons_from_outlines() - $NavigationRegion2D.navpoly = polygon + $NavigationRegion2D.navigation_polygon = polygon [/gdscript] [csharp] var polygon = new NavigationPolygon(); var outline = new Vector2[] { new Vector2(0, 0), new Vector2(0, 50), new Vector2(50, 50), new Vector2(50, 0) }; polygon.AddOutline(outline); polygon.MakePolygonsFromOutlines(); - GetNode<NavigationRegion2D>("NavigationRegion2D").Navpoly = polygon; + GetNode<NavigationRegion2D>("NavigationRegion2D").NavigationPolygon = polygon; [/csharp] [/codeblocks] Using [method add_polygon] and indices of the vertices array. @@ -30,7 +30,7 @@ polygon.vertices = vertices var indices = PackedInt32Array([0, 1, 2, 3]) polygon.add_polygon(indices) - $NavigationRegion2D.navpoly = polygon + $NavigationRegion2D.navigation_polygon = polygon [/gdscript] [csharp] var polygon = new NavigationPolygon(); @@ -38,7 +38,7 @@ polygon.Vertices = vertices; var indices = new int[] { 0, 1, 2, 3 }; polygon.AddPolygon(indices); - GetNode<NavigationRegion2D>("NavigationRegion2D").Navpoly = polygon; + GetNode<NavigationRegion2D>("NavigationRegion2D").NavigationPolygon = polygon; [/csharp] [/codeblocks] </description> @@ -80,10 +80,10 @@ Clears the array of polygons, but it doesn't clear the array of outlines and vertices. </description> </method> - <method name="get_mesh"> + <method name="get_navigation_mesh"> <return type="NavigationMesh" /> <description> - Returns the [NavigationMesh] resulting from this navigation polygon. This navmesh can be used to update the navmesh of a region with the [method NavigationServer3D.region_set_navmesh] API directly (as 2D uses the 3D server behind the scene). + Returns the [NavigationMesh] resulting from this navigation polygon. This navigation mesh can be used to update the navigation mesh of a region with the [method NavigationServer3D.region_set_navigation_mesh] API directly (as 2D uses the 3D server behind the scene). </description> </method> <method name="get_outline" qualifiers="const"> diff --git a/doc/classes/NavigationRegion2D.xml b/doc/classes/NavigationRegion2D.xml index 0f28081201..8b8793b3b4 100644 --- a/doc/classes/NavigationRegion2D.xml +++ b/doc/classes/NavigationRegion2D.xml @@ -1,12 +1,12 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationRegion2D" inherits="Node2D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationRegion2D" inherits="Node2D" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> A region of the 2D navigation map. </brief_description> <description> A region of the navigation map. It tells the [NavigationServer2D] what can be navigated and what cannot, based on its [NavigationPolygon] resource. Two regions can be connected to each other if they share a similar edge. You can set the minimum distance between two vertices required to connect two edges by using [method NavigationServer2D.map_set_edge_connection_margin]. - [b]Note:[/b] Overlapping two regions' polygons is not enough for connecting two regions. They must share a similar edge. + [b]Note:[/b] Overlapping two regions' navigation polygons is not enough for connecting two regions. They must share a similar edge. The pathfinding cost of entering this region from another region can be controlled with the [member enter_cost] value. [b]Note:[/b] This value is not added to the path cost when the start position is already inside this region. The pathfinding cost of traveling distances inside this region can be controlled with the [member travel_cost] multiplier. @@ -42,16 +42,16 @@ Determines if the [NavigationRegion2D] is enabled or disabled. </member> <member name="enter_cost" type="float" setter="set_enter_cost" getter="get_enter_cost" default="0.0"> - When pathfinding enters this region's navmesh from another regions navmesh the [code]enter_cost[/code] value is added to the path distance for determining the shortest path. + When pathfinding enters this region's navigation mesh from another regions navigation mesh the [code]enter_cost[/code] value is added to the path distance for determining the shortest path. </member> <member name="navigation_layers" type="int" setter="set_navigation_layers" getter="get_navigation_layers" default="1"> A bitfield determining all navigation layers the region belongs to. These navigation layers can be checked upon when requesting a path with [method NavigationServer2D.map_get_path]. </member> - <member name="navpoly" type="NavigationPolygon" setter="set_navigation_polygon" getter="get_navigation_polygon"> + <member name="navigation_polygon" type="NavigationPolygon" setter="set_navigation_polygon" getter="get_navigation_polygon"> The [NavigationPolygon] resource to use. </member> <member name="travel_cost" type="float" setter="set_travel_cost" getter="get_travel_cost" default="1.0"> - When pathfinding moves inside this region's navmesh the traveled distances are multiplied with [code]travel_cost[/code] for determining the shortest path. + When pathfinding moves inside this region's navigation mesh the traveled distances are multiplied with [code]travel_cost[/code] for determining the shortest path. </member> </members> </class> diff --git a/doc/classes/NavigationRegion3D.xml b/doc/classes/NavigationRegion3D.xml index 85f163b3c2..10662db869 100644 --- a/doc/classes/NavigationRegion3D.xml +++ b/doc/classes/NavigationRegion3D.xml @@ -1,12 +1,12 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationRegion3D" inherits="Node3D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationRegion3D" inherits="Node3D" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> A region of the navigation map. </brief_description> <description> A region of the navigation map. It tells the [NavigationServer3D] what can be navigated and what cannot, based on its [NavigationMesh] resource. Two regions can be connected to each other if they share a similar edge. You can set the minimum distance between two vertices required to connect two edges by using [method NavigationServer3D.map_set_edge_connection_margin]. - [b]Note:[/b] Overlapping two regions' navmeshes is not enough for connecting two regions. They must share a similar edge. + [b]Note:[/b] Overlapping two regions' navigation meshes is not enough for connecting two regions. They must share a similar edge. The cost of entering this region from another region can be controlled with the [member enter_cost] value. [b]Note:[/b] This value is not added to the path cost when the start position is already inside this region. The cost of traveling distances inside this region can be controlled with the [member travel_cost] multiplier. @@ -49,16 +49,16 @@ Determines if the [NavigationRegion3D] is enabled or disabled. </member> <member name="enter_cost" type="float" setter="set_enter_cost" getter="get_enter_cost" default="0.0"> - When pathfinding enters this region's navmesh from another regions navmesh the [code]enter_cost[/code] value is added to the path distance for determining the shortest path. + When pathfinding enters this region's navigation mesh from another regions navigation mesh the [code]enter_cost[/code] value is added to the path distance for determining the shortest path. </member> <member name="navigation_layers" type="int" setter="set_navigation_layers" getter="get_navigation_layers" default="1"> A bitfield determining all navigation layers the region belongs to. These navigation layers can be checked upon when requesting a path with [method NavigationServer3D.map_get_path]. </member> - <member name="navmesh" type="NavigationMesh" setter="set_navigation_mesh" getter="get_navigation_mesh"> + <member name="navigation_mesh" type="NavigationMesh" setter="set_navigation_mesh" getter="get_navigation_mesh"> The [NavigationMesh] resource to use. </member> <member name="travel_cost" type="float" setter="set_travel_cost" getter="get_travel_cost" default="1.0"> - When pathfinding moves inside this region's navmesh the traveled distances are multiplied with [code]travel_cost[/code] for determining the shortest path. + When pathfinding moves inside this region's navigation mesh the traveled distances are multiplied with [code]travel_cost[/code] for determining the shortest path. </member> </members> <signals> diff --git a/doc/classes/NavigationServer2D.xml b/doc/classes/NavigationServer2D.xml index 981ab8a5e1..32e48cde54 100644 --- a/doc/classes/NavigationServer2D.xml +++ b/doc/classes/NavigationServer2D.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationServer2D" inherits="Object" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationServer2D" inherits="Object" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> Server interface for low-level 2D navigation access </brief_description> @@ -40,12 +40,12 @@ <method name="agent_set_callback" qualifiers="const"> <return type="void" /> <param index="0" name="agent" type="RID" /> - <param index="1" name="receiver" type="Object" /> + <param index="1" name="object_id" type="int" /> <param index="2" name="method" type="StringName" /> <param index="3" name="userdata" type="Variant" default="null" /> <description> - Callback called at the end of the RVO process. If a callback is created manually and the agent is placed on a navigation map it will calculate avoidance for the agent and dispatch the calculated [code]safe_velocity[/code] to the [param receiver] object with a signal to the chosen [param method] name. - [b]Note:[/b] Created callbacks are always processed independently of the SceneTree state as long as the agent is on a navigation map and not freed. To disable the dispatch of a callback from an agent use [method agent_set_callback] again with a [code]null[/code] object as the [param receiver]. + Sets the callback [param object_id] and [param method] that gets called after each avoidance processing step for the [param agent]. The calculated [code]safe_velocity[/code] will be dispatched with a signal to the object just before the physics calculations. + [b]Note:[/b] Created callbacks are always processed independently of the SceneTree state as long as the agent is on a navigation map and not freed. To disable the dispatch of a callback from an agent use [method agent_set_callback] again with a [code]0[/code] ObjectID as the [param object_id]. </description> </method> <method name="agent_set_map" qualifiers="const"> @@ -167,6 +167,13 @@ Returns the navigation layers for this [code]link[/code]. </description> </method> + <method name="link_get_owner_id" qualifiers="const"> + <return type="int" /> + <param index="0" name="link" type="RID" /> + <description> + Returns the [code]ObjectID[/code] of the object which manages this link. + </description> + </method> <method name="link_get_start_location" qualifiers="const"> <return type="Vector2" /> <param index="0" name="link" type="RID" /> @@ -228,6 +235,14 @@ Set the links's navigation layers. This allows selecting links from a path request (when using [method NavigationServer2D.map_get_path]). </description> </method> + <method name="link_set_owner_id" qualifiers="const"> + <return type="void" /> + <param index="0" name="link" type="RID" /> + <param index="1" name="owner_id" type="int" /> + <description> + Set the [code]ObjectID[/code] of the object which manages this link. + </description> + </method> <method name="link_set_start_location" qualifiers="const"> <return type="void" /> <param index="0" name="link" type="RID" /> @@ -426,6 +441,13 @@ Returns the region's navigation layers. </description> </method> + <method name="region_get_owner_id" qualifiers="const"> + <return type="int" /> + <param index="0" name="region" type="RID" /> + <description> + Returns the [code]ObjectID[/code] of the object which manages this region. + </description> + </method> <method name="region_get_travel_cost" qualifiers="const"> <return type="float" /> <param index="0" name="region" type="RID" /> @@ -467,12 +489,20 @@ Set the region's navigation layers. This allows selecting regions from a path request (when using [method NavigationServer2D.map_get_path]). </description> </method> - <method name="region_set_navpoly" qualifiers="const"> + <method name="region_set_navigation_polygon" qualifiers="const"> + <return type="void" /> + <param index="0" name="region" type="RID" /> + <param index="1" name="navigation_polygon" type="NavigationPolygon" /> + <description> + Sets the [param navigation_polygon] for the region. + </description> + </method> + <method name="region_set_owner_id" qualifiers="const"> <return type="void" /> <param index="0" name="region" type="RID" /> - <param index="1" name="nav_poly" type="NavigationPolygon" /> + <param index="1" name="owner_id" type="int" /> <description> - Sets the navigation mesh for the region. + Set the [code]ObjectID[/code] of the object which manages this region. </description> </method> <method name="region_set_transform" qualifiers="const"> diff --git a/doc/classes/NavigationServer3D.xml b/doc/classes/NavigationServer3D.xml index 943aa03ef7..c156dfac16 100644 --- a/doc/classes/NavigationServer3D.xml +++ b/doc/classes/NavigationServer3D.xml @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8" ?> -<class name="NavigationServer3D" inherits="Object" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> +<class name="NavigationServer3D" inherits="Object" is_experimental="true" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> Server interface for low-level 3D navigation access </brief_description> @@ -40,12 +40,12 @@ <method name="agent_set_callback" qualifiers="const"> <return type="void" /> <param index="0" name="agent" type="RID" /> - <param index="1" name="receiver" type="Object" /> + <param index="1" name="object_id" type="int" /> <param index="2" name="method" type="StringName" /> <param index="3" name="userdata" type="Variant" default="null" /> <description> - Callback called at the end of the RVO process. If a callback is created manually and the agent is placed on a navigation map it will calculate avoidance for the agent and dispatch the calculated [code]safe_velocity[/code] to the [param receiver] object with a signal to the chosen [param method] name. - [b]Note:[/b] Created callbacks are always processed independently of the SceneTree state as long as the agent is on a navigation map and not freed. To disable the dispatch of a callback from an agent use [method agent_set_callback] again with a [code]null[/code] object as the [param receiver]. + Sets the callback [param object_id] and [param method] that gets called after each avoidance processing step for the [param agent]. The calculated [code]safe_velocity[/code] will be dispatched with a signal to the object just before the physics calculations. + [b]Note:[/b] Created callbacks are always processed independently of the SceneTree state as long as the agent is on a navigation map and not freed. To disable the dispatch of a callback from an agent use [method agent_set_callback] again with a [code]0[/code] ObjectID as the [param object_id]. </description> </method> <method name="agent_set_map" qualifiers="const"> @@ -167,6 +167,13 @@ Returns the navigation layers for this [code]link[/code]. </description> </method> + <method name="link_get_owner_id" qualifiers="const"> + <return type="int" /> + <param index="0" name="link" type="RID" /> + <description> + Returns the [code]ObjectID[/code] of the object which manages this link. + </description> + </method> <method name="link_get_start_location" qualifiers="const"> <return type="Vector3" /> <param index="0" name="link" type="RID" /> @@ -228,6 +235,14 @@ Set the links's navigation layers. This allows selecting links from a path request (when using [method NavigationServer3D.map_get_path]). </description> </method> + <method name="link_set_owner_id" qualifiers="const"> + <return type="void" /> + <param index="0" name="link" type="RID" /> + <param index="1" name="owner_id" type="int" /> + <description> + Set the [code]ObjectID[/code] of the object which manages this link. + </description> + </method> <method name="link_set_start_location" qualifiers="const"> <return type="void" /> <param index="0" name="link" type="RID" /> @@ -418,12 +433,12 @@ Queries a path in a given navigation map. Start and target position and other parameters are defined through [NavigationPathQueryParameters3D]. Updates the provided [NavigationPathQueryResult3D] result object with the path among other results requested by the query. </description> </method> - <method name="region_bake_navmesh" qualifiers="const"> + <method name="region_bake_navigation_mesh" qualifiers="const"> <return type="void" /> - <param index="0" name="mesh" type="NavigationMesh" /> - <param index="1" name="node" type="Node" /> + <param index="0" name="navigation_mesh" type="NavigationMesh" /> + <param index="1" name="root_node" type="Node" /> <description> - Bakes the navigation mesh. + Bakes the [param navigation_mesh] with bake source geometry collected starting from the [param root_node]. </description> </method> <method name="region_create" qualifiers="const"> @@ -476,6 +491,13 @@ Returns the region's navigation layers. </description> </method> + <method name="region_get_owner_id" qualifiers="const"> + <return type="int" /> + <param index="0" name="region" type="RID" /> + <description> + Returns the [code]ObjectID[/code] of the object which manages this region. + </description> + </method> <method name="region_get_travel_cost" qualifiers="const"> <return type="float" /> <param index="0" name="region" type="RID" /> @@ -517,14 +539,22 @@ Set the region's navigation layers. This allows selecting regions from a path request (when using [method NavigationServer3D.map_get_path]). </description> </method> - <method name="region_set_navmesh" qualifiers="const"> + <method name="region_set_navigation_mesh" qualifiers="const"> <return type="void" /> <param index="0" name="region" type="RID" /> - <param index="1" name="nav_mesh" type="NavigationMesh" /> + <param index="1" name="navigation_mesh" type="NavigationMesh" /> <description> Sets the navigation mesh for the region. </description> </method> + <method name="region_set_owner_id" qualifiers="const"> + <return type="void" /> + <param index="0" name="region" type="RID" /> + <param index="1" name="owner_id" type="int" /> + <description> + Set the [code]ObjectID[/code] of the object which manages this region. + </description> + </method> <method name="region_set_transform" qualifiers="const"> <return type="void" /> <param index="0" name="region" type="RID" /> diff --git a/doc/classes/Node.xml b/doc/classes/Node.xml index b83bff5d5e..24df5977f9 100644 --- a/doc/classes/Node.xml +++ b/doc/classes/Node.xml @@ -384,8 +384,11 @@ <method name="get_path_to" qualifiers="const"> <return type="NodePath" /> <param index="0" name="node" type="Node" /> + <param index="1" name="use_unique_path" type="bool" default="false" /> <description> Returns the relative [NodePath] from this node to the specified [param node]. Both nodes must be in the same scene or the function will fail. + If [param use_unique_path] is [code]true[/code], returns the shortest path considering unique node. + [b]Note:[/b] If you get a relative path which starts from a unique node, the path may be longer than a normal relative path due to the addition of the unique node's name. </description> </method> <method name="get_physics_process_delta_time" qualifiers="const"> @@ -535,7 +538,7 @@ [b]Note:[/b] Internal children can only be moved within their expected "internal range" (see [code]internal[/code] parameter in [method add_child]). </description> </method> - <method name="print_orphan_nodes"> + <method name="print_orphan_nodes" qualifiers="static"> <return type="void" /> <description> Prints all orphan nodes (nodes outside the [SceneTree]). Used for debugging. @@ -606,7 +609,7 @@ <return type="void" /> <param index="0" name="group" type="StringName" /> <description> - Removes a node from a group. See notes in the description, and the group methods in [SceneTree]. + Removes a node from the [param group]. Does nothing if the node is not in the [param group]. See notes in the description, and the group methods in [SceneTree]. </description> </method> <method name="replace_by"> @@ -991,7 +994,7 @@ <constant name="DUPLICATE_SCRIPTS" value="4" enum="DuplicateFlags"> Duplicate the node's scripts. </constant> - <constant name="DUPLICATE_USE_INSTANCING" value="8" enum="DuplicateFlags"> + <constant name="DUPLICATE_USE_INSTANTIATION" value="8" enum="DuplicateFlags"> Duplicate using instancing. An instance stays linked to the original so when the original changes, the instance changes too. </constant> diff --git a/doc/classes/Node2D.xml b/doc/classes/Node2D.xml index 054ab532af..9d224f09b1 100644 --- a/doc/classes/Node2D.xml +++ b/doc/classes/Node2D.xml @@ -99,6 +99,9 @@ <member name="global_rotation" type="float" setter="set_global_rotation" getter="get_global_rotation"> Global rotation in radians. </member> + <member name="global_rotation_degrees" type="float" setter="set_global_rotation_degrees" getter="get_global_rotation_degrees"> + Helper property to access [member global_rotation] in degrees instead of radians. + </member> <member name="global_scale" type="Vector2" setter="set_global_scale" getter="get_global_scale"> Global scale. </member> @@ -114,6 +117,9 @@ <member name="rotation" type="float" setter="set_rotation" getter="get_rotation" default="0.0"> Rotation in radians, relative to the node's parent. </member> + <member name="rotation_degrees" type="float" setter="set_rotation_degrees" getter="get_rotation_degrees"> + Helper property to access [member rotation] in degrees instead of radians. + </member> <member name="scale" type="Vector2" setter="set_scale" getter="get_scale" default="Vector2(1, 1)"> The node's scale. Unscaled value: [code](1, 1)[/code]. [b]Note:[/b] Negative X scales in 2D are not decomposable from the transformation matrix. Due to the way scale is represented with transformation matrices in Godot, negative scales on the X axis will be changed to negative scales on the Y axis and a rotation of 180 degrees when decomposed. @@ -125,15 +131,5 @@ <member name="transform" type="Transform2D" setter="set_transform" getter="get_transform"> Local [Transform2D]. </member> - <member name="y_sort_enabled" type="bool" setter="set_y_sort_enabled" getter="is_y_sort_enabled" default="false"> - If [code]true[/code], child nodes with the lowest Y position are drawn before those with a higher Y position. If [code]false[/code], Y-sorting is disabled. Y-sorting only affects children that inherit from [CanvasItem]. - You can nest nodes with Y-sorting. Child Y-sorted nodes are sorted in the same space as the parent Y-sort. This feature allows you to organize a scene better or divide it into multiple ones without changing your scene tree. - </member> - <member name="z_as_relative" type="bool" setter="set_z_as_relative" getter="is_z_relative" default="true"> - If [code]true[/code], the node's Z index is relative to its parent's Z index. If this node's Z index is 2 and its parent's effective Z index is 3, then this node's effective Z index will be 2 + 3 = 5. - </member> - <member name="z_index" type="int" setter="set_z_index" getter="get_z_index" default="0"> - Z index. Controls the order in which the nodes render. A node with a higher Z index will display in front of others. Must be between [constant RenderingServer.CANVAS_ITEM_Z_MIN] and [constant RenderingServer.CANVAS_ITEM_Z_MAX] (inclusive). - </member> </members> </class> diff --git a/doc/classes/Node3D.xml b/doc/classes/Node3D.xml index b6024b1887..1aa71113e9 100644 --- a/doc/classes/Node3D.xml +++ b/doc/classes/Node3D.xml @@ -274,6 +274,9 @@ Rotation part of the global transformation in radians, specified in terms of YXZ-Euler angles in the format (X angle, Y angle, Z angle). [b]Note:[/b] In the mathematical sense, rotation is a matrix and not a vector. The three Euler angles, which are the three independent parameters of the Euler-angle parametrization of the rotation matrix, are stored in a [Vector3] data structure not because the rotation is a vector, but only because [Vector3] exists as a convenient data-structure to store 3 floating-point numbers. Therefore, applying affine operations on the rotation "vector" is not meaningful. </member> + <member name="global_rotation_degrees" type="Vector3" setter="set_global_rotation_degrees" getter="get_global_rotation_degrees"> + Helper property to access [member global_rotation] in degrees instead of radians. + </member> <member name="global_transform" type="Transform3D" setter="set_global_transform" getter="get_global_transform"> World3D space (global) [Transform3D] of this node. </member> @@ -287,6 +290,9 @@ Rotation part of the local transformation in radians, specified in terms of Euler angles. The angles construct a rotaton in the order specified by the [member rotation_order] property. [b]Note:[/b] In the mathematical sense, rotation is a matrix and not a vector. The three Euler angles, which are the three independent parameters of the Euler-angle parametrization of the rotation matrix, are stored in a [Vector3] data structure not because the rotation is a vector, but only because [Vector3] exists as a convenient data-structure to store 3 floating-point numbers. Therefore, applying affine operations on the rotation "vector" is not meaningful. </member> + <member name="rotation_degrees" type="Vector3" setter="set_rotation_degrees" getter="get_rotation_degrees"> + Helper property to access [member rotation] in degrees instead of radians. + </member> <member name="rotation_edit_mode" type="int" setter="set_rotation_edit_mode" getter="get_rotation_edit_mode" enum="Node3D.RotationEditMode" default="0"> Specify how rotation (and scale) will be presented in the editor. </member> diff --git a/doc/classes/NodePath.xml b/doc/classes/NodePath.xml index 022b4826ea..c82ed5f143 100644 --- a/doc/classes/NodePath.xml +++ b/doc/classes/NodePath.xml @@ -187,12 +187,14 @@ <return type="bool" /> <param index="0" name="right" type="NodePath" /> <description> + Returns [code]true[/code] if two node paths are not equal. </description> </operator> <operator name="operator =="> <return type="bool" /> <param index="0" name="right" type="NodePath" /> <description> + Returns [code]true[/code] if two node paths are equal, i.e. all node names in the path are the same and in the same order. </description> </operator> </operators> diff --git a/doc/classes/OS.xml b/doc/classes/OS.xml index f4a5288481..0efc6ab399 100644 --- a/doc/classes/OS.xml +++ b/doc/classes/OS.xml @@ -182,10 +182,12 @@ <method name="get_cmdline_user_args"> <return type="PackedStringArray" /> <description> - Similar to [method get_cmdline_args], but this returns the user arguments (any argument passed after the double dash [code]--[/code] argument). These are left untouched by Godot for the user. + Similar to [method get_cmdline_args], but this returns the user arguments (any argument passed after the double dash [code]--[/code] or double plus [code]++[/code] argument). These are left untouched by Godot for the user. [code]++[/code] can be used in situations where [code]--[/code] is intercepted by another program (such as [code]startx[/code]). For example, in the command line below, [code]--fullscreen[/code] will not be returned in [method get_cmdline_user_args] and [code]--level 1[/code] will only be returned in [method get_cmdline_user_args]: [codeblock] godot --fullscreen -- --level 1 + # Or: + godot --fullscreen ++ --level 1 [/codeblock] </description> </method> @@ -392,18 +394,38 @@ <method name="get_system_font_path" qualifiers="const"> <return type="String" /> <param index="0" name="font_name" type="String" /> - <param index="1" name="bold" type="bool" default="false" /> - <param index="2" name="italic" type="bool" default="false" /> + <param index="1" name="weight" type="int" default="400" /> + <param index="2" name="stretch" type="int" default="100" /> + <param index="3" name="italic" type="bool" default="false" /> <description> - Returns path to the system font file with [param font_name] and style. Return empty string if no matching fonts found. - [b]Note:[/b] This method is implemented on iOS, Linux, macOS and Windows. + Returns path to the system font file with [param font_name] and style. Returns empty string if no matching fonts found. + The following aliases can be used to request default fonts: "sans-serif", "serif", "monospace", "cursive", and "fantasy". + [b]Note:[/b] Returned font might have different style if the requested style is not available. + [b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and Windows. + </description> + </method> + <method name="get_system_font_path_for_text" qualifiers="const"> + <return type="PackedStringArray" /> + <param index="0" name="font_name" type="String" /> + <param index="1" name="text" type="String" /> + <param index="2" name="locale" type="String" default="""" /> + <param index="3" name="script" type="String" default="""" /> + <param index="4" name="weight" type="int" default="400" /> + <param index="5" name="stretch" type="int" default="100" /> + <param index="6" name="italic" type="bool" default="false" /> + <description> + Returns an array of the system substitute font file paths, which are similar to the font with [param font_name] and style for the specified text, locale and script. Returns empty array if no matching fonts found. + The following aliases can be used to request default fonts: "sans-serif", "serif", "monospace", "cursive", and "fantasy". + [b]Note:[/b] Depending on OS, it's not guaranteed that any of the returned fonts is suitable for rendering specified text. Fonts should be loaded and checked in the order they are returned, and the first suitable one used. + [b]Note:[/b] Returned fonts might have different style if the requested style is not available or belong to a different font family. + [b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and Windows. </description> </method> <method name="get_system_fonts" qualifiers="const"> <return type="PackedStringArray" /> <description> Returns list of font family names available. - [b]Note:[/b] This method is implemented on iOS, Linux, macOS and Windows. + [b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and Windows. </description> </method> <method name="get_thread_caller_id" qualifiers="const"> @@ -467,7 +489,7 @@ <return type="bool" /> <param index="0" name="tag_name" type="String" /> <description> - Returns [code]true[/code] if the feature for the given feature tag is supported in the currently running instance, depending on the platform, build, etc. Can be used to check whether you're currently running a debug build, on a certain platform or arch, etc. Refer to the [url=$DOCS_URL/getting_started/workflow/export/feature_tags.html]Feature Tags[/url] documentation for more details. + Returns [code]true[/code] if the feature for the given feature tag is supported in the currently running instance, depending on the platform, build, etc. Can be used to check whether you're currently running a debug build, on a certain platform or arch, etc. Refer to the [url=$DOCS_URL/tutorials/export/feature_tags.html]Feature Tags[/url] documentation for more details. [b]Note:[/b] Tag names are case-sensitive. </description> </method> diff --git a/doc/classes/Object.xml b/doc/classes/Object.xml index 318f2cfade..e015bec134 100644 --- a/doc/classes/Object.xml +++ b/doc/classes/Object.xml @@ -1,33 +1,27 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="Object" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> - Base class for all non-built-in types. + Base class for all other classes in the engine. </brief_description> <description> - Every class which is not a built-in type inherits from this class. - You can construct Objects from scripting languages, using [code]Object.new()[/code] in GDScript, or [code]new Object[/code] in C#. - Objects do not manage memory. If a class inherits from Object, you will have to delete instances of it manually. To do so, call the [method free] method from your script or delete the instance from C++. - Some classes that extend Object add memory management. This is the case of [RefCounted], which counts references and deletes itself automatically when no longer referenced. [Node], another fundamental type, deletes all its children when freed from memory. - Objects export properties, which are mainly useful for storage and editing, but not really so much in programming. Properties are exported in [method _get_property_list] and handled in [method _get] and [method _set]. However, scripting languages and C++ have simpler means to export them. - Property membership can be tested directly in GDScript using [code]in[/code]: - [codeblocks] - [gdscript] - var n = Node2D.new() - print("position" in n) # Prints "true". - print("other_property" in n) # Prints "false". - [/gdscript] - [csharp] - var node = new Node2D(); - // C# has no direct equivalent to GDScript's `in` operator here, but we - // can achieve the same behavior by performing `Get` with a null check. - GD.Print(node.Get("position") != null); // Prints "true". - GD.Print(node.Get("other_property") != null); // Prints "false". - [/csharp] - [/codeblocks] - The [code]in[/code] operator will evaluate to [code]true[/code] as long as the key exists, even if the value is [code]null[/code]. - Objects also receive notifications. Notifications are a simple way to notify the object about different events, so they can all be handled together. See [method _notification]. - [b]Note:[/b] Unlike references to a [RefCounted], references to an Object stored in a variable can become invalid without warning. Therefore, it's recommended to use [RefCounted] for data classes instead of [Object]. - [b]Note:[/b] The [code]script[/code] property is not exposed like most properties, but it does have a setter and getter ([code]set_script()[/code] and [code]get_script()[/code]). + An advanced [Variant] type. All classes in the engine inherit from Object. Each class may define new properties, methods or signals, which are available to all inheriting classes. For example, a [Sprite2D] instance is able to call [method Node.add_child] because it inherits from [Node]. + You can create new instances, using [code]Object.new()[/code] in GDScript, or [code]new Object[/code] in C#. + To delete an Object instance, call [method free]. This is necessary for most classes inheriting Object, because they do not manage memory on their own, and will otherwise cause memory leaks when no longer in use. There are a few classes that perform memory management. For example, [RefCounted] (and by extension [Resource]) deletes itself when no longer referenced, and [Node] deletes its children when freed. + Objects can have a [Script] attached to them. Once the [Script] is instantiated, it effectively acts as an extension to the base class, allowing it to define and inherit new properties, methods and signals. + Inside a [Script], [method _get_property_list] may be overridden to customize properties in several ways. This allows them to be available to the editor, display as lists of options, sub-divide into groups, save on disk, etc. Scripting languages offer easier ways to customize properties, such as with the [annotation @GDScript.@export] annotation. + Godot is very dynamic. An object's script, and therefore its properties, methods and signals, can be changed at run-time. Because of this, there can be occasions where, for example, a property required by a method may not exist. To prevent run-time errors, see methods such as [method set], [method get], [method call], [method has_method], [method has_signal], etc. Note that these methods are [b]much[/b] slower than direct references. + In GDScript, you can also check if a given property, method, or signal name exists in an object with the [code]in[/code] operator: + [codeblock] + var node = Node.new() + print("name" in node) # Prints true + print("get_parent" in node) # Prints true + print("tree_entered" in node) # Prints true + print("unknown" in node) # Prints false + [/codeblock] + Notifications are [int] constants commonly sent and received by objects. For example, on every rendered frame, the [SceneTree] notifies nodes inside the tree with a [constant Node.NOTIFICATION_PROCESS]. The nodes receive it and may call [method Node._process] to update. To make use of notifications, see [method notification] and [method _notification]. + Lastly, every object can also contain metadata (data about data). [method set_meta] can be useful to store information that the object itself does not depend on. To keep your code clean, making excessive use of metadata is discouraged. + [b]Note:[/b] Unlike references to a [RefCounted], references to an object stored in a variable can become invalid without being set to [code]null[/code]. To check if an object has been deleted, do [i]not[/i] compare it against [code]null[/code]. Instead, use [method @GlobalScope.is_instance_valid]. It's also recommended to inherit from [RefCounted] for classes storing data instead of [Object]. + [b]Note:[/b] The [code]script[/code] is not exposed like most properties. To set or get an object's [Script] in code, use [method set_script] and [method get_script], respectively. </description> <tutorials> <link title="When and how to avoid using nodes for everything">$DOCS_URL/tutorials/best_practices/node_alternatives.html</link> @@ -38,46 +32,174 @@ <return type="Variant" /> <param index="0" name="property" type="StringName" /> <description> - Virtual method which can be overridden to customize the return value of [method get]. - Returns the given property. Returns [code]null[/code] if the [param property] does not exist. + Override this method to customize the behavior of [method get]. Should return the given [param property]'s value, or [code]null[/code] if the [param property] should be handled normally. + Combined with [method _set] and [method _get_property_list], this method allows defining custom properties, which is particularly useful for editor plugins. Note that a property must be present in [method get_property_list], otherwise this method will not be called. + [codeblocks] + [gdscript] + func _get(property): + if (property == "fake_property"): + print("Getting my property!") + return 4 + + func _get_property_list(): + return [ + { "name": "fake_property", "type": TYPE_INT } + ] + [/gdscript] + [csharp] + public override Variant _Get(StringName property) + { + if (property == "FakeProperty") + { + GD.Print("Getting my property!"); + return 4; + } + return default; + } + + public override Godot.Collections.Array<Godot.Collections.Dictionary> _GetPropertyList() + { + return new Godot.Collections.Array<Godot.Collections.Dictionary>() + { + new Godot.Collections.Dictionary() + { + { "name", "FakeProperty" }, + { "type", (int)Variant.Type.Int } + } + }; + } + [/csharp] + [/codeblocks] </description> </method> <method name="_get_property_list" qualifiers="virtual"> <return type="Dictionary[]" /> <description> - Virtual method which can be overridden to customize the return value of [method get_property_list]. - Returns the object's property list as an [Array] of dictionaries. - Each property's [Dictionary] must contain at least [code]name: String[/code] and [code]type: int[/code] (see [enum Variant.Type]) entries. Optionally, it can also include [code]hint: int[/code] (see [enum PropertyHint]), [code]hint_string: String[/code], and [code]usage: int[/code] (see [enum PropertyUsageFlags]). + Override this method to customize how script properties should be handled by the engine. + Should return a property list, as an [Array] of dictionaries. The result is added to the array of [method get_property_list], and should be formatted in the same way. Each [Dictionary] must at least contain the [code]name[/code] and [code]type[/code] entries. + The example below displays [code]hammer_type[/code] in the Inspector dock, only if [code]holding_hammer[/code] is [code]true[/code]: + [codeblocks] + [gdscript] + @tool + extends Node2D + + @export var holding_hammer = false: + set(value): + holding_hammer = value + notify_property_list_changed() + var hammer_type = 0 + + func _get_property_list(): + # By default, `hammer_type` is not visible in the editor. + var property_usage = PROPERTY_USAGE_NO_EDITOR + + if holding_hammer: + property_usage = PROPERTY_USAGE_DEFAULT + + var properties = [] + properties.append({ + "name": "hammer_type", + "type": TYPE_INT, + "usage": property_usage, # See above assignment. + "hint": PROPERTY_HINT_ENUM, + "hint_string": "Wooden,Iron,Golden,Enchanted" + }) + + return properties + [/gdscript] + [csharp] + [Tool] + public class MyNode2D : Node2D + { + private bool _holdingHammer; + + [Export] + public bool HoldingHammer + { + get => _holdingHammer; + set + { + _holdingHammer = value; + NotifyPropertyListChanged(); + } + } + + public int HammerType { get; set; } + + public override Godot.Collections.Array<Godot.Collections.Dictionary> _GetPropertyList() + { + // By default, `HammerType` is not visible in the editor. + var propertyUsage = PropertyUsageFlags.NoEditor; + + if (HoldingHammer) + { + propertyUsage = PropertyUsageFlags.Default; + } + + var properties = new Godot.Collections.Array<Godot.Collections.Dictionary>(); + properties.Add(new Godot.Collections.Dictionary() + { + { "name", "HammerType" }, + { "type", (int)Variant.Type.Int }, + { "usage", (int)propertyUsage }, // See above assignment. + { "hint", (int)PropertyHint.Enum }, + { "hint_string", "Wooden,Iron,Golden,Enchanted" } + }); + + return properties; + } + } + [/csharp] + [/codeblocks] + [b]Note:[/b] This method is intended for advanced purposes. For most common use cases, the scripting languages offer easier ways to handle properties. See [annotation @GDScript.@export], [annotation @GDScript.@export_enum], [annotation @GDScript.@export_group], etc. + [b]Note:[/b] If the object's script is not [annotation @GDScript.@tool], this method will not be called in the editor. </description> </method> <method name="_init" qualifiers="virtual"> <return type="void" /> <description> - Called when the object is initialized in memory. Can be defined to take in parameters, that are passed in when constructing. - [b]Note:[/b] If [method _init] is defined with required parameters, then explicit construction is the only valid means of creating an Object of the class. If any other means (such as [method PackedScene.instantiate]) is used, then initialization will fail. + Called when the object's script is instantiated, oftentimes after the object is initialized in memory (through [code]Object.new()[/code] in GDScript, or [code]new Object[/code] in C#). It can be also defined to take in parameters. This method is similar to a constructor in most programming languages. + [b]Note:[/b] If [method _init] is defined with [i]required[/i] parameters, the Object with script may only be created directly. If any other means (such as [method PackedScene.instantiate] or [method Node.duplicate]) are used, the script's initialization will fail. </description> </method> <method name="_notification" qualifiers="virtual"> <return type="void" /> <param index="0" name="what" type="int" /> <description> - Called whenever the object receives a notification, which is identified in [param what] by a constant. The base [Object] has two constants [constant NOTIFICATION_POSTINITIALIZE] and [constant NOTIFICATION_PREDELETE], but subclasses such as [Node] define a lot more notifications which are also received by this method. + Called when the object receives a notification, which can be identified in [param what] by comparing it with a constant. See also [method notification]. + [codeblocks] + [gdscript] + func _notification(what): + if what == NOTIFICATION_PREDELETE: + print("Goodbye!") + [/gdscript] + [csharp] + public override void _Notification(long what) + { + if (what == NotificationPredelete) + { + GD.Print("Goodbye!"); + } + } + [/csharp] + [/codeblocks] + [b]Note:[/b] The base [Object] defines a few notifications ([constant NOTIFICATION_POSTINITIALIZE] and [constant NOTIFICATION_PREDELETE]). Inheriting classes such as [Node] define a lot more notifications, which are also received by this method. </description> </method> <method name="_property_can_revert" qualifiers="virtual"> <return type="bool" /> <param index="0" name="property" type="StringName" /> <description> - Virtual methods that can be overridden to customize the property revert behavior in the editor. - Returns [code]true[/code] if the property identified by [code]name[/code] can be reverted to a default value. Override [method _property_get_revert] to return the actual value. + Override this method to customize the given [param property]'s revert behavior. Should return [code]true[/code] if the [param property] can be reverted in the Inspector dock. Use [method _property_get_revert] to specify the [param property]'s default value. + [b]Note:[/b] This method must return consistently, regardless of the current value of the [param property]. </description> </method> <method name="_property_get_revert" qualifiers="virtual"> <return type="Variant" /> <param index="0" name="property" type="StringName" /> <description> - Virtual methods that can be overridden to customize the property revert behavior in the editor. - Returns the default value of the property identified by [code]name[/code]. [method _property_can_revert] must be overridden as well for this method to be called. + Override this method to customize the given [param property]'s revert behavior. Should return the default value for the [param property]. If the default value differs from the [param property]'s current value, a revert icon is displayed in the Inspector dock. + [b]Note:[/b] [method _property_can_revert] must also be overridden for this method to be called. </description> </method> <method name="_set" qualifiers="virtual"> @@ -85,15 +207,58 @@ <param index="0" name="property" type="StringName" /> <param index="1" name="value" type="Variant" /> <description> - Virtual method which can be overridden to customize the return value of [method set]. - Sets a property. Returns [code]true[/code] if the [param property] exists. + Override this method to customize the behavior of [method set]. Should set the [param property] to [param value] and return [code]true[/code], or [code]false[/code] if the [param property] should be handled normally. The [i]exact[/i] way to set the [param property] is up to this method's implementation. + Combined with [method _get] and [method _get_property_list], this method allows defining custom properties, which is particularly useful for editor plugins. Note that a property [i]must[/i] be present in [method get_property_list], otherwise this method will not be called. + [codeblocks] + [gdscript] + func _set(property, value): + if (property == "fake_property"): + print("Setting my property to ", value) + + func _get_property_list(): + return [ + { "name": "fake_property", "type": TYPE_INT } + ] + [/gdscript] + [csharp] + public override void _Set(StringName property, Variant value) + { + if (property == "FakeProperty") + { + GD.Print($"Setting my property to {value}"); + return true; + } + + return false; + } + + public override Godot.Collections.Array<Godot.Collections.Dictionary> _GetPropertyList() + { + return new Godot.Collections.Array<Godot.Collections.Dictionary>() + { + new Godot.Collections.Dictionary() + { + { "name", "FakeProperty" }, + { "type", (int)Variant.Type.Int } + } + }; + } + [/csharp] + [/codeblocks] </description> </method> <method name="_to_string" qualifiers="virtual"> <return type="String" /> <description> - Virtual method which can be overridden to customize the return value of [method to_string], and thus the object's representation where it is converted to a string, e.g. with [code]print(obj)[/code]. - Returns a [String] representing the object. If not overridden, defaults to [code]"[ClassName:RID]"[/code]. + Override this method to customize the return value of [method to_string], and therefore the object's representation as a [String]. + [codeblock] + func _to_string(): + return "Welcome to Godot 4!" + + func _init(): + print(self) # Prints Welcome to Godot 4!" + var a = str(self) # a is "Welcome to Godot 4!" + [/codeblock] </description> </method> <method name="add_user_signal"> @@ -101,15 +266,37 @@ <param index="0" name="signal" type="String" /> <param index="1" name="arguments" type="Array" default="[]" /> <description> - Adds a user-defined [param signal]. Arguments are optional, but can be added as an [Array] of dictionaries, each containing [code]name: String[/code] and [code]type: int[/code] (see [enum Variant.Type]) entries. + Adds a user-defined [param signal]. Optional arguments for the signal can be added as an [Array] of dictionaries, each defining a [code]name[/code] [String] and a [code]type[/code] [int] (see [enum Variant.Type]). See also [method has_user_signal]. + [codeblocks] + [gdscript] + add_user_signal("hurt", [ + { "name": "damage", "type": TYPE_INT }, + { "name": "source", "type": TYPE_OBJECT } + ]) + [/gdscript] + [csharp] + AddUserSignal("Hurt", new Godot.Collections.Array() + { + new Godot.Collections.Dictionary() + { + { "name", "damage" }, + { "type", (int)Variant.Type.Int } + }, + new Godot.Collections.Dictionary() + { + { "name", "source" }, + { "type", (int)Variant.Type.Object } + } + }); + [/csharp] + [/codeblocks] </description> </method> <method name="call" qualifiers="vararg"> <return type="Variant" /> <param index="0" name="method" type="StringName" /> <description> - Calls the [param method] on the object and returns the result. This method supports a variable number of arguments, so parameters are passed as a comma separated list. - [b]Example:[/b] + Calls the [param method] on the object and returns the result. This method supports a variable number of arguments, so parameters can be passed as a comma separated list. [codeblocks] [gdscript] var node = Node3D.new() @@ -120,15 +307,14 @@ node.Call("rotate", new Vector3(1f, 0f, 0f), 1.571f); [/csharp] [/codeblocks] - [b]Note:[/b] In C#, the method name must be specified as snake_case if it is defined by a built-in Godot node. This doesn't apply to user-defined methods where you should use the same convention as in the C# source (typically PascalCase). + [b]Note:[/b] In C#, [param method] must be in snake_case when referring to built-in Godot methods. Prefer using the names exposed in the [code]MethodName[/code] class to avoid allocating a new [StringName] on each call. </description> </method> <method name="call_deferred" qualifiers="vararg"> <return type="Variant" /> <param index="0" name="method" type="StringName" /> <description> - Calls the [param method] on the object during idle time. This method supports a variable number of arguments, so parameters are passed as a comma separated list. - [b]Example:[/b] + Calls the [param method] on the object during idle time. This method supports a variable number of arguments, so parameters can be passed as a comma separated list. [codeblocks] [gdscript] var node = Node3D.new() @@ -139,7 +325,7 @@ node.CallDeferred("rotate", new Vector3(1f, 0f, 0f), 1.571f); [/csharp] [/codeblocks] - [b]Note:[/b] In C#, the method name must be specified as snake_case if it is defined by a built-in Godot node. This doesn't apply to user-defined methods where you should use the same convention as in the C# source (typically PascalCase). + [b]Note:[/b] In C#, [param method] must be in snake_case when referring to built-in Godot methods. Prefer using the names exposed in the [code]MethodName[/code] class to avoid allocating a new [StringName] on each call. </description> </method> <method name="callv"> @@ -147,7 +333,7 @@ <param index="0" name="method" type="StringName" /> <param index="1" name="arg_array" type="Array" /> <description> - Calls the [param method] on the object and returns the result. Contrarily to [method call], this method does not support a variable number of arguments but expects all parameters to be via a single [Array]. + Calls the [param method] on the object and returns the result. Unlike [method call], this method expects all parameters to be contained inside [param arg_array]. [codeblocks] [gdscript] var node = Node3D.new() @@ -158,12 +344,13 @@ node.Callv("rotate", new Godot.Collections.Array { new Vector3(1f, 0f, 0f), 1.571f }); [/csharp] [/codeblocks] + [b]Note:[/b] In C#, [param method] must be in snake_case when referring to built-in Godot methods. Prefer using the names exposed in the [code]MethodName[/code] class to avoid allocating a new [StringName] on each call </description> </method> <method name="can_translate_messages" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if the object can translate strings. See [method set_message_translation] and [method tr]. + Returns [code]true[/code] if the object is allowed to translate messages with [method tr] and [method tr_n]. See also [method set_message_translation]. </description> </method> <method name="connect"> @@ -172,23 +359,23 @@ <param index="1" name="callable" type="Callable" /> <param index="2" name="flags" type="int" default="0" /> <description> - Connects a [param signal] to a [param callable]. Use [param flags] to set deferred or one-shot connections. See [enum ConnectFlags] constants. - A signal can only be connected once to a [Callable]. It will print an error if already connected, unless the signal was connected with [constant CONNECT_REFERENCE_COUNTED]. To avoid this, first, use [method is_connected] to check for existing connections. - If the callable's target is destroyed in the game's lifecycle, the connection will be lost. + Connects a [param signal] by name to a [param callable]. Optional [param flags] can be also added to configure the connection's behavior (see [enum ConnectFlags] constants). + A signal can only be connected once to the same [Callable]. If the signal is already connected, this method returns [constant ERR_INVALID_PARAMETER] and pushes an error message, unless the signal is connected with [constant CONNECT_REFERENCE_COUNTED]. To prevent this, use [method is_connected] first to check for existing connections. + If the [param callable]'s object is freed, the connection will be lost. [b]Examples with recommended syntax:[/b] - Connecting signals is one of the most common operations in Godot and the API gives many options to do so, which are described further down. The code block below shows the recommended approach for both GDScript and C#. + Connecting signals is one of the most common operations in Godot and the API gives many options to do so, which are described further down. The code block below shows the recommended approach. [codeblocks] [gdscript] func _ready(): var button = Button.new() - # `button_down` here is a Signal object, and we thus call the Signal.connect() method, - # not Object.connect(). See discussion below for a more in-depth overview of the API. + # `button_down` here is a Signal variant type, and we thus call the Signal.connect() method, not Object.connect(). + # See discussion below for a more in-depth overview of the API. button.button_down.connect(_on_button_down) - # This assumes that a `Player` class exists which defines a `hit` signal. + # This assumes that a `Player` class exists, which defines a `hit` signal. var player = Player.new() - # We use Signal.connect() again, and we also use the Callable.bind() method which - # returns a new Callable with the parameter binds. + # We use Signal.connect() again, and we also use the Callable.bind() method, + # which returns a new Callable with the parameter binds. player.hit.connect(_on_player_hit.bind("sword", 100)) func _on_button_down(): @@ -204,7 +391,7 @@ // C# supports passing signals as events, so we can use this idiomatic construct: button.ButtonDown += OnButtonDown; - // This assumes that a `Player` class exists which defines a `Hit` signal. + // This assumes that a `Player` class exists, which defines a `Hit` signal. var player = new Player(); // Signals as events (`player.Hit += OnPlayerHit;`) do not support argument binding. You have to use: player.Hit.Connect(OnPlayerHit, new Godot.Collections.Array {"sword", 100 }); @@ -261,44 +448,41 @@ } [/csharp] [/codeblocks] - While all options have the same outcome ([code]button[/code]'s [signal BaseButton.button_down] signal will be connected to [code]_on_button_down[/code]), option 3 offers the best validation: it will print a compile-time error if either the [code]button_down[/code] signal or the [code]_on_button_down[/code] callable are undefined. On the other hand, option 2 only relies on string names and will only be able to validate either names at runtime: it will print a runtime error if [code]"button_down"[/code] doesn't correspond to a signal, or if [code]"_on_button_down"[/code] is not a registered method in the object [code]self[/code]. The main reason for using options 1, 2, or 4 would be if you actually need to use strings (e.g. to connect signals programmatically based on strings read from a configuration file). Otherwise, option 3 is the recommended (and fastest) method. - [b]Parameter bindings and passing:[/b] - For legacy or language-specific reasons, there are also several ways to bind parameters to signals. One can pass a [code]binds[/code] [Array] to [method Object.connect] or [method Signal.connect], or use the recommended [method Callable.bind] method to create a new callable from an existing one, with the given parameter binds. - One can also pass additional parameters when emitting the signal with [method emit_signal]. The examples below show the relationship between those two types of parameters. + While all options have the same outcome ([code]button[/code]'s [signal BaseButton.button_down] signal will be connected to [code]_on_button_down[/code]), [b]option 3[/b] offers the best validation: it will print a compile-time error if either the [code]button_down[/code] [Signal] or the [code]_on_button_down[/code] [Callable] are not defined. On the other hand, [b]option 2[/b] only relies on string names and will only be able to validate either names at runtime: it will print a runtime error if [code]"button_down"[/code] doesn't correspond to a signal, or if [code]"_on_button_down"[/code] is not a registered method in the object [code]self[/code]. The main reason for using options 1, 2, or 4 would be if you actually need to use strings (e.g. to connect signals programmatically based on strings read from a configuration file). Otherwise, option 3 is the recommended (and fastest) method. + [b]Binding and passing parameters:[/b] + The syntax to bind parameters is through [method Callable.bind], which returns a copy of the [Callable] with its parameters bound. + When calling [method emit_signal], the signal parameters can be also passed. The examples below show the relationship between these signal parameters and bound parameters. [codeblocks] [gdscript] func _ready(): - # This assumes that a `Player` class exists which defines a `hit` signal. + # This assumes that a `Player` class exists, which defines a `hit` signal. var player = Player.new() - # Option 1: Using Callable.bind(). player.hit.connect(_on_player_hit.bind("sword", 100)) - # Option 2: Using a `binds` Array in Signal.connect() (same syntax for Object.connect()). - player.hit.connect(_on_player_hit, ["sword", 100]) # Parameters added when emitting the signal are passed first. player.emit_signal("hit", "Dark lord", 5) - # Four arguments, since we pass two when emitting (hit_by, level) - # and two when connecting (weapon_type, damage). + # We pass two arguments when emitting (`hit_by`, `level`), + # and bind two more arguments when connecting (`weapon_type`, `damage`). func _on_player_hit(hit_by, level, weapon_type, damage): print("Hit by %s (level %d) with weapon %s for %d damage." % [hit_by, level, weapon_type, damage]) [/gdscript] [csharp] public override void _Ready() { - // This assumes that a `Player` class exists which defines a `Hit` signal. + // This assumes that a `Player` class exists, which defines a `Hit` signal. var player = new Player(); // Option 1: Using Callable.Bind(). This way we can still use signals as events. player.Hit += OnPlayerHit.Bind("sword", 100); - // Option 2: Using a `binds` Array in Signal.Connect() (same syntax for Object.Connect()). + // Option 2: Using a `binds` Array in Signal.Connect(). player.Hit.Connect(OnPlayerHit, new Godot.Collections.Array{ "sword", 100 }); // Parameters added when emitting the signal are passed first. player.EmitSignal("hit", "Dark lord", 5); } - // Four arguments, since we pass two when emitting (hitBy, level) - // and two when connecting (weaponType, damage). + // We pass two arguments when emitting (`hit_by`, `level`), + // and bind two more arguments when connecting (`weapon_type`, `damage`). private void OnPlayerHit(string hitBy, int level, string weaponType, int damage) { GD.Print(String.Format("Hit by {0} (level {1}) with weapon {2} for {3} damage.", hitBy, level, weaponType, damage)); @@ -312,57 +496,68 @@ <param index="0" name="signal" type="StringName" /> <param index="1" name="callable" type="Callable" /> <description> - Disconnects a [param signal] from a given [param callable]. - If you try to disconnect a connection that does not exist, the method will print an error. Use [method is_connected] to ensure that the connection exists. + Disconnects a [param signal] by name from a given [param callable]. If the connection does not exist, generates an error. Use [method is_connected] to make sure that the connection exists. </description> </method> <method name="emit_signal" qualifiers="vararg"> <return type="int" enum="Error" /> <param index="0" name="signal" type="StringName" /> <description> - Emits the given [param signal]. The signal must exist, so it should be a built-in signal of this class or one of its parent classes, or a user-defined signal. This method supports a variable number of arguments, so parameters are passed as a comma separated list. - [b]Example:[/b] + Emits the given [param signal] by name. The signal must exist, so it should be a built-in signal of this class or one of its inherited classes, or a user-defined signal (see [method add_user_signal]). This method supports a variable number of arguments, so parameters can be passed as a comma separated list. + Returns [constant ERR_UNAVAILABLE] if [param signal] does not exist or the parameters are invalid. [codeblocks] [gdscript] emit_signal("hit", "sword", 100) emit_signal("game_over") [/gdscript] [csharp] - EmitSignal("hit", "sword", 100); - EmitSignal("game_over"); + EmitSignal("Hit", "sword", 100); + EmitSignal("GameOver"); [/csharp] [/codeblocks] + [b]Note:[/b] In C#, [param signal] must be in snake_case when referring to built-in Godot signals. Prefer using the names exposed in the [code]SignalName[/code] class to avoid allocating a new [StringName] on each call. </description> </method> <method name="free"> <return type="void" /> <description> - Deletes the object from memory. Any pre-existing reference to the freed object will become invalid, e.g. [code]is_instance_valid(object)[/code] will return [code]false[/code]. + Deletes the object from memory. Pre-existing references to the object become invalid, and any attempt to access them will result in a run-time error. Checking the references with [method @GlobalScope.is_instance_valid] will return [code]false[/code]. </description> </method> <method name="get" qualifiers="const"> <return type="Variant" /> <param index="0" name="property" type="StringName" /> <description> - Returns the [Variant] value of the given [param property]. If the [param property] doesn't exist, this will return [code]null[/code]. - [b]Note:[/b] In C#, the property name must be specified as snake_case if it is defined by a built-in Godot node. This doesn't apply to user-defined properties where you should use the same convention as in the C# source (typically PascalCase). + Returns the [Variant] value of the given [param property]. If the [param property] does not exist, this method returns [code]null[/code]. + [codeblocks] + [gdscript] + var node = Node2D.new() + node.rotation = 1.5 + var a = node.get("rotation") # a is 1.5 + [/gdscript] + [csharp] + var node = new Node2D(); + node.Rotation = 1.5f; + var a = node.Get("rotation"); // a is 1.5 + [/csharp] + [/codeblocks] + [b]Note:[/b] In C#, [param property] must be in snake_case when referring to built-in Godot properties. Prefer using the names exposed in the [code]PropertyName[/code] class to avoid allocating a new [StringName] on each call. </description> </method> <method name="get_class" qualifiers="const"> <return type="String" /> <description> - Returns the object's class as a [String]. See also [method is_class]. - [b]Note:[/b] [method get_class] does not take [code]class_name[/code] declarations into account. If the object has a [code]class_name[/code] defined, the base class name will be returned instead. + Returns the object's built-in class name, as a [String]. See also [method is_class]. + [b]Note:[/b] This method ignores [code]class_name[/code] declarations. If this object's script has defined a [code]class_name[/code], the base, built-in class name is returned instead. </description> </method> <method name="get_incoming_connections" qualifiers="const"> <return type="Dictionary[]" /> <description> - Returns an [Array] of dictionaries with information about signals that are connected to the object. - Each [Dictionary] contains three String entries: - - [code]source[/code] is a reference to the signal emitter. - - [code]signal_name[/code] is the name of the connected signal. - - [code]method_name[/code] is the name of the method to which the signal is connected. + Returns an [Array] of signal connections received by this object. Each connection is represented as a [Dictionary] that contains three entries: + - [code]signal[/code] is a reference to the [Signal]; + - [code]callable[/code] is a reference to the [Callable]; + - [code]flags[/code] is a combination of [enum ConnectFlags]. </description> </method> <method name="get_indexed" qualifiers="const"> @@ -371,14 +566,28 @@ <description> Gets the object's property indexed by the given [param property_path]. The path should be a [NodePath] relative to the current object and can use the colon character ([code]:[/code]) to access nested properties. [b]Examples:[/b] [code]"position:x"[/code] or [code]"material:next_pass:blend_mode"[/code]. - [b]Note:[/b] Even though the method takes [NodePath] argument, it doesn't support actual paths to [Node]s in the scene tree, only colon-separated sub-property paths. For the purpose of nodes, use [method Node.get_node_and_resource] instead. + [codeblocks] + [gdscript] + var node = Node2D.new() + node.position = Vector2(5, -10) + var a = node.get_indexed("position") # a is Vector2(5, -10) + var b = node.get_indexed("position:y") # b is -10 + [/gdscript] + [csharp] + var node = new Node2D(); + node.Position = new Vector2(5, -10); + var a = node.GetIndexed("position"); // a is Vector2(5, -10) + var b = node.GetIndexed("position:y"); // b is -10 + [/csharp] + [/codeblocks] + [b]Note:[/b] In C#, [param property_path] must be in snake_case when referring to built-in Godot properties. + [b]Note:[/b] This method does not support actual paths to nodes in the [SceneTree], only sub-property paths. In the context of nodes, use [method Node.get_node_and_resource] instead. </description> </method> <method name="get_instance_id" qualifiers="const"> <return type="int" /> <description> - Returns the object's unique instance ID. - This ID can be saved in [EncodedObjectAsID], and can be used to retrieve the object instance with [method @GlobalScope.instance_from_id]. + Returns the object's unique instance ID. This ID can be saved in [EncodedObjectAsID], and can be used to retrieve this object instance with [method @GlobalScope.instance_from_id]. </description> </method> <method name="get_meta" qualifiers="const"> @@ -386,47 +595,62 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="default" type="Variant" default="null" /> <description> - Returns the object's metadata entry for the given [param name]. - Throws error if the entry does not exist, unless [param default] is not [code]null[/code] (in which case the default value will be returned). See also [method has_meta], [method set_meta] and [method remove_meta]. - [b]Note:[/b] Metadata that has a [param name] starting with an underscore ([code]_[/code]) is considered editor-only. Editor-only metadata is not displayed in the Inspector and should not be edited. + Returns the object's metadata value for the given entry [param name]. If the entry does not exist, returns [param default]. If [param default] is [code]null[/code], an error is also generated. + [b]Note:[/b] Metadata that has a [param name] starting with an underscore ([code]_[/code]) is considered editor-only. Editor-only metadata is not displayed in the Inspector dock and should not be edited. </description> </method> <method name="get_meta_list" qualifiers="const"> <return type="PackedStringArray" /> <description> - Returns the object's metadata as a [PackedStringArray]. + Returns the object's metadata entry names as a [PackedStringArray]. </description> </method> <method name="get_method_list" qualifiers="const"> <return type="Dictionary[]" /> <description> - Returns the object's methods and their signatures as an [Array]. + Returns this object's methods and their signatures as an [Array] of dictionaries. Each [Dictionary] contains the following entries: + - [code]name[/code] is the name of the method, as a [String]; + - [code]args[/code] is an [Array] of dictionaries representing the arguments; + - [code]default_args[/code] is the default arguments as an [Array] of variants; + - [code]flags[/code] is a combination of [enum MethodFlags]; + - [code]id[/code] is the method's internal identifier [int]; + - [code]return[/code] is the returned value, as a [Dictionary]; + [b]Note:[/b] The dictionaries of [code]args[/code] and [code]return[/code] are formatted identically to the results of [method get_property_list], although not all entries are used. </description> </method> <method name="get_property_list" qualifiers="const"> <return type="Dictionary[]" /> <description> - Returns the object's property list as an [Array] of dictionaries. - Each property's [Dictionary] contain at least [code]name: String[/code] and [code]type: int[/code] (see [enum Variant.Type]) entries. Optionally, it can also include [code]hint: int[/code] (see [enum PropertyHint]), [code]hint_string: String[/code], and [code]usage: int[/code] (see [enum PropertyUsageFlags]). + Returns the object's property list as an [Array] of dictionaries. Each [Dictionary] contains the following entries: + - [code]name[/code] is the property's name, as a [String]; + - [code]class_name[/code] is an empty [StringName], unless the property is [constant TYPE_OBJECT] and it inherits from a class; + - [code]type[/code] is the property's type, as an [int] (see [enum Variant.Type]); + - [code]hint[/code] is [i]how[/i] the property is meant to be edited (see [enum PropertyHint]); + - [code]hint_string[/code] depends on the hint (see [enum PropertyHint]); + - [code]usage[/code] is a combination of [enum PropertyUsageFlags]. </description> </method> <method name="get_script" qualifiers="const"> <return type="Variant" /> <description> - Returns the object's [Script] instance, or [code]null[/code] if none is assigned. + Returns the object's [Script] instance, or [code]null[/code] if no script is attached. </description> </method> <method name="get_signal_connection_list" qualifiers="const"> <return type="Dictionary[]" /> <param index="0" name="signal" type="StringName" /> <description> - Returns an [Array] of connections for the given [param signal]. + Returns an [Array] of connections for the given [param signal] name. Each connection is represented as a [Dictionary] that contains three entries: + - [code]signal[/code] is a reference to the [Signal]; + - [code]callable[/code] is a reference to the [Callable]; + - [code]flags[/code] is a combination of [enum ConnectFlags]. </description> </method> <method name="get_signal_list" qualifiers="const"> <return type="Dictionary[]" /> <description> - Returns the list of signals as an [Array] of dictionaries. + Returns the list of existing signals as an [Array] of dictionaries. + [b]Note:[/b] Due of the implementation, each [Dictionary] is formatted very similarly to the returned values of [method get_method_list]. </description> </method> <method name="has_meta" qualifiers="const"> @@ -434,34 +658,36 @@ <param index="0" name="name" type="StringName" /> <description> Returns [code]true[/code] if a metadata entry is found with the given [param name]. See also [method get_meta], [method set_meta] and [method remove_meta]. - [b]Note:[/b] Metadata that has a [param name] starting with an underscore ([code]_[/code]) is considered editor-only. Editor-only metadata is not displayed in the Inspector and should not be edited. + [b]Note:[/b] Metadata that has a [param name] starting with an underscore ([code]_[/code]) is considered editor-only. Editor-only metadata is not displayed in the Inspector and should not be edited, although it can still be found by this method. </description> </method> <method name="has_method" qualifiers="const"> <return type="bool" /> <param index="0" name="method" type="StringName" /> <description> - Returns [code]true[/code] if the object contains the given [param method]. + Returns [code]true[/code] if the the given [param method] name exists in the object. + [b]Note:[/b] In C#, [param method] must be in snake_case when referring to built-in Godot methods. Prefer using the names exposed in the [code]MethodName[/code] class to avoid allocating a new [StringName] on each call. </description> </method> <method name="has_signal" qualifiers="const"> <return type="bool" /> <param index="0" name="signal" type="StringName" /> <description> - Returns [code]true[/code] if the given [param signal] exists. + Returns [code]true[/code] if the given [param signal] name exists in the object. + [b]Note:[/b] In C#, [param signal] must be in snake_case when referring to built-in Godot methods. Prefer using the names exposed in the [code]SignalName[/code] class to avoid allocating a new [StringName] on each call. </description> </method> <method name="has_user_signal" qualifiers="const"> <return type="bool" /> <param index="0" name="signal" type="StringName" /> <description> - Returns [code]true[/code] if the given user-defined [param signal] exists. Only signals added using [method add_user_signal] are taken into account. + Returns [code]true[/code] if the given user-defined [param signal] name exists. Only signals added with [method add_user_signal] are included. </description> </method> <method name="is_blocking_signals" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if signal emission blocking is enabled. + Returns [code]true[/code] if the object is blocking its signals from being emitted. See [method set_block_signals]. </description> </method> <method name="is_class" qualifiers="const"> @@ -469,7 +695,21 @@ <param index="0" name="class" type="String" /> <description> Returns [code]true[/code] if the object inherits from the given [param class]. See also [method get_class]. - [b]Note:[/b] [method is_class] does not take [code]class_name[/code] declarations into account. If the object has a [code]class_name[/code] defined, [method is_class] will return [code]false[/code] for that name. + [codeblocks] + [gdscript] + var sprite2d = Sprite2D.new() + sprite2d.is_class("Sprite2D") # Returns true + sprite2d.is_class("Node") # Returns true + sprite2d.is_class("Node3D") # Returns false + [/gdscript] + [csharp] + var sprite2d = new Sprite2D(); + sprite2d.IsClass("Sprite2D"); // Returns true + sprite2d.IsClass("Node"); // Returns true + sprite2d.IsClass("Node3D"); // Returns false + [/csharp] + [/codeblocks] + [b]Note:[/b] This method ignores [code]class_name[/code] declarations in the object's script. </description> </method> <method name="is_connected" qualifiers="const"> @@ -477,7 +717,8 @@ <param index="0" name="signal" type="StringName" /> <param index="1" name="callable" type="Callable" /> <description> - Returns [code]true[/code] if a connection exists for a given [param signal] and [param callable]. + Returns [code]true[/code] if a connection exists between the given [param signal] name and [param callable]. + [b]Note:[/b] In C#, [param signal] must be in snake_case when referring to built-in Godot methods. Prefer using the names exposed in the [code]SignalName[/code] class to avoid allocating a new [StringName] on each call. </description> </method> <method name="is_queued_for_deletion" qualifiers="const"> @@ -491,21 +732,59 @@ <param index="0" name="what" type="int" /> <param index="1" name="reversed" type="bool" default="false" /> <description> - Send a given notification to the object, which will also trigger a call to the [method _notification] method of all classes that the object inherits from. - If [param reversed] is [code]true[/code], [method _notification] is called first on the object's own class, and then up to its successive parent classes. If [param reversed] is [code]false[/code], [method _notification] is called first on the highest ancestor ([Object] itself), and then down to its successive inheriting classes. + Sends the given [param what] notification to all classes inherited by the object, triggering calls to [method _notification], starting from the highest ancestor (the [Object] class) and going down to the object's script. + If [param reversed] is [code]true[/code], the call order is reversed. + [codeblocks] + [gdscript] + var player = Node2D.new() + player.set_script(load("res://player.gd")) + + player.notification(NOTIFICATION_ENTER_TREE) + # The call order is Object -> Node -> Node2D -> player.gd. + + player.notification(NOTIFICATION_ENTER_TREE, true) + # The call order is player.gd -> Node2D -> Node -> Object. + [/gdscript] + [csharp] + var player = new Node2D(); + player.SetScript(GD.Load("res://player.gd")); + + player.Notification(NotificationEnterTree); + // The call order is Object -> Node -> Node2D -> player.gd. + + player.notification(NotificationEnterTree, true); + // The call order is player.gd -> Node2D -> Node -> Object. + [/csharp] + [/codeblocks] </description> </method> <method name="notify_property_list_changed"> <return type="void" /> <description> - Notify the editor that the property list has changed by emitting the [signal property_list_changed] signal, so that editor plugins can take the new values into account. + Emits the [signal property_list_changed] signal. This is mainly used to refresh the editor, so that the Inspector and editor plugins are properly updated. + </description> + </method> + <method name="property_can_revert" qualifiers="const"> + <return type="bool" /> + <param index="0" name="property" type="StringName" /> + <description> + Returns [code]true[/code] if the given [param property] has a custom default value. Use [method property_get_revert] to get the [param property]'s default value. + [b]Note:[/b] This method is used by the Inspector dock to display a revert icon. The object must implement [method _property_can_revert] to customize the default value. If [method _property_can_revert] is not implemented, this method returns [code]false[/code]. + </description> + </method> + <method name="property_get_revert" qualifiers="const"> + <return type="Variant" /> + <param index="0" name="property" type="StringName" /> + <description> + Returns the custom default value of the given [param property]. Use [method property_can_revert] to check if the [param property] has a custom default value. + [b]Note:[/b] This method is used by the Inspector dock to display a revert icon. The object must implement [method _property_get_revert] to customize the default value. If [method _property_get_revert] is not implemented, this method returns [code]null[/code]. </description> </method> <method name="remove_meta"> <return type="void" /> <param index="0" name="name" type="StringName" /> <description> - Removes a given entry from the object's metadata. See also [method has_meta], [method get_meta] and [method set_meta]. + Removes the given entry [param name] from the object's metadata. See also [method has_meta], [method get_meta] and [method set_meta]. [b]Note:[/b] Metadata that has a [param name] starting with an underscore ([code]_[/code]) is considered editor-only. Editor-only metadata is not displayed in the Inspector and should not be edited. </description> </method> @@ -514,15 +793,27 @@ <param index="0" name="property" type="StringName" /> <param index="1" name="value" type="Variant" /> <description> - Assigns a new value to the given property. If the [param property] does not exist or the given value's type doesn't match, nothing will happen. - [b]Note:[/b] In C#, the property name must be specified as snake_case if it is defined by a built-in Godot node. This doesn't apply to user-defined properties where you should use the same convention as in the C# source (typically PascalCase). + Assigns [param value] to the given [param property]. If the property does not exist or the given [param value]'s type doesn't match, nothing happens. + [codeblocks] + [gdscript] + var node = Node2D.new() + node.set("global_scale", Vector2(8, 2.5)) + print(node.global_scale) # Prints (8, 2.5) + [/gdscript] + [csharp] + var node = new Node2D(); + node.Set("global_scale", new Vector2(8, 2.5)); + GD.Print(node.GlobalScale); // Prints Vector2(8, 2.5) + [/csharp] + [/codeblocks] + [b]Note:[/b] In C#, [param property] must be in snake_case when referring to built-in Godot properties. Prefer using the names exposed in the [code]PropertyName[/code] class to avoid allocating a new [StringName] on each call. </description> </method> <method name="set_block_signals"> <return type="void" /> <param index="0" name="enable" type="bool" /> <description> - If set to [code]true[/code], signal emission is blocked. + If set to [code]true[/code], the object becomes unable to emit signals. As such, [method emit_signal] and signal connections will not work, until it is set to [code]false[/code]. </description> </method> <method name="set_deferred"> @@ -530,8 +821,30 @@ <param index="0" name="property" type="StringName" /> <param index="1" name="value" type="Variant" /> <description> - Assigns a new value to the given property, after the current frame's physics step. This is equivalent to calling [method set] via [method call_deferred], i.e. [code]call_deferred("set", property, value)[/code]. - [b]Note:[/b] In C#, the property name must be specified as snake_case if it is defined by a built-in Godot node. This doesn't apply to user-defined properties where you should use the same convention as in the C# source (typically PascalCase). + Assigns [param value] to the given [param property], after the current frame's physics step. This is equivalent to calling [method set] through [method call_deferred]. + [codeblocks] + [gdscript] + var node = Node2D.new() + add_child(node) + + node.rotation = 45.0 + node.set_deferred("rotation", 90.0) + print(node.rotation) # Prints 45.0 + + await get_tree().process_frame + print(node.rotation) # Prints 90.0 + [/gdscript] + [csharp] + var node = new Node2D(); + node.Rotation = 45f; + node.SetDeferred("rotation", 90f); + GD.Print(node.Rotation); // Prints 45.0 + + await ToSignal(GetTree(), SceneTree.SignalName.ProcessFrame); + GD.Print(node.Rotation); // Prints 90.0 + [/csharp] + [/codeblocks] + [b]Note:[/b] In C#, [param property] must be in snake_case when referring to built-in Godot properties. Prefer using the names exposed in the [code]PropertyName[/code] class to avoid allocating a new [StringName] on each call. </description> </method> <method name="set_indexed"> @@ -539,29 +852,29 @@ <param index="0" name="property_path" type="NodePath" /> <param index="1" name="value" type="Variant" /> <description> - Assigns a new value to the property identified by the [param property_path]. The path should be a [NodePath] relative to the current object and can use the colon character ([code]:[/code]) to access nested properties. - [b]Example:[/b] + Assigns a new [param value] to the property identified by the [param property_path]. The path should be a [NodePath] relative to this object, and can use the colon character ([code]:[/code]) to access nested properties. [codeblocks] [gdscript] var node = Node2D.new() node.set_indexed("position", Vector2(42, 0)) node.set_indexed("position:y", -10) - print(node.position) # (42, -10) + print(node.position) # Prints (42, -10) [/gdscript] [csharp] var node = new Node2D(); node.SetIndexed("position", new Vector2(42, 0)); node.SetIndexed("position:y", -10); - GD.Print(node.Position); // (42, -10) + GD.Print(node.Position); // Prints (42, -10) [/csharp] [/codeblocks] + [b]Note:[/b] In C#, [param property_path] must be in snake_case when referring to built-in Godot properties. </description> </method> <method name="set_message_translation"> <return type="void" /> <param index="0" name="enable" type="bool" /> <description> - Defines whether the object can translate strings (with calls to [method tr]). Enabled by default. + If set to [code]true[/code], allows the object to translate messages with [method tr] and [method tr_n]. Enabled by default. See also [method can_translate_messages]. </description> </method> <method name="set_meta"> @@ -569,24 +882,23 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="value" type="Variant" /> <description> - Adds, changes or removes a given entry in the object's metadata. Metadata are serialized and can take any [Variant] value. - To remove a given entry from the object's metadata, use [method remove_meta]. Metadata is also removed if its value is set to [code]null[/code]. This means you can also use [code]set_meta("name", null)[/code] to remove metadata for [code]"name"[/code]. See also [method has_meta] and [method get_meta]. - [b]Note:[/b] Metadata that has a [param name] starting with an underscore ([code]_[/code]) is considered editor-only. Editor-only metadata is not displayed in the Inspector and should not be edited. + Adds or changes the entry [param name] inside the object's metadata. The metadata [param value] can be any [Variant], although some types cannot be serialised correctly. + If [param value] is [code]null[/code], the entry is removed. This is the equivalent of using [method remove_meta]. See also [method has_meta] and [method get_meta]. + [b]Note:[/b] Metadata that has a [param name] starting with an underscore ([code]_[/code]) is considered editor-only. Editor-only metadata is not displayed in the Inspector dock and should not be edited. </description> </method> <method name="set_script"> <return type="void" /> <param index="0" name="script" type="Variant" /> <description> - Assigns a script to the object. Each object can have a single script assigned to it, which are used to extend its functionality. - If the object already had a script, the previous script instance will be freed and its variables and state will be lost. The new script's [method _init] method will be called. + Attaches [param script] to the object, and instantiates it. As a result, the script's [method _init] is called. A [Script] is used to extend the object's functionality. + If a script already exists, its instance is detached, and its property values and state are lost. Built-in property values are still kept. </description> </method> <method name="to_string"> <return type="String" /> <description> - Returns a [String] representing the object. If not overridden, defaults to [code]"[ClassName:RID]"[/code]. - Override the method [method _to_string] to customize the [String] representation. + Returns a [String] representing the object. Defaults to [code]"<ClassName#RID>"[/code]. Override [method _to_string] to customize the string representation of the object. </description> </method> <method name="tr" qualifiers="const"> @@ -594,9 +906,9 @@ <param index="0" name="message" type="StringName" /> <param index="1" name="context" type="StringName" default="""" /> <description> - Translates a message using translation catalogs configured in the Project Settings. An additional context could be used to specify the translation context. - Only works if message translation is enabled (which it is by default), otherwise it returns the [param message] unchanged. See [method set_message_translation]. - See [url=$DOCS_URL/tutorials/i18n/internationalizing_games.html]Internationalizing games[/url] for examples of the usage of this method. + Translates a [param message], using the translation catalogs configured in the Project Settings. Further [param context] can be specified to help with the translation. + If [method can_translate_messages] is [code]false[/code], or no translation is available, this method returns the [param message] without changes. See [method set_message_translation]. + For detailed examples, see [url=$DOCS_URL/tutorials/i18n/internationalizing_games.html]Internationalizing games[/url]. </description> </method> <method name="tr_n" qualifiers="const"> @@ -606,43 +918,45 @@ <param index="2" name="n" type="int" /> <param index="3" name="context" type="StringName" default="""" /> <description> - Translates a message involving plurals using translation catalogs configured in the Project Settings. An additional context could be used to specify the translation context. - Only works if message translation is enabled (which it is by default), otherwise it returns the [param message] or [param plural_message] unchanged. See [method set_message_translation]. - The number [param n] is the number or quantity of the plural object. It will be used to guide the translation system to fetch the correct plural form for the selected language. - [b]Note:[/b] Negative and floating-point values usually represent physical entities for which singular and plural don't clearly apply. In such cases, use [method tr]. - See [url=$DOCS_URL/tutorials/i18n/localization_using_gettext.html]Localization using gettext[/url] for examples of the usage of this method. + Translates a [param message] or [param plural_message], using the translation catalogs configured in the Project Settings. Further [param context] can be specified to help with the translation. + If [method can_translate_messages] is [code]false[/code], or no translation is available, this method returns [param message] or [param plural_message], without changes. See [method set_message_translation]. + The [param n] is the number, or amount, of the message's subject. It is used by the translation system to fetch the correct plural form for the current language. + For detailed examples, see [url=$DOCS_URL/tutorials/i18n/localization_using_gettext.html]Localization using gettext[/url]. + [b]Note:[/b] Negative and [float] numbers may not properly apply to some countable subjects. It's recommended handling these cases with [method tr]. </description> </method> </methods> <signals> <signal name="property_list_changed"> <description> + Emitted when [method notify_property_list_changed] is called. </description> </signal> <signal name="script_changed"> <description> - Emitted whenever the object's script is changed. + Emitted when the object's script is changed. + [b]Note:[/b] When this signal is emitted, the new script is not initialized yet. If you need to access the new script, defer connections to this signal with [constant CONNECT_DEFERRED]. </description> </signal> </signals> <constants> <constant name="NOTIFICATION_POSTINITIALIZE" value="0"> - Called right when the object is initialized. Not available in script. + Notification received when the object is initialized, before its script is attached. Used internally. </constant> <constant name="NOTIFICATION_PREDELETE" value="1"> - Called before the object is about to be deleted. + Notification received when the object is about to be deleted. Can act as the deconstructor of some programming languages. </constant> <constant name="CONNECT_DEFERRED" value="1" enum="ConnectFlags"> - Connects a signal in deferred mode. This way, signal emissions are stored in a queue, then set on idle time. + Deferred connections trigger their [Callable]s on idle time, rather than instantly. </constant> <constant name="CONNECT_PERSIST" value="2" enum="ConnectFlags"> - Persisting connections are saved when the object is serialized to file. + Persisting connections are stored when the object is serialized (such as when using [method PackedScene.pack]). In the editor, connections created through the Node dock are always persisting. </constant> <constant name="CONNECT_ONE_SHOT" value="4" enum="ConnectFlags"> One-shot connections disconnect themselves after emission. </constant> <constant name="CONNECT_REFERENCE_COUNTED" value="8" enum="ConnectFlags"> - Connect a signal as reference-counted. This means that a given signal can be connected several times to the same target, and will only be fully disconnected once no references are left. + Reference-counted connections can be assigned to the same [Callable] multiple times. Each disconnection decreases the internal counter. The signal fully disconnects only when the counter reaches 0. </constant> </constants> </class> diff --git a/doc/classes/OfflineMultiplayerPeer.xml b/doc/classes/OfflineMultiplayerPeer.xml new file mode 100644 index 0000000000..5e15992d54 --- /dev/null +++ b/doc/classes/OfflineMultiplayerPeer.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<class name="OfflineMultiplayerPeer" inherits="MultiplayerPeer" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> + <brief_description> + A [MultiplayerPeer] which is always connected and acts as a server. + </brief_description> + <description> + This is the default [member MultiplayerAPI.multiplayer_peer] for the [member Node.multiplayer]. It mimics the behavior of a server with no peers connected. + This means that the [SceneTree] will act as the multiplayer authority by default. Calls to [method MultiplayerAPI.is_server] will return [code]true[/code], and calls to [method MultiplayerAPI.get_unique_id] will return [constant MultiplayerPeer.TARGET_PEER_SERVER]. + </description> + <tutorials> + </tutorials> +</class> diff --git a/doc/classes/OmniLight3D.xml b/doc/classes/OmniLight3D.xml index 193ae8deeb..f71c81e713 100644 --- a/doc/classes/OmniLight3D.xml +++ b/doc/classes/OmniLight3D.xml @@ -20,7 +20,7 @@ <member name="omni_shadow_mode" type="int" setter="set_shadow_mode" getter="get_shadow_mode" enum="OmniLight3D.ShadowMode" default="1"> See [enum ShadowMode]. </member> - <member name="shadow_bias" type="float" setter="set_param" getter="get_param" overrides="Light3D" default="0.2" /> + <member name="shadow_normal_bias" type="float" setter="set_param" getter="get_param" overrides="Light3D" default="1.0" /> </members> <constants> <constant name="SHADOW_DUAL_PARABOLOID" value="0" enum="ShadowMode"> diff --git a/doc/classes/OptionButton.xml b/doc/classes/OptionButton.xml index e63e822648..a58a6249ae 100644 --- a/doc/classes/OptionButton.xml +++ b/doc/classes/OptionButton.xml @@ -259,6 +259,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="font" data_type="font" type="Font"> [Font] of the [OptionButton]'s text. diff --git a/doc/classes/PathFollow3D.xml b/doc/classes/PathFollow3D.xml index ba7207be8f..01275471d0 100644 --- a/doc/classes/PathFollow3D.xml +++ b/doc/classes/PathFollow3D.xml @@ -9,6 +9,16 @@ </description> <tutorials> </tutorials> + <methods> + <method name="correct_posture" qualifiers="static"> + <return type="Transform3D" /> + <param index="0" name="transform" type="Transform3D" /> + <param index="1" name="rotation_mode" type="int" enum="PathFollow3D.RotationMode" /> + <description> + Correct the [code]transform[/code]. [code]rotation_mode[/code] implicitly specifies how posture (forward, up and sideway direction) is calculated. + </description> + </method> + </methods> <members> <member name="cubic_interp" type="bool" setter="set_cubic_interpolation" getter="get_cubic_interpolation" default="true"> If [code]true[/code], the position between two cached points is interpolated cubically, and linearly otherwise. @@ -30,6 +40,9 @@ <member name="rotation_mode" type="int" setter="set_rotation_mode" getter="get_rotation_mode" enum="PathFollow3D.RotationMode" default="3"> Allows or forbids rotation on one or more axes, depending on the [enum RotationMode] constants being used. </member> + <member name="tilt_enabled" type="bool" setter="set_tilt_enabled" getter="is_tilt_enabled" default="true"> + If [code]true[/code], the tilt property of [Curve3D] takes effect. + </member> <member name="v_offset" type="float" setter="set_v_offset" getter="get_v_offset" default="0.0"> The node's offset perpendicular to the curve. </member> diff --git a/doc/classes/PhysicalSkyMaterial.xml b/doc/classes/PhysicalSkyMaterial.xml index 9d303d80e5..a8cfb9abc2 100644 --- a/doc/classes/PhysicalSkyMaterial.xml +++ b/doc/classes/PhysicalSkyMaterial.xml @@ -12,27 +12,28 @@ </tutorials> <members> <member name="energy_multiplier" type="float" setter="set_energy_multiplier" getter="get_energy_multiplier" default="1.0"> + The sky's overall brightness multiplier. Higher values result in a brighter sky. </member> <member name="ground_color" type="Color" setter="set_ground_color" getter="get_ground_color" default="Color(0.1, 0.07, 0.034, 1)"> Modulates the [Color] on the bottom half of the sky to represent the ground. </member> <member name="mie_coefficient" type="float" setter="set_mie_coefficient" getter="get_mie_coefficient" default="0.005"> - Controls the strength of mie scattering for the sky. Mie scattering results from light colliding with larger particles (like water). On earth, mie scattering results in a whitish color around the sun and horizon. + Controls the strength of [url=https://en.wikipedia.org/wiki/Mie_scattering]Mie scattering[/url] for the sky. Mie scattering results from light colliding with larger particles (like water). On earth, Mie scattering results in a whitish color around the sun and horizon. </member> <member name="mie_color" type="Color" setter="set_mie_color" getter="get_mie_color" default="Color(0.69, 0.729, 0.812, 1)"> - Controls the [Color] of the mie scattering effect. While not physically accurate, this allows for the creation of alien-looking planets. + Controls the [Color] of the [url=https://en.wikipedia.org/wiki/Mie_scattering]Mie scattering[/url] effect. While not physically accurate, this allows for the creation of alien-looking planets. </member> <member name="mie_eccentricity" type="float" setter="set_mie_eccentricity" getter="get_mie_eccentricity" default="0.8"> - Controls the direction of the mie scattering. A value of [code]1[/code] means that when light hits a particle it's passing through straight forward. A value of [code]-1[/code] means that all light is scatter backwards. + Controls the direction of the [url=https://en.wikipedia.org/wiki/Mie_scattering]Mie scattering[/url]. A value of [code]1[/code] means that when light hits a particle it's passing through straight forward. A value of [code]-1[/code] means that all light is scatter backwards. </member> <member name="night_sky" type="Texture2D" setter="set_night_sky" getter="get_night_sky"> [Texture2D] for the night sky. This is added to the sky, so if it is bright enough, it may be visible during the day. </member> <member name="rayleigh_coefficient" type="float" setter="set_rayleigh_coefficient" getter="get_rayleigh_coefficient" default="2.0"> - Controls the strength of the Rayleigh scattering. Rayleigh scattering results from light colliding with small particles. It is responsible for the blue color of the sky. + Controls the strength of the [url=https://en.wikipedia.org/wiki/Rayleigh_scattering]Rayleigh scattering[/url]. Rayleigh scattering results from light colliding with small particles. It is responsible for the blue color of the sky. </member> <member name="rayleigh_color" type="Color" setter="set_rayleigh_color" getter="get_rayleigh_color" default="Color(0.3, 0.405, 0.6, 1)"> - Controls the [Color] of the Rayleigh scattering. While not physically accurate, this allows for the creation of alien-looking planets. For example, setting this to a red [Color] results in a Mars-looking atmosphere with a corresponding blue sunset. + Controls the [Color] of the [url=https://en.wikipedia.org/wiki/Rayleigh_scattering]Rayleigh scattering[/url]. While not physically accurate, this allows for the creation of alien-looking planets. For example, setting this to a red [Color] results in a Mars-looking atmosphere with a corresponding blue sunset. </member> <member name="sun_disk_scale" type="float" setter="set_sun_disk_scale" getter="get_sun_disk_scale" default="1.0"> Sets the size of the sun disk. Default value is based on Sol's perceived size from Earth. diff --git a/doc/classes/PhysicsBody2D.xml b/doc/classes/PhysicsBody2D.xml index 59660b4de5..30fa54d669 100644 --- a/doc/classes/PhysicsBody2D.xml +++ b/doc/classes/PhysicsBody2D.xml @@ -25,12 +25,12 @@ </method> <method name="move_and_collide"> <return type="KinematicCollision2D" /> - <param index="0" name="distance" type="Vector2" /> + <param index="0" name="motion" type="Vector2" /> <param index="1" name="test_only" type="bool" default="false" /> <param index="2" name="safe_margin" type="float" default="0.08" /> <param index="3" name="recovery_as_collision" type="bool" default="false" /> <description> - Moves the body along the vector [param distance]. In order to be frame rate independent in [method Node._physics_process] or [method Node._process], [param distance] should be computed using [code]delta[/code]. + Moves the body along the vector [param motion]. In order to be frame rate independent in [method Node._physics_process] or [method Node._process], [param motion] should be computed using [code]delta[/code]. Returns a [KinematicCollision2D], which contains information about the collision when stopped, or when touching another body along the motion. If [param test_only] is [code]true[/code], the body does not move but the would-be collision information is given. [param safe_margin] is the extra margin used for collision recovery (see [member CharacterBody2D.safe_margin] for more details). @@ -47,13 +47,13 @@ <method name="test_move"> <return type="bool" /> <param index="0" name="from" type="Transform2D" /> - <param index="1" name="distance" type="Vector2" /> + <param index="1" name="motion" type="Vector2" /> <param index="2" name="collision" type="KinematicCollision2D" default="null" /> <param index="3" name="safe_margin" type="float" default="0.08" /> <param index="4" name="recovery_as_collision" type="bool" default="false" /> <description> - Checks for collisions without moving the body. In order to be frame rate independent in [method Node._physics_process] or [method Node._process], [param distance] should be computed using [code]delta[/code]. - Virtually sets the node's position, scale and rotation to that of the given [Transform2D], then tries to move the body along the vector [param distance]. Returns [code]true[/code] if a collision would stop the body from moving along the whole path. + Checks for collisions without moving the body. In order to be frame rate independent in [method Node._physics_process] or [method Node._process], [param motion] should be computed using [code]delta[/code]. + Virtually sets the node's position, scale and rotation to that of the given [Transform2D], then tries to move the body along the vector [param motion]. Returns [code]true[/code] if a collision would stop the body from moving along the whole path. [param collision] is an optional object of type [KinematicCollision2D], which contains additional information about the collision when stopped, or when touching another body along the motion. [param safe_margin] is the extra margin used for collision recovery (see [member CharacterBody2D.safe_margin] for more details). If [param recovery_as_collision] is [code]true[/code], any depenetration from the recovery phase is also reported as a collision; this is useful for checking whether the body would [i]touch[/i] any other bodies. diff --git a/doc/classes/PhysicsBody3D.xml b/doc/classes/PhysicsBody3D.xml index bf7882a1ea..2ef54683f2 100644 --- a/doc/classes/PhysicsBody3D.xml +++ b/doc/classes/PhysicsBody3D.xml @@ -32,13 +32,13 @@ </method> <method name="move_and_collide"> <return type="KinematicCollision3D" /> - <param index="0" name="distance" type="Vector3" /> + <param index="0" name="motion" type="Vector3" /> <param index="1" name="test_only" type="bool" default="false" /> <param index="2" name="safe_margin" type="float" default="0.001" /> <param index="3" name="recovery_as_collision" type="bool" default="false" /> <param index="4" name="max_collisions" type="int" default="1" /> <description> - Moves the body along the vector [param distance]. In order to be frame rate independent in [method Node._physics_process] or [method Node._process], [param distance] should be computed using [code]delta[/code]. + Moves the body along the vector [param motion]. In order to be frame rate independent in [method Node._physics_process] or [method Node._process], [param motion] should be computed using [code]delta[/code]. The body will stop if it collides. Returns a [KinematicCollision3D], which contains information about the collision when stopped, or when touching another body along the motion. If [param test_only] is [code]true[/code], the body does not move but the would-be collision information is given. [param safe_margin] is the extra margin used for collision recovery (see [member CharacterBody3D.safe_margin] for more details). @@ -64,14 +64,14 @@ <method name="test_move"> <return type="bool" /> <param index="0" name="from" type="Transform3D" /> - <param index="1" name="distance" type="Vector3" /> + <param index="1" name="motion" type="Vector3" /> <param index="2" name="collision" type="KinematicCollision3D" default="null" /> <param index="3" name="safe_margin" type="float" default="0.001" /> <param index="4" name="recovery_as_collision" type="bool" default="false" /> <param index="5" name="max_collisions" type="int" default="1" /> <description> - Checks for collisions without moving the body. In order to be frame rate independent in [method Node._physics_process] or [method Node._process], [param distance] should be computed using [code]delta[/code]. - Virtually sets the node's position, scale and rotation to that of the given [Transform3D], then tries to move the body along the vector [param distance]. Returns [code]true[/code] if a collision would stop the body from moving along the whole path. + Checks for collisions without moving the body. In order to be frame rate independent in [method Node._physics_process] or [method Node._process], [param motion] should be computed using [code]delta[/code]. + Virtually sets the node's position, scale and rotation to that of the given [Transform3D], then tries to move the body along the vector [param motion]. Returns [code]true[/code] if a collision would stop the body from moving along the whole path. [param collision] is an optional object of type [KinematicCollision3D], which contains additional information about the collision when stopped, or when touching another body along the motion. [param safe_margin] is the extra margin used for collision recovery (see [member CharacterBody3D.safe_margin] for more details). If [param recovery_as_collision] is [code]true[/code], any depenetration from the recovery phase is also reported as a collision; this is useful for checking whether the body would [i]touch[/i] any other bodies. diff --git a/doc/classes/PhysicsDirectBodyState2D.xml b/doc/classes/PhysicsDirectBodyState2D.xml index e8062f3e94..eca6a1cbc7 100644 --- a/doc/classes/PhysicsDirectBodyState2D.xml +++ b/doc/classes/PhysicsDirectBodyState2D.xml @@ -209,40 +209,40 @@ </method> </methods> <members> - <member name="angular_velocity" type="float" setter="set_angular_velocity" getter="get_angular_velocity" default="0.0"> + <member name="angular_velocity" type="float" setter="set_angular_velocity" getter="get_angular_velocity"> The body's rotational velocity in [i]radians[/i] per second. </member> - <member name="center_of_mass" type="Vector2" setter="" getter="get_center_of_mass" default="Vector2(0, 0)"> + <member name="center_of_mass" type="Vector2" setter="" getter="get_center_of_mass"> The body's center of mass position relative to the body's center in the global coordinate system. </member> - <member name="center_of_mass_local" type="Vector2" setter="" getter="get_center_of_mass_local" default="Vector2(0, 0)"> + <member name="center_of_mass_local" type="Vector2" setter="" getter="get_center_of_mass_local"> The body's center of mass position in the body's local coordinate system. </member> - <member name="inverse_inertia" type="float" setter="" getter="get_inverse_inertia" default="0.0"> + <member name="inverse_inertia" type="float" setter="" getter="get_inverse_inertia"> The inverse of the inertia of the body. </member> - <member name="inverse_mass" type="float" setter="" getter="get_inverse_mass" default="0.0"> + <member name="inverse_mass" type="float" setter="" getter="get_inverse_mass"> The inverse of the mass of the body. </member> - <member name="linear_velocity" type="Vector2" setter="set_linear_velocity" getter="get_linear_velocity" default="Vector2(0, 0)"> + <member name="linear_velocity" type="Vector2" setter="set_linear_velocity" getter="get_linear_velocity"> The body's linear velocity in pixels per second. </member> - <member name="sleeping" type="bool" setter="set_sleep_state" getter="is_sleeping" default="false"> + <member name="sleeping" type="bool" setter="set_sleep_state" getter="is_sleeping"> If [code]true[/code], this body is currently sleeping (not active). </member> - <member name="step" type="float" setter="" getter="get_step" default="0.0"> + <member name="step" type="float" setter="" getter="get_step"> The timestep (delta) used for the simulation. </member> - <member name="total_angular_damp" type="float" setter="" getter="get_total_angular_damp" default="0.0"> + <member name="total_angular_damp" type="float" setter="" getter="get_total_angular_damp"> The rate at which the body stops rotating, if there are not any other forces moving it. </member> - <member name="total_gravity" type="Vector2" setter="" getter="get_total_gravity" default="Vector2(0, 0)"> + <member name="total_gravity" type="Vector2" setter="" getter="get_total_gravity"> The total gravity vector being currently applied to this body. </member> - <member name="total_linear_damp" type="float" setter="" getter="get_total_linear_damp" default="0.0"> + <member name="total_linear_damp" type="float" setter="" getter="get_total_linear_damp"> The rate at which the body stops moving, if there are not any other forces moving it. </member> - <member name="transform" type="Transform2D" setter="set_transform" getter="get_transform" default="Transform2D(1, 0, 0, 1, 0, 0)"> + <member name="transform" type="Transform2D" setter="set_transform" getter="get_transform"> The body's transformation matrix. </member> </members> diff --git a/doc/classes/PhysicsDirectBodyState3D.xml b/doc/classes/PhysicsDirectBodyState3D.xml index 4c6d51c85a..a809384642 100644 --- a/doc/classes/PhysicsDirectBodyState3D.xml +++ b/doc/classes/PhysicsDirectBodyState3D.xml @@ -216,45 +216,45 @@ </method> </methods> <members> - <member name="angular_velocity" type="Vector3" setter="set_angular_velocity" getter="get_angular_velocity" default="Vector3(0, 0, 0)"> + <member name="angular_velocity" type="Vector3" setter="set_angular_velocity" getter="get_angular_velocity"> The body's rotational velocity in [i]radians[/i] per second. </member> - <member name="center_of_mass" type="Vector3" setter="" getter="get_center_of_mass" default="Vector3(0, 0, 0)"> + <member name="center_of_mass" type="Vector3" setter="" getter="get_center_of_mass"> The body's center of mass position relative to the body's center in the global coordinate system. </member> - <member name="center_of_mass_local" type="Vector3" setter="" getter="get_center_of_mass_local" default="Vector3(0, 0, 0)"> + <member name="center_of_mass_local" type="Vector3" setter="" getter="get_center_of_mass_local"> The body's center of mass position in the body's local coordinate system. </member> - <member name="inverse_inertia" type="Vector3" setter="" getter="get_inverse_inertia" default="Vector3(0, 0, 0)"> + <member name="inverse_inertia" type="Vector3" setter="" getter="get_inverse_inertia"> The inverse of the inertia of the body. </member> - <member name="inverse_inertia_tensor" type="Basis" setter="" getter="get_inverse_inertia_tensor" default="Basis(1, 0, 0, 0, 1, 0, 0, 0, 1)"> + <member name="inverse_inertia_tensor" type="Basis" setter="" getter="get_inverse_inertia_tensor"> The inverse of the inertia tensor of the body. </member> - <member name="inverse_mass" type="float" setter="" getter="get_inverse_mass" default="0.0"> + <member name="inverse_mass" type="float" setter="" getter="get_inverse_mass"> The inverse of the mass of the body. </member> - <member name="linear_velocity" type="Vector3" setter="set_linear_velocity" getter="get_linear_velocity" default="Vector3(0, 0, 0)"> + <member name="linear_velocity" type="Vector3" setter="set_linear_velocity" getter="get_linear_velocity"> The body's linear velocity in units per second. </member> - <member name="principal_inertia_axes" type="Basis" setter="" getter="get_principal_inertia_axes" default="Basis(1, 0, 0, 0, 1, 0, 0, 0, 1)"> + <member name="principal_inertia_axes" type="Basis" setter="" getter="get_principal_inertia_axes"> </member> - <member name="sleeping" type="bool" setter="set_sleep_state" getter="is_sleeping" default="false"> + <member name="sleeping" type="bool" setter="set_sleep_state" getter="is_sleeping"> If [code]true[/code], this body is currently sleeping (not active). </member> - <member name="step" type="float" setter="" getter="get_step" default="0.0"> + <member name="step" type="float" setter="" getter="get_step"> The timestep (delta) used for the simulation. </member> - <member name="total_angular_damp" type="float" setter="" getter="get_total_angular_damp" default="0.0"> + <member name="total_angular_damp" type="float" setter="" getter="get_total_angular_damp"> The rate at which the body stops rotating, if there are not any other forces moving it. </member> - <member name="total_gravity" type="Vector3" setter="" getter="get_total_gravity" default="Vector3(0, 0, 0)"> + <member name="total_gravity" type="Vector3" setter="" getter="get_total_gravity"> The total gravity vector being currently applied to this body. </member> - <member name="total_linear_damp" type="float" setter="" getter="get_total_linear_damp" default="0.0"> + <member name="total_linear_damp" type="float" setter="" getter="get_total_linear_damp"> The rate at which the body stops moving, if there are not any other forces moving it. </member> - <member name="transform" type="Transform3D" setter="set_transform" getter="get_transform" default="Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)"> + <member name="transform" type="Transform3D" setter="set_transform" getter="get_transform"> The body's transformation matrix. </member> </members> diff --git a/doc/classes/PhysicsPointQueryParameters2D.xml b/doc/classes/PhysicsPointQueryParameters2D.xml index a6cbe2d574..76dc816dab 100644 --- a/doc/classes/PhysicsPointQueryParameters2D.xml +++ b/doc/classes/PhysicsPointQueryParameters2D.xml @@ -10,7 +10,7 @@ </tutorials> <members> <member name="canvas_instance_id" type="int" setter="set_canvas_instance_id" getter="get_canvas_instance_id" default="0"> - If different from [code]0[/code], restricts the query to a specific canvas layer specified by its instance id. See [method Object.get_instance_id]. + If different from [code]0[/code], restricts the query to a specific canvas layer specified by its instance ID. See [method Object.get_instance_id]. </member> <member name="collide_with_areas" type="bool" setter="set_collide_with_areas" getter="is_collide_with_areas_enabled" default="false"> If [code]true[/code], the query will take [Area2D]s into account. @@ -22,7 +22,7 @@ The physics layers the query will detect (as a bitmask). By default, all collision layers are detected. See [url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information. </member> <member name="exclude" type="RID[]" setter="set_exclude" getter="get_exclude" default="[]"> - The list of objects or object [RID]s that will be excluded from collisions. + The list of object [RID]s that will be excluded from collisions. Use [method CollisionObject2D.get_rid] to get the [RID] associated with a [CollisionObject2D]-derived node. </member> <member name="position" type="Vector2" setter="set_position" getter="get_position" default="Vector2(0, 0)"> The position being queried for, in global coordinates. diff --git a/doc/classes/PhysicsPointQueryParameters3D.xml b/doc/classes/PhysicsPointQueryParameters3D.xml index bedf05ce99..3270d3686d 100644 --- a/doc/classes/PhysicsPointQueryParameters3D.xml +++ b/doc/classes/PhysicsPointQueryParameters3D.xml @@ -18,8 +18,8 @@ <member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask" default="4294967295"> The physics layers the query will detect (as a bitmask). By default, all collision layers are detected. See [url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information. </member> - <member name="exclude" type="Array" setter="set_exclude" getter="get_exclude" default="[]"> - The list of objects or object [RID]s that will be excluded from collisions. + <member name="exclude" type="RID[]" setter="set_exclude" getter="get_exclude" default="[]"> + The list of object [RID]s that will be excluded from collisions. Use [method CollisionObject3D.get_rid] to get the [RID] associated with a [CollisionObject3D]-derived node. </member> <member name="position" type="Vector3" setter="set_position" getter="get_position" default="Vector3(0, 0, 0)"> The position being queried for, in global coordinates. diff --git a/doc/classes/PhysicsRayQueryParameters2D.xml b/doc/classes/PhysicsRayQueryParameters2D.xml index d6a2662adc..cf5c31d9ec 100644 --- a/doc/classes/PhysicsRayQueryParameters2D.xml +++ b/doc/classes/PhysicsRayQueryParameters2D.xml @@ -35,7 +35,7 @@ The physics layers the query will detect (as a bitmask). By default, all collision layers are detected. See [url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information. </member> <member name="exclude" type="RID[]" setter="set_exclude" getter="get_exclude" default="[]"> - The list of objects or object [RID]s that will be excluded from collisions. + The list of object [RID]s that will be excluded from collisions. Use [method CollisionObject2D.get_rid] to get the [RID] associated with a [CollisionObject2D]-derived node. </member> <member name="from" type="Vector2" setter="set_from" getter="get_from" default="Vector2(0, 0)"> The starting point of the ray being queried for, in global coordinates. diff --git a/doc/classes/PhysicsRayQueryParameters3D.xml b/doc/classes/PhysicsRayQueryParameters3D.xml index 620aa6bf5f..4f70eedb21 100644 --- a/doc/classes/PhysicsRayQueryParameters3D.xml +++ b/doc/classes/PhysicsRayQueryParameters3D.xml @@ -14,7 +14,7 @@ <param index="0" name="from" type="Vector3" /> <param index="1" name="to" type="Vector3" /> <param index="2" name="collision_mask" type="int" default="4294967295" /> - <param index="3" name="exclude" type="Array" default="[]" /> + <param index="3" name="exclude" type="RID[]" default="[]" /> <description> Returns a new, pre-configured [PhysicsRayQueryParameters3D] object. Use it to quickly create query parameters using the most common options. [codeblock] @@ -34,8 +34,8 @@ <member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask" default="4294967295"> The physics layers the query will detect (as a bitmask). By default, all collision layers are detected. See [url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information. </member> - <member name="exclude" type="Array" setter="set_exclude" getter="get_exclude" default="[]"> - The list of objects or object [RID]s that will be excluded from collisions. + <member name="exclude" type="RID[]" setter="set_exclude" getter="get_exclude" default="[]"> + The list of object [RID]s that will be excluded from collisions. Use [method CollisionObject3D.get_rid] to get the [RID] associated with a [CollisionObject3D]-derived node. </member> <member name="from" type="Vector3" setter="set_from" getter="get_from" default="Vector3(0, 0, 0)"> The starting point of the ray being queried for, in global coordinates. diff --git a/doc/classes/PhysicsServer2D.xml b/doc/classes/PhysicsServer2D.xml index 18ac8a11df..2d25965180 100644 --- a/doc/classes/PhysicsServer2D.xml +++ b/doc/classes/PhysicsServer2D.xml @@ -736,6 +736,14 @@ <description> </description> </method> + <method name="joint_disable_collisions_between_bodies"> + <return type="void" /> + <param index="0" name="joint" type="RID" /> + <param index="1" name="disable" type="bool" /> + <description> + Sets whether the bodies attached to the [Joint2D] will collide with each other. + </description> + </method> <method name="joint_get_param" qualifiers="const"> <return type="float" /> <param index="0" name="joint" type="RID" /> @@ -751,6 +759,13 @@ Returns a joint's type (see [enum JointType]). </description> </method> + <method name="joint_is_disabled_collisions_between_bodies" qualifiers="const"> + <return type="bool" /> + <param index="0" name="joint" type="RID" /> + <description> + Returns whether the bodies attached to the [Joint2D] will collide with each other. + </description> + </method> <method name="joint_make_damped_spring"> <return type="void" /> <param index="0" name="joint" type="RID" /> diff --git a/doc/classes/PhysicsServer3D.xml b/doc/classes/PhysicsServer3D.xml index 95f7fb69a2..e62bda0dd3 100644 --- a/doc/classes/PhysicsServer3D.xml +++ b/doc/classes/PhysicsServer3D.xml @@ -815,6 +815,14 @@ <description> </description> </method> + <method name="joint_disable_collisions_between_bodies"> + <return type="void" /> + <param index="0" name="joint" type="RID" /> + <param index="1" name="disable" type="bool" /> + <description> + Sets whether the bodies attached to the [Joint3D] will collide with each other. + </description> + </method> <method name="joint_get_solver_priority" qualifiers="const"> <return type="int" /> <param index="0" name="joint" type="RID" /> @@ -829,6 +837,13 @@ Returns the type of the Joint3D. </description> </method> + <method name="joint_is_disabled_collisions_between_bodies" qualifiers="const"> + <return type="bool" /> + <param index="0" name="joint" type="RID" /> + <description> + Returns whether the bodies attached to the [Joint3D] will collide with each other. + </description> + </method> <method name="joint_make_cone_twist"> <return type="void" /> <param index="0" name="joint" type="RID" /> diff --git a/doc/classes/PhysicsServer3DExtension.xml b/doc/classes/PhysicsServer3DExtension.xml index 1e9df54de5..d45cb17510 100644 --- a/doc/classes/PhysicsServer3DExtension.xml +++ b/doc/classes/PhysicsServer3DExtension.xml @@ -772,6 +772,13 @@ <description> </description> </method> + <method name="_joint_disable_collisions_between_bodies" qualifiers="virtual"> + <return type="void" /> + <param index="0" name="joint" type="RID" /> + <param index="1" name="disable" type="bool" /> + <description> + </description> + </method> <method name="_joint_get_solver_priority" qualifiers="virtual const"> <return type="int" /> <param index="0" name="joint" type="RID" /> @@ -784,6 +791,12 @@ <description> </description> </method> + <method name="_joint_is_disabled_collisions_between_bodies" qualifiers="virtual const"> + <return type="bool" /> + <param index="0" name="joint" type="RID" /> + <description> + </description> + </method> <method name="_joint_make_cone_twist" qualifiers="virtual"> <return type="void" /> <param index="0" name="joint" type="RID" /> diff --git a/doc/classes/PhysicsShapeQueryParameters2D.xml b/doc/classes/PhysicsShapeQueryParameters2D.xml index 8dcb329e7e..a73e60c6f5 100644 --- a/doc/classes/PhysicsShapeQueryParameters2D.xml +++ b/doc/classes/PhysicsShapeQueryParameters2D.xml @@ -19,7 +19,7 @@ The physics layers the query will detect (as a bitmask). By default, all collision layers are detected. See [url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information. </member> <member name="exclude" type="RID[]" setter="set_exclude" getter="get_exclude" default="[]"> - The list of objects or object [RID]s that will be excluded from collisions. + The list of object [RID]s that will be excluded from collisions. Use [method CollisionObject2D.get_rid] to get the [RID] associated with a [CollisionObject2D]-derived node. </member> <member name="margin" type="float" setter="set_margin" getter="get_margin" default="0.0"> The collision margin for the shape. diff --git a/doc/classes/PhysicsShapeQueryParameters3D.xml b/doc/classes/PhysicsShapeQueryParameters3D.xml index 64100f847b..a3ff1765f9 100644 --- a/doc/classes/PhysicsShapeQueryParameters3D.xml +++ b/doc/classes/PhysicsShapeQueryParameters3D.xml @@ -18,8 +18,8 @@ <member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask" default="4294967295"> The physics layers the query will detect (as a bitmask). By default, all collision layers are detected. See [url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information. </member> - <member name="exclude" type="Array" setter="set_exclude" getter="get_exclude" default="[]"> - The list of objects or object [RID]s that will be excluded from collisions. + <member name="exclude" type="RID[]" setter="set_exclude" getter="get_exclude" default="[]"> + The list of object [RID]s that will be excluded from collisions. Use [method CollisionObject3D.get_rid] to get the [RID] associated with a [CollisionObject3D]-derived node. </member> <member name="margin" type="float" setter="set_margin" getter="get_margin" default="0.0"> The collision margin for the shape. diff --git a/doc/classes/PhysicsTestMotionParameters2D.xml b/doc/classes/PhysicsTestMotionParameters2D.xml index 5b969ea869..be5e5a3617 100644 --- a/doc/classes/PhysicsTestMotionParameters2D.xml +++ b/doc/classes/PhysicsTestMotionParameters2D.xml @@ -14,9 +14,9 @@ If set to [code]false[/code], shapes of type [constant PhysicsServer2D.SHAPE_SEPARATION_RAY] are only used for separation when overlapping with other bodies. That's the main use for separation ray shapes. </member> <member name="exclude_bodies" type="RID[]" setter="set_exclude_bodies" getter="get_exclude_bodies" default="[]"> - Optional array of body [RID] to exclude from collision. + Optional array of body [RID] to exclude from collision. Use [method CollisionObject2D.get_rid] to get the [RID] associated with a [CollisionObject2D]-derived node. </member> - <member name="exclude_objects" type="Array" setter="set_exclude_objects" getter="get_exclude_objects" default="[]"> + <member name="exclude_objects" type="int[]" setter="set_exclude_objects" getter="get_exclude_objects" default="[]"> Optional array of object unique instance ID to exclude from collision. See [method Object.get_instance_id]. </member> <member name="from" type="Transform2D" setter="set_from" getter="get_from" default="Transform2D(1, 0, 0, 1, 0, 0)"> diff --git a/doc/classes/PhysicsTestMotionParameters3D.xml b/doc/classes/PhysicsTestMotionParameters3D.xml index ea9bca6a35..be7d05691e 100644 --- a/doc/classes/PhysicsTestMotionParameters3D.xml +++ b/doc/classes/PhysicsTestMotionParameters3D.xml @@ -13,10 +13,10 @@ If set to [code]true[/code], shapes of type [constant PhysicsServer3D.SHAPE_SEPARATION_RAY] are used to detect collisions and can stop the motion. Can be useful when snapping to the ground. If set to [code]false[/code], shapes of type [constant PhysicsServer3D.SHAPE_SEPARATION_RAY] are only used for separation when overlapping with other bodies. That's the main use for separation ray shapes. </member> - <member name="exclude_bodies" type="Array" setter="set_exclude_bodies" getter="get_exclude_bodies" default="[]"> - Optional array of body [RID] to exclude from collision. + <member name="exclude_bodies" type="RID[]" setter="set_exclude_bodies" getter="get_exclude_bodies" default="[]"> + Optional array of body [RID] to exclude from collision. Use [method CollisionObject3D.get_rid] to get the [RID] associated with a [CollisionObject3D]-derived node. </member> - <member name="exclude_objects" type="Array" setter="set_exclude_objects" getter="get_exclude_objects" default="[]"> + <member name="exclude_objects" type="int[]" setter="set_exclude_objects" getter="get_exclude_objects" default="[]"> Optional array of object unique instance ID to exclude from collision. See [method Object.get_instance_id]. </member> <member name="from" type="Transform3D" setter="set_from" getter="get_from" default="Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)"> diff --git a/doc/classes/PlaceholderCubemap.xml b/doc/classes/PlaceholderCubemap.xml index 3617c6ac2c..0892b023a2 100644 --- a/doc/classes/PlaceholderCubemap.xml +++ b/doc/classes/PlaceholderCubemap.xml @@ -1,8 +1,12 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="PlaceholderCubemap" inherits="PlaceholderTextureLayered" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Placeholder class for a cubemap texture. </brief_description> <description> + This class is used when loading a project that uses a [Cubemap] subclass in 2 conditions: + - When running the project exported in dedicated server mode, only the texture's dimensions are kept (as they may be relied upon for gameplay purposes or positioning of other elements). This allows reducing the exported PCK's size significantly. + - When this subclass is missing due to using a different engine version or build (e.g. modules disabled). </description> <tutorials> </tutorials> diff --git a/doc/classes/PlaceholderCubemapArray.xml b/doc/classes/PlaceholderCubemapArray.xml index 1fcf1e7795..c7a7e9154c 100644 --- a/doc/classes/PlaceholderCubemapArray.xml +++ b/doc/classes/PlaceholderCubemapArray.xml @@ -1,8 +1,12 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="PlaceholderCubemapArray" inherits="PlaceholderTextureLayered" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Placeholder class for a cubemap texture array. </brief_description> <description> + This class is used when loading a project that uses a [CubemapArray] subclass in 2 conditions: + - When running the project exported in dedicated server mode, only the texture's dimensions are kept (as they may be relied upon for gameplay purposes or positioning of other elements). This allows reducing the exported PCK's size significantly. + - When this subclass is missing due to using a different engine version or build (e.g. modules disabled). </description> <tutorials> </tutorials> diff --git a/doc/classes/PlaceholderMaterial.xml b/doc/classes/PlaceholderMaterial.xml index c66641d81c..7febdc7a07 100644 --- a/doc/classes/PlaceholderMaterial.xml +++ b/doc/classes/PlaceholderMaterial.xml @@ -1,8 +1,12 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="PlaceholderMaterial" inherits="Material" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Placeholder class for a material. </brief_description> <description> + This class is used when loading a project that uses a [Material] subclass in 2 conditions: + - When running the project exported in dedicated server mode, only the texture's dimensions are kept (as they may be relied upon for gameplay purposes or positioning of other elements). This allows reducing the exported PCK's size significantly. + - When this subclass is missing due to using a different engine version or build (e.g. modules disabled). </description> <tutorials> </tutorials> diff --git a/doc/classes/PlaceholderMesh.xml b/doc/classes/PlaceholderMesh.xml index cc688816b6..8021a57878 100644 --- a/doc/classes/PlaceholderMesh.xml +++ b/doc/classes/PlaceholderMesh.xml @@ -1,13 +1,18 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="PlaceholderMesh" inherits="Mesh" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Placeholder class for a mesh. </brief_description> <description> + This class is used when loading a project that uses a [Mesh] subclass in 2 conditions: + - When running the project exported in dedicated server mode, only the texture's dimensions are kept (as they may be relied upon for gameplay purposes or positioning of other elements). This allows reducing the exported PCK's size significantly. + - When this subclass is missing due to using a different engine version or build (e.g. modules disabled). </description> <tutorials> </tutorials> <members> <member name="aabb" type="AABB" setter="set_aabb" getter="get_aabb" default="AABB(0, 0, 0, 0, 0, 0)"> + The smallest [AABB] enclosing this mesh in local space. </member> </members> </class> diff --git a/doc/classes/PlaceholderTexture2D.xml b/doc/classes/PlaceholderTexture2D.xml index 76e575265b..c889055e4d 100644 --- a/doc/classes/PlaceholderTexture2D.xml +++ b/doc/classes/PlaceholderTexture2D.xml @@ -1,13 +1,19 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="PlaceholderTexture2D" inherits="Texture2D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Placeholder class for a 2-dimensional texture. </brief_description> <description> + This class is used when loading a project that uses a [Texture2D] subclass in 2 conditions: + - When running the project exported in dedicated server mode, only the texture's dimensions are kept (as they may be relied upon for gameplay purposes or positioning of other elements). This allows reducing the exported PCK's size significantly. + - When this subclass is missing due to using a different engine version or build (e.g. modules disabled). </description> <tutorials> </tutorials> <members> + <member name="resource_local_to_scene" type="bool" setter="set_local_to_scene" getter="is_local_to_scene" overrides="Resource" default="false" /> <member name="size" type="Vector2" setter="set_size" getter="get_size" default="Vector2(1, 1)"> + The texture's size (in pixels). </member> </members> </class> diff --git a/doc/classes/PlaceholderTexture2DArray.xml b/doc/classes/PlaceholderTexture2DArray.xml index a502e5d334..a749e8c039 100644 --- a/doc/classes/PlaceholderTexture2DArray.xml +++ b/doc/classes/PlaceholderTexture2DArray.xml @@ -1,8 +1,12 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="PlaceholderTexture2DArray" inherits="PlaceholderTextureLayered" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Placeholder class for a 2-dimensional texture array. </brief_description> <description> + This class is used when loading a project that uses a [Texture2D] subclass in 2 conditions: + - When running the project exported in dedicated server mode, only the texture's dimensions are kept (as they may be relied upon for gameplay purposes or positioning of other elements). This allows reducing the exported PCK's size significantly. + - When this subclass is missing due to using a different engine version or build (e.g. modules disabled). </description> <tutorials> </tutorials> diff --git a/doc/classes/PlaceholderTexture3D.xml b/doc/classes/PlaceholderTexture3D.xml index d31e538307..ccd3c94fc2 100644 --- a/doc/classes/PlaceholderTexture3D.xml +++ b/doc/classes/PlaceholderTexture3D.xml @@ -1,13 +1,18 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="PlaceholderTexture3D" inherits="Texture3D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Placeholder class for a 3-dimensional texture. </brief_description> <description> + This class is used when loading a project that uses a [Texture3D] subclass in 2 conditions: + - When running the project exported in dedicated server mode, only the texture's dimensions are kept (as they may be relied upon for gameplay purposes or positioning of other elements). This allows reducing the exported PCK's size significantly. + - When this subclass is missing due to using a different engine version or build (e.g. modules disabled). </description> <tutorials> </tutorials> <members> <member name="size" type="Vector3i" setter="set_size" getter="get_size" default="Vector3i(1, 1, 1)"> + The texture's size (in pixels). </member> </members> </class> diff --git a/doc/classes/PlaceholderTextureLayered.xml b/doc/classes/PlaceholderTextureLayered.xml index 39af08473a..8cc6dd606a 100644 --- a/doc/classes/PlaceholderTextureLayered.xml +++ b/doc/classes/PlaceholderTextureLayered.xml @@ -1,15 +1,21 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="PlaceholderTextureLayered" inherits="TextureLayered" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Placeholder class for a 2-dimensional texture array. </brief_description> <description> + This class is used when loading a project that uses a [TextureLayered] subclass in 2 conditions: + - When running the project exported in dedicated server mode, only the texture's dimensions are kept (as they may be relied upon for gameplay purposes or positioning of other elements). This allows reducing the exported PCK's size significantly. + - When this subclass is missing due to using a different engine version or build (e.g. modules disabled). </description> <tutorials> </tutorials> <members> <member name="layers" type="int" setter="set_layers" getter="get_layers" default="1"> + The number of layers in the texture array. </member> <member name="size" type="Vector2i" setter="set_size" getter="get_size" default="Vector2i(1, 1)"> + The size of each texture layer (in pixels). </member> </members> </class> diff --git a/doc/classes/PointLight2D.xml b/doc/classes/PointLight2D.xml index 89cabbd428..0c51a78e49 100644 --- a/doc/classes/PointLight2D.xml +++ b/doc/classes/PointLight2D.xml @@ -1,10 +1,13 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="PointLight2D" inherits="Light2D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Positional 2D light source. </brief_description> <description> + Casts light in a 2D environment. This light's shape is defined by a (usually grayscale) texture </description> <tutorials> + <link title="2D lights and shadows">$DOCS_URL/tutorials/2d/2d_lights_and_shadows.html</link> </tutorials> <members> <member name="height" type="float" setter="set_height" getter="get_height" default="0.0"> diff --git a/doc/classes/Popup.xml b/doc/classes/Popup.xml index 3fcf0a9b8f..a56bf77774 100644 --- a/doc/classes/Popup.xml +++ b/doc/classes/Popup.xml @@ -4,7 +4,7 @@ Popup is a base window container for popup-like subwindows. </brief_description> <description> - Popup is a base window container for popup-like subwindows. It's a modal by default (see [member popup_window]) and has helpers for custom popup behavior. + Popup is a base window container for popup-like subwindows. It's a modal by default (see [member Window.popup_window]) and has helpers for custom popup behavior. </description> <tutorials> </tutorials> diff --git a/doc/classes/PopupMenu.xml b/doc/classes/PopupMenu.xml index 0dcb33ac4c..8dec4eaf86 100644 --- a/doc/classes/PopupMenu.xml +++ b/doc/classes/PopupMenu.xml @@ -206,7 +206,7 @@ <return type="int" /> <param index="0" name="index" type="int" /> <description> - Returns the id of the item at the given [param index]. [code]id[/code] can be manually assigned, while index can not. + Returns the ID of the item at the given [param index]. [code]id[/code] can be manually assigned, while index can not. </description> </method> <method name="get_item_indent" qualifiers="const"> @@ -544,6 +544,7 @@ </signal> <signal name="menu_changed"> <description> + Emitted when any item is added, modified or removed. </description> </signal> </signals> @@ -576,11 +577,14 @@ Width of the single indentation level. </theme_item> <theme_item name="item_end_padding" data_type="constant" type="int" default="2"> + Horizontal padding to the right of the items (or left, in RTL layout). </theme_item> <theme_item name="item_start_padding" data_type="constant" type="int" default="2"> + Horizontal padding to the left of the items (or right, in RTL layout). </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the item text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="separator_outline_size" data_type="constant" type="int" default="0"> The size of the labeled separator text outline. diff --git a/doc/classes/PortableCompressedTexture2D.xml b/doc/classes/PortableCompressedTexture2D.xml index a0492f2c07..693eaafad3 100644 --- a/doc/classes/PortableCompressedTexture2D.xml +++ b/doc/classes/PortableCompressedTexture2D.xml @@ -21,7 +21,7 @@ <param index="3" name="lossy_quality" type="float" default="0.8" /> <description> Initializes the compressed texture from a base image. The compression mode must be provided. - If this image will be used as a normal map, the "normal map" flag is recommended, to ensure optimum quality. + [param normal_map] is recommended to ensure optimum quality if this image will be used as a normal map. If lossy compression is requested, the quality setting can optionally be provided. This maps to Lossy WebP compression quality. </description> </method> @@ -58,6 +58,7 @@ When running on the editor, this class will keep the source compressed data in memory. Otherwise, the source compressed data is lost after loading and the resource can't be re saved. This flag allows to keep the compressed data in memory if you intend it to persist after loading. </member> + <member name="resource_local_to_scene" type="bool" setter="set_local_to_scene" getter="is_local_to_scene" overrides="Resource" default="false" /> <member name="size_override" type="Vector2" setter="set_size_override" getter="get_size_override" default="Vector2(0, 0)"> Allow overriding the texture size (for 2D only). </member> diff --git a/doc/classes/PrimitiveMesh.xml b/doc/classes/PrimitiveMesh.xml index 7a411b27ac..b1c8907d8e 100644 --- a/doc/classes/PrimitiveMesh.xml +++ b/doc/classes/PrimitiveMesh.xml @@ -34,6 +34,9 @@ </method> </methods> <members> + <member name="add_uv2" type="bool" setter="set_add_uv2" getter="get_add_uv2" default="false"> + If set, generates UV2 UV coordinates applying a padding using the [member uv2_padding] setting. UV2 is needed for lightmapping. + </member> <member name="custom_aabb" type="AABB" setter="set_custom_aabb" getter="get_custom_aabb" default="AABB(0, 0, 0, 0, 0, 0)"> Overrides the [AABB] with one defined by user for use with frustum culling. Especially useful to avoid unexpected culling when using a shader to offset vertices. </member> @@ -44,5 +47,8 @@ <member name="material" type="Material" setter="set_material" getter="get_material"> The current [Material] of the primitive mesh. </member> + <member name="uv2_padding" type="float" setter="set_uv2_padding" getter="get_uv2_padding" default="2.0"> + If [member add_uv2] is set, specifies the padding in pixels applied along seams of the mesh. If at generation the size of the lightmap texture can't be determined, the UVs are calculated assuming a texture size of 1024x1024. + </member> </members> </class> diff --git a/doc/classes/ProgressBar.xml b/doc/classes/ProgressBar.xml index f8c5dc0e1f..9f89a4e4c3 100644 --- a/doc/classes/ProgressBar.xml +++ b/doc/classes/ProgressBar.xml @@ -15,8 +15,6 @@ <member name="show_percentage" type="bool" setter="set_show_percentage" getter="is_percentage_shown" default="true"> If [code]true[/code], the fill percentage is displayed on the bar. </member> - <member name="size_flags_vertical" type="int" setter="set_v_size_flags" getter="get_v_size_flags" overrides="Control" default="0" /> - <member name="step" type="float" setter="set_step" getter="get_step" overrides="Range" default="0.01" /> </members> <constants> <constant name="FILL_BEGIN_TO_END" value="0" enum="FillMode"> @@ -44,6 +42,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="font" data_type="font" type="Font"> Font used to draw the fill percentage if [member show_percentage] is [code]true[/code]. diff --git a/doc/classes/ProjectSettings.xml b/doc/classes/ProjectSettings.xml index 4699131c41..67b692a7a0 100644 --- a/doc/classes/ProjectSettings.xml +++ b/doc/classes/ProjectSettings.xml @@ -70,15 +70,18 @@ <method name="get_setting" qualifiers="const"> <return type="Variant" /> <param index="0" name="name" type="String" /> + <param index="1" name="default_value" type="Variant" default="null" /> <description> - Returns the value of a setting. + Returns the value of the setting identified by [param name]. If the setting doesn't exist and [param default_value] is specified, the value of [param default_value] is returned. Otherwise, [code]null[/code] is returned. [b]Example:[/b] [codeblocks] [gdscript] print(ProjectSettings.get_setting("application/config/name")) + print(ProjectSettings.get_setting("application/config/custom_description", "No description specified.")) [/gdscript] [csharp] GD.Print(ProjectSettings.GetSetting("application/config/name")); + GD.Print(ProjectSettings.GetSetting("application/config/custom_description", "No description specified.")); [/csharp] [/codeblocks] </description> @@ -208,7 +211,7 @@ If [code]true[/code], applies linear filtering when scaling the image (recommended for high-resolution artwork). If [code]false[/code], uses nearest-neighbor interpolation (recommended for pixel art). </member> <member name="application/config/custom_user_dir_name" type="String" setter="" getter="" default=""""> - This user directory is used for storing persistent data ([code]user://[/code] filesystem). If left empty, [code]user://[/code] resolves to a project-specific folder in Godot's own configuration folder (see [method OS.get_user_data_dir]). If a custom directory name is defined, this name will be used instead and appended to the system-specific user data directory (same parent folder as the Godot configuration folder documented in [method OS.get_user_data_dir]). + This user directory is used for storing persistent data ([code]user://[/code] filesystem). If a custom directory name is defined, this name will be appended to the system-specific user data directory (same parent folder as the Godot configuration folder documented in [method OS.get_user_data_dir]). The [member application/config/use_custom_user_dir] setting must be enabled for this to take effect. </member> <member name="application/config/description" type="String" setter="" getter="" default=""""> @@ -235,7 +238,8 @@ [b]Note:[/b] Regardless of this setting's value, [code]res://override.cfg[/code] will still be read to override the project settings. </member> <member name="application/config/use_custom_user_dir" type="bool" setter="" getter="" default="false"> - If [code]true[/code], the project will save user data to its own user directory (see [member application/config/custom_user_dir_name]). This setting is only effective on desktop platforms. A name must be set in the [member application/config/custom_user_dir_name] setting for this to take effect. If [code]false[/code], the project will save user data to [code](OS user data directory)/Godot/app_userdata/(project name)[/code]. + If [code]true[/code], the project will save user data to its own user directory. If [member application/config/custom_user_dir_name] is empty, [code]<OS user data directory>/<project name>[/code] directory will be used. If [code]false[/code], the project will save user data to [code]<OS user data directory>/Godot/app_userdata/<project name>[/code]. + See also [url=$DOCS_URL/tutorials/io/data_paths.html#accessing-persistent-user-data-user]File paths in Godot projects[/url]. This setting is only effective on desktop platforms. </member> <member name="application/config/use_hidden_project_data_directory" type="bool" setter="" getter="" default="true"> If [code]true[/code], the project will use a hidden directory ([code].godot[/code]) for storing project-specific data (metadata, shader cache, etc.). @@ -317,11 +321,13 @@ <member name="audio/driver/output_latency.web" type="int" setter="" getter="" default="50"> Safer override for [member audio/driver/output_latency] in the Web platform, to avoid audio issues especially on mobile devices. </member> - <member name="audio/general/2d_panning_strength" type="float" setter="" getter="" default="1.0"> - The base strength of the panning effect for all AudioStreamPlayer2D nodes. The panning strength can be further scaled on each Node using [member AudioStreamPlayer2D.panning_strength]. + <member name="audio/general/2d_panning_strength" type="float" setter="" getter="" default="0.5"> + The base strength of the panning effect for all [AudioStreamPlayer2D] nodes. The panning strength can be further scaled on each Node using [member AudioStreamPlayer2D.panning_strength]. A value of [code]0.0[/code] disables stereo panning entirely, leaving only volume attenuation in place. A value of [code]1.0[/code] completely mutes one of the channels if the sound is located exactly to the left (or right) of the listener. + The default value of [code]0.5[/code] is tuned for headphones. When using speakers, you may find lower values to sound better as speakers have a lower stereo separation compared to headphones. </member> - <member name="audio/general/3d_panning_strength" type="float" setter="" getter="" default="1.0"> - The base strength of the panning effect for all AudioStreamPlayer3D nodes. The panning strength can be further scaled on each Node using [member AudioStreamPlayer3D.panning_strength]. + <member name="audio/general/3d_panning_strength" type="float" setter="" getter="" default="0.5"> + The base strength of the panning effect for all [AudioStreamPlayer3D] nodes. The panning strength can be further scaled on each Node using [member AudioStreamPlayer3D.panning_strength]. A value of [code]0.0[/code] disables stereo panning entirely, leaving only volume attenuation in place. A value of [code]1.0[/code] completely mutes one of the channels if the sound is located exactly to the left (or right) of the listener. + The default value of [code]0.5[/code] is tuned for headphones. When using speakers, you may find lower values to sound better as speakers have a lower stereo separation compared to headphones. </member> <member name="audio/video/video_delay_compensation_ms" type="int" setter="" getter="" default="0"> Setting to hardcode audio delay when playing video. Best to leave this untouched unless you know what you are doing. @@ -341,9 +347,6 @@ <member name="compression/formats/zstd/window_log_size" type="int" setter="" getter="" default="27"> Largest size limit (in power of 2) allowed when compressing using long-distance matching with Zstandard. Higher values can result in better compression, but will require more memory when compressing and decompressing. </member> - <member name="debug/disable_touch" type="bool" setter="" getter="" default="false"> - Disable touch input. Only has effect on iOS. - </member> <member name="debug/file_logging/enable_file_logging" type="bool" setter="" getter="" default="false"> If [code]true[/code], logs all output to files. </member> @@ -398,7 +401,7 @@ <member name="debug/gdscript/warnings/redundant_await" type="int" setter="" getter="" default="1"> When set to [code]warn[/code] or [code]error[/code], produces a warning or an error respectively when a function that is not a coroutine is called with await. </member> - <member name="debug/gdscript/warnings/return_value_discarded" type="int" setter="" getter="" default="1"> + <member name="debug/gdscript/warnings/return_value_discarded" type="int" setter="" getter="" default="0"> When set to [code]warn[/code] or [code]error[/code], produces a warning or an error respectively when calling a function without using its return value (by assigning it to a variable or using it as a function argument). Such return values are sometimes used to denote possible errors using the [enum Error] enum. </member> <member name="debug/gdscript/warnings/shadowed_global_identifier" type="int" setter="" getter="" default="1"> @@ -555,7 +558,7 @@ Position offset for tooltips, relative to the mouse cursor's hotspot. </member> <member name="display/window/dpi/allow_hidpi" type="bool" setter="" getter="" default="true"> - If [code]true[/code], allows HiDPI display on Windows, macOS, Android, iOS and Web. If [code]false[/code], the platform's low-DPI fallback will be used on HiDPI displays, which causes the window to be displayed in a blurry or pixelated manner (and can cause various window management bugs). Therefore, it is recommended to make your project scale to [url=$DOCS_URL/tutorials/viewports/multiple_resolutions.html]multiple resolutions[/url] instead of disabling this setting. + If [code]true[/code], allows HiDPI display on Windows, macOS, Android, iOS and Web. If [code]false[/code], the platform's low-DPI fallback will be used on HiDPI displays, which causes the window to be displayed in a blurry or pixelated manner (and can cause various window management bugs). Therefore, it is recommended to make your project scale to [url=$DOCS_URL/tutorials/rendering/multiple_resolutions.html]multiple resolutions[/url] instead of disabling this setting. [b]Note:[/b] This setting has no effect on Linux as DPI-awareness fallbacks are not supported there. </member> <member name="display/window/energy_saving/keep_screen_on" type="bool" setter="" getter="" default="true"> @@ -582,7 +585,7 @@ [b]Note:[/b] This setting has no effect on the home indicator if [code]hide_home_indicator[/code] is [code]true[/code]. </member> <member name="display/window/per_pixel_transparency/allowed" type="bool" setter="" getter="" default="false"> - If [code]true[/code], allows per-pixel transparency for the window background. This affects performance, so leave it on [code]false[/code] unless you need it. See also [member display/window/size/transparent] and [member rendering/transparent_background]. + If [code]true[/code], allows per-pixel transparency for the window background. This affects performance, so leave it on [code]false[/code] unless you need it. See also [member display/window/size/transparent] and [member rendering/viewport/transparent_background]. </member> <member name="display/window/size/always_on_top" type="bool" setter="" getter="" default="false"> Forces the main window to be always on top. @@ -607,7 +610,7 @@ [b]Note:[/b] This setting is ignored on iOS. </member> <member name="display/window/size/transparent" type="bool" setter="" getter="" default="false"> - If [code]true[/code], enables a window manager hint that the main window background [i]can[/i] be transparent. This does not make the background actually transparent. For the background to be transparent, the root viewport must also be made transparent by enabling [member rendering/transparent_background]. + If [code]true[/code], enables a window manager hint that the main window background [i]can[/i] be transparent. This does not make the background actually transparent. For the background to be transparent, the root viewport must also be made transparent by enabling [member rendering/viewport/transparent_background]. [b]Note:[/b] To use a transparent splash screen, set [member application/boot_splash/bg_color] to [code]Color(0, 0, 0, 0)[/code]. [b]Note:[/b] This setting has no effect if [member display/window/per_pixel_transparency/allowed] is set to [code]false[/code]. </member> @@ -836,6 +839,7 @@ [b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are necessary for the internal logic of several [Control]s. The events assigned to the action can however be modified. </member> <member name="input/ui_swap_input_direction" type="Dictionary" setter="" getter=""> + Default [InputEventAction] to swap input direction, i.e. change between left-to-right to right-to-left modes. Affects text-editting controls ([LineEdit], [TextEdit]). </member> <member name="input/ui_text_add_selection_for_next_occurrence" type="Dictionary" setter="" getter=""> If a selection is currently active with the last caret in text fields, searches for the next occurrence of the selection, adds a caret and selects the next occurrence. @@ -1811,6 +1815,10 @@ <member name="physics/common/enable_object_picking" type="bool" setter="" getter="" default="true"> Enables [member Viewport.physics_object_picking] on the root viewport. </member> + <member name="physics/common/max_physics_steps_per_frame" type="int" setter="" getter="" default="8"> + Controls the maximum number of physics steps that can be simulated each rendered frame. The default value is tuned to avoid "spiral of death" situations where expensive physics simulations trigger more expensive simulations indefinitely. However, the game will appear to slow down if the rendering FPS is less than [code]1 / max_physics_steps_per_frame[/code] of [member physics/common/physics_ticks_per_second]. This occurs even if [code]delta[/code] is consistently used in physics calculations. To avoid this, increase [member physics/common/max_physics_steps_per_frame] if you have increased [member physics/common/physics_ticks_per_second] significantly above its default value. + [b]Note:[/b] This property is only read when the project starts. To change the maximum number of simulated physics steps per frame at runtime, set [member Engine.max_physics_steps_per_frame] instead. + </member> <member name="physics/common/physics_jitter_fix" type="float" setter="" getter="" default="0.5"> Controls how much physics ticks are synchronized with real time. For 0 or less, the ticks are synchronized. Such values are recommended for network games, where clock synchronization matters. Higher values cause higher deviation of in-game clock and real clock, but allows smoothing out framerate jitters. The default value of 0.5 should be fine for most; values above 2 could cause the game to react to dropped frames with a noticeable delay and are not recommended. [b]Note:[/b] For best results, when using a custom physics interpolation solution, the physics jitter fix should be disabled by setting [member physics/common/physics_jitter_fix] to [code]0[/code]. @@ -1819,7 +1827,7 @@ <member name="physics/common/physics_ticks_per_second" type="int" setter="" getter="" default="60"> The number of fixed iterations per second. This controls how often physics simulation and [method Node._physics_process] methods are run. See also [member application/run/max_fps]. [b]Note:[/b] This property is only read when the project starts. To change the physics FPS at runtime, set [member Engine.physics_ticks_per_second] instead. - [b]Note:[/b] Only 8 physics ticks may be simulated per rendered frame at most. If more than 8 physics ticks have to be simulated per rendered frame to keep up with rendering, the game will appear to slow down (even if [code]delta[/code] is used consistently in physics calculations). Therefore, it is recommended not to increase [member physics/common/physics_ticks_per_second] above 240. Otherwise, the game will slow down when the rendering framerate goes below 30 FPS. + [b]Note:[/b] Only [member physics/common/max_physics_steps_per_frame] physics ticks may be simulated per rendered frame at most. If more physics ticks have to be simulated per rendered frame to keep up with rendering, the project will appear to slow down (even if [code]delta[/code] is used consistently in physics calculations). Therefore, it is recommended to also increase [member physics/common/max_physics_steps_per_frame] if increasing [member physics/common/physics_ticks_per_second] significantly above its default value. </member> <member name="rendering/2d/sdf/oversize" type="int" setter="" getter="" default="1"> </member> @@ -1887,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> @@ -2016,6 +2021,9 @@ <member name="rendering/lightmapping/bake_quality/ultra_quality_ray_count" type="int" setter="" getter="" default="1024"> The number of rays to use for baking lightmaps with [LightmapGI] when [member LightmapGI.quality] is [constant LightmapGI.BAKE_QUALITY_ULTRA]. </member> + <member name="rendering/lightmapping/primitive_meshes/texel_size" type="float" setter="" getter="" default="0.2"> + The texel_size that is used to calculate the [member Mesh.lightmap_size_hint] on [PrimitiveMesh] resources if [member PrimitiveMesh.add_uv2] is enabled. + </member> <member name="rendering/lightmapping/probe_capture/update_speed" type="float" setter="" getter="" default="15"> The framerate-independent update speed when representing dynamic object lighting from [LightmapProbe]s. Higher values make dynamic object lighting update faster. Higher values can prevent fast-moving objects from having "outdated" indirect lighting displayed on them, at the cost of possible flickering when an object moves from a bright area to a shaded area. </member> @@ -2226,9 +2234,6 @@ <member name="rendering/textures/lossless_compression/force_png" type="bool" setter="" getter="" default="false"> If [code]true[/code], the texture importer will import lossless textures using the PNG format. Otherwise, it will default to using WebP. </member> - <member name="rendering/textures/lossless_compression/webp_compression_level" type="int" setter="" getter="" default="2"> - The default compression level for lossless WebP. Higher levels result in smaller files at the cost of compression speed. Decompression speed is mostly unaffected by the compression level. Supported values are 0 to 9. Note that compression levels above 6 are very slow and offer very little savings. - </member> <member name="rendering/textures/vram_compression/import_bptc" type="bool" setter="" getter="" default="false"> If [code]true[/code], the texture importer will import VRAM-compressed textures using the BPTC algorithm. This texture compression algorithm is only supported on desktop platforms, and only when using the Vulkan renderer. [b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were already imported before. To make this setting apply to textures that were already imported, exit the editor, remove the [code].godot/imported/[/code] folder located inside the project folder then restart the editor (see [member application/config/use_hidden_project_data_directory]). @@ -2245,14 +2250,33 @@ If [code]true[/code], the texture importer will import VRAM-compressed textures using the S3 Texture Compression algorithm. This algorithm is only supported on desktop platforms and consoles. [b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were already imported before. To make this setting apply to textures that were already imported, exit the editor, remove the [code].godot/imported/[/code] folder located inside the project folder then restart the editor (see [member application/config/use_hidden_project_data_directory]). </member> - <member name="rendering/transparent_background" type="bool" setter="" getter="" default="false"> + <member name="rendering/textures/webp_compression/compression_method" type="int" setter="" getter="" default="2"> + The default compression method for WebP. Affects both lossy and lossless WebP. A higher value results in smaller files at the cost of compression speed. Decompression speed is mostly unaffected by the compression method. Supported values are 0 to 6. Note that compression methods above 4 are very slow and offer very little savings. + </member> + <member name="rendering/textures/webp_compression/lossless_compression_factor" type="float" setter="" getter="" default="25"> + The default compression factor for lossless WebP. Decompression speed is mostly unaffected by the compression factor. Supported values are 0 to 100. + </member> + <member name="rendering/viewport/transparent_background" type="bool" setter="" getter="" default="false"> If [code]true[/code], enables [member Viewport.transparent_bg] on the root viewport. This allows per-pixel transparency to be effective after also enabling [member display/window/size/transparent] and [member display/window/per_pixel_transparency/allowed]. </member> <member name="rendering/vrs/mode" type="int" setter="" getter="" default="0"> Set the default Variable Rate Shading (VRS) mode for the main viewport. See [member Viewport.vrs_mode] to change this at runtime, and [enum Viewport.VRSMode] for possible values. </member> <member name="rendering/vrs/texture" type="String" setter="" getter="" default=""""> - If [member rendering/vrs/mode] is set to texture, this is the path to default texture loaded as the VRS image. + If [member rendering/vrs/mode] is set to [b]Texture[/b], this is the path to default texture loaded as the VRS image. + The texture [i]must[/i] use a lossless compression format so that colors can be matched precisely. The following VRS densities are mapped to various colors, with brighter colors representing a lower level of shading precision: + [codeblock] + - 1x1 = rgb(0, 0, 0) - #000000 + - 1x2 = rgb(0, 85, 0) - #005500 + - 2x1 = rgb(85, 0, 0) - #550000 + - 2x2 = rgb(85, 85, 0) - #555500 + - 2x4 = rgb(85, 170, 0) - #55aa00 + - 4x2 = rgb(170, 85, 0) - #aa5500 + - 4x4 = rgb(170, 170, 0) - #aaaa00 + - 4x8 = rgb(170, 255, 0) - #aaff00 - Not supported on most hardware + - 8x4 = rgb(255, 170, 0) - #ffaa00 - Not supported on most hardware + - 8x8 = rgb(255, 255, 0) - #ffff00 - Not supported on most hardware + [/codeblock] </member> <member name="threading/worker_pool/low_priority_thread_ratio" type="float" setter="" getter="" default="0.3"> </member> @@ -2272,6 +2296,9 @@ <member name="xr/openxr/reference_space" type="int" setter="" getter="" default=""1""> Specify the default reference space. </member> + <member name="xr/openxr/submit_depth_buffer" type="bool" setter="" getter="" default="false"> + If [code]true[/code], OpenXR will manage the depth buffer and use the depth buffer for advanced reprojection provided this is supported by the XR runtime. Note that some rendering features in Godot can't be used with this feature. + </member> <member name="xr/openxr/view_configuration" type="int" setter="" getter="" default=""1""> Specify the view configuration with which to configure OpenXR setting up either Mono or Stereo rendering. </member> diff --git a/doc/classes/RDTextureFormat.xml b/doc/classes/RDTextureFormat.xml index 1b70303d2d..3bfcd610a4 100644 --- a/doc/classes/RDTextureFormat.xml +++ b/doc/classes/RDTextureFormat.xml @@ -35,7 +35,7 @@ </member> <member name="texture_type" type="int" setter="set_texture_type" getter="get_texture_type" enum="RenderingDevice.TextureType" default="1"> </member> - <member name="usage_bits" type="int" setter="set_usage_bits" getter="get_usage_bits" default="0"> + <member name="usage_bits" type="int" setter="set_usage_bits" getter="get_usage_bits" enum="RenderingDevice.TextureUsageBits" default="0"> </member> <member name="width" type="int" setter="set_width" getter="get_width" default="1"> </member> diff --git a/doc/classes/RID.xml b/doc/classes/RID.xml index a6523e4c8b..2d40a7be57 100644 --- a/doc/classes/RID.xml +++ b/doc/classes/RID.xml @@ -4,7 +4,8 @@ Handle for a [Resource]'s unique ID. </brief_description> <description> - The RID type is used to access the unique integer ID of a resource. They are opaque, which means they do not grant access to the associated resource by themselves. They are used by and with the low-level Server classes such as [RenderingServer]. + The RID [Variant] type is used to access a low-level resource by its unique ID. RIDs are opaque, which means they do not grant access to the resource by themselves. They are used by the low-level server classes, such as [DisplayServer], [RenderingServer], [TextServer], etc. + A low-level resource may correspond to a high-level [Resource], such as [Texture] or [Mesh]. </description> <tutorials> </tutorials> @@ -27,13 +28,13 @@ <method name="get_id" qualifiers="const"> <return type="int" /> <description> - Returns the ID of the referenced resource. + Returns the ID of the referenced low-level resource. </description> </method> <method name="is_valid" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if [RID] is valid. + Returns [code]true[/code] if the [RID] is not [code]0[/code]. </description> </method> </methods> @@ -42,36 +43,42 @@ <return type="bool" /> <param index="0" name="right" type="RID" /> <description> + Returns [code]true[/code] if the [RID]s are not equal. </description> </operator> <operator name="operator <"> <return type="bool" /> <param index="0" name="right" type="RID" /> <description> + Returns [code]true[/code] if the [RID]'s ID is less than [param right]'s ID. </description> </operator> <operator name="operator <="> <return type="bool" /> <param index="0" name="right" type="RID" /> <description> + Returns [code]true[/code] if the [RID]'s ID is less than or equal to [param right]'s ID. </description> </operator> <operator name="operator =="> <return type="bool" /> <param index="0" name="right" type="RID" /> <description> + Returns [code]true[/code] if both [RID]s are equal, which means they both refer to the same low-level resource. </description> </operator> <operator name="operator >"> <return type="bool" /> <param index="0" name="right" type="RID" /> <description> + Returns [code]true[/code] if the [RID]'s ID is greater than [param right]'s ID. </description> </operator> <operator name="operator >="> <return type="bool" /> <param index="0" name="right" type="RID" /> <description> + Returns [code]true[/code] if the [RID]'s ID is greater than or equal to [param right]'s ID. </description> </operator> </operators> diff --git a/doc/classes/Range.xml b/doc/classes/Range.xml index 8aa89015c6..2dcfc90955 100644 --- a/doc/classes/Range.xml +++ b/doc/classes/Range.xml @@ -62,7 +62,8 @@ <member name="rounded" type="bool" setter="set_use_rounded_values" getter="is_using_rounded_values" default="false"> If [code]true[/code], [code]value[/code] will always be rounded to the nearest integer. </member> - <member name="step" type="float" setter="set_step" getter="get_step" default="1.0"> + <member name="size_flags_vertical" type="int" setter="set_v_size_flags" getter="get_v_size_flags" overrides="Control" default="0" /> + <member name="step" type="float" setter="set_step" getter="get_step" default="0.01"> If greater than 0, [code]value[/code] will always be rounded to a multiple of [code]step[/code]. If [code]rounded[/code] is also [code]true[/code], [code]value[/code] will first be rounded to a multiple of [code]step[/code] then rounded to the nearest integer. </member> <member name="value" type="float" setter="set_value" getter="get_value" default="0.0"> diff --git a/doc/classes/Rect2.xml b/doc/classes/Rect2.xml index 28fe42afae..d39e50d5f0 100644 --- a/doc/classes/Rect2.xml +++ b/doc/classes/Rect2.xml @@ -82,9 +82,9 @@ var rect2 = rect.expand(Vector2(0, -1)) [/gdscript] [csharp] - # position (-3, 2), size (1, 1) + // position (-3, 2), size (1, 1) var rect = new Rect2(new Vector2(-3, 2), new Vector2(1, 1)); - # position (-3, -1), size (3, 4), so we fit both rect and Vector2(0, -1) + // position (-3, -1), size (3, 4), so we fit both rect and Vector2(0, -1) var rect2 = rect.Expand(new Vector2(0, -1)); [/csharp] [/codeblocks] diff --git a/doc/classes/Rect2i.xml b/doc/classes/Rect2i.xml index 6d4c113609..325ead0cfa 100644 --- a/doc/classes/Rect2i.xml +++ b/doc/classes/Rect2i.xml @@ -79,9 +79,9 @@ var rect2 = rect.expand(Vector2i(0, -1)) [/gdscript] [csharp] - # position (-3, 2), size (1, 1) + // position (-3, 2), size (1, 1) var rect = new Rect2i(new Vector2i(-3, 2), new Vector2i(1, 1)); - # position (-3, -1), size (3, 4), so we fit both rect and Vector2i(0, -1) + // position (-3, -1), size (3, 4), so we fit both rect and Vector2i(0, -1) var rect2 = rect.Expand(new Vector2i(0, -1)); [/csharp] [/codeblocks] diff --git a/doc/classes/RenderingDevice.xml b/doc/classes/RenderingDevice.xml index cb13697cc2..f318430611 100644 --- a/doc/classes/RenderingDevice.xml +++ b/doc/classes/RenderingDevice.xml @@ -9,8 +9,8 @@ <methods> <method name="barrier"> <return type="void" /> - <param index="0" name="from" type="int" default="7" /> - <param index="1" name="to" type="int" default="7" /> + <param index="0" name="from" type="int" enum="RenderingDevice.BarrierMask" default="7" /> + <param index="1" name="to" type="int" enum="RenderingDevice.BarrierMask" default="7" /> <description> </description> </method> @@ -19,7 +19,7 @@ <param index="0" name="buffer" type="RID" /> <param index="1" name="offset" type="int" /> <param index="2" name="size_bytes" type="int" /> - <param index="3" name="post_barrier" type="int" default="7" /> + <param index="3" name="post_barrier" type="int" enum="RenderingDevice.BarrierMask" default="7" /> <description> </description> </method> @@ -35,7 +35,7 @@ <param index="1" name="offset" type="int" /> <param index="2" name="size_bytes" type="int" /> <param index="3" name="data" type="PackedByteArray" /> - <param index="4" name="post_barrier" type="int" default="7" /> + <param index="4" name="post_barrier" type="int" enum="RenderingDevice.BarrierMask" default="7" /> <description> </description> </method> @@ -83,7 +83,7 @@ </method> <method name="compute_list_end"> <return type="void" /> - <param index="0" name="post_barrier" type="int" default="7" /> + <param index="0" name="post_barrier" type="int" enum="RenderingDevice.BarrierMask" default="7" /> <description> </description> </method> @@ -223,7 +223,7 @@ </method> <method name="draw_list_end"> <return type="void" /> - <param index="0" name="post_barrier" type="int" default="7" /> + <param index="0" name="post_barrier" type="int" enum="RenderingDevice.BarrierMask" default="7" /> <description> </description> </method> @@ -425,7 +425,7 @@ <param index="5" name="multisample_state" type="RDPipelineMultisampleState" /> <param index="6" name="stencil_state" type="RDPipelineDepthStencilState" /> <param index="7" name="color_blend_state" type="RDPipelineColorBlendState" /> - <param index="8" name="dynamic_state_flags" type="int" default="0" /> + <param index="8" name="dynamic_state_flags" type="int" enum="RenderingDevice.PipelineDynamicStateFlags" default="0" /> <param index="9" name="for_render_pass" type="int" default="0" /> <param index="10" name="specialization_constants" type="RDPipelineSpecializationConstant[]" default="[]" /> <description> @@ -504,7 +504,7 @@ <return type="RID" /> <param index="0" name="size_bytes" type="int" /> <param index="1" name="data" type="PackedByteArray" default="PackedByteArray()" /> - <param index="2" name="usage" type="int" default="0" /> + <param index="2" name="usage" type="int" enum="RenderingDevice.StorageBufferUsage" default="0" /> <description> </description> </method> @@ -534,7 +534,7 @@ <param index="3" name="mipmap_count" type="int" /> <param index="4" name="base_layer" type="int" /> <param index="5" name="layer_count" type="int" /> - <param index="6" name="post_barrier" type="int" default="7" /> + <param index="6" name="post_barrier" type="int" enum="RenderingDevice.BarrierMask" default="7" /> <description> </description> </method> @@ -549,7 +549,7 @@ <param index="6" name="dst_mipmap" type="int" /> <param index="7" name="src_layer" type="int" /> <param index="8" name="dst_layer" type="int" /> - <param index="9" name="post_barrier" type="int" default="7" /> + <param index="9" name="post_barrier" type="int" enum="RenderingDevice.BarrierMask" default="7" /> <description> </description> </method> @@ -589,7 +589,7 @@ <method name="texture_is_format_supported_for_usage" qualifiers="const"> <return type="bool" /> <param index="0" name="format" type="int" enum="RenderingDevice.DataFormat" /> - <param index="1" name="usage_flags" type="int" /> + <param index="1" name="usage_flags" type="int" enum="RenderingDevice.TextureUsageBits" /> <description> </description> </method> @@ -609,7 +609,7 @@ <return type="int" enum="Error" /> <param index="0" name="from_texture" type="RID" /> <param index="1" name="to_texture" type="RID" /> - <param index="2" name="post_barrier" type="int" default="7" /> + <param index="2" name="post_barrier" type="int" enum="RenderingDevice.BarrierMask" default="7" /> <description> </description> </method> @@ -618,7 +618,7 @@ <param index="0" name="texture" type="RID" /> <param index="1" name="layer" type="int" /> <param index="2" name="data" type="PackedByteArray" /> - <param index="3" name="post_barrier" type="int" default="7" /> + <param index="3" name="post_barrier" type="int" enum="RenderingDevice.BarrierMask" default="7" /> <description> </description> </method> @@ -643,6 +643,16 @@ <description> </description> </method> + <method name="vertex_array_create"> + <return type="RID" /> + <param index="0" name="vertex_count" type="int" /> + <param index="1" name="vertex_format" type="int" /> + <param index="2" name="src_buffers" type="RID[]" /> + <param index="3" name="offsets" type="PackedInt64Array" default="PackedInt64Array()" /> + <description> + Creates a vertex array based on the specified buffers. Optionally, [param offsets] (in bytes) may be defined for each buffer. + </description> + </method> <method name="vertex_buffer_create"> <return type="RID" /> <param index="0" name="size_bytes" type="int" /> @@ -659,16 +669,6 @@ </method> </methods> <constants> - <constant name="BARRIER_MASK_RASTER" value="1"> - </constant> - <constant name="BARRIER_MASK_COMPUTE" value="2"> - </constant> - <constant name="BARRIER_MASK_TRANSFER" value="4"> - </constant> - <constant name="BARRIER_MASK_ALL" value="7"> - </constant> - <constant name="BARRIER_MASK_NO_BARRIER" value="8"> - </constant> <constant name="DEVICE_TYPE_OTHER" value="0" enum="DeviceType"> Rendering device type does not match any of the other enum values or is unknown. </constant> @@ -1151,6 +1151,16 @@ </constant> <constant name="DATA_FORMAT_MAX" value="218" enum="DataFormat"> </constant> + <constant name="BARRIER_MASK_RASTER" value="1" enum="BarrierMask" is_bitfield="true"> + </constant> + <constant name="BARRIER_MASK_COMPUTE" value="2" enum="BarrierMask" is_bitfield="true"> + </constant> + <constant name="BARRIER_MASK_TRANSFER" value="4" enum="BarrierMask" is_bitfield="true"> + </constant> + <constant name="BARRIER_MASK_ALL_BARRIERS" value="7" enum="BarrierMask" is_bitfield="true"> + </constant> + <constant name="BARRIER_MASK_NO_BARRIER" value="8" enum="BarrierMask" is_bitfield="true"> + </constant> <constant name="TEXTURE_TYPE_1D" value="0" enum="TextureType"> </constant> <constant name="TEXTURE_TYPE_2D" value="1" enum="TextureType"> @@ -1183,25 +1193,25 @@ </constant> <constant name="TEXTURE_SAMPLES_MAX" value="7" enum="TextureSamples"> </constant> - <constant name="TEXTURE_USAGE_SAMPLING_BIT" value="1" enum="TextureUsageBits"> + <constant name="TEXTURE_USAGE_SAMPLING_BIT" value="1" enum="TextureUsageBits" is_bitfield="true"> </constant> - <constant name="TEXTURE_USAGE_COLOR_ATTACHMENT_BIT" value="2" enum="TextureUsageBits"> + <constant name="TEXTURE_USAGE_COLOR_ATTACHMENT_BIT" value="2" enum="TextureUsageBits" is_bitfield="true"> </constant> - <constant name="TEXTURE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT" value="4" enum="TextureUsageBits"> + <constant name="TEXTURE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT" value="4" enum="TextureUsageBits" is_bitfield="true"> </constant> - <constant name="TEXTURE_USAGE_STORAGE_BIT" value="8" enum="TextureUsageBits"> + <constant name="TEXTURE_USAGE_STORAGE_BIT" value="8" enum="TextureUsageBits" is_bitfield="true"> </constant> - <constant name="TEXTURE_USAGE_STORAGE_ATOMIC_BIT" value="16" enum="TextureUsageBits"> + <constant name="TEXTURE_USAGE_STORAGE_ATOMIC_BIT" value="16" enum="TextureUsageBits" is_bitfield="true"> </constant> - <constant name="TEXTURE_USAGE_CPU_READ_BIT" value="32" enum="TextureUsageBits"> + <constant name="TEXTURE_USAGE_CPU_READ_BIT" value="32" enum="TextureUsageBits" is_bitfield="true"> </constant> - <constant name="TEXTURE_USAGE_CAN_UPDATE_BIT" value="64" enum="TextureUsageBits"> + <constant name="TEXTURE_USAGE_CAN_UPDATE_BIT" value="64" enum="TextureUsageBits" is_bitfield="true"> </constant> - <constant name="TEXTURE_USAGE_CAN_COPY_FROM_BIT" value="128" enum="TextureUsageBits"> + <constant name="TEXTURE_USAGE_CAN_COPY_FROM_BIT" value="128" enum="TextureUsageBits" is_bitfield="true"> </constant> - <constant name="TEXTURE_USAGE_CAN_COPY_TO_BIT" value="256" enum="TextureUsageBits"> + <constant name="TEXTURE_USAGE_CAN_COPY_TO_BIT" value="256" enum="TextureUsageBits" is_bitfield="true"> </constant> - <constant name="TEXTURE_USAGE_INPUT_ATTACHMENT_BIT" value="512" enum="TextureUsageBits"> + <constant name="TEXTURE_USAGE_INPUT_ATTACHMENT_BIT" value="512" enum="TextureUsageBits" is_bitfield="true"> </constant> <constant name="TEXTURE_SWIZZLE_IDENTITY" value="0" enum="TextureSwizzle"> </constant> @@ -1263,7 +1273,7 @@ </constant> <constant name="INDEX_BUFFER_FORMAT_UINT32" value="1" enum="IndexBufferFormat"> </constant> - <constant name="STORAGE_BUFFER_USAGE_DISPATCH_INDIRECT" value="1" enum="StorageBufferUsage"> + <constant name="STORAGE_BUFFER_USAGE_DISPATCH_INDIRECT" value="1" enum="StorageBufferUsage" is_bitfield="true"> </constant> <constant name="UNIFORM_TYPE_SAMPLER" value="0" enum="UniformType"> </constant> @@ -1443,19 +1453,19 @@ </constant> <constant name="BLEND_OP_MAX" value="5" enum="BlendOperation"> </constant> - <constant name="DYNAMIC_STATE_LINE_WIDTH" value="1" enum="PipelineDynamicStateFlags"> + <constant name="DYNAMIC_STATE_LINE_WIDTH" value="1" enum="PipelineDynamicStateFlags" is_bitfield="true"> </constant> - <constant name="DYNAMIC_STATE_DEPTH_BIAS" value="2" enum="PipelineDynamicStateFlags"> + <constant name="DYNAMIC_STATE_DEPTH_BIAS" value="2" enum="PipelineDynamicStateFlags" is_bitfield="true"> </constant> - <constant name="DYNAMIC_STATE_BLEND_CONSTANTS" value="4" enum="PipelineDynamicStateFlags"> + <constant name="DYNAMIC_STATE_BLEND_CONSTANTS" value="4" enum="PipelineDynamicStateFlags" is_bitfield="true"> </constant> - <constant name="DYNAMIC_STATE_DEPTH_BOUNDS" value="8" enum="PipelineDynamicStateFlags"> + <constant name="DYNAMIC_STATE_DEPTH_BOUNDS" value="8" enum="PipelineDynamicStateFlags" is_bitfield="true"> </constant> - <constant name="DYNAMIC_STATE_STENCIL_COMPARE_MASK" value="16" enum="PipelineDynamicStateFlags"> + <constant name="DYNAMIC_STATE_STENCIL_COMPARE_MASK" value="16" enum="PipelineDynamicStateFlags" is_bitfield="true"> </constant> - <constant name="DYNAMIC_STATE_STENCIL_WRITE_MASK" value="32" enum="PipelineDynamicStateFlags"> + <constant name="DYNAMIC_STATE_STENCIL_WRITE_MASK" value="32" enum="PipelineDynamicStateFlags" is_bitfield="true"> </constant> - <constant name="DYNAMIC_STATE_STENCIL_REFERENCE" value="64" enum="PipelineDynamicStateFlags"> + <constant name="DYNAMIC_STATE_STENCIL_REFERENCE" value="64" enum="PipelineDynamicStateFlags" is_bitfield="true"> </constant> <constant name="INITIAL_ACTION_CLEAR" value="0" enum="InitialAction"> </constant> diff --git a/doc/classes/RenderingServer.xml b/doc/classes/RenderingServer.xml index 1c02d58299..87e569ba20 100644 --- a/doc/classes/RenderingServer.xml +++ b/doc/classes/RenderingServer.xml @@ -241,6 +241,7 @@ <param index="4" name="modulate" type="Color" default="Color(1, 1, 1, 1)" /> <param index="5" name="outline_size" type="int" default="0" /> <param index="6" name="px_range" type="float" default="1.0" /> + <param index="7" name="scale" type="float" default="1.0" /> <description> </description> </method> @@ -838,6 +839,8 @@ <method name="create_local_rendering_device" qualifiers="const"> <return type="RenderingDevice" /> <description> + Creates a RenderingDevice that can be used to do draw and compute operations on a separate thread. Cannot draw to the screen nor share data with the global RenderingDevice. + [b]Note:[/b] When using the OpenGL backend or when running in headless mode, this function always returns [code]null[/code]. </description> </method> <method name="decal_create"> @@ -960,12 +963,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" /> @@ -1273,6 +1270,8 @@ <method name="get_rendering_device" qualifiers="const"> <return type="RenderingDevice" /> <description> + Returns the global RenderingDevice. + [b]Note:[/b] When using the OpenGL backend or when running in headless mode, this function always returns [code]null[/code]. </description> </method> <method name="get_rendering_info"> @@ -1291,13 +1290,13 @@ <method name="get_test_cube"> <return type="RID" /> <description> - Returns the id of the test cube. Creates one if none exists. + Returns the ID of the test cube. Creates one if none exists. </description> </method> <method name="get_test_texture"> <return type="RID" /> <description> - Returns the id of the test texture. Creates one if none exists. + Returns the ID of the test texture. Creates one if none exists. </description> </method> <method name="get_video_adapter_api_version" qualifiers="const"> @@ -1331,7 +1330,7 @@ <method name="get_white_texture"> <return type="RID" /> <description> - Returns the id of a white texture. Creates one if none exists. + Returns the ID of a white texture. Creates one if none exists. </description> </method> <method name="gi_set_use_half_resolution"> @@ -1561,7 +1560,7 @@ <param index="0" name="instance" type="RID" /> <param index="1" name="aabb" type="AABB" /> <description> - Sets a custom AABB to use when culling objects from the view frustum. Equivalent to [method GeometryInstance3D.set_custom_aabb]. + Sets a custom AABB to use when culling objects from the view frustum. Equivalent to setting [member GeometryInstance3D.custom_aabb]. </description> </method> <method name="instance_set_extra_visibility_margin"> @@ -1587,6 +1586,15 @@ Sets the render layers that this instance will be drawn to. Equivalent to [member VisualInstance3D.layers]. </description> </method> + <method name="instance_set_pivot_data"> + <return type="void" /> + <param index="0" name="instance" type="RID" /> + <param index="1" name="sorting_offset" type="float" /> + <param index="2" name="use_aabb_center" type="bool" /> + <description> + Sets the sorting offset and switches between using the bounding box or instance origin for depth sorting. + </description> + </method> <method name="instance_set_scenario"> <return type="void" /> <param index="0" name="instance" type="RID" /> @@ -3024,6 +3032,14 @@ <description> </description> </method> + <method name="texture_get_rd_texture" qualifiers="const"> + <return type="RID" /> + <param index="0" name="texture" type="RID" /> + <param index="1" name="srgb" type="bool" default="false" /> + <description> + Returns a texture [RID] that can be used with [RenderingDevice]. + </description> + </method> <method name="texture_proxy_create"> <return type="RID" /> <param index="0" name="base" type="RID" /> diff --git a/doc/classes/RichTextLabel.xml b/doc/classes/RichTextLabel.xml index cb2481f705..dd291a425d 100644 --- a/doc/classes/RichTextLabel.xml +++ b/doc/classes/RichTextLabel.xml @@ -367,6 +367,7 @@ <return type="void" /> <param index="0" name="columns" type="int" /> <param index="1" name="inline_align" type="int" enum="InlineAlignment" default="0" /> + <param index="2" name="align_to_row" type="int" default="-1" /> <description> Adds a [code][table=columns,inline_align][/code] tag to the tag stack. </description> @@ -377,12 +378,12 @@ Adds a [code][u][/code] tag to the tag stack. </description> </method> - <method name="remove_line"> + <method name="remove_paragraph"> <return type="bool" /> - <param index="0" name="line" type="int" /> + <param index="0" name="paragraph" type="int" /> <description> - Removes a line of content from the label. Returns [code]true[/code] if the line exists. - The [param line] argument is the index of the line to remove, it can take values in the interval [code][0, get_line_count() - 1][/code]. + Removes a paragraph of content from the label. Returns [code]true[/code] if the paragraph exists. + The [param paragraph] argument is the index of the paragraph to remove, it can take values in the interval [code][0, get_paragraph_count() - 1][/code]. </description> </method> <method name="scroll_to_line"> @@ -399,6 +400,12 @@ Scrolls the window's top line to match first line of the [param paragraph]. </description> </method> + <method name="scroll_to_selection"> + <return type="void" /> + <description> + Scrolls to the beginning of the current selection. + </description> + </method> <method name="select_all"> <return type="void" /> <description> @@ -649,6 +656,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="shadow_offset_x" data_type="constant" type="int" default="1"> The horizontal offset of the font's shadow. diff --git a/doc/classes/SceneTree.xml b/doc/classes/SceneTree.xml index 070b98f21d..bd5b656e1a 100644 --- a/doc/classes/SceneTree.xml +++ b/doc/classes/SceneTree.xml @@ -308,6 +308,7 @@ </constant> <constant name="GROUP_CALL_UNIQUE" value="4" enum="GroupCallFlags"> Call a group only once even if the call is executed many times. + [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. </constant> </constants> </class> diff --git a/doc/classes/ScrollBar.xml b/doc/classes/ScrollBar.xml index 266787c9c8..247e892c24 100644 --- a/doc/classes/ScrollBar.xml +++ b/doc/classes/ScrollBar.xml @@ -12,7 +12,6 @@ <member name="custom_step" type="float" setter="set_custom_step" getter="get_custom_step" default="-1.0"> Overrides the step used when clicking increment and decrement buttons or when using arrow keys when the [ScrollBar] is focused. </member> - <member name="size_flags_vertical" type="int" setter="set_v_size_flags" getter="get_v_size_flags" overrides="Control" default="0" /> <member name="step" type="float" setter="set_step" getter="get_step" overrides="Range" default="0.0" /> </members> <signals> diff --git a/doc/classes/ScrollContainer.xml b/doc/classes/ScrollContainer.xml index b96b7187e4..af39261e81 100644 --- a/doc/classes/ScrollContainer.xml +++ b/doc/classes/ScrollContainer.xml @@ -49,6 +49,7 @@ Controls whether horizontal scrollbar can be used and when it should be visible. See [enum ScrollMode] for options. </member> <member name="scroll_deadzone" type="int" setter="set_deadzone" getter="get_deadzone" default="0"> + Deadzone for touch scrolling. Lower deadzone makes the scrolling more sensitive. </member> <member name="scroll_horizontal" type="int" setter="set_h_scroll" getter="get_h_scroll" default="0"> The current horizontal scroll value. diff --git a/doc/classes/Signal.xml b/doc/classes/Signal.xml index d99477ee95..3412cd2140 100644 --- a/doc/classes/Signal.xml +++ b/doc/classes/Signal.xml @@ -1,9 +1,29 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="Signal" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> - Class representing a signal defined in an object. + Built-in type representing a signal defined in an object. </brief_description> <description> + [Signal] is a built-in [Variant] type that represents a signal of an [Object] instance. Like all [Variant] types, it can be stored in variables and passed to functions. Signals allow all connected [Callable]s (and by extension their respective objects) to listen and react to events, without directly referencing one another. This keeps the code flexible and easier to manage. + In GDScript, signals can be declared with the [code]signal[/code] keyword. In C#, you may use the [code][Signal][/code] attribute on a delegate. + [codeblocks] + [gdscript] + signal attacked + + # Additional arguments may be declared. + # These arguments must be passed when the signal is emitted. + signal item_dropped(item_name, amount) + [/gdscript] + [csharp] + [Signal] + delegate void Attacked(); + + // Additional arguments may be declared. + // These arguments must be passed when the signal is emitted. + [Signal] + delegate void ItemDropped(itemName: string, amount: int); + [/csharp] + [/codeblocks] </description> <tutorials> <link title="Using Signals">$DOCS_URL/getting_started/step_by_step/signals.html</link> @@ -13,7 +33,7 @@ <constructor name="Signal"> <return type="Signal" /> <description> - Constructs a null [Signal] with no object nor signal name bound. + Constructs an empty [Signal] with no object nor signal name bound. </description> </constructor> <constructor name="Signal"> @@ -28,7 +48,7 @@ <param index="0" name="object" type="Object" /> <param index="1" name="signal" type="StringName" /> <description> - Creates a new [Signal] with the name [param signal] in the specified [param object]. + Creates a new [Signal] named [param signal] in the specified [param object]. </description> </constructor> </constructors> @@ -38,12 +58,13 @@ <param index="0" name="callable" type="Callable" /> <param index="1" name="flags" type="int" default="0" /> <description> - Connects this signal to the specified [Callable], optionally providing connection flags. You can provide additional arguments to the connected method call by using [method Callable.bind]. + Connects this signal to the specified [param callable]. Optional [param flags] can be also added to configure the connection's behavior (see [enum Object.ConnectFlags] constants). You can provide additional arguments to the connected [param callable] by using [method Callable.bind]. + A signal can only be connected once to the same [Callable]. If the signal is already connected, returns [constant ERR_INVALID_PARAMETER] and pushes an error message, unless the signal is connected with [constant Object.CONNECT_REFERENCE_COUNTED]. To prevent this, use [method is_connected] first to check for existing connections. [codeblock] for button in $Buttons.get_children(): - button.pressed.connect(on_pressed.bind(button)) + button.pressed.connect(_on_pressed.bind(button)) - func on_pressed(button): + func _on_pressed(button): print(button.name, " was pressed") [/codeblock] </description> @@ -52,13 +73,13 @@ <return type="void" /> <param index="0" name="callable" type="Callable" /> <description> - Disconnects this signal from the specified [Callable]. + Disconnects this signal from the specified [Callable]. If the connection does not exist, generates an error. Use [method is_connected] to make sure that the connection exists. </description> </method> <method name="emit" qualifiers="vararg const"> <return type="void" /> <description> - Emits this signal to all connected objects. + Emits this signal. All [Callable]s connected to this signal will be triggered. This method supports a variable number of arguments, so parameters can be passed as a comma separated list. </description> </method> <method name="get_connections" qualifiers="const"> @@ -95,6 +116,7 @@ <method name="is_null" qualifiers="const"> <return type="bool" /> <description> + Returns [code]true[/code] if the signal's name does not exist in its object, or the object is not valid. </description> </method> </methods> @@ -103,12 +125,14 @@ <return type="bool" /> <param index="0" name="right" type="Signal" /> <description> + Returns [code]true[/code] if the signals do not share the same object and name. </description> </operator> <operator name="operator =="> <return type="bool" /> <param index="0" name="right" type="Signal" /> <description> + Returns [code]true[/code] if both signals share the same object and name. </description> </operator> </operators> diff --git a/doc/classes/Slider.xml b/doc/classes/Slider.xml index 0e626842bd..cecca0a5fb 100644 --- a/doc/classes/Slider.xml +++ b/doc/classes/Slider.xml @@ -17,7 +17,7 @@ <member name="scrollable" type="bool" setter="set_scrollable" getter="is_scrollable" default="true"> If [code]true[/code], the value can be changed using the mouse wheel. </member> - <member name="size_flags_vertical" type="int" setter="set_v_size_flags" getter="get_v_size_flags" overrides="Control" default="0" /> + <member name="step" type="float" setter="set_step" getter="get_step" overrides="Range" default="1.0" /> <member name="tick_count" type="int" setter="set_ticks" getter="get_ticks" default="0"> Number of ticks displayed on the slider, including border ticks. Ticks are uniformly-distributed value markers. </member> diff --git a/doc/classes/SpinBox.xml b/doc/classes/SpinBox.xml index 93799b58f0..7d63747bd2 100644 --- a/doc/classes/SpinBox.xml +++ b/doc/classes/SpinBox.xml @@ -46,6 +46,7 @@ </methods> <members> <member name="alignment" type="int" setter="set_horizontal_alignment" getter="get_horizontal_alignment" enum="HorizontalAlignment" default="0"> + Changes the alignment of the underlying [LineEdit]. </member> <member name="custom_arrow_step" type="float" setter="set_custom_arrow_step" getter="get_custom_arrow_step" default="0.0"> If not [code]0[/code], [code]value[/code] will always be rounded to a multiple of [code]custom_arrow_step[/code] when interacting with the arrow buttons of the [SpinBox]. @@ -59,6 +60,8 @@ <member name="select_all_on_focus" type="bool" setter="set_select_all_on_focus" getter="is_select_all_on_focus" default="false"> If [code]true[/code], the [SpinBox] will select the whole text when the [LineEdit] gains focus. Clicking the up and down arrows won't trigger this behavior. </member> + <member name="size_flags_vertical" type="int" setter="set_v_size_flags" getter="get_v_size_flags" overrides="Control" default="1" /> + <member name="step" type="float" setter="set_step" getter="get_step" overrides="Range" default="1.0" /> <member name="suffix" type="String" setter="set_suffix" getter="get_suffix" default=""""> Adds the specified [code]suffix[/code] string after the numerical value of the [SpinBox]. </member> diff --git a/doc/classes/SpotLight3D.xml b/doc/classes/SpotLight3D.xml index 28e2ef0d95..59d36aefab 100644 --- a/doc/classes/SpotLight3D.xml +++ b/doc/classes/SpotLight3D.xml @@ -12,6 +12,7 @@ </tutorials> <members> <member name="shadow_bias" type="float" setter="set_param" getter="get_param" overrides="Light3D" default="0.03" /> + <member name="shadow_normal_bias" type="float" setter="set_param" getter="get_param" overrides="Light3D" default="1.0" /> <member name="spot_angle" type="float" setter="set_param" getter="get_param" default="45.0"> The spotlight's angle in degrees. [b]Note:[/b] [member spot_angle] is not affected by [member Node3D.scale] (the light's scale or its parent's scale). diff --git a/doc/classes/Sprite3D.xml b/doc/classes/Sprite3D.xml index 956e646702..01671aa04e 100644 --- a/doc/classes/Sprite3D.xml +++ b/doc/classes/Sprite3D.xml @@ -19,6 +19,7 @@ The number of columns in the sprite sheet. </member> <member name="region_enabled" type="bool" setter="set_region_enabled" getter="is_region_enabled" default="false"> + If [code]true[/code], the sprite will use [member region_rect] and display only the specified part of its texture. </member> <member name="region_rect" type="Rect2" setter="set_region_rect" getter="get_region_rect" default="Rect2(0, 0, 0, 0)"> The region of the atlas texture to display. [member region_enabled] must be [code]true[/code]. diff --git a/doc/classes/String.xml b/doc/classes/String.xml index b0b4f74b46..97466e7860 100644 --- a/doc/classes/String.xml +++ b/doc/classes/String.xml @@ -1,10 +1,12 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="String" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> - Built-in string class. + Built-in string Variant type. </brief_description> <description> - This is the built-in string class (and the one used by GDScript). It supports Unicode and provides all necessary means for string handling. Strings are reference-counted and use a copy-on-write approach, so passing them around is cheap in resources. + This is the built-in string Variant type (and the one used by GDScript). Strings may contain any number of Unicode characters, and expose methods useful for manipulating and generating strings. Strings are reference-counted and use a copy-on-write approach (every modification to a string returns a new [String]), so passing them around is cheap in resources. + Some string methods have corresponding variations. Variations suffixed with [code]n[/code] ([method countn], [method findn], [method replacen], etc.) are [b]case-insensitive[/b] (they make no distinction between uppercase and lowercase letters). Method variations prefixed with [code]r[/code] ([method rfind], [method rsplit], etc.) are reversed, and start from the end of the string, instead of the beginning. + [b]Note:[/b] In a boolean context, a string will evaluate to [code]false[/code] if it is empty ([code]""[/code]). Otherwise, a string will always evaluate to [code]true[/code]. </description> <tutorials> <link title="GDScript format strings">$DOCS_URL/tutorials/scripting/gdscript/gdscript_format_string.html</link> @@ -27,14 +29,14 @@ <return type="String" /> <param index="0" name="from" type="NodePath" /> <description> - Constructs a new String from the given [NodePath]. + Constructs a new [String] from the given [NodePath]. </description> </constructor> <constructor name="String"> <return type="String" /> <param index="0" name="from" type="StringName" /> <description> - Constructs a new String from the given [StringName]. + Constructs a new [String] from the given [StringName]. </description> </constructor> </constructors> @@ -43,30 +45,32 @@ <return type="bool" /> <param index="0" name="text" type="String" /> <description> - Returns [code]true[/code] if the string begins with the given string. + Returns [code]true[/code] if the string begins with the given [param text]. See also [method ends_with]. </description> </method> <method name="bigrams" qualifiers="const"> <return type="PackedStringArray" /> <description> - Returns an array containing the bigrams (pairs of consecutive letters) of this string. + Returns an array containing the bigrams (pairs of consecutive characters) of this string. [codeblock] - print("Bigrams".bigrams()) # Prints "[Bi, ig, gr, ra, am, ms]" + print("Get up!".bigrams()) # Prints ["Ge", "et", "t ", " u", "up", "p!"] [/codeblock] </description> </method> <method name="bin_to_int" qualifiers="const"> <return type="int" /> <description> - Converts a string containing a binary number into an integer. Binary strings can either be prefixed with [code]0b[/code] or not, and they can also start with a [code]-[/code] before the optional prefix. + Converts the string representing a binary number into an [int]. The string may optionally be prefixed with [code]"0b"[/code], and an additional [code]-[/code] prefix for negative numbers. [codeblocks] [gdscript] - print("0b101".bin_to_int()) # Prints "5". - print("101".bin_to_int()) # Prints "5". + print("101".bin_to_int()) # Prints 5 + print("0b101".bin_to_int()) # Prints 5 + print("-0b10".bin_to_int()) # Prints -2 [/gdscript] [csharp] - GD.Print("0b101".BinToInt()); // Prints "5". - GD.Print("101".BinToInt()); // Prints "5". + GD.Print("101".BinToInt()); // Prints 5 + GD.Print("0b101".BinToInt()); // Prints 5 + GD.Print("-0b10".BinToInt()); // Prints -2 [/csharp] [/codeblocks] </description> @@ -80,33 +84,43 @@ <method name="c_unescape" qualifiers="const"> <return type="String" /> <description> - Returns a copy of the string with escaped characters replaced by their meanings. Supported escape sequences are [code]\'[/code], [code]\"[/code], [code]\?[/code], [code]\\[/code], [code]\a[/code], [code]\b[/code], [code]\f[/code], [code]\n[/code], [code]\r[/code], [code]\t[/code], [code]\v[/code]. + Returns a copy of the string with escaped characters replaced by their meanings. Supported escape sequences are [code]\'[/code], [code]\"[/code], [code]\\[/code], [code]\a[/code], [code]\b[/code], [code]\f[/code], [code]\n[/code], [code]\r[/code], [code]\t[/code], [code]\v[/code]. [b]Note:[/b] Unlike the GDScript parser, this method doesn't support the [code]\uXXXX[/code] escape sequence. </description> </method> <method name="capitalize" qualifiers="const"> <return type="String" /> <description> - Changes the case of some letters. Replaces underscores with spaces, adds spaces before in-word uppercase characters, converts all letters to lowercase, then capitalizes the first letter and every letter following a space character. For [code]capitalize camelCase mixed_with_underscores[/code], it will return [code]Capitalize Camel Case Mixed With Underscores[/code]. + Changes the appearance of the string: replaces underscores ([code]_[/code]) with spaces, adds spaces before uppercase letters in the middle of a word, converts all letters to lowercase, then converts the first one and each one following a space to uppercase. + [codeblocks] + [gdscript] + "move_local_x".capitalize() # Returns "Move Local X" + "sceneFile_path".capitalize() # Returns "Scene File Path" + [/gdscript] + [csharp] + "move_local_x".Capitalize(); // Returns "Move Local X" + "sceneFile_path".Capitalize(); // Returns "Scene File Path" + [/csharp] + [/codeblocks] + [b]Note:[/b] This method not the same as the default appearance of properties in the Inspector dock, as it does not capitalize acronyms ([code]"2D"[/code], [code]"FPS"[/code], [code]"PNG"[/code], etc.) as you may expect. </description> </method> <method name="casecmp_to" qualifiers="const"> <return type="int" /> <param index="0" name="to" type="String" /> <description> - Performs a case-sensitive comparison to another string. Returns [code]-1[/code] if less than, [code]1[/code] if greater than, or [code]0[/code] if equal. "less than" or "greater than" are determined by the [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] of each string, which roughly matches the alphabetical order. - [b]Behavior with different string lengths:[/b] Returns [code]1[/code] if the "base" string is longer than the [param to] string or [code]-1[/code] if the "base" string is shorter than the [param to] string. Keep in mind this length is determined by the number of Unicode codepoints, [i]not[/i] the actual visible characters. - [b]Behavior with empty strings:[/b] Returns [code]-1[/code] if the "base" string is empty, [code]1[/code] if the [param to] string is empty or [code]0[/code] if both strings are empty. - To get a boolean result from a string comparison, use the [code]==[/code] operator instead. See also [method nocasecmp_to] and [method naturalnocasecmp_to]. + Performs a case-sensitive comparison to another string. Returns [code]-1[/code] if less than, [code]1[/code] if greater than, or [code]0[/code] if equal. "Less than" and "greater than" are determined by the [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] of each string, which roughly matches the alphabetical order. + With different string lengths, returns [code]1[/code] if this string is longer than the [param to] string, or [code]-1[/code] if shorter. Note that the length of empty strings is [i]always[/i] [code]0[/code]. + To get a [bool] result from a string comparison, use the [code]==[/code] operator instead. See also [method nocasecmp_to] and [method naturalnocasecmp_to]. </description> </method> <method name="chr" qualifiers="static"> <return type="String" /> <param index="0" name="char" type="int" /> <description> - Directly converts an decimal integer to a unicode character. Tables of these characters can be found in various locations, for example [url=https://unicodelookup.com/]here.[/url] + Returns a single Unicode character from the decimal [param char]. You may use [url=https://unicodelookup.com/]unicodelookup.com[/url] or [url=https://www.unicode.org/charts/]unicode.org[/url] as points of reference. [codeblock] - print(String.chr(65)) # Prints "A" + print(String.chr(65)) # Prints "A" print(String.chr(129302)) # Prints "🤖" (robot face emoji) [/codeblock] </description> @@ -115,7 +129,19 @@ <return type="bool" /> <param index="0" name="what" type="String" /> <description> - Returns [code]true[/code] if the string contains the given string. + Returns [code]true[/code] if the string contains [param what]. In GDScript, this corresponds to the [code]in[/code] operator. + [codeblocks] + [gdscript] + print("Node".contains("de")) # Prints true + print("team".contains("I")) # Prints false + print("I" in "team") # Prints false + [/gdscript] + [csharp] + GD.Print("Node".Contains("de")); // Prints true + GD.Print("team".Contains("I")); // Prints false + [/csharp] + [/codeblocks] + If you need to know where [param what] is within the string, use [method find]. </description> </method> <method name="count" qualifiers="const"> @@ -124,7 +150,7 @@ <param index="1" name="from" type="int" default="0" /> <param index="2" name="to" type="int" default="0" /> <description> - Returns the number of occurrences of substring [param what] between [param from] and [param to] positions. If [param from] and [param to] equals 0 the whole string will be used. If only [param to] equals 0 the remained substring will be used. + Returns the number of occurrences of the substring [param what] between [param from] and [param to] positions. If [param to] is 0, the search continues until the end of the string. </description> </method> <method name="countn" qualifiers="const"> @@ -133,7 +159,7 @@ <param index="1" name="from" type="int" default="0" /> <param index="2" name="to" type="int" default="0" /> <description> - Returns the number of occurrences of substring [param what] (ignoring case) between [param from] and [param to] positions. If [param from] and [param to] equals 0 the whole string will be used. If only [param to] equals 0 the remained substring will be used. + Returns the number of occurrences of the substring [param what] between [param from] and [param to] positions, [b]ignoring case[/b]. If [param to] is 0, the search continues until the end of the string. </description> </method> <method name="dedent" qualifiers="const"> @@ -146,7 +172,7 @@ <return type="bool" /> <param index="0" name="text" type="String" /> <description> - Returns [code]true[/code] if the string ends with the given string. + Returns [code]true[/code] if the string ends with the given [param text]. See also [method begins_with]. </description> </method> <method name="find" qualifiers="const"> @@ -154,17 +180,24 @@ <param index="0" name="what" type="String" /> <param index="1" name="from" type="int" default="0" /> <description> - Returns the index of the [b]first[/b] case-sensitive occurrence of the specified string in this instance, or [code]-1[/code]. Optionally, the starting search index can be specified, continuing to the end of the string. - [b]Note:[/b] If you just want to know whether a string contains a substring, use the [code]in[/code] operator as follows: + Returns the index of the [b]first[/b] occurrence of [param what] in this string, or [code]-1[/code] if there are none. The search's start can be specified with [param from], continuing to the end of the string. [codeblocks] [gdscript] - print("i" in "team") # Will print `false`. + print("Team".find("I")) # Prints -1 + + print("Potato".find("t")) # Prints 2 + print("Potato".find("t", 3)) # Prints 4 + print("Potato".find("t", 5)) # Prints -1 [/gdscript] [csharp] - // C# has no in operator, but we can use `Contains()`. - GD.Print("team".Contains("i")); // Will print `false`. + GD.Print("Team".Find("I")); // Prints -1 + + GD.Print("Potato".Find("t")); // Prints 2 + GD.print("Potato".Find("t", 3)); // Prints 4 + GD.print("Potato".Find("t", 5)); // Prints -1 [/csharp] [/codeblocks] + [b]Note:[/b] If you just want to know whether the string contains [param what], use [method contains]. In GDScript, you may also use the [code]in[/code] operator. </description> </method> <method name="findn" qualifiers="const"> @@ -172,7 +205,7 @@ <param index="0" name="what" type="String" /> <param index="1" name="from" type="int" default="0" /> <description> - Returns the index of the [b]first[/b] case-insensitive occurrence of the specified string in this instance, or [code]-1[/code]. Optionally, the starting search index can be specified, continuing to the end of the string. + Returns the index of the [b]first[/b] [b]case-insensitive[/b] occurrence of [param what] in this string, or [code]-1[/code] if there are none. The starting search index can be specified with [param from], continuing to the end of the string. </description> </method> <method name="format" qualifiers="const"> @@ -183,53 +216,64 @@ Formats the string by replacing all occurrences of [param placeholder] with the elements of [param values]. [param values] can be a [Dictionary] or an [Array]. Any underscores in [param placeholder] will be replaced with the corresponding keys in advance. Array elements use their index as keys. [codeblock] - # Prints: Waiting for Godot is a play by Samuel Beckett, and Godot Engine is named after it. + # Prints "Waiting for Godot is a play by Samuel Beckett, and Godot Engine is named after it." var use_array_values = "Waiting for {0} is a play by {1}, and {0} Engine is named after it." print(use_array_values.format(["Godot", "Samuel Beckett"])) - # Prints: User 42 is Godot. + # Prints "User 42 is Godot." print("User {id} is {name}.".format({"id": 42, "name": "Godot"})) [/codeblock] - Some additional handling is performed when [param values] is an array. If [param placeholder] does not contain an underscore, the elements of the array will be used to replace one occurrence of the placeholder in turn; If an array element is another 2-element array, it'll be interpreted as a key-value pair. + Some additional handling is performed when [param values] is an [Array]. If [param placeholder] does not contain an underscore, the elements of the [param values] array will be used to replace one occurrence of the placeholder in order; If an element of [param values] is another 2-element array, it'll be interpreted as a key-value pair. [codeblock] - # Prints: User 42 is Godot. + # Prints "User 42 is Godot." print("User {} is {}.".format([42, "Godot"], "{}")) print("User {id} is {name}.".format([["id", 42], ["name", "Godot"]])) [/codeblock] + See also the [url=$DOCS_URL/tutorials/scripting/gdscript/gdscript_format_string.html]GDScript format string[/url] tutorial. </description> </method> <method name="get_base_dir" qualifiers="const"> <return type="String" /> <description> If the string is a valid file path, returns the base directory name. + [codeblock] + var dir_path = "/path/to/file.txt".get_base_dir() # dir_path is "/path/to" + [/codeblock] </description> </method> <method name="get_basename" qualifiers="const"> <return type="String" /> <description> - If the string is a valid file path, returns the full file path without the extension. + If the string is a valid file path, returns the full file path, without the extension. + [codeblock] + var base = "/path/to/file.txt".get_basename() # base is "/path/to/file" + [/codeblock] </description> </method> <method name="get_extension" qualifiers="const"> <return type="String" /> <description> - Returns the extension without the leading period character ([code].[/code]) if the string is a valid file name or path. If the string does not contain an extension, returns an empty string instead. + If the string is a valid file name or path, returns the file extension without the leading period ([code].[/code]). Otherwise, returns an empty string. [codeblock] - print("/path/to/file.txt".get_extension()) # "txt" - print("file.txt".get_extension()) # "txt" - print("file.sample.txt".get_extension()) # "txt" - print(".txt".get_extension()) # "txt" - print("file.txt.".get_extension()) # "" (empty string) - print("file.txt..".get_extension()) # "" (empty string) - print("txt".get_extension()) # "" (empty string) - print("".get_extension()) # "" (empty string) + var a = "/path/to/file.txt".get_extension() # a is "txt" + var b = "cool.txt".get_extension() # b is "txt" + var c = "cool.font.tres".get_extension() # c is "tres" + var d = ".pack1".get_extension() # d is "pack1" + + var e = "file.txt.".get_extension() # e is "" + var f = "file.txt..".get_extension() # f is "" + var g = "txt".get_extension() # g is "" + var h = "".get_extension() # h is "" [/codeblock] </description> </method> <method name="get_file" qualifiers="const"> <return type="String" /> <description> - If the string is a valid file path, returns the filename. + If the string is a valid file path, returns the file name, including the extension. + [codeblock] + var file = "/path/to/icon.png".get_file() # file is "icon.png" + [/codeblock] </description> </method> <method name="get_slice" qualifiers="const"> @@ -237,11 +281,11 @@ <param index="0" name="delimiter" type="String" /> <param index="1" name="slice" type="int" /> <description> - Splits a string using a [param delimiter] and returns a substring at index [param slice]. Returns an empty string if the index doesn't exist. - This is a more performant alternative to [method split] for cases when you need only one element from the array at a fixed index. + Splits the string using a [param delimiter] and returns the substring at index [param slice]. Returns an empty string if the [param slice] does not exist. + This is faster than [method split], if you only need one substring. [b]Example:[/b] [codeblock] - print("i/am/example/string".get_slice("/", 2)) # Prints 'example'. + print("i/am/example/hi".get_slice("/", 2)) # Prints "example" [/codeblock] </description> </method> @@ -249,7 +293,7 @@ <return type="int" /> <param index="0" name="delimiter" type="String" /> <description> - Splits a string using a [param delimiter] and returns a number of slices. + Returns the total number of slices when the string is split with the given [param delimiter] (see [method split]). </description> </method> <method name="get_slicec" qualifiers="const"> @@ -257,29 +301,29 @@ <param index="0" name="delimiter" type="int" /> <param index="1" name="slice" type="int" /> <description> - Splits a string using a Unicode character with code [param delimiter] and returns a substring at index [param slice]. Returns an empty string if the index doesn't exist. - This is a more performant alternative to [method split] for cases when you need only one element from the array at a fixed index. + Splits the string using a Unicode character with code [param delimiter] and returns the substring at index [param slice]. Returns an empty string if the [param slice] does not exist. + This is faster than [method split], if you only need one substring. </description> </method> <method name="hash" qualifiers="const"> <return type="int" /> <description> Returns the 32-bit hash value representing the string's contents. - [b]Note:[/b] [String]s with equal content will always produce identical hash values. However, the reverse is not true. Returning identical hash values does [i]not[/i] imply the strings are equal, because different strings can have identical hash values due to hash collisions. + [b]Note:[/b] Strings with equal hash values are [i]not[/i] guaranteed to be the same, as a result of hash collisions. On the countrary, strings with different hash values are guaranteed to be different. </description> </method> <method name="hex_to_int" qualifiers="const"> <return type="int" /> <description> - Converts a string containing a hexadecimal number into an integer. Hexadecimal strings can either be prefixed with [code]0x[/code] or not, and they can also start with a [code]-[/code] before the optional prefix. + Converts the string representing a hexadecimal number into an [int]. The string may be optionally prefixed with [code]"0x"[/code], and an additional [code]-[/code] prefix for negative numbers. [codeblocks] [gdscript] - print("0xff".hex_to_int()) # Prints "255". - print("ab".hex_to_int()) # Prints "171". + print("0xff".hex_to_int()) # Prints 255 + print("ab".hex_to_int()) # Prints 171 [/gdscript] [csharp] - GD.Print("0xff".HexToInt()); // Prints "255". - GD.Print("ab".HexToInt()); // Prints "171". + GD.Print("0xff".HexToInt()); // Prints 255 + GD.Print("ab".HexToInt()); // Prints 171 [/csharp] [/codeblocks] </description> @@ -288,17 +332,16 @@ <return type="String" /> <param index="0" name="size" type="int" /> <description> - Converts an integer representing a number of bytes into a human-readable form. - Note that this output is in [url=https://en.wikipedia.org/wiki/Binary_prefix#IEC_prefixes]IEC prefix format[/url], and includes [code]B[/code], [code]KiB[/code], [code]MiB[/code], [code]GiB[/code], [code]TiB[/code], [code]PiB[/code], and [code]EiB[/code]. + Converts [param size] which represents a number of bytes into a human-readable form. + The result is in [url=https://en.wikipedia.org/wiki/Binary_prefix#IEC_prefixes]IEC prefix format[/url], which may end in either [code]"B"[/code], [code]"KiB"[/code], [code]"MiB"[/code], [code]"GiB"[/code], [code]"TiB"[/code], [code]"PiB"[/code], or [code]"EiB"[/code]. </description> </method> <method name="indent" qualifiers="const"> <return type="String" /> <param index="0" name="prefix" type="String" /> <description> - Returns a copy of the string with lines indented with [param prefix]. - For example, the string can be indented with two tabs using [code]"\t\t"[/code], or four spaces using [code]" "[/code]. The prefix can be any string so it can also be used to comment out strings with e.g. [code]"# "[/code]. See also [method dedent] to remove indentation. - [b]Note:[/b] Empty lines are kept empty. + Indents every line of the string with the given [param prefix]. Empty lines are not indented. See also [method dedent] to remove indentation. + For example, the string can be indented with two tabulations using [code]"\t\t"[/code], or four spaces using [code]" "[/code]. </description> </method> <method name="insert" qualifiers="const"> @@ -306,57 +349,65 @@ <param index="0" name="position" type="int" /> <param index="1" name="what" type="String" /> <description> - Returns a copy of the string with the substring [param what] inserted at the given [param position]. + Inserts [param what] at the given [param position] in the string. </description> </method> <method name="is_absolute_path" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if the string is a path to a file or directory and its starting point is explicitly defined. This includes [code]res://[/code], [code]user://[/code], [code]C:\[/code], [code]/[/code], etc. + Returns [code]true[/code] if the string is a path to a file or directory, and its starting point is explicitly defined. This method is the opposite of [method is_relative_path]. + This includes all paths starting with [code]"res://"[/code], [code]"user://"[/code], [code]"C:\"[/code], [code]"/"[/code], etc. </description> </method> <method name="is_empty" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if the length of the string equals [code]0[/code]. + Returns [code]true[/code] if the string's length is [code]0[/code] ([code]""[/code]). See also [method length]. </description> </method> <method name="is_relative_path" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if the string is a path to a file or directory and its starting point is implicitly defined within the context it is being used. The starting point may refer to the current directory ([code]./[/code]), or the current [Node]. + Returns [code]true[/code] if the string is a path, and its starting point is dependent on context. The path could begin from the current directory, or the current [Node] (if the string is derived from a [NodePath]), and may sometimes be prefixed with [code]"./"[/code]. This method is the opposite of [method is_absolute_path]. </description> </method> <method name="is_subsequence_of" qualifiers="const"> <return type="bool" /> <param index="0" name="text" type="String" /> <description> - Returns [code]true[/code] if this string is a subsequence of the given string. + Returns [code]true[/code] if all characters of this string can be found in [param text] in their original order. + [codeblock] + var text = "Wow, incredible!" + + print("inedible".is_subsequence_of(text)) # Prints true + print("Word!".is_subsequence_of(text)) # Prints true + print("Window".is_subsequence_of(text)) # Prints false + print("".is_subsequence_of(text)) # Prints true + [/codeblock] </description> </method> <method name="is_subsequence_ofn" qualifiers="const"> <return type="bool" /> <param index="0" name="text" type="String" /> <description> - Returns [code]true[/code] if this string is a subsequence of the given string, without considering case. + Returns [code]true[/code] if all characters of this string can be found in [param text] in their original order, [b]ignoring case[/b]. </description> </method> <method name="is_valid_filename" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if this string is free from characters that aren't allowed in file names, those being: - [code]: / \ ? * " | % < >[/code] + Returns [code]true[/code] if this string does not contain characters that are not allowed in file names ([code]:[/code] [code]/[/code] [code]\[/code] [code]?[/code] [code]*[/code] [code]"[/code] [code]|[/code] [code]%[/code] [code]<[/code] [code]>[/code]). </description> </method> <method name="is_valid_float" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if this string contains a valid float. This is inclusive of integers, and also supports exponents: + Returns [code]true[/code] if this string represents a valid floating-point number. A valid float may contain only digits, one decimal point ([code].[/code]), and the exponent letter ([code]e[/code]). It may also be prefixed with a positive ([code]+[/code]) or negative ([code]-[/code]) sign. Any valid integer is also a valid float (see [method is_valid_int]). See also [method to_float]. [codeblock] - print("1.7".is_valid_float()) # Prints "true" - print("24".is_valid_float()) # Prints "true" - print("7e3".is_valid_float()) # Prints "true" - print("Hello".is_valid_float()) # Prints "false" + print("1.7".is_valid_float()) # Prints true + print("24".is_valid_float()) # Prints true + print("7e3".is_valid_float()) # Prints true + print("Hello".is_valid_float()) # Prints false [/codeblock] </description> </method> @@ -364,57 +415,73 @@ <return type="bool" /> <param index="0" name="with_prefix" type="bool" default="false" /> <description> - Returns [code]true[/code] if this string contains a valid hexadecimal number. If [param with_prefix] is [code]true[/code], then a validity of the hexadecimal number is determined by the [code]0x[/code] prefix, for example: [code]0xDEADC0DE[/code]. + Returns [code]true[/code] if this string is a valid hexadecimal number. A valid hexadecimal number only contains digits or letters [code]A[/code] to [code]F[/code] (either uppercase or lowercase), and may be prefixed with a positive ([code]+[/code]) or negative ([code]-[/code]) sign. + If [param with_prefix] is [code]true[/code], the hexadecimal number needs to prefixed by [code]"0x"[/code] to be considered valid. + [codeblock] + print("A08E".is_valid_hex_number()) # Prints true + print("-AbCdEf".is_valid_hex_number()) # Prints true + print("2.5".is_valid_hex_number()) # Prints false + + print("0xDEADC0DE".is_valid_hex_number(true)) # Prints true + [/codeblock] </description> </method> <method name="is_valid_html_color" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if this string contains a valid color in hexadecimal HTML notation. Other HTML notations such as named colors or [code]hsl()[/code] colors aren't considered valid by this method and will return [code]false[/code]. + Returns [code]true[/code] if this string is a valid color in hexadecimal HTML notation. The string must be a hexadecimal value (see [method is_valid_hex_number]) of either 3, 4, 6 or 8 digits, and may be prefixed by a hash sign ([code]#[/code]). Other HTML notations for colors, such as names or [code]hsl()[/code], are not considered valid. See also [method Color.html]. </description> </method> <method name="is_valid_identifier" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if this string is a valid identifier. A valid identifier may contain only letters, digits and underscores ([code]_[/code]) and the first character may not be a digit. + Returns [code]true[/code] if this string is a valid identifier. A valid identifier may contain only letters, digits and underscores ([code]_[/code]), and the first character may not be a digit. [codeblock] - print("good_ident_1".is_valid_identifier()) # Prints "true" - print("1st_bad_ident".is_valid_identifier()) # Prints "false" - print("bad_ident_#2".is_valid_identifier()) # Prints "false" + print("node_2d".is_valid_identifier()) # Prints true + print("TYPE_FLOAT".is_valid_identifier()) # Prints true + print("1st_method".is_valid_identifier()) # Prints false + print("MyMethod#2".is_valid_identifier()) # Prints false [/codeblock] </description> </method> <method name="is_valid_int" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if this string contains a valid integer. + Returns [code]true[/code] if this string represents a valid integer. A valid integer only contains digits, and may be prefixed with a positive ([code]+[/code]) or negative ([code]-[/code]) sign. See also [method to_int]. [codeblock] - print("7".is_valid_int()) # Prints "true" - print("14.6".is_valid_int()) # Prints "false" - print("L".is_valid_int()) # Prints "false" - print("+3".is_valid_int()) # Prints "true" - print("-12".is_valid_int()) # Prints "true" + print("7".is_valid_int()) # Prints true + print("1.65".is_valid_int()) # Prints false + print("Hi".is_valid_int()) # Prints false + print("+3".is_valid_int()) # Prints true + print("-12".is_valid_int()) # Prints true [/codeblock] </description> </method> <method name="is_valid_ip_address" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if this string contains only a well-formatted IPv4 or IPv6 address. This method considers [url=https://en.wikipedia.org/wiki/Reserved_IP_addresses]reserved IP addresses[/url] such as [code]0.0.0.0[/code] as valid. + Returns [code]true[/code] if this string represents a well-formatted IPv4 or IPv6 address. This method considers [url=https://en.wikipedia.org/wiki/Reserved_IP_addresses]reserved IP addresses[/url] such as [code]"0.0.0.0"[/code] and [code]"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff"[/code] as valid. </description> </method> <method name="join" qualifiers="const"> <return type="String" /> <param index="0" name="parts" type="PackedStringArray" /> <description> - Returns a [String] which is the concatenation of the [param parts]. The separator between elements is the string providing this method. + Returns the concatenation of [param parts]' elements, with each element separated by the string calling this method. This method is the opposite of [method split]. [b]Example:[/b] [codeblocks] [gdscript] - print(", ".join(["One", "Two", "Three", "Four"])) + var fruits = ["Apple", "Orange", "Pear", "Kiwi"] + + print(", ".join(fruits)) # Prints "Apple, Orange, Pear, Kiwi" + print("---".join(fruits)) # Prints "Apple---Orange---Pear---Kiwi" [/gdscript] [csharp] - GD.Print(String.Join(",", new string[] {"One", "Two", "Three", "Four"})); + var fruits = new string[] {"Apple", "Orange", "Pear", "Kiwi"}; + + // In C#, this method is static. + GD.Print(string.Join(", ", fruits); // Prints "Apple, Orange, Pear, Kiwi" + GD.Print(string.Join("---", fruits)); // Prints "Apple---Orange---Pear---Kiwi" [/csharp] [/codeblocks] </description> @@ -422,25 +489,24 @@ <method name="json_escape" qualifiers="const"> <return type="String" /> <description> - Returns a copy of the string with special characters escaped using the JSON standard. + Returns a copy of the string with special characters escaped using the JSON standard. Because it closely matches the C standard, it is possible to use [method c_unescape] to unescape the string, if necessary. </description> </method> <method name="left" qualifiers="const"> <return type="String" /> <param index="0" name="length" type="int" /> <description> - Returns a number of characters from the left of the string. If negative [param length] is used, the characters are counted downwards from [String]'s length. - [b]Example:[/b] + Returns the first [param length] characters from the beginning of the string. If [param length] is negative, strips the last [param length] characters from the string's end. [codeblock] - print("sample text".left(3)) #prints "sam" - print("sample text".left(-3)) #prints "sample t" + print("Hello World!".left(3)) # Prints "Hel" + print("Hello World!".left(-4)) # Prints "Hello Wo" [/codeblock] </description> </method> <method name="length" qualifiers="const"> <return type="int" /> <description> - Returns the number of characters in the string. + Returns the number of characters in the string. Empty strings ([code]""[/code]) always return [code]0[/code]. See also [method is_empty]. </description> </method> <method name="lpad" qualifiers="const"> @@ -448,62 +514,60 @@ <param index="0" name="min_length" type="int" /> <param index="1" name="character" type="String" default="" "" /> <description> - Formats a string to be at least [param min_length] long by adding [param character]s to the left of the string. + Formats the string to be at least [param min_length] long by adding [param character]s to the left of the string, if necessary. See also [method rpad]. </description> </method> <method name="lstrip" qualifiers="const"> <return type="String" /> <param index="0" name="chars" type="String" /> <description> - Returns a copy of the string with characters removed from the left. The [param chars] argument is a string specifying the set of characters to be removed. - [b]Note:[/b] The [param chars] is not a prefix. See [method trim_prefix] method that will remove a single prefix string rather than a set of characters. + Removes a set of characters defined in [param chars] from the string's beginning. See also [method rstrip]. + [b]Note:[/b] [param chars] is not a prefix. Use [method trim_prefix] to remove a single prefix, rather than a set of characters. </description> </method> <method name="match" qualifiers="const"> <return type="bool" /> <param index="0" name="expr" type="String" /> <description> - Does a simple case-sensitive expression match, where [code]"*"[/code] matches zero or more arbitrary characters and [code]"?"[/code] matches any single character except a period ([code]"."[/code]). An empty string or empty expression always evaluates to [code]false[/code]. + Does a simple expression match, where [code]*[/code] matches zero or more arbitrary characters and [code]?[/code] matches any single character except a period ([code].[/code]). An empty string or empty expression always evaluates to [code]false[/code]. </description> </method> <method name="matchn" qualifiers="const"> <return type="bool" /> <param index="0" name="expr" type="String" /> <description> - Does a simple case-insensitive expression match, where [code]"*"[/code] matches zero or more arbitrary characters and [code]"?"[/code] matches any single character except a period ([code]"."[/code]). An empty string or empty expression always evaluates to [code]false[/code]. + Does a simple [b]case-insensitive[/b] expression match, where [code]*[/code] matches zero or more arbitrary characters and [code]?[/code] matches any single character except a period ([code].[/code]). An empty string or empty expression always evaluates to [code]false[/code]. </description> </method> <method name="md5_buffer" qualifiers="const"> <return type="PackedByteArray" /> <description> - Returns the MD5 hash of the string as an array of bytes. + Returns the [url=https://en.wikipedia.org/wiki/MD5]MD5 hash[/url] of the string as a [PackedByteArray]. </description> </method> <method name="md5_text" qualifiers="const"> <return type="String" /> <description> - Returns the MD5 hash of the string as a string. + Returns the [url=https://en.wikipedia.org/wiki/MD5]MD5 hash[/url] of the string as another [String]. </description> </method> <method name="naturalnocasecmp_to" qualifiers="const"> <return type="int" /> <param index="0" name="to" type="String" /> <description> - Performs a case-insensitive [i]natural order[/i] comparison to another string. Returns [code]-1[/code] if less than, [code]1[/code] if greater than, or [code]0[/code] if equal. "less than" or "greater than" are determined by the [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] of each string, which roughly matches the alphabetical order. Internally, lowercase characters will be converted to uppercase during the comparison. - When used for sorting, natural order comparison will order suites of numbers as expected by most people. If you sort the numbers from 1 to 10 using natural order, you will get [code][1, 2, 3, ...][/code] instead of [code][1, 10, 2, 3, ...][/code]. - [b]Behavior with different string lengths:[/b] Returns [code]1[/code] if the "base" string is longer than the [param to] string or [code]-1[/code] if the "base" string is shorter than the [param to] string. Keep in mind this length is determined by the number of Unicode codepoints, [i]not[/i] the actual visible characters. - [b]Behavior with empty strings:[/b] Returns [code]-1[/code] if the "base" string is empty, [code]1[/code] if the [param to] string is empty or [code]0[/code] if both strings are empty. - To get a boolean result from a string comparison, use the [code]==[/code] operator instead. See also [method nocasecmp_to] and [method casecmp_to]. + Performs a [b]case-insensitive[/b], [i]natural order[/i] comparison to another string. Returns [code]-1[/code] if less than, [code]1[/code] if greater than, or [code]0[/code] if equal. "Less than" or "greater than" are determined by the [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] of each string, which roughly matches the alphabetical order. Internally, lowercase characters are converted to uppercase for the comparison. + When used for sorting, natural order comparison orders sequences of numbers by the combined value of each digit as is often expected, instead of the single digit's value. A sorted sequence of numbered strings will be [code]["1", "2", "3", ...][/code], not [code]["1", "10", "2", "3", ...][/code]. + With different string lengths, returns [code]1[/code] if this string is longer than the [param to] string, or [code]-1[/code] if shorter. Note that the length of empty strings is [i]always[/i] [code]0[/code]. + To get a [bool] result from a string comparison, use the [code]==[/code] operator instead. See also [method nocasecmp_to] and [method casecmp_to]. </description> </method> <method name="nocasecmp_to" qualifiers="const"> <return type="int" /> <param index="0" name="to" type="String" /> <description> - Performs a case-insensitive comparison to another string. Returns [code]-1[/code] if less than, [code]1[/code] if greater than, or [code]0[/code] if equal. "less than" or "greater than" are determined by the [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] of each string, which roughly matches the alphabetical order. Internally, lowercase characters will be converted to uppercase during the comparison. - [b]Behavior with different string lengths:[/b] Returns [code]1[/code] if the "base" string is longer than the [param to] string or [code]-1[/code] if the "base" string is shorter than the [param to] string. Keep in mind this length is determined by the number of Unicode codepoints, [i]not[/i] the actual visible characters. - [b]Behavior with empty strings:[/b] Returns [code]-1[/code] if the "base" string is empty, [code]1[/code] if the [param to] string is empty or [code]0[/code] if both strings are empty. - To get a boolean result from a string comparison, use the [code]==[/code] operator instead. See also [method casecmp_to] and [method naturalnocasecmp_to]. + Performs a [b]case-insensitive[/b] comparison to another string. Returns [code]-1[/code] if less than, [code]1[/code] if greater than, or [code]0[/code] if equal. "Less than" or "greater than" are determined by the [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] of each string, which roughly matches the alphabetical order. Internally, lowercase characters are converted to uppercase for the comparison. + With different string lengths, returns [code]1[/code] if this string is longer than the [param to] string, or [code]-1[/code] if shorter. Note that the length of empty strings is [i]always[/i] [code]0[/code]. + To get a [bool] result from a string comparison, use the [code]==[/code] operator instead. See also [method casecmp_to] and [method naturalnocasecmp_to]. </description> </method> <method name="num" qualifiers="static"> @@ -511,20 +575,22 @@ <param index="0" name="number" type="float" /> <param index="1" name="decimals" type="int" default="-1" /> <description> - Converts a [float] to a string representation of a decimal number. - The number of decimal places can be specified with [param decimals]. If [param decimals] is [code]-1[/code] (default), decimal places will be automatically adjusted so that the string representation has 14 significant digits (counting both digits to the left and the right of the decimal point). - Trailing zeros are not included in the string. The last digit will be rounded and not truncated. + Converts a [float] to a string representation of a decimal number, with the number of decimal places specified in [param decimals]. + If [param decimals] is [code]-1[/code] as by default, the string representation may only have up to 14 significant digits, with digits before the decimal point having priority over digits after. + Trailing zeros are not included in the string. The last digit is rounded, not truncated. [b]Example:[/b] [codeblock] - String.num(3.141593) # "3.141593" - String.num(3.141593, 3) # "3.142" - String.num(3.14159300) # "3.141593", no trailing zeros. - # Last digit will be rounded up here, which reduces total digit count since - # trailing zeros are removed: - String.num(42.129999, 5) # "42.13" - # If `decimals` is not specified, the total number of significant digits is 14: - String.num(-0.0000012345432123454321) # "-0.00000123454321" - String.num(-10000.0000012345432123454321) # "-10000.0000012345" + String.num(3.141593) # Returns "3.141593" + String.num(3.141593, 3) # Returns "3.142" + String.num(3.14159300) # Returns "3.141593" + + # Here, the last digit will be rounded up, + # which reduces the total digit count, since trailing zeros are removed: + String.num(42.129999, 5) # Returns "42.13" + + # If `decimals` is not specified, the maximum number of significant digits is 14: + String.num(-0.0000012345432123454321) # Returns "-0.00000123454321" + String.num(-10000.0000012345432123454321) # Returns "-10000.0000012345" [/codeblock] </description> </method> @@ -534,13 +600,31 @@ <param index="1" name="base" type="int" default="10" /> <param index="2" name="capitalize_hex" type="bool" default="false" /> <description> - Converts a signed [int] to a string representation of a number. + Converts the given [param number] to a string representation, with the given [param base]. + By default, [param base] is set to decimal ([code]10[/code]). Other common bases in programming include binary ([code]2[/code]), [url=https://en.wikipedia.org/wiki/Octal]octal[/url] ([code]8[/code]), hexadecimal ([code]16[/code]). + If [param capitalize_hex] is [code]true[/code], digits higher than 9 are represented in uppercase. </description> </method> <method name="num_scientific" qualifiers="static"> <return type="String" /> <param index="0" name="number" type="float" /> <description> + Converts the given [param number] to a string representation, in scientific notation. + [codeblocks] + [gdscript] + var n = -5.2e8 + print(n) # Prints -520000000 + print(String.NumScientific(n)) # Prints -5.2e+08 + [/gdscript] + [csharp] + // This method is not implemented in C#. + // Use `string.ToString()` with "e" to achieve similar results. + var n = -5.2e8f; + GD.Print(n); // Prints -520000000 + GD.Print(n.ToString("e1")); // Prints -5.2e+008 + [/csharp] + [/codeblocks] + [b]Note:[/b] In C#, this method is not implemented. To achieve similar results, see C#'s [url=https://learn.microsoft.com/en-us/dotnet/standard/base-types/standard-numeric-format-strings]Standard numeric format strings[/url] </description> </method> <method name="num_uint64" qualifiers="static"> @@ -549,35 +633,38 @@ <param index="1" name="base" type="int" default="10" /> <param index="2" name="capitalize_hex" type="bool" default="false" /> <description> - Converts a unsigned [int] to a string representation of a number. + Converts the given unsigned [int] to a string representation, with the given [param base]. + By default, [param base] is set to decimal ([code]10[/code]). Other common bases in programming include binary ([code]2[/code]), [url=https://en.wikipedia.org/wiki/Octal]octal[/url] ([code]8[/code]), hexadecimal ([code]16[/code]). + If [param capitalize_hex] is [code]true[/code], digits higher than 9 are represented in uppercase. </description> </method> <method name="pad_decimals" qualifiers="const"> <return type="String" /> <param index="0" name="digits" type="int" /> <description> - Formats a number to have an exact number of [param digits] after the decimal point. + Formats the string representing a number to have an exact number of [param digits] [i]after[/i] the decimal point. </description> </method> <method name="pad_zeros" qualifiers="const"> <return type="String" /> <param index="0" name="digits" type="int" /> <description> - Formats a number to have an exact number of [param digits] before the decimal point. + Formats the string representing a number to have an exact number of [param digits] [i]before[/i] the decimal point. </description> </method> <method name="path_join" qualifiers="const"> <return type="String" /> <param index="0" name="file" type="String" /> <description> - If the string is a path, this concatenates [param file] at the end of the string as a subpath. E.g. [code]"this/is".path_join("path") == "this/is/path"[/code]. + Concatenates [param file] at the end of the string as a subpath, adding [code]/[/code] if necessary. + [b]Example:[/b] [code]"this/is".path_join("path") == "this/is/path"[/code]. </description> </method> <method name="repeat" qualifiers="const"> <return type="String" /> <param index="0" name="count" type="int" /> <description> - Returns original string repeated a number of times. The number of repetitions is given by the argument. + Repeats this string a number of times. [param count] needs to be greater than [code]0[/code]. Otherwise, returns an empty string. </description> </method> <method name="replace" qualifiers="const"> @@ -585,7 +672,7 @@ <param index="0" name="what" type="String" /> <param index="1" name="forwhat" type="String" /> <description> - Replaces occurrences of a case-sensitive substring with the given one inside the string. + Replaces all occurrences of [param what] inside the string with the given [param forwhat]. </description> </method> <method name="replacen" qualifiers="const"> @@ -593,7 +680,7 @@ <param index="0" name="what" type="String" /> <param index="1" name="forwhat" type="String" /> <description> - Replaces occurrences of a case-insensitive substring with the given one inside the string. + Replaces all [b]case-insensitive[/b] occurrences of [param what] inside the string with the given [param forwhat]. </description> </method> <method name="rfind" qualifiers="const"> @@ -601,7 +688,7 @@ <param index="0" name="what" type="String" /> <param index="1" name="from" type="int" default="-1" /> <description> - Returns the index of the [b]last[/b] case-sensitive occurrence of the specified string in this instance, or [code]-1[/code]. Optionally, the starting search index can be specified, continuing to the beginning of the string. + Returns the index of the [b]last[/b] occurrence of [param what] in this string, or [code]-1[/code] if there are none. The search's start can be specified with [param from], continuing to the beginning of the string. This method is the reverse of [method find]. </description> </method> <method name="rfindn" qualifiers="const"> @@ -609,18 +696,17 @@ <param index="0" name="what" type="String" /> <param index="1" name="from" type="int" default="-1" /> <description> - Returns the index of the [b]last[/b] case-insensitive occurrence of the specified string in this instance, or [code]-1[/code]. Optionally, the starting search index can be specified, continuing to the beginning of the string. + Returns the index of the [b]last[/b] [b]case-insensitive[/b] occurrence of [param what] in this string, or [code]-1[/code] if there are none. The starting search index can be specified with [param from], continuing to the beginning of the string. This method is the reverse of [method findn]. </description> </method> <method name="right" qualifiers="const"> <return type="String" /> <param index="0" name="length" type="int" /> <description> - Returns a number of characters from the right of the string. If negative [param length] is used, the characters are counted downwards from [String]'s length. - [b]Example:[/b] + Returns the last [param length] characters from the end of the string. If [param length] is negative, strips the first [param length] characters from the string's beginning. [codeblock] - print("sample text".right(3)) #prints "ext" - print("sample text".right(-3)) #prints "ple text" + print("Hello World!".right(3)) # Prints "ld!" + print("Hello World!".right(-4)) # Prints "o World!" [/codeblock] </description> </method> @@ -629,7 +715,7 @@ <param index="0" name="min_length" type="int" /> <param index="1" name="character" type="String" default="" "" /> <description> - Formats a string to be at least [param min_length] long by adding [param character]s to the right of the string. + Formats the string to be at least [param min_length] long, by adding [param character]s to the right of the string, if necessary. See also [method lpad]. </description> </method> <method name="rsplit" qualifiers="const"> @@ -638,21 +724,21 @@ <param index="1" name="allow_empty" type="bool" default="true" /> <param index="2" name="maxsplit" type="int" default="0" /> <description> - Splits the string by a [param delimiter] string and returns an array of the substrings, starting from right. If [param delimiter] is an empty string, each substring will be a single character. - The splits in the returned array are sorted in the same order as the original string, from left to right. - If [param allow_empty] is [code]true[/code], and there are two adjacent delimiters in the string, it will add an empty string to the array of substrings at this position. - If [param maxsplit] is specified, it defines the number of splits to do from the right up to [param maxsplit]. The default value of 0 means that all items are split, thus giving the same result as [method split]. + Splits the string using a [param delimiter] and returns an array of the substrings, starting from the end of the string. The splits in the returned array appear in the same order as the original string. If [param delimiter] is an empty string, each substring will be a single character. + If [param allow_empty] is [code]false[/code], empty strings between adjacent delimiters are excluded from the array. + If [param maxsplit] is greater than [code]0[/code], the number of splits may not exceed [param maxsplit]. By default, the entire string is split, which is mostly identical to [method split]. [b]Example:[/b] [codeblocks] [gdscript] var some_string = "One,Two,Three,Four" var some_array = some_string.rsplit(",", true, 1) + print(some_array.size()) # Prints 2 - print(some_array[0]) # Prints "One,Two,Three" - print(some_array[1]) # Prints "Four" + print(some_array[0]) # Prints "One,Two,Three" + print(some_array[1]) # Prints "Four" [/gdscript] [csharp] - // There is no Rsplit. + // In C#, there is no String.RSplit() method. [/csharp] [/codeblocks] </description> @@ -661,51 +747,55 @@ <return type="String" /> <param index="0" name="chars" type="String" /> <description> - Returns a copy of the string with characters removed from the right. The [param chars] argument is a string specifying the set of characters to be removed. - [b]Note:[/b] The [param chars] is not a suffix. See [method trim_suffix] method that will remove a single suffix string rather than a set of characters. + Removes a set of characters defined in [param chars] from the string's end. See also [method lstrip]. + [b]Note:[/b] [param chars] is not a suffix. Use [method trim_suffix] to remove a single suffix, rather than a set of characters. </description> </method> <method name="sha1_buffer" qualifiers="const"> <return type="PackedByteArray" /> <description> - Returns the SHA-1 hash of the string as an array of bytes. + Returns the [url=https://en.wikipedia.org/wiki/SHA-1]SHA-1[/url] hash of the string as a [PackedByteArray]. </description> </method> <method name="sha1_text" qualifiers="const"> <return type="String" /> <description> - Returns the SHA-1 hash of the string as a string. + Returns the [url=https://en.wikipedia.org/wiki/SHA-1]SHA-1[/url] hash of the string as another [String]. </description> </method> <method name="sha256_buffer" qualifiers="const"> <return type="PackedByteArray" /> <description> - Returns the SHA-256 hash of the string as an array of bytes. + Returns the [url=https://en.wikipedia.org/wiki/SHA-2]SHA-256[/url] hash of the string as a [PackedByteArray]. </description> </method> <method name="sha256_text" qualifiers="const"> <return type="String" /> <description> - Returns the SHA-256 hash of the string as a string. + Returns the [url=https://en.wikipedia.org/wiki/SHA-2]SHA-256[/url] hash of the string as another [String]. </description> </method> <method name="similarity" qualifiers="const"> <return type="float" /> <param index="0" name="text" type="String" /> <description> - Returns the similarity index ([url=https://en.wikipedia.org/wiki/S%C3%B8rensen%E2%80%93Dice_coefficient]Sorensen-Dice coefficient[/url]) of this string compared to another. A result of 1.0 means totally similar, while 0.0 means totally dissimilar. + Returns the similarity index ([url=https://en.wikipedia.org/wiki/S%C3%B8rensen%E2%80%93Dice_coefficient]Sorensen-Dice coefficient[/url]) of this string compared to another. A result of [code]1.0[/code] means totally similar, while [code]0.0[/code] means totally dissimilar. [codeblock] - print("ABC123".similarity("ABC123")) # Prints "1" - print("ABC123".similarity("XYZ456")) # Prints "0" - print("ABC123".similarity("123ABC")) # Prints "0.8" - print("ABC123".similarity("abc123")) # Prints "0.4" + print("ABC123".similarity("ABC123")) # Prints 1.0 + print("ABC123".similarity("XYZ456")) # Prints 0.0 + print("ABC123".similarity("123ABC")) # Prints 0.8 + print("ABC123".similarity("abc123")) # Prints 0.4 [/codeblock] </description> </method> <method name="simplify_path" qualifiers="const"> <return type="String" /> <description> - Returns a simplified canonical path. + If the string is a valid file path, converts the string into a canonical path. This is the shortest possible path, without [code]"./"[/code], and all the unnecessary [code]".."[/code] and [code]"/"[/code]. + [codeblock] + var simple_path = "./path/to///../file".simplify_path() + print(simple_path) # Prints "path/file" + [/codeblock] </description> </method> <method name="split" qualifiers="const"> @@ -714,37 +804,43 @@ <param index="1" name="allow_empty" type="bool" default="true" /> <param index="2" name="maxsplit" type="int" default="0" /> <description> - Splits the string by a [param delimiter] string and returns an array of the substrings. The [param delimiter] can be of any length. If [param delimiter] is an empty string, each substring will be a single character. - If [param allow_empty] is [code]true[/code], and there are two adjacent delimiters in the string, it will add an empty string to the array of substrings at this position. - If [param maxsplit] is specified, it defines the number of splits to do from the left up to [param maxsplit]. The default value of [code]0[/code] means that all items are split. - If you need only one element from the array at a specific index, [method get_slice] is a more performant option. + Splits the string using a [param delimiter] and returns an array of the substrings. If [param delimiter] is an empty string, each substring will be a single character. This method is the opposite of [method join]. + If [param allow_empty] is [code]false[/code], empty strings between adjacent delimiters are excluded from the array. + If [param maxsplit] is greater than [code]0[/code], the number of splits may not exceed [param maxsplit]. By default, the entire string is split. [b]Example:[/b] [codeblocks] [gdscript] - var some_string = "One,Two,Three,Four" - var some_array = some_string.split(",", true, 1) - print(some_array.size()) # Prints 2 - print(some_array[0]) # Prints "Four" - print(some_array[1]) # Prints "Three,Two,One" + var some_array = "One,Two,Three,Four".split(",", true, 2) + + print(some_array.size()) # Prints 3 + print(some_array[0]) # Prints "One" + print(some_array[1]) # Prints "Two" + print(some_array[2]) # Prints "Three,Four" [/gdscript] [csharp] - var someString = "One,Two,Three,Four"; - var someArray = someString.Split(",", true); // This is as close as it gets to Godots API. - GD.Print(someArray[0]); // Prints "Four" - GD.Print(someArray[1]); // Prints "Three,Two,One" + // C#'s `Split()` does not support the `maxsplit` parameter. + var someArray = "One,Two,Three".Split(","); + + GD.Print(someArray[0]); // Prints "One" + GD.Print(someArray[1]); // Prints "Two" + GD.Print(someArray[2]); // Prints "Three" [/csharp] [/codeblocks] - If you need to split strings with more complex rules, use the [RegEx] class instead. + [b]Note:[/b] If you only need one substring from the array, consider using [method get_slice] which is faster. If you need to split strings with more complex rules, use the [RegEx] class instead. </description> </method> <method name="split_floats" qualifiers="const"> - <return type="PackedFloat32Array" /> + <return type="PackedFloat64Array" /> <param index="0" name="delimiter" type="String" /> <param index="1" name="allow_empty" type="bool" default="true" /> <description> - Splits the string in floats by using a delimiter string and returns an array of the substrings. - For example, [code]"1,2.5,3"[/code] will return [code][1,2.5,3][/code] if split by [code]","[/code]. - If [param allow_empty] is [code]true[/code], and there are two adjacent delimiters in the string, it will add an empty string to the array of substrings at this position. + Splits the string into floats by using a [param delimiter] and returns a [PackedFloat64Array]. + If [param allow_empty] is [code]false[/code], empty or invalid [float] conversions between adjacent delimiters are excluded. + [codeblock] + var a = "1,2,4.5".split_floats(",") # a is [1.0, 2.0, 4.5] + var c = "1| ||4.5".split_floats("|") # c is [1.0, 0.0, 0.0, 4.5] + var b = "1| ||4.5".split_floats("|", false) # b is [1.0, 4.5] + [/codeblock] </description> </method> <method name="strip_edges" qualifiers="const"> @@ -752,13 +848,14 @@ <param index="0" name="left" type="bool" default="true" /> <param index="1" name="right" type="bool" default="true" /> <description> - Returns a copy of the string stripped of any non-printable character (including tabulations, spaces and line breaks) at the beginning and the end. The optional arguments are used to toggle stripping on the left and right edges respectively. + Strips all non-printable characters from the beginning and the end of the string. These include spaces, tabulations ([code]\t[/code]), and newlines ([code]\n[/code] [code]\r[/code]). + If [param left] is [code]false[/code], ignores the string's beginning. Likewise, if [param right] is [code]false[/code], ignores the string's end. </description> </method> <method name="strip_escapes" qualifiers="const"> <return type="String" /> <description> - Returns a copy of the string stripped of any escape character. These include all non-printable control characters of the first page of the ASCII table (< 32), such as tabulation ([code]\t[/code] in C) and newline ([code]\n[/code] and [code]\r[/code]) characters, but not spaces. + Strips all escape characters from the string. These include all non-printable control characters of the first page of the ASCII table (values from 0 to 31), such as tabulation ([code]\t[/code]) and newline ([code]\n[/code], [code]\r[/code]) characters, but [i]not[/i] spaces. </description> </method> <method name="substr" qualifiers="const"> @@ -766,13 +863,13 @@ <param index="0" name="from" type="int" /> <param index="1" name="len" type="int" default="-1" /> <description> - Returns part of the string from the position [param from] with length [param len]. Argument [param len] is optional and using [code]-1[/code] will return remaining characters from given position. + Returns part of the string from the position [param from] with length [param len]. If [param len] is [code]-1[/code] (as by default), returns the rest of the string starting from the given position. </description> </method> <method name="to_ascii_buffer" qualifiers="const"> <return type="PackedByteArray" /> <description> - Converts the String (which is a character array) to ASCII/Latin-1 encoded [PackedByteArray] (which is an array of bytes). The conversion is faster compared to [method to_utf8_buffer], as this method assumes that all the characters in the String are ASCII/Latin-1 characters, unsupported characters are replaced with spaces. + Converts the string to an [url=https://en.wikipedia.org/wiki/ASCII]ASCII[/url]/Latin-1 encoded [PackedByteArray]. This method is slightly faster than [method to_utf8_buffer], but replaces all unsupported characters with spaces. </description> </method> <method name="to_camel_case" qualifiers="const"> @@ -784,23 +881,25 @@ <method name="to_float" qualifiers="const"> <return type="float" /> <description> - Converts a string containing a decimal number into a [code]float[/code]. The method will stop on the first non-number character except the first [code].[/code] (decimal point), and [code]e[/code] which is used for exponential. + Converts the string representing a decimal number into a [float]. This method stops on the first non-number character, except the first decimal point ([code].[/code]) and the exponent letter ([code]e[/code]). See also [method is_valid_float]. [codeblock] - print("12.3".to_float()) # 12.3 - print("1.2.3".to_float()) # 1.2 - print("12ab3".to_float()) # 12 - print("1e3".to_float()) # 1000 + var a = "12.35".to_float() # a is 12.35 + var b = "1.2.3".to_float() # b is 1.2 + var c = "12xy3".to_float() # c is 12.0 + var d = "1e3".to_float() # d is 1000.0 + var e = "Hello!".to_int() # e is 0.0 [/codeblock] </description> </method> <method name="to_int" qualifiers="const"> <return type="int" /> <description> - Converts a string containing an integer number into an [code]int[/code]. The method will remove any non-number character and stop if it encounters a [code].[/code]. + Converts the string representing an integer number into an [int]. This method removes any non-number character and stops at the first decimal point ([code].[/code]). See also [method is_valid_int]. [codeblock] - print("123".to_int()) # 123 - print("a1b2c3".to_int()) # 123 - print("1.2.3".to_int()) # 1 + var a = "123".to_int() # a is 123 + var b = "x1y2z3".to_int() # b is 123 + var c = "-1.2.3".to_int() # c is -1 + var d = "Hello!".to_int() # d is 0 [/codeblock] </description> </method> @@ -831,33 +930,33 @@ <method name="to_utf16_buffer" qualifiers="const"> <return type="PackedByteArray" /> <description> - Converts the String (which is an array of characters) to UTF-16 encoded [PackedByteArray] (which is an array of bytes). + Converts the string to a [url=https://en.wikipedia.org/wiki/UTF-16]UTF-16[/url] encoded [PackedByteArray]. </description> </method> <method name="to_utf32_buffer" qualifiers="const"> <return type="PackedByteArray" /> <description> - Converts the String (which is an array of characters) to UTF-32 encoded [PackedByteArray] (which is an array of bytes). + Converts the string to a [url=https://en.wikipedia.org/wiki/UTF-32]UTF-32[/url] encoded [PackedByteArray]. </description> </method> <method name="to_utf8_buffer" qualifiers="const"> <return type="PackedByteArray" /> <description> - Converts the String (which is an array of characters) to UTF-8 encode [PackedByteArray] (which is an array of bytes). The conversion is a bit slower than [method to_ascii_buffer], but supports all UTF-8 characters. Therefore, you should prefer this function over [method to_ascii_buffer]. + Converts the string to a [url=https://en.wikipedia.org/wiki/UTF-8]UTF-8[/url] encoded [PackedByteArray]. This method is slightly slower than [method to_ascii_buffer], but supports all UTF-8 characters. For most cases, prefer using this method. </description> </method> <method name="trim_prefix" qualifiers="const"> <return type="String" /> <param index="0" name="prefix" type="String" /> <description> - Removes a given string from the start if it starts with it or leaves the string unchanged. + Removes the given [param prefix] from the start of the string, or returns the string unchanged. </description> </method> <method name="trim_suffix" qualifiers="const"> <return type="String" /> <param index="0" name="suffix" type="String" /> <description> - Removes a given string from the end if it ends with it or leaves the string unchanged. + Removes the given [param suffix] from the end of the string, or returns the string unchanged. </description> </method> <method name="unicode_at" qualifiers="const"> @@ -870,13 +969,15 @@ <method name="uri_decode" qualifiers="const"> <return type="String" /> <description> - Decodes a string in URL encoded format. This is meant to decode parameters in a URL when receiving an HTTP request. + Decodes the string from its URL-encoded format. This method is meant to properly decode the parameters in a URL when receiving an HTTP request. [codeblocks] [gdscript] - print("https://example.org/?escaped=" + "Godot%20Engine%3A%27docs%27".uri_decode()) + var url = "$DOCS_URL/?highlight=Godot%20Engine%3%docs" + print(url.uri_decode()) # Prints "$DOCS_URL/?highlight=Godot Engine:docs" [/gdscript] [csharp] - GD.Print("https://example.org/?escaped=" + "Godot%20Engine%3a%27Docs%27".URIDecode()); + var url = "$DOCS_URL/?highlight=Godot%20Engine%3%docs" + GD.Print(url.URIDecode()) // Prints "$DOCS_URL/?highlight=Godot Engine:docs" [/csharp] [/codeblocks] </description> @@ -884,13 +985,19 @@ <method name="uri_encode" qualifiers="const"> <return type="String" /> <description> - Encodes a string to URL friendly format. This is meant to encode parameters in a URL when sending an HTTP request. + Encodes the string to URL-friendly format. This method is meant to properly encode the parameters in a URL when sending an HTTP request. [codeblocks] [gdscript] - print("https://example.org/?escaped=" + "Godot Engine:'docs'".uri_encode()) + var prefix = "$DOCS_URL/?highlight=" + var url = prefix + "Godot Engine:docs".uri_encode() + + print(url) # Prints "$DOCS_URL/?highlight=Godot%20Engine%3%docs" [/gdscript] [csharp] - GD.Print("https://example.org/?escaped=" + "Godot Engine:'docs'".URIEncode()); + var prefix = "$DOCS_URL/?highlight="; + var url = prefix + "Godot Engine:docs".URIEncode(); + + GD.Print(url); // Prints "$DOCS_URL/?highlight=Godot%20Engine%3%docs" [/csharp] [/codeblocks] </description> @@ -898,7 +1005,7 @@ <method name="validate_node_name" qualifiers="const"> <return type="String" /> <description> - Removes any characters from the string that are prohibited in [Node] names ([code].[/code] [code]:[/code] [code]@[/code] [code]/[/code] [code]"[/code]). + Removes all characters that are not allowed in [member Node.name] from the string ([code].[/code] [code]:[/code] [code]@[/code] [code]/[/code] [code]"[/code] [code]%[/code]). </description> </method> <method name="xml_escape" qualifiers="const"> @@ -920,66 +1027,94 @@ <return type="bool" /> <param index="0" name="right" type="String" /> <description> + Returns [code]true[/code] if both strings do not contain the same sequence of characters. </description> </operator> <operator name="operator !="> <return type="bool" /> <param index="0" name="right" type="StringName" /> <description> + Returns [code]true[/code] if this [String] is not equivalent to the given [StringName]. </description> </operator> <operator name="operator %"> <return type="String" /> <param index="0" name="right" type="Variant" /> <description> + Formats the [String], replacing the placeholders with one or more parameters. + To pass multiple parameters, [param right] needs to be an [Array]. + [codeblock] + print("I caught %d fishes!" % 2) # Prints "I caught 2 fishes!" + + var my_message = "Travelling to %s, at %2.2f per second." + var location = "Deep Valley" + var speed = 40.3485 + print(my_message % [location, speed]) # Prints "Travelling to Deep Valley, at 40.35 km/h." + [/codeblock] + In C#, there is no direct equivalent to this operator. Use the [method format] method, instead. + For more information, see the [url=$DOCS_URL/tutorials/scripting/gdscript/gdscript_format_string.html]GDScript format strings[/url] tutorial. </description> </operator> <operator name="operator +"> <return type="String" /> <param index="0" name="right" type="String" /> <description> + Appends [param right] at the end of this [String], also known as a string concatenation. + </description> + </operator> + <operator name="operator +"> + <return type="String" /> + <param index="0" name="right" type="StringName" /> + <description> </description> </operator> <operator name="operator <"> <return type="bool" /> <param index="0" name="right" type="String" /> <description> + Returns [code]true[/code] if the left [String] comes before [param right] in [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/url], which roughly matches the alphabetical order. Useful for sorting. </description> </operator> <operator name="operator <="> <return type="bool" /> <param index="0" name="right" type="String" /> <description> + Returns [code]true[/code] if the left [String] comes before [param right] in [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/url], which roughly matches the alphabetical order, or if both are equal. </description> </operator> <operator name="operator =="> <return type="bool" /> <param index="0" name="right" type="String" /> <description> + Returns [code]true[/code] if both strings contain the same sequence of characters. </description> </operator> <operator name="operator =="> <return type="bool" /> <param index="0" name="right" type="StringName" /> <description> + Returns [code]true[/code] if this [String] is equivalent to the given [StringName]. </description> </operator> <operator name="operator >"> <return type="bool" /> <param index="0" name="right" type="String" /> <description> + Returns [code]true[/code] if the left [String] comes after [param right] in [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/url], which roughly matches the alphabetical order. Useful for sorting. </description> </operator> <operator name="operator >="> <return type="bool" /> <param index="0" name="right" type="String" /> <description> + Returns [code]true[/code] if the left [String] comes after [param right] in [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/url], which roughly matches the alphabetical order, or if both are equal. </description> </operator> <operator name="operator []"> <return type="String" /> <param index="0" name="index" type="int" /> <description> + Returns a new [String] that only contains the character at [param index]. Indices start from [code]0[/code]. If [param index] is greater or equal to [code]0[/code], the character is fetched starting from the beginning of the string. If [param index] is a negative value, it is fetched starting from the end. Accessing a string out-of-bounds will cause a run-time error, pausing the project execution if run from the editor. </description> </operator> </operators> diff --git a/doc/classes/StringName.xml b/doc/classes/StringName.xml index c40d8929fc..b46e39b8d7 100644 --- a/doc/classes/StringName.xml +++ b/doc/classes/StringName.xml @@ -5,8 +5,10 @@ </brief_description> <description> [StringName]s are immutable strings designed for general-purpose representation of unique names (also called "string interning"). [StringName] ensures that only one instance of a given name exists (so two [StringName]s with the same value are the same object). Comparing them is much faster than with regular [String]s, because only the pointers are compared, not the whole strings. - You will usually just pass a [String] to methods expecting a [StringName] and it will be automatically converted, but you may occasionally want to construct a [StringName] ahead of time with [StringName] or the literal syntax [code]&"example"[/code]. + You will usually just pass a [String] to methods expecting a [StringName] and it will be automatically converted, but you may occasionally want to construct a [StringName] ahead of time with [StringName] or, in GDScript, the literal syntax [code]&"example"[/code]. See also [NodePath], which is a similar concept specifically designed to store pre-parsed node paths. + Some string methods have corresponding variations. Variations suffixed with [code]n[/code] ([method countn], [method findn], [method replacen], etc.) are [b]case-insensitive[/b] (they make no distinction between uppercase and lowercase letters). Method variations prefixed with [code]r[/code] ([method rfind], [method rsplit], etc.) are reversed, and start from the end of the string, instead of the beginning. + [b]Note:[/b] In a boolean context, a [StringName] will evaluate to [code]false[/code] if it is empty ([code]StringName("")[/code]). Otherwise, a [StringName] will always evaluate to [code]true[/code]. </description> <tutorials> </tutorials> @@ -28,15 +30,902 @@ <return type="StringName" /> <param index="0" name="from" type="String" /> <description> - Creates a new [StringName] from the given [String]. [code]StringName("example")[/code] is equivalent to [code]&"example"[/code]. + Creates a new [StringName] from the given [String]. In GDScript, [code]StringName("example")[/code] is equivalent to [code]&"example"[/code]. </description> </constructor> </constructors> <methods> + <method name="begins_with" qualifiers="const"> + <return type="bool" /> + <param index="0" name="text" type="String" /> + <description> + Returns [code]true[/code] if the string begins with the given [param text]. See also [method ends_with]. + </description> + </method> + <method name="bigrams" qualifiers="const"> + <return type="PackedStringArray" /> + <description> + Returns an array containing the bigrams (pairs of consecutive characters) of this string. + [codeblock] + print("Get up!".bigrams()) # Prints ["Ge", "et", "t ", " u", "up", "p!"] + [/codeblock] + </description> + </method> + <method name="bin_to_int" qualifiers="const"> + <return type="int" /> + <description> + Converts the string representing a binary number into an [int]. The string may optionally be prefixed with [code]"0b"[/code], and an additional [code]-[/code] prefix for negative numbers. + [codeblocks] + [gdscript] + print("101".bin_to_int()) # Prints 5 + print("0b101".bin_to_int()) # Prints 5 + print("-0b10".bin_to_int()) # Prints -2 + [/gdscript] + [csharp] + GD.Print("101".BinToInt()); // Prints 5 + GD.Print("0b101".BinToInt()); // Prints 5 + GD.Print("-0b10".BinToInt()); // Prints -2 + [/csharp] + [/codeblocks] + </description> + </method> + <method name="c_escape" qualifiers="const"> + <return type="String" /> + <description> + Returns a copy of the string with special characters escaped using the C language standard. + </description> + </method> + <method name="c_unescape" qualifiers="const"> + <return type="String" /> + <description> + Returns a copy of the string with escaped characters replaced by their meanings. Supported escape sequences are [code]\'[/code], [code]\"[/code], [code]\\[/code], [code]\a[/code], [code]\b[/code], [code]\f[/code], [code]\n[/code], [code]\r[/code], [code]\t[/code], [code]\v[/code]. + [b]Note:[/b] Unlike the GDScript parser, this method doesn't support the [code]\uXXXX[/code] escape sequence. + </description> + </method> + <method name="capitalize" qualifiers="const"> + <return type="String" /> + <description> + Changes the appearance of the string: replaces underscores ([code]_[/code]) with spaces, adds spaces before uppercase letters in the middle of a word, converts all letters to lowercase, then converts the first one and each one following a space to uppercase. + [codeblocks] + [gdscript] + "move_local_x".capitalize() # Returns "Move Local X" + "sceneFile_path".capitalize() # Returns "Scene File Path" + [/gdscript] + [csharp] + "move_local_x".Capitalize(); // Returns "Move Local X" + "sceneFile_path".Capitalize(); // Returns "Scene File Path" + [/csharp] + [/codeblocks] + [b]Note:[/b] This method not the same as the default appearance of properties in the Inspector dock, as it does not capitalize acronyms ([code]"2D"[/code], [code]"FPS"[/code], [code]"PNG"[/code], etc.) as you may expect. + </description> + </method> + <method name="casecmp_to" qualifiers="const"> + <return type="int" /> + <param index="0" name="to" type="String" /> + <description> + Performs a case-sensitive comparison to another string. Returns [code]-1[/code] if less than, [code]1[/code] if greater than, or [code]0[/code] if equal. "Less than" and "greater than" are determined by the [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] of each string, which roughly matches the alphabetical order. + With different string lengths, returns [code]1[/code] if this string is longer than the [param to] string, or [code]-1[/code] if shorter. Note that the length of empty strings is [i]always[/i] [code]0[/code]. + To get a [bool] result from a string comparison, use the [code]==[/code] operator instead. See also [method nocasecmp_to] and [method naturalnocasecmp_to]. + </description> + </method> + <method name="contains" qualifiers="const"> + <return type="bool" /> + <param index="0" name="what" type="String" /> + <description> + Returns [code]true[/code] if the string contains [param what]. In GDScript, this corresponds to the [code]in[/code] operator. + [codeblocks] + [gdscript] + print("Node".contains("de")) # Prints true + print("team".contains("I")) # Prints false + print("I" in "team") # Prints false + [/gdscript] + [csharp] + GD.Print("Node".Contains("de")); // Prints true + GD.Print("team".Contains("I")); // Prints false + [/csharp] + [/codeblocks] + If you need to know where [param what] is within the string, use [method find]. + </description> + </method> + <method name="count" qualifiers="const"> + <return type="int" /> + <param index="0" name="what" type="String" /> + <param index="1" name="from" type="int" default="0" /> + <param index="2" name="to" type="int" default="0" /> + <description> + Returns the number of occurrences of the substring [param what] between [param from] and [param to] positions. If [param to] is 0, the search continues until the end of the string. + </description> + </method> + <method name="countn" qualifiers="const"> + <return type="int" /> + <param index="0" name="what" type="String" /> + <param index="1" name="from" type="int" default="0" /> + <param index="2" name="to" type="int" default="0" /> + <description> + Returns the number of occurrences of the substring [param what] between [param from] and [param to] positions, [b]ignoring case[/b]. If [param to] is 0, the search continues until the end of the string. + </description> + </method> + <method name="dedent" qualifiers="const"> + <return type="String" /> + <description> + Returns a copy of the string with indentation (leading tabs and spaces) removed. See also [method indent] to add indentation. + </description> + </method> + <method name="ends_with" qualifiers="const"> + <return type="bool" /> + <param index="0" name="text" type="String" /> + <description> + Returns [code]true[/code] if the string ends with the given [param text]. See also [method begins_with]. + </description> + </method> + <method name="find" qualifiers="const"> + <return type="int" /> + <param index="0" name="what" type="String" /> + <param index="1" name="from" type="int" default="0" /> + <description> + Returns the index of the [b]first[/b] occurrence of [param what] in this string, or [code]-1[/code] if there are none. The search's start can be specified with [param from], continuing to the end of the string. + [codeblocks] + [gdscript] + print("Team".find("I")) # Prints -1 + + print("Potato".find("t")) # Prints 2 + print("Potato".find("t", 3)) # Prints 4 + print("Potato".find("t", 5)) # Prints -1 + [/gdscript] + [csharp] + GD.Print("Team".Find("I")); // Prints -1 + + GD.Print("Potato".Find("t")); // Prints 2 + GD.print("Potato".Find("t", 3)); // Prints 4 + GD.print("Potato".Find("t", 5)); // Prints -1 + [/csharp] + [/codeblocks] + [b]Note:[/b] If you just want to know whether the string contains [param what], use [method contains]. In GDScript, you may also use the [code]in[/code] operator. + </description> + </method> + <method name="findn" qualifiers="const"> + <return type="int" /> + <param index="0" name="what" type="String" /> + <param index="1" name="from" type="int" default="0" /> + <description> + Returns the index of the [b]first[/b] [b]case-insensitive[/b] occurrence of [param what] in this string, or [code]-1[/code] if there are none. The starting search index can be specified with [param from], continuing to the end of the string. + </description> + </method> + <method name="format" qualifiers="const"> + <return type="String" /> + <param index="0" name="values" type="Variant" /> + <param index="1" name="placeholder" type="String" default=""{_}"" /> + <description> + Formats the string by replacing all occurrences of [param placeholder] with the elements of [param values]. + [param values] can be a [Dictionary] or an [Array]. Any underscores in [param placeholder] will be replaced with the corresponding keys in advance. Array elements use their index as keys. + [codeblock] + # Prints "Waiting for Godot is a play by Samuel Beckett, and Godot Engine is named after it." + var use_array_values = "Waiting for {0} is a play by {1}, and {0} Engine is named after it." + print(use_array_values.format(["Godot", "Samuel Beckett"])) + + # Prints "User 42 is Godot." + print("User {id} is {name}.".format({"id": 42, "name": "Godot"})) + [/codeblock] + Some additional handling is performed when [param values] is an [Array]. If [param placeholder] does not contain an underscore, the elements of the [param values] array will be used to replace one occurrence of the placeholder in order; If an element of [param values] is another 2-element array, it'll be interpreted as a key-value pair. + [codeblock] + # Prints "User 42 is Godot." + print("User {} is {}.".format([42, "Godot"], "{}")) + print("User {id} is {name}.".format([["id", 42], ["name", "Godot"]])) + [/codeblock] + See also the [url=$DOCS_URL/tutorials/scripting/gdscript/gdscript_format_string.html]GDScript format string[/url] tutorial. + </description> + </method> + <method name="get_base_dir" qualifiers="const"> + <return type="String" /> + <description> + If the string is a valid file path, returns the base directory name. + [codeblock] + var dir_path = "/path/to/file.txt".get_base_dir() # dir_path is "/path/to" + [/codeblock] + </description> + </method> + <method name="get_basename" qualifiers="const"> + <return type="String" /> + <description> + If the string is a valid file path, returns the full file path, without the extension. + [codeblock] + var base = "/path/to/file.txt".get_basename() # base is "/path/to/file" + [/codeblock] + </description> + </method> + <method name="get_extension" qualifiers="const"> + <return type="String" /> + <description> + If the string is a valid file name or path, returns the file extension without the leading period ([code].[/code]). Otherwise, returns an empty string. + [codeblock] + var a = "/path/to/file.txt".get_extension() # a is "txt" + var b = "cool.txt".get_extension() # b is "txt" + var c = "cool.font.tres".get_extension() # c is "tres" + var d = ".pack1".get_extension() # d is "pack1" + + var e = "file.txt.".get_extension() # e is "" + var f = "file.txt..".get_extension() # f is "" + var g = "txt".get_extension() # g is "" + var h = "".get_extension() # h is "" + [/codeblock] + </description> + </method> + <method name="get_file" qualifiers="const"> + <return type="String" /> + <description> + If the string is a valid file path, returns the file name, including the extension. + [codeblock] + var file = "/path/to/icon.png".get_file() # file is "icon.png" + [/codeblock] + </description> + </method> + <method name="get_slice" qualifiers="const"> + <return type="String" /> + <param index="0" name="delimiter" type="String" /> + <param index="1" name="slice" type="int" /> + <description> + Splits the string using a [param delimiter] and returns the substring at index [param slice]. Returns an empty string if the [param slice] does not exist. + This is faster than [method split], if you only need one substring. + [b]Example:[/b] + [codeblock] + print("i/am/example/hi".get_slice("/", 2)) # Prints "example" + [/codeblock] + </description> + </method> + <method name="get_slice_count" qualifiers="const"> + <return type="int" /> + <param index="0" name="delimiter" type="String" /> + <description> + Returns the total number of slices when the string is split with the given [param delimiter] (see [method split]). + </description> + </method> + <method name="get_slicec" qualifiers="const"> + <return type="String" /> + <param index="0" name="delimiter" type="int" /> + <param index="1" name="slice" type="int" /> + <description> + Splits the string using a Unicode character with code [param delimiter] and returns the substring at index [param slice]. Returns an empty string if the [param slice] does not exist. + This is faster than [method split], if you only need one substring. + </description> + </method> <method name="hash" qualifiers="const"> <return type="int" /> <description> - Returns the 32-bit hash value representing the [StringName]'s contents. + Returns the 32-bit hash value representing the string's contents. + [b]Note:[/b] Strings with equal hash values are [i]not[/i] guaranteed to be the same, as a result of hash collisions. On the countrary, strings with different hash values are guaranteed to be different. + </description> + </method> + <method name="hex_to_int" qualifiers="const"> + <return type="int" /> + <description> + Converts the string representing a hexadecimal number into an [int]. The string may be optionally prefixed with [code]"0x"[/code], and an additional [code]-[/code] prefix for negative numbers. + [codeblocks] + [gdscript] + print("0xff".hex_to_int()) # Prints 255 + print("ab".hex_to_int()) # Prints 171 + [/gdscript] + [csharp] + GD.Print("0xff".HexToInt()); // Prints 255 + GD.Print("ab".HexToInt()); // Prints 171 + [/csharp] + [/codeblocks] + </description> + </method> + <method name="indent" qualifiers="const"> + <return type="String" /> + <param index="0" name="prefix" type="String" /> + <description> + Indents every line of the string with the given [param prefix]. Empty lines are not indented. See also [method dedent] to remove indentation. + For example, the string can be indented with two tabulations using [code]"\t\t"[/code], or four spaces using [code]" "[/code]. + </description> + </method> + <method name="insert" qualifiers="const"> + <return type="String" /> + <param index="0" name="position" type="int" /> + <param index="1" name="what" type="String" /> + <description> + Inserts [param what] at the given [param position] in the string. + </description> + </method> + <method name="is_absolute_path" qualifiers="const"> + <return type="bool" /> + <description> + Returns [code]true[/code] if the string is a path to a file or directory, and its starting point is explicitly defined. This method is the opposite of [method is_relative_path]. + This includes all paths starting with [code]"res://"[/code], [code]"user://"[/code], [code]"C:\"[/code], [code]"/"[/code], etc. + </description> + </method> + <method name="is_empty" qualifiers="const"> + <return type="bool" /> + <description> + Returns [code]true[/code] if the string's length is [code]0[/code] ([code]""[/code]). See also [method length]. + </description> + </method> + <method name="is_relative_path" qualifiers="const"> + <return type="bool" /> + <description> + Returns [code]true[/code] if the string is a path, and its starting point is dependent on context. The path could begin from the current directory, or the current [Node] (if the string is derived from a [NodePath]), and may sometimes be prefixed with [code]"./"[/code]. This method is the opposite of [method is_absolute_path]. + </description> + </method> + <method name="is_subsequence_of" qualifiers="const"> + <return type="bool" /> + <param index="0" name="text" type="String" /> + <description> + Returns [code]true[/code] if all characters of this string can be found in [param text] in their original order. + [codeblock] + var text = "Wow, incredible!" + + print("inedible".is_subsequence_of(text)) # Prints true + print("Word!".is_subsequence_of(text)) # Prints true + print("Window".is_subsequence_of(text)) # Prints false + print("".is_subsequence_of(text)) # Prints true + [/codeblock] + </description> + </method> + <method name="is_subsequence_ofn" qualifiers="const"> + <return type="bool" /> + <param index="0" name="text" type="String" /> + <description> + Returns [code]true[/code] if all characters of this string can be found in [param text] in their original order, [b]ignoring case[/b]. + </description> + </method> + <method name="is_valid_filename" qualifiers="const"> + <return type="bool" /> + <description> + Returns [code]true[/code] if this string does not contain characters that are not allowed in file names ([code]:[/code] [code]/[/code] [code]\[/code] [code]?[/code] [code]*[/code] [code]"[/code] [code]|[/code] [code]%[/code] [code]<[/code] [code]>[/code]). + </description> + </method> + <method name="is_valid_float" qualifiers="const"> + <return type="bool" /> + <description> + Returns [code]true[/code] if this string represents a valid floating-point number. A valid float may contain only digits, one decimal point ([code].[/code]), and the exponent letter ([code]e[/code]). It may also be prefixed with a positive ([code]+[/code]) or negative ([code]-[/code]) sign. Any valid integer is also a valid float (see [method is_valid_int]). See also [method to_float]. + [codeblock] + print("1.7".is_valid_float()) # Prints true + print("24".is_valid_float()) # Prints true + print("7e3".is_valid_float()) # Prints true + print("Hello".is_valid_float()) # Prints false + [/codeblock] + </description> + </method> + <method name="is_valid_hex_number" qualifiers="const"> + <return type="bool" /> + <param index="0" name="with_prefix" type="bool" default="false" /> + <description> + Returns [code]true[/code] if this string is a valid hexadecimal number. A valid hexadecimal number only contains digits or letters [code]A[/code] to [code]F[/code] (either uppercase or lowercase), and may be prefixed with a positive ([code]+[/code]) or negative ([code]-[/code]) sign. + If [param with_prefix] is [code]true[/code], the hexadecimal number needs to prefixed by [code]"0x"[/code] to be considered valid. + [codeblock] + print("A08E".is_valid_hex_number()) # Prints true + print("-AbCdEf".is_valid_hex_number()) # Prints true + print("2.5".is_valid_hex_number()) # Prints false + + print("0xDEADC0DE".is_valid_hex_number(true)) # Prints true + [/codeblock] + </description> + </method> + <method name="is_valid_html_color" qualifiers="const"> + <return type="bool" /> + <description> + Returns [code]true[/code] if this string is a valid color in hexadecimal HTML notation. The string must be a hexadecimal value (see [method is_valid_hex_number]) of either 3, 4, 6 or 8 digits, and may be prefixed by a hash sign ([code]#[/code]). Other HTML notations for colors, such as names or [code]hsl()[/code], are not considered valid. See also [method Color.html]. + </description> + </method> + <method name="is_valid_identifier" qualifiers="const"> + <return type="bool" /> + <description> + Returns [code]true[/code] if this string is a valid identifier. A valid identifier may contain only letters, digits and underscores ([code]_[/code]), and the first character may not be a digit. + [codeblock] + print("node_2d".is_valid_identifier()) # Prints true + print("TYPE_FLOAT".is_valid_identifier()) # Prints true + print("1st_method".is_valid_identifier()) # Prints false + print("MyMethod#2".is_valid_identifier()) # Prints false + [/codeblock] + </description> + </method> + <method name="is_valid_int" qualifiers="const"> + <return type="bool" /> + <description> + Returns [code]true[/code] if this string represents a valid integer. A valid integer only contains digits, and may be prefixed with a positive ([code]+[/code]) or negative ([code]-[/code]) sign. See also [method to_int]. + [codeblock] + print("7".is_valid_int()) # Prints true + print("1.65".is_valid_int()) # Prints false + print("Hi".is_valid_int()) # Prints false + print("+3".is_valid_int()) # Prints true + print("-12".is_valid_int()) # Prints true + [/codeblock] + </description> + </method> + <method name="is_valid_ip_address" qualifiers="const"> + <return type="bool" /> + <description> + Returns [code]true[/code] if this string represents a well-formatted IPv4 or IPv6 address. This method considers [url=https://en.wikipedia.org/wiki/Reserved_IP_addresses]reserved IP addresses[/url] such as [code]"0.0.0.0"[/code] and [code]"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff"[/code] as valid. + </description> + </method> + <method name="join" qualifiers="const"> + <return type="String" /> + <param index="0" name="parts" type="PackedStringArray" /> + <description> + Returns the concatenation of [param parts]' elements, with each element separated by the string calling this method. This method is the opposite of [method split]. + [b]Example:[/b] + [codeblocks] + [gdscript] + var fruits = ["Apple", "Orange", "Pear", "Kiwi"] + + print(", ".join(fruits)) # Prints "Apple, Orange, Pear, Kiwi" + print("---".join(fruits)) # Prints "Apple---Orange---Pear---Kiwi" + [/gdscript] + [csharp] + var fruits = new string[] {"Apple", "Orange", "Pear", "Kiwi"}; + + // In C#, this method is static. + GD.Print(string.Join(", ", fruits); // Prints "Apple, Orange, Pear, Kiwi" + GD.Print(string.Join("---", fruits)); // Prints "Apple---Orange---Pear---Kiwi" + [/csharp] + [/codeblocks] + </description> + </method> + <method name="json_escape" qualifiers="const"> + <return type="String" /> + <description> + Returns a copy of the string with special characters escaped using the JSON standard. Because it closely matches the C standard, it is possible to use [method c_unescape] to unescape the string, if necessary. + </description> + </method> + <method name="left" qualifiers="const"> + <return type="String" /> + <param index="0" name="length" type="int" /> + <description> + Returns the first [param length] characters from the beginning of the string. If [param length] is negative, strips the last [param length] characters from the string's end. + [codeblock] + print("Hello World!".left(3)) # Prints "Hel" + print("Hello World!".left(-4)) # Prints "Hello Wo" + [/codeblock] + </description> + </method> + <method name="length" qualifiers="const"> + <return type="int" /> + <description> + Returns the number of characters in the string. Empty strings ([code]""[/code]) always return [code]0[/code]. See also [method is_empty]. + </description> + </method> + <method name="lpad" qualifiers="const"> + <return type="String" /> + <param index="0" name="min_length" type="int" /> + <param index="1" name="character" type="String" default="" "" /> + <description> + Formats the string to be at least [param min_length] long by adding [param character]s to the left of the string, if necessary. See also [method rpad]. + </description> + </method> + <method name="lstrip" qualifiers="const"> + <return type="String" /> + <param index="0" name="chars" type="String" /> + <description> + Removes a set of characters defined in [param chars] from the string's beginning. See also [method rstrip]. + [b]Note:[/b] [param chars] is not a prefix. Use [method trim_prefix] to remove a single prefix, rather than a set of characters. + </description> + </method> + <method name="match" qualifiers="const"> + <return type="bool" /> + <param index="0" name="expr" type="String" /> + <description> + Does a simple expression match, where [code]*[/code] matches zero or more arbitrary characters and [code]?[/code] matches any single character except a period ([code].[/code]). An empty string or empty expression always evaluates to [code]false[/code]. + </description> + </method> + <method name="matchn" qualifiers="const"> + <return type="bool" /> + <param index="0" name="expr" type="String" /> + <description> + Does a simple [b]case-insensitive[/b] expression match, where [code]*[/code] matches zero or more arbitrary characters and [code]?[/code] matches any single character except a period ([code].[/code]). An empty string or empty expression always evaluates to [code]false[/code]. + </description> + </method> + <method name="md5_buffer" qualifiers="const"> + <return type="PackedByteArray" /> + <description> + Returns the [url=https://en.wikipedia.org/wiki/MD5]MD5 hash[/url] of the string as a [PackedByteArray]. + </description> + </method> + <method name="md5_text" qualifiers="const"> + <return type="String" /> + <description> + Returns the [url=https://en.wikipedia.org/wiki/MD5]MD5 hash[/url] of the string as another [String]. + </description> + </method> + <method name="naturalnocasecmp_to" qualifiers="const"> + <return type="int" /> + <param index="0" name="to" type="String" /> + <description> + Performs a [b]case-insensitive[/b], [i]natural order[/i] comparison to another string. Returns [code]-1[/code] if less than, [code]1[/code] if greater than, or [code]0[/code] if equal. "Less than" or "greater than" are determined by the [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] of each string, which roughly matches the alphabetical order. Internally, lowercase characters are converted to uppercase for the comparison. + When used for sorting, natural order comparison orders sequences of numbers by the combined value of each digit as is often expected, instead of the single digit's value. A sorted sequence of numbered strings will be [code]["1", "2", "3", ...][/code], not [code]["1", "10", "2", "3", ...][/code]. + With different string lengths, returns [code]1[/code] if this string is longer than the [param to] string, or [code]-1[/code] if shorter. Note that the length of empty strings is [i]always[/i] [code]0[/code]. + To get a [bool] result from a string comparison, use the [code]==[/code] operator instead. See also [method nocasecmp_to] and [method casecmp_to]. + </description> + </method> + <method name="nocasecmp_to" qualifiers="const"> + <return type="int" /> + <param index="0" name="to" type="String" /> + <description> + Performs a [b]case-insensitive[/b] comparison to another string. Returns [code]-1[/code] if less than, [code]1[/code] if greater than, or [code]0[/code] if equal. "Less than" or "greater than" are determined by the [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] of each string, which roughly matches the alphabetical order. Internally, lowercase characters are converted to uppercase for the comparison. + With different string lengths, returns [code]1[/code] if this string is longer than the [param to] string, or [code]-1[/code] if shorter. Note that the length of empty strings is [i]always[/i] [code]0[/code]. + To get a [bool] result from a string comparison, use the [code]==[/code] operator instead. See also [method casecmp_to] and [method naturalnocasecmp_to]. + </description> + </method> + <method name="pad_decimals" qualifiers="const"> + <return type="String" /> + <param index="0" name="digits" type="int" /> + <description> + Formats the string representing a number to have an exact number of [param digits] [i]after[/i] the decimal point. + </description> + </method> + <method name="pad_zeros" qualifiers="const"> + <return type="String" /> + <param index="0" name="digits" type="int" /> + <description> + Formats the string representing a number to have an exact number of [param digits] [i]before[/i] the decimal point. + </description> + </method> + <method name="path_join" qualifiers="const"> + <return type="String" /> + <param index="0" name="file" type="String" /> + <description> + Concatenates [param file] at the end of the string as a subpath, adding [code]/[/code] if necessary. + [b]Example:[/b] [code]"this/is".path_join("path") == "this/is/path"[/code]. + </description> + </method> + <method name="repeat" qualifiers="const"> + <return type="String" /> + <param index="0" name="count" type="int" /> + <description> + Repeats this string a number of times. [param count] needs to be greater than [code]0[/code]. Otherwise, returns an empty string. + </description> + </method> + <method name="replace" qualifiers="const"> + <return type="String" /> + <param index="0" name="what" type="String" /> + <param index="1" name="forwhat" type="String" /> + <description> + Replaces all occurrences of [param what] inside the string with the given [param forwhat]. + </description> + </method> + <method name="replacen" qualifiers="const"> + <return type="String" /> + <param index="0" name="what" type="String" /> + <param index="1" name="forwhat" type="String" /> + <description> + Replaces all [b]case-insensitive[/b] occurrences of [param what] inside the string with the given [param forwhat]. + </description> + </method> + <method name="rfind" qualifiers="const"> + <return type="int" /> + <param index="0" name="what" type="String" /> + <param index="1" name="from" type="int" default="-1" /> + <description> + Returns the index of the [b]last[/b] occurrence of [param what] in this string, or [code]-1[/code] if there are none. The search's start can be specified with [param from], continuing to the beginning of the string. This method is the reverse of [method find]. + </description> + </method> + <method name="rfindn" qualifiers="const"> + <return type="int" /> + <param index="0" name="what" type="String" /> + <param index="1" name="from" type="int" default="-1" /> + <description> + Returns the index of the [b]last[/b] [b]case-insensitive[/b] occurrence of [param what] in this string, or [code]-1[/code] if there are none. The starting search index can be specified with [param from], continuing to the beginning of the string. This method is the reverse of [method findn]. + </description> + </method> + <method name="right" qualifiers="const"> + <return type="String" /> + <param index="0" name="length" type="int" /> + <description> + Returns the last [param length] characters from the end of the string. If [param length] is negative, strips the first [param length] characters from the string's beginning. + [codeblock] + print("Hello World!".right(3)) # Prints "ld!" + print("Hello World!".right(-4)) # Prints "o World!" + [/codeblock] + </description> + </method> + <method name="rpad" qualifiers="const"> + <return type="String" /> + <param index="0" name="min_length" type="int" /> + <param index="1" name="character" type="String" default="" "" /> + <description> + Formats the string to be at least [param min_length] long, by adding [param character]s to the right of the string, if necessary. See also [method lpad]. + </description> + </method> + <method name="rsplit" qualifiers="const"> + <return type="PackedStringArray" /> + <param index="0" name="delimiter" type="String" default="""" /> + <param index="1" name="allow_empty" type="bool" default="true" /> + <param index="2" name="maxsplit" type="int" default="0" /> + <description> + Splits the string using a [param delimiter] and returns an array of the substrings, starting from the end of the string. The splits in the returned array appear in the same order as the original string. If [param delimiter] is an empty string, each substring will be a single character. + If [param allow_empty] is [code]false[/code], empty strings between adjacent delimiters are excluded from the array. + If [param maxsplit] is greater than [code]0[/code], the number of splits may not exceed [param maxsplit]. By default, the entire string is split, which is mostly identical to [method split]. + [b]Example:[/b] + [codeblocks] + [gdscript] + var some_string = "One,Two,Three,Four" + var some_array = some_string.rsplit(",", true, 1) + + print(some_array.size()) # Prints 2 + print(some_array[0]) # Prints "One,Two,Three" + print(some_array[1]) # Prints "Four" + [/gdscript] + [csharp] + // In C#, there is no String.RSplit() method. + [/csharp] + [/codeblocks] + </description> + </method> + <method name="rstrip" qualifiers="const"> + <return type="String" /> + <param index="0" name="chars" type="String" /> + <description> + Removes a set of characters defined in [param chars] from the string's end. See also [method lstrip]. + [b]Note:[/b] [param chars] is not a suffix. Use [method trim_suffix] to remove a single suffix, rather than a set of characters. + </description> + </method> + <method name="sha1_buffer" qualifiers="const"> + <return type="PackedByteArray" /> + <description> + Returns the [url=https://en.wikipedia.org/wiki/SHA-1]SHA-1[/url] hash of the string as a [PackedByteArray]. + </description> + </method> + <method name="sha1_text" qualifiers="const"> + <return type="String" /> + <description> + Returns the [url=https://en.wikipedia.org/wiki/SHA-1]SHA-1[/url] hash of the string as another [String]. + </description> + </method> + <method name="sha256_buffer" qualifiers="const"> + <return type="PackedByteArray" /> + <description> + Returns the [url=https://en.wikipedia.org/wiki/SHA-2]SHA-256[/url] hash of the string as a [PackedByteArray]. + </description> + </method> + <method name="sha256_text" qualifiers="const"> + <return type="String" /> + <description> + Returns the [url=https://en.wikipedia.org/wiki/SHA-2]SHA-256[/url] hash of the string as another [String]. + </description> + </method> + <method name="similarity" qualifiers="const"> + <return type="float" /> + <param index="0" name="text" type="String" /> + <description> + Returns the similarity index ([url=https://en.wikipedia.org/wiki/S%C3%B8rensen%E2%80%93Dice_coefficient]Sorensen-Dice coefficient[/url]) of this string compared to another. A result of [code]1.0[/code] means totally similar, while [code]0.0[/code] means totally dissimilar. + [codeblock] + print("ABC123".similarity("ABC123")) # Prints 1.0 + print("ABC123".similarity("XYZ456")) # Prints 0.0 + print("ABC123".similarity("123ABC")) # Prints 0.8 + print("ABC123".similarity("abc123")) # Prints 0.4 + [/codeblock] + </description> + </method> + <method name="simplify_path" qualifiers="const"> + <return type="String" /> + <description> + If the string is a valid file path, converts the string into a canonical path. This is the shortest possible path, without [code]"./"[/code], and all the unnecessary [code]".."[/code] and [code]"/"[/code]. + [codeblock] + var simple_path = "./path/to///../file".simplify_path() + print(simple_path) # Prints "path/file" + [/codeblock] + </description> + </method> + <method name="split" qualifiers="const"> + <return type="PackedStringArray" /> + <param index="0" name="delimiter" type="String" default="""" /> + <param index="1" name="allow_empty" type="bool" default="true" /> + <param index="2" name="maxsplit" type="int" default="0" /> + <description> + Splits the string using a [param delimiter] and returns an array of the substrings. If [param delimiter] is an empty string, each substring will be a single character. This method is the opposite of [method join]. + If [param allow_empty] is [code]false[/code], empty strings between adjacent delimiters are excluded from the array. + If [param maxsplit] is greater than [code]0[/code], the number of splits may not exceed [param maxsplit]. By default, the entire string is split. + [b]Example:[/b] + [codeblocks] + [gdscript] + var some_array = "One,Two,Three,Four".split(",", true, 2) + + print(some_array.size()) # Prints 3 + print(some_array[0]) # Prints "One" + print(some_array[1]) # Prints "Two" + print(some_array[2]) # Prints "Three,Four" + [/gdscript] + [csharp] + // C#'s `Split()` does not support the `maxsplit` parameter. + var someArray = "One,Two,Three".Split(","); + + GD.Print(someArray[0]); // Prints "One" + GD.Print(someArray[1]); // Prints "Two" + GD.Print(someArray[2]); // Prints "Three" + [/csharp] + [/codeblocks] + [b]Note:[/b] If you only need one substring from the array, consider using [method get_slice] which is faster. If you need to split strings with more complex rules, use the [RegEx] class instead. + </description> + </method> + <method name="split_floats" qualifiers="const"> + <return type="PackedFloat64Array" /> + <param index="0" name="delimiter" type="String" /> + <param index="1" name="allow_empty" type="bool" default="true" /> + <description> + Splits the string into floats by using a [param delimiter] and returns a [PackedFloat64Array]. + If [param allow_empty] is [code]false[/code], empty or invalid [float] conversions between adjacent delimiters are excluded. + [codeblock] + var a = "1,2,4.5".split_floats(",") # a is [1.0, 2.0, 4.5] + var c = "1| ||4.5".split_floats("|") # c is [1.0, 0.0, 0.0, 4.5] + var b = "1| ||4.5".split_floats("|", false) # b is [1.0, 4.5] + [/codeblock] + </description> + </method> + <method name="strip_edges" qualifiers="const"> + <return type="String" /> + <param index="0" name="left" type="bool" default="true" /> + <param index="1" name="right" type="bool" default="true" /> + <description> + Strips all non-printable characters from the beginning and the end of the string. These include spaces, tabulations ([code]\t[/code]), and newlines ([code]\n[/code] [code]\r[/code]). + If [param left] is [code]false[/code], ignores the string's beginning. Likewise, if [param right] is [code]false[/code], ignores the string's end. + </description> + </method> + <method name="strip_escapes" qualifiers="const"> + <return type="String" /> + <description> + Strips all escape characters from the string. These include all non-printable control characters of the first page of the ASCII table (values from 0 to 31), such as tabulation ([code]\t[/code]) and newline ([code]\n[/code], [code]\r[/code]) characters, but [i]not[/i] spaces. + </description> + </method> + <method name="substr" qualifiers="const"> + <return type="String" /> + <param index="0" name="from" type="int" /> + <param index="1" name="len" type="int" default="-1" /> + <description> + Returns part of the string from the position [param from] with length [param len]. If [param len] is [code]-1[/code] (as by default), returns the rest of the string starting from the given position. + </description> + </method> + <method name="to_ascii_buffer" qualifiers="const"> + <return type="PackedByteArray" /> + <description> + Converts the string to an [url=https://en.wikipedia.org/wiki/ASCII]ASCII[/url]/Latin-1 encoded [PackedByteArray]. This method is slightly faster than [method to_utf8_buffer], but replaces all unsupported characters with spaces. + </description> + </method> + <method name="to_camel_case" qualifiers="const"> + <return type="String" /> + <description> + Returns the string converted to [code]camelCase[/code]. + </description> + </method> + <method name="to_float" qualifiers="const"> + <return type="float" /> + <description> + Converts the string representing a decimal number into a [float]. This method stops on the first non-number character, except the first decimal point ([code].[/code]) and the exponent letter ([code]e[/code]). See also [method is_valid_float]. + [codeblock] + var a = "12.35".to_float() # a is 12.35 + var b = "1.2.3".to_float() # b is 1.2 + var c = "12xy3".to_float() # c is 12.0 + var d = "1e3".to_float() # d is 1000.0 + var e = "Hello!".to_int() # e is 0.0 + [/codeblock] + </description> + </method> + <method name="to_int" qualifiers="const"> + <return type="int" /> + <description> + Converts the string representing an integer number into an [int]. This method removes any non-number character and stops at the first decimal point ([code].[/code]). See also [method is_valid_int]. + [codeblock] + var a = "123".to_int() # a is 123 + var b = "x1y2z3".to_int() # b is 123 + var c = "-1.2.3".to_int() # c is -1 + var d = "Hello!".to_int() # d is 0 + [/codeblock] + </description> + </method> + <method name="to_lower" qualifiers="const"> + <return type="String" /> + <description> + Returns the string converted to lowercase. + </description> + </method> + <method name="to_pascal_case" qualifiers="const"> + <return type="String" /> + <description> + Returns the string converted to [code]PascalCase[/code]. + </description> + </method> + <method name="to_snake_case" qualifiers="const"> + <return type="String" /> + <description> + Returns the string converted to [code]snake_case[/code]. + </description> + </method> + <method name="to_upper" qualifiers="const"> + <return type="String" /> + <description> + Returns the string converted to uppercase. + </description> + </method> + <method name="to_utf16_buffer" qualifiers="const"> + <return type="PackedByteArray" /> + <description> + Converts the string to a [url=https://en.wikipedia.org/wiki/UTF-16]UTF-16[/url] encoded [PackedByteArray]. + </description> + </method> + <method name="to_utf32_buffer" qualifiers="const"> + <return type="PackedByteArray" /> + <description> + Converts the string to a [url=https://en.wikipedia.org/wiki/UTF-32]UTF-32[/url] encoded [PackedByteArray]. + </description> + </method> + <method name="to_utf8_buffer" qualifiers="const"> + <return type="PackedByteArray" /> + <description> + Converts the string to a [url=https://en.wikipedia.org/wiki/UTF-8]UTF-8[/url] encoded [PackedByteArray]. This method is slightly slower than [method to_ascii_buffer], but supports all UTF-8 characters. For most cases, prefer using this method. + </description> + </method> + <method name="trim_prefix" qualifiers="const"> + <return type="String" /> + <param index="0" name="prefix" type="String" /> + <description> + Removes the given [param prefix] from the start of the string, or returns the string unchanged. + </description> + </method> + <method name="trim_suffix" qualifiers="const"> + <return type="String" /> + <param index="0" name="suffix" type="String" /> + <description> + Removes the given [param suffix] from the end of the string, or returns the string unchanged. + </description> + </method> + <method name="unicode_at" qualifiers="const"> + <return type="int" /> + <param index="0" name="at" type="int" /> + <description> + Returns the character code at position [param at]. + </description> + </method> + <method name="uri_decode" qualifiers="const"> + <return type="String" /> + <description> + Decodes the string from its URL-encoded format. This method is meant to properly decode the parameters in a URL when receiving an HTTP request. + [codeblocks] + [gdscript] + var url = "$DOCS_URL/?highlight=Godot%20Engine%3%docs" + print(url.uri_decode()) # Prints "$DOCS_URL/?highlight=Godot Engine:docs" + [/gdscript] + [csharp] + var url = "$DOCS_URL/?highlight=Godot%20Engine%3%docs" + GD.Print(url.URIDecode()) // Prints "$DOCS_URL/?highlight=Godot Engine:docs" + [/csharp] + [/codeblocks] + </description> + </method> + <method name="uri_encode" qualifiers="const"> + <return type="String" /> + <description> + Encodes the string to URL-friendly format. This method is meant to properly encode the parameters in a URL when sending an HTTP request. + [codeblocks] + [gdscript] + var prefix = "$DOCS_URL/?highlight=" + var url = prefix + "Godot Engine:docs".uri_encode() + + print(url) # Prints "$DOCS_URL/?highlight=Godot%20Engine%3%docs" + [/gdscript] + [csharp] + var prefix = "$DOCS_URL/?highlight="; + var url = prefix + "Godot Engine:docs".URIEncode(); + + GD.Print(url); // Prints "$DOCS_URL/?highlight=Godot%20Engine%3%docs" + [/csharp] + [/codeblocks] + </description> + </method> + <method name="validate_node_name" qualifiers="const"> + <return type="String" /> + <description> + Removes all characters that are not allowed in [member Node.name] from the string ([code].[/code] [code]:[/code] [code]@[/code] [code]/[/code] [code]"[/code] [code]%[/code]). + </description> + </method> + <method name="xml_escape" qualifiers="const"> + <return type="String" /> + <param index="0" name="escape_quotes" type="bool" default="false" /> + <description> + Returns a copy of the string with special characters escaped using the XML standard. If [param escape_quotes] is [code]true[/code], the single quote ([code]'[/code]) and double quote ([code]"[/code]) characters are also escaped. + </description> + </method> + <method name="xml_unescape" qualifiers="const"> + <return type="String" /> + <description> + Returns a copy of the string with escaped characters replaced by their meanings according to the XML standard. </description> </method> </methods> @@ -45,48 +934,74 @@ <return type="bool" /> <param index="0" name="right" type="String" /> <description> + Returns [code]true[/code] if this [StringName] is not equivalent to the given [String]. </description> </operator> <operator name="operator !="> <return type="bool" /> <param index="0" name="right" type="StringName" /> <description> + Returns [code]true[/code] if the [StringName] and [param right] do not refer to the same name. Comparisons between [StringName]s are much faster than regular [String] comparisons. + </description> + </operator> + <operator name="operator %"> + <return type="String" /> + <param index="0" name="right" type="Variant" /> + <description> + </description> + </operator> + <operator name="operator +"> + <return type="String" /> + <param index="0" name="right" type="String" /> + <description> + </description> + </operator> + <operator name="operator +"> + <return type="String" /> + <param index="0" name="right" type="StringName" /> + <description> </description> </operator> <operator name="operator <"> <return type="bool" /> <param index="0" name="right" type="StringName" /> <description> + Returns [code]true[/code] if the left [String] comes before [param right] in [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/url], which roughly matches the alphabetical order. Useful for sorting. </description> </operator> <operator name="operator <="> <return type="bool" /> <param index="0" name="right" type="StringName" /> <description> + Returns [code]true[/code] if the left [String] comes before [param right] in [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/url], which roughly matches the alphabetical order, or if both are equal. </description> </operator> <operator name="operator =="> <return type="bool" /> <param index="0" name="right" type="String" /> <description> + Returns [code]true[/code] if this [StringName] is equivalent to the given [String]. </description> </operator> <operator name="operator =="> <return type="bool" /> <param index="0" name="right" type="StringName" /> <description> + Returns [code]true[/code] if the [StringName] and [param right] refer to the same name. Comparisons between [StringName]s are much faster than regular [String] comparisons. </description> </operator> <operator name="operator >"> <return type="bool" /> <param index="0" name="right" type="StringName" /> <description> + Returns [code]true[/code] if the left [StringName] comes after [param right] in [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/url], which roughly matches the alphabetical order. Useful for sorting. </description> </operator> <operator name="operator >="> <return type="bool" /> <param index="0" name="right" type="StringName" /> <description> + Returns [code]true[/code] if the left [StringName] comes after [param right] in [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/url], which roughly matches the alphabetical order, or if both are equal. </description> </operator> </operators> diff --git a/doc/classes/SystemFont.xml b/doc/classes/SystemFont.xml index b47d6ded7d..20bfd0d8ae 100644 --- a/doc/classes/SystemFont.xml +++ b/doc/classes/SystemFont.xml @@ -7,23 +7,32 @@ <description> [SystemFont] loads a font from a system font with the first matching name from [member font_names]. It will attempt to match font style, but it's not guaranteed. - The returned font might be part of a font collection or be a variable font with OpenType "weight" and/or "italic" features set. + The returned font might be part of a font collection or be a variable font with OpenType "weight", "width" and/or "italic" features set. You can create [FontVariation] of the system font for fine control over its features. </description> <tutorials> </tutorials> <members> + <member name="allow_system_fallback" type="bool" setter="set_allow_system_fallback" getter="is_allow_system_fallback" default="true"> + If set to [code]true[/code], system fonts can be automatically used as fallbacks. + </member> <member name="antialiasing" type="int" setter="set_antialiasing" getter="get_antialiasing" enum="TextServer.FontAntialiasing" default="1"> Font anti-aliasing mode. </member> <member name="fallbacks" type="Font[]" setter="set_fallbacks" getter="get_fallbacks" default="[]"> Array of fallback [Font]s. </member> + <member name="font_italic" type="bool" setter="set_font_italic" getter="get_font_italic" default="false"> + If set to [code]true[/code], italic or oblique font is preferred. + </member> <member name="font_names" type="PackedStringArray" setter="set_font_names" getter="get_font_names" default="PackedStringArray()"> Array of font family names to search, first matching font found is used. </member> - <member name="font_style" type="int" setter="set_font_style" getter="get_font_style" enum="TextServer.FontStyle" default="0"> - Font style flags, see [enum TextServer.FontStyle]. + <member name="font_stretch" type="int" setter="set_font_stretch" getter="get_font_stretch" default="100"> + Preferred font stretch amount, compared to a normal width. A percentage value between [code]50%[/code] and [code]200%[/code]. + </member> + <member name="font_weight" type="int" setter="set_font_weight" getter="get_font_weight" default="400"> + Preferred weight (boldness) of the font. A value in the [code]100...999[/code] range, normal font weight is [code]400[/code], bold font weight is [code]700[/code]. </member> <member name="force_autohinter" type="bool" setter="set_force_autohinter" getter="is_force_autohinter" default="false"> If set to [code]true[/code], auto-hinting is supported and preferred over font built-in hinting. diff --git a/doc/classes/TabBar.xml b/doc/classes/TabBar.xml index 713c016651..8d56cbda13 100644 --- a/doc/classes/TabBar.xml +++ b/doc/classes/TabBar.xml @@ -319,6 +319,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the tab text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="font" data_type="font" type="Font"> The font used to draw tab names. diff --git a/doc/classes/TabContainer.xml b/doc/classes/TabContainer.xml index e2e7a0c37e..c744c9b439 100644 --- a/doc/classes/TabContainer.xml +++ b/doc/classes/TabContainer.xml @@ -214,6 +214,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the tab text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="side_margin" data_type="constant" type="int" default="8"> The space at the left or right edges of the tab bar, accordingly with the current [member tab_alignment]. diff --git a/doc/classes/TextEdit.xml b/doc/classes/TextEdit.xml index d4f5233438..1efd0f9326 100644 --- a/doc/classes/TextEdit.xml +++ b/doc/classes/TextEdit.xml @@ -1396,6 +1396,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="font" data_type="font" type="Font"> Sets the default [Font]. diff --git a/doc/classes/TextLine.xml b/doc/classes/TextLine.xml index d1dfdecbd2..1ebae9889d 100644 --- a/doc/classes/TextLine.xml +++ b/doc/classes/TextLine.xml @@ -15,6 +15,7 @@ <param index="1" name="size" type="Vector2" /> <param index="2" name="inline_align" type="int" enum="InlineAlignment" default="5" /> <param index="3" name="length" type="int" default="1" /> + <param index="4" name="baseline" type="float" default="0.0" /> <description> Adds inline object to the text buffer, [param key] must be unique. In the text, object is represented as [param length] object replacement characters. </description> @@ -122,6 +123,7 @@ <param index="0" name="key" type="Variant" /> <param index="1" name="size" type="Vector2" /> <param index="2" name="inline_align" type="int" enum="InlineAlignment" default="5" /> + <param index="3" name="baseline" type="float" default="0.0" /> <description> Sets new size and alignment of embedded object. </description> diff --git a/doc/classes/TextParagraph.xml b/doc/classes/TextParagraph.xml index e0729ba844..38afd9b5f8 100644 --- a/doc/classes/TextParagraph.xml +++ b/doc/classes/TextParagraph.xml @@ -15,6 +15,7 @@ <param index="1" name="size" type="Vector2" /> <param index="2" name="inline_align" type="int" enum="InlineAlignment" default="5" /> <param index="3" name="length" type="int" default="1" /> + <param index="4" name="baseline" type="float" default="0.0" /> <description> Adds inline object to the text buffer, [param key] must be unique. In the text, object is represented as [param length] object replacement characters. </description> @@ -228,6 +229,7 @@ <param index="0" name="key" type="Variant" /> <param index="1" name="size" type="Vector2" /> <param index="2" name="inline_align" type="int" enum="InlineAlignment" default="5" /> + <param index="3" name="baseline" type="float" default="0.0" /> <description> Sets new size and alignment of embedded object. </description> diff --git a/doc/classes/TextServer.xml b/doc/classes/TextServer.xml index f4d92ab9b6..d2c6dee373 100644 --- a/doc/classes/TextServer.xml +++ b/doc/classes/TextServer.xml @@ -235,7 +235,7 @@ <param index="1" name="size" type="Vector2i" /> <param index="2" name="glyph" type="int" /> <description> - Returns resource id of the cache texture containing the glyph. + Returns resource ID of the cache texture containing the glyph. [b]Note:[/b] If there are pending glyphs to render, calling this function might trigger the texture cache update. </description> </method> @@ -362,6 +362,13 @@ Returns list of the font sizes in the cache. Each size is [code]Vector2i[/code] with font size and outline size. </description> </method> + <method name="font_get_stretch" qualifiers="const"> + <return type="int" /> + <param index="0" name="font_rid" type="RID" /> + <description> + Returns font stretch amount, compared to a normal width. A percentage value between [code]50%[/code] and [code]200%[/code]. + </description> + </method> <method name="font_get_style" qualifiers="const"> <return type="int" enum="TextServer.FontStyle" /> <param index="0" name="font_rid" type="RID" /> @@ -446,6 +453,13 @@ Returns variation coordinates for the specified font cache entry. See [method font_supported_variation_list] for more info. </description> </method> + <method name="font_get_weight" qualifiers="const"> + <return type="int" /> + <param index="0" name="font_rid" type="RID" /> + <description> + Returns weight (boldness) of the font. A value in the [code]100...999[/code] range, normal font weight is [code]400[/code], bold font weight is [code]700[/code]. + </description> + </method> <method name="font_has_char" qualifiers="const"> <return type="bool" /> <param index="0" name="font_rid" type="RID" /> @@ -454,6 +468,13 @@ Returns [code]true[/code] if a Unicode [param char] is available in the font. </description> </method> + <method name="font_is_allow_system_fallback" qualifiers="const"> + <return type="bool" /> + <param index="0" name="font_rid" type="RID" /> + <description> + Returns [code]true[/code] if system fonts can be automatically used as fallbacks. + </description> + </method> <method name="font_is_force_autohinter" qualifiers="const"> <return type="bool" /> <param index="0" name="font_rid" type="RID" /> @@ -556,6 +577,14 @@ Renders the range of characters to the font cache texture. </description> </method> + <method name="font_set_allow_system_fallback"> + <return type="void" /> + <param index="0" name="font_rid" type="RID" /> + <param index="1" name="allow_system_fallback" type="bool" /> + <description> + If set to [code]true[/code], system fonts can be automatically used as fallbacks. + </description> + </method> <method name="font_set_antialiasing"> <return type="void" /> <param index="0" name="font_rid" type="RID" /> @@ -783,12 +812,22 @@ Adds override for [method font_is_script_supported]. </description> </method> + <method name="font_set_stretch"> + <return type="void" /> + <param index="0" name="font_rid" type="RID" /> + <param index="1" name="weight" type="int" /> + <description> + Sets font stretch amount, compared to a normal width. A percentage value between [code]50%[/code] and [code]200%[/code]. + [b]Note:[/b] This value is used for font matching only and will not affect font rendering. Use [method font_set_face_index], [method font_set_variation_coordinates], or [method font_set_transform] instead. + </description> + </method> <method name="font_set_style"> <return type="void" /> <param index="0" name="font_rid" type="RID" /> <param index="1" name="style" type="int" enum="TextServer.FontStyle" /> <description> Sets the font style flags, see [enum FontStyle]. + [b]Note:[/b] This value is used for font matching only and will not affect font rendering. Use [method font_set_face_index], [method font_set_variation_coordinates], [method font_set_embolden], or [method font_set_transform] instead. </description> </method> <method name="font_set_style_name"> @@ -862,6 +901,15 @@ Sets variation coordinates for the specified font cache entry. See [method font_supported_variation_list] for more info. </description> </method> + <method name="font_set_weight"> + <return type="void" /> + <param index="0" name="font_rid" type="RID" /> + <param index="1" name="weight" type="int" /> + <description> + Sets weight (boldness) of the font. A value in the [code]100...999[/code] range, normal font weight is [code]400[/code], bold font weight is [code]700[/code]. + [b]Note:[/b] This value is used for font matching only and will not affect font rendering. Use [method font_set_face_index], [method font_set_variation_coordinates], or [method font_set_embolden] instead. + </description> + </method> <method name="font_supported_feature_list" qualifiers="const"> <return type="Dictionary" /> <param index="0" name="font_rid" type="RID" /> @@ -882,6 +930,7 @@ <param index="1" name="language" type="String" default="""" /> <description> Converts a number from the Western Arabic (0..9) to the numeral systems used in [param language]. + If [param language] is omitted, the active locale will be used. </description> </method> <method name="free_rid"> @@ -1049,6 +1098,7 @@ <param index="2" name="size" type="Vector2" /> <param index="3" name="inline_align" type="int" enum="InlineAlignment" default="5" /> <param index="4" name="length" type="int" default="1" /> + <param index="5" name="baseline" type="float" default="0.0" /> <description> Adds inline object to the text buffer, [param key] must be unique. In the text, object is represented as [param length] object replacement characters. </description> @@ -1390,6 +1440,7 @@ <param index="1" name="key" type="Variant" /> <param index="2" name="size" type="Vector2" /> <param index="3" name="inline_align" type="int" enum="InlineAlignment" default="5" /> + <param index="4" name="baseline" type="float" default="0.0" /> <description> Sets new size and alignment of embedded object. </description> @@ -1498,8 +1549,15 @@ <return type="PackedInt32Array" /> <param index="0" name="string" type="String" /> <param index="1" name="language" type="String" default="""" /> - <description> - Returns array of the word break character offsets. + <param index="2" name="chars_per_line" type="int" default="0" /> + <description> + Returns an array of the word break boundaries. Elements in the returned array are the offsets of the start and end of words. Therefore the length of the array is always even. + When [param chars_per_line] is greater than zero, line break boundaries are returned instead. + [codeblock] + var ts = TextServerManager.get_primary_interface() + print(ts.string_get_word_breaks("Godot Engine")) # Prints [0, 5, 6, 12] + print(ts.string_get_word_breaks("Godot Engine", "en", 5)) # Prints [0, 5, 6, 11, 11, 12] + [/codeblock] </description> </method> <method name="string_to_lower" qualifiers="const"> diff --git a/doc/classes/TextServerExtension.xml b/doc/classes/TextServerExtension.xml index 37d2698dd4..e144b09eb6 100644 --- a/doc/classes/TextServerExtension.xml +++ b/doc/classes/TextServerExtension.xml @@ -9,6 +9,11 @@ <tutorials> </tutorials> <methods> + <method name="_cleanup" qualifiers="virtual"> + <return type="void" /> + <description> + </description> + </method> <method name="_create_font" qualifiers="virtual"> <return type="RID" /> <description> @@ -306,6 +311,12 @@ <description> </description> </method> + <method name="_font_get_stretch" qualifiers="virtual const"> + <return type="int" /> + <param index="0" name="font_rid" type="RID" /> + <description> + </description> + </method> <method name="_font_get_style" qualifiers="virtual const"> <return type="int" enum="TextServer.FontStyle" /> <param index="0" name="font_rid" type="RID" /> @@ -379,6 +390,12 @@ <description> </description> </method> + <method name="_font_get_weight" qualifiers="virtual const"> + <return type="int" /> + <param index="0" name="font_rid" type="RID" /> + <description> + </description> + </method> <method name="_font_has_char" qualifiers="virtual const"> <return type="bool" /> <param index="0" name="font_rid" type="RID" /> @@ -386,6 +403,12 @@ <description> </description> </method> + <method name="_font_is_allow_system_fallback" qualifiers="virtual const"> + <return type="bool" /> + <param index="0" name="font_rid" type="RID" /> + <description> + </description> + </method> <method name="_font_is_force_autohinter" qualifiers="virtual const"> <return type="bool" /> <param index="0" name="font_rid" type="RID" /> @@ -474,6 +497,13 @@ <description> </description> </method> + <method name="_font_set_allow_system_fallback" qualifiers="virtual"> + <return type="void" /> + <param index="0" name="font_rid" type="RID" /> + <param index="1" name="allow_system_fallback" type="bool" /> + <description> + </description> + </method> <method name="_font_set_antialiasing" qualifiers="virtual"> <return type="void" /> <param index="0" name="font_rid" type="RID" /> @@ -680,6 +710,13 @@ <description> </description> </method> + <method name="_font_set_stretch" qualifiers="virtual"> + <return type="void" /> + <param index="0" name="font_rid" type="RID" /> + <param index="1" name="stretch" type="int" /> + <description> + </description> + </method> <method name="_font_set_style" qualifiers="virtual"> <return type="void" /> <param index="0" name="font_rid" type="RID" /> @@ -749,6 +786,13 @@ <description> </description> </method> + <method name="_font_set_weight" qualifiers="virtual"> + <return type="void" /> + <param index="0" name="font_rid" type="RID" /> + <param index="1" name="weight" type="int" /> + <description> + </description> + </method> <method name="_font_supported_feature_list" qualifiers="virtual const"> <return type="Dictionary" /> <param index="0" name="font_rid" type="RID" /> @@ -901,6 +945,7 @@ <param index="2" name="size" type="Vector2" /> <param index="3" name="inline_align" type="int" enum="InlineAlignment" /> <param index="4" name="length" type="int" /> + <param index="5" name="baseline" type="float" /> <description> </description> </method> @@ -1198,6 +1243,7 @@ <param index="1" name="key" type="Variant" /> <param index="2" name="size" type="Vector2" /> <param index="3" name="inline_align" type="int" enum="InlineAlignment" /> + <param index="4" name="baseline" type="float" /> <description> </description> </method> @@ -1300,6 +1346,7 @@ <return type="PackedInt32Array" /> <param index="0" name="string" type="String" /> <param index="1" name="language" type="String" /> + <param index="2" name="chars_per_line" type="int" /> <description> </description> </method> diff --git a/doc/classes/Texture.xml b/doc/classes/Texture.xml index df6e0433dc..86c9026fd1 100644 --- a/doc/classes/Texture.xml +++ b/doc/classes/Texture.xml @@ -1,8 +1,10 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="Texture" inherits="Resource" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Base class for all texture types. </brief_description> <description> + [Texture] is the base class for all texture types. Common texture types are [Texture2D] and [ImageTexture]. See also [Image]. </description> <tutorials> </tutorials> diff --git a/doc/classes/Texture2D.xml b/doc/classes/Texture2D.xml index 3dd8c339b2..aac197090a 100644 --- a/doc/classes/Texture2D.xml +++ b/doc/classes/Texture2D.xml @@ -19,6 +19,8 @@ <param index="2" name="modulate" type="Color" /> <param index="3" name="transpose" type="bool" /> <description> + Called when the entire [Texture2D] is requested to be drawn over a [CanvasItem], with the top-left offset specified in [param pos]. [param modulate] specifies a multiplier for the colors being drawn, while [param transpose] specifies whether drawing should be performed in column-major order instead of row-major order (resulting in 90-degree clockwise rotation). + [b]Note:[/b] This is only used in 2D rendering, not 3D. </description> </method> <method name="_draw_rect" qualifiers="virtual const"> @@ -29,6 +31,8 @@ <param index="3" name="modulate" type="Color" /> <param index="4" name="transpose" type="bool" /> <description> + Called when the [Texture2D] is requested to be drawn onto [CanvasItem]'s specified [param rect]. [param modulate] specifies a multiplier for the colors being drawn, while [param transpose] specifies whether drawing should be performed in column-major order instead of row-major order (resulting in 90-degree clockwise rotation). + [b]Note:[/b] This is only used in 2D rendering, not 3D. </description> </method> <method name="_draw_rect_region" qualifiers="virtual const"> @@ -40,21 +44,26 @@ <param index="4" name="transpose" type="bool" /> <param index="5" name="clip_uv" type="bool" /> <description> + Called when a part of the [Texture2D] specified by [param src_rect]'s coordinates is requested to be drawn onto [CanvasItem]'s specified [param rect]. [param modulate] specifies a multiplier for the colors being drawn, while [param transpose] specifies whether drawing should be performed in column-major order instead of row-major order (resulting in 90-degree clockwise rotation). + [b]Note:[/b] This is only used in 2D rendering, not 3D. </description> </method> <method name="_get_height" qualifiers="virtual const"> <return type="int" /> <description> + Called when the [Texture2D]'s height is queried. </description> </method> <method name="_get_width" qualifiers="virtual const"> <return type="int" /> <description> + Called when the [Texture2D]'s width is queried. </description> </method> <method name="_has_alpha" qualifiers="virtual const"> <return type="bool" /> <description> + Called when the presence of an alpha channel in the [Texture2D] is queried. </description> </method> <method name="_is_pixel_opaque" qualifiers="virtual const"> @@ -62,6 +71,7 @@ <param index="0" name="x" type="int" /> <param index="1" name="y" type="int" /> <description> + Called when a pixel's opaque state in the [Texture2D] is queried at the specified [code](x, y)[/code] position. </description> </method> <method name="draw" qualifiers="const"> @@ -100,7 +110,7 @@ <method name="get_height" qualifiers="const"> <return type="int" /> <description> - Returns the texture height. + Returns the texture height in pixels. </description> </method> <method name="get_image" qualifiers="const"> @@ -113,13 +123,13 @@ <method name="get_size" qualifiers="const"> <return type="Vector2" /> <description> - Returns the texture size. + Returns the texture size in pixels. </description> </method> <method name="get_width" qualifiers="const"> <return type="int" /> <description> - Returns the texture width. + Returns the texture width in pixels. </description> </method> <method name="has_alpha" qualifiers="const"> diff --git a/doc/classes/Texture2DArray.xml b/doc/classes/Texture2DArray.xml index 113f37f974..ec00198db1 100644 --- a/doc/classes/Texture2DArray.xml +++ b/doc/classes/Texture2DArray.xml @@ -4,8 +4,9 @@ A single texture resource which consists of multiple, separate images. Each image has the same dimensions and number of mipmap levels. </brief_description> <description> - A Texture2DArray is different from a Texture3D: The Texture2DArray does not support trilinear interpolation between the [Image]s, i.e. no blending. + A Texture2DArray is different from a Texture3D: The Texture2DArray does not support trilinear interpolation between the [Image]s, i.e. no blending. See also [Cubemap] and [CubemapArray], which are texture arrays with specialized cubemap functions. A Texture2DArray is also different from an [AtlasTexture]: In a Texture2DArray, all images are treated separately. In an atlas, the regions (i.e. the single images) can be of different sizes. Furthermore, you usually need to add a padding around the regions, to prevent accidental UV mapping to more than one region. The same goes for mipmapping: Mipmap chains are handled separately for each layer. In an atlas, the slicing has to be done manually in the fragment shader. + To create such a texture file yourself, reimport your image files using the Godot Editor import presets. </description> <tutorials> </tutorials> diff --git a/doc/classes/Texture3D.xml b/doc/classes/Texture3D.xml index 4968f46fe8..1a66932d62 100644 --- a/doc/classes/Texture3D.xml +++ b/doc/classes/Texture3D.xml @@ -1,8 +1,12 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="Texture3D" inherits="Texture" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Base class for 3-dimensionnal textures. </brief_description> <description> + Base class for [ImageTexture3D] and [CompressedTexture3D]. Cannot be used directly, but contains all the functions necessary for accessing the derived resource types. [Texture3D] is the base class for all 3-dimensional texture types. See also [TextureLayered]. + All images need to have the same width, height and number of mipmap levels. + To create such a texture file yourself, reimport your image files using the Godot Editor import presets. </description> <tutorials> </tutorials> @@ -10,61 +14,73 @@ <method name="_get_data" qualifiers="virtual const"> <return type="Image[]" /> <description> + Called when the [Texture3D]'s data is queried. </description> </method> <method name="_get_depth" qualifiers="virtual const"> <return type="int" /> <description> + Called when the [Texture3D]'s depth is queried. </description> </method> <method name="_get_format" qualifiers="virtual const"> <return type="int" enum="Image.Format" /> <description> + Called when the [Texture3D]'s format is queried. </description> </method> <method name="_get_height" qualifiers="virtual const"> <return type="int" /> <description> + Called when the [Texture3D]'s height is queried. </description> </method> <method name="_get_width" qualifiers="virtual const"> <return type="int" /> <description> + Called when the [Texture3D]'s width is queried. </description> </method> <method name="_has_mipmaps" qualifiers="virtual const"> <return type="bool" /> <description> + Called when the presence of mipmaps in the [Texture3D] is queried. </description> </method> <method name="get_data" qualifiers="const"> <return type="Image[]" /> <description> + Returns the [Texture3D]'s data as an array of [Image]s. Each [Image] represents a [i]slice[/i] of the [Texture3D], with different slices mapping to different depth (Z axis) levels. </description> </method> <method name="get_depth" qualifiers="const"> <return type="int" /> <description> + Returns the [Texture3D]'s depth in pixels. Depth is typically represented by the Z axis (a dimension not present in [Texture2D]). </description> </method> <method name="get_format" qualifiers="const"> <return type="int" enum="Image.Format" /> <description> + Returns the current format being used by this texture. See [enum Image.Format] for details. </description> </method> <method name="get_height" qualifiers="const"> <return type="int" /> <description> + Returns the [Texture3D]'s height in pixels. Width is typically represented by the Y axis. </description> </method> <method name="get_width" qualifiers="const"> <return type="int" /> <description> + Returns the [Texture3D]'s width in pixels. Width is typically represented by the X axis. </description> </method> <method name="has_mipmaps" qualifiers="const"> <return type="bool" /> <description> + Returns [code]true[/code] if the [Texture3D] has generated mipmaps. </description> </method> </methods> diff --git a/doc/classes/TextureButton.xml b/doc/classes/TextureButton.xml index 043eeb9a80..b185828577 100644 --- a/doc/classes/TextureButton.xml +++ b/doc/classes/TextureButton.xml @@ -27,19 +27,19 @@ <member name="texture_click_mask" type="BitMap" setter="set_click_mask" getter="get_click_mask"> Pure black and white [BitMap] image to use for click detection. On the mask, white pixels represent the button's clickable area. Use it to create buttons with curved shapes. </member> - <member name="texture_disabled" type="Texture2D" setter="set_disabled_texture" getter="get_disabled_texture"> + <member name="texture_disabled" type="Texture2D" setter="set_texture_disabled" getter="get_texture_disabled"> Texture to display when the node is disabled. See [member BaseButton.disabled]. </member> - <member name="texture_focused" type="Texture2D" setter="set_focused_texture" getter="get_focused_texture"> + <member name="texture_focused" type="Texture2D" setter="set_texture_focused" getter="get_texture_focused"> Texture to display when the node has mouse or keyboard focus. [member texture_focused] is displayed [i]over[/i] the base texture, so a partially transparent texture should be used to ensure the base texture remains visible. A texture that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a fully transparent texture of any size. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons. </member> - <member name="texture_hover" type="Texture2D" setter="set_hover_texture" getter="get_hover_texture"> + <member name="texture_hover" type="Texture2D" setter="set_texture_hover" getter="get_texture_hover"> Texture to display when the mouse hovers the node. </member> - <member name="texture_normal" type="Texture2D" setter="set_normal_texture" getter="get_normal_texture"> + <member name="texture_normal" type="Texture2D" setter="set_texture_normal" getter="get_texture_normal"> Texture to display by default, when the node is [b]not[/b] in the disabled, focused, hover or pressed state. </member> - <member name="texture_pressed" type="Texture2D" setter="set_pressed_texture" getter="get_pressed_texture"> + <member name="texture_pressed" type="Texture2D" setter="set_texture_pressed" getter="get_texture_pressed"> Texture to display on mouse down over the node, if the node has keyboard focus and the player presses the Enter key or if the player presses the [member BaseButton.shortcut] key. </member> </members> diff --git a/doc/classes/TextureLayered.xml b/doc/classes/TextureLayered.xml index 5e6afcbc5c..8f6dff7acf 100644 --- a/doc/classes/TextureLayered.xml +++ b/doc/classes/TextureLayered.xml @@ -4,12 +4,11 @@ Base class for texture types which contain the data of multiple [Image]s. Each image is of the same size and format. </brief_description> <description> - Base class for [Texture2DArray], [Cubemap] and [CubemapArray]. Cannot be used directly, but contains all the functions necessary for accessing the derived resource types. + Base class for [ImageTextureLayered]. Cannot be used directly, but contains all the functions necessary for accessing the derived resource types. See also [Texture3D]. Data is set on a per-layer basis. For [Texture2DArray]s, the layer specifies the array layer. All images need to have the same width, height and number of mipmap levels. - A [TextureLayered] can be loaded with [code]method ResourceFormatLoader.load[/code]. - To create such a texture file yourself, re-import your image files using the Godot Editor import presets. - Internally, Godot maps these files to their respective counterparts in the target rendering driver (GLES3, Vulkan). + A [TextureLayered] can be loaded with [method ResourceLoader.load]. + Internally, Godot maps these files to their respective counterparts in the target rendering driver (Vulkan, GLES3). </description> <tutorials> </tutorials> @@ -17,37 +16,44 @@ <method name="_get_format" qualifiers="virtual const"> <return type="int" enum="Image.Format" /> <description> + Called when the [TextureLayered]'s format is queried. </description> </method> <method name="_get_height" qualifiers="virtual const"> <return type="int" /> <description> + Called when the the [TextureLayered]'s height is queried. </description> </method> <method name="_get_layer_data" qualifiers="virtual const"> <return type="Image" /> <param index="0" name="layer_index" type="int" /> <description> + Called when the data for a layer in the [TextureLayered] is queried. </description> </method> <method name="_get_layered_type" qualifiers="virtual const"> <return type="int" /> <description> + Called when the layers' type in the [TextureLayered] is queried. </description> </method> <method name="_get_layers" qualifiers="virtual const"> <return type="int" /> <description> + Called when the number of layers in the [TextureLayered] is queried. </description> </method> <method name="_get_width" qualifiers="virtual const"> <return type="int" /> <description> + Called when the [TextureLayered]'s width queried. </description> </method> <method name="_has_mipmaps" qualifiers="virtual const"> <return type="bool" /> <description> + Called when the presence of mipmaps in the [TextureLayered] is queried. </description> </method> <method name="get_format" qualifiers="const"> @@ -59,7 +65,7 @@ <method name="get_height" qualifiers="const"> <return type="int" /> <description> - Returns the height of the texture. Height is typically represented by the Y-axis. + Returns the height of the texture in pixels. Height is typically represented by the Y axis. </description> </method> <method name="get_layer_data" qualifiers="const"> @@ -72,6 +78,7 @@ <method name="get_layered_type" qualifiers="const"> <return type="int" enum="TextureLayered.LayeredType" /> <description> + Returns the [TextureLayered]'s type. The type determines how the data is accessed, with cubemaps having special types. </description> </method> <method name="get_layers" qualifiers="const"> @@ -83,7 +90,7 @@ <method name="get_width" qualifiers="const"> <return type="int" /> <description> - Returns the width of the texture. Width is typically represented by the X-axis. + Returns the width of the texture in pixels. Width is typically represented by the X axis. </description> </method> <method name="has_mipmaps" qualifiers="const"> @@ -95,10 +102,13 @@ </methods> <constants> <constant name="LAYERED_TYPE_2D_ARRAY" value="0" enum="LayeredType"> + Texture is a generic [Texture2DArray]. </constant> <constant name="LAYERED_TYPE_CUBEMAP" value="1" enum="LayeredType"> + Texture is a [Cubemap], with each side in its own layer (6 in total). </constant> <constant name="LAYERED_TYPE_CUBEMAP_ARRAY" value="2" enum="LayeredType"> + Texture is a [CubemapArray], with each cubemap being made of 6 layers. </constant> </constants> </class> diff --git a/doc/classes/TextureProgressBar.xml b/doc/classes/TextureProgressBar.xml index ded4dac7da..d7a9d06a15 100644 --- a/doc/classes/TextureProgressBar.xml +++ b/doc/classes/TextureProgressBar.xml @@ -13,6 +13,7 @@ <return type="int" /> <param index="0" name="margin" type="int" enum="Side" /> <description> + Returns the stretch margin with the specified index. See [member stretch_margin_bottom] and related properties. </description> </method> <method name="set_stretch_margin"> @@ -20,6 +21,7 @@ <param index="0" name="margin" type="int" enum="Side" /> <param index="1" name="value" type="int" /> <description> + Sets the stretch margin with the specified index. See [member stretch_margin_bottom] and related properties. </description> </method> </methods> @@ -41,6 +43,8 @@ <member name="radial_initial_angle" type="float" setter="set_radial_initial_angle" getter="get_radial_initial_angle" default="0.0"> Starting angle for the fill of [member texture_progress] if [member fill_mode] is [constant FILL_CLOCKWISE] or [constant FILL_COUNTER_CLOCKWISE]. When the node's [code]value[/code] is equal to its [code]min_value[/code], the texture doesn't show up at all. When the [code]value[/code] increases, the texture fills and tends towards [member radial_fill_degrees]. </member> + <member name="size_flags_vertical" type="int" setter="set_v_size_flags" getter="get_v_size_flags" overrides="Control" default="1" /> + <member name="step" type="float" setter="set_step" getter="get_step" overrides="Range" default="1.0" /> <member name="stretch_margin_bottom" type="int" setter="set_stretch_margin" getter="get_stretch_margin" default="0"> The height of the 9-patch's bottom row. A margin of 16 means the 9-slice's bottom corners and side will have a height of 16 pixels. You can set all 4 margin values individually to create panels with non-uniform borders. </member> diff --git a/doc/classes/TileData.xml b/doc/classes/TileData.xml index 798a536a88..f815b8d0c3 100644 --- a/doc/classes/TileData.xml +++ b/doc/classes/TileData.xml @@ -1,8 +1,10 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="TileData" inherits="Object" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Settings for a single tile in a [TileSet]. </brief_description> <description> + [TileData] object represents a single tile in a [TileSet]. It is usually edited using the tileset editor, but it can be modified at runtime using [method TileMap._tile_data_runtime_update]. </description> <tutorials> </tutorials> @@ -196,32 +198,43 @@ </methods> <members> <member name="flip_h" type="bool" setter="set_flip_h" getter="get_flip_h" default="false"> + If [code]true[/code], the tile will have its texture flipped horizontally. </member> <member name="flip_v" type="bool" setter="set_flip_v" getter="get_flip_v" default="false"> + If [code]true[/code], the tile will have its texture flipped vertically. </member> <member name="material" type="Material" setter="set_material" getter="get_material"> The [Material] to use for this [TileData]. This can be a [CanvasItemMaterial] to use the default shader, or a [ShaderMaterial] to use a custom shader. </member> <member name="modulate" type="Color" setter="set_modulate" getter="get_modulate" default="Color(1, 1, 1, 1)"> + Color modulation of the tile. </member> <member name="probability" type="float" setter="set_probability" getter="get_probability" default="1.0"> + Relative probability of this tile being selected when drawing a pattern of random tiles. </member> <member name="terrain" type="int" setter="set_terrain" getter="get_terrain" default="-1"> + ID of the terrain from the terrain set that the tile uses. </member> <member name="terrain_set" type="int" setter="set_terrain_set" getter="get_terrain_set" default="-1"> + ID of the terrain set that the tile uses. </member> <member name="texture_offset" type="Vector2i" setter="set_texture_offset" getter="get_texture_offset" default="Vector2i(0, 0)"> + Offsets the position of where the tile is drawn. </member> <member name="transpose" type="bool" setter="set_transpose" getter="get_transpose" default="false"> + If [code]true[/code], the tile will display transposed, i.e. with horizontal and vertical texture UVs swapped. </member> <member name="y_sort_origin" type="int" setter="set_y_sort_origin" getter="get_y_sort_origin" default="0"> + Vertical point of the tile used for determining y-sorted order. </member> <member name="z_index" type="int" setter="set_z_index" getter="get_z_index" default="0"> + Ordering index of this tile, relative to [TileMap]. </member> </members> <signals> <signal name="changed"> <description> + Emitted when any of the properties are changed. </description> </signal> </signals> diff --git a/doc/classes/TileMap.xml b/doc/classes/TileMap.xml index 01246f0c2e..8b537545bc 100644 --- a/doc/classes/TileMap.xml +++ b/doc/classes/TileMap.xml @@ -174,7 +174,7 @@ Creates a new [TileMapPattern] from the given layer and set of cells. </description> </method> - <method name="get_surrounding_tiles"> + <method name="get_surrounding_cells"> <return type="Vector2i[]" /> <param index="0" name="coords" type="Vector2i" /> <description> @@ -257,8 +257,9 @@ <description> Sets the tile indentifiers for the cell on layer [param layer] at coordinates [param coords]. Each tile of the [TileSet] is identified using three parts: - The source identifier [param source_id] identifies a [TileSetSource] identifier. See [method TileSet.set_source_id], - - The atlas coordinates identifier [param atlas_coords] identifies a tile coordinates in the atlas (if the source is a [TileSetAtlasSource]. For [TileSetScenesCollectionSource] it should be 0), + - The atlas coordinates identifier [param atlas_coords] identifies a tile coordinates in the atlas (if the source is a [TileSetAtlasSource]. For [TileSetScenesCollectionSource] it should always be [code]Vector2i(0, 0)[/code]), - The alternative tile identifier [param alternative_tile] identifies a tile alternative the source is a [TileSetAtlasSource], and the scene for a [TileSetScenesCollectionSource]. + If [param source_id] is set to [code]-1[/code], [param atlas_coords] to [code]Vector2i(-1, -1)[/code] or [param alternative_tile] to [code]-1[/code], the cell will be erased. An erased cell gets [b]all[/b] its identifiers automatically set to their respective invalid values, namely [code]-1[/code], [code]Vector2i(-1, -1)[/code] and [code]-1[/code]. </description> </method> <method name="set_cells_terrain_connect"> diff --git a/doc/classes/TileSet.xml b/doc/classes/TileSet.xml index 5a24483774..7fc6ba8161 100644 --- a/doc/classes/TileSet.xml +++ b/doc/classes/TileSet.xml @@ -616,6 +616,7 @@ </constant> <constant name="TILE_SHAPE_ISOMETRIC" value="1" enum="TileShape"> Diamond tile shape (for isometric look). + [b]Note:[/b] Isometric [TileSet] works best if [TileMap] and all its layers have Y-sort enabled. </constant> <constant name="TILE_SHAPE_HALF_OFFSET_SQUARE" value="2" enum="TileShape"> Rectangular tile shape with one row/column out of two offset by half a tile. diff --git a/doc/classes/Translation.xml b/doc/classes/Translation.xml index 314be9adf8..ae2f8d8dff 100644 --- a/doc/classes/Translation.xml +++ b/doc/classes/Translation.xml @@ -88,6 +88,12 @@ The number [param n] is the number or quantity of the plural object. It will be used to guide the translation system to fetch the correct plural form for the selected language. </description> </method> + <method name="get_translated_message_list" qualifiers="const"> + <return type="PackedStringArray" /> + <description> + Returns all the messages (translated text). + </description> + </method> </methods> <members> <member name="locale" type="String" setter="set_locale" getter="get_locale" default=""en""> diff --git a/doc/classes/Tree.xml b/doc/classes/Tree.xml index 532f6703b2..584a2a2a7b 100644 --- a/doc/classes/Tree.xml +++ b/doc/classes/Tree.xml @@ -70,7 +70,7 @@ <return type="int" /> <param index="0" name="position" type="Vector2" /> <description> - Returns the button id at [param position], or -1 if no button is there. + Returns the button ID at [param position], or -1 if no button is there. </description> </method> <method name="get_column_at_position" qualifiers="const"> @@ -84,6 +84,7 @@ <return type="int" /> <param index="0" name="column" type="int" /> <description> + Returns the expand ratio assigned to the column. </description> </method> <method name="get_column_title" qualifiers="const"> @@ -223,12 +224,14 @@ <return type="bool" /> <param index="0" name="column" type="int" /> <description> + Returns [code]true[/code] if the column has enabled clipping (see [method set_column_clip_content]). </description> </method> <method name="is_column_expanding" qualifiers="const"> <return type="bool" /> <param index="0" name="column" type="int" /> <description> + Returns [code]true[/code] if the column has enabled expanding (see [method set_column_expand]). </description> </method> <method name="scroll_to_item"> @@ -244,6 +247,7 @@ <param index="0" name="column" type="int" /> <param index="1" name="enable" type="bool" /> <description> + Allows to enable clipping for column's content, making the content size ignored. </description> </method> <method name="set_column_custom_minimum_width"> @@ -259,7 +263,7 @@ <param index="0" name="column" type="int" /> <param index="1" name="expand" type="bool" /> <description> - If [code]true[/code], the column will have the "Expand" flag of [Control]. Columns that have the "Expand" flag will use their "min_width" in a similar fashion to [member Control.size_flags_stretch_ratio]. + If [code]true[/code], the column will have the "Expand" flag of [Control]. Columns that have the "Expand" flag will use their expand ratio in a similar fashion to [member Control.size_flags_stretch_ratio] (see [method set_column_expand_ratio]). </description> </method> <method name="set_column_expand_ratio"> @@ -267,6 +271,7 @@ <param index="0" name="column" type="int" /> <param index="1" name="ratio" type="int" /> <description> + Sets the relative expand ratio for a column. See [method set_column_expand]. </description> </method> <method name="set_column_title"> @@ -293,6 +298,14 @@ Sets language code of column title used for line-breaking and text shaping algorithms, if left empty current locale is used instead. </description> </method> + <method name="set_selected"> + <return type="void" /> + <param index="0" name="item" type="TreeItem" /> + <param index="1" name="column" type="int" /> + <description> + Selects the specified [TreeItem] and column. + </description> + </method> </methods> <members> <member name="allow_reselect" type="bool" setter="set_allow_reselect" getter="get_allow_reselect" default="false"> @@ -509,6 +522,7 @@ </theme_item> <theme_item name="outline_size" data_type="constant" type="int" default="0"> The size of the text outline. + [b]Note:[/b] If using a font with [member FontFile.multichannel_signed_distance_field] enabled, its [member FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of [theme_item outline_size] for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended. </theme_item> <theme_item name="parent_hl_line_margin" data_type="constant" type="int" default="0"> The space between the parent relationship lines for the selected [TreeItem] and the relationship lines to its siblings that are not selected. diff --git a/doc/classes/TreeItem.xml b/doc/classes/TreeItem.xml index a8ffef427f..ec6b166e57 100644 --- a/doc/classes/TreeItem.xml +++ b/doc/classes/TreeItem.xml @@ -78,7 +78,7 @@ <param index="0" name="column" type="int" /> <param index="1" name="id" type="int" /> <description> - Returns the button index if there is a button with id [param id] in column [param column], otherwise returns -1. + Returns the button index if there is a button with ID [param id] in column [param column], otherwise returns -1. </description> </method> <method name="get_button_count" qualifiers="const"> @@ -93,7 +93,7 @@ <param index="0" name="column" type="int" /> <param index="1" name="button_idx" type="int" /> <description> - Returns the id for the button at index [param button_idx] in column [param column]. + Returns the ID for the button at index [param button_idx] in column [param column]. </description> </method> <method name="get_button_tooltip_text" qualifiers="const"> diff --git a/doc/classes/TubeTrailMesh.xml b/doc/classes/TubeTrailMesh.xml index ddc544dc97..7457aa4050 100644 --- a/doc/classes/TubeTrailMesh.xml +++ b/doc/classes/TubeTrailMesh.xml @@ -7,6 +7,12 @@ <tutorials> </tutorials> <members> + <member name="cap_bottom" type="bool" setter="set_cap_bottom" getter="is_cap_bottom" default="true"> + If [code]true[/code], generates a cap at the bottom of the tube. This can be set to [code]false[/code] to speed up generation and rendering when the cap is never seen by the camera. + </member> + <member name="cap_top" type="bool" setter="set_cap_top" getter="is_cap_top" default="true"> + If [code]true[/code], generates a cap at the top of the tube. This can be set to [code]false[/code] to speed up generation and rendering when the cap is never seen by the camera. + </member> <member name="curve" type="Curve" setter="set_curve" getter="get_curve"> </member> <member name="radial_steps" type="int" setter="set_radial_steps" getter="get_radial_steps" default="8"> diff --git a/doc/classes/VSlider.xml b/doc/classes/VSlider.xml index 488154106f..4bc98dea6f 100644 --- a/doc/classes/VSlider.xml +++ b/doc/classes/VSlider.xml @@ -33,7 +33,7 @@ The background of the area below the grabber. </theme_item> <theme_item name="grabber_area_highlight" data_type="style" type="StyleBox"> - The background of the area below the grabber, to the left of the grabber. + The background of the area below the grabber that displays when it's being hovered or focused. </theme_item> <theme_item name="slider" data_type="style" type="StyleBox"> The background for the whole slider. Determines the width of the [code]grabber_area[/code]. diff --git a/doc/classes/Vector2.xml b/doc/classes/Vector2.xml index 5590f82336..c47933ccb7 100644 --- a/doc/classes/Vector2.xml +++ b/doc/classes/Vector2.xml @@ -5,7 +5,8 @@ </brief_description> <description> 2-element structure that can be used to represent positions in 2D space or any other pair of numeric values. - It uses floating-point coordinates. See [Vector2i] for its integer counterpart. + It uses floating-point coordinates. By default, these floating-point values use 32-bit precision, unlike [float] which is always 64-bit. If double precision is needed, compile the engine with the option [code]precision=double[/code]. + See [Vector2i] for its integer counterpart. [b]Note:[/b] In a boolean context, a Vector2 will evaluate to [code]false[/code] if it's equal to [code]Vector2(0, 0)[/code]. Otherwise, a Vector2 will always evaluate to [code]true[/code]. </description> <tutorials> @@ -85,6 +86,16 @@ Returns the aspect ratio of this vector, the ratio of [member x] to [member y]. </description> </method> + <method name="bezier_derivative" qualifiers="const"> + <return type="Vector2" /> + <param index="0" name="control_1" type="Vector2" /> + <param index="1" name="control_2" type="Vector2" /> + <param index="2" name="end" type="Vector2" /> + <param index="3" name="t" type="float" /> + <description> + Returns the derivative at the given [param t] on the [url=https://en.wikipedia.org/wiki/B%C3%A9zier_curve]Bézier curve[/url] defined by this vector and the given [param control_1], [param control_2], and [param end] points. + </description> + </method> <method name="bezier_interpolate" qualifiers="const"> <return type="Vector2" /> <param index="0" name="control_1" type="Vector2" /> @@ -92,14 +103,14 @@ <param index="2" name="end" type="Vector2" /> <param index="3" name="t" type="float" /> <description> - Returns the point at the given [param t] on the [url=https://en.wikipedia.org/wiki/B%C3%A9zier_curve]Bezier curve[/url] defined by this vector and the given [param control_1], [param control_2], and [param end] points. + Returns the point at the given [param t] on the [url=https://en.wikipedia.org/wiki/B%C3%A9zier_curve]Bézier curve[/url] defined by this vector and the given [param control_1], [param control_2], and [param end] points. </description> </method> <method name="bounce" qualifiers="const"> <return type="Vector2" /> <param index="0" name="n" type="Vector2" /> <description> - Returns the vector "bounced off" from a plane defined by the given normal. + Returns a new vector "bounced off" from a plane defined by the given normal. </description> </method> <method name="ceil" qualifiers="const"> @@ -276,7 +287,7 @@ <method name="normalized" qualifiers="const"> <return type="Vector2" /> <description> - Returns the vector scaled to unit length. Equivalent to [code]v / v.length()[/code]. + Returns a new vector scaled to unit length. Equivalent to [code]v / v.length()[/code]. </description> </method> <method name="orthogonal" qualifiers="const"> @@ -303,21 +314,21 @@ <return type="Vector2" /> <param index="0" name="b" type="Vector2" /> <description> - Returns this vector projected onto the vector [code]b[/code]. + Returns the result of projecting the vector onto the given vector [param b]. </description> </method> <method name="reflect" qualifiers="const"> <return type="Vector2" /> <param index="0" name="n" type="Vector2" /> <description> - Returns the vector reflected (i.e. mirrored, or symmetric) over a line defined by the given direction vector [param n]. + Returns the result of reflecting the vector from a line defined by the given direction vector [param n]. </description> </method> <method name="rotated" qualifiers="const"> <return type="Vector2" /> <param index="0" name="angle" type="float" /> <description> - Returns the vector rotated by [param angle] (in radians). See also [method @GlobalScope.deg_to_rad]. + Returns the result of rotating this vector by [param angle] (in radians). See also [method @GlobalScope.deg_to_rad]. </description> </method> <method name="round" qualifiers="const"> @@ -329,7 +340,7 @@ <method name="sign" qualifiers="const"> <return type="Vector2" /> <description> - Returns a new vector with each component set to one or negative one, depending on the signs of the components, or zero if the component is zero, by calling [method @GlobalScope.sign] on each component. + Returns a new vector with each component set to [code]1.0[/code] if it's positive, [code]-1.0[/code] if it's negative, and [code]0.0[/code] if it's zero. The result is identical to calling [method @GlobalScope.sign] on each component. </description> </method> <method name="slerp" qualifiers="const"> @@ -345,14 +356,14 @@ <return type="Vector2" /> <param index="0" name="n" type="Vector2" /> <description> - Returns this vector slid along a plane defined by the given normal. + Returns the result of sliding the vector along a plane defined by the given normal. </description> </method> <method name="snapped" qualifiers="const"> <return type="Vector2" /> <param index="0" name="step" type="Vector2" /> <description> - Returns this vector with each component snapped to the nearest multiple of [param step]. This can also be used to round to an arbitrary number of decimals. + Returns a new vector with each component snapped to the nearest multiple of the corresponding component in [param step]. This can also be used to round the components to an arbitrary number of decimals. </description> </method> </methods> diff --git a/doc/classes/Vector2i.xml b/doc/classes/Vector2i.xml index eab880e57f..db6bc8f237 100644 --- a/doc/classes/Vector2i.xml +++ b/doc/classes/Vector2i.xml @@ -5,7 +5,7 @@ </brief_description> <description> 2-element structure that can be used to represent positions in 2D space or any other pair of numeric values. - It uses integer coordinates and is therefore preferable to [Vector2] when exact precision is required. + It uses integer coordinates and is therefore preferable to [Vector2] when exact precision is required. Note that the values are limited to 32 bits, and unlike [Vector2] this cannot be configured with an engine build option. Use [int] or [PackedInt64Array] if 64-bit values are needed. [b]Note:[/b] In a boolean context, a Vector2i will evaluate to [code]false[/code] if it's equal to [code]Vector2i(0, 0)[/code]. Otherwise, a Vector2i will always evaluate to [code]true[/code]. </description> <tutorials> @@ -92,7 +92,14 @@ <method name="sign" qualifiers="const"> <return type="Vector2i" /> <description> - Returns a new vector with each component set to one or negative one, depending on the signs of the components, or zero if the component is zero, by calling [method @GlobalScope.sign] on each component. + Returns a new vector with each component set to [code]1[/code] if it's positive, [code]-1[/code] if it's negative, and [code]0[/code] if it's zero. The result is identical to calling [method @GlobalScope.sign] on each component. + </description> + </method> + <method name="snapped" qualifiers="const"> + <return type="Vector2i" /> + <param index="0" name="step" type="Vector2i" /> + <description> + Returns a new vector with each component snapped to the closest multiple of the corresponding component in [param step]. </description> </method> </methods> diff --git a/doc/classes/Vector3.xml b/doc/classes/Vector3.xml index 1a2cdfe10e..c961825ab3 100644 --- a/doc/classes/Vector3.xml +++ b/doc/classes/Vector3.xml @@ -5,7 +5,8 @@ </brief_description> <description> 3-element structure that can be used to represent positions in 3D space or any other triplet of numeric values. - It uses floating-point coordinates. See [Vector3i] for its integer counterpart. + It uses floating-point coordinates. By default, these floating-point values use 32-bit precision, unlike [float] which is always 64-bit. If double precision is needed, compile the engine with the option [code]precision=double[/code]. + See [Vector3i] for its integer counterpart. [b]Note:[/b] In a boolean context, a Vector3 will evaluate to [code]false[/code] if it's equal to [code]Vector3(0, 0, 0)[/code]. Otherwise, a Vector3 will always evaluate to [code]true[/code]. </description> <tutorials> @@ -61,6 +62,16 @@ Returns the unsigned minimum angle to the given vector, in radians. </description> </method> + <method name="bezier_derivative" qualifiers="const"> + <return type="Vector3" /> + <param index="0" name="control_1" type="Vector3" /> + <param index="1" name="control_2" type="Vector3" /> + <param index="2" name="end" type="Vector3" /> + <param index="3" name="t" type="float" /> + <description> + Returns the derivative at the given [param t] on the [url=https://en.wikipedia.org/wiki/B%C3%A9zier_curve]Bézier curve[/url] defined by this vector and the given [param control_1], [param control_2], and [param end] points. + </description> + </method> <method name="bezier_interpolate" qualifiers="const"> <return type="Vector3" /> <param index="0" name="control_1" type="Vector3" /> @@ -68,7 +79,7 @@ <param index="2" name="end" type="Vector3" /> <param index="3" name="t" type="float" /> <description> - Returns the point at the given [param t] on the [url=https://en.wikipedia.org/wiki/B%C3%A9zier_curve]Bezier curve[/url] defined by this vector and the given [param control_1], [param control_2], and [param end] points. + Returns the point at the given [param t] on the [url=https://en.wikipedia.org/wiki/B%C3%A9zier_curve]Bézier curve[/url] defined by this vector and the given [param control_1], [param control_2], and [param end] points. </description> </method> <method name="bounce" qualifiers="const"> @@ -287,14 +298,14 @@ <return type="Vector3" /> <param index="0" name="b" type="Vector3" /> <description> - Returns this vector projected onto the vector [param b]. + Returns the result of projecting the vector onto the given vector [param b]. </description> </method> <method name="reflect" qualifiers="const"> <return type="Vector3" /> <param index="0" name="n" type="Vector3" /> <description> - Returns this vector reflected from a plane defined by the given normal. + Returns the result of reflecting the vector from a plane defined by the given normal [param n]. </description> </method> <method name="rotated" qualifiers="const"> @@ -302,7 +313,7 @@ <param index="0" name="axis" type="Vector3" /> <param index="1" name="angle" type="float" /> <description> - Rotates this vector around a given axis by [param angle] (in radians). The axis must be a normalized vector. + Returns the result of rotating this vector around a given axis by [param angle] (in radians). The axis must be a normalized vector. See also [method @GlobalScope.deg_to_rad]. </description> </method> <method name="round" qualifiers="const"> @@ -314,7 +325,7 @@ <method name="sign" qualifiers="const"> <return type="Vector3" /> <description> - Returns a new vector with each component set to one or negative one, depending on the signs of the components, or zero if the component is zero, by calling [method @GlobalScope.sign] on each component. + Returns a new vector with each component set to [code]1.0[/code] if it's positive, [code]-1.0[/code] if it's negative, and [code]0.0[/code] if it's zero. The result is identical to calling [method @GlobalScope.sign] on each component. </description> </method> <method name="signed_angle_to" qualifiers="const"> @@ -338,14 +349,14 @@ <return type="Vector3" /> <param index="0" name="n" type="Vector3" /> <description> - Returns this vector slid along a plane defined by the given normal. + Returns a new vector slid along a plane defined by the given normal. </description> </method> <method name="snapped" qualifiers="const"> <return type="Vector3" /> <param index="0" name="step" type="Vector3" /> <description> - Returns this vector with each component snapped to the nearest multiple of [param step]. This can also be used to round to an arbitrary number of decimals. + Returns a new vector with each component snapped to the nearest multiple of the corresponding component in [param step]. This can also be used to round the components to an arbitrary number of decimals. </description> </method> </methods> diff --git a/doc/classes/Vector3i.xml b/doc/classes/Vector3i.xml index 1c2a033f7a..5c6dc3c1c5 100644 --- a/doc/classes/Vector3i.xml +++ b/doc/classes/Vector3i.xml @@ -5,7 +5,7 @@ </brief_description> <description> 3-element structure that can be used to represent positions in 3D space or any other triplet of numeric values. - It uses integer coordinates and is therefore preferable to [Vector3] when exact precision is required. + It uses integer coordinates and is therefore preferable to [Vector3] when exact precision is required. Note that the values are limited to 32 bits, and unlike [Vector3] this cannot be configured with an engine build option. Use [int] or [PackedInt64Array] if 64-bit values are needed. [b]Note:[/b] In a boolean context, a Vector3i will evaluate to [code]false[/code] if it's equal to [code]Vector3i(0, 0, 0)[/code]. Otherwise, a Vector3i will always evaluate to [code]true[/code]. </description> <tutorials> @@ -87,7 +87,14 @@ <method name="sign" qualifiers="const"> <return type="Vector3i" /> <description> - Returns the vector with each component set to one or negative one, depending on the signs of the components. + Returns a new vector with each component set to [code]1[/code] if it's positive, [code]-1[/code] if it's negative, and [code]0[/code] if it's zero. The result is identical to calling [method @GlobalScope.sign] on each component. + </description> + </method> + <method name="snapped" qualifiers="const"> + <return type="Vector3i" /> + <param index="0" name="step" type="Vector3i" /> + <description> + Returns a new vector with each component snapped to the closest multiple of the corresponding component in [param step]. </description> </method> </methods> diff --git a/doc/classes/Vector4.xml b/doc/classes/Vector4.xml index 662d0bce3a..c811817bdc 100644 --- a/doc/classes/Vector4.xml +++ b/doc/classes/Vector4.xml @@ -5,7 +5,8 @@ </brief_description> <description> 4-element structure that can be used to represent any quadruplet of numeric values. - It uses floating-point coordinates. See [Vector4i] for its integer counterpart. + It uses floating-point coordinates. By default, these floating-point values use 32-bit precision, unlike [float] which is always 64-bit. If double precision is needed, compile the engine with the option [code]precision=double[/code]. + See [Vector4i] for its integer counterpart. [b]Note:[/b] In a boolean context, a Vector4 will evaluate to [code]false[/code] if it's equal to [code]Vector4(0, 0, 0, 0)[/code]. Otherwise, a Vector4 will always evaluate to [code]true[/code]. </description> <tutorials> @@ -189,21 +190,21 @@ <method name="normalized" qualifiers="const"> <return type="Vector4" /> <description> - Returns the vector scaled to unit length. Equivalent to [code]v / v.length()[/code]. + Returns the result of scaling the vector to unit length. Equivalent to [code]v / v.length()[/code]. </description> </method> <method name="posmod" qualifiers="const"> <return type="Vector4" /> <param index="0" name="mod" type="float" /> <description> - Returns a vector composed of the [method @GlobalScope.fposmod] of this vector's components and [param mod]. + Returns a new vector composed of the [method @GlobalScope.fposmod] of this vector's components and [param mod]. </description> </method> <method name="posmodv" qualifiers="const"> <return type="Vector4" /> <param index="0" name="modv" type="Vector4" /> <description> - Returns a vector composed of the [method @GlobalScope.fposmod] of this vector's components and [param modv]'s components. + Returns a new vector composed of the [method @GlobalScope.fposmod] of this vector's components and [param modv]'s components. </description> </method> <method name="round" qualifiers="const"> @@ -215,14 +216,14 @@ <method name="sign" qualifiers="const"> <return type="Vector4" /> <description> - Returns a new vector with each component set to one or negative one, depending on the signs of the components, or zero if the component is zero, by calling [method @GlobalScope.sign] on each component. + Returns a new vector with each component set to [code]1.0[/code] if it's positive, [code]-1.0[/code] if it's negative, and [code]0.0[/code] if it's zero. The result is identical to calling [method @GlobalScope.sign] on each component. </description> </method> <method name="snapped" qualifiers="const"> <return type="Vector4" /> <param index="0" name="step" type="Vector4" /> <description> - Returns this vector with each component snapped to the nearest multiple of [param step]. This can also be used to round to an arbitrary number of decimals. + Returns a new vector with each component snapped to the nearest multiple of the corresponding component in [param step]. This can also be used to round the components to an arbitrary number of decimals. </description> </method> </methods> diff --git a/doc/classes/Vector4i.xml b/doc/classes/Vector4i.xml index e9ac5b9475..95797df90a 100644 --- a/doc/classes/Vector4i.xml +++ b/doc/classes/Vector4i.xml @@ -5,7 +5,7 @@ </brief_description> <description> 4-element structure that can be used to represent 4D grid coordinates or sets of integers. - It uses integer coordinates. See [Vector4] for its floating-point counterpart. + It uses integer coordinates and is therefore preferable to [Vector4] when exact precision is required. Note that the values are limited to 32 bits, and unlike [Vector4] this cannot be configured with an engine build option. Use [int] or [PackedInt64Array] if 64-bit values are needed. </description> <tutorials> </tutorials> @@ -83,7 +83,14 @@ <method name="sign" qualifiers="const"> <return type="Vector4i" /> <description> - Returns a new vector with each component set to one or negative one, depending on the signs of the components, or zero if the component is zero, by calling [method @GlobalScope.sign] on each component. + Returns a new vector with each component set to [code]1[/code] if it's positive, [code]-1[/code] if it's negative, and [code]0[/code] if it's zero. The result is identical to calling [method @GlobalScope.sign] on each component. + </description> + </method> + <method name="snapped" qualifiers="const"> + <return type="Vector4i" /> + <param index="0" name="step" type="Vector4i" /> + <description> + Returns a new vector with each component snapped to the closest multiple of the corresponding component in [param step]. </description> </method> </methods> diff --git a/doc/classes/Viewport.xml b/doc/classes/Viewport.xml index 78013a8f4b..236d34383f 100644 --- a/doc/classes/Viewport.xml +++ b/doc/classes/Viewport.xml @@ -343,6 +343,19 @@ </member> <member name="vrs_texture" type="Texture2D" setter="set_vrs_texture" getter="get_vrs_texture"> Texture to use when [member vrs_mode] is set to [constant Viewport.VRS_TEXTURE]. + The texture [i]must[/i] use a lossless compression format so that colors can be matched precisely. The following VRS densities are mapped to various colors, with brighter colors representing a lower level of shading precision: + [codeblock] + - 1x1 = rgb(0, 0, 0) - #000000 + - 1x2 = rgb(0, 85, 0) - #005500 + - 2x1 = rgb(85, 0, 0) - #550000 + - 2x2 = rgb(85, 85, 0) - #555500 + - 2x4 = rgb(85, 170, 0) - #55aa00 + - 4x2 = rgb(170, 85, 0) - #aa5500 + - 4x4 = rgb(170, 170, 0) - #aaaa00 + - 4x8 = rgb(170, 255, 0) - #aaff00 - Not supported on most hardware + - 8x4 = rgb(255, 170, 0) - #ffaa00 - Not supported on most hardware + - 8x8 = rgb(255, 255, 0) - #ffff00 - Not supported on most hardware + [/codeblock] </member> <member name="world_2d" type="World2D" setter="set_world_2d" getter="get_world_2d"> The custom [World2D] which can be used as 2D environment source. diff --git a/doc/classes/ViewportTexture.xml b/doc/classes/ViewportTexture.xml index 955f054cea..6bd64a50bb 100644 --- a/doc/classes/ViewportTexture.xml +++ b/doc/classes/ViewportTexture.xml @@ -15,7 +15,6 @@ <link title="3D Viewport Scaling Demo">https://godotengine.org/asset-library/asset/586</link> </tutorials> <members> - <member name="resource_local_to_scene" type="bool" setter="set_local_to_scene" getter="is_local_to_scene" overrides="Resource" default="true" /> <member name="viewport_path" type="NodePath" setter="set_viewport_path_in_scene" getter="get_viewport_path_in_scene" default="NodePath("")"> The path to the [Viewport] node to display. This is relative to the scene root, not to the node which uses the texture. </member> diff --git a/doc/classes/VisualInstance3D.xml b/doc/classes/VisualInstance3D.xml index 31811f817b..e069642e50 100644 --- a/doc/classes/VisualInstance3D.xml +++ b/doc/classes/VisualInstance3D.xml @@ -61,5 +61,12 @@ This object will only be visible for [Camera3D]s whose cull mask includes the render object this [VisualInstance3D] is set to. For [Light3D]s, this can be used to control which [VisualInstance3D]s are affected by a specific light. For [GPUParticles3D], this can be used to control which particles are effected by a specific attractor. For [Decal]s, this can be used to control which [VisualInstance3D]s are affected by a specific decal. </member> + <member name="sorting_offset" type="float" setter="set_sorting_offset" getter="get_sorting_offset" default="0.0"> + The sorting offset used by this [VisualInstance3D]. Adjusting it to a higher value will make the [VisualInstance3D] reliably draw on top of other [VisualInstance3D]s that are otherwise positioned at the same spot. + </member> + <member name="sorting_use_aabb_center" type="bool" setter="set_sorting_use_aabb_center" getter="is_sorting_use_aabb_center" default="true"> + If [code]true[/code], the object is sorted based on the [AABB] center. The object will be sorted based on the global position otherwise. + 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 [GPUParticles3D] and [CPUParticles3D]. + </member> </members> </class> diff --git a/doc/classes/Window.xml b/doc/classes/Window.xml index 8707ef003a..16ca486e4a 100644 --- a/doc/classes/Window.xml +++ b/doc/classes/Window.xml @@ -10,6 +10,66 @@ <tutorials> </tutorials> <methods> + <method name="add_theme_color_override"> + <return type="void" /> + <param index="0" name="name" type="StringName" /> + <param index="1" name="color" type="Color" /> + <description> + Creates a local override for a theme [Color] with the specified [param name]. Local overrides always take precedence when fetching theme items for the control. An override can be removed with [method remove_theme_color_override]. + See also [method get_theme_color] and [method Control.add_theme_color_override] for more details. + </description> + </method> + <method name="add_theme_constant_override"> + <return type="void" /> + <param index="0" name="name" type="StringName" /> + <param index="1" name="constant" type="int" /> + <description> + Creates a local override for a theme constant with the specified [param name]. Local overrides always take precedence when fetching theme items for the control. An override can be removed with [method remove_theme_constant_override]. + See also [method get_theme_constant]. + </description> + </method> + <method name="add_theme_font_override"> + <return type="void" /> + <param index="0" name="name" type="StringName" /> + <param index="1" name="font" type="Font" /> + <description> + Creates a local override for a theme [Font] with the specified [param name]. Local overrides always take precedence when fetching theme items for the control. An override can be removed with [method remove_theme_font_override]. + See also [method get_theme_font]. + </description> + </method> + <method name="add_theme_font_size_override"> + <return type="void" /> + <param index="0" name="name" type="StringName" /> + <param index="1" name="font_size" type="int" /> + <description> + Creates a local override for a theme font size with the specified [param name]. Local overrides always take precedence when fetching theme items for the control. An override can be removed with [method remove_theme_font_size_override]. + See also [method get_theme_font_size]. + </description> + </method> + <method name="add_theme_icon_override"> + <return type="void" /> + <param index="0" name="name" type="StringName" /> + <param index="1" name="texture" type="Texture2D" /> + <description> + Creates a local override for a theme icon with the specified [param name]. Local overrides always take precedence when fetching theme items for the control. An override can be removed with [method remove_theme_icon_override]. + See also [method get_theme_icon]. + </description> + </method> + <method name="add_theme_stylebox_override"> + <return type="void" /> + <param index="0" name="name" type="StringName" /> + <param index="1" name="stylebox" type="StyleBox" /> + <description> + Creates a local override for a theme [StyleBox] with the specified [param name]. Local overrides always take precedence when fetching theme items for the control. An override can be removed with [method remove_theme_stylebox_override]. + See also [method get_theme_stylebox] and [method Control.add_theme_stylebox_override] for more details. + </description> + </method> + <method name="begin_bulk_theme_override"> + <return type="void" /> + <description> + Prevents [code]*_theme_*_override[/code] methods from emitting [constant NOTIFICATION_THEME_CHANGED] until [method end_bulk_theme_override] is called. + </description> + </method> <method name="can_draw" qualifiers="const"> <return type="bool" /> <description> @@ -22,6 +82,12 @@ Requests an update of the [Window] size to fit underlying [Control] nodes. </description> </method> + <method name="end_bulk_theme_override"> + <return type="void" /> + <description> + Ends a bulk theme override update. See [method begin_bulk_theme_override]. + </description> + </method> <method name="get_contents_minimum_size" qualifiers="const"> <return type="Vector2" /> <description> @@ -41,7 +107,13 @@ Returns layout direction and text writing direction. </description> </method> - <method name="get_real_size" qualifiers="const"> + <method name="get_position_with_decorations" qualifiers="const"> + <return type="Vector2i" /> + <description> + Returns the window's position including its border. + </description> + </method> + <method name="get_size_with_decorations" qualifiers="const"> <return type="Vector2i" /> <description> Returns the window's size including its border. @@ -52,7 +124,7 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="theme_type" type="StringName" default="""" /> <description> - Returns the [Color] at [param name] if the theme has [param theme_type]. + Returns a [Color] from the first matching [Theme] in the tree if that [Theme] has a color item with the specified [param name] and [param theme_type]. See [method Control.get_theme_color] for more details. </description> </method> @@ -61,29 +133,29 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="theme_type" type="StringName" default="""" /> <description> - Returns the constant at [param name] if the theme has [param theme_type]. + Returns a constant from the first matching [Theme] in the tree if that [Theme] has a constant item with the specified [param name] and [param theme_type]. See [method Control.get_theme_color] for more details. </description> </method> <method name="get_theme_default_base_scale" qualifiers="const"> <return type="float" /> <description> - Returns the default base scale defined in the attached [Theme]. - See [member Theme.default_base_scale] for more details. + Returns the default base scale value from the first matching [Theme] in the tree if that [Theme] has a valid [member Theme.default_base_scale] value. + See [method Control.get_theme_color] for details. </description> </method> <method name="get_theme_default_font" qualifiers="const"> <return type="Font" /> <description> - Returns the default [Font] defined in the attached [Theme]. - See [member Theme.default_font] for more details. + Returns the default font from the first matching [Theme] in the tree if that [Theme] has a valid [member Theme.default_font] value. + See [method Control.get_theme_color] for details. </description> </method> <method name="get_theme_default_font_size" qualifiers="const"> <return type="int" /> <description> - Returns the default font size defined in the attached [Theme]. - See [member Theme.default_font_size] for more details. + Returns the default font size value from the first matching [Theme] in the tree if that [Theme] has a valid [member Theme.default_font_size] value. + See [method Control.get_theme_color] for details. </description> </method> <method name="get_theme_font" qualifiers="const"> @@ -91,8 +163,8 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="theme_type" type="StringName" default="""" /> <description> - Returns the [Font] at [param name] if the theme has [param theme_type]. - See [method Control.get_theme_color] for more details. + Returns a [Font] from the first matching [Theme] in the tree if that [Theme] has a font item with the specified [param name] and [param theme_type]. + See [method Control.get_theme_color] for details. </description> </method> <method name="get_theme_font_size" qualifiers="const"> @@ -100,8 +172,8 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="theme_type" type="StringName" default="""" /> <description> - Returns the font size at [param name] if the theme has [param theme_type]. - See [method Control.get_theme_color] for more details. + Returns a font size from the first matching [Theme] in the tree if that [Theme] has a font size item with the specified [param name] and [param theme_type]. + See [method Control.get_theme_color] for details. </description> </method> <method name="get_theme_icon" qualifiers="const"> @@ -109,8 +181,8 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="theme_type" type="StringName" default="""" /> <description> - Returns the icon at [param name] if the theme has [param theme_type]. - See [method Control.get_theme_color] for more details. + Returns an icon from the first matching [Theme] in the tree if that [Theme] has an icon item with the specified [param name] and [param theme_type]. + See [method Control.get_theme_color] for details. </description> </method> <method name="get_theme_stylebox" qualifiers="const"> @@ -118,8 +190,8 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="theme_type" type="StringName" default="""" /> <description> - Returns the [StyleBox] at [param name] if the theme has [param theme_type]. - See [method Control.get_theme_color] for more details. + Returns a [StyleBox] from the first matching [Theme] in the tree if that [Theme] has a stylebox item with the specified [param name] and [param theme_type]. + See [method Control.get_theme_color] for details. </description> </method> <method name="grab_focus"> @@ -139,7 +211,16 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="theme_type" type="StringName" default="""" /> <description> - Returns [code]true[/code] if [Color] with [param name] is in [param theme_type]. + Returns [code]true[/code] if there is a matching [Theme] in the tree that has a color item with the specified [param name] and [param theme_type]. + See [method Control.get_theme_color] for details. + </description> + </method> + <method name="has_theme_color_override" qualifiers="const"> + <return type="bool" /> + <param index="0" name="name" type="StringName" /> + <description> + Returns [code]true[/code] if there is a local override for a theme [Color] with the specified [param name] in this [Control] node. + See [method add_theme_color_override]. </description> </method> <method name="has_theme_constant" qualifiers="const"> @@ -147,7 +228,16 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="theme_type" type="StringName" default="""" /> <description> - Returns [code]true[/code] if constant with [param name] is in [param theme_type]. + Returns [code]true[/code] if there is a matching [Theme] in the tree that has a constant item with the specified [param name] and [param theme_type]. + See [method Control.get_theme_color] for details. + </description> + </method> + <method name="has_theme_constant_override" qualifiers="const"> + <return type="bool" /> + <param index="0" name="name" type="StringName" /> + <description> + Returns [code]true[/code] if there is a local override for a theme constant with the specified [param name] in this [Control] node. + See [method add_theme_constant_override]. </description> </method> <method name="has_theme_font" qualifiers="const"> @@ -155,7 +245,16 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="theme_type" type="StringName" default="""" /> <description> - Returns [code]true[/code] if [Font] with [param name] is in [param theme_type]. + Returns [code]true[/code] if there is a matching [Theme] in the tree that has a font item with the specified [param name] and [param theme_type]. + See [method Control.get_theme_color] for details. + </description> + </method> + <method name="has_theme_font_override" qualifiers="const"> + <return type="bool" /> + <param index="0" name="name" type="StringName" /> + <description> + Returns [code]true[/code] if there is a local override for a theme [Font] with the specified [param name] in this [Control] node. + See [method add_theme_font_override]. </description> </method> <method name="has_theme_font_size" qualifiers="const"> @@ -163,7 +262,16 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="theme_type" type="StringName" default="""" /> <description> - Returns [code]true[/code] if font size with [param name] is in [param theme_type]. + Returns [code]true[/code] if there is a matching [Theme] in the tree that has a font size item with the specified [param name] and [param theme_type]. + See [method Control.get_theme_color] for details. + </description> + </method> + <method name="has_theme_font_size_override" qualifiers="const"> + <return type="bool" /> + <param index="0" name="name" type="StringName" /> + <description> + Returns [code]true[/code] if there is a local override for a theme font size with the specified [param name] in this [Control] node. + See [method add_theme_font_size_override]. </description> </method> <method name="has_theme_icon" qualifiers="const"> @@ -171,7 +279,16 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="theme_type" type="StringName" default="""" /> <description> - Returns [code]true[/code] if icon with [param name] is in [param theme_type]. + Returns [code]true[/code] if there is a matching [Theme] in the tree that has an icon item with the specified [param name] and [param theme_type]. + See [method Control.get_theme_color] for details. + </description> + </method> + <method name="has_theme_icon_override" qualifiers="const"> + <return type="bool" /> + <param index="0" name="name" type="StringName" /> + <description> + Returns [code]true[/code] if there is a local override for a theme icon with the specified [param name] in this [Control] node. + See [method add_theme_icon_override]. </description> </method> <method name="has_theme_stylebox" qualifiers="const"> @@ -179,7 +296,16 @@ <param index="0" name="name" type="StringName" /> <param index="1" name="theme_type" type="StringName" default="""" /> <description> - Returns [code]true[/code] if [StyleBox] with [param name] is in [param theme_type]. + Returns [code]true[/code] if there is a matching [Theme] in the tree that has a stylebox item with the specified [param name] and [param theme_type]. + See [method Control.get_theme_color] for details. + </description> + </method> + <method name="has_theme_stylebox_override" qualifiers="const"> + <return type="bool" /> + <param index="0" name="name" type="StringName" /> + <description> + Returns [code]true[/code] if there is a local override for a theme [StyleBox] with the specified [param name] in this [Control] node. + See [method add_theme_stylebox_override]. </description> </method> <method name="hide"> @@ -258,6 +384,48 @@ If the [Window] is embedded, has the same effect as [method popup]. </description> </method> + <method name="remove_theme_color_override"> + <return type="void" /> + <param index="0" name="name" type="StringName" /> + <description> + Removes a local override for a theme [Color] with the specified [param name] previously added by [method add_theme_color_override] or via the Inspector dock. + </description> + </method> + <method name="remove_theme_constant_override"> + <return type="void" /> + <param index="0" name="name" type="StringName" /> + <description> + Removes a local override for a theme constant with the specified [param name] previously added by [method add_theme_constant_override] or via the Inspector dock. + </description> + </method> + <method name="remove_theme_font_override"> + <return type="void" /> + <param index="0" name="name" type="StringName" /> + <description> + Removes a local override for a theme [Font] with the specified [param name] previously added by [method add_theme_font_override] or via the Inspector dock. + </description> + </method> + <method name="remove_theme_font_size_override"> + <return type="void" /> + <param index="0" name="name" type="StringName" /> + <description> + Removes a local override for a theme font size with the specified [param name] previously added by [method add_theme_font_size_override] or via the Inspector dock. + </description> + </method> + <method name="remove_theme_icon_override"> + <return type="void" /> + <param index="0" name="name" type="StringName" /> + <description> + Removes a local override for a theme icon with the specified [param name] previously added by [method add_theme_icon_override] or via the Inspector dock. + </description> + </method> + <method name="remove_theme_stylebox_override"> + <return type="void" /> + <param index="0" name="name" type="StringName" /> + <description> + Removes a local override for a theme [StyleBox] with the specified [param name] previously added by [method add_theme_stylebox_override] or via the Inspector dock. + </description> + </method> <method name="request_attention"> <return type="void" /> <description> @@ -367,8 +535,8 @@ The window's size in pixels. </member> <member name="theme" type="Theme" setter="set_theme" getter="get_theme"> - The [Theme] resource that determines the style of the underlying [Control] nodes. - [Window] styles will have no effect unless the window is embedded. + The [Theme] resource this node and all its [Control] and [Window] children use. If a child node has its own [Theme] resource set, theme items are merged with child's definitions having higher priority. + [b]Note:[/b] [Window] styles will have no effect unless the window is embedded. </member> <member name="theme_type_variation" type="StringName" setter="set_theme_type_variation" getter="get_theme_type_variation" default="&"""> The name of a theme type variation used by this [Window] to look up its own theme items. See [member Control.theme_type_variation] for more details. diff --git a/doc/classes/XRInterface.xml b/doc/classes/XRInterface.xml index cc483dbd02..05d5eb6673 100644 --- a/doc/classes/XRInterface.xml +++ b/doc/classes/XRInterface.xml @@ -35,6 +35,16 @@ Returns an array of vectors that denotes the physical play area mapped to the virtual space around the [XROrigin3D] point. The points form a convex polygon that can be used to react to or visualize the play area. This returns an empty array if this feature is not supported or if the information is not yet available. </description> </method> + <method name="get_projection_for_view"> + <return type="Projection" /> + <param index="0" name="view" type="int" /> + <param index="1" name="aspect" type="float" /> + <param index="2" name="near" type="float" /> + <param index="3" name="far" type="float" /> + <description> + Returns the projection matrix for a view/eye. + </description> + </method> <method name="get_render_target_size"> <return type="Vector2" /> <description> @@ -47,6 +57,16 @@ If supported, returns the status of our tracking. This will allow you to provide feedback to the user whether there are issues with positional tracking. </description> </method> + <method name="get_transform_for_view"> + <return type="Transform3D" /> + <param index="0" name="view" type="int" /> + <param index="1" name="cam_transform" type="Transform3D" /> + <description> + Returns the transform for a view/eye. + [param view] is the view/eye index. + [param cam_transform] is the transform that maps device coordinates to scene coordinates, typically the global_transform of the current XROrigin3D. + </description> + </method> <method name="get_view_count"> <return type="int" /> <description> diff --git a/doc/classes/XRInterfaceExtension.xml b/doc/classes/XRInterfaceExtension.xml index c6b215daa3..5ad67a7ea9 100644 --- a/doc/classes/XRInterfaceExtension.xml +++ b/doc/classes/XRInterfaceExtension.xml @@ -24,7 +24,7 @@ <method name="_get_camera_feed_id" qualifiers="virtual const"> <return type="int" /> <description> - Returns the camera feed id for the [CameraFeed] registered with the [CameraServer] that should be presented as the background on an AR capable device (if applicable). + Returns the camera feed ID for the [CameraFeed] registered with the [CameraServer] that should be presented as the background on an AR capable device (if applicable). </description> </method> <method name="_get_camera_transform" qualifiers="virtual"> @@ -141,13 +141,6 @@ Returns [code]true[/code] if this interface has been initialized. </description> </method> - <method name="_notification" qualifiers="virtual"> - <return type="void" /> - <param index="0" name="what" type="int" /> - <description> - Informs the interface of an applicable system notification. - </description> - </method> <method name="_post_draw_viewport" qualifiers="virtual"> <return type="void" /> <param index="0" name="render_target" type="RID" /> diff --git a/doc/classes/float.xml b/doc/classes/float.xml index e3938fb5d5..755ce1200d 100644 --- a/doc/classes/float.xml +++ b/doc/classes/float.xml @@ -5,7 +5,7 @@ </brief_description> <description> The [float] built-in type is a 64-bit double-precision floating-point number, equivalent to [code]double[/code] in C++. This type has 14 reliable decimal digits of precision. The [float] type can be stored in [Variant], which is the generic type used by the engine. The maximum value of [float] is approximately [code]1.79769e308[/code], and the minimum is approximately [code]-1.79769e308[/code]. - Many methods and properties in the engine use 32-bit single-precision floating-point numbers instead, equivalent to [code]float[/code] in C++, which have 6 reliable decimal digits of precision. For data structures such as [Vector2] and [Vector3], Godot uses 32-bit floating-point numbers by default, but it can be changed to use 64-bit doubles if Godot is compiled with the [code]float=64[/code] option. + Many methods and properties in the engine use 32-bit single-precision floating-point numbers instead, equivalent to [code]float[/code] in C++, which have 6 reliable decimal digits of precision. For data structures such as [Vector2] and [Vector3], Godot uses 32-bit floating-point numbers by default, but it can be changed to use 64-bit doubles if Godot is compiled with the [code]precision=double[/code] option. Math done using the [float] type is not guaranteed to be exact or deterministic, and will often result in small errors. You should usually use the [method @GlobalScope.is_equal_approx] and [method @GlobalScope.is_zero_approx] methods instead of [code]==[/code] to compare [float] values for equality. </description> <tutorials> @@ -28,6 +28,13 @@ </constructor> <constructor name="float"> <return type="float" /> + <param index="0" name="from" type="String" /> + <description> + Converts a [String] to a [float], following the same rules as [method String.to_float]. + </description> + </constructor> + <constructor name="float"> + <return type="float" /> <param index="0" name="from" type="bool" /> <description> Cast a [bool] value to a floating-point value, [code]float(true)[/code] will be equal to 1.0 and [code]float(false)[/code] will be equal to 0.0. diff --git a/doc/classes/int.xml b/doc/classes/int.xml index 65ab5d4656..93fc8386c6 100644 --- a/doc/classes/int.xml +++ b/doc/classes/int.xml @@ -54,6 +54,13 @@ </constructor> <constructor name="int"> <return type="int" /> + <param index="0" name="from" type="String" /> + <description> + Converts a [String] to an [int], following the same rules as [method String.to_int]. + </description> + </constructor> + <constructor name="int"> + <return type="int" /> <param index="0" name="from" type="bool" /> <description> Cast a [bool] value to an integer value, [code]int(true)[/code] will be equals to 1 and [code]int(false)[/code] will be equals to 0. diff --git a/doc/tools/make_rst.py b/doc/tools/make_rst.py index 492a438d9b..1f71b77cbd 100755 --- a/doc/tools/make_rst.py +++ b/doc/tools/make_rst.py @@ -29,6 +29,12 @@ MARKUP_ALLOWED_SUBSEQUENT = " -.,:;!?\\/'\")]}>" # write in this script (check `translate()` uses), and also hardcoded in # `doc/translations/extract.py` to include them in the source POT file. BASE_STRINGS = [ + "All classes", + "Globals", + "Nodes", + "Resources", + "Other objects", + "Variant types", "Description", "Tutorials", "Properties", @@ -63,6 +69,19 @@ strings_l10n: Dict[str, str] = {} STYLES: Dict[str, str] = {} +CLASS_GROUPS: Dict[str, str] = { + "global": "Globals", + "node": "Nodes", + "resource": "Resources", + "object": "Other objects", + "variant": "Variant types", +} +CLASS_GROUPS_BASE: Dict[str, str] = { + "node": "Node", + "resource": "Resource", + "object": "Object", +} + class State: def __init__(self) -> None: @@ -221,7 +240,7 @@ class State: enum_def = class_def.enums[enum] else: - enum_def = EnumDef(enum, is_bitfield) + enum_def = EnumDef(enum, TypeName("int", enum), is_bitfield) class_def.enums[enum] = enum_def enum_def.values[constant_name] = constant_def @@ -329,7 +348,7 @@ class State: return cast def sort_classes(self) -> None: - self.classes = OrderedDict(sorted(self.classes.items(), key=lambda t: t[0])) + self.classes = OrderedDict(sorted(self.classes.items(), key=lambda t: t[0].lower())) class TypeName: @@ -439,9 +458,10 @@ class ConstantDef(DefinitionBase): class EnumDef(DefinitionBase): - def __init__(self, name: str, bitfield: bool) -> None: + def __init__(self, name: str, type_name: TypeName, bitfield: bool) -> None: super().__init__("enum", name) + self.type_name = type_name self.values: OrderedDict[str, ConstantDef] = OrderedDict() self.is_bitfield = bitfield @@ -601,12 +621,25 @@ def main() -> None: print("Generating the RST class reference...") + grouped_classes: Dict[str, List[str]] = {} + for class_name, class_def in state.classes.items(): if args.filter and not pattern.search(class_def.filepath): continue state.current_class = class_name make_rst_class(class_def, state, args.dry_run, args.output) + group_name = get_class_group(class_def, state) + + if group_name not in grouped_classes: + grouped_classes[group_name] = [] + grouped_classes[group_name].append(class_name) + + print("") + print("Generating the index file...") + + make_rst_index(grouped_classes, args.dry_run, args.output) + print("") if state.num_warnings >= 2: @@ -655,6 +688,42 @@ def translate(string: str) -> str: return strings_l10n.get(string, string) +def get_git_branch() -> str: + if hasattr(version, "docs") and version.docs != "latest": + return version.docs + + return "master" + + +def get_class_group(class_def: ClassDef, state: State) -> str: + group_name = "variant" + class_name = class_def.name + + if class_name.startswith("@"): + group_name = "global" + elif class_def.inherits: + inherits = class_def.inherits.strip() + + while inherits in state.classes: + if inherits == "Node": + group_name = "node" + break + if inherits == "Resource": + group_name = "resource" + break + if inherits == "Object": + group_name = "object" + break + + inode = state.classes[inherits].inherits + if inode: + inherits = inode.strip() + else: + break + + return group_name + + # Generator methods. @@ -672,10 +741,7 @@ def make_rst_class(class_def: ClassDef, state: State, dry_run: bool, output_dir: # Warn contributors not to edit this file directly. # Also provide links to the source files for reference. - git_branch = "master" - if hasattr(version, "docs") and version.docs != "latest": - git_branch = version.docs - + git_branch = get_git_branch() source_xml_path = os.path.relpath(class_def.filepath, root_directory).replace("\\", "/") source_github_url = f"https://github.com/godotengine/godot/tree/{git_branch}/{source_xml_path}" generator_github_url = f"https://github.com/godotengine/godot/tree/{git_branch}/doc/tools/make_rst.py" @@ -689,7 +755,8 @@ def make_rst_class(class_def: ClassDef, state: State, dry_run: bool, output_dir: f.write(f".. _class_{class_name}:\n\n") f.write(make_heading(class_name, "=", False)) - # Inheritance tree + ### INHERITANCE TREE ### + # Ascendants if class_def.inherits: inherits = class_def.inherits.strip() @@ -723,25 +790,52 @@ def make_rst_class(class_def: ClassDef, state: State, dry_run: bool, output_dir: f.write(make_type(child, state)) f.write("\n\n") + ### INTRODUCTION ### + + has_description = False + # Brief description - if class_def.brief_description is not None: + if class_def.brief_description is not None and class_def.brief_description.strip() != "": + has_description = True + f.write(f"{format_text_block(class_def.brief_description.strip(), class_def, state)}\n\n") # Class description if class_def.description is not None and class_def.description.strip() != "": + has_description = True + + f.write(".. rst-class:: classref-introduction-group\n\n") f.write(make_heading("Description", "-")) + f.write(f"{format_text_block(class_def.description.strip(), class_def, state)}\n\n") + if not has_description: + f.write(".. container:: contribute\n\n\t") + f.write( + translate( + "There is currently no description for this class. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!" + ) + + "\n\n" + ) + # Online tutorials if len(class_def.tutorials) > 0: + f.write(".. rst-class:: classref-introduction-group\n\n") f.write(make_heading("Tutorials", "-")) + for url, title in class_def.tutorials: f.write(f"- {make_link(url, title)}\n\n") - # Properties overview + ### REFERENCE TABLES ### + + # Reused container for reference tables. ml: List[Tuple[Optional[str], ...]] = [] + + # Properties reference table if len(class_def.properties) > 0: + f.write(".. rst-class:: classref-reftable-group\n\n") f.write(make_heading("Properties", "-")) + ml = [] for property_def in class_def.properties.values(): type_rst = property_def.type_name.to_rst(state) @@ -753,76 +847,108 @@ def make_rst_class(class_def: ClassDef, state: State, dry_run: bool, output_dir: else: ref = f":ref:`{property_def.name}<class_{class_name}_property_{property_def.name}>`" ml.append((type_rst, ref, default)) + format_table(f, ml, True) - # Constructors, Methods, Operators overview + # Constructors, Methods, Operators reference tables if len(class_def.constructors) > 0: + f.write(".. rst-class:: classref-reftable-group\n\n") f.write(make_heading("Constructors", "-")) + ml = [] for method_list in class_def.constructors.values(): for m in method_list: ml.append(make_method_signature(class_def, m, "constructor", state)) + format_table(f, ml) if len(class_def.methods) > 0: + f.write(".. rst-class:: classref-reftable-group\n\n") f.write(make_heading("Methods", "-")) + ml = [] for method_list in class_def.methods.values(): for m in method_list: ml.append(make_method_signature(class_def, m, "method", state)) + format_table(f, ml) if len(class_def.operators) > 0: + f.write(".. rst-class:: classref-reftable-group\n\n") f.write(make_heading("Operators", "-")) + ml = [] for method_list in class_def.operators.values(): for m in method_list: ml.append(make_method_signature(class_def, m, "operator", state)) + format_table(f, ml) - # Theme properties + # Theme properties reference table if len(class_def.theme_items) > 0: + f.write(".. rst-class:: classref-reftable-group\n\n") f.write(make_heading("Theme Properties", "-")) - pl: List[Tuple[Optional[str], ...]] = [] + + ml = [] for theme_item_def in class_def.theme_items.values(): ref = f":ref:`{theme_item_def.name}<class_{class_name}_theme_{theme_item_def.data_name}_{theme_item_def.name}>`" - pl.append((theme_item_def.type_name.to_rst(state), ref, theme_item_def.default_value)) - format_table(f, pl, True) + ml.append((theme_item_def.type_name.to_rst(state), ref, theme_item_def.default_value)) + + format_table(f, ml, True) + + ### DETAILED DESCRIPTIONS ### - # Signals + # Signal descriptions if len(class_def.signals) > 0: + f.write(make_separator(True)) + f.write(".. rst-class:: classref-descriptions-group\n\n") f.write(make_heading("Signals", "-")) + index = 0 for signal in class_def.signals.values(): if index != 0: - f.write("----\n\n") + f.write(make_separator()) + + # Create signal signature and anchor point. f.write(f".. _class_{class_name}_signal_{signal.name}:\n\n") + f.write(".. rst-class:: classref-signal\n\n") + _, signature = make_method_signature(class_def, signal, "", state) - f.write(f"- {signature}\n\n") + f.write(f"{signature}\n\n") + + # Add signal description, or a call to action if it's missing. if signal.description is not None and signal.description.strip() != "": f.write(f"{format_text_block(signal.description.strip(), signal, state)}\n\n") + else: + f.write(".. container:: contribute\n\n\t") + f.write( + translate( + "There is currently no description for this signal. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!" + ) + + "\n\n" + ) index += 1 - # Enums + # Enumeration descriptions if len(class_def.enums) > 0: + f.write(make_separator(True)) + f.write(".. rst-class:: classref-descriptions-group\n\n") f.write(make_heading("Enumerations", "-")) + index = 0 for e in class_def.enums.values(): if index != 0: - f.write("----\n\n") + f.write(make_separator()) + + # Create enumeration signature and anchor point. f.write(f".. _enum_{class_name}_{e.name}:\n\n") - # Sphinx seems to divide the bullet list into individual <ul> tags if we weave the labels into it. - # As such I'll put them all above the list. Won't be perfect but better than making the list visually broken. - # As to why I'm not modifying the reference parser to directly link to the _enum label: - # If somebody gets annoyed enough to fix it, all existing references will magically improve. - for value in e.values.values(): - f.write(f".. _class_{class_name}_constant_{value.name}:\n\n") + f.write(".. rst-class:: classref-enumeration\n\n") if e.is_bitfield: f.write(f"flags **{e.name}**:\n\n") @@ -830,54 +956,86 @@ def make_rst_class(class_def: ClassDef, state: State, dry_run: bool, output_dir: f.write(f"enum **{e.name}**:\n\n") for value in e.values.values(): - f.write(f"- **{value.name}** = **{value.value}**") + # Also create signature and anchor point for each enum constant. + + f.write(f".. _class_{class_name}_constant_{value.name}:\n\n") + f.write(".. rst-class:: classref-enumeration-constant\n\n") + + f.write(f"{e.type_name.to_rst(state)} **{value.name}** = ``{value.value}``\n\n") + + # Add enum constant description. + if value.text is not None and value.text.strip() != "": - # If value.text contains a bullet point list, each entry needs additional indentation - f.write(f" --- {indent_bullets(format_text_block(value.text.strip(), value, state))}") + f.write(f"{format_text_block(value.text.strip(), value, state)}") f.write("\n\n") index += 1 - # Constants + # Constant descriptions if len(class_def.constants) > 0: + f.write(make_separator(True)) + f.write(".. rst-class:: classref-descriptions-group\n\n") f.write(make_heading("Constants", "-")) - # Sphinx seems to divide the bullet list into individual <ul> tags if we weave the labels into it. - # As such I'll put them all above the list. Won't be perfect but better than making the list visually broken. + for constant in class_def.constants.values(): + # Create constant signature and anchor point. + f.write(f".. _class_{class_name}_constant_{constant.name}:\n\n") + f.write(".. rst-class:: classref-constant\n\n") + + f.write(f"**{constant.name}** = ``{constant.value}``\n\n") + + # Add enum constant description. - for constant in class_def.constants.values(): - f.write(f"- **{constant.name}** = **{constant.value}**") if constant.text is not None and constant.text.strip() != "": - f.write(f" --- {format_text_block(constant.text.strip(), constant, state)}") + f.write(f"{format_text_block(constant.text.strip(), constant, state)}") f.write("\n\n") - # Annotations + # Annotation descriptions if len(class_def.annotations) > 0: + f.write(make_separator(True)) f.write(make_heading("Annotations", "-")) + index = 0 for method_list in class_def.annotations.values(): # type: ignore for i, m in enumerate(method_list): if index != 0: - f.write("----\n\n") + f.write(make_separator()) + + # Create annotation signature and anchor point. if i == 0: f.write(f".. _class_{class_name}_annotation_{m.name}:\n\n") + f.write(".. rst-class:: classref-annotation\n\n") + _, signature = make_method_signature(class_def, m, "", state) - f.write(f"- {signature}\n\n") + f.write(f"{signature}\n\n") + + # Add annotation description, or a call to action if it's missing. if m.description is not None and m.description.strip() != "": f.write(f"{format_text_block(m.description.strip(), m, state)}\n\n") + else: + f.write(".. container:: contribute\n\n\t") + f.write( + translate( + "There is currently no description for this annotation. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!" + ) + + "\n\n" + ) index += 1 # Property descriptions if any(not p.overrides for p in class_def.properties.values()) > 0: + f.write(make_separator(True)) + f.write(".. rst-class:: classref-descriptions-group\n\n") f.write(make_heading("Property Descriptions", "-")) + index = 0 for property_def in class_def.properties.values(): @@ -885,113 +1043,199 @@ def make_rst_class(class_def: ClassDef, state: State, dry_run: bool, output_dir: continue if index != 0: - f.write("----\n\n") + f.write(make_separator()) + + # Create property signature and anchor point. f.write(f".. _class_{class_name}_property_{property_def.name}:\n\n") - f.write(f"- {property_def.type_name.to_rst(state)} **{property_def.name}**\n\n") + f.write(".. rst-class:: classref-property\n\n") - info: List[Tuple[Optional[str], ...]] = [] - # Not using translate() for now as it breaks table formatting. + property_default = "" if property_def.default_value is not None: - info.append(("*Default*", property_def.default_value)) + property_default = f" = {property_def.default_value}" + f.write(f"{property_def.type_name.to_rst(state)} **{property_def.name}**{property_default}\n\n") + + # Create property setter and getter records. + + property_setget = "" + if property_def.setter is not None and not property_def.setter.startswith("_"): - info.append(("*Setter*", f"{property_def.setter}(value)")) + property_setter = make_setter_signature(class_def, property_def, state) + property_setget += f"- {property_setter}\n" + if property_def.getter is not None and not property_def.getter.startswith("_"): - info.append(("*Getter*", f"{property_def.getter}()")) + property_getter = make_getter_signature(class_def, property_def, state) + property_setget += f"- {property_getter}\n" + + if property_setget != "": + f.write(".. rst-class:: classref-property-setget\n\n") + f.write(property_setget) + f.write("\n") - if len(info) > 0: - format_table(f, info) + # Add property description, or a call to action if it's missing. if property_def.text is not None and property_def.text.strip() != "": f.write(f"{format_text_block(property_def.text.strip(), property_def, state)}\n\n") + else: + f.write(".. container:: contribute\n\n\t") + f.write( + translate( + "There is currently no description for this property. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!" + ) + + "\n\n" + ) index += 1 # Constructor, Method, Operator descriptions if len(class_def.constructors) > 0: + f.write(make_separator(True)) + f.write(".. rst-class:: classref-descriptions-group\n\n") f.write(make_heading("Constructor Descriptions", "-")) + index = 0 for method_list in class_def.constructors.values(): for i, m in enumerate(method_list): if index != 0: - f.write("----\n\n") + f.write(make_separator()) + + # Create constructor signature and anchor point. if i == 0: f.write(f".. _class_{class_name}_constructor_{m.name}:\n\n") + f.write(".. rst-class:: classref-constructor\n\n") + ret_type, signature = make_method_signature(class_def, m, "", state) - f.write(f"- {ret_type} {signature}\n\n") + f.write(f"{ret_type} {signature}\n\n") + + # Add constructor description, or a call to action if it's missing. if m.description is not None and m.description.strip() != "": f.write(f"{format_text_block(m.description.strip(), m, state)}\n\n") + else: + f.write(".. container:: contribute\n\n\t") + f.write( + translate( + "There is currently no description for this constructor. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!" + ) + + "\n\n" + ) index += 1 if len(class_def.methods) > 0: + f.write(make_separator(True)) + f.write(".. rst-class:: classref-descriptions-group\n\n") f.write(make_heading("Method Descriptions", "-")) + index = 0 for method_list in class_def.methods.values(): for i, m in enumerate(method_list): if index != 0: - f.write("----\n\n") + f.write(make_separator()) + + # Create method signature and anchor point. if i == 0: f.write(f".. _class_{class_name}_method_{m.name}:\n\n") + f.write(".. rst-class:: classref-method\n\n") + ret_type, signature = make_method_signature(class_def, m, "", state) - f.write(f"- {ret_type} {signature}\n\n") + f.write(f"{ret_type} {signature}\n\n") + + # Add method description, or a call to action if it's missing. if m.description is not None and m.description.strip() != "": f.write(f"{format_text_block(m.description.strip(), m, state)}\n\n") + else: + f.write(".. container:: contribute\n\n\t") + f.write( + translate( + "There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!" + ) + + "\n\n" + ) index += 1 if len(class_def.operators) > 0: + f.write(make_separator(True)) + f.write(".. rst-class:: classref-descriptions-group\n\n") f.write(make_heading("Operator Descriptions", "-")) + index = 0 for method_list in class_def.operators.values(): for i, m in enumerate(method_list): if index != 0: - f.write("----\n\n") + f.write(make_separator()) - if i == 0: - f.write( - f".. _class_{class_name}_operator_{sanitize_operator_name(m.name, state)}_{m.return_type.type_name}:\n\n" - ) + # Create operator signature and anchor point. + + operator_anchor = f".. _class_{class_name}_operator_{sanitize_operator_name(m.name, state)}" + for parameter in m.parameters: + operator_anchor += f"_{parameter.type_name.type_name}" + operator_anchor += f":\n\n" + f.write(operator_anchor) + + f.write(".. rst-class:: classref-operator\n\n") ret_type, signature = make_method_signature(class_def, m, "", state) - f.write(f"- {ret_type} {signature}\n\n") + f.write(f"{ret_type} {signature}\n\n") + + # Add operator description, or a call to action if it's missing. if m.description is not None and m.description.strip() != "": f.write(f"{format_text_block(m.description.strip(), m, state)}\n\n") + else: + f.write(".. container:: contribute\n\n\t") + f.write( + translate( + "There is currently no description for this operator. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!" + ) + + "\n\n" + ) index += 1 # Theme property descriptions if len(class_def.theme_items) > 0: + f.write(make_separator(True)) + f.write(".. rst-class:: classref-descriptions-group\n\n") f.write(make_heading("Theme Property Descriptions", "-")) + index = 0 for theme_item_def in class_def.theme_items.values(): if index != 0: - f.write("----\n\n") + f.write(make_separator()) + + # Create theme property signature and anchor point. f.write(f".. _class_{class_name}_theme_{theme_item_def.data_name}_{theme_item_def.name}:\n\n") - f.write(f"- {theme_item_def.type_name.to_rst(state)} **{theme_item_def.name}**\n\n") + f.write(".. rst-class:: classref-themeproperty\n\n") - info = [] + theme_item_default = "" if theme_item_def.default_value is not None: - # Not using translate() for now as it breaks table formatting. - info.append(("*Default*", theme_item_def.default_value)) + theme_item_default = f" = {theme_item_def.default_value}" + f.write(f"{theme_item_def.type_name.to_rst(state)} **{theme_item_def.name}**{theme_item_default}\n\n") - if len(info) > 0: - format_table(f, info) + # Add theme property description, or a call to action if it's missing. if theme_item_def.text is not None and theme_item_def.text.strip() != "": f.write(f"{format_text_block(theme_item_def.text.strip(), theme_item_def, state)}\n\n") + else: + f.write(".. container:: contribute\n\n\t") + f.write( + translate( + "There is currently no description for this theme property. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!" + ) + + "\n\n" + ) index += 1 @@ -1051,7 +1295,10 @@ def make_method_signature( if isinstance(definition, MethodDef) and ref_type != "": if ref_type == "operator": op_name = definition.name.replace("<", "\\<") # So operator "<" gets correctly displayed. - out += f":ref:`{op_name}<class_{class_def.name}_{ref_type}_{sanitize_operator_name(definition.name, state)}_{definition.return_type.type_name}>` " + out += f":ref:`{op_name}<class_{class_def.name}_{ref_type}_{sanitize_operator_name(definition.name, state)}" + for parameter in definition.parameters: + out += f"_{parameter.type_name.type_name}" + out += f">` " else: out += f":ref:`{definition.name}<class_{class_def.name}_{ref_type}_{definition.name}>` " else: @@ -1086,6 +1333,39 @@ def make_method_signature( return ret_type, out +def make_setter_signature(class_def: ClassDef, property_def: PropertyDef, state: State) -> str: + if property_def.setter is None: + return "" + + # If setter is a method available as a method definition, we use that. + if property_def.setter in class_def.methods: + setter = class_def.methods[property_def.setter][0] + # Otherwise we fake it with the information we have available. + else: + setter_params: List[ParameterDef] = [] + setter_params.append(ParameterDef("value", property_def.type_name, None)) + setter = MethodDef(property_def.setter, TypeName("void"), setter_params, None, None) + + ret_type, signature = make_method_signature(class_def, setter, "", state) + return f"{ret_type} {signature}" + + +def make_getter_signature(class_def: ClassDef, property_def: PropertyDef, state: State) -> str: + if property_def.getter is None: + return "" + + # If getter is a method available as a method definition, we use that. + if property_def.getter in class_def.methods: + getter = class_def.methods[property_def.getter][0] + # Otherwise we fake it with the information we have available. + else: + getter_params: List[ParameterDef] = [] + getter = MethodDef(property_def.getter, property_def.type_name, getter_params, None, None) + + ret_type, signature = make_method_signature(class_def, getter, "", state) + return f"{ret_type} {signature}" + + def make_heading(title: str, underline: str, l10n: bool = True) -> str: if l10n: new_title = translate(title) @@ -1117,6 +1397,14 @@ def make_footer() -> str: ) +def make_separator(section_level: bool = False) -> str: + separator_class = "item" + if section_level: + separator_class = "section" + + return f".. rst-class:: classref-{separator_class}-separator\n\n----\n\n" + + def make_link(url: str, title: str) -> str: match = GODOT_DOCS_PATTERN.search(url) if match: @@ -1142,6 +1430,53 @@ def make_link(url: str, title: str) -> str: return f"`{url} <{url}>`__" +def make_rst_index(grouped_classes: Dict[str, List[str]], dry_run: bool, output_dir: str) -> None: + + if dry_run: + f = open(os.devnull, "w", encoding="utf-8") + else: + f = open(os.path.join(output_dir, "index.rst"), "w", encoding="utf-8") + + # Remove the "Edit on Github" button from the online docs page. + f.write(":github_url: hide\n\n") + + # Warn contributors not to edit this file directly. + # Also provide links to the source files for reference. + + git_branch = get_git_branch() + generator_github_url = f"https://github.com/godotengine/godot/tree/{git_branch}/doc/tools/make_rst.py" + + f.write(".. DO NOT EDIT THIS FILE!!!\n") + f.write(".. Generated automatically from Godot engine sources.\n") + f.write(f".. Generator: {generator_github_url}.\n\n") + + f.write(".. _doc_class_reference:\n\n") + + main_title = translate("All classes") + f.write(f"{main_title}\n") + f.write(f"{'=' * len(main_title)}\n\n") + + for group_name in CLASS_GROUPS: + if group_name in grouped_classes: + group_title = translate(CLASS_GROUPS[group_name]) + + f.write(f"{group_title}\n") + f.write(f"{'=' * len(group_title)}\n\n") + + f.write(".. toctree::\n") + f.write(" :maxdepth: 1\n") + f.write(f" :name: toc-class-ref-{group_name}s\n") + f.write("\n") + + if group_name in CLASS_GROUPS_BASE: + f.write(f" class_{CLASS_GROUPS_BASE[group_name].lower()}\n") + + for class_name in grouped_classes[group_name]: + f.write(f" class_{class_name.lower()}\n") + + f.write("\n") + + # Formatting helpers. @@ -1230,10 +1565,10 @@ def format_text_block( escape_post = False # Tag is a reference to a class. - if tag_text in state.classes: + if tag_text in state.classes and not inside_code: if tag_text == state.current_class: - # Don't create a link to the same class, format it as inline code. - tag_text = f"``{tag_text}``" + # Don't create a link to the same class, format it as strong emphasis. + tag_text = f"**{tag_text}**" else: tag_text = make_type(tag_text, state) escape_pre = True @@ -1695,6 +2030,11 @@ def format_table(f: TextIO, data: List[Tuple[Optional[str], ...]], remove_empty_ if len(data) == 0: return + f.write(".. table::\n") + f.write(" :widths: auto\n\n") + + # Calculate the width of each column first, we will use this information + # to properly format RST-style tables. column_sizes = [0] * len(data[0]) for row in data: for i, text in enumerate(row): @@ -1702,14 +2042,21 @@ def format_table(f: TextIO, data: List[Tuple[Optional[str], ...]], remove_empty_ if text_length > column_sizes[i]: column_sizes[i] = text_length + # Each table row is wrapped in two separators, consecutive rows share the same separator. + # All separators, or rather borders, have the same shape and content. We compose it once, + # then reuse it. + sep = "" for size in column_sizes: if size == 0 and remove_empty_columns: continue - sep += "+" + "-" * (size + 2) + sep += "+" + "-" * (size + 2) # Content of each cell is padded by 1 on each side. sep += "+\n" - f.write(sep) + # Draw the first separator. + f.write(f" {sep}") + + # Draw each row and close it with a separator. for row in data: row_text = "|" for i, text in enumerate(row): @@ -1717,8 +2064,10 @@ def format_table(f: TextIO, data: List[Tuple[Optional[str], ...]], remove_empty_ continue row_text += f' {(text or "").ljust(column_sizes[i])} |' row_text += "\n" - f.write(row_text) - f.write(sep) + + f.write(f" {row_text}") + f.write(f" {sep}") + f.write("\n") @@ -1780,24 +2129,5 @@ def sanitize_operator_name(dirty_name: str, state: State) -> str: return clear_name -def indent_bullets(text: str) -> str: - # Take the text and check each line for a bullet point represented by "-". - # Where found, indent the given line by a further "\t". - # Used to properly indent bullet points contained in the description for enum values. - # Ignore the first line - text will be prepended to it so bullet points wouldn't work anyway. - bullet_points = "-" - - lines = text.splitlines(keepends=True) - for line_index, line in enumerate(lines[1:], start=1): - pos = 0 - while pos < len(line) and line[pos] == "\t": - pos += 1 - - if pos < len(line) and line[pos] in bullet_points: - lines[line_index] = f"{line[:pos]}\t{line[pos:]}" - - return "".join(lines) - - if __name__ == "__main__": main() 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 "" |