diff options
Diffstat (limited to 'doc/translations/zh_CN.po')
-rw-r--r-- | doc/translations/zh_CN.po | 8711 |
1 files changed, 5022 insertions, 3689 deletions
diff --git a/doc/translations/zh_CN.po b/doc/translations/zh_CN.po index 9d8db6ea96..8ecab23167 100644 --- a/doc/translations/zh_CN.po +++ b/doc/translations/zh_CN.po @@ -61,8 +61,8 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2021-11-03 13:15+0000\n" -"Last-Translator: suplife <2634557184@qq.com>\n" +"PO-Revision-Date: 2021-11-19 08:44+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" "Language: zh_CN\n" @@ -70,7 +70,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.9-dev\n" +"X-Generator: Weblate 4.9.1-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -348,7 +348,7 @@ msgid "" "[/codeblock]\n" "This is the inverse of [method ord]." msgstr "" -"返回一个作为字符串的字符,该字符为给定Unicode代码点(与ASCII码兼容)。\n" +"返回一个作为字符串的字符,该字符为给定Unicode编码(与ASCII码兼容)。\n" "[codeblock]\n" "a = char(65) # a is \"A\"\n" "a = char(65 + 32) # a is \"a\"\n" @@ -366,7 +366,7 @@ msgid "" "a = clamp(15, 1, 20) # a is 15\n" "[/codeblock]" msgstr "" -"钳制 [code]value[/code],返回一个不小于 [code]min[/code] 且不大于 [code]max[/" +"限制 [code]value[/code],返回一个不小于 [code]min[/code] 且不大于 [code]max[/" "code]的值。\n" "[codeblock]\n" "a = clamp(1000, 1, 20) # a = 20\n" @@ -4072,7 +4072,7 @@ msgstr "将属性序列化并保存到场景文件中(默认)。" #: doc/classes/@GlobalScope.xml:1436 msgid "The property is shown in the editor inspector (default)." -msgstr "将属性展示在编辑器的属性检查器面板中(默认)。" +msgstr "将属性展示在编辑器的检查器面板中(默认)。" #: doc/classes/@GlobalScope.xml:1439 doc/classes/@GlobalScope.xml:1442 msgid "Deprecated usage flag, unused." @@ -4080,7 +4080,7 @@ msgstr "废弃使用的标志,未使用。" #: doc/classes/@GlobalScope.xml:1445 msgid "The property can be checked in the editor inspector." -msgstr "该属性可以在编辑器的属性检查器中被勾选。" +msgstr "该属性可以在编辑器的检查器中被勾选。" #: doc/classes/@GlobalScope.xml:1448 msgid "The property is checked in the editor inspector." @@ -4391,19 +4391,21 @@ msgstr "" #: doc/classes/Transform2D.xml:11 doc/classes/Vector2.xml:11 #: doc/classes/Vector3.xml:11 msgid "https://docs.godotengine.org/en/3.4/tutorials/math/index.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/math/index.html" +msgstr "https://docs.godotengine.org/zh_CN/stable/tutorials/math/index.html" #: doc/classes/AABB.xml:13 doc/classes/Rect2.xml:13 doc/classes/Vector2.xml:12 #: doc/classes/Vector3.xml:12 msgid "https://docs.godotengine.org/en/3.4/tutorials/math/vector_math.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/math/vector_math.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/math/vector_math.html" #: doc/classes/AABB.xml:14 doc/classes/Rect2.xml:14 doc/classes/Vector2.xml:13 #: doc/classes/Vector3.xml:13 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/math/vectors_advanced.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/math/vectors_advanced.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/math/vectors_advanced." +"html" #: doc/classes/AABB.xml:22 msgid "Constructs an [AABB] from a position and size." @@ -4421,86 +4423,95 @@ msgid "" msgstr "该 [AABB] 完全包含另一个时,返回 [code]true[/code]。" #: doc/classes/AABB.xml:42 -msgid "Returns this [AABB] expanded to include a given point." -msgstr "返回被扩展至包含指定点的该 [AABB]。" +msgid "" +"Returns a copy of this [AABB] expanded to include a given point.\n" +"[b]Example:[/b]\n" +"[codeblock]\n" +"# position (-3, 2, 0), size (1, 1, 1)\n" +"var box = AABB(Vector3(-3, 2, 0), Vector3(1, 1, 1))\n" +"# position (-3, -1, 0), size (3, 4, 2), so we fit both the original AABB and " +"Vector3(0, -1, 2)\n" +"var box2 = box.expand(Vector3(0, -1, 2))\n" +"[/codeblock]" +msgstr "" -#: doc/classes/AABB.xml:48 +#: doc/classes/AABB.xml:55 msgid "Returns the volume of the [AABB]." msgstr "返回该 [AABB] 的体积。" -#: doc/classes/AABB.xml:55 +#: doc/classes/AABB.xml:62 msgid "Gets the position of the 8 endpoints of the [AABB] in space." msgstr "获取该 [AABB] 的 8 个端点的位置。" -#: doc/classes/AABB.xml:61 +#: doc/classes/AABB.xml:68 msgid "Returns the normalized longest axis of the [AABB]." msgstr "返回该 [AABB] 归一化后的最长轴。" -#: doc/classes/AABB.xml:67 +#: doc/classes/AABB.xml:74 msgid "" "Returns the index of the longest axis of the [AABB] (according to " "[Vector3]'s [code]AXIS_*[/code] constants)." msgstr "" "返回该 [AABB] 最长轴的索引(根据 [Vector3] 的 [code]AXIS_*[/code] 常量)。" -#: doc/classes/AABB.xml:73 +#: doc/classes/AABB.xml:80 msgid "Returns the scalar length of the longest axis of the [AABB]." msgstr "返回该 [AABB] 最长轴的标量长度。" -#: doc/classes/AABB.xml:79 +#: doc/classes/AABB.xml:86 msgid "Returns the normalized shortest axis of the [AABB]." msgstr "返回该 [AABB] 归一化后的最短轴。" -#: doc/classes/AABB.xml:85 +#: doc/classes/AABB.xml:92 msgid "" "Returns the index of the shortest axis of the [AABB] (according to " "[Vector3]::AXIS* enum)." msgstr "" "返回该 [AABB] 最短轴的索引(根据 [Vector3] 的 [code]AXIS_*[/code] 常量)。" -#: doc/classes/AABB.xml:91 +#: doc/classes/AABB.xml:98 msgid "Returns the scalar length of the shortest axis of the [AABB]." msgstr "返回该 [AABB] 最短轴的标量长度。" -#: doc/classes/AABB.xml:98 +#: doc/classes/AABB.xml:105 msgid "" "Returns the support point in a given direction. This is useful for collision " "detection algorithms." msgstr "返回指定方向上的支持点。常用于碰撞检测算法。" -#: doc/classes/AABB.xml:105 +#: doc/classes/AABB.xml:112 msgid "" "Returns a copy of the [AABB] grown a given amount of units towards all the " "sides." msgstr "返回该 [AABB] 的副本,沿着所有面的方向都增加了指定的大小。" -#: doc/classes/AABB.xml:111 +#: doc/classes/AABB.xml:118 msgid "Returns [code]true[/code] if the [AABB] is flat or empty." msgstr "该 [AABB] 为平面或者为空时,返回 [code]true[/code]。" -#: doc/classes/AABB.xml:117 +#: doc/classes/AABB.xml:124 msgid "Returns [code]true[/code] if the [AABB] is empty." msgstr "该 [AABB] 为空时,返回 [code]true[/code]。" -#: doc/classes/AABB.xml:124 +#: doc/classes/AABB.xml:131 msgid "Returns [code]true[/code] if the [AABB] contains a point." msgstr "该 [AABB] 包含指定点时,返回 [code]true[/code]。" -#: doc/classes/AABB.xml:131 +#: doc/classes/AABB.xml:138 msgid "" "Returns the intersection between two [AABB]. An empty AABB (size 0,0,0) is " "returned on failure." msgstr "返回两个 [AABB] 的交叠区域。失败时返回空的 AABB(大小为 0,0,0)。" -#: doc/classes/AABB.xml:138 +#: doc/classes/AABB.xml:145 msgid "Returns [code]true[/code] if the [AABB] overlaps with another." msgstr "该 [AABB] 与另一个交叠时,返回 [code]true[/code]。" -#: doc/classes/AABB.xml:145 +#: doc/classes/AABB.xml:152 msgid "Returns [code]true[/code] if the [AABB] is on both sides of a plane." msgstr "该 [AABB] 同时位于指定平面的两边时,返回 [code]true[/code]。" -#: doc/classes/AABB.xml:153 +#: doc/classes/AABB.xml:160 msgid "" "Returns [code]true[/code] if the [AABB] intersects the line segment between " "[code]from[/code] and [code]to[/code]." @@ -4508,7 +4519,7 @@ msgstr "" "该 [AABB] 与 [code]from[/code] 和 [code]to[/code] 所构成的线段有交叠时,返回 " "[code]true[/code]。" -#: doc/classes/AABB.xml:160 +#: doc/classes/AABB.xml:167 msgid "" "Returns [code]true[/code] if this [AABB] and [code]aabb[/code] are " "approximately equal, by calling [method @GDScript.is_equal_approx] on each " @@ -4517,23 +4528,23 @@ msgstr "" "该 [AABB] 与 [code]aabb[/code] 近似相等时,返回 [code]true[/code]。通过将各个" "分量调用 [method @GDScript.is_equal_approx] 确定。" -#: doc/classes/AABB.xml:167 +#: doc/classes/AABB.xml:174 msgid "" "Returns a larger [AABB] that contains both this [AABB] and [code]with[/code]." msgstr "返回同时包含该 [AABB] 和 [code]with[/code] 的更大的 [AABB]。" -#: doc/classes/AABB.xml:173 doc/classes/Rect2.xml:132 +#: doc/classes/AABB.xml:180 doc/classes/Rect2.xml:140 msgid "" "Ending corner. This is calculated as [code]position + size[/code]. Setting " "this value will change the size." msgstr "" "终点角。通过 [code]position + size[/code] 计算而来。设置该值会修改大小。" -#: doc/classes/AABB.xml:176 doc/classes/Rect2.xml:135 +#: doc/classes/AABB.xml:183 doc/classes/Rect2.xml:143 msgid "Beginning corner. Typically has values lower than [member end]." msgstr "起点角。通常比 [member end] 小。" -#: doc/classes/AABB.xml:179 doc/classes/Rect2.xml:138 +#: doc/classes/AABB.xml:186 doc/classes/Rect2.xml:146 msgid "" "Size from [member position] to [member end]. Typically, all components are " "positive.\n" @@ -4658,7 +4669,7 @@ msgstr "接受对话框时,即按下OK按钮时发出。" #: doc/classes/AcceptDialog.xml:82 msgid "Emitted when a custom button is pressed. See [method add_button]." -msgstr "按下自定义按钮时发出。 参阅[方法add_button]。" +msgstr "按下自定义按钮时发出。 参阅[method add_button]。" #: doc/classes/AESContext.xml:4 msgid "Interface to low level AES encryption features." @@ -4820,7 +4831,8 @@ msgstr "" msgid "" "https://docs.godotengine.org/en/3.4/tutorials/2d/2d_sprite_animation.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/2d/2d_sprite_animation.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/2d/2d_sprite_animation." +"html" #: doc/classes/AnimatedSprite.xml:12 doc/classes/Area2D.xml:11 #: doc/classes/AudioStreamPlayer.xml:12 doc/classes/Button.xml:24 @@ -5109,7 +5121,8 @@ msgstr "" #: doc/classes/Animation.xml:20 doc/classes/AnimationPlayer.xml:12 msgid "https://docs.godotengine.org/en/3.4/tutorials/animation/index.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/animation/index.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/animation/index.html" #: doc/classes/Animation.xml:28 msgid "Adds a track to the Animation." @@ -5147,9 +5160,9 @@ msgid "" "End offset is the number of seconds cut off at the ending of the audio " "stream." msgstr "" -"返回由[code] key_idx [/code]标识的键的结束偏移量。 [code] track_idx [/code]必" -"须是音轨的索引。\n" -"结束偏移是音频流结束时截断的秒数。" +"返回由 [code]key_idx[/code] 标识的键的结束偏移量。[code]track_idx[/code] 必须" +"是音频轨道的索引。\n" +"结束偏移是音频流末尾截断的秒数。" #: doc/classes/Animation.xml:71 msgid "" @@ -5158,17 +5171,17 @@ msgid "" "Start offset is the number of seconds cut off at the beginning of the audio " "stream." msgstr "" -"返回由[code] key_idx [/code]标识的键的起始偏移量。 [code] track_idx [/code]必" -"须是音轨的索引。\n" -"起始偏移量是音频流开始处截断的秒数。" +"返回由 [code]key_idx[/code] 标识的键的起始偏移量。[code]track_idx[/code] 必须" +"是音频轨道的索引。\n" +"起始偏移量是音频流开头截断的秒数。" #: doc/classes/Animation.xml:80 msgid "" "Returns the audio stream of the key identified by [code]key_idx[/code]. The " "[code]track_idx[/code] must be the index of an Audio Track." msgstr "" -"返回由[code] key_idx [/code]标识的键的音频流。 [code] track_idx [/code]必须是" -"音轨的索引。" +"返回由 [code]key_idx[/code] 标识的键的音频流。[code]track_idx[/code] 必须是音" +"频轨道的索引。" #: doc/classes/Animation.xml:91 msgid "" @@ -5178,10 +5191,10 @@ msgid "" "[code]start_offset[/code] is the number of seconds cut off at the beginning " "of the audio stream, while [code]end_offset[/code] is at the ending." msgstr "" -"在给定的[code]时间[/code](以秒为单位)中插入音轨音调。 [code] track_idx [/" -"code]必须是音轨的索引。\n" -"[code] stream [/code]是要播放的[AudioStream]资源。 [code] start_offset [/" -"code]是在音频流的开头截断的秒数,而[code] end_offset [/code]在结尾。" +"在 [code]time[/code] 秒处插入音频轨道关键帧。[code] track_idx [/code] 必须是" +"音频轨道的索引。\n" +"[code]stream[/code] 是要播放的 [AudioStream] 资源。[code]start_offset[/code] " +"是在音频流的开头截断的秒数,而 [code]end_offset[/code] 则是在结尾的截断。" #: doc/classes/Animation.xml:101 msgid "" @@ -5189,8 +5202,8 @@ msgid "" "[code]offset[/code]. The [code]track_idx[/code] must be the index of an " "Audio Track." msgstr "" -"将由 [code]key_idx[/code] 标识的键的结束偏移设置为值 [code]offset[/code]. " -"[code]track_idx[/code] 必须是音轨的索引." +"将由 [code]key_idx[/code] 标识的关键帧的结束偏移设置为值 [code]offset[/" +"code]。参数 [code]track_idx[/code] 必须是音频轨道的索引。" #: doc/classes/Animation.xml:110 msgid "" @@ -5198,8 +5211,8 @@ msgid "" "[code]offset[/code]. The [code]track_idx[/code] must be the index of an " "Audio Track." msgstr "" -"将由 [code]key_idx[/code] 确定的键的起始偏移量设置为 [code]offset[/code]. " -"[code]track_idx[/code] 必须是音频轨道的索引." +"将由 [code]key_idx[/code] 确定的关键帧的起始偏移量设置为 [code]offset[/" +"code]。参数 [code]track_idx[/code] 必须是音频轨道的索引。" #: doc/classes/Animation.xml:119 msgid "" @@ -5270,8 +5283,8 @@ msgid "" "[code]out_handle[/code]. The [code]track_idx[/code] must be the index of a " "Bezier Track." msgstr "" -"将由 [code]key_idx[/code] 确定的键的输出柄设置为 [code]out_handle[/code] 。" -"[code]track_idx[/code] 必须是 Bezier轨道的索引。" +"将由 [code]key_idx[/code] 确定的关键帧的输出柄设置为 [code]out_handle[/" +"code] 。参数 [code]track_idx[/code] 必须是贝塞尔曲线轨道的索引。" #: doc/classes/Animation.xml:190 msgid "" @@ -5351,7 +5364,8 @@ msgstr "返回钥匙所在的时间。" msgid "" "Returns the transition curve (easing) for a specific key (see the built-in " "math function [method @GDScript.ease])." -msgstr "返回特定键的过渡曲线(缓动)(参阅内置数学函数[方法@GDScript.ease])。" +msgstr "" +"返回特定键的过渡曲线(缓动)(参阅内置数学函数[method @GDScript.ease])。" #: doc/classes/Animation.xml:303 msgid "Returns the value of a given key in a given track." @@ -5361,7 +5375,8 @@ msgstr "返回给定轨道中给定键的值。" msgid "" "Gets the path of a track. For more information on the path format, see " "[method track_set_path]." -msgstr "获取轨迹的路径。有关路径格式的详细信息,请参阅[方法 track_set_path]。" +msgstr "" +"获取轨迹的路径。有关路径格式的详细信息,请参阅[method track_set_path]。" #: doc/classes/Animation.xml:317 msgid "Gets the type of a track." @@ -5432,7 +5447,8 @@ msgstr "设置现有键的时间。" msgid "" "Sets the transition curve (easing) for a specific key (see the built-in math " "function [method @GDScript.ease])." -msgstr "设置特定键的过渡曲线(缓动)(参阅内置数学函数[方法@GDScript.ease])。" +msgstr "" +"设置特定键的过渡曲线(缓动)(参阅内置数学函数[method @GDScript.ease])。" #: doc/classes/Animation.xml:438 msgid "Sets the value of an existing key." @@ -5548,7 +5564,7 @@ msgid "" "value of a [Color])." msgstr "" "Bezier轨迹用于使用自定义曲线对数值进行插值。它们也可以用来对向量和颜色的子属" -"性进行动画处理(例如[颜色]的alpha值)。" +"性进行动画处理(例如[Color]的alpha值)。" #: doc/classes/Animation.xml:543 msgid "" @@ -5556,12 +5572,12 @@ msgid "" "[AudioStreamPlayer]. The stream can be trimmed and previewed in the " "animation." msgstr "" -"音轨是用来播放音频流的任何一种类型的[AudioStreamPlayer]。该流可以在动画中进行" -"修剪和预览。" +"音频轨道可以用来通过任意类型的 [AudioStreamPlayer] 播放音频流。该流可以在动画" +"中进行修剪和预览。" #: doc/classes/Animation.xml:546 msgid "Animation tracks play animations in other [AnimationPlayer] nodes." -msgstr "动画曲目在其他 [动画播放器] 节点中播放动画。" +msgstr "动画曲目在其他 [AnimationPlayer] 节点中播放动画。" #: doc/classes/Animation.xml:549 msgid "No interpolation (nearest value)." @@ -5631,7 +5647,8 @@ msgstr "" msgid "" "https://docs.godotengine.org/en/3.4/tutorials/animation/animation_tree.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/animation/animation_tree.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/animation/animation_tree." +"html" #: doc/classes/AnimationNode.xml:18 msgid "" @@ -5863,7 +5880,7 @@ msgstr "" #: doc/classes/AnimationPlayer.xml:14 doc/classes/AnimationTree.xml:12 #: doc/classes/AudioEffectReverb.xml:11 doc/classes/Camera.xml:10 #: doc/classes/CollisionShape.xml:13 doc/classes/CylinderShape.xml:10 -#: doc/classes/Environment.xml:19 doc/classes/GIProbe.xml:14 +#: doc/classes/Environment.xml:19 doc/classes/GIProbe.xml:16 #: doc/classes/GIProbeData.xml:8 doc/classes/KinematicBody.xml:16 #: doc/classes/Light.xml:11 doc/classes/Material.xml:11 doc/classes/Mesh.xml:13 #: doc/classes/MeshInstance.xml:13 doc/classes/Particles.xml:14 @@ -6482,7 +6499,7 @@ msgid "" "[/codeblock]" msgstr "" "设置此条件,开启自动前进。提供的名称将成为[AnimationTree]上的一个布尔参数,可" -"以通过代码控制,参阅[url=https://docs.godotengine.org/en/3.4/tutorials/" +"以通过代码控制,参阅[url=https://docs.godotengine.org/zh_CN/stable/tutorials/" "animation/animation_tree.html#controlling-from-code][/url]。例如,如果" "[member AnimationTree.tree_root]是一个[AnimationNodeStateMachine],[member " "advance_condition]被设置为[code]\"idle\"[/code]。\n" @@ -6636,8 +6653,8 @@ msgid "" "a [Tween] node, but it requires doing everything by code.\n" "Updating the target properties of animations occurs at process time." msgstr "" -"动画播放器用于[动画]资源的通用播放。它包含一个动画字典(以名称为参考)和自定" -"义动画转换之间的混合时间。此外,动画可以在不同的通道中播放和混合。\n" +"动画播放器用于[Animation]资源的通用播放。它包含一个动画字典(以名称为参考)和" +"自定义动画转换之间的混合时间。此外,动画可以在不同的通道中播放和混合。\n" "AnimationPlayer]比[Tween]更适合用于事先知道最终值的动画。例如,由于编辑器提供" "的动画工具,用[AnimationPlayer]节点更容易完成屏幕的淡入淡出。这个特殊的例子也" "可以用[Tween]节点来实现,但这需要通过代码来完成一切。\n" @@ -6862,7 +6879,7 @@ msgstr "当前播放的动画的位置(以秒为单位)。" #: doc/classes/AnimationPlayer.xml:200 msgid "The call mode to use for Call Method tracks." -msgstr "用于“呼叫方法”轨道的呼叫模式。" +msgstr "方法调用轨道所使用的调用模式。" #: doc/classes/AnimationPlayer.xml:203 msgid "" @@ -7522,7 +7539,6 @@ msgid "https://godotengine.org/asset-library/asset/127" msgstr "https://godotengine.org/asset-library/asset/127" #: doc/classes/Area.xml:17 -#, fuzzy msgid "" "Returns a list of intersecting [Area]s. The overlapping area's [member " "CollisionObject.collision_layer] must be part of this area's [member " @@ -7531,12 +7547,13 @@ msgid "" "list is modified once during the physics step, not immediately after objects " "are moved. Consider using signals instead." msgstr "" -"返回一个相交的[PhysicsBody]的列表。由于性能的原因(碰撞都是在同一时间处理" -"的),这个列表在物理步骤中被修改一次,而不是在物体被移动后立即修改。可以考虑" -"使用信号来代替。" +"返回相交的[Area]的列表。重叠区域的[member CollisionObject.collision_layer]必" +"须是这个区域[member CollisionObject.collision_mask]的一部分,这样才能被检测" +"到。\n" +"出于性能的考虑,因碰撞都是同时处理的,这个列表在物理步骤中只修改一次,而不是" +"在物体被移动后立即修改。考虑使用信号来代替。" #: doc/classes/Area.xml:24 -#, fuzzy msgid "" "Returns a list of intersecting [PhysicsBody]s. The overlapping body's " "[member CollisionObject.collision_layer] must be part of this area's [member " @@ -7545,9 +7562,11 @@ msgid "" "list is modified once during the physics step, not immediately after objects " "are moved. Consider using signals instead." msgstr "" -"返回一个相交的[PhysicsBody]的列表。由于性能的原因(碰撞都是在同一时间处理" -"的),这个列表在物理步骤中被修改一次,而不是在物体被移动后立即修改。可以考虑" -"使用信号来代替。" +"返回相交的[PhysicsBody]的列表。重叠物体的[member CollisionObject." +"collision_layer]必须是这个区域[member CollisionObject.collision_mask]的一部" +"分,这样才能被检测到。\n" +"出于性能的考虑,因碰撞都是同时处理的,这个列表在物理步骤中只修改一次,而不是" +"在物体被移动后立即修改。考虑使用信号来代替。" #: doc/classes/Area.xml:32 msgid "" @@ -7835,7 +7854,8 @@ msgstr "" msgid "" "https://docs.godotengine.org/en/3.4/tutorials/physics/using_area_2d.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/physics/using_area_2d.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/physics/using_area_2d." +"html" #: doc/classes/Area2D.xml:12 doc/classes/CollisionShape2D.xml:12 #: doc/classes/RectangleShape2D.xml:10 @@ -7849,7 +7869,6 @@ msgid "https://godotengine.org/asset-library/asset/120" msgstr "https://godotengine.org/asset-library/asset/120" #: doc/classes/Area2D.xml:19 -#, fuzzy msgid "" "Returns a list of intersecting [Area2D]s. The overlapping area's [member " "CollisionObject2D.collision_layer] must be part of this area's [member " @@ -7858,11 +7877,13 @@ msgid "" "list is modified once during the physics step, not immediately after objects " "are moved. Consider using signals instead." msgstr "" -"返回相交的 [Area2D] 的列表。由于性能原因(碰撞都是同时处理的),该列表不会在" -"对象移动后立即更新,只会在物理更新时进行统一修改。可以考虑改用信号。" +"返回相交的[Area2D]的列表。重叠区域的[member CollisionObject2D." +"collision_layer]必须是这个区域[member CollisionObject2D.collision_mask]的一部" +"分,这样才能被检测到。\n" +"出于性能的考虑,因碰撞都是同时处理的,这个列表在物理步骤中只修改一次,而不是" +"在物体被移动后立即修改。考虑使用信号来代替。" #: doc/classes/Area2D.xml:26 -#, fuzzy msgid "" "Returns a list of intersecting [PhysicsBody2D]s. The overlapping body's " "[member CollisionObject2D.collision_layer] must be part of this area's " @@ -7871,8 +7892,11 @@ msgid "" "list is modified once during the physics step, not immediately after objects " "are moved. Consider using signals instead." msgstr "" -"返回相交的 [PhysicsBody2D] 的列表。由于性能原因(碰撞都是同时处理的),该列表" -"不会在对象移动后立即更新,只会在物理更新时进行统一修改。可以考虑改用信号。" +"返回相交的[PhysicsBody2D]的列表。重叠物体的[member CollisionObject2D." +"collision_layer]必须是这个区域[member CollisionObject2D.collision_mask]的一部" +"分,这样才能被检测到。\n" +"出于性能的考虑,因碰撞都是同时处理的,这个列表在物理步骤中只修改一次,而不是" +"在物体被移动后立即修改。考虑使用信号来代替。" #: doc/classes/Area2D.xml:34 msgid "" @@ -8706,8 +8730,8 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/content/procedural_geometry/" "arraymesh.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/content/procedural_geometry/" -"arraymesh.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/content/" +"procedural_geometry/arraymesh.html" #: doc/classes/ArrayMesh.xml:36 msgid "" @@ -9072,7 +9096,7 @@ msgstr "" #: doc/classes/ARVRInterface.xml:11 doc/classes/ARVROrigin.xml:13 #: doc/classes/ARVRPositionalTracker.xml:12 doc/classes/ARVRServer.xml:10 msgid "https://docs.godotengine.org/en/3.4/tutorials/vr/index.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/vr/index.html" +msgstr "https://docs.godotengine.org/zh_CN/stable/tutorials/vr/index.html" #: doc/classes/ARVRController.xml:4 msgid "A spatial node representing a spatially-tracked controller." @@ -9906,9 +9930,9 @@ msgid "" "[code]1.0[/code], then this equals the sum of Euclidean distances of all " "segments in the path." msgstr "" -"A*即A 星是一种计算机算法,广泛用于寻路和图遍历,通过一组给定的边或线段,在顶" -"点或点之间绘制短路径的过程。由于其性能和准确性,而被广泛使用。 Godot 的 A* 实" -"现默认使用三维空间中的点和欧式距离。\n" +"A*(A 星)是一种计算机算法,广泛用于寻路和图遍历,是通过一组给定的边(线" +"段),在顶点(点)之间绘制短路径的过程。A* 因其性能和准确性而被广泛使用。" +"Godot 的 A* 实现默认使用三维空间中的点和欧式距离。\n" "您需要使用 [method add_point] 手动添加点,并使用 [method connect_points] 手动" "创建线段。然后,可以使用 [method are_points_connected] 函数测试两点之间是否存" "在路径,通过 [method get_id_path] 获取包含索引的路径,或使用 [method " @@ -9933,8 +9957,8 @@ msgstr "" "的信息。\n" "如果使用默认的 [method _estimate_cost] 和 [method _compute_cost] 方法,或者如" "果提供的 [method _estimate_cost] 方法返回成本的下限,则 A* 返回的路径将是成本" -"最低的路径。这里,路径的代价等于路径中所有段的[method_compute_cost]结果之和乘" -"以各个段端点的[code]weight_scale[/code]权重。如果使用默认方法并且所有点的 " +"最低的路径。这里,路径的代价等于路径中所有段的[method _compute_cost]结果之和" +"乘以各个段端点的[code]weight_scale[/code]权重。如果使用默认方法并且所有点的 " "[code]weight_scale[/code] 设置为 [code]1.0[/code],则这等于路径中所有段的欧式" "距离之和。" @@ -10484,7 +10508,7 @@ msgid "" "(\"w\" and \"h\" in the editor) resizes the texture so it fits within the " "margin." msgstr "" -"区域周围的边距。Rect2]的[member Rect2.size]参数(编辑器中的 \"w \"和 \"h\")" +"区域周围的边距。[Rect2]的[member Rect2.size]参数(编辑器中的 \"w \"和 \"h\")" "调整纹理的大小,使其适合于边距。" #: doc/classes/AtlasTexture.xml:27 @@ -10860,7 +10884,8 @@ msgstr "" #: doc/classes/AudioEffectHighShelfFilter.xml:9 #: doc/classes/AudioEffectLowShelfFilter.xml:9 doc/classes/AudioServer.xml:10 msgid "https://docs.godotengine.org/en/3.4/tutorials/audio/audio_buses.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/audio/audio_buses.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/audio/audio_buses.html" #: doc/classes/AudioEffectDistortion.xml:18 msgid "Distortion power. Value can range from 0 to 1." @@ -11344,7 +11369,7 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/audio/" "recording_with_microphone.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/audio/" +"https://docs.godotengine.org/zh_CN/stable/tutorials/audio/" "recording_with_microphone.html" #: doc/classes/AudioEffectRecord.xml:17 @@ -11755,7 +11780,8 @@ msgstr "" #: doc/classes/AudioStreamPlayer2D.xml:12 #: doc/classes/AudioStreamPlayer3D.xml:13 msgid "https://docs.godotengine.org/en/3.4/tutorials/audio/audio_streams.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/audio/audio_streams.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/audio/audio_streams.html" #: doc/classes/AudioStream.xml:11 doc/classes/AudioStreamGenerator.xml:12 #: doc/classes/AudioStreamGeneratorPlayback.xml:10 @@ -12479,11 +12505,16 @@ msgid "Prerendered indirect light map for a scene." msgstr "场景的预渲染间接光照贴图。" #: doc/classes/BakedLightmap.xml:7 +#, fuzzy msgid "" "Baked lightmaps are an alternative workflow for adding indirect (or baked) " "lighting to a scene. Unlike the [GIProbe] approach, baked lightmaps work " "fine on low-end PCs and mobile devices as they consume almost no resources " "in run-time.\n" +"[b]Procedural generation:[/b] Lightmap baking functionality is only " +"available in the editor. This means [BakedLightmap] is not suited to " +"procedurally generated or user-built levels. For procedurally generated or " +"user-built levels, use [GIProbe] instead.\n" "[b]Note:[/b] Due to how lightmaps work, most properties only have a visible " "effect once lightmaps are baked again." msgstr "" @@ -12493,12 +12524,12 @@ msgstr "" "[b]注意:[/b] 由于光照贴图的工作原理,大多数属性只有在光照贴图再次烘焙后才会" "看到效果。" -#: doc/classes/BakedLightmap.xml:11 +#: doc/classes/BakedLightmap.xml:12 msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/baked_lightmaps.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/3d/baked_lightmaps.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/3d/baked_lightmaps.html" -#: doc/classes/BakedLightmap.xml:19 -#, fuzzy +#: doc/classes/BakedLightmap.xml:20 msgid "" "Bakes the lightmap, scanning from the given [code]from_node[/code] root and " "saves the resulting [BakedLightmapData] in [code]data_save_path[/code]. If " @@ -12506,29 +12537,30 @@ msgid "" "If no save path is provided it will try to match the path from the current " "[member light_data]." msgstr "" -"烘焙光照贴图,从给定的 [code]from_node[/code] 根扫描并将结果 " -"[BakedLightmapData] 保存在 [code]data_save_path[/code] 中。如果没有提供保存路" -"径,它将尝试匹配来自当前 [member light_data] 的路径。" +"烘焙光照贴图,从给定的[code]from_node[/code]根节点扫描,并将产生的" +"[BakedLightmapData]保存在[code]data_save_path[/code]中。如果没有提供根节点," +"此节点的父节点将作为根节点。如果没有提供保存路径,将尝试匹配当前[member " +"light_data]的路径。" -#: doc/classes/BakedLightmap.xml:25 +#: doc/classes/BakedLightmap.xml:26 msgid "" "When enabled, the lightmapper will merge the textures for all meshes into a " "single large layered texture. Not supported in GLES2." msgstr "" "启用后,光照贴图会将所有网格的纹理合并为一个大的分层纹理。 GLES2 不支持。" -#: doc/classes/BakedLightmap.xml:28 +#: doc/classes/BakedLightmap.xml:29 msgid "" "Maximum size of each lightmap layer, only used when [member atlas_generate] " "is enabled." msgstr "每个光照贴图层的最大尺寸,仅在启用 [member atlas_generate] 时使用。" -#: doc/classes/BakedLightmap.xml:31 +#: doc/classes/BakedLightmap.xml:32 msgid "" "Raycasting bias used during baking to avoid floating point precision issues." msgstr "在烘焙过程中使用光线投射偏置来避免浮点数精度问题。" -#: doc/classes/BakedLightmap.xml:34 +#: doc/classes/BakedLightmap.xml:35 msgid "" "The energy multiplier for each bounce. Higher values will make indirect " "lighting brighter. A value of [code]1.0[/code] represents physically " @@ -12549,17 +12581,17 @@ msgstr "" "[b]注意:[/b] [member bounce_indirect_energy] 仅在[member bounces] 设置为大于" "或等于[code]1[/code]的值时有效。" -#: doc/classes/BakedLightmap.xml:38 +#: doc/classes/BakedLightmap.xml:39 msgid "" "Number of light bounces that are taken into account during baking. See also " "[member bounce_indirect_energy]." msgstr "烘焙过程中考虑的光线反射次数。参阅 [member bounce_indirect_energy]。" -#: doc/classes/BakedLightmap.xml:41 +#: doc/classes/BakedLightmap.xml:42 msgid "Grid size used for real-time capture information on dynamic objects." msgstr "用于实时捕获动态对象信息的网格大小。" -#: doc/classes/BakedLightmap.xml:44 +#: doc/classes/BakedLightmap.xml:45 msgid "" "When enabled, an octree containing the scene's lighting information will be " "computed. This octree will then be used to light dynamic objects in the " @@ -12568,16 +12600,16 @@ msgstr "" "启用后,将计算包含场景照明信息的八叉树。然后此八叉树将用于照亮场景中的动态对" "象。" -#: doc/classes/BakedLightmap.xml:47 +#: doc/classes/BakedLightmap.xml:48 msgid "" "Bias value to reduce the amount of light proagation in the captured octree." msgstr "偏置值,用于减少捕获的八叉树中的光传播量。" -#: doc/classes/BakedLightmap.xml:50 +#: doc/classes/BakedLightmap.xml:51 msgid "Bake quality of the capture data." msgstr "捕获数据的烘焙质量。" -#: doc/classes/BakedLightmap.xml:53 +#: doc/classes/BakedLightmap.xml:54 msgid "" "If a baked mesh doesn't have a UV2 size hint, this value will be used to " "roughly compute a suitable lightmap size." @@ -12585,7 +12617,7 @@ msgstr "" "如果烘焙后的网格没有UV2的尺寸提示,这个值将被用来粗略计算出合适的光照贴图尺" "寸。" -#: doc/classes/BakedLightmap.xml:56 +#: doc/classes/BakedLightmap.xml:57 msgid "" "The environment color when [member environment_mode] is set to [constant " "ENVIRONMENT_MODE_CUSTOM_COLOR]." @@ -12593,7 +12625,7 @@ msgstr "" "[member environment_mode] 设置为 [constant ENVIRONMENT_MODE_CUSTOM_COLOR] 时" "的环境颜色。" -#: doc/classes/BakedLightmap.xml:59 +#: doc/classes/BakedLightmap.xml:60 msgid "" "The energy scaling factor when when [member environment_mode] is set to " "[constant ENVIRONMENT_MODE_CUSTOM_COLOR] or [constant " @@ -12602,7 +12634,7 @@ msgstr "" "[member environment_mode] 设置为 [constant ENVIRONMENT_MODE_CUSTOM_COLOR] 或 " "[constant ENVIRONMENT_MODE_CUSTOM_SKY] 时的能量比例系数。" -#: doc/classes/BakedLightmap.xml:62 +#: doc/classes/BakedLightmap.xml:63 msgid "" "The [Sky] resource to use when [member environment_mode] is set o [constant " "ENVIRONMENT_MODE_CUSTOM_SKY]." @@ -12610,11 +12642,11 @@ msgstr "" "当 [member environment_mode] 设置为 [constant ENVIRONMENT_MODE_CUSTOM_SKY] 时" "要使用的 [Sky] 资源。" -#: doc/classes/BakedLightmap.xml:65 +#: doc/classes/BakedLightmap.xml:66 msgid "The rotation of the baked custom sky." msgstr "烘焙自定义天空的旋转。" -#: doc/classes/BakedLightmap.xml:68 +#: doc/classes/BakedLightmap.xml:69 msgid "" "Minimum ambient light for all the lightmap texels. This doesn't take into " "account any occlusion from the scene's geometry, it simply ensures a minimum " @@ -12624,11 +12656,11 @@ msgstr "" "所有光照贴图纹理元素的最小环境光。这不考虑场景几何体的任何遮挡,它只是确保所" "有光照贴图纹理元素上的光量最小。可用于阴影颜色的艺术控制。" -#: doc/classes/BakedLightmap.xml:71 +#: doc/classes/BakedLightmap.xml:72 msgid "Decides which environment to use during baking." msgstr "决定烘焙时使用哪个环境。" -#: doc/classes/BakedLightmap.xml:74 +#: doc/classes/BakedLightmap.xml:75 msgid "" "Size of the baked lightmap. Only meshes inside this region will be included " "in the baked lightmap, also used as the bounds of the captured region for " @@ -12637,17 +12669,17 @@ msgstr "" "烘焙光照贴图的大小。只有该区域内的网格才会包含在烘焙光照贴图中,也用作动态光" "照捕获区域的边界。" -#: doc/classes/BakedLightmap.xml:77 +#: doc/classes/BakedLightmap.xml:78 msgid "" "Deprecated, in previous versions it determined the location where lightmaps " "were be saved." msgstr "已废弃,在以前的版本中,它决定了光照贴图的保存位置。" -#: doc/classes/BakedLightmap.xml:80 +#: doc/classes/BakedLightmap.xml:81 msgid "The calculated light data." msgstr "计算出的光照数据。" -#: doc/classes/BakedLightmap.xml:83 +#: doc/classes/BakedLightmap.xml:84 msgid "" "Determines the amount of samples per texel used in indrect light baking. The " "amount of samples for each quality level can be configured in the project " @@ -12656,7 +12688,7 @@ msgstr "" "决定在不正确的光照烘烤中每一个纹理元素的采样量。可以在项目设置中配置每个质量" "级别的采样量。" -#: doc/classes/BakedLightmap.xml:86 +#: doc/classes/BakedLightmap.xml:87 msgid "" "Store full color values in the lightmap textures. When disabled, lightmap " "textures will store a single brightness channel. Can be disabled to reduce " @@ -12666,14 +12698,14 @@ msgstr "" "在光照贴图纹理中存储全色值。禁用时,光照贴图纹理将存储单个亮度通道。如果场景" "仅包含白光或者您不介意在间接照明中丢失颜色信息,则可以禁用以减少磁盘使用量。" -#: doc/classes/BakedLightmap.xml:89 +#: doc/classes/BakedLightmap.xml:90 msgid "" "When enabled, a lightmap denoiser will be used to reduce the noise inherent " "to Monte Carlo based global illumination." msgstr "" "启用后,将使用光照贴图降噪器来减少基于Monte Carlo的全局照明固有的噪声。" -#: doc/classes/BakedLightmap.xml:92 +#: doc/classes/BakedLightmap.xml:93 msgid "" "If [code]true[/code], stores the lightmap textures in a high dynamic range " "format (EXR). If [code]false[/code], stores the lightmap texture in a low " @@ -12692,27 +12724,27 @@ msgstr "" "端或 [member ProjectSettings.rendering/quality/depth/hdr] 为 [code]false,也" "会降低光照贴图条纹[/code]。" -#: doc/classes/BakedLightmap.xml:98 +#: doc/classes/BakedLightmap.xml:99 msgid "The lowest bake quality mode. Fastest to calculate." msgstr "最低烘焙质量模式。计算速度最快。" -#: doc/classes/BakedLightmap.xml:101 +#: doc/classes/BakedLightmap.xml:102 msgid "The default bake quality mode." msgstr "默认烘焙质量模式。" -#: doc/classes/BakedLightmap.xml:104 +#: doc/classes/BakedLightmap.xml:105 msgid "A higher bake quality mode. Takes longer to calculate." msgstr "更高的烘焙质量模式。需要更长的时间来计算。" -#: doc/classes/BakedLightmap.xml:107 +#: doc/classes/BakedLightmap.xml:108 msgid "The highest bake quality mode. Takes the longest to calculate." msgstr "最高的烘烤质量模式。需要最长的时间来计算。" -#: doc/classes/BakedLightmap.xml:110 +#: doc/classes/BakedLightmap.xml:111 msgid "Baking was successful." msgstr "烘焙成功。" -#: doc/classes/BakedLightmap.xml:113 +#: doc/classes/BakedLightmap.xml:114 msgid "" "Returns if no viable save path is found. This can happen where an [member " "image_path] is not specified or when the save location is invalid." @@ -12720,51 +12752,55 @@ msgstr "" "如果没有找到合适的保存路径,则返回。这可能发生在没有指定[member image_path]或" "者保存位置无效的情况下。" -#: doc/classes/BakedLightmap.xml:116 doc/classes/SpatialMaterial.xml:622 +#: doc/classes/BakedLightmap.xml:117 doc/classes/SpatialMaterial.xml:622 msgid "Currently unused." msgstr "当前未使用." -#: doc/classes/BakedLightmap.xml:119 +#: doc/classes/BakedLightmap.xml:120 msgid "Returns when the baker cannot save per-mesh textures to file." msgstr "当烘焙器不能将每个网格的纹理保存到文件时返回。" -#: doc/classes/BakedLightmap.xml:122 +#: doc/classes/BakedLightmap.xml:123 msgid "The size of the generated lightmaps is too large." msgstr "生成的光照贴图尺寸过大。" -#: doc/classes/BakedLightmap.xml:125 +#: doc/classes/BakedLightmap.xml:126 msgid "Some mesh contains UV2 values outside the [code][0,1][/code] range." msgstr "有些网格包含[code][0,1][/code]范围以外的UV2值。" -#: doc/classes/BakedLightmap.xml:128 +#: doc/classes/BakedLightmap.xml:129 msgid "Returns if user cancels baking." msgstr "如果用户取消了烘烤,则返回。" -#: doc/classes/BakedLightmap.xml:131 +#: doc/classes/BakedLightmap.xml:132 msgid "" "Returns if lightmapper can't be created. Unless you are using a custom " "lightmapper, please report this as bug." msgstr "" +"如果不能创建光照贴图器,则返回。除非你使用的是自定义的光照贴图器,否则请将此" +"报告为bug。" -#: doc/classes/BakedLightmap.xml:134 +#: doc/classes/BakedLightmap.xml:135 msgid "" "There is no root node to start baking from. Either provide [code]from_node[/" "code] argument or attach this node to a parent that should be used as root." msgstr "" +"没有根节点可以开始烘焙。要么提供[code]from_node[/code]参数,要么将此节点附加" +"到一个被用作根节点的父节点。" -#: doc/classes/BakedLightmap.xml:137 +#: doc/classes/BakedLightmap.xml:138 msgid "No environment is used during baking." msgstr "烘焙过程中不使用任何环境。" -#: doc/classes/BakedLightmap.xml:140 +#: doc/classes/BakedLightmap.xml:141 msgid "The baked environment is automatically picked from the current scene." msgstr "烘焙环境会自动从当前场景中获取。" -#: doc/classes/BakedLightmap.xml:143 +#: doc/classes/BakedLightmap.xml:144 msgid "A custom sky is used as environment during baking." msgstr "在烘焙过程中使用自定义天空作为环境。" -#: doc/classes/BakedLightmap.xml:146 +#: doc/classes/BakedLightmap.xml:147 msgid "A custom solid color is used as environment during baking." msgstr "烘焙过程中使用自定义纯色作为环境。" @@ -13015,12 +13051,13 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/math/matrices_and_transforms." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/math/matrices_and_transforms." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/math/" +"matrices_and_transforms.html" #: doc/classes/Basis.xml:15 doc/classes/Transform.xml:13 msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/using_transforms.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/3d/using_transforms.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/3d/using_transforms.html" #: doc/classes/Basis.xml:16 doc/classes/Line2D.xml:11 #: doc/classes/Transform.xml:14 doc/classes/Transform2D.xml:13 @@ -13291,9 +13328,12 @@ msgstr "返回设置为[code]true[/code]的位图元素的数量。" #: doc/classes/BitMap.xml:51 msgid "" -"Applies morphological dilation to the bitmap. The first argument is the " -"dilation amount, Rect2 is the area where the dilation will be applied." -msgstr "在位图上应用形态扩展。第一个参数是扩展量,Rect2是要应用扩展的区域。" +"Applies morphological dilation or erosion to the bitmap. If [code]pixels[/" +"code] is positive, dilation is applied to the bitmap. If [code]pixels[/code] " +"is negative, erosion is applied to the bitmap. [code]rect[/code] defines the " +"area where the morphological operation is applied. Pixels located outside " +"the [code]rect[/code] are unaffected by [method grow_mask]." +msgstr "" #: doc/classes/BitMap.xml:66 msgid "" @@ -13782,6 +13822,8 @@ msgid "" "text color of the button. Disabled, hovered, and pressed states take " "precedence over this color." msgstr "" +"当[Button]获得焦点时使用的文本[Color]。只取代按钮的正常文本颜色。禁用、悬停和" +"按下状态优先于这个颜色。" #: doc/classes/Button.xml:80 msgid "Text [Color] used when the [Button] is being hovered." @@ -13817,7 +13859,7 @@ msgid "" "Only one allows being pressed.\n" "[member BaseButton.toggle_mode] should be [code]true[/code]." msgstr "" -"[按钮]组。所有直接和间接的子按钮都成为 radios。只有一个允许被按下。\n" +"[Button]组。所有直接和间接的子按钮都成为 radios。只有一个允许被按下。\n" "[member BaseButton.toggle_mode]应该是[code]true[/code]。" #: doc/classes/ButtonGroup.xml:16 @@ -14721,14 +14763,16 @@ msgstr "" #: doc/classes/CanvasItem.xml:15 doc/classes/CanvasLayer.xml:10 #: doc/classes/InputEvent.xml:11 doc/classes/Viewport.xml:15 msgid "https://docs.godotengine.org/en/3.4/tutorials/2d/2d_transforms.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/2d/2d_transforms.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/2d/2d_transforms.html" #: doc/classes/CanvasItem.xml:16 doc/classes/Control.xml:18 #: doc/classes/Node2D.xml:10 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/2d/custom_drawing_in_2d.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/2d/custom_drawing_in_2d.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/2d/custom_drawing_in_2d." +"html" #: doc/classes/CanvasItem.xml:23 msgid "" @@ -14926,8 +14970,8 @@ msgid "" "for performance reasons. Transforms are accumulated and then set. Use this " "if you need an up-to-date transform when doing physics operations." msgstr "" -"强制更新变换。由于性能原因,物理学中的变换变化不是即时的。变换是累积后再设置" -"的。如果您在进行物理操作时需要最新的变换,请使用此功能。" +"强制更新变换。由于性能原因,物理中的变换改变不是即时的。变换是在累积后再设" +"置。如果你在进行物理操作时需要最新的变换,请使用此功能。" #: doc/classes/CanvasItem.xml:269 msgid "Returns the [RID] of the [World2D] canvas where this item is in." @@ -14989,7 +15033,7 @@ msgid "" "Returns [code]true[/code] if the node is set as top-level. See [method " "set_as_toplevel]." msgstr "" -"如果节点设置为顶层,则返回[code] true [/code]。参阅[方法set_as_toplevel]。" +"如果节点设置为顶层,则返回[code] true [/code]。参阅[method set_as_toplevel]。" #: doc/classes/CanvasItem.xml:353 msgid "" @@ -15295,7 +15339,8 @@ msgstr "" #: doc/classes/CanvasLayer.xml:11 msgid "https://docs.godotengine.org/en/3.4/tutorials/2d/canvas_layers.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/2d/canvas_layers.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/2d/canvas_layers.html" #: doc/classes/CanvasLayer.xml:18 msgid "Returns the RID of the canvas used by this layer." @@ -15437,8 +15482,8 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/gui/bbcode_in_richtextlabel." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/gui/bbcode_in_richtextlabel." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/gui/" +"bbcode_in_richtextlabel.html" #: doc/classes/CharFXTransform.xml:11 doc/classes/RichTextEffect.xml:17 msgid "" @@ -15504,7 +15549,7 @@ msgid "" msgstr "" "包含在开头的BBCode标记中传递的参数。默认情况下,参数是字符串。如果它们的内容" "与[bool],[int]或[float]之类的类型匹配,它们将被自动转换。格式为[code] " -"#rrggbb [/code]或[code] #rgb [/code]的颜色代码将转换为不透明的[颜色]。字符串" +"#rrggbb [/code]或[code] #rgb [/code]的颜色代码将转换为不透明的[Color]。字符串" "参数即使使用引号也不能包含空格。如果存在,引号也将出现在最终字符串中。\n" "例如,开头的BBCode标签[code] [example foo = hello bar = true baz = 42 color =" "#ffffff] [/code]将映射到以下[Dictionary]:\n" @@ -15558,9 +15603,8 @@ msgid "The check icon to display when the [CheckBox] is checked." msgstr "选中[CheckBox]时显示的复选图标。" #: doc/classes/CheckBox.xml:28 -#, fuzzy msgid "The check icon to display when the [CheckBox] is checked and disabled." -msgstr "选中并禁用[CheckButton]时显示的图标。" +msgstr "当[CheckBox]被选中和禁用时要显示的勾选图标。" #: doc/classes/CheckBox.xml:31 msgid "" @@ -15590,6 +15634,8 @@ msgid "" "text color of the checkbox. Disabled, hovered, and pressed states take " "precedence over this color." msgstr "" +"[CheckBox] 文本获得焦点时的字体颜色。只取代复选框的正常文本颜色。禁用、悬停和" +"按下状态优先于这个颜色。" #: doc/classes/CheckBox.xml:49 msgid "The [CheckBox] text's font color when it's hovered." @@ -15644,10 +15690,9 @@ msgid "The check icon to display when the [CheckBox] is unchecked." msgstr "未选中[CheckBox]时显示的复选图标。" #: doc/classes/CheckBox.xml:86 -#, fuzzy msgid "" "The check icon to display when the [CheckBox] is unchecked and disabled." -msgstr "未选中和禁用[CheckButton]时显示的图标。" +msgstr "当[CheckBox]未被选中并被禁用时要显示的勾选图标。" #: doc/classes/CheckButton.xml:4 msgid "Checkable button. See also [CheckBox]." @@ -15702,6 +15747,8 @@ msgid "" "normal text color of the button. Disabled, hovered, and pressed states take " "precedence over this color." msgstr "" +"[CheckButton] 文本获得焦点时的字体颜色。仅替换按钮的正常文本颜色。禁用、悬停" +"和按下状态优先于此颜色。" #: doc/classes/CheckButton.xml:43 msgid "The [CheckButton] text's font color when it's hovered." @@ -15869,10 +15916,10 @@ msgid "" "[code]name[/code], [code]return: (class_name, hint, hint_string, name, type, " "usage)[/code]." msgstr "" -"返回[code]signal[/code][code]class[/code]或其父级的数据。返回值是带有以下键" -"的 [Dictionary]: [code]args[/code], [code]default_args[/code], [code]flags[/" -"code], [code]id[/code], [code]name[/code], [code]return:(class_name, hint, " -"hint_string, name, type, usage)[/code]。" +"返回 [code]class[/code] 或其父级的[code]信号[/code]数据。返回 [Dictionary] 并" +"带有以下键: [code]args[/code], [code]default_args[/code], [code]flags[/" +"code], [code]id[/code], [code]name[/code], [code]return:(class_name, hint, " +"hint_string, name, type, usage)[/code]。" #: doc/classes/ClassDB.xml:113 msgid "" @@ -15902,8 +15949,8 @@ msgid "" "Returns whether [code]class[/code] (or its ancestry if [code]no_inheritance[/" "code] is [code]false[/code]) has a method called [code]method[/code] or not." msgstr "" -"返回[code] class [/code](如果[code] no_inheritance [/code]为[code] false [/" -"code],则返回其父级)是否具有称为[code]method[/code]的方法。" +"返回 [code]class[/code] 是否有名为 [code]method[/code] 的方法。(如果[code] " +"no_inheritance [/code]为[code] false [/code],则返回其父级)。" #: doc/classes/ClassDB.xml:147 msgid "" @@ -16019,9 +16066,9 @@ msgid "" "information." msgstr "" "相机的碰撞遮罩。只有在对象有至少一个碰撞层和碰撞这招匹对时才能被检测到。详细" -"信息请参阅文档[url=https://docs.godotengine.org/en/3.4/tutorials/physics/" -"physics_introduction.html#collision-layers-and-masks]Collision layers and " -"masks[/url]。" +"信息请参阅文档[url=https://docs.godotengine.org/zh_CN/stable/tutorials/" +"physics/physics_introduction.html#collision-layers-and-masks]Collision " +"layers and masks[/url]。" #: doc/classes/ClippedCamera.xml:81 msgid "" @@ -16045,10 +16092,10 @@ msgid "" "owners are not nodes and do not appear in the editor, but are accessible " "through code using the [code]shape_owner_*[/code] methods." msgstr "" -"CollisionObject是物理学对象的基类。它可以容纳任何数量的碰撞形状 [Shape]s。每" -"个形状必须分配给一个形状所有者 [i]shape owner[/i]。CollisionObject可以有任意" -"数量的形状所有者。形状所有者不是节点,也不会出现在编辑器中,但是可以通过代码" -"使用[code] shape_owner_* [/code]方法进行访问。" +"CollisionObject是物理对象的基类。它可以容纳任何数量的碰撞形状 [Shape]s。每个" +"形状必须分配给一个形状所有者 [i]shape owner[/i]。CollisionObject可以有任意数" +"量的形状所有者。形状所有者不是节点,也不会出现在编辑器中,但是可以通过代码使" +"用[code] shape_owner_* [/code]方法进行访问。" #: doc/classes/CollisionObject.xml:20 msgid "" @@ -16188,8 +16235,8 @@ msgstr "" "个。另见 [member collision_mask]。\n" "[b]注意:[/b]如果对象A在对象B扫描的任何层中,或者对象B在对象A扫描的任何层中," "则检测到接触。有关更多信息,请参阅文档中的 [url=https://docs.godotengine.org/" -"en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-" -"masks] 碰撞层和掩码[/url]。" +"zh_CN/latest/tutorials/physics/physics_introduction.html#collision-layers-" +"and-masks] 碰撞层和掩码[/url]。" #: doc/classes/CollisionObject.xml:178 msgid "" @@ -16205,8 +16252,8 @@ msgstr "" "另见 [member collision_layer]]。\n" "[b]注意:[/b]如果对象A在对象B扫描的任何层中,或者对象B在对象A扫描的任何层中," "则检测到接触。有关更多信息,请参阅文档中的 [url=https://docs.godotengine.org/" -"en/latest/tutorials/physics/physics_introduction.html#collision-layers-and-" -"masks] 碰撞层和掩码[/url]。" +"zh_CN/latest/tutorials/physics/physics_introduction.html#collision-layers-" +"and-masks] 碰撞层和掩码[/url]。" #: doc/classes/CollisionObject.xml:182 msgid "" @@ -16339,7 +16386,7 @@ msgstr "" "这个CollisionObject2D所在的物理层。碰撞对象可以存在于32个不同层中的一个或多" "个。也见[member collision_mask]。\n" "[b]注意:[/b]如果对象A在对象B扫描的任何层中,或者对象B在对象A扫描的任何层中," -"则检测到接触。更多信息见文档[url=https://docs.godotengine.org/en/latest/" +"则检测到接触。更多信息见文档[url=https://docs.godotengine.org/zh_CN/latest/" "tutorials/physics/physics_introduction.html#collision-layers-and-masks] 碰撞" "层和掩码[/url]。" @@ -16356,7 +16403,7 @@ msgstr "" "这个CollisionObject2D所扫描的物理层。碰撞对象可以扫描32个不同层中的一个或多" "个。也见[member collision_layer]。\n" "[b]注意:[/b] 如果对象A在对象B扫描的任何层中,或者对象B在对象A扫描的任何层" -"中,就会检测到接触。更多信息见文档[url=https://docs.godotengine.org/en/" +"中,就会检测到接触。更多信息见文档[url=https://docs.godotengine.org/zh_CN/" "latest/tutorials/physics/physics_introduction.html#collision-layers-and-" "masks] 碰撞层和掩码[/url]。" @@ -16526,8 +16573,8 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/physics/" +"physics_introduction.html" #: doc/classes/CollisionShape.xml:19 msgid "" @@ -16806,7 +16853,7 @@ msgid "" "approximately equal, by running [method @GDScript.is_equal_approx] on each " "component." msgstr "" -"通过在每个组件上运行[方法@GDScript.is_equal_approx],如果这个颜色和" +"通过在每个组件上运行[method @GDScript.is_equal_approx],如果这个颜色和" "[code]color[/code]近似相等,返回[code]true[/code]。" #: doc/classes/Color.xml:146 @@ -17816,6 +17863,8 @@ msgid "" "normal text color of the button. Disabled, hovered, and pressed states take " "precedence over this color." msgstr "" +"当[ColorPickerButton]获得焦点时使用的文本[Color]。只替换按钮的正常文本颜色。" +"禁用、悬停和按下状态优先于这个颜色。" #: doc/classes/ColorPickerButton.xml:83 msgid "Text [Color] used when the [ColorPickerButton] is being hovered." @@ -18361,7 +18410,7 @@ msgid "" "[method get_icon], [method get_stylebox], and the [code]add_*_override[/" "code] methods provided by this class." msgstr "" -"所有 UI 相关节点的基类。 [Control] 具有定义其范围的边界矩形、相对于其父控件或" +"所有 UI 相关节点的基类。[Control] 具有定义其范围的边界矩形、相对于其父控件或" "当前视窗的锚点位置以及表示锚点偏移的边距。 当节点、其任何父节点或屏幕尺寸发生" "变化时,边距会自动更新。\n" "更多关于 Godot 的 UI 系统、锚点、边距和容器的信息,请参阅手册中的相关教程。 " @@ -18381,22 +18430,22 @@ msgstr "" "它。\n" "[Theme] 资源更改控件的外观。 如果您更改 [Control] 节点上的 [Theme],则会影响" "其所有子节点。 要覆盖某些主题的参数,请调用 [code]add_*_override[/code] 方法" -"之一,例如 [method add_font_override]。 您可以使用属性检查器覆盖主题。\n" -"[b]注意:[/b] 主题相关项 [i]不是[/i] [Object] 对象属性。这意味着你不能使用 " -"[method Object.get] 和 [method Object.set] 访问它们的值。相反,请使用 " -"[method get_color]、[method get_constant]、[method get_font]、[method " -"get_icon]、[method get_stylebox],以及这个类提供的 [code]add_*_override[/" -"code] 方法。" +"之一,例如 [method add_font_override]。 您可以使用检查器覆盖主题。\n" +"[b]注意:[/b] 主题项目[i]不是[/i] [Object] 的属性。这意味着你无法使用 " +"[method Object.get] 和 [method Object.set] 访问它们的值。请换用 [method " +"get_color]、[method get_constant]、[method get_font]、[method get_icon]、" +"[method get_stylebox],以及这个类提供的 [code]add_*_override[/code] 方法。" #: doc/classes/Control.xml:17 msgid "https://docs.godotengine.org/en/3.4/tutorials/gui/index.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/gui/index.html" +msgstr "https://docs.godotengine.org/zh_CN/stable/tutorials/gui/index.html" #: doc/classes/Control.xml:19 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/gui/control_node_gallery.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/gui/control_node_gallery.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/gui/control_node_gallery." +"html" #: doc/classes/Control.xml:20 msgid "https://github.com/godotengine/godot-demo-projects/tree/master/gui" @@ -18634,10 +18683,10 @@ msgid "" "$MyButton.add_stylebox_override(\"normal\", null)\n" "[/codeblock]" msgstr "" -"使用指定的 [code]name[/code] 为主题 [StyleBox] 创建本地覆盖项。获取控件的主题" -"项时,本地覆盖项始终优先。可以通过为其分配 [code]null[/code] 值来删除覆盖。\n" -"参阅[method get_stylebox]。\n" -"[b]通过复制来修改StyleBox中的属性的示例:[/b]\n" +"为主题 [StyleBox] 创建名为 [code]name[/code] 的本地覆盖项。获取控件的主题项" +"时,本地覆盖项始终优先。可以通过为其分配 [code]null[/code] 值来删除覆盖。\n" +"参阅 [method get_stylebox]。\n" +"[b]通过复制来修改 StyleBox 中的属性的示例:[/b]\n" "[codeblock]\n" "# 下面的代码片段假设子节点 MyButton 分配了一个 StyleBoxFlat。\n" "# 资源是跨实例共享的,所以我们需要复制它\n" @@ -18646,7 +18695,7 @@ msgstr "" "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" +"# 删除样式盒覆盖。\n" "$MyButton.add_stylebox_override(\"normal\", null)\n" "[/codeblock]" @@ -18927,9 +18976,9 @@ msgid "" "[code]theme_type[/code].\n" "See [method get_color] for details." msgstr "" -"如果该 [Theme] 具有指定 [code]name[/code] 和 [code]theme_type[/code] 的样式框" -"项目,则从树中第一个匹配的 [Theme] 返回 [StyleBox]。\n" -"有关详细信息,请参阅 [method get_color]。" +"返回树中首个符合条件的 [Theme] 的 [StyleBox],这个 [Theme] 具有名称为 " +"[code]name[/code] 并且主题类型为 [code]theme_type[/code] 的样式盒。\n" +"详情请参阅 [method get_color]。" #: doc/classes/Control.xml:368 msgid "" @@ -19715,8 +19764,8 @@ msgstr "" "缩放。\n" "[b]注意:[/b] 这个属性主要用于动画用途。当控件被缩放时,控件内的文本将看起来" "是像素化或模糊的。要在你的项目支持多种分辨率,请使用[url=https://docs." -"godotengine.org/en/3.4/tutorials/viewports/multiple_resolutions.html]文档[/" -"url]中描述的合适的视窗拉伸模式,而不是单独缩放控件。\n" +"godotengine.org/zh_CN/stable/tutorials/viewports/multiple_resolutions.html]文" +"档[/url]中描述的合适的视窗拉伸模式,而不是单独缩放控件。\n" "[b]注意:[/b] 如果控件节点是[Container]节点的一个子节点,当场景实例化时,缩放" "将被重置为[code]Vector2(1, 1)[/code]。要在实例化时设置控件的缩放,使用" "[code]yield(get_tree(), \"idle_frame\")[/code]等待一帧,然后设置其[member " @@ -19826,20 +19875,20 @@ msgstr "" #: doc/classes/Control.xml:864 msgid "The node cannot grab focus. Use with [member focus_mode]." -msgstr "该节点无法获取焦点。与[member focus_mode]一起使用。" +msgstr "该节点无法获取焦点。在 [member focus_mode] 中使用。" #: doc/classes/Control.xml:867 msgid "" "The node can only grab focus on mouse clicks. Use with [member focus_mode]." -msgstr "该节点只能抓住鼠标单击的焦点。与[member focus_mode]一起使用。" +msgstr "该节点只能通过鼠标点击获取焦点。在 [member focus_mode] 中使用。" #: doc/classes/Control.xml:870 msgid "" "The node can grab focus on mouse click or using the arrows and the Tab keys " "on the keyboard. Use with [member focus_mode]." msgstr "" -"该节点可以集中精力于鼠标单击或使用键盘上的箭头和Tab键。与[member focus_mode]" -"一起使用。" +"该节点可以通过使用鼠标点击或使用键盘上的箭头和 Tab 键获取焦点。在 [member " +"focus_mode] 中使用。" #: doc/classes/Control.xml:873 msgid "" @@ -20234,9 +20283,9 @@ msgid "" "automatically marked as handled, and they will not propagate further to " "other controls. This also results in blocking signals in other controls." msgstr "" -"如果单击,控件将通过[method_gui_input]接收鼠标按钮输入事件。并且控件将接收" -"[signal mouse_entered]和[signal mouse_exited]信号。这些事件将自动标记为已处" -"理,并且不会进一步传播到其他控件。这也会导致其他控件中的信号阻塞。" +"被点击时,控件将通过 [method _gui_input] 收到鼠标按钮输入事件。控件能够接收" +"到 [signal mouse_entered] 和 [signal mouse_exited] 信号。这些事件将自动被标记" +"为已处理,不会进一步传播到其他控件,因此相关的信号也不会在其他控件中触发。" #: doc/classes/Control.xml:1029 msgid "" @@ -20249,11 +20298,11 @@ msgid "" "all, the event will still be handled automatically, so unhandled input will " "not be fired." msgstr "" -"如果单击,控件将通过[method_gui_input]接收鼠标按钮输入事件。并且控件将接收" -"[signal mouse_entered]和[signal mouse_exited]信号。如果此控件未处理事件,则将" -"考虑父控件(如果有),依此类推,直到不再有可能处理它的父控件为止。这也允许信" -"号在其他控件中触发。即使根本没有控件处理过该事件,该事件仍将自动处理,因此不" -"会触发未处理的输入。" +"被点击时,控件将通过 [method _gui_input] 收到鼠标按钮输入事件。控件能够接收 " +"[signal mouse_entered] 和 [signal mouse_exited] 信号。如果此控件未处理事件," +"则将考虑其父控件(如果有的话),并依此类推,直到不再有可能处理它的父控件为" +"止。因此,相关的信号可以在其他控件中触发。即使根本没有控件处理过该事件,该事" +"件仍将被自动处理,因此不会触发未处理的输入。" #: doc/classes/Control.xml:1032 msgid "" @@ -20263,9 +20312,9 @@ msgid "" "receiving these events or firing the signals. Ignored events will not be " "handled automatically." msgstr "" -"控件将不会通过[method_gui_input]接收鼠标按钮输入事件。该控件也不会接收" -"[signal mouse_entered]或[signal mouse_exited]信号。这不会阻止其他控件接收这些" -"事件或触发信号。忽略的事件将不会自动处理。" +"该控件不会通过 [method _gui_input] 收到鼠标按钮输入事件,也不会接收到 " +"[signal mouse_entered] 和 [signal mouse_exited] 信号。这不会阻止其他控件接收" +"这些事件或触发信号。被忽略的事件将不会被自动处理。" #: doc/classes/Control.xml:1035 msgid "" @@ -20298,9 +20347,9 @@ msgid "" "variables, like [member anchor_left]. To change all 4 anchors at once, use " "[method set_anchors_preset]." msgstr "" -"将4个锚点的一侧之一对齐到节点的[code] Rect [/code]的左上角。与[code] anchor " -"_ * [/code]成员变量之一一起使用,例如[member anchor_left]。要一次更改所有4个" -"锚点,请使用[method set_anchors_preset]。" +"将 4 个锚点的某一侧吸附到节点的 [code]Rect[/code] 的左上角。在 " +"[code]anchor_*[/code] 成员变量中使用,例如 [member anchor_left]。要一次更改全" +"部 4 个锚点,请使用 [method set_anchors_preset]。" #: doc/classes/Control.xml:1047 msgid "" @@ -20309,9 +20358,9 @@ msgid "" "member variables, like [member anchor_left]. To change all 4 anchors at " "once, use [method set_anchors_preset]." msgstr "" -"将4个锚点的一侧之一捕捉到右下角节点[code] Rect [/code]的末端。与[code] " -"anchor _ * [/code]成员变量之一一起使用,例如[member anchor_left]。要一次更改" -"所有4个锚点,请使用[method set_anchors_preset]。" +"将 4 个锚点的某一侧吸附到节点的 [code]Rect[/code] 的右下角。在 " +"[code]anchor_*[/code] 成员变量中使用,例如 [member anchor_left]。要一次更改全" +"部 4 个锚点,请使用 [method set_anchors_preset]。" #: doc/classes/ConvexPolygonShape.xml:4 msgid "Convex polygon shape for 3D physics." @@ -20404,7 +20453,7 @@ msgstr "返回[enum Parameter]指定的参数的随机性系数。" #: doc/classes/CPUParticles.xml:46 doc/classes/CPUParticles2D.xml:47 msgid "" "Returns the enabled state of the given flag (see [enum Flags] for options)." -msgstr "返回给定标志的启用状态(有关选项,请参阅[枚举标志])。" +msgstr "返回给定标志的启用状态(有关选项,请参阅[enum Flags])。" #: doc/classes/CPUParticles.xml:52 doc/classes/CPUParticles2D.xml:53 msgid "Restarts the particle emitter." @@ -20425,7 +20474,7 @@ msgstr "设置[enum Parameter]指定的参数的随机性因子。" #: doc/classes/CPUParticles.xml:84 doc/classes/CPUParticles2D.xml:85 msgid "Enables or disables the given flag (see [enum Flags] for options)." -msgstr "启用或禁用给定标志(有关选项,请参阅[枚举标志])。" +msgstr "启用或禁用给定标志(有关选项,请参阅[enum Flags])。" #: doc/classes/CPUParticles.xml:90 doc/classes/CPUParticles2D.xml:91 #: doc/classes/Particles.xml:47 doc/classes/Particles2D.xml:33 @@ -20489,7 +20538,7 @@ msgstr "粒子动画速度。" #: doc/classes/CPUParticles.xml:124 doc/classes/CPUParticles2D.xml:125 msgid "Each particle's animation speed will vary along this [Curve]." -msgstr "每个粒子的动画速度将沿此[曲线]变化。" +msgstr "每个粒子的动画速度将沿此[Curve]变化。" #: doc/classes/CPUParticles.xml:127 doc/classes/CPUParticles2D.xml:128 #: doc/classes/ParticlesMaterial.xml:112 @@ -21026,7 +21075,8 @@ msgstr "" msgid "" "https://docs.godotengine.org/en/3.4/tutorials/2d/particle_systems_2d.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/2d/particle_systems_2d.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/2d/particle_systems_2d." +"html" #: doc/classes/CPUParticles2D.xml:19 msgid "" @@ -21348,7 +21398,7 @@ msgstr "" "从[code]path[/code]加载一个密钥。如果[code]public_only[/code]是[code]true[/" "code],将只加载公钥。\n" "[b]注意:[/b] 如果[code]public_only[/code]是[code]true[/code],[code]path[/" -"code]应该是一个 \"*.pub \" 文件,否则是 \"*.key \" 文件。" +"code]应该是一个 \"*.pub\" 文件,否则是 \"*.key\" 文件。" #: doc/classes/CryptoKey.xml:34 msgid "" @@ -21768,7 +21818,7 @@ msgstr "" "而不是可视化的。一个可碰撞物体可以使用这些层来选择它可以与哪些物体碰撞,使用 " "collision_mask 属性。\n" "如果对象A在对象B所扫描的任何层中,或者对象B在对象A所扫描的任何层中,就会检测" -"到接触。详见文档中的[url=https://docs.godotengine.org/en/3.4/tutorials/" +"到接触。详见文档中的[url=https://docs.godotengine.org/zh_CN/stable/tutorials/" "physics/physics_introduction.html#collision-layers-and-masks]碰撞层和掩码[/" "url]。" @@ -21780,7 +21830,7 @@ msgid "" "documentation for more information." msgstr "" "此 CSG 形状将要扫描碰撞的物理层。有关更多信息,请参阅文档中的 [url=https://" -"docs.godotengine.org/en/3.4/tutorials/physics/physics_introduction." +"docs.godotengine.org/zh_CN/stable/tutorials/physics/physics_introduction." "html#collision-layers-and-masks]碰撞层和掩码[/url]。" #: modules/csg/doc_classes/CSGShape.xml:68 @@ -21915,8 +21965,8 @@ msgid "" "https://docs.godotengine.org/en/3.4/getting_started/scripting/c_sharp/index." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/scripting/c_sharp/index." -"html" +"https://docs.godotengine.org/zh_CN/stable/getting_started/scripting/c_sharp/" +"index.html" #: modules/mono/doc_classes/CSharpScript.xml:18 #: modules/gdnative/doc_classes/PluginScript.xml:13 @@ -22489,7 +22539,7 @@ msgid "" "code], and its fractional part as [code]t[/code]." msgstr "" "返回顶点 [code]fofs[/code] 的位置。它使用 [code]fofs[/code] 的整数部分作为 " -"[code]idx[/code] 和分数部分作为 [code]t[/code] 调用 [方法插值]。" +"[code]idx[/code] 和分数部分作为 [code]t[/code] 调用 [method interpolate]。" #: doc/classes/Curve2D.xml:115 doc/classes/Curve3D.xml:145 msgid "" @@ -22743,7 +22793,7 @@ msgstr "一种显示曲线的纹理。" msgid "" "Renders a given [Curve] provided to it. Simplifies the task of drawing " "curves and/or saving them as image files." -msgstr "渲染提供给它的[曲线]。简化了绘制曲线和/或保存为图像文件的任务。" +msgstr "渲染提供给它的[Curve]。简化了绘制曲线和/或保存为图像文件的任务。" #: doc/classes/CurveTexture.xml:15 msgid "The [code]curve[/code] rendered onto the texture." @@ -22822,13 +22872,13 @@ msgstr "圆柱体的半径。" #: doc/classes/DampedSpringJoint2D.xml:4 msgid "Damped spring constraint for 2D physics." -msgstr "二维物理学的阻尼弹簧约束。" +msgstr "二维物理的阻尼弹簧约束。" #: doc/classes/DampedSpringJoint2D.xml:7 msgid "" "Damped spring constraint for 2D physics. This resembles a spring joint that " "always wants to go back to a given length." -msgstr "二维物理学的阻尼弹簧约束。这类似于一个总是想回到给定长度的弹簧关节。" +msgstr "二维物理的阻尼弹簧约束。这类似于总是想回到给定长度的弹簧关节。" #: doc/classes/DampedSpringJoint2D.xml:15 msgid "" @@ -22845,7 +22895,7 @@ msgstr "" msgid "" "The spring joint's maximum length. The two attached bodies cannot stretch it " "past this value." -msgstr "弹簧接头的最大长度。两个连接体不能超过这个值。" +msgstr "弹簧关节的最大长度。两个连接体不能超过这个值。" #: doc/classes/DampedSpringJoint2D.xml:21 msgid "" @@ -23071,7 +23121,7 @@ msgid "" "https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/" "gdscript_basics.html#dictionary" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/" +"https://docs.godotengine.org/zh_CN/stable/getting_started/scripting/gdscript/" "gdscript_basics.html#dictionary" #: doc/classes/Dictionary.xml:94 @@ -23108,8 +23158,8 @@ msgid "" "key does not exist, the method returns the value of the optional default " "argument, or [code]null[/code] if it is omitted." msgstr "" -"返回[字典]中指定键的当前值。如果键不存在,则该方法返回可选默认参数的值;如果" -"省略,则返回[code] null [/code]。" +"返回[Dictionary]中指定键的当前值。如果键不存在,则该方法返回可选默认参数的" +"值;如果省略,则返回[code] null [/code]。" #: doc/classes/Dictionary.xml:130 msgid "" @@ -23198,7 +23248,8 @@ msgstr "" msgid "" "https://docs.godotengine.org/en/3.4/tutorials/3d/lights_and_shadows.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/3d/lights_and_shadows.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/3d/lights_and_shadows." +"html" #: doc/classes/DirectionalLight.xml:16 msgid "" @@ -23370,8 +23421,8 @@ msgid "" "https://docs.godotengine.org/en/3.4/getting_started/step_by_step/filesystem." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/filesystem." -"html" +"https://docs.godotengine.org/zh_CN/stable/getting_started/step_by_step/" +"filesystem.html" #: doc/classes/Directory.xml:35 msgid "" @@ -23465,10 +23516,10 @@ msgid "" "mandatory in such a case)." msgstr "" "返回当前目录中的下一个元素(文件或目录)(包括[code].[/code]和[code].[/" -"code],除非[code]skip_navigational[/code]被赋予[方法list_dir_begin])。\n" +"code],除非[code]skip_navigational[/code]被赋予[method list_dir_begin])。\n" "返回的是文件或目录的名称(而不是它的完整路径)。一旦流被完全处理,该方法返回" -"一个空的String,并自动关闭流(即在这种情况下,[方法list_dir_end]将不是强制性" -"的)。" +"一个空的String,并自动关闭流(即在这种情况下,[method list_dir_end]将不是强制" +"性的)。" #: doc/classes/Directory.xml:103 msgid "" @@ -24562,7 +24613,6 @@ msgstr "" "源类型导入。" #: doc/classes/EditorImportPlugin.xml:7 -#, fuzzy msgid "" "EditorImportPlugins provide a way to extend the editor's resource import " "functionality. Use them to import resources from custom files or to provide " @@ -24619,15 +24669,15 @@ msgid "" "[/codeblock]" msgstr "" "EditorImportPlugins提供了一种扩展编辑器资源导入功能的方法。使用它们来导入自定" -"义文件资源,或者成为编辑器现有导入器的替代品。用[method EditorPlugin." +"义文件中的资源,或成为编辑器现有导入器的替代品。用[method EditorPlugin." "add_import_plugin]注册你的[EditorPlugin]。\n" "EditorImportPlugins通过与特定的文件扩展名和资源类型相关联来工作。参阅 " -"[method get_recognized_extensions] 和 [method get_resource_type]。它们可以选" -"择性地指定一些影响导入过程的导入预置。EditorImportPlugins负责创建资源并将其保" -"存在[code].import[/code]目录中,参阅[member ProjectSettings.application/" -"config/project_data_dir_name]。\n" -"下面是一个EditorImportPlugin的例子,它从扩展名为\".special \"或\".spec \"的文" -"件中导入一个[Mesh]:\n" +"[method get_recognized_extensions] 和 [method get_resource_type]。其可以选择" +"性地指定一些影响导入过程的导入预置。EditorImportPlugins负责创建资源并将其保存" +"在[code].import[/code]目录中,参阅[member ProjectSettings.application/config/" +"use_hidden_project_data_directory]。\n" +"下面是一个EditorImportPlugin的例子,它从扩展名为 \".special\" 或 \".spec\" 的" +"文件中导入一个[Mesh]:\n" "[codeblock]\n" "tool\n" "extends EditorImportPlugin\n" @@ -24674,8 +24724,8 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/import_plugins." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/import_plugins." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/plugins/editor/" +"import_plugins.html" #: doc/classes/EditorImportPlugin.xml:58 msgid "" @@ -24684,9 +24734,9 @@ msgid "" "[code]default_value[/code], [code]property_hint[/code] (optional), " "[code]hint_string[/code] (optional), [code]usage[/code] (optional)." msgstr "" -"获取该索引下预设的选项和默认值。返回一个包含以下键名的Dictionaries数组。" -"[code]name[/code], [code]default_value[/code], [code]property_hint[/code](可" -"选), [code]hint_string[/code](可选), [code]use[/code](可选)。" +"获取该索引下预设的选项和默认值。返回一个字典数组,包含以下键名:[code]name[/" +"code]、[code]default_value[/code]、[code]property_hint[/code](可选)、" +"[code]hint_string[/code](可选)、[code]usage[/code](可选)。" #: doc/classes/EditorImportPlugin.xml:64 msgid "" @@ -24775,14 +24825,13 @@ msgstr "" "[code]\"Animation\"[/code]。" #: doc/classes/EditorImportPlugin.xml:124 -#, fuzzy msgid "" "Gets the extension used to save this resource in the [code].import[/code] " "directory (see [member ProjectSettings.application/config/" "use_hidden_project_data_directory])." msgstr "" "获取用于在[code].import[/code]目录中保存此资源的扩展名,参阅[member " -"ProjectSettings.application/config/project_data_dir_name]。" +"ProjectSettings.application/config/use_hidden_project_data_directory]。" #: doc/classes/EditorImportPlugin.xml:130 msgid "" @@ -24917,7 +24966,7 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/" "inspector_plugins.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/" +"https://docs.godotengine.org/zh_CN/stable/tutorials/plugins/editor/" "inspector_plugins.html" #: doc/classes/EditorInspectorPlugin.xml:23 @@ -25224,7 +25273,7 @@ msgstr "" #: doc/classes/EditorPlugin.xml:10 msgid "https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/index.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/index.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/plugins/editor/index.html" #: doc/classes/EditorPlugin.xml:18 msgid "" @@ -25614,8 +25663,8 @@ msgid "" " return forward\n" "[/codeblock]" msgstr "" -"在当前编辑的场景中存在根节点时调用,实现[方法句柄]并在3D视窗中发生按键输入" -"[InputEvent]。拦截按键输入[InputEvent],如果[code]return true [/code],则" +"在当前编辑的场景中存在根节点时调用,实现[method handles]并在3D视窗中发生按键" +"输入[InputEvent]。拦截按键输入[InputEvent],如果[code]return true [/code],则" "[EditorPlugin]会使用键值[code]event[/code],否则将键值[code]event[/code]转发" "到其他Editor类。例子:\n" "[codeblock]\n" @@ -26130,6 +26179,8 @@ msgid "" "[code]edit[/code] is [code]true[/code], the signal was caused by the context " "menu \"Edit\" option." msgstr "" +"当资源值被设置,并且用户点击它编辑时触发。当[code]edit[/code]为[code]true[/" +"code]时,该信号是由上下文菜单的 \"Edit\" 选项引起。" #: doc/classes/EditorResourcePreview.xml:4 msgid "Helper to generate previews of resources or files." @@ -26188,14 +26239,14 @@ msgid "" "[code]receiver_func[/code] will still be called, but the preview will be " "null." msgstr "" -"将位于路径 [code]path [/code] 的资源文件排队以进行预览。预览准备好后,将调用" -"接收器 [code]receiver [/code] 的 [code]receiver_func [/code] 。" +"将位于路径 [code]path[/code] 的资源文件排队以进行预览。预览准备好后,将调用接" +"收器 [code]receiver[/code] 的 [code]receiver_func[/code] 。" "[code]receiver_func[/code] 必须带有以下四个参数:[String] path, [Texture] " "preview, [Texture] thumbnail_preview, [Variant] userdata。用户数据 " -"[code]userdata[/code] 可以是任何东西,并将在调用 [code]receiver_func[/code] " -"返回。\n" -"[b]注意:[/b] 如果无法创建预览,则仍将调用 [code]receiver_func [/code],但预" -"览将无效。" +"[code]userdata[/code] 可以是任意的,并将在调用 [code]receiver_func[/code] 返" +"回。\n" +"[b]注意:[/b] 如果无法创建预览,则仍将调用 [code]receiver_func[/code],但预览" +"将无效。" #: doc/classes/EditorResourcePreview.xml:53 msgid "Removes a custom preview generator." @@ -26393,7 +26444,7 @@ msgid "" "https://docs.godotengine.org/en/3.4/getting_started/workflow/assets/" "importing_scenes.html#custom-script" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/workflow/assets/" +"https://docs.godotengine.org/zh_CN/stable/getting_started/workflow/assets/" "importing_scenes.html#custom-script" #: doc/classes/EditorScenePostImport.xml:35 @@ -26619,7 +26670,7 @@ msgid "" "[/codeblock]" msgstr "" "将自定义属性信息添加到属性。该词典必须包含:\n" -"-[code]名称[/code]:[字符串](属性名称)\n" +"-[code]名称[/code]:[String](属性名称)\n" "-[code]类型[/code]:[int](请参阅[enum Variant.Type])\n" "-(可选)[code]提示[/code]:[int](请参阅[enum PropertyHint])和[code] " "hint_string [/code]:[String]\n" @@ -26798,7 +26849,7 @@ msgid "" "redraw]." msgstr "" "将碰撞三角形添加到小工具中,供挑选。也可以从普通的[Mesh]生成[TriangleMesh]。" -"在[方法重绘]时调用此函数。" +"在[method redraw]时调用此函数。" #: doc/classes/EditorSpatialGizmo.xml:33 msgid "" @@ -26944,8 +26995,8 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/spatial_gizmos." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/spatial_gizmos." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/plugins/editor/" +"spatial_gizmos.html" #: doc/classes/EditorSpatialGizmoPlugin.xml:18 msgid "" @@ -27274,7 +27325,7 @@ msgid "" "The [Object] identifier stored in this [EncodedObjectAsID] instance. The " "object instance can be retrieved with [method @GDScript.instance_from_id]." msgstr "" -"存储在这个[EncodedObjectAsID]实例中的[对象]标识符。对象实例可以用[method " +"存储在这个[EncodedObjectAsID]实例中的[Object]标识符。对象实例可以用[method " "@GDScript.instance_from_id]检索。" #: doc/classes/Engine.xml:4 @@ -27522,8 +27573,8 @@ msgstr "" "else:\n" " simulate_physics()\n" "[/codeblock]\n" -"更多信息请参阅文档中[url=https://docs.godotengine.org/en/3.4/tutorials/misc/" -"running_code_in_the_editor.html]在编辑器中运行代码[/url]。\n" +"更多信息请参阅文档中[url=https://docs.godotengine.org/zh_CN/stable/tutorials/" +"misc/running_code_in_the_editor.html]在编辑器中运行代码[/url]。\n" "[b]注意:[/b]要检测脚本是否从编辑器[i]构建[/i]中运行(例如按[code]F5[/code]" "时),请使用带有[code]\"editor\"[/code]参数的[method OS.has_feature]代替。" "[code]OS.has_feature(\"editor\")[/code]当代码在编辑器中运行和从编辑器中运行项" @@ -27644,14 +27695,15 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/3d/" "environment_and_post_processing.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/3d/" +"https://docs.godotengine.org/zh_CN/stable/tutorials/3d/" "environment_and_post_processing.html" #: doc/classes/Environment.xml:16 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/3d/high_dynamic_range.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/3d/high_dynamic_range.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/3d/high_dynamic_range." +"html" #: doc/classes/Environment.xml:17 doc/classes/Material.xml:10 #: doc/classes/Mesh.xml:10 doc/classes/MeshInstance.xml:10 @@ -28545,7 +28597,7 @@ msgstr "" " file.close()\n" " return content\n" "[/codeblock]\n" -"在上面的例子中,文件将被保存在[url=https://docs.godotengine.org/en/3.4/" +"在上面的例子中,文件将被保存在[url=https://docs.godotengine.org/zh_CN/stable/" "tutorials/io/data_paths.html]数据路径[/url]文件中指定的用户数据文件夹中。\n" "[b]注意:[/b] 要在导出后访问项目资源,建议使用[ResourceLoader]而不是" "[File]API,因为有些文件被转换为引擎特定的格式,其原始源文件可能不存在于导出的" @@ -28735,8 +28787,8 @@ msgid "" "timestamp can be converted to datetime by using [method OS." "get_datetime_from_unix_time]." msgstr "" -"返回unix格式的时间戳[code]file[/code]为文件的最后修改时间,或者返回一个[字符" -"串]\"ERROR IN [code]file[/code]\"。这个unix时间戳可以通过使用[method OS." +"返回unix格式的时间戳[code]file[/code]为文件的最后修改时间,或者返回一个" +"[String]\"ERROR IN [code]file[/code]\"。这个unix时间戳可以通过使用[method OS." "get_datetime_from_unix_time]转换为数据时间。" #: doc/classes/File.xml:165 @@ -29221,7 +29273,7 @@ msgstr "当文件存在时,对话框会发出警告。" msgid "" "The dialog only allows accessing files under the [Resource] path " "([code]res://[/code])." -msgstr "该对话框只允许访问[资源]路径下的文件([code]res://[/code])。" +msgstr "该对话框只允许访问[Resource]路径下的文件([code]res://[/code])。" #: doc/classes/FileDialog.xml:121 msgid "" @@ -29524,16 +29576,16 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/plugins/gdnative/gdnative-c-" "example.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/plugins/gdnative/gdnative-c-" -"example.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/plugins/gdnative/" +"gdnative-c-example.html" #: modules/gdnative/doc_classes/GDNativeLibrary.xml:11 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/plugins/gdnative/gdnative-cpp-" "example.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/plugins/gdnative/gdnative-cpp-" -"example.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/plugins/gdnative/" +"gdnative-cpp-example.html" #: modules/gdnative/doc_classes/GDNativeLibrary.xml:17 msgid "" @@ -29619,17 +29671,17 @@ msgid "" "set_script] extends an existing object, if that object's class matches one " "of the script's base classes." msgstr "" -"用GDScript编程语言实现的脚本。该脚本扩展了实例化该对象的所有对象的功能。\n" -"[method new]创建脚本的新实例。如果该对象的类与脚本的基类之一匹配,则[method " -"Object.set_script]会扩展该对象。" +"用GDScript编程语言实现的脚本。该脚本扩展了实例化该对象后其所有对象的功能。\n" +"[method new] 创建脚本的新实例。如果一个对象的类与脚本的基类之一匹配,则 " +"[method Object.set_script] 会扩展该对象。" #: modules/gdscript/doc_classes/GDScript.xml:11 msgid "" "https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/index." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/index." -"html" +"https://docs.godotengine.org/zh_CN/stable/getting_started/scripting/gdscript/" +"index.html" #: modules/gdscript/doc_classes/GDScript.xml:17 msgid "Returns byte code for the script source code." @@ -30717,12 +30769,14 @@ msgid "" "lighting, but the resulting lightmap will not be saved. Useful for emissive " "only materials or shadow casters." msgstr "" +"当禁用时,计算间接光照时将考虑网格,但产生的光照贴图不会被保存。适用于仅有发" +"光材质或阴影投射器。" #: doc/classes/GeometryInstance.xml:46 msgid "" "Scale factor for the generated baked lightmap. Useful for adding detail to " "certain mesh instances." -msgstr "" +msgstr "生成的烘焙光照贴图的缩放系数。对增加某些网格实例的细节很有用。" #: doc/classes/GeometryInstance.xml:49 msgid "" @@ -30826,12 +30880,14 @@ msgid "" "Will allow the GeometryInstance to be used when baking lights using a " "[GIProbe] or [BakedLightmap]." msgstr "" +"将允许在使用[GIProbe]或[BakedLightmap]进行灯光烘焙时使用GeometryInstance几何" +"实例。" #: doc/classes/GeometryInstance.xml:106 msgid "" "Unused in this class, exposed for consistency with [enum VisualServer." "InstanceFlags]." -msgstr "" +msgstr "在此类中未使用,公开以与 [enum VisualServer.InstanceFlags] 保持一致。" #: doc/classes/GIProbe.xml:4 msgid "Real-time global illumination (GI) probe." @@ -30850,26 +30906,42 @@ msgid "" "be turned down in exchange for better performance in the [ProjectSettings] " "using [member ProjectSettings.rendering/quality/voxel_cone_tracing/" "high_quality].\n" +"[b]Procedural generation:[/b] [GIProbe] can be baked in an exported project, " +"which makes it suitable for procedurally generated or user-built levels as " +"long as all the geometry is generated in advance.\n" +"[b]Performance:[/b] [GIProbe] is relatively demanding on the GPU and is not " +"suited to low-end hardware such as integrated graphics (consider " +"[BakedLightmap] instead). To provide a fallback for low-end hardware, " +"consider adding an option to disable [GIProbe] in your project's options " +"menus. A [GIProbe] node can be disabled by hiding it.\n" "[b]Note:[/b] Meshes should have sufficiently thick walls to avoid light " "leaks (avoid one-sided walls). For interior levels, enclose your level " -"geometry in a sufficiently large box and bridge the loops to close the " -"mesh.\n" +"geometry in a sufficiently large box and bridge the loops to close the mesh. " +"To further prevent light leaks, you can also strategically place temporary " +"[MeshInstance] nodes with [member GeometryInstance.use_in_baked_light] " +"enabled. These temporary nodes can then be hidden after baking the [GIProbe] " +"node.\n" "[b]Note:[/b] Due to a renderer limitation, emissive [ShaderMaterial]s cannot " "emit light when used in a [GIProbe]. Only emissive [SpatialMaterial]s can " "emit light in a [GIProbe]." msgstr "" -"[GIProbe]用于为场景提供高质量的实时间接光。它们预先计算发光对象的效果和静态几" -"何图形的效果,以实时模拟复杂光的行为。 [GIProbe]必须先烘烤才能使用,但是一旦" -"烘烤,动态物体就会从它们那里接收光。此外,灯光可以是完全动态的或烘烤的。\n" -"在场景中使用[GIProbe]可能会很昂贵(占用较多资源),可以使用[member " -"ProjectSettings.rendering / quality / gi_probes / quality]降低探针的质量,以" -"换取[ProjectSettings]中更好的性能。" - -#: doc/classes/GIProbe.xml:13 +"[GIProbe]是用来为场景提供高质量的实时间接光照。它们预先计算发光物体的效果和静" +"态几何体的效果,以实时模拟复杂光线的行为。[GIProbe]在使用前需要进行烘焙,而" +"后,一旦烘焙,动态物体就会从它们那里接收光线。此外,灯光可以是完全动态的,也" +"可以是烘焙的。\n" +"在场景中使用[GIProbe]会很消耗资源,可以在[ProjectSettings]中使用[member " +"ProjectSettings.rendering/quality/voxel_cone_tracing/high_quality]来调低探头" +"的质量,以获得更好的性能。\n" +"[b]注意:[/b]网格应该有足够厚的墙以避免漏光,注,避免单面墙。对于内部关卡,将" +"你的关卡几何体包围在一个足够大的盒子里,并将环路联接起来以关闭网格。\n" +"[b]注意:[/b]由于渲染器的限制,在[GIProbe]中使用发光的[ShaderMaterial]时不能" +"发光。只有发射型的[SpatialMaterial]可以在[GIProbe]中发射光线。" + +#: doc/classes/GIProbe.xml:15 msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/gi_probes.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/3d/gi_probes.html" +msgstr "https://docs.godotengine.org/zh_CN/stable/tutorials/3d/gi_probes.html" -#: doc/classes/GIProbe.xml:22 +#: doc/classes/GIProbe.xml:24 #, fuzzy msgid "" "Bakes the effect from all [GeometryInstance]s marked with [member " @@ -30879,20 +30951,24 @@ msgid "" "light, this will generate a [MultiMesh] that has a cube representing each " "solid cell with each cube colored to the cell's albedo color. This can be " "used to visualize the [GIProbe]'s data and debug any issues that may be " -"occurring." -msgstr "" -"从所有标有[constant GeometryInstance3D.GI_MODE_BAKED]的[GeometryInstance3D]和" -"标有[constant Light3D.BAKE_DYNAMIC]或[constant Light3D.BAKE_STATIC]的" -"[Light3D]烘烤效果。如果[code]create_visual_debug[/code]是[code]true[/code]," -"在烘烤光线之后,这将生成一个[MultiMesh],其中有一个立方体代表每个实体单元,每" -"个立方体的颜色与该单元的反照率颜色一致。这可以用来可视化[GIProbe]的数据并调试" -"任何可能发生的问题。" - -#: doc/classes/GIProbe.xml:28 +"occurring.\n" +"[b]Note:[/b] [method bake] works from the editor and in exported projects. " +"This makes it suitable for procedurally generated or user-built levels. " +"Baking a [GIProbe] generally takes from 5 to 20 seconds in most scenes. " +"Reducing [member subdiv] can speed up baking." +msgstr "" +"烘焙所有标有 [member GeometryInstance.use_in_baked_light] 的 " +"[GeometryInstance] 和标有 [constant Light.BAKE_INDIRECT] 或 [constant Light." +"BAKE_ALL] 的 [Light] 的效果。如果[code]create_visual_debug[/code]是" +"[code]true[/code],在烘焙光线后,这将生成一个[MultiMesh],其中有一个立方体代" +"表每个实体单元,每个立方体的颜色与该单元的反射颜色一致。这可以用来可视化" +"[GIProbe]的数据,以调试任何可能发生的问题。" + +#: doc/classes/GIProbe.xml:31 msgid "Calls [method bake] with [code]create_visual_debug[/code] enabled." msgstr "在启用 [code]create_visual_debug[/code] 的情况下调用 [method bake] 。" -#: doc/classes/GIProbe.xml:34 +#: doc/classes/GIProbe.xml:37 msgid "" "Offsets the lookup of the light contribution from the [GIProbe]. This can be " "used to avoid self-shadowing, but may introduce light leaking at higher " @@ -30901,30 +30977,33 @@ msgid "" "[b]Note:[/b] [code]bias[/code] should usually be above 1.0 as that is the " "size of the voxels." msgstr "" +"从 [GIProbe] 偏移光贡献的查找。这可用于避免自阴影,但可能会在较高的值下引入漏" +"光。这个和 [member normal_bias] 应该使用,以尽量减少自阴影和漏光。\n" +"[b]注意:[/b] [code]bias[/code] 通常应该在 1.0 以上,因为这是体素的大小。" -#: doc/classes/GIProbe.xml:38 +#: doc/classes/GIProbe.xml:41 msgid "" "[i]Deprecated.[/i] This property has been deprecated due to known bugs and " "no longer has any effect when enabled." -msgstr "" +msgstr "[i]已废弃[/i]由于已知的错误,这个属性已被废弃,启用后不再有任何效果。" -#: doc/classes/GIProbe.xml:41 +#: doc/classes/GIProbe.xml:44 msgid "The [GIProbeData] resource that holds the data for this [GIProbe]." msgstr "持有此[GIProbe]的数据的[GIProbeData]资源。" -#: doc/classes/GIProbe.xml:44 +#: doc/classes/GIProbe.xml:47 msgid "" "The maximum brightness that the [GIProbe] will recognize. Brightness will be " "scaled within this range." -msgstr "" +msgstr "[GIProbe] 能识别的最大亮度。亮度将在此范围内缩放。" -#: doc/classes/GIProbe.xml:47 +#: doc/classes/GIProbe.xml:50 msgid "" "Energy multiplier. Makes the lighting contribution from the [GIProbe] " "brighter." -msgstr "" +msgstr "能量倍增器。使 [GIProbe] 的照明贡献更亮。" -#: doc/classes/GIProbe.xml:50 +#: doc/classes/GIProbe.xml:53 msgid "" "The size of the area covered by the [GIProbe]. If you make the extents " "larger without increasing the subdivisions with [member subdiv], the size of " @@ -30933,25 +31012,25 @@ msgstr "" "[GIProbe]所覆盖区域的大小。如果你让外延变大,而没有用[member subdiv]增加细" "分,每个单元的大小将增加,并导致低细节照明。" -#: doc/classes/GIProbe.xml:53 +#: doc/classes/GIProbe.xml:56 msgid "" "If [code]true[/code], ignores the sky contribution when calculating lighting." msgstr "如果为[code]true[/code],在计算照明时忽略天空的贡献。" -#: doc/classes/GIProbe.xml:56 +#: doc/classes/GIProbe.xml:59 msgid "" "Offsets the lookup into the [GIProbe] based on the object's normal " "direction. Can be used to reduce some self-shadowing artifacts." msgstr "" "根据物体的法线方向,对[GIProbe]的查找进行偏移。可以用来减少一些自阴影的假象。" -#: doc/classes/GIProbe.xml:59 +#: doc/classes/GIProbe.xml:62 msgid "" "How much light propagates through the probe internally. A higher value " "allows light to spread further." msgstr "光在探针内部传播的程度。一个较高的值可以使光传播得更远。" -#: doc/classes/GIProbe.xml:62 +#: doc/classes/GIProbe.xml:65 msgid "" "Number of times to subdivide the grid that the [GIProbe] operates on. A " "higher number results in finer detail and thus higher visual quality, while " @@ -30960,7 +31039,7 @@ msgstr "" "对 [GIProbe] 所操作的网格进行细分的次数。数字越大,细节就越精细,因而视觉质量" "就越高,而数字越小,性能就越好。" -#: doc/classes/GIProbe.xml:67 +#: doc/classes/GIProbe.xml:70 msgid "" "Use 64 subdivisions. This is the lowest quality setting, but the fastest. " "Use it if you can, but especially use it on lower-end hardware." @@ -30968,23 +31047,24 @@ msgstr "" "使用64分区,这是最低的质量设置,但也是最快的。如果你能使用它,特别是在低端硬" "件上使用它。" -#: doc/classes/GIProbe.xml:70 +#: doc/classes/GIProbe.xml:73 msgid "Use 128 subdivisions. This is the default quality setting." msgstr "使用128个分区。这是默认的质量设置。" -#: doc/classes/GIProbe.xml:73 +#: doc/classes/GIProbe.xml:76 msgid "Use 256 subdivisions." msgstr "使用256个分区。" -#: doc/classes/GIProbe.xml:76 +#: doc/classes/GIProbe.xml:79 +#, fuzzy msgid "" "Use 512 subdivisions. This is the highest quality setting, but the slowest. " -"On lower-end hardware this could cause the GPU to stall." +"On lower-end hardware, this could cause the GPU to stall." msgstr "" "使用512个分区。这是最高的质量设置,但也是最慢的。在低端硬件上,这可能会导致" "GPU停顿。" -#: doc/classes/GIProbe.xml:79 +#: doc/classes/GIProbe.xml:82 msgid "Represents the size of the [enum Subdiv] enum." msgstr "代表 [enum Subdiv] 举的大小。" @@ -30992,7 +31072,7 @@ msgstr "代表 [enum Subdiv] 举的大小。" msgid "" "The [Color] of the light. Defaults to white. A black color causes the light " "to have no effect." -msgstr "" +msgstr "灯的[Color]。默认为白色。黑色会导致灯光无效。" #: modules/gltf/doc_classes/GLTFLight.xml:16 msgid "" @@ -31003,6 +31083,9 @@ msgid "" "brightness. When creating a Godot [SpotLight], the ratio between the inner " "and outer cone angles is used to calculate the attenuation of the light." msgstr "" +"聚光灯中圆锥体的内角。必须小于或等于外锥角。\n" +"在这个角度内,光线处于全亮状态。在内锥角和外锥角之间,有一个从全亮到零亮度的" +"过渡。当创建Godot [SpotLight]时,内锥角和外锥角之间的比率被用来计算光的衰减。" #: modules/gltf/doc_classes/GLTFLight.xml:20 msgid "" @@ -31011,6 +31094,8 @@ msgid "" "directional lights. When creating a Godot light, this value is converted to " "a unitless multiplier." msgstr "" +"光的强度。对于点光源和聚光灯,用烛光candelas(流明/立体光)表示;对于定向灯," +"用勒克斯lux(流明/平方米)表示。在创建Godot灯时,这个值被转换为无单位的乘数。" #: modules/gltf/doc_classes/GLTFLight.xml:23 msgid "" @@ -31022,6 +31107,10 @@ msgid "" "directions. When creating a Godot [SpotLight], the outer cone angle is used " "as the angle of the spotlight." msgstr "" +"聚光灯下圆锥体的外角。必须大于或等于内角。\n" +"在这个角度,光线会下降到零亮度。在内锥角和外锥角之间,有一个从全亮到零亮度的" +"过渡。如果这个角度是一个半圆,那么聚光灯就会向所有方向发射。创建Godot " +"[SpotLight]时,外锥角被用作聚光灯的角度。" #: modules/gltf/doc_classes/GLTFLight.xml:27 msgid "" @@ -31029,6 +31118,8 @@ msgid "" "with no range defined behave like physical lights (which have infinite " "range). When creating a Godot light, the range is clamped to 4096." msgstr "" +"灯光的范围,超过这个范围灯光无效。没有定义范围的GLTF灯光的行为与无限范围的物" +"理灯光一样。当创建Godot灯光时,范围限制在4096。" #: modules/gltf/doc_classes/GLTFLight.xml:30 msgid "" @@ -31036,6 +31127,8 @@ msgid "" "and \"directional\", which correspond to Godot's [OmniLight], [SpotLight], " "and [DirectionalLight] respectively." msgstr "" +"灯光的类型。Godot接受的值是 \"point\"、\"spot\"和 \"directional\",分别对应于" +"Godot的[OmniLight]、[SpotLight]和[DirectionalLight]。" #: modules/mono/doc_classes/GodotSharp.xml:4 msgid "Bridge between Godot and the Mono runtime (Mono-enabled builds only)." @@ -31156,9 +31249,8 @@ msgid "Returns the interpolated color specified by [code]offset[/code]." msgstr "返回由偏移[code]offset[/code]指定的插值颜色。" #: doc/classes/Gradient.xml:51 -#, fuzzy msgid "Removes the color at the index [code]point[/code]." -msgstr "移除索引[code]offset[/code]偏移处的颜色。" +msgstr "移除索引[code]point[/code]处的颜色。" #: doc/classes/Gradient.xml:59 msgid "Sets the color of the ramp color at index [code]point[/code]." @@ -31169,14 +31261,12 @@ msgid "Sets the offset for the ramp color at index [code]point[/code]." msgstr "为索引[code]point[/code]处的斜面颜色设置偏移。" #: doc/classes/Gradient.xml:73 -#, fuzzy msgid "Gradient's colors returned as a [PoolColorArray]." -msgstr "渐变的颜色以[PackedColorArray]的形式返回。" +msgstr "渐变颜色以 [PoolColorArray] 返回。" #: doc/classes/Gradient.xml:76 -#, fuzzy msgid "Gradient's offsets returned as a [PoolRealArray]." -msgstr "渐变的偏移量以[PackedFloat32Array]形式返回。" +msgstr "渐变的偏移量以 [PoolRealArray] 返回。" #: doc/classes/GradientTexture.xml:4 msgid "Gradient-filled texture." @@ -31190,9 +31280,9 @@ msgid "" "gradient, but instead an interpolation of samples obtained from the gradient " "at fixed steps (see [member width])." msgstr "" -"渐变材质GradientTexture使用一个[Gradient数据。梯度将使用从梯度获得的颜色从左" -"到右填充。这意味着纹理不一定代表梯度的精确拷贝,而是以固定的步长从梯度中获得" -"的样本插值(见[member width])。" +"GradientTexture使用[Gradient]来填充纹理数据。渐变将使用从中获得的颜色从左到右" +"填充。这意味着纹理不一定代表渐变的精确副本,而是以固定的步长从渐变中获得的样" +"本的插值,见[member width]。" #: doc/classes/GradientTexture.xml:15 msgid "The [Gradient] that will be used to fill the texture." @@ -31282,7 +31372,6 @@ msgstr "" "1\" }[/code]." #: doc/classes/GraphEdit.xml:70 -#, fuzzy msgid "" "Gets the [HBoxContainer] that contains the zooming and grid snap controls in " "the top left of the graph. You can use this method to reposition the toolbar " @@ -31291,10 +31380,10 @@ msgid "" "may cause a crash. If you wish to hide it or any of its children, use their " "[member CanvasItem.visible] property." msgstr "" -"获取包含图形左上方的缩放和网格快照控制的[HBoxContainer]。\n" -"警告。这个函数的预期用途是允许你重新定位或添加你自己的自定义控件到容器中。这" -"是一个内部控件,因此不应该被释放。如果你想隐藏它或它的任何子控件,请使用它们" -"的 [member CanvasItem.visible] 属性。" +"获取包含图形左上角的缩放和网格捕捉控件的 [HBoxContainer]。你可以使用此方法重" +"新定位工具栏或向其添加自定义控件。\n" +"[b]警告:[/b] 这是一个必需的内部节点,删除和释放它可能会导致崩溃。如果你希望" +"隐藏它或其任何子项,请使用它们的 [member CanvasItem.visible] 属性。" #: doc/classes/GraphEdit.xml:81 msgid "" @@ -31345,20 +31434,18 @@ msgid "Sets the specified [code]node[/code] as the one selected." msgstr "选中一个特定的节点[code]node[/code]." #: doc/classes/GraphEdit.xml:136 -#, fuzzy msgid "If [code]true[/code], the minimap is visible." -msgstr "如果[code]true[/code],按钮的形状是可见的。" +msgstr "如果[code]true[/code],小图是可见的。" #: doc/classes/GraphEdit.xml:139 -#, fuzzy msgid "The opacity of the minimap rectangle." -msgstr "选择的矩形的轮廓颜色。" +msgstr "小图矩形的不透明度。" #: doc/classes/GraphEdit.xml:142 msgid "" "The size of the minimap rectangle. The map itself is based on the size of " "the grid area and is scaled to fit this rectangle." -msgstr "" +msgstr "小图矩形的大小。地图自身基于网格区域的大小,并被缩放以适应这个矩形。" #: doc/classes/GraphEdit.xml:146 msgid "" @@ -31376,6 +31463,7 @@ msgid "" "If [code]true[/code], makes a label with the current zoom level visible. The " "zoom value is displayed in percents." msgstr "" +"如果[code]true[/code],则使当前缩放级别的标签可见。缩放值以百分比显示。" #: doc/classes/GraphEdit.xml:155 msgid "The snapping distance in pixels." @@ -31390,14 +31478,12 @@ msgid "The current zoom value." msgstr "当前缩放值。" #: doc/classes/GraphEdit.xml:164 -#, fuzzy msgid "The upper zoom limit." -msgstr "当前缩放值。" +msgstr "缩放上限。" #: doc/classes/GraphEdit.xml:167 -#, fuzzy msgid "The lower zoom limit." -msgstr "触发的信号。" +msgstr "缩放下限。" #: doc/classes/GraphEdit.xml:170 msgid "The step of each zoom level." @@ -31434,9 +31520,8 @@ msgid "" msgstr "当用户将输出端口连接到图形的空位时发出。" #: doc/classes/GraphEdit.xml:211 -#, fuzzy msgid "Emitted when the user presses [code]Ctrl + C[/code]." -msgstr "当用户按下[kbd]Ctrl + C[/kbd]时发出。" +msgstr "当用户按[code]Ctrl + C[/code]时触发。" #: doc/classes/GraphEdit.xml:216 msgid "Emitted when a GraphNode is attempted to be removed from the GraphEdit." @@ -31462,9 +31547,8 @@ msgid "Emitted when a GraphNode is selected." msgstr "当图形节点GraphNode被选择时发出。" #: doc/classes/GraphEdit.xml:246 -#, fuzzy msgid "Emitted when the user presses [code]Ctrl + V[/code]." -msgstr "当用户按下[kbd]Ctrl + V[/kbd]时发出。" +msgstr "当用户按下[code]Ctrl + V[/code]时触发。" #: doc/classes/GraphEdit.xml:252 msgid "" @@ -31886,7 +31970,6 @@ msgid "" msgstr "网格容器,用于在类似网格的布局中排列Control派生的子项。" #: doc/classes/GridContainer.xml:7 -#, fuzzy msgid "" "GridContainer will arrange its Control-derived children in a grid like " "structure, the grid columns are specified using the [member columns] " @@ -31899,19 +31982,20 @@ msgid "" "[b]Note:[/b] GridContainer only works with child nodes inheriting from " "Control. It won't rearrange child nodes inheriting from Node2D." msgstr "" -"网格容器将其子项排列在类似网格的结构中,网格列使用 [member columns] 属性指" -"定,行数等于容器中的子项数除以列数。例如,如果容器有 5 个子项和 2 列,则容器" -"中有 3 行。\n" -"请注意,网格布局将为容器的每个大小保留列和行,并且空列将自动展开。" +"GridContainer将把它的Control派生的子级排布在一个类似网格的结构中,网格列是" +"[member columns]属性指定,行的数量等于容器中子级的数量除以列的数量。例如,如" +"果容器有5个子级,2个列,容器中就会有3行。\n" +"请注意,网格布局将保留每个大小的容器的列和行,并且空列将自动扩展。\n" +"[b]注意:[/b] GridContainer只对继承自Control的子节点生效。它不会重新排列继承" +"自Node2D的子节点。" #: doc/classes/GridContainer.xml:18 -#, fuzzy msgid "" "The number of columns in the [GridContainer]. If modified, [GridContainer] " "reorders its Control-derived children to accommodate the new layout." msgstr "" -"在[GridContainer]中的列的数量。如果修改,[GridContainer]会重新排列它的子节" -"点,以适应新的布局。" +"在[GridContainer]中的列的数量。如果修改,[GridContainer]会重新排列其Control派" +"生的子代,以适应新的布局。" #: doc/classes/GridContainer.xml:26 msgid "The horizontal separation of children nodes." @@ -31926,7 +32010,6 @@ msgid "Node for 3D tile-based maps." msgstr "基于3D贴图格地图(3D tile-based maps)的节点。" #: modules/gridmap/doc_classes/GridMap.xml:7 -#, fuzzy msgid "" "GridMap lets you place meshes on a grid interactively. It works both from " "the editor and from scripts, which can help you create in-game level " @@ -31943,18 +32026,22 @@ msgid "" "light not affect the first layer, the whole GridMap won't be lit by the " "light in question." msgstr "" -"GridMap可以让你交互式地将网格放在一个网格上。它既可以从编辑器中工作,也可以从" -"脚本中工作,这可以帮助你在游戏中创建关卡编辑器。\n" -"GridMaps使用一个[MeshLibrary],其中包含了一个贴图格的列表。每一个瓦片都是一个" -"带有材质的网格,加上可选的碰撞和导航形状。\n" -"一个GridMap包含一个单元格的集合。每个网格单元指的是[MeshLibrary]中的一个贴图" -"格。地图中的所有单元都有相同的尺寸。\n" -"在内部,一个GridMap被分割成一个稀疏的八边形集合,以便有效地进行渲染和物理处" -"理。每个八角形都有相同的尺寸,可以包含多个单元。" +"GridMap允许你以交互方式将meshes网格放置在网格上。它既可以在编辑器中进行,也可" +"以从脚本中进行,这可以帮助你在游戏中创建关卡编辑器。\n" +"GridMaps使用[MeshLibrary],其中包含了一个图块的列表。每一个图块都是一个带有材" +"质的网格,加上可选的碰撞和导航形状。\n" +"GridMap包含一个单元格的集合。每个网格单元指的是[MeshLibrary]中的一个图块。地" +"图中的所有单元都有相同的尺寸。\n" +"在内部,GridMap被分割成一个松散的八边形集合,以便有效地进行渲染和物理处理。每" +"个八角形都有相同的尺寸,可以包含多个单元。\n" +"[b]注意:[/b] GridMap没有扩展[VisualInstance],因此不能基于[member " +"VisualInstance.layer]进行隐藏或剔除遮挡。如果你让灯光不影响第一层,整个" +"GridMap就不会被相关的灯光照亮。" #: modules/gridmap/doc_classes/GridMap.xml:14 msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/using_gridmaps.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/3d/using_gridmaps.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/3d/using_gridmaps.html" #: modules/gridmap/doc_classes/GridMap.xml:22 msgid "Clear all cells." @@ -31965,23 +32052,22 @@ msgid "" "Returns an array of [ArrayMesh]es and [Transform] references of all bake " "meshes that exist within the current GridMap." msgstr "" +"返回当前GridMap中存在的所有烘焙网格的[ArrayMesh]和[Transform]引用的数组。" #: modules/gridmap/doc_classes/GridMap.xml:48 -#, fuzzy msgid "" "The [MeshLibrary] item index located at the grid-based X, Y and Z " "coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be " "returned." msgstr "" -"位于给定网格坐标的[MeshLibrary]项的索引。如果该单元格是空的,将返回[constant " -"INVALID_CELL_ITEM]。" +"[MeshLibrary] 项目索引位于基于网格的 X、Y 和 Z 坐标处。如果单元格为空,则返" +"回 [constant INVALID_CELL_ITEM]。" #: modules/gridmap/doc_classes/GridMap.xml:57 -#, fuzzy msgid "" "The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is " "returned if the cell is empty." -msgstr "给定网格坐标处的单元格方向。如果单元格为空,则返回 [code]-1[/code]。" +msgstr "单元格在基于网格的 X、Y 和 Z 坐标处的方向。如果单元格为空,则返回 -1。" #: modules/gridmap/doc_classes/GridMap.xml:64 msgid "Returns an individual bit on the [member collision_layer]." @@ -32011,7 +32097,6 @@ msgid "" msgstr "返回一个网格单元在GridMap本地坐标空间中的位置。" #: modules/gridmap/doc_classes/GridMap.xml:116 -#, fuzzy msgid "" "Sets the mesh index for the cell referenced by its grid-based X, Y and Z " "coordinates.\n" @@ -32020,9 +32105,9 @@ msgid "" "Optionally, the item's orientation can be passed. For valid orientation " "values, see [method Basis.get_orthogonal_index]." msgstr "" -"设置以网格坐标为参考的单元格的网格索引。\n" -"一个负的项目索引,例如[constant INVALID_CELL_ITEM]会清除该单元。\n" -"或者,可以传递项目的方向。关于有效的方向值,请参阅[method Basis." +"设置由基于网格的 X、Y 和 Z 坐标引用的单元格的网格索引。\n" +"负的项目索引将清除单元格,例如 [constant INVALID_CELL_ITEM]。\n" +"或者,可以传递项目的方向。相关有效的方向值,请参阅 [method Basis." "get_orthogonal_index]。" #: modules/gridmap/doc_classes/GridMap.xml:135 @@ -32094,6 +32179,9 @@ msgid "" "layers-and-masks]Collision layers and masks[/url] in the documentation for " "more information." msgstr "" +"此 GridMap 检测碰撞的物理层。参阅 [url=https://docs.godotengine.org/zh_CN/" +"stable/tutorials/physics/physics_introduction.html#collision-layers-and-" +"masks]碰撞层和掩码[/url ] 文档,从中获取更多信息。" #: modules/gridmap/doc_classes/GridMap.xml:184 msgid "The assigned [MeshLibrary]." @@ -32102,7 +32190,7 @@ msgstr "指定的[MeshLibrary]。" #: modules/gridmap/doc_classes/GridMap.xml:187 msgid "" "Controls whether this GridMap will be baked in a [BakedLightmap] or not." -msgstr "" +msgstr "控制此 GridMap 是否会在 [BakedLightmap] 中烘焙。" #: modules/gridmap/doc_classes/GridMap.xml:194 msgid "Emitted when [member cell_size] changes." @@ -32212,8 +32300,8 @@ msgid "" "Starts a new hash computation of the given [code]type[/code] (e.g. [constant " "HASH_SHA256] to start computation of a SHA-256)." msgstr "" -"开始对给定的 [code] type[/code] (例如 [恒定HASH_SHA256] 进行新的哈希计算, " -"以开始计算 SHA-256) 。" +"开始对给定的 [code] type[/code] (例如 [constant HASH_SHA256] 进行新的哈希计" +"算, 以开始计算 SHA-256) 。" #: doc/classes/HashingContext.xml:52 msgid "Updates the computation with the given [code]chunk[/code] of data." @@ -32244,15 +32332,13 @@ msgid "The horizontal space between the [HBoxContainer]'s elements." msgstr "[HBoxContainer]的元素之间的水平空间。" #: doc/classes/HeightMapShape.xml:4 -#, fuzzy msgid "Height map shape for 3D physics." -msgstr "三维物理的高度图形状(仅限子弹)。" +msgstr "3D 物理的高度图形状。" #: doc/classes/HeightMapShape.xml:7 -#, fuzzy msgid "" "Height map shape resource, which can be added to a [PhysicsBody] or [Area]." -msgstr "高度图形状资源,它可以被添加到[PhysicsBody3D]或[Area3D]。" +msgstr "高度图形状资源,可以添加到[PhysicsBody]或[Area]中。" #: doc/classes/HeightMapShape.xml:15 msgid "" @@ -32274,18 +32360,17 @@ msgid "" msgstr "高度图数据的宽度。更改此设置将调整 [member map_data] 的大小。" #: doc/classes/HingeJoint.xml:4 -#, fuzzy msgid "A hinge between two 3D PhysicsBodies." -msgstr "两个 3D 实体之间的铰链。" +msgstr "两个 3D 物理体之间的铰链。" #: doc/classes/HingeJoint.xml:7 -#, fuzzy msgid "" "A HingeJoint normally uses the Z axis of body A as the hinge axis, another " "axis can be specified when adding it manually though. See also " "[Generic6DOFJoint]." msgstr "" -"HingeJoint3D 通常使用主体 A 的 Z 轴作为铰链轴,但手动添加时可以指定其他轴。" +"铰链关节通常使用物体 A 的 Z 轴作为铰链轴,但手动添加时可以指定另一个轴。参阅 " +"[Generic6DOFJoint]。" #: doc/classes/HingeJoint.xml:16 doc/classes/SpriteBase3D.xml:21 msgid "Returns the value of the specified flag." @@ -32363,7 +32448,7 @@ msgstr "两个物体向不同方向移动时被拉回到一起的速度。" #: doc/classes/HMACContext.xml:4 msgid "Used to create an HMAC for a message using a key." -msgstr "" +msgstr "用来为一个使用密钥的信息创建HMAC。" #: doc/classes/HMACContext.xml:7 msgid "" @@ -32414,18 +32499,65 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] Not available in HTML5 exports." msgstr "" +"HMACContext类对于高级的HMAC用例非常有用,例如流式消息,因为它支持在一段时间内" +"创建消息,而不是一次性提供。\n" +"[codeblock]\n" +"extends Node\n" +"var ctx = HMACContext.new()\n" +"\n" +"func _ready():\n" +" var key = \"supersecret\".to_utf8()\n" +" var err = ctx.start(HashingContext.HASH_SHA256, key)\n" +" assert(err == OK)\n" +" var msg1 = \"this is \".to_utf8()\n" +" var msg2 = \"vewy vewy secret\".to_utf8()\n" +" err = ctx.update(msg1)\n" +" assert(err == OK)\n" +" err = ctx.update(msg2)\n" +" assert(err == OK)\n" +" var hmac = ctx.finish()\n" +" print(hmac.hex_encode())\n" +"[/codeblock]\n" +"而在C#中,我们可以使用下面的方法。\n" +"[codeblock]\n" +"using Godot;\n" +"using System;\n" +"using System.Diagnostics;\n" +"\n" +"public class CryptoNode : Node\n" +"{\n" +" private HMACContext ctx = new HMACContext();\n" +" public override void _Ready()\n" +" {\n" +" PoolByteArray key = String(\"supersecret\").to_utf8();\n" +" Error err = ctx.Start(HashingContext.HASH_SHA256, key);\n" +" GD.Assert(err == OK);\n" +" PoolByteArray msg1 = String(\"this is \").to_utf8();\n" +" PoolByteArray msg2 = String(\"vewy vew secret\").to_utf8();\n" +" err = ctx.Update(msg1);\n" +" GD.Assert(err == OK);\n" +" err = ctx.Update(msg2);\n" +" GD.Assert(err == OK);\n" +" PoolByteArray hmac = ctx.Finish();\n" +" GD.Print(hmac.HexEncode());\n" +" }\n" +"}\n" +"[/codeblock]\n" +"[b]注意:[/b] 在HTML5导出中不可用。" #: doc/classes/HMACContext.xml:58 msgid "" "Returns the resulting HMAC. If the HMAC failed, an empty [PoolByteArray] is " "returned." -msgstr "" +msgstr "返回生成的HMAC。如果HMAC失败,将返回一个空的[PoolByteArray]。" #: doc/classes/HMACContext.xml:66 msgid "" "Initializes the HMACContext. This method cannot be called again on the same " "HMACContext until [method finish] has been called." msgstr "" +"初始化HMACContext。在[method finish]被调用之前,不能在同一个HMACContext上再次" +"调用此方法。" #: doc/classes/HMACContext.xml:73 msgid "" @@ -32433,6 +32565,8 @@ msgid "" "[method finish] is called to append [code]data[/code] to the message, but " "cannot be called until [method start] has been called." msgstr "" +"更新要进行HMAC的消息。在调用[method finish]将[code]data[/code]追加到消息中之" +"前,可以多次调用,但在调用[method start]之前不能调用。" #: doc/classes/HScrollBar.xml:4 msgid "Horizontal scroll bar." @@ -32456,9 +32590,8 @@ msgid "Displayed when the mouse cursor hovers over the decrement button." msgstr "当鼠标指针悬停在递减按钮上时显示。" #: doc/classes/HScrollBar.xml:23 doc/classes/VScrollBar.xml:27 -#, fuzzy msgid "Displayed when the decrement button is being pressed." -msgstr "当标题按钮被按下时使用的[StyleBox]。" +msgstr "在按下递减按钮时显示。" #: doc/classes/HScrollBar.xml:26 doc/classes/VScrollBar.xml:30 msgid "" @@ -32487,9 +32620,8 @@ msgid "Displayed when the mouse cursor hovers over the increment button." msgstr "当鼠标指针悬停在增量按钮上时显示。" #: doc/classes/HScrollBar.xml:41 doc/classes/VScrollBar.xml:45 -#, fuzzy msgid "Displayed when the increment button is being pressed." -msgstr "当标题按钮被按下时使用的[StyleBox]。" +msgstr "在按下增量按钮时显示。" #: doc/classes/HScrollBar.xml:44 doc/classes/VScrollBar.xml:48 msgid "Used as background of this [ScrollBar]." @@ -32531,6 +32663,9 @@ msgid "" "[b]Note:[/b] The [signal Range.changed] and [signal Range.value_changed] " "signals are part of the [Range] class which this class inherits from." msgstr "" +"水平滑块。参阅[Slider]。这个从左到右,最小到最大。\n" +"[b]注意:[/b] [signal Range.changed]和[signal Range.value_changed]信号是" +"[Range]类的一部分,该类继承自它。" #: doc/classes/HSlider.xml:18 doc/classes/VSlider.xml:22 msgid "The texture for the grabber (the draggable element)." @@ -32588,12 +32723,10 @@ msgid "The space between sides of the container." msgstr "容器两侧之间的空间。" #: doc/classes/HTTPClient.xml:4 -#, fuzzy msgid "Low-level hyper-text transfer protocol client." -msgstr "超文本传输协议客户端。" +msgstr "低级别的超文本传输协议客户端。" #: doc/classes/HTTPClient.xml:7 -#, fuzzy msgid "" "Hyper-text transfer protocol client (sometimes called \"User Agent\"). Used " "to make HTTP requests to download web content, upload files and other data " @@ -32627,30 +32760,35 @@ msgid "" "are otherwise valid. If this is a concern, you may want to use automatically " "managed certificates with a short validity period." msgstr "" -"超文本传输协议客户端(有时称为“用户代理”),可用于发出 HTTP 请求以下载 web 内" -"容、上传文件和其他数据或与各种服务通信,以及其他用例。请参阅 [HTTPRequest] 以" -"获取更高级别的替代方案。\n" -"[b]注意:[/b] 此客户端只需连接到主机一次(请参阅 [method connect_to_host])即" -"可发送多个请求。因此,采用 URL 的方法通常只采用主机后面的部分,而不是完整的 " -"URL,因为客户机已经连接到主机。请参阅 [method request] 以获取完整的示例并开始" -"使用。\n" -"[HTTPClient] 应该在多个请求之间重用,或者连接到不同的主机,而不是每个请求创建" -"一个客户端。支持 SSL 以及 SSL 服务器证书验证。2xx 范围内的 HTTP 状态码表示成" -"功,3xx 重定向(即“重试,但在这里”),4xx 请求出错,5xx 服务器端出错。\n" -"有关 HTTP 的更多信息请参阅 https://developer.mozilla.org/en-US/docs/Web/HTTP " -"(或者通过阅读 RFC 2616 追根溯源:https://tools.ietf.org/html/rfc2616)。\n" -"[b]注意:[/b] 当执行从导出到 HTML5 的项目发出的 HTTP 请求时,请记住,远程服务" -"器可能由于 [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/" -"url] 的关系而禁止来自站外的请求。如果服务器是你自己搭建的,可以通过添加 " -"[code]Access-Control-Allow-Origin: *[/code] HTTP 报头来允许站外请求。" +"超文本传输协议客户端,有时称为 \"用户代理\"。用于发出HTTP请求,以下载网络内" +"容、上传文件和其他数据,或与各种服务进行通信,以及其他情况。[b]参阅" +"[HTTPRequest]节点,以获得更高一级的替代方案[/b] 。\n" +"[b]注意:[/b]这个客户端只需要连接主机一次就可以发送多个请求,参阅[method " +"connect_to_host]。因此,获取URL的方法通常只获取主机后面的部分,而不是完整的" +"URL,因为客户端已经连接到了一个主机。参阅method request]以获得完整的例子,并" +"开始使用。\n" +"[HTTPClient]应该在多个请求中重复使用,或者连接到不同的主机,而不是每个请求创" +"建一个客户端。它支持SSL和SSL服务器证书验证。HTTP状态代码在2xx范围内表示成功," +"3xx表示重定向,即 \"重试,但在这里\",4xx表示请求出了问题,5xx表示服务器端出" +"了问题。\n" +"关于HTTP的更多信息,参阅https://developer.mozilla.org/en-US/docs/Web/HTTP,或" +"者阅读RFC 2616,直接从源头上了解:https://tools.ietf.org/html/rfc2616。\n" +"[b]注意:[/b] 当从导出到HTML5的项目中执行HTTP请求时,请记住远程服务器可能由于" +"[url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/url]而不允" +"许来自国外的请求。如果是你托管的服务器,应该修改其后台,为其添加 " +"[code]Access-Control-Allow-Origin:*[/code] HTTP头。\n" +"[b]注意:[/b] SSL/TLS支持目前仅限于TLS 1.0、TLS 1.1和TLS 1.2。试图连接到一个" +"只有TLS 1.3的服务器将返回一个错误。\n" +"[b]警告:[/b] 目前不支持SSL/TLS证书撤销和证书绑定。撤销的证书只要在其他方面是" +"有效的,就可以接受。如果这是个问题,你可能想使用自动管理的有效期短的证书。" #: doc/classes/HTTPClient.xml:16 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/networking/http_client_class." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/networking/http_client_class." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/networking/" +"http_client_class.html" #: doc/classes/HTTPClient.xml:17 doc/classes/HTTPRequest.xml:71 #: doc/classes/StreamPeerSSL.xml:10 @@ -32658,8 +32796,8 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/networking/ssl_certificates." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/networking/ssl_certificates." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/networking/" +"ssl_certificates.html" #: doc/classes/HTTPClient.xml:23 msgid "Closes the current connection, allowing reuse of this [HTTPClient]." @@ -32833,7 +32971,6 @@ msgstr "" "http_escape]。" #: doc/classes/HTTPClient.xml:146 -#, fuzzy msgid "" "Sends a raw request to the connected host.\n" "The URL parameter is usually just the part after the host, so for " @@ -32846,11 +32983,14 @@ msgid "" "Method].\n" "Sends the body data raw, as a byte array and does not encode it in any way." msgstr "" -"向连接的服务器发送原始请求。URL 参数仅为主机名后面的部分,即请求 " -"[code]http://somehost.com/index.php[/code] 应该填写 [code]index.php[/" -"code]。\n" -"Headers 参数是 HTTP 请求的报头。HTTP 方法可以查看 [enum Method]。\n" -"发送原始的请求体数据,类型为字节数组,不会再做任何形式的编码。" +"向连接的主机发送原始请求。\n" +"URL参数通常只是主机后面的部分,所以对于[code]http://somehost.com/index.php[/" +"code],它是[code]/index.php[/code]。当向HTTP代理服务器发送请求时,它应该是一" +"个绝对的URL。对于[constant HTTPClient.METHOD_OPTIONS]请求,允许[code]*[/" +"code]。对于[constant HTTPClient.METHOD_CONNECT]请求,应该是标准组件," +"[code]host:port[/code]。\n" +"头信息是HTTP请求头信息。关于可用的HTTP方法,参阅[enum Method]。\n" +"以字节数组的形式发送原始正文数据,不以任何方式进行编码。" #: doc/classes/HTTPClient.xml:155 msgid "" @@ -33570,7 +33710,6 @@ msgid "A node with the ability to send HTTP(S) requests." msgstr "具有发送 HTTP(S) 请求能力的节点。" #: doc/classes/HTTPRequest.xml:7 -#, fuzzy msgid "" "A node with the ability to send HTTP requests. Uses [HTTPClient] " "internally.\n" @@ -33644,82 +33783,82 @@ msgid "" " texture_rect.texture = texture\n" "[/codeblock]" msgstr "" -"具有发送 HTTP 请求能力的节点,内部使用 [HTTPClient]。\n" -"可以用来发送 HTTP 请求,即通过 HTTP 下载上传文件和网页内容。\n" -"[b]与 REST API 通信示例,输出所返回的字段:[/b]\n" +"有能力发送HTTP请求的节点。内部使用[HTTPClient]。\n" +"可以用来进行HTTP请求,即通过HTTP下载或上传文件或网络内容。\n" +"[b]警告:[/b]参阅[HTTPClient]的注释和警告,以了解其局限性,特别是关于SSL的安" +"全性。\n" +"[b]连接REST API并打印其返回字段之一的例子:[/b]\n" "[codeblock]\n" "func _ready():\n" -" # 创建 HTTP 请求节点并连接完成信号。\n" +" # Create an HTTP request node and connect its completion signal.\n" " var http_request = HTTPRequest.new()\n" " add_child(http_request)\n" " http_request.connect(\"request_completed\", self, " "\"_http_request_completed\")\n" "\n" -" # 执行 GET 请求。下面的 URL 目前会返回 JSON。\n" +" # Perform a GET request. The URL below returns JSON as of writing.\n" " var error = http_request.request(\"https://httpbin.org/get\")\n" " if error != OK:\n" -" push_error(\"HTTP 请求出错。\")\n" +" push_error(\"An error occurred in the HTTP request.\")\n" "\n" -" # 执行 POST 请求。下面的 URL 目前会返回 JSON。\n" -" # 注意:不要使用同一个 HTTPRequest 节点同时进行多个请求\n" -" # 下面的代码仅供参考。\n" +" # Perform a POST request. The URL below returns JSON as of writing.\n" +" # Note: Don't make simultaneous requests using a single HTTPRequest " +"node.\n" +" # The snippet below is provided for reference only.\n" " var body = {\"name\": \"Godette\"}\n" -" var error = http_request.request(\"https://httpbin.org/post\", [], true, " +" error = http_request.request(\"https://httpbin.org/post\", [], true, " "HTTPClient.METHOD_POST, body)\n" " if error != OK:\n" -" push_error(\"HTTP 请求出错。\")\n" +" push_error(\"An error occurred in the HTTP request.\")\n" "\n" "\n" -"# HTTP 请求完成时会被调用。\n" +"# Called when the HTTP request is completed.\n" "func _http_request_completed(result, response_code, headers, body):\n" " var response = parse_json(body.get_string_from_utf8())\n" "\n" -" # 会输出(被 httpbin.org 识别到的)HTTPRequest 节点所使用的用户代理字符" -"串。\n" +" # Will print the user agent string used by the HTTPRequest node (as " +"recognized by httpbin.org).\n" " print(response.headers[\"User-Agent\"])\n" "[/codeblock]\n" -"[b]使用 HTTPRequest 加载并显示图片示例:[/b]\n" +"[b]使用HTTPRequest加载和显示图片的例子:[/b]\n" "[codeblock]\n" "func _ready():\n" -" # 创建 HTTP 请求节点并连接完成信号。\n" +" # Create an HTTP request node and connect its completion signal.\n" " var http_request = HTTPRequest.new()\n" " add_child(http_request)\n" " http_request.connect(\"request_completed\", self, " "\"_http_request_completed\")\n" "\n" -" # 执行 HTTP 请求。下面的 URL 目前会返回 PNG 图片。\n" +" # Perform the HTTP request. The URL below returns a PNG image as of " +"writing.\n" " var error = http_request.request(\"https://via.placeholder.com/512\")\n" " if error != OK:\n" -" push_error(\"HTTP 请求出错。\")\n" +" push_error(\"An error occurred in the HTTP request.\")\n" "\n" "\n" -"# HTTP 请求完成时会被调用。\n" +"# Called when the HTTP request is completed.\n" "func _http_request_completed(result, response_code, headers, body):\n" " var image = Image.new()\n" " var error = image.load_png_from_buffer(body)\n" " if error != OK:\n" -" push_error(\"无法加载图片\")\n" +" push_error(\"Couldn't load the image.\")\n" "\n" " var texture = ImageTexture.new()\n" " texture.create_from_image(image)\n" "\n" -" # 在 TextureRect 节点中显示该图片。\n" +" # Display the image in a TextureRect node.\n" " var texture_rect = TextureRect.new()\n" " add_child(texture_rect)\n" " texture_rect.texture = texture\n" -"[/codeblock]\n" -"[b]注意:[/b] 当执行从导出到 HTML5 的项目发出的 HTTP 请求时,请记住,远程服务" -"器可能由于 [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/" -"url] 的关系而禁止来自站外的请求。如果服务器是你自己搭建的,可以通过添加 " -"[code]Access-Control-Allow-Origin: *[/code] HTTP 报头来允许站外请求。" +"[/codeblock]" #: doc/classes/HTTPRequest.xml:70 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/networking/http_request_class." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/networking/http_request_class." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/networking/" +"http_request_class.html" #: doc/classes/HTTPRequest.xml:77 msgid "Cancels the current request." @@ -33747,7 +33886,6 @@ msgid "" msgstr "返回内部 [HTTPClient] 的当前状态。见 [enum HTTPClient.Status]。" #: doc/classes/HTTPRequest.xml:107 -#, fuzzy msgid "" "Creates request on the underlying [HTTPClient]. If there is no configuration " "errors, it tries to connect using [method HTTPClient.connect_to_host] and " @@ -33765,17 +33903,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] 创建请求。如果没有配置错误,将使用 [method " -"HTTPClient.connect_to_host] 连接,并将参数传递给 [method HTTPClient." +"在底层的 [HTTPClient] 上创建请求。如果没有配置错误,它会尝试使用 [method " +"HTTPClient.connect_to_host] 连接并将参数传递给 [method HTTPClient." "request]。\n" -"成功创建请求时返回 [constant OK](并不意味着服务器已响应),不在场景树中时返" -"回 [constant ERR_UNCONFIGURED],仍在处理上一个请求时返回 [constant " -"ERR_BUSY],给出的字符串不是有效的 URL 格式时返回 [constant " -"ERR_INVALID_PARAMETER],未启用多线程并且 [HTTPClient] 无法连接到主机时返回 " -"[constant ERR_CANT_CONNECT]。" +"如果请求创建成功,则返回 [constant OK]。 (并不意味着服务器已响应)," +"[constant ERR_UNCONFIGURED] 如果不在树中,[constant ERR_BUSY] 如果仍在处理先" +"前的请求,[constant ERR_INVALID_PARAMETER] 如果给定的字符串不是有效的 URL 格" +"式,或 [constant ERR_CANT_CONNECT]如果不使用线程并且 [HTTPClient] 无法连接到" +"主机。\n" +"[b]注意:[/b]当[code]method[/code]为[constant HTTPClient.METHOD_GET]时,通过" +"[code]request_data[/code]发送的payload可能会被服务器忽略甚至导致服务器拒绝请" +"求,参阅 [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:120 -#, fuzzy msgid "" "Creates request on the underlying [HTTPClient] using a raw array of bytes " "for the request body. If there is no configuration errors, it tries to " @@ -33788,31 +33931,30 @@ msgid "" "[constant ERR_CANT_CONNECT] if not using thread and the [HTTPClient] cannot " "connect to host." msgstr "" -"使用内部的 [HTTPClient] 创建请求。如果没有配置错误,将使用 [method " -"HTTPClient.connect_to_host] 连接,并将参数传递给 [method HTTPClient." -"request]。\n" -"成功创建请求时返回 [constant OK](并不意味着服务器已响应),不在场景树中时返" -"回 [constant ERR_UNCONFIGURED],仍在处理上一个请求时返回 [constant " -"ERR_BUSY],给出的字符串不是有效的 URL 格式时返回 [constant " -"ERR_INVALID_PARAMETER],未启用多线程并且 [HTTPClient] 无法连接到主机时返回 " -"[constant ERR_CANT_CONNECT]。" +"在底层的[HTTPClient]上创建请求,使用一个原始字节数组作为请求主体。如果没有配" +"置错误,它会尝试使用 [method HTTPClient.connect_to_host] 连接并将参数传递给 " +"[method HTTPClient.request]。\n" +"如果请求创建成功,则返回 [constant OK]。 (并不意味着服务器已响应)," +"[constant ERR_UNCONFIGURED] 如果不在树中,[constant ERR_BUSY] 如果仍在处理先" +"前的请求,[constant ERR_INVALID_PARAMETER] 如果给定的字符串不是有效的 URL 格" +"式,或 [constant ERR_CANT_CONNECT]如果不使用线程并且 [HTTPClient] 无法连接到" +"主机。" #: doc/classes/HTTPRequest.xml:127 msgid "Maximum allowed size for response bodies." msgstr "允许的最大响应体大小。" #: doc/classes/HTTPRequest.xml:130 -#, fuzzy msgid "" "The size of the buffer used and maximum bytes to read per iteration. See " "[member HTTPClient.read_chunk_size].\n" "Set this to a lower value (e.g. 4096 for 4 KiB) when downloading small files " "to decrease memory usage at the cost of download speeds." msgstr "" -"每次迭代时所使用的缓冲区大小,即每次迭代时所能读取的最大字节数。见 [member " -"HTTPClient.read_chunk_size]。\n" -"下载大文件时将该值调大(例如下载 64 KiB 时设为 65536)可以用更大的内存消耗换" -"取更快的下载速度。" +"使用的缓冲区大小和每次迭代读取的最大字节数。参阅 [member HTTPClient." +"read_chunk_size]。\n" +"下载小文件时将其设置为较低的值,以降低内存使用量,但会降低下载速度,例如 " +"4096 表示 4 KiB。" #: doc/classes/HTTPRequest.xml:134 msgid "The file to download into. Will output any received file into it." @@ -33879,7 +34021,6 @@ msgid "Image datatype." msgstr "图像数据类型。" #: doc/classes/Image.xml:7 -#, fuzzy msgid "" "Native image datatype. Contains image data which can be converted to an " "[ImageTexture] and provides commonly used [i]image processing[/i] methods. " @@ -33891,9 +34032,12 @@ msgid "" "[b]Note:[/b] The maximum image size is 16384×16384 pixels due to graphics " "hardware limitations. Larger images may fail to import." msgstr "" -"原生图像数据类型。包含可转换为 [Texture2D]图像数据,以及与之交互的多种方法。" -"[Image] 的最大宽度和高度为 [constant MAX_WIDTH] 和 [constant MAX_HEIGHT] 。\n" -"[b]注:[/b] 由于图形硬件的限制,最大图像大小为 16384×16384 像素。较大的图像将" +"本地图像数据类型。包含可转换为 [ImageTexture] 的图像数据,并提供常用的 [i] 图" +"像处理 [/i] 方法。 [Image] 的最大宽度和高度是 [constant MAX_WIDTH] 和 " +"[constant MAX_HEIGHT]。\n" +"[Image] 不能直接分配给对象的 [code]texture[/code] 属性,例如 [Sprite],必须先" +"手动转换为 [ImageTexture]。\n" +"[b]注意:[/b]由于图形硬件限制,最大图像尺寸为16384×16384像素。较大的图像可能" "无法导入。" #: doc/classes/Image.xml:12 doc/classes/ImageTexture.xml:31 @@ -33901,7 +34045,7 @@ msgid "" "https://docs.godotengine.org/en/3.4/getting_started/workflow/assets/" "importing_images.html" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/workflow/assets/" +"https://docs.godotengine.org/zh_CN/stable/getting_started/workflow/assets/" "importing_images.html" #: doc/classes/Image.xml:21 @@ -34033,7 +34177,7 @@ msgstr "" msgid "" "Stretches the image and enlarges it by a factor of 2. No interpolation is " "done." -msgstr "" +msgstr "拉伸图像并将其放大2倍,不进行插值。" #: doc/classes/Image.xml:140 msgid "Fills the image with a given [Color]." @@ -34052,7 +34196,6 @@ msgid "Flips the image vertically." msgstr "垂直翻转图像。" #: doc/classes/Image.xml:165 -#, fuzzy msgid "" "Generates mipmaps for the image. Mipmaps are precalculated lower-resolution " "copies of the image that are automatically used if the image needs to be " @@ -34064,14 +34207,16 @@ msgid "" "result in noticeable stuttering during gameplay, even if [method " "generate_mipmaps] is called from a [Thread]." msgstr "" -"为图像生成mipmaps。Mipmaps是预先计算好的、分辨率较低的图像副本。如果图像在渲" -"染时需要缩小,就会自动使用Mipmaps。这可以提高图像的质量和渲染的性能。如果图像" -"被压缩,或者是自定义格式,或者图像的宽度/高度为0,则返回一个错误。" +"为图像生成mipmaps。Mipmaps是预先计算好的图像的低分辨率副本,如果图像在渲染时" +"需要缩小,就会自动使用。其有助于提高图像质量和渲染时的性能。如果图像被压缩," +"或采用自定义格式,或图像的宽度或高度为[code]0[/code],则此方法返回错误。\n" +"[b]注意:[/b] Mipmap的生成是在CPU上完成的,是单线程的,并且[i]总是[/i]在主线" +"程上完成。这意味着在游戏过程中生成mipmaps会导致明显的卡顿,即使从[Thread]调用" +"[method generate_mipmaps]。" #: doc/classes/Image.xml:172 -#, fuzzy msgid "Returns a copy of the image's raw data." -msgstr "返回图像的原始数据。" +msgstr "返回图像原始数据的副本。" #: doc/classes/Image.xml:178 msgid "Returns the image's format. See [enum Format] constants." @@ -34090,26 +34235,26 @@ msgstr "" "量。" #: doc/classes/Image.xml:199 -#, fuzzy msgid "" "Returns the color of the pixel at [code](x, y)[/code] if the image is " "locked. If the image is unlocked, it always returns a [Color] with the value " "[code](0, 0, 0, 1.0)[/code]. This is the same as [method get_pixelv], but " "two integer arguments instead of a Vector2 argument." msgstr "" -"返回 [code](x, y)[/code] 处像素的颜色。这与[method get_pixelv]相同,但有两个" -"整数参数,而不是一个[Vector2]参数。" +"如果图像被锁定,则返回 [code](x, y)[/code] 处像素的颜色。如果图像被解锁,它总" +"是返回 [code](0, 0, 0, 1.0)[/code] 值的 [Color]。这与 [method get_pixelv] 相" +"同,但有两个整数参数而不是 Vector2 参数。" #: doc/classes/Image.xml:206 -#, fuzzy msgid "" "Returns the color of the pixel at [code]src[/code] if the image is locked. " "If the image is unlocked, it always returns a [Color] with the value [code]" "(0, 0, 0, 1.0)[/code]. This is the same as [method get_pixel], but with a " "Vector2 argument instead of two integer arguments." msgstr "" -"返回[code](x,y)[/code]处像素的颜色。这与[method get_pixel]相同,但用一个" -"[Vector2]参数代替了两个整数参数。" +"如果图像被锁定,返回[code]src[/code]处的像素的颜色。如果图像被解锁,它总是返" +"回[code](0, 0, 0, 1.0)[/code]值的[Color]。这与[method get_pixel]相同,只是用" +"一个Vector2参数代替了两个整数参数。" #: doc/classes/Image.xml:213 msgid "" @@ -34154,7 +34299,6 @@ msgstr "" "像素的透明度(alpha )高于0,则返回[code]false[/code]。" #: doc/classes/Image.xml:262 -#, fuzzy msgid "" "Loads an image from file [code]path[/code]. See [url=https://docs." "godotengine.org/en/3.4/getting_started/workflow/assets/importing_images." @@ -34165,9 +34309,13 @@ msgid "" "the [code]user://[/code] directory, and may not work in exported projects.\n" "See also [ImageTexture] description for usage examples." msgstr "" -"从文件路径[code]path[/code]加载图像。有关支持的图像格式和限制的列表,请参阅" -"[url=https://docs.godotengine.org/zh_CN/latest/getting_started/workflow/" -"assets/importing_images.html#supported-image-formats]支持的图像格式[/url]。" +"从文件[code]path[/code]加载图像。参阅[url=https://docs.godotengine.org/zh_CN/" +"stable/getting_started/workflow/assets/importing_images.html#supported-image-" +"formats]支持的图像格式[/url],了解支持的图像格式和限制。\n" +"[b]警告:[/b] 这个方法只能在编辑器中使用,或者在运行时需要加载外部图像的情况" +"下使用,比如位于[code]user://[/code]目录下的图像,在导出的项目中可能无法工" +"作。\n" +"有关使用实例,参阅[ImageTexture]描述。" #: doc/classes/Image.xml:271 msgid "" @@ -34175,6 +34323,9 @@ msgid "" "[b]Note:[/b] Godot's BMP module doesn't support 16-bit per pixel images. " "Only 1-bit, 4-bit, 8-bit, 24-bit, and 32-bit per pixel images are supported." msgstr "" +"从BMP文件的二进制内容中加载图像。\n" +"[b]注意:[/b] Godot的BMP模块不支持16位像素的图像。只支持1位、4位、8位、24位和" +"32位像素的图像。" #: doc/classes/Image.xml:279 msgid "Loads an image from the binary contents of a JPEG file." @@ -34197,6 +34348,8 @@ msgid "" "Locks the data for reading and writing access. Sends an error to the console " "if the image is not locked when reading or writing a pixel." msgstr "" +"锁定数据的读写访问。如果在读或写像素时,图像没有被锁定,则向控制台发送一个错" +"误。" #: doc/classes/Image.xml:312 msgid "" @@ -34216,25 +34369,24 @@ msgstr "" "code]。" #: doc/classes/Image.xml:327 -#, fuzzy msgid "" "Resizes the image to the given [code]width[/code] and [code]height[/code]. " "New pixels are calculated using the [code]interpolation[/code] mode defined " "via [enum Interpolation] constants." msgstr "" -"将图像调整到给定的[code]宽度[/code]和[code]高度[/code]。新的像素是用" -"[code]interpolation[/code](插值)计算的。见[code]interpolation[/code]常量。" +"调整图像大小到给定的[code]width[/code]和[code]height[/code]。新像素通过[enum " +"Interpolation]常数定义的[code]interpolation[/code]插值模式计算。" #: doc/classes/Image.xml:335 -#, fuzzy msgid "" "Resizes the image to the nearest power of 2 for the width and height. If " "[code]square[/code] is [code]true[/code] then set width and height to be the " "same. New pixels are calculated using the [code]interpolation[/code] mode " "defined via [enum Interpolation] constants." msgstr "" -"将图像的宽度和高度调整为最接近的 2 次幂。如果 [code]square[/code] 为 " -"[code]true[/code],则将宽度和高度设置为相同。" +"将图像的宽度和高度调整到最接近的2次方。如果[code]square[/code]是[code]true[/" +"code],那么设置宽度和高度为相同。新像素通过[enum Interpolation]常数定义的" +"[code]interpolation[/code]插值模式计算。" #: doc/classes/Image.xml:341 msgid "" @@ -34242,7 +34394,6 @@ msgid "" msgstr "将标准 RGBE(红绿蓝指数)图像转换为 sRGB 图像。" #: doc/classes/Image.xml:349 -#, fuzzy msgid "" "Saves the image as an EXR file to [code]path[/code]. If [code]grayscale[/" "code] is [code]true[/code] and the image has only one channel, it will be " @@ -34254,16 +34405,17 @@ msgid "" "called from an exported project." msgstr "" "将图像作为EXR文件保存到[code]path[/code]。如果[code]grayscale[/code]是" -"[code]true[/code],并且图像只有一个通道,它将被明确保存为单色而不是一个红色通" -"道。如果Godot在编译时没有启用TinyEXR模块,这个函数将返回[constant " -"ERR_UNAVAILABLE]。" +"[code]true[/code]并且图像只有一个通道,它将被明确地保存为单色而不是红色通道。" +"如果Godot在编译时没有TinyEXR模块,这个函数将返回[constant " +"ERR_UNAVAILABLE]。\n" +"[b]注意:[/b] TinyEXR模块在非编辑器构建中被禁用,这意味着[method save_exr]从" +"导出的项目中调用时将返回[constant ERR_UNAVAILABLE]。" #: doc/classes/Image.xml:357 msgid "Saves the image as a PNG file to [code]path[/code]." msgstr "将图像作为 PNG 文件保存到 [code]path[/code]。" #: doc/classes/Image.xml:371 -#, fuzzy msgid "" "Sets the [Color] of the pixel at [code](x, y)[/code] if the image is locked. " "Example:\n" @@ -34276,15 +34428,17 @@ msgid "" "img.set_pixel(x, y, color) # Does not have an effect\n" "[/codeblock]" msgstr "" -"设置[code](x, y)[/code]处的像素的[Color]。示例:\n" +"如果图像被锁定,设置[code](x, y)[/code]处像素的[Color]。例子:\n" "[codeblock]\n" "var img = Image.new()\n" "img.create(img_width, img_height, false, Image.FORMAT_RGBA8)\n" -"img.set_pixel(x, y, color)\n" +"img.lock()\n" +"img.set_pixel(x, y, color) # Works\n" +"img.unlock()\n" +"img.set_pixel(x, y, color) # Does not have an effect\n" "[/codeblock]" #: doc/classes/Image.xml:387 -#, fuzzy msgid "" "Sets the [Color] of the pixel at [code](dst.x, dst.y)[/code] if the image is " "locked. Note that the [code]dst[/code] values must be integers. Example:\n" @@ -34297,12 +34451,15 @@ msgid "" "img.set_pixelv(Vector2(x, y), color) # Does not have an effect\n" "[/codeblock]" msgstr "" -"设置[code](dst.x, dst.y)[/code]处像素的[Color]。注意,[code]dst[/code]的值必" -"须是整数。例子。\n" +"如果图像被锁定,设置[code](dst.x, dst.y)[/code]处的像素的[Color]。注意," +"[code]dst[/code]值必须是整数。例:\n" "[codeblock]\n" "var img = Image.new()\n" "img.create(img_width, img_height, false, Image.FORMAT_RGBA8)\n" -"img.set_pixelv(Vector2(x, y), color)\n" +"img.lock()\n" +"img.set_pixelv(Vector2(x, y), color) # Works\n" +"img.unlock()\n" +"img.set_pixelv(Vector2(x, y), color) # Does not have an effect\n" "[/codeblock]" #: doc/classes/Image.xml:401 @@ -34318,7 +34475,6 @@ msgid "Unlocks the data and prevents changes." msgstr "解锁数据并防止更改。" #: doc/classes/Image.xml:419 -#, fuzzy msgid "" "Holds all the image's color data in a given format. See [enum Format] " "constants." @@ -34343,15 +34499,14 @@ msgid "" msgstr "OpenGL 纹理格式,具有两个值,亮度和 alpha,每个值以 8 位存储。" #: doc/classes/Image.xml:436 -#, fuzzy msgid "" "OpenGL texture format [code]RED[/code] with a single component and a " "bitdepth of 8.\n" "[b]Note:[/b] When using the GLES2 backend, this uses the alpha channel " "instead of the red channel for storage." msgstr "" -"OpenGL 纹理格式 [code]RGB[/code] 具有三个部分,每个分量部分的位深度为 8。\n" -"[b]注意:[/b]创建 [ImageTexture] 时,会执行sRGB到线性色彩空间的转换。" +"OpenGL 纹理格式 [code]RED[/code],具有单个分量和 8 位深度。\n" +"[b]注意:[/b] 当使用 GLES2 后端时,它使用 alpha 通道而不是红色通道进行存储。" #: doc/classes/Image.xml:440 msgid "" @@ -34387,11 +34542,12 @@ msgstr "" "OpenGL 纹理格式 [code]RGBA[/code] 有四个部分,每个分量部分的位深度为 4。" #: doc/classes/Image.xml:454 -#, fuzzy msgid "" "OpenGL texture format [code]GL_RGB5_A1[/code] where 5 bits of depth for each " "component of RGB and one bit for alpha." -msgstr "OpenGL 纹理格式 [code]RG[/code],具有两个部分,每个部分的位深度为 8。" +msgstr "" +"OpenGL纹理格式[code]GL_RGB5_A1[/code],其中RGB每个分量的深度为5位,alpha为1" +"位。" #: doc/classes/Image.xml:457 msgid "" @@ -34719,7 +34875,6 @@ msgstr "" "式通常会产生更好的结果,但代价是速度较慢." #: doc/classes/Image.xml:564 -#, fuzzy msgid "" "Performs bilinear separately on the two most-suited mipmap levels, then " "linearly interpolates between them.\n" @@ -34733,13 +34888,14 @@ msgid "" "On the other hand, if the image already has mipmaps, they will be used, and " "a new set will be generated for the resulting image." msgstr "" -"在两个最合适的mipmap层上分别执行双线性,然后在它们之间进行线性插值.\n" -"它比[INTERPOLATE_BILINEAR]慢,但能产生质量更高的效果,并且减少很多混叠.\n" -"如果图像没有mipmaps,它们将被生成并在内部使用,但不会对生成的图像生成mipmaps.\n" -"[b]注意: [/b]如果您打算对原始图像进行多份缩放,最好提前对其调用 " -"generate_mipmaps(),以避免在反复生成它们时浪费处理能力.\n" -"另一方面,如果图像已经有了mipmaps,就会使用它们,并为生成的图像生成一组新的" -"mipmaps." +"在两个最适合的mipmap级别上分别执行双线性,然后在它们之间进行线性插值。\n" +"它比[constant INTERPOLATE_BILINEAR]慢,但能产生更高质量的效果,减少锯齿伪" +"影。\n" +"如果图像没有mipmaps,它们将被生成并在内部使用,但不会在生成的图像之上生成" +"mipmaps。\n" +"[b]注意:[/b] 如果你打算缩放原始图像的多个副本,最好事先对其调用[method " +"generate_mipmaps],以避免在生成它们时反复浪费处理能力。\n" +"另一方面,如果图像已经有了mipmaps,其将被使用,并为生成的图像生成新的一组。" #: doc/classes/Image.xml:571 msgid "" @@ -34874,17 +35030,15 @@ msgstr "" "[b]注意:[/b]由于图形硬件限制,最大纹理尺寸为16384×16384像素。" #: doc/classes/ImageTexture.xml:41 -#, fuzzy msgid "" "Create a new [ImageTexture] with [code]width[/code] and [code]height[/" "code].\n" "[code]format[/code] is a value from [enum Image.Format], [code]flags[/code] " "is any combination of [enum Texture.Flags]." msgstr "" -"使用一个[code]width[/code] 宽度和 [code]height[/code]高度创建一个新的 " -"[ImageTexture]图片纹理。\n" -"[code]format[/code] is a value from [enum Image.Format], [code]flags[/code] " -"is any combination of [enum Texture.Flags]." +"创建具有[code]width[/code]和[code]height[/code]的新[ImageTexture]。\n" +"[code]format[/code]是[enum Image.Format]中的一个值,[code]flags[/code]是" +"[enum Texture.Flags]的任意组合。" #: doc/classes/ImageTexture.xml:50 msgid "" @@ -34892,11 +35046,13 @@ msgid "" "with [code]flags[/code] from [enum Texture.Flags]. An sRGB to linear color " "space conversion can take place, according to [enum Image.Format]." msgstr "" +"通过使用 [enum Texture.Flags] 中的 [code]flags[/code] 分配和设置来自 [Image] " +"的数据来初始化纹理。根据 [enum Image.Format],可以进行 sRGB 到线性颜色空间的" +"转换。" #: doc/classes/ImageTexture.xml:56 -#, fuzzy msgid "Returns the format of the texture, one of [enum Image.Format]." -msgstr "返回 [ImageTexture] 的格式,是 [enum Image.Format] 中的一个。" +msgstr "返回纹理的格式,[enum Image.Format] 之一。" #: doc/classes/ImageTexture.xml:63 msgid "" @@ -34920,20 +35076,24 @@ msgid "" "texture frequently, which is faster than allocating additional memory for a " "new texture each time." msgstr "" +"用新的 [Image] 替换纹理的数据。\n" +"[b]注意:[/b]纹理必须先用[method create_from_image]方法初始化,然后才能更新。" +"新的图像尺寸、格式和 mipmap 配置应与现有纹理的图像配置相匹配,否则必须使用 " +"[method create_from_image] 方法重新创建。\n" +"如果需要频繁更新纹理,请在 [method create_from_image] 上使用此方法,这比每次" +"为新纹理分配额外内存要快。" #: doc/classes/ImageTexture.xml:80 doc/classes/VisualServer.xml:2837 -#, fuzzy msgid "Resizes the texture to the specified dimensions." -msgstr "将 [ImageTexture] 调整为指定的大小。" +msgstr "将纹理的大小调整为指定的尺寸。" #: doc/classes/ImageTexture.xml:87 msgid "The storage quality for [constant STORAGE_COMPRESS_LOSSY]." msgstr "[constant STORAGE_COMPRESS_LOSSY]的存储质量。" #: doc/classes/ImageTexture.xml:90 -#, fuzzy msgid "The storage type (raw, lossy, or compressed)." -msgstr "按钮被按下的状态。" +msgstr "存储类型,即原始、有损、或压缩。" #: doc/classes/ImageTexture.xml:95 msgid "[Image] data is stored raw and unaltered." @@ -34944,18 +35104,17 @@ msgid "" "[Image] data is compressed with a lossy algorithm. You can set the storage " "quality with [member lossy_quality]." msgstr "" -"[图像]数据是用有损算法压缩的。 你可以用[member lossy_quality]设置存储质量。" +"[Image]数据是用有损算法压缩的。 你可以用[member lossy_quality]设置存储质量。" #: doc/classes/ImageTexture.xml:101 msgid "[Image] data is compressed with a lossless algorithm." -msgstr "[图像]数据是用无损算法压缩的。" +msgstr "[Image]数据是用无损算法压缩的。" #: doc/classes/ImmediateGeometry.xml:4 msgid "Draws simple geometry from code." msgstr "通过代码绘制简单的几何形状。" #: doc/classes/ImmediateGeometry.xml:7 -#, fuzzy msgid "" "Draws simple geometry from code. Uses a drawing mode similar to OpenGL 1.x.\n" "See also [ArrayMesh], [MeshDataTool] and [SurfaceTool] for procedural " @@ -34971,14 +35130,16 @@ msgid "" "data, try increasing its buffer size limit under [member ProjectSettings." "rendering/limits/buffers/immediate_buffer_size_kb]." msgstr "" -"通过代码绘制简单的几何形状。使用类似于OpenGL 1.x.的绘制方式。\n" -"关于几何形状的程序化构建,参阅 [ArrayMesh],[MeshDataTool] 以及 " -"[SurfaceTool]。\n" -"[b]注意:[/b] ImmediateGeometry3D 最适用于每帧变化的少量网格数据。如果处理大" -"量网格数据将会变慢。如果网格数据不需要经常变化,使用[ArrayMesh]," -"[MeshDataTool] 或者 [SurfaceTool] 代替。\n" -"[b]注意:[/b] 对于三角形基本模式的正面,Godot使用顺时针[url=https://" -"learnopengl.com/Advanced-OpenGL/Face-culling]缠绕顺序[/url]。" +"从代码中绘制简单的几何图形。使用类似于OpenGL 1.x的绘制模式。\n" +"请参阅[ArrayMesh]、[MeshDataTool]和[SurfaceTool],了解程序性几何体的生成。\n" +"[b]注意:[/b] ImmediateGeometry3D最适合处理每一帧变化的少量网格数据。当处理大" +"量的网格数据时,它将会很慢。如果网格数据不经常变化,请使用[ArrayMesh]、" +"[MeshDataTool]或[SurfaceTool]代替。\n" +"[b]注意:[/b] Godot对三角形基本单元模式的正面使用顺时针[url=https://" +"learnopengl.com/Advanced-OpenGL/Face-culling]缠绕顺序[/url]。\n" +"[b]注意:[/b] 在处理大量网格数据时,如果出现漏点,可以尝试在[member " +"ProjectSettings.rendering/limits/buffers/immediate_buffer_size_kb]增加其缓冲" +"区大小限制。" #: doc/classes/ImmediateGeometry.xml:23 msgid "" @@ -35046,7 +35207,7 @@ msgstr "" #: doc/classes/Input.xml:10 msgid "https://docs.godotengine.org/en/3.4/tutorials/inputs/index.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/inputs/index.html" +msgstr "https://docs.godotengine.org/zh_CN/stable/tutorials/inputs/index.html" #: doc/classes/Input.xml:20 msgid "" @@ -35084,6 +35245,12 @@ msgid "" "once per frame). However, this can be useful in advanced cases where you " "want precise control over the timing of event handling." msgstr "" +"将当前缓冲区内的所有输入事件发送给游戏循环。这些事件可能是由于累积输入" +"([method set_use_accumulated_input])或敏捷输入刷新([member " +"ProjectSettings.input_devices/buffering/agile_event_flushing])而被缓冲的结" +"果。\n" +"引擎已经会在关键的执行点执行此操作,至少每帧一次。然而,在你想要精确控制事件" +"处理时间的高级情况下,这可能是有用的。" #: doc/classes/Input.xml:50 msgid "" @@ -35097,6 +35264,13 @@ msgid "" "measurement for each axis is m/s² while on iOS and UWP it's a multiple of " "the Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)." msgstr "" +"如果设备有加速度传感器,则返回设备的加速度。否则,该方法返回[constant " +"Vector3.ZERO]。\n" +"请注意,即使你的设备有一个加速度计,当从编辑器运行时,该方法也会返回一个空的" +"[Vector3]。你必须将项目导出到一个支持的设备上,以便从加速度计上读取数值。\n" +"[b]注意:[/b] 这个方法只在iOS、Android和UWP上工作。在其他平台上,它总是返回" +"[constant Vector3.ZERO]。在Android上,每个轴的测量单位是m/s²,而在iOS和UWP" +"上,它是地球重力加速度的倍数[code]g[/code](~9.81 m/s²)。" #: doc/classes/Input.xml:60 msgid "" @@ -35107,9 +35281,13 @@ msgid "" "for [InputEventKey] and [InputEventMouseButton] events, and the direction " "for [InputEventJoypadMotion] events." msgstr "" +"返回介于0和1之间的值,代表给定动作的原始强度,忽略动作的死区。在大多数情况" +"下,你应该使用[method get_action_strength]来代替。\n" +"如果[code]exact[/code]是[code]false[/code],它将忽略[InputEventKey]和" +"[InputEventMouseButton]事件的输入修饰符,以及[InputEventJoypadMotion]事件的方" +"向。" #: doc/classes/Input.xml:69 -#, fuzzy msgid "" "Returns a value between 0 and 1 representing the intensity of the given " "action. In a joypad, for example, the further away the axis (analog sticks " @@ -35120,9 +35298,12 @@ msgid "" "for [InputEventKey] and [InputEventMouseButton] events, and the direction " "for [InputEventJoypadMotion] events." msgstr "" -"返回一个介于0和1之间的值,代表给定动作的强度。以游戏手柄为例,推动轴(模拟摇" -"杆或L2、R2触发器)离盲区(dead zone)越远,数值就越接近1。如果动作被映射到一个" -"没有轴作为控件的键盘,返回数值将是0或1。" +"返回介于0和1之间的值,代表给定动作的强度。例如,在一个操纵板上,轴(模拟杆或" +"L2、R2触发器)离死区越远,数值就越接近1。如果动作被映射到一个没有轴作为键盘的" +"控件上,返回的数值将是0或1。\n" +"如果[code]exact[/code]是[code]false[/code],它将忽略[InputEventKey]和" +"[InputEventMouseButton]事件的输入修饰符,以及[InputEventJoypadMotion]事件的方" +"向。" #: doc/classes/Input.xml:78 msgid "" @@ -35131,6 +35312,9 @@ msgid "" "get_action_strength(\"positive_action\") - Input." "get_action_strength(\"negative_action\")[/code]." msgstr "" +"通过指定两个动作来获取轴的输入,一个是负的,一个是正的。\n" +"这是写[code]Input.get_action_strength(\"positive_action\")-Input." +"get_action_strength(\"negative_action\")[/code]的简写。" #: doc/classes/Input.xml:85 msgid "" @@ -35151,6 +35335,11 @@ msgid "" "measurement for each axis is m/s² while on iOS it's a multiple of the " "Earth's gravitational acceleration [code]g[/code] (~9.81 m/s²)." msgstr "" +"如果设备有加速度传感器,则返回设备的重力。否则,该方法返回[constant Vector3." +"ZERO]。\n" +"[b]注意:[/b] 这个方法只在Android和iOS上工作。在其他平台上,它总是返回" +"[constant Vector3.ZERO]。在Android上,每个轴的测量单位是m/s²,而在iOS上,它是" +"地球重力加速度的倍数[code]g[/code](~9.81 m/s²)。" #: doc/classes/Input.xml:104 msgid "" @@ -35160,13 +35349,16 @@ msgid "" "[b]Note:[/b] This method only works on Android and iOS. On other platforms, " "it always returns [constant Vector3.ZERO]." msgstr "" +"如果设备有陀螺仪传感器,则返回围绕设备X、Y、Z轴的旋转速率,单位为rad/s。否" +"则,该方法返回[constant Vector3.ZERO]。\n" +"[b]注意:[/b] 这个方法只在Android和iOS上工作。在其他平台上,总是返回" +"[constant Vector3.ZERO]。" #: doc/classes/Input.xml:113 -#, fuzzy msgid "" "Returns the current value of the joypad axis at given index (see [enum " "JoystickList])." -msgstr "返回给定索引处的手柄(joypad)轴的当前值(参阅 [enum JoyAxisList])。" +msgstr "返回给定索引的游戏手柄轴的当前值,参阅[enum JoystickList]。" #: doc/classes/Input.xml:120 msgid "Returns the index of the provided axis name." @@ -35183,13 +35375,11 @@ msgid "Returns the index of the provided button name." msgstr "返回所提供的按钮名称的索引。" #: doc/classes/Input.xml:141 -#, fuzzy msgid "" "Receives a gamepad button from [enum JoystickList] and returns its " "equivalent name as a string." msgstr "" -"从[enum JoyButtonList]中接收一个游戏手柄(gamepad)按钮,并以字符串形式返回其对" -"应的名称。" +"从[enum JoystickList]中接收游戏手柄按钮,并将其对应的名称作为一个字符串返回。" #: doc/classes/Input.xml:148 msgid "" @@ -35231,6 +35421,10 @@ msgid "" "[b]Note:[/b] This method only works on Android, iOS and UWP. On other " "platforms, it always returns [constant Vector3.ZERO]." msgstr "" +"如果设备有磁力传感器,则返回设备所有轴的磁场强度,微特斯拉。否则,该方法返回" +"[constant Vector3.ZERO]。\n" +"[b]注意:[/b] 这个方法只在Android、iOS和UWP上有效。在其他平台上,总是返回" +"[constant Vector3.ZERO]。" #: doc/classes/Input.xml:188 msgid "" @@ -35256,9 +35450,13 @@ msgid "" "action deadzones. However, you can override the deadzone to be whatever you " "want (on the range of 0 to 1)." msgstr "" +"通过指定正负X和Y轴的四个动作来获取向量矢量。\n" +"这个方法在获取向量输入时很有用,比如从操纵杆、方向盘、箭头或WASD。向量的长度" +"被限制为1,并且有一个圆形的死区,这对于使用向量输入进行运动很有用。\n" +"默认情况下,死区根据动作死区的平均值自动计算。然而,你可以覆盖死区,获得你想" +"要的,注,在0到1的范围内。" #: doc/classes/Input.xml:215 -#, fuzzy msgid "" "Returns [code]true[/code] when the user starts pressing the action event, " "meaning it's [code]true[/code] only on the frame that the user pressed down " @@ -35269,13 +35467,15 @@ msgid "" "for [InputEventKey] and [InputEventMouseButton] events, and the direction " "for [InputEventJoypadMotion] events." msgstr "" -"当用户开始按下动作事件时,返回[code]true[/code],这意味着仅当用户按下按钮的帧" -"上才返回[code]true[/code].\n" -"这对于在按下某个动作时只需要运行一次,而不是在按下时的每一帧中运行的代码很有" -"用。" +"当用户开始按下动作事件时,返回[code]true[/code],也就是说,只有在用户按下按钮" +"的那一帧才是[code]true[/code]。\n" +"这对那些只需要在动作被按下时运行一次的代码中很有用,而不是在按下时每一帧都要" +"运行。\n" +"如果[code]exact[/code]是[code]false[/code],它将忽略[InputEventKey]和" +"[InputEventMouseButton]事件的输入修饰符,以及[InputEventJoypadMotion]事件的方" +"向。" #: doc/classes/Input.xml:225 -#, fuzzy msgid "" "Returns [code]true[/code] when the user stops pressing the action event, " "meaning it's [code]true[/code] only on the frame that the user released the " @@ -35284,13 +35484,13 @@ msgid "" "for [InputEventKey] and [InputEventMouseButton] events, and the direction " "for [InputEventJoypadMotion] events." msgstr "" -"当用户开始按下动作事件时,返回[code]true[/code],这意味着仅当用户按下按钮的帧" -"上才返回[code]true[/code].\n" -"这对于在按下某个动作时只需要运行一次,而不是在按下时的每一帧中运行的代码很有" -"用。" +"当用户停止按下动作事件时,返回[code]true[/code],也就是说,只有在用户释放按钮" +"的那一帧才是[code]true[/code]。\n" +"如果[code]exact[/code]是[code]false[/code],它将忽略[InputEventKey]和" +"[InputEventMouseButton]事件的输入修饰符,以及[InputEventJoypadMotion]事件的方" +"向。" #: doc/classes/Input.xml:234 -#, fuzzy msgid "" "Returns [code]true[/code] if you are pressing the action event. Note that if " "an action has multiple buttons assigned and more than one of them is " @@ -35300,37 +35500,37 @@ msgid "" "for [InputEventKey] and [InputEventMouseButton] events, and the direction " "for [InputEventJoypadMotion] events." msgstr "" -"如果您按下动作事件,则返回[code]true[/code]。请注意,如果为一个动作分配了多个按" -"钮,并且按下了多个按钮,那么即使仍然按下分配给该动作的某个其他按钮,释放一个按" -"钮也将释放该动作。" +"如果你正在按下动作事件,返回[code]true[/code]。请注意,如果一个动作有多个分配" +"的按钮,并且不止一个被按下,释放一个按钮将释放这个动作,即使其他分配给这个动" +"作的按钮仍然被按下。\n" +"如果[code]exact[/code]是[code]false[/code],它将忽略[InputEventKey]和" +"[InputEventMouseButton]事件的输入修饰符,以及[InputEventJoypadMotion]事件的方" +"向。" #: doc/classes/Input.xml:243 -#, fuzzy msgid "" "Returns [code]true[/code] if you are pressing the joypad button (see [enum " "JoystickList])." -msgstr "如果按下操纵杆按钮,则返回[code]true[/code](请参阅[JoystickList])。" +msgstr "" +"如果你正在按下手柄按钮,则返回[code]true[/code],参阅[enum JoystickList]。" #: doc/classes/Input.xml:250 -#, fuzzy msgid "" "Returns [code]true[/code] if the system knows the specified device. This " "means that it sets all button and axis indices exactly as defined in [enum " "JoystickList]. Unknown joypads are not expected to match these constants, " "but you can still retrieve events from them." msgstr "" -"如果系统知道指定的设备,则返回[code]true[/code]。这意味着它将完全按照" -"JoystickList中的定义设置所有按钮和轴索引。未知的游戏手柄不希望与这些常量匹" -"配,但是您仍然可以从中检索事件。" +"如果系统知道指定的设备,则返回[code]true[/code]。这意味着它将完全按照[enum " +"JoystickList]中的定义设置所有按钮和轴的索引。未知的操纵杆可能不会与这些常数相" +"匹配,但你仍然可以从中检索事件。" #: doc/classes/Input.xml:257 -#, fuzzy msgid "" "Returns [code]true[/code] if you are pressing the key. You can pass a [enum " "KeyList] constant." msgstr "" -"如果你按当前键盘布局中的键,则返回 [code]true[/code]。您可以传入 [enum " -"KeyList] 常量参数。" +"如果你正在按压该键,则返回[code]true[/code]。你可以传递[enum KeyList]常量。" #: doc/classes/Input.xml:264 msgid "" @@ -35362,8 +35562,8 @@ msgid "" "Input.parse_input_event(a)\n" "[/codeblock]" msgstr "" -"向游戏提供[InputEvent]。可用于从代码中人工触发输入事件。也会产生[Node." -"_input()]调用。\n" +"向游戏提供 [InputEvent]。可用于从代码人为触发输入事件。也会产生 [method Node." +"_input()] 调用。\n" "例:\n" "[codeblock]\n" "var a = InputEventAction.new()\n" @@ -35385,6 +35585,9 @@ msgid "" "[b]Note:[/b] This value can be immediately overwritten by the hardware " "sensor value on Android and iOS." msgstr "" +"设置加速度传感器的加速度值。可以用于在没有硬件传感器的设备上进行调试,例如在" +"PC上的编辑器中。\n" +"[b]注意:[/b] 这个值在Android和iOS上可立即被硬件传感器的值所覆盖。" #: doc/classes/Input.xml:313 msgid "" @@ -35432,6 +35635,9 @@ msgid "" "[b]Note:[/b] This value can be immediately overwritten by the hardware " "sensor value on Android and iOS." msgstr "" +"设置加速度传感器的重力值。可用于在没有硬件传感器的设备上进行调试,例如在PC上" +"的编辑器中。\n" +"[b]注意:[/b] 这个值在Android和iOS上可立即被硬件传感器的值覆盖。" #: doc/classes/Input.xml:341 msgid "" @@ -35441,6 +35647,9 @@ msgid "" "[b]Note:[/b] This value can be immediately overwritten by the hardware " "sensor value on Android and iOS." msgstr "" +"设置陀螺仪传感器的旋转速率值。可用于在没有硬件传感器的设备上进行调试,例如在" +"PC上的编辑器中。\n" +"[b]注意:[/b] 在Android和iOS上,这个值可立即被硬件传感器的值所覆盖。" #: doc/classes/Input.xml:349 msgid "" @@ -35450,6 +35659,9 @@ msgid "" "[b]Note:[/b] This value can be immediately overwritten by the hardware " "sensor value on Android and iOS." msgstr "" +"设置磁力传感器的磁场值。可用于在没有硬件传感器的设备上进行调试,例如在PC上的" +"编辑器中。\n" +"[b]注意:[/b] 在Android和iOS上,这个值可立即被硬件传感器的值所覆盖。" #: doc/classes/Input.xml:357 msgid "Sets the mouse mode. See the constants for more information." @@ -35500,14 +35712,14 @@ msgid "Stops the vibration of the joypad." msgstr "停止游戏手柄的振动。" #: doc/classes/Input.xml:390 -#, fuzzy msgid "" "Vibrate Android and iOS devices.\n" "[b]Note:[/b] It needs [code]VIBRATE[/code] permission for Android at export " "settings. iOS does not support duration." msgstr "" -"振动Android和iOS设备。\n" -"[b]注意:[/b]在导出设置时,它需要Android的VIBRATE权限,iOS不支持持续时间。" +"振动 Android 和 iOS 设备。\n" +"[b]注意:[/b]在导出设置时,它需要[code]VIBRATE[/code]安卓的权限。 iOS不支持持" +"续时间。" #: doc/classes/Input.xml:398 msgid "Sets the mouse position to the specified vector." @@ -35532,6 +35744,9 @@ msgid "" "[b]Note:[/b] If you want to process the mouse's movement in this mode, you " "need to use [member InputEventMouseMotion.relative]." msgstr "" +"捕获鼠标。鼠标将被隐藏,其位置被锁定在屏幕的中心。\n" +"[b]注意:[/b] 如果你想在这种模式下处理鼠标的移动,需要使用[member " +"InputEventMouseMotion.relative]。" #: doc/classes/Input.xml:423 msgid "Makes the mouse cursor visible but confines it to the game window." @@ -35666,7 +35881,8 @@ msgstr "各种输入事件的基类。参阅[method Node._input]。" #: doc/classes/InputEventScreenTouch.xml:11 #: doc/classes/InputEventWithModifiers.xml:10 msgid "https://docs.godotengine.org/en/3.4/tutorials/inputs/inputevent.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/inputs/inputevent.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/inputs/inputevent.html" #: doc/classes/InputEvent.xml:20 msgid "" @@ -35686,7 +35902,6 @@ msgid "Returns a [String] representation of the event." msgstr "返回事件的一个[String]字符串表示。" #: doc/classes/InputEvent.xml:35 -#, fuzzy msgid "" "Returns a value between 0.0 and 1.0 depending on the given actions' state. " "Useful for getting the value of events of type [InputEventJoypadMotion].\n" @@ -35694,8 +35909,11 @@ msgid "" "modifiers for [InputEventKey] and [InputEventMouseButton] events, and the " "direction for [InputEventJoypadMotion] events." msgstr "" -"根据给定的动作状态,返回0.0到1.0之间的值。对于获取[InputEventJoypadMotion]类" -"型的事件的值很有用。" +"根据给定的动作的状态,返回0.0到1.0之间的值。对于获取[InputEventJoypadMotion]" +"类型的事件值时,很有用。\n" +"如果[code]exact_match[/code]是[code]false[/code],它将忽略[InputEventKey]和" +"[InputEventMouseButton]事件的输入修饰符,以及[InputEventJoypadMotion]事件的方" +"向。" #: doc/classes/InputEvent.xml:44 msgid "" @@ -35705,9 +35923,12 @@ msgid "" "modifiers for [InputEventKey] and [InputEventMouseButton] events, and the " "direction for [InputEventJoypadMotion] events." msgstr "" +"如果这个输入事件与任何类型的预定义动作匹配,则返回[code]true[/code]。\n" +"如果[code]exact_match[/code]是[code]false[/code],它将忽略[InputEventKey]和" +"[InputEventMouseButton]事件的输入修饰符,以及[InputEventJoypadMotion]事件的方" +"向。" #: doc/classes/InputEvent.xml:54 -#, fuzzy msgid "" "Returns [code]true[/code] if the given action is being pressed (and is not " "an echo event for [InputEventKey] events, unless [code]allow_echo[/code] is " @@ -35717,12 +35938,14 @@ msgid "" "modifiers for [InputEventKey] and [InputEventMouseButton] events, and the " "direction for [InputEventJoypadMotion] events." msgstr "" -"如果给定的动作被按下,返回[code]true[/code](对于[InputEventKey]事件不是一个" -"回显事件,除非允许回显[code]allow_echo[/code]为[code]true[/code])。与" -"[InputEventMouseMotion]或[InputEventScreenDrag]类型的事件无关。" +"如果给定的动作被按下,则返回[code]true[/code],并且不是 [InputEventKey] 事件" +"的回显事件,除非 [code]allow_echo[/code] 是 [code]true[/code]。与" +"[InputEventMouseMotion]或[InputEventScreenDrag]类型的事件无关。\n" +"如果[code]exact_match[/code]是[code]false[/code],它将忽略[InputEventKey]和" +"[InputEventMouseButton]事件的输入修饰符,以及[InputEventJoypadMotion]事件的方" +"向。" #: doc/classes/InputEvent.xml:63 -#, fuzzy msgid "" "Returns [code]true[/code] if the given action is released (i.e. not " "pressed). Not relevant for events of type [InputEventMouseMotion] or " @@ -35731,9 +35954,11 @@ msgid "" "modifiers for [InputEventKey] and [InputEventMouseButton] events, and the " "direction for [InputEventJoypadMotion] events." msgstr "" -"如果给定的动作被按下,返回[code]true[/code](对于[InputEventKey]事件不是一个" -"回显事件,除非允许回显[code]allow_echo[/code]为[code]true[/code])。与" -"[InputEventMouseMotion]或[InputEventScreenDrag]类型的事件无关。" +"如果给定的动作被释放,即未被按下,则返回[code]true[/code]。与" +"[InputEventMouseMotion]或[InputEventScreenDrag]类型的事件无关。\n" +"如果[code]exact_match[/code]是[code]false[/code],它将忽略[InputEventKey]和" +"[InputEventMouseButton]事件的输入修饰符,以及[InputEventJoypadMotion]事件的方" +"向。" #: doc/classes/InputEvent.xml:70 msgid "" @@ -35769,6 +35994,13 @@ msgid "" "modifiers for [InputEventKey] and [InputEventMouseButton] events, and the " "direction for [InputEventJoypadMotion] events." msgstr "" +"如果指定的 [code]event[/code] 与此事件匹配,则返回 [code]true[/code]。仅对动" +"作事件有效,即键 ([InputEventKey])、按钮 ([InputEventMouseButton] 或 " +"[InputEventJoypadButton])、轴 [InputEventJoypadMotion] 或动作 " +"([InputEventAction]) 事件。\n" +"如果 [code]exact_match[/code] 是 [code]false[/code],它会忽略 " +"[InputEventKey] 和 [InputEventMouseButton] 事件的输入修饰符,以及 " +"[InputEventJoypadMotion] 事件的方向。" #: doc/classes/InputEvent.xml:99 msgid "" @@ -35811,7 +36043,8 @@ msgstr "" msgid "" "https://docs.godotengine.org/en/3.4/tutorials/inputs/inputevent.html#actions" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/inputs/inputevent.html#actions" +"https://docs.godotengine.org/zh_CN/stable/tutorials/inputs/inputevent." +"html#actions" #: doc/classes/InputEventAction.xml:18 msgid "The action's name. Actions are accessed via this [String]." @@ -35826,15 +36059,14 @@ msgstr "" "被释放。" #: doc/classes/InputEventAction.xml:24 -#, fuzzy msgid "" "The action's strength between 0 and 1. This value is considered as equal to " "0 if pressed is [code]false[/code]. The event strength allows faking analog " "joypad motion events, by specifying how strongly the joypad axis is bent or " "pressed." msgstr "" -"该动作的强度在0和1之间。如果按下的是[code]false[/code],则该值被视为等于0。事" -"件强度允许通过精确控制手柄轴弯曲或按下的强度来伪造模拟手柄运动事件。" +"动作的强度介于 0 和 1 之间。如果按下的是 [code]false[/code],则该值被视为等" +"于 0。事件强度允许通过指定手柄轴弯曲或按压的强度来仿造模拟手柄运动事件。" #: doc/classes/InputEventGesture.xml:4 msgid "Base class for touch control gestures." @@ -35862,9 +36094,8 @@ msgstr "" "[InputEventJoypadMotion]。" #: doc/classes/InputEventJoypadButton.xml:16 -#, fuzzy msgid "Button identifier. One of the [enum JoystickList] button constants." -msgstr "按钮标识符。枚举[enum JoyButtonList] 按钮常量之一。" +msgstr "按钮标识符。 [enum JoystickList] 按钮常量之一。" #: doc/classes/InputEventJoypadButton.xml:19 msgid "" @@ -35897,9 +36128,8 @@ msgid "" msgstr "存储关于操纵杆运动的信息。一个[InputEventJoypadMotion]一次代表一个轴。" #: doc/classes/InputEventJoypadMotion.xml:16 -#, fuzzy msgid "Axis identifier. Use one of the [enum JoystickList] axis constants." -msgstr "轴的标识符。使用[enum JoyAxisList]轴常数中的一个。" +msgstr "轴标识符。使用 [enum JoystickList] 轴常量之一。" #: doc/classes/InputEventJoypadMotion.xml:19 msgid "" @@ -35921,7 +36151,6 @@ msgid "" msgstr "存储键盘上的按键。支持按键、按键释放和[member echo]回显事件。" #: doc/classes/InputEventKey.xml:16 -#, fuzzy msgid "" "Returns the physical scancode combined with modifier keys such as " "[code]Shift[/code] or [code]Alt[/code]. See also [InputEventWithModifiers].\n" @@ -35930,14 +36159,13 @@ msgid "" "get_physical_scancode_with_modifiers())[/code] where [code]event[/code] is " "the [InputEventKey]." msgstr "" -"返回与修饰键(如[kbd]Shift[/kbd]或[kbd]Alt[/kbd])相结合的物理键码。也请参阅" +"返回与修改键组合的物理键码,例如 [code]Shift[/code] 或 [code]Alt[/code]。参阅" "[InputEventWithModifiers]。\n" -"要获得带有修饰符的[InputEventKey]的人类可读表示,使用[code]OS." -"get_keycode_string(event.get_physical_keycode_with_modifiers())[/code],其中" -"[code]event[/code] 是[InputEventKey]。" +"要获得带有修饰符的 [InputEventKey] 的人类可读表示,请使用 [code]OS." +"get_scancode_string(event.get_physical_scancode_with_modifiers())[/code] 其" +"中 [code]event[/code] 是 [InputEventKey]。" #: doc/classes/InputEventKey.xml:23 -#, fuzzy msgid "" "Returns the scancode combined with modifier keys such as [code]Shift[/code] " "or [code]Alt[/code]. See also [InputEventWithModifiers].\n" @@ -35946,10 +36174,10 @@ msgid "" "get_scancode_with_modifiers())[/code] where [code]event[/code] is the " "[InputEventKey]." msgstr "" -"返回与修饰键相结合的键码,如[kbd]Shift[/kbd]或[kbd]Alt[/kbd]。另请参阅带修饰" -"符的输入[InputEventWithModifiers]。\n" -"要获得带有修饰符的人类可读的 [InputEventKey] 表示,请使用 [code]OS." -"get_keycode_string(event.get_keycode_with_modifiers())[/code] 其中 " +"返回与 [code]Shift[/code] 或 [code]Alt[/code] 等修饰键组合的键码。参阅" +"[InputEventWithModifiers]。\n" +"要获得带有修饰符的 [InputEventKey] 的人类可读表示,请使用 [code]OS." +"get_scancode_string(event.get_scancode_with_modifiers())[/code] 其中 " "[code]event[/code] 是 [InputEventKey]。" #: doc/classes/InputEventKey.xml:30 @@ -35961,7 +36189,6 @@ msgstr "" "键。" #: doc/classes/InputEventKey.xml:33 -#, fuzzy msgid "" "Key physical scancode, which corresponds to one of the [enum KeyList] " "constants. Represent the physical location of a key on the 101/102-key US " @@ -35970,10 +36197,11 @@ msgid "" "get_scancode_string(event.physical_scancode)[/code] where [code]event[/code] " "is the [InputEventKey]." msgstr "" -"键的物理键码,对应于[enum KeyList]常量中的一个。代表101/102键美国QWERTY键盘上" -"一个键的物理位置。\n" -"要获得[InputEventKey]的人类可读的表示,使用[code]OS.get_keycode_string(event." -"keycode)[/code],其中[code]event[/code]是[InputEventKey]。" +"键的物理编码,对应于 [enum KeyList] 常量之一。表示 101/102 键美国 QWERTY 键盘" +"上按键的物理位置。\n" +"要获得 [InputEventKey] 的人类可读表示,请使用 [code]OS." +"get_scancode_string(event.physical_scancode)[/code] 其中 [code]event[/code] " +"是 [InputEventKey]。" #: doc/classes/InputEventKey.xml:37 msgid "" @@ -35984,7 +36212,6 @@ msgstr "" "被释放。" #: doc/classes/InputEventKey.xml:40 -#, fuzzy msgid "" "The key scancode, which corresponds to one of the [enum KeyList] constants. " "Represent key in the current keyboard layout.\n" @@ -35992,20 +36219,19 @@ msgid "" "get_scancode_string(event.scancode)[/code] where [code]event[/code] is the " "[InputEventKey]." msgstr "" -"键的键码,对应于[enum KeyList]常量中的一个。代表当前键盘布局中的键。\n" -"要获得[InputEventKey]的人类可读的表示,使用[code]OS.get_keycode_string(event." -"keycode)[/code],其中[code]event[/code]是[InputEventKey]。" +"键码,对应于 [enum KeyList] 常量之一。表示当前键盘布局中的键。\n" +"要获得 [InputEventKey] 的人类可读表示,请使用 [code]OS." +"get_scancode_string(event.scancode)[/code] 其中 [code]event[/code] 是 " +"[InputEventKey]。" #: doc/classes/InputEventKey.xml:44 -#, fuzzy msgid "" "The key Unicode identifier (when relevant). Unicode identifiers for the " "composite characters and complex scripts may not be available unless IME " "input mode is active. See [method OS.set_ime_active] for more information." msgstr "" -"键的 Unicode 标识符(相关时)。除非IME输入模式处于激活状态,否则可能无法为复" -"合字符和复杂脚本提供 Unicode 标识符。有关更多信息,请参阅 [方法Window." -"set_ime_active] 。" +"Unicode键标识符(如果相关)。除非 IME 输入模式处于激活状态,否则复合字符和复" +"杂脚本的 Unicode 标识符可能无法使用。更多信息参阅[method OS.set_ime_active]。" #: doc/classes/InputEventMouse.xml:4 msgid "Base input event type for mouse events." @@ -36052,7 +36278,7 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/inputs/" "mouse_and_input_coordinates.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/inputs/" +"https://docs.godotengine.org/zh_CN/stable/tutorials/inputs/" "mouse_and_input_coordinates.html" #: doc/classes/InputEventMouseButton.xml:16 @@ -36160,7 +36386,10 @@ msgid "The drag position." msgstr "拖拽的位置。" #: doc/classes/InputEventScreenDrag.xml:22 -msgid "The drag position relative to its start position." +#, fuzzy +msgid "" +"The drag position relative to the previous position (position at the last " +"frame)." msgstr "相对于其起始位置的拖动位置。" #: doc/classes/InputEventScreenDrag.xml:25 @@ -36251,7 +36480,8 @@ msgstr "" msgid "" "https://docs.godotengine.org/en/3.4/tutorials/inputs/inputevent.html#inputmap" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/inputs/inputevent.html#inputmap" +"https://docs.godotengine.org/zh_CN/stable/tutorials/inputs/inputevent." +"html#inputmap" #: doc/classes/InputMap.xml:18 msgid "" @@ -36776,6 +37006,9 @@ msgid "" "may cause a crash. If you wish to hide it or any of its children, use their " "[member CanvasItem.visible] property." msgstr "" +"返回与列表相关的[Object]ID。\n" +"[b]警告:[/b] 这是一个必要的内部节点,移除和释放它可能会导致崩溃。如果你想隐" +"藏它或它的任意子节点,请使用其的 [member CanvasItem.visible] 属性。" #: doc/classes/ItemList.xml:131 msgid "Returns [code]true[/code] if one or more items are selected." @@ -37133,7 +37366,7 @@ msgstr "" "这允许与嵌入页面交互或调用第三方 JavaScript API。\n" "[b]注意:[/b] 可以在构建时禁用此单例以提高安全性。默认情况下,启用 " "JavaScript 单例。官方导出模板也启用了 JavaScript 单例。有关详细信息,请参阅文" -"档中的 [url=https://docs.godotengine.org/en/3.4/development/compiling/" +"档中的 [url=https://docs.godotengine.org/zh_CN/stable/development/compiling/" "compiling_for_web.html]为 Web平台编译[/url]。" #: doc/classes/JavaScript.xml:11 @@ -37141,7 +37374,7 @@ msgid "" "https://docs.godotengine.org/en/3.4/getting_started/workflow/export/" "exporting_for_web.html#calling-javascript-from-script" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/workflow/export/" +"https://docs.godotengine.org/zh_CN/stable/getting_started/workflow/export/" "exporting_for_web.html#calling-javascript-from-script" #: doc/classes/JavaScript.xml:19 @@ -37150,6 +37383,8 @@ msgid "" "JavaScript. The reference must be kept until the callback happens, or it " "won't be called at all. See [JavaScriptObject] for usage." msgstr "" +"创建脚本函数的引用,可以被JavaScript用作回调。这个引用必须保持到回调发生为" +"止,否则它就不会被调用。使用方法参阅[JavaScriptObject]。" #: doc/classes/JavaScript.xml:26 msgid "" @@ -37157,6 +37392,8 @@ msgid "" "[code]object[/code] must a valid property of the JavaScript [code]window[/" "code]. See [JavaScriptObject] for usage." msgstr "" +"使用[code]new[/code]构造函数创建新的JavaScript对象。[code]object[/code]必须是" +"JavaScript[code]window[/code]的有效属性。使用方法参阅[JavaScriptObject]。" #: doc/classes/JavaScript.xml:35 msgid "" @@ -37171,6 +37408,14 @@ msgid "" "[b]Note:[/b] Browsers might ask the user for permission or block the " "download if multiple download requests are made in a quick succession." msgstr "" +"提示用户下载一个包含指定[code]buffer[/code]缓冲区的文件。该文件将具有给定的" +"[code]name[/code]和[code]mime[/code]类型。\n" +"[b]注意:[/b] 浏览器可能会根据文件[code]name[/code]的扩展名,覆盖所提供的" +"[url=https://en.wikipedia.org/wiki/Media_type]MIME类型[/url]。\n" +"[b]注意:[/b] 如果[method download_buffer]不是由用户交互调用,如点击按钮,浏" +"览器可能会阻止下载。\n" +"[b]注意:[/b] 如果快速连续提出多个下载请求,浏览器可能会要求用户同意或阻止下" +"载。" #: doc/classes/JavaScript.xml:46 msgid "" @@ -37195,11 +37440,13 @@ msgid "" "which will contain the JavaScript [code]arguments[/code]. See " "[JavaScriptObject] for usage." msgstr "" +"返回可以被脚本使用的JavaScript对象的接口。这个[code]interface[/code]必须是" +"JavaScript[code]window[/code]的一个有效属性。回调必须接受一个[Array]参数,它" +"将包含JavaScript [code]arguments[/code]。参阅[JavaScriptObject]的用法。" #: doc/classes/JavaScriptObject.xml:4 -#, fuzzy msgid "A wrapper class for native JavaScript objects." -msgstr "所有[i]scene[/i]对象的基类。" +msgstr "本地JavaScript对象的封装类。" #: doc/classes/JavaScriptObject.xml:7 msgid "" @@ -37239,13 +37486,47 @@ msgid "" "[/codeblock]\n" "[b]Note:[/b] Only available in the HTML5 platform." msgstr "" +"JavaScriptObject用于与通过[method JavaScript.get_interface]、[method " +"JavaScript.create_object]或[method JavaScript.create_callback]检索或创建的" +"JavaScript对象交互。\n" +"例:\n" +"[codeblock]\n" +"extends Node\n" +"\n" +"var _my_js_callback = JavaScript.create_callback(self, \"myCallback\") # " +"This reference must be kept\n" +"var console = JavaScript.get_interface(\"console\")\n" +"\n" +"func _init():\n" +" var buf = JavaScript.create_object(\"ArrayBuffer\", 10) # new " +"ArrayBuffer(10)\n" +" print(buf) # prints [JavaScriptObject:OBJECT_ID]\n" +" var uint8arr = JavaScript.create_object(\"Uint8Array\", buf) # new " +"Uint8Array(buf)\n" +" uint8arr[1] = 255\n" +" prints(uint8arr[1], uint8arr.byteLength) # prints 255 10\n" +" console.log(uint8arr) # prints in browser console \"Uint8Array(10) [ 0, " +"255, 0, 0, 0, 0, 0, 0, 0, 0 ]\"\n" +"\n" +" # Equivalent of JavaScript: Array.from(uint8arr).forEach(myCallback)\n" +" JavaScript.get_interface(\"Array\").from(uint8arr)." +"forEach(_my_js_callback)\n" +"\n" +"func myCallback(args):\n" +" # Will be called with the parameters passed to the \"forEach\" callback\n" +" # [0, 0, [JavaScriptObject:1173]]\n" +" # [255, 1, [JavaScriptObject:1173]]\n" +" # ...\n" +" # [0, 9, [JavaScriptObject:1180]]\n" +" print(args)\n" +"[/codeblock]\n" +"[b]注意:[/b] 只在HTML5平台上可用。" #: doc/classes/JNISingleton.xml:4 -#, fuzzy msgid "" "Singleton that connects the engine with Android plugins to interface with " "native Android code." -msgstr "在 HTML5 导出中将引擎与浏览器的 JavaScript 上下文连接的单例。" +msgstr "将引擎与 Android 插件连接起来以与原生 Android 代码交互的单例。" #: doc/classes/JNISingleton.xml:7 msgid "" @@ -37256,14 +37537,19 @@ msgid "" "Java_Native_Interface]Java Native Interface - Wikipedia[/url] for more " "information." msgstr "" +"JNISingleton 仅在 Android 导出中实现。它用于从用 Java 或 Kotlin 编写的 " +"Android 插件调用方法和连接信号。方法和信号可以被调用并连接到 JNISingleton,就" +"好像它是一个节点一样。有关更多信息,请参阅 [url=https://en.wikipedia.org/" +"wiki/Java_Native_Interface]Java Native Interface - Wikipedia[/url] Java 本机" +"接口维基百科。" #: doc/classes/JNISingleton.xml:10 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/plugins/android/android_plugin." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/plugins/android/android_plugin." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/plugins/android/" +"android_plugin.html" #: doc/classes/Joint.xml:4 msgid "Base class for all 3D joints." @@ -37389,6 +37675,34 @@ msgid "" "}\n" "[/codeblock]" msgstr "" +"将 [Variant] var 转换为 JSON 文本并返回结果。用于序列化数据以通过网络存储或发" +"送。\n" +"[b]注:[/b] JSON 规范没有定义 integer 或 float 类型,而只定义了 [i]number[/" +"i] 类型。因此,将 Variant 转换为 JSON 文本会将所有数值转换为 [float] 类型。\n" +"使用 [code]indent[/code] 参数来美观地打印输出。\n" +"[b]示例输出:[/b]\n" +"[codeblock]\n" +"## JSON.print(my_dictionary)\n" +"{\"name\":\"my_dictionary\",\"version\":\"1.0.0\",\"entities\":[{\"name\":" +"\"entity_0\",\"value\":\"value_0\"},{\"name\":\"entity_1\",\"value\":" +"\"value_1\"}]}\n" +"\n" +"## JSON.print(my_dictionary, \"\\t\")\n" +"{\n" +" \"name\": \"my_dictionary\",\n" +" \"version\": \"1.0.0\",\n" +" \"entities\": [\n" +" {\n" +" \"name\": \"entity_0\",\n" +" \"value\": \"value_0\"\n" +" },\n" +" {\n" +" \"name\": \"entity_1\",\n" +" \"value\": \"value_1\"\n" +" }\n" +" ]\n" +"}\n" +"[/codeblock]" #: doc/classes/JSONParseResult.xml:4 msgid "Data class wrapper for decoded JSON." @@ -37464,7 +37778,7 @@ msgstr "" #: doc/classes/JSONRPC.xml:4 msgid "A helper to handle dictionaries which look like JSONRPC documents." -msgstr "" +msgstr "用于处理看起来像JSONRPC文档的字典的助手。" #: doc/classes/JSONRPC.xml:7 msgid "" @@ -37475,6 +37789,10 @@ msgid "" "standard on top of [Dictionary]; you will have to convert between a " "[Dictionary] and [JSON] with other functions." msgstr "" +"[url=https://www.jsonrpc.org/]JSON-RPC[/url]是一个标准,它将一个方法调用包装" +"在一个[JSON]对象中。该对象有一个特定的结构,并标识出哪个方法被调用,该函数的" +"参数,并携带一个ID来跟踪响应。这个类在[Dictionary]之上实现了该标准;你必须用" +"其他函数在[Dictionary]和[JSON]之间进行转换。" #: doc/classes/JSONRPC.xml:17 msgid "" @@ -37484,6 +37802,9 @@ msgid "" "- [code]params[/code]: An array or dictionary of parameters being passed to " "the method." msgstr "" +"返回JSON-RPC通知形式的字典。通知是一次性的信息,不需要有响应。\n" +"- [code]method[/code]:被调用的方法的名称。\n" +"- [code]params[/code]:传递给该方法的参数的数组或字典。" #: doc/classes/JSONRPC.xml:28 msgid "" @@ -37496,6 +37817,11 @@ msgid "" "- [code]id[/code]: Uniquely identifies this request. The server is expected " "to send a response with the same ID." msgstr "" +"以JSON-RPC请求的形式返回字典。请求被发送到服务器,并期望得到响应。ID 字段用于" +"服务器指定它正在响应的确切请求。\n" +"- [code]method[/code]:被调用的方法的名称。\n" +"- [code]params[/code]:传递给该方法的参数的数组或字典。\n" +"- [code]id[/code]:唯一标识此请求。服务器应发送具有相同 ID 的响应。" #: doc/classes/JSONRPC.xml:39 msgid "" @@ -37505,6 +37831,10 @@ msgid "" "- [code]result[/code]: The return value of the function which was called.\n" "- [code]id[/code]: The ID of the request this response is targeted to." msgstr "" +"当服务器接收并处理请求时,它应该发送响应。如果你不想要回复,那么你需要发送通" +"知。\n" +"- [code]result[/code]:被调用函数的返回值。\n" +"- [code]id[/code]:此响应针对的请求的 ID。" #: doc/classes/JSONRPC.xml:50 msgid "" @@ -37514,6 +37844,11 @@ msgid "" "- [code]message[/code]: A custom message about this error.\n" "- [code]id[/code]: The request this error is a response to." msgstr "" +"创建响应,指示先前的回复以某种方式失败。\n" +"- [code]code[/code]:这是哪种错误对应的错误代码。参阅 [enum ErrorCode] 常" +"量。\n" +"- [code]message[/code]:关于此错误的自定义消息。\n" +"- [code]id[/code]:这个错误是对请求的响应。" #: doc/classes/JSONRPC.xml:61 msgid "" @@ -37526,19 +37861,24 @@ msgid "" "[code]action[/code]: The action to be run, as a Dictionary in the form of a " "JSON-RPC request or notification." msgstr "" +"给定采用 JSON-RPC 请求形式的字典:解压请求并运行它。通过查看名为 \"method\" " +"的字段并在 JSONRPC 对象中查找等效命名的函数来解析方法。如果找到,则调用该方" +"法。\n" +"要添加新的受支持方法,请扩展 JSONRPC 类并在你的子类上调用 [method " +"process_action]。\n" +"[code]action[/code]:要运行的动作,作为 JSON-RPC 请求或通知形式的字典。" #: doc/classes/JSONRPC.xml:86 msgid "" "A method call was requested but no function of that name existed in the " "JSONRPC subclass." -msgstr "" +msgstr "请求了方法调用,但 JSONRPC 子类中不存在该名称的函数。" #: doc/classes/KinematicBody.xml:4 msgid "Kinematic body 3D node." msgstr "3D运动体节点。" #: doc/classes/KinematicBody.xml:7 -#, fuzzy msgid "" "Kinematic bodies are special types of bodies that are meant to be user-" "controlled. They are not affected by physics at all; to other types of " @@ -37555,45 +37895,42 @@ 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" +"运动体是特殊类型的物体,指在让用户控制。它们完全不受物理影响;对于其他类型的" +"物体,如角色或刚体,它们与静态体是一样的。然而,它们有两个主要用途。\n" "[b]模拟运动:[/b]当这些物体被手动移动时,无论是从代码还是从[AnimationPlayer]" -"([member AnimationPlayer.playback_process_mode]设置为“物理”),物理将自动计" -"算估计它们的线性和角速度。这使得它们对于移动平台或其他 AnimationPlayer 控制的" -"对象(如门、打开的桥等)非常有用。\n" -"[b]运动学特征:[/b] KinematicBody2D 在执行碰撞测试时也有一个用于移动物体的 " -"API([method move_and_collide] 和 [method move_and_slide] 方法)。这使得它们" -"对于实现与世界发生碰撞但不需要高级物理的角色非常有用。" +"(将[member AnimationPlayer.playback_process_mode]设置为 \"physics\"),物理" +"将自动估算其线性和角速度。这使得它们对于移动平台或其他AnimationPlayer控制的物" +"体非常有用,比如一扇门、一座能打开的桥等。\n" +"[b]运动型角色:[/b] KinematicBody也有一个API用于移动物体([method " +"move_and_collide]和[method move_and_slide]方法),同时执行碰撞测试。这使得它" +"们在实现对世界进行碰撞,但不需要高级物理的角色时非常有用。" #: doc/classes/KinematicBody.xml:12 doc/classes/KinematicBody2D.xml:12 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/physics/kinematic_character_2d." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/physics/kinematic_character_2d." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/physics/" +"kinematic_character_2d.html" #: doc/classes/KinematicBody.xml:23 -#, fuzzy msgid "" "Returns [code]true[/code] if the specified [code]axis[/code] is locked. See " "also [member move_lock_x], [member move_lock_y] and [member move_lock_z]." msgstr "" -"如果指定的[code]axis[/code]被锁定,则返回[code]true[/code]。参阅[member " -"axis_lock_motion_x],[member axis_lock_motion_y]和[member " -"axis_lock_motion_z]。" +"如果指定的 [code]axis[/code] 被锁定,则返回 [code]true[/code]。参阅[member " +"move_lock_x]、[member move_lock_y]和[member move_lock_z]。" #: doc/classes/KinematicBody.xml:30 -#, fuzzy msgid "" "Returns the floor's collision angle at the last collision point according to " "[code]up_direction[/code], which is [code]Vector3.UP[/code] by default. This " "value is always positive and only valid after calling [method " "move_and_slide] and when [method is_on_floor] returns [code]true[/code]." msgstr "" -"返回最后一个碰撞点地板的线速度。仅在调用 [method move_and_slide] 或 [method " -"move_and_slide_with_snap] 且 [method is_on_floor] 返回 [code]true[/code] 后有" -"效。" +"根据[code]up_direction[/code]返回最后一个碰撞点的地板碰撞角度,默认为" +"[code]Vector3.UP[/code]。此值始终为正值,并且仅在调用 [method " +"move_and_slide] 后且当 [method is_on_floor] 返回 [code]true[/code] 时有效。" #: doc/classes/KinematicBody.xml:36 doc/classes/KinematicBody2D.xml:28 msgid "" @@ -37618,15 +37955,14 @@ msgstr "" "效。" #: doc/classes/KinematicBody.xml:48 -#, fuzzy msgid "" "Returns a [KinematicCollision], which contains information about the latest " "collision that occurred during the last call to [method move_and_slide]." msgstr "" -"返回在最后一次调用[method move_and_slide]时实体发生碰撞和改变方向的次数。" +"返回 [KinematicCollision],其中包含有关上次调用 [method move_and_slide] 期间" +"发生的最新碰撞的信息。" #: doc/classes/KinematicBody.xml:55 -#, fuzzy msgid "" "Returns a [KinematicCollision], which contains information about a collision " "that occurred during the last call to [method move_and_slide] or [method " @@ -37634,68 +37970,66 @@ msgid "" "single call to [method move_and_slide], you must specify the index of the " "collision in the range 0 to ([method get_slide_count] - 1)." msgstr "" -"返回[KinematicCollision3D],它包含在最后一个[method move_and_slide]调用期间发" -"生的碰撞的相关信息。由于在[method move_and_slide]的单个调用中,物体可能会发生" -"多次碰撞,因此必须在0到([method get_slide_count] - 1)的范围内指定碰撞的索引。" +"返回 [KinematicCollision],其中包含有关上次调用 [method move_and_slide] 或 " +"[method move_and_slide_with_snap] 期间发生的碰撞的信息。由于物体可以在一次调" +"用 [method move_and_slide] 时发生多次碰撞,因此你必须在 0 到 ([method " +"get_slide_count] - 1) 范围内指定碰撞的索引。" #: doc/classes/KinematicBody.xml:61 doc/classes/KinematicBody2D.xml:59 -#, fuzzy msgid "" "Returns the number of times the body collided and changed direction during " "the last call to [method move_and_slide] or [method " "move_and_slide_with_snap]." msgstr "" -"返回在最后一次调用[method move_and_slide]时实体发生碰撞和改变方向的次数。" +"返回上次调用 [method move_and_slide] 或 [method move_and_slide_with_snap] 期" +"间物体发生碰撞和改变方向的次数。" #: doc/classes/KinematicBody.xml:67 doc/classes/KinematicBody2D.xml:65 -#, fuzzy msgid "" "Returns [code]true[/code] if the body collided with the ceiling on the last " "call of [method move_and_slide] or [method move_and_slide_with_snap]. " "Otherwise, returns [code]false[/code]." msgstr "" -"返回最后一个碰撞点的地板的表面法线。只有在调用[method move_and_slide]或" -"[method move_and_slide_with_snap]后,以及[method is_on_floor]返回[code]true[/" -"code]时才有效。" +"如果在最后一次调用 [method move_and_slide] 或 [method " +"move_and_slide_with_snap] 时物体与天花板发生碰撞,则返回 [code]true[/code]。" +"否则,返回 [code]false[/code]。" #: doc/classes/KinematicBody.xml:73 doc/classes/KinematicBody2D.xml:71 -#, fuzzy msgid "" "Returns [code]true[/code] if the body collided with the floor on the last " "call of [method move_and_slide] or [method move_and_slide_with_snap]. " "Otherwise, returns [code]false[/code]." msgstr "" -"返回最后一个碰撞点地板的线速度。仅在调用 [method move_and_slide] 或 [method " -"move_and_slide_with_snap] 且 [method is_on_floor] 返回 [code]true[/code] 后有" -"效。" +"如果在最后一次调用 [method move_and_slide] 或 [method " +"move_and_slide_with_snap] 时物体与地板发生碰撞,则返回 [code]true[/code]。否" +"则,返回 [code]false[/code]。" #: doc/classes/KinematicBody.xml:79 doc/classes/KinematicBody2D.xml:77 -#, fuzzy msgid "" "Returns [code]true[/code] if the body collided with a wall on the last call " "of [method move_and_slide] or [method move_and_slide_with_snap]. Otherwise, " "returns [code]false[/code]." msgstr "" -"返回最后一个碰撞点的地板的表面法线。只有在调用[method move_and_slide]或" -"[method move_and_slide_with_snap]后,以及[method is_on_floor]返回[code]true[/" -"code]时才有效。" +"如果在最后一次调用 [method move_and_slide] 或 [method " +"move_and_slide_with_snap] 时物体与墙壁发生碰撞,则返回 [code]true[/code]。否" +"则,返回 [code]false[/code]。" #: doc/classes/KinematicBody.xml:89 #, fuzzy msgid "" "Moves the body along the vector [code]rel_vec[/code]. The body will stop if " "it collides. Returns a [KinematicCollision], which contains information " -"about the collision.\n" +"about the collision when stopped, or when touching another body along the " +"motion.\n" "If [code]test_only[/code] is [code]true[/code], the body does not move but " "the would-be collision information is given." msgstr "" -"沿着向量[code]rel_vec[/code]移动物体。如果物体碰撞,它将停止。返回" -"[KinematicCollision2D],其中包含有关碰撞的信息。\n" -"如果[code]test_only[/code]为[code]true[/code],则物体不会移动,但会提供可能的" -"碰撞信息。" +"沿向量 [code]rel_vec[/code] 移动物体。如果碰撞,物体会停止。返回 " +"[KinematicCollision],其中包含有关碰撞的信息。\n" +"如果 [code]test_only[/code] 是 [code]true[/code],则物体不会移动,但会给出可" +"能发生的碰撞信息。" #: doc/classes/KinematicBody.xml:102 -#, fuzzy msgid "" "Moves the body along a vector. If the body collides with another, it will " "slide along the other body rather than stop immediately. If the other body " @@ -37732,28 +38066,30 @@ msgid "" "automatically added to the body motion. If a collision occurs due to the " "platform's motion, it will always be first in the slide collisions." msgstr "" -"沿着向量移动物体。如果该体与另一个物体相撞,它将沿着另一个物体滑动,而不是立" -"即停止。如果另一个物体是[KinematicBody3D]或[RigidBody3D],它也会被另一个物体" -"的运动所影响。你可以用它来制作移动或旋转的平台,或者让节点推动其他节点。\n" +"沿着向量移动物体。如果这个物体与另一个物体相撞,它将沿着另一个物体滑动,而不" +"是立即停止。如果另一个物体是[KinematicBody]或[RigidBody],它也会被另一个物体" +"的运动所影响。你可以用它来制作移动和旋转的平台,或者让节点推动其他节点。\n" "这个方法应该在[method Node._physics_process]中使用,或者在被[method Node." "_physics_process]调用的方法中使用,因为它在计算时,自动使用物理步骤的" -"[code]delta[/code]值。否则,模拟的运行速度将不正确。\n" -"[code]linear_velocity[/code] 是速度向量,通常是米/秒。与[method " -"move_and_collide]不同的是,你[i]不应该[/i]将其乘以[code]delta[/code]--物理引" +"[code]delta[/code]值。否则,模拟将以不正确的速度运行。\n" +"[code]linear_velocity[/code]是速度向量,通常是米/秒。与[method " +"move_and_collide]不同的是,你[i]不应该[/i]把它乘以[code]delta[/code]--物理引" "擎会处理应用速度。\n" "[code]up_direction[/code] 是向上的方向,用来确定什么是墙,什么是地板或天花" -"板。如果设置为默认值[code]Vector3(0, 0, 0)[/code],所有都被认为是墙。\n" +"板。如果设置为默认值[code]Vector3(0, 0, 0)[/code],一切都被认为是墙。\n" "如果[code]stop_on_slope[/code]是[code]true[/code],当你在" -"[code]lineal_velocity[/code]中包含重力,并且物体静止时,物体将不会在斜坡上滑" +"[code]linear_velocity[/code]中包含重力并且物体静止时,物体将不会在斜坡上滑" "动。\n" -"如果物体发生碰撞,它将在停止前,最多改变[code]max_slides[/code]次方向。\n" -"[code]floor_max_angle[/code]是一个最大的角度(弧度),在这个角度里,一个斜坡" +"如果物体发生碰撞,它最多会改变方向[code]max_slides[/code]次才会停止。\n" +"[code]floor_max_angle[/code]是一个最大的角度(弧度),在这个角度下,一个斜坡" "仍然被认为是地板或天花板,而不是墙壁。默认值等于45度。\n" "如果[code]infinite_inertia[/code]是[code]true[/code],物体将能够推动" -"[RigidBody3D]节点,但它也不会检测到所有与它们的碰撞。如果[code]false[/code]," -"它将像[RigidBody3D]节点与[StaticBody3D]一样互动。\n" -"返回[code]linear_velocity[/code]向量,如果发生了滑动碰撞,则旋转和/或缩放。要" -"获得发生碰撞的详细信息,请使用[method get_slide_collision]。" +"[RigidBody]节点,但它也不会检测到任何与它们的碰撞。如果[code]false[/code],它" +"将与[RigidBody]节点像[StaticBody]一样交互。\n" +"返回[code]linear_velocity[/code]向量,如果发生滑动碰撞,则旋转和/或缩放。要获" +"得发生碰撞的详细信息,请使用[method get_slide_collision]。\n" +"当物体接触到一个移动的平台时,平台的速度会自动加入到物体的运动中。如果由于平" +"台的运动而发生碰撞,它将始终是滑动碰撞中的第一个。" #: doc/classes/KinematicBody.xml:124 msgid "" @@ -37770,40 +38106,41 @@ msgstr "" "code]或者使用[method move_and_slide]来实现。" #: doc/classes/KinematicBody.xml:133 -#, fuzzy msgid "" "Locks or unlocks the specified [code]axis[/code] depending on the value of " "[code]lock[/code]. See also [member move_lock_x], [member move_lock_y] and " "[member move_lock_z]." msgstr "" "根据[code]lock[/code]的值,锁定或解锁指定的[code]axis[/code]。参阅[member " -"axis_lock_motion_x], [member axis_lock_motion_y] 和 [member " -"axis_lock_motion_z]。" +"move_lock_x]、[member move_lock_y]和[member move_lock_z]。" #: doc/classes/KinematicBody.xml:142 +#, fuzzy msgid "" "Checks for collisions without moving the body. Virtually sets the node's " "position, scale and rotation to that of the given [Transform], then tries to " "move the body along the vector [code]rel_vec[/code]. Returns [code]true[/" -"code] if a collision would occur." +"code] if a collision would stop the body from moving along the whole path.\n" +"Use [method move_and_collide] instead for detecting collision with touching " +"bodies." msgstr "" "在不移动物体的情况下检查碰撞情况。实际上是将节点的位置、比例和旋转设置为给定" "的[Transform],然后尝试沿着矢量[code]rel_vec[/code]移动物体。如果会发生碰撞," "返回[code]true[/code]。" -#: doc/classes/KinematicBody.xml:148 +#: doc/classes/KinematicBody.xml:149 msgid "Lock the body's X axis movement." msgstr "锁定物体的X轴运动。" -#: doc/classes/KinematicBody.xml:151 +#: doc/classes/KinematicBody.xml:152 msgid "Lock the body's Y axis movement." msgstr "锁定物体的Y轴运动。" -#: doc/classes/KinematicBody.xml:154 +#: doc/classes/KinematicBody.xml:155 msgid "Lock the body's Z axis movement." msgstr "锁定物体的Z轴运动。" -#: doc/classes/KinematicBody.xml:157 doc/classes/KinematicBody2D.xml:138 +#: doc/classes/KinematicBody.xml:158 doc/classes/KinematicBody2D.xml:139 msgid "" "Extra margin used for collision recovery in motion functions (see [method " "move_and_collide], [method move_and_slide], [method " @@ -37817,8 +38154,15 @@ msgid "" "scale to avoid visible jittering, or for stability with a stack of kinematic " "bodies." msgstr "" +"在运动函数中用于碰撞恢复的额外边距,参阅[method move_and_collide], [method " +"move_and_slide], [method move_and_slide_with_snap]。\n" +"如果物体离另一个物体至少这么近,它就会认为它们正在发生碰撞,并在执行实际运动" +"之前被推开。\n" +"一个较高的值意味着它在检测碰撞时更加灵活,这有助于持续检测墙壁和地板。\n" +"一个较低的值迫使碰撞算法使用更精确的检测,所以它可以用于特别需要精确性的情" +"况,例如在非常低的比例下避免可见的抖动,或者用于运动体堆叠的稳定性。" -#: doc/classes/KinematicBody.xml:163 doc/classes/KinematicBody2D.xml:144 +#: doc/classes/KinematicBody.xml:164 doc/classes/KinematicBody2D.xml:145 msgid "" "If [code]true[/code], the body's movement will be synchronized to the " "physics frame. This is useful when animating movement via [AnimationPlayer], " @@ -37829,30 +38173,29 @@ msgstr "" "为运动设置动画时,例如在移动平台上,这个功能很有用。请[b]不要[/b]与 [method " "move_and_slide] 或 [method move_and_collide] 函数一起使用。" -#: doc/classes/KinematicBody.xml:166 +#: doc/classes/KinematicBody.xml:167 msgid "" "Lock the body's X axis movement. Deprecated alias for [member " "axis_lock_motion_x]." -msgstr "" +msgstr "锁定物体的X轴运动。已被废弃的[member axis_lock_motion_x]的别名。" -#: doc/classes/KinematicBody.xml:169 +#: doc/classes/KinematicBody.xml:170 msgid "" "Lock the body's Y axis movement. Deprecated alias for [member " "axis_lock_motion_y]." -msgstr "" +msgstr "锁定物体的Y轴运动。已被废弃的[member axis_lock_motion_y]的别名。" -#: doc/classes/KinematicBody.xml:172 +#: doc/classes/KinematicBody.xml:173 msgid "" "Lock the body's Z axis movement. Deprecated alias for [member " "axis_lock_motion_z]." -msgstr "" +msgstr "锁定物体的Z轴运动。已被废弃的[member axis_lock_motion_z]的别名。" #: doc/classes/KinematicBody2D.xml:4 msgid "Kinematic body 2D node." msgstr "2D运动体节点。" #: doc/classes/KinematicBody2D.xml:7 -#, fuzzy msgid "" "Kinematic bodies are special types of bodies that are meant to be user-" "controlled. They are not affected by physics at all; to other types of " @@ -37869,47 +38212,45 @@ 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]设置为“物理”),物理将自动计" -"算估计它们的线性和角速度。这使得它们对于移动平台或其他 AnimationPlayer 控制的" -"对象(如门、打开的桥等)非常有用。\n" -"[b]运动学特征:[/b] KinematicBody2D 在执行碰撞测试时也有一个用于移动物体的 " -"API([method move_and_collide] 和 [method move_and_slide] 方法)。这使得它们" -"对于实现与世界发生碰撞但不需要高级物理的角色非常有用。" +"运动体是特殊类型的物体,旨在让用户控制。它们完全不受物理影响;对于其他类型的" +"物体,如角色或刚体,它们与静态体一样。然而,它们有两个主要用途:\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:13 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/physics/" "using_kinematic_body_2d.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/physics/" +"https://docs.godotengine.org/zh_CN/stable/tutorials/physics/" "using_kinematic_body_2d.html" #: doc/classes/KinematicBody2D.xml:22 -#, fuzzy msgid "" "Returns the floor's collision angle at the last collision point according to " "[code]up_direction[/code], which is [code]Vector2.UP[/code] by default. This " "value is always positive and only valid after calling [method " "move_and_slide] and when [method is_on_floor] returns [code]true[/code]." msgstr "" -"返回最后一个碰撞点地板的线速度。仅在调用 [method move_and_slide] 或 [method " -"move_and_slide_with_snap] 且 [method is_on_floor] 返回 [code]true[/code] 后有" -"效。" +"根据[code]up_direction[/code]返回最后一个碰撞点的地板碰撞角度,默认为" +"[code]Vector2.UP[/code]。此值始终为正值,并且仅在调用 [method " +"move_and_slide] 后且当 [method is_on_floor] 返回 [code]true[/code] 时有效。" #: doc/classes/KinematicBody2D.xml:40 -#, fuzzy msgid "" "Returns a [KinematicCollision2D], which contains information about the " "latest collision that occurred during the last call to [method " "move_and_slide]." msgstr "" -"返回在最后一次调用[method move_and_slide]时实体发生碰撞和改变方向的次数。" +"返回[KinematicCollision2D],它包含在最后一次调用[method move_and_slide]时发生" +"的最新碰撞信息。" #: doc/classes/KinematicBody2D.xml:47 -#, fuzzy msgid "" "Returns a [KinematicCollision2D], which contains information about a " "collision that occurred during the last call to [method move_and_slide] or " @@ -37923,22 +38264,24 @@ msgid "" " print(\"Collided with: \", collision.collider.name)\n" "[/codeblock]" msgstr "" -"返回一个[KinematicCollision2D],它包含了在最后一次[method move_and_slide]调用" -"时发生的碰撞的信息。由于在一次对[method move_and_slide]的调用中,身体可以发生" -"多次碰撞,所以你必须在0到([method get_slide_count] - 1)的范围内指定碰撞的索" -"引。\n" -"[b]使用实例:[/b]\n" +"返回 [KinematicCollision2D],其中包含有关上次调用 [method move_and_slide] 或 " +"[method move_and_slide_with_snap] 期间发生的碰撞的信息。由于物体可以在一次调" +"用 [method move_and_slide] 时发生多次碰撞,因此你必须在 0 到 ([method " +"get_slide_count] - 1) 范围内指定碰撞的索引。\n" +"[b]用法示例:[/b]\n" "[codeblock]\n" "for i in get_slide_count():\n" " var collision = get_slide_collision(i)\n" -" print(\"Collided with: \" , collision.collider.name)\n" +" print(\"Collided with: \", collision.collider.name)\n" "[/codeblock]" #: doc/classes/KinematicBody2D.xml:87 +#, fuzzy msgid "" "Moves the body along the vector [code]rel_vec[/code]. The body will stop if " "it collides. Returns a [KinematicCollision2D], which contains information " -"about the collision.\n" +"about the collision when stopped, or when touching another body along the " +"motion.\n" "If [code]test_only[/code] is [code]true[/code], the body does not move but " "the would-be collision information is given." msgstr "" @@ -37948,7 +38291,6 @@ msgstr "" "碰撞信息。" #: doc/classes/KinematicBody2D.xml:100 -#, fuzzy msgid "" "Moves the body along a vector. If the body collides with another, it will " "slide along the other body rather than stop immediately. If the other body " @@ -37985,29 +38327,32 @@ msgid "" "automatically added to the body motion. If a collision occurs due to the " "platform's motion, it will always be first in the slide collisions." msgstr "" -"沿向量移动物体。如果物体与另一个物体碰撞,它会沿着另一个物体滑动而不是立即停" -"止。如果另一个物体是[KinematicBody2D]或[RigidBody2D],它也会受到另一个物体的" -"运动的影响。你可以使用它来制作移动或旋转平台,或者让节点推动其他节点。\n" -"此方法应在 [method Node._physics_process](或者在被[method Node." -"_physics_process]调用的方法)中使用因为它在计算中自动使用物理步骤的" -"[code]delta[/code]值。否则,模拟将以错误的速度运行。\n" -"[code]linear_velocity[/code]是线速度向量,单位是像素每秒。与[method " -"move_and_collide]不同的是,你[i]不应该[/i]将它乘以[code]delta[/code]——物理引" +"沿着向量移动物体。如果这个物体与另一个物体相撞,它将沿着另一个物体滑动,而不" +"是立即停止。如果另一个物体是[KinematicBody2D]或[RigidBody2D],它也会被另一个" +"物体的运动所影响。你可以用它来制作移动和旋转的平台,或者让节点推动其他节" +"点。\n" +"这个方法应该在[method Node._physics_process]中使用,或者在被[method Node." +"_physics_process]调用的方法中使用,因为它在计算时自动使用物理步骤的" +"[code]delta[/code]值。否则,模拟将以不正确的速度运行。\n" +"[code]linear_velocity[/code]是速度向量,单位是像素每秒。与[method " +"move_and_collide]不同的是,你[i]不应该[/i]将它乘以[code]delta[/code]--物理引" "擎会处理应用速度。\n" -"[code]up_direction[/code]是向上的方向,用来判断什么是墙,什么是地板或天花板。" -"如果设置为默认值 [code]Vector2(0, 0)[/code],则一切都被视为墙。这对于俯视视角" -"(topdown )的游戏很有用。\n" -"如果 [code]stop_on_slope[/code] 是 [code]true[/code],当你在" -"[code]linear_velocity[/code]中包含重力并且物体静止时,物体将不会在斜坡上滑" +"[code]up_direction[/code] 是向上的方向,用来确定什么是墙,什么是地板或天花" +"板。如果设置为默认值[code]Vector2(0, 0)[/code],一切都被认为是墙。这对于自上" +"而下的游戏很有用。\n" +"如果[code]stop_on_slope[/code]是[code]true[/code],当你在" +"[code]linear_velocity[/code]中包含重力并且物体静止时,物体就不会在斜坡上滑" "动。\n" -"如果物体发生碰撞,它将在停止之前最多改变方向 [code]max_slides[/code] 次。\n" -"[code]floor_max_angle[/code] 是最大角度(以弧度为单位),在这个角度下,一个斜" -"坡仍然被认为是地板(或天花板),而不是墙壁。默认值等于45度。\n" -"如果 [code]infinite_inertia[/code] 无穷惯性是 [code]true[/code],物体将能够推" -"动 [RigidBody2D] 节点,但它也不会检测到与它们的任何碰撞。如果 [code]false[/" -"code],它将与 [RigidBody2D] 节点交互,就像与 [StaticBody2D] 一样。\n" -"返回 [code]linear_velocity[/code] 向量,如果发生滑动碰撞,则旋转和/或缩放。要" -"获取有关发生的冲突的详细信息,请使用 [method get_slide_collision]。" +"如果物体发生碰撞,它最多会改变方向[code]max_slides[/code]次才会停止。\n" +"[code]floor_max_angle[/code]是一个最大的角度(弧度),在这个角度下,一个斜坡" +"仍然被认为是地板或天花板,而不是墙。默认值等于45度。\n" +"如果[code]infinite_inertia[/code]是[code]true[/code],物体将能够推动" +"[RigidBody2D]节点,但它也不会检测到任何与它们的碰撞。如果[code]false[/code]," +"它将与[RigidBody2D]节点像[StaticBody2D]一样交互。\n" +"返回[code]linear_velocity[/code]向量,如果发生滑动碰撞,则旋转和/或缩放。要获" +"得发生碰撞的详细信息,请使用[method get_slide_collision]。\n" +"当物体接触到一个移动的平台时,平台的速度会自动加入到物体的运动中。如果由于平" +"台的运动而发生碰撞,它将始终是滑动碰撞中的第一个。" #: doc/classes/KinematicBody2D.xml:122 msgid "" @@ -38024,23 +38369,24 @@ msgstr "" "或使用 [method move_and_slide]来做到这一点。" #: doc/classes/KinematicBody2D.xml:132 +#, fuzzy msgid "" "Checks for collisions without moving the body. Virtually sets the node's " "position, scale and rotation to that of the given [Transform2D], then tries " "to move the body along the vector [code]rel_vec[/code]. Returns [code]true[/" -"code] if a collision would occur." +"code] if a collision would stop the body from moving along the whole path.\n" +"Use [method move_and_collide] instead for detecting collision with touching " +"bodies." msgstr "" "在不移动物体的情况下检查碰撞。将节点的坐标,比例和旋转虚拟地设置为给定" "[Transform2D]的坐标,比例和旋转,然后尝试沿着向量[code]rel_vec[/code]移动物" "体。如果发生碰撞,则返回[code]true[/code]。" #: doc/classes/KinematicCollision.xml:4 -#, fuzzy msgid "Collision data for [KinematicBody] collisions." -msgstr "[KinematicBody2D] 动态物体2D碰撞器碰撞的数据。" +msgstr "[KinematicBody] 碰撞的碰撞数据。" #: doc/classes/KinematicCollision.xml:7 -#, fuzzy msgid "" "Contains collision data for [KinematicBody] collisions. When a " "[KinematicBody] is moved using [method KinematicBody.move_and_collide], it " @@ -38050,17 +38396,19 @@ msgid "" "colliding object, the remaining motion, and the collision position. This " "information can be used to calculate a collision response." msgstr "" -"包含[KinematicBody2D]碰撞的碰撞数据。当使用 [method KinematicBody2D." -"move_and_collide] 移动[KinematicBody2D]时,如果检测到与另一个物体的碰撞,它将" -"停止。如果检测到碰撞,则返回KinematicCollision2D对象。\n" -"该对象包含有关碰撞的信息,包括碰撞对象,剩余运动和碰撞坐标。该信息可用于计算" -"碰撞响应。" +"包含[KinematicBody]碰撞的碰撞数据。当[KinematicBody]使用[method " +"KinematicBody.move_and_collide]移动时,如果它检测到与另一个物体的碰撞就会停" +"止。如果检测到碰撞,将返回一个KinematicCollision对象。\n" +"这个对象包含关于碰撞的信息,包括碰撞的物体、剩余的运动和碰撞的位置。这些信息" +"可以用来计算碰撞响应。" #: doc/classes/KinematicCollision.xml:17 msgid "" "The collision angle according to [code]up_direction[/code], which is " "[code]Vector3.UP[/code] by default. This value is always positive." msgstr "" +"根据[code]up_direction[/code]的碰撞角度,默认为[code]Vector3.UP[/code]。这个" +"值总是为正。" #: doc/classes/KinematicCollision.xml:23 #: doc/classes/KinematicCollision2D.xml:23 @@ -38079,9 +38427,8 @@ msgid "The colliding body's metadata. See [Object]." msgstr "碰撞体的元数据。参阅[Object]。" #: doc/classes/KinematicCollision.xml:32 -#, fuzzy msgid "The colliding body's [RID] used by the [PhysicsServer]." -msgstr "碰撞体的形状。" +msgstr "[PhysicsServer] 使用的碰撞体的 [RID]。" #: doc/classes/KinematicCollision.xml:35 #: doc/classes/KinematicCollision2D.xml:35 @@ -38089,9 +38436,8 @@ msgid "The colliding body's shape." msgstr "碰撞体的形状。" #: doc/classes/KinematicCollision.xml:38 -#, fuzzy msgid "The colliding shape's index. See [CollisionObject]." -msgstr "碰撞形状的索引。参阅[CollisionObject2D]。" +msgstr "碰撞形状的索引。参阅[CollisionObject]。" #: doc/classes/KinematicCollision.xml:41 #: doc/classes/KinematicCollision2D.xml:41 @@ -38148,10 +38494,12 @@ msgid "" "The collision angle according to [code]up_direction[/code], which is " "[code]Vector2.UP[/code] by default. This value is always positive." msgstr "" +"根据[code]up_direction[/code]的碰撞角度,默认为[code]Vector2.UP[/code]。这个" +"值总是为正。" #: doc/classes/KinematicCollision2D.xml:32 msgid "The colliding body's [RID] used by the [Physics2DServer]." -msgstr "" +msgstr "[Physics2DServer] 使用的碰撞体的 [RID]。" #: doc/classes/KinematicCollision2D.xml:38 msgid "The colliding shape's index. See [CollisionObject2D]." @@ -38166,7 +38514,6 @@ msgstr "" "[RichTextLabel]。" #: doc/classes/Label.xml:7 -#, fuzzy msgid "" "Label displays plain text on the screen. It gives you control over the " "horizontal and vertical alignment and can wrap the text inside the node's " @@ -38181,13 +38528,15 @@ 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 "" -"Label标签在屏幕上显示纯文本。你可以控制水平和垂直的对齐方式,并可以将文本包裹" -"在节点的边界矩形内。它不支持粗体、斜体或其他格式化,对于这点,请使用" -"[RichTextLabel]代替。\n" -"[b]注意:[/b] 与大多数其他[Control]相反,Label的[member Control.mouse_filter]" -"默认为[constant Control.MOUSE_FILTER_IGNORE],即,它对鼠标输入事件没有反应。" -"这意味着标签不会显示任何配置的[member Control.hint_tooltip],除非你改变其鼠标" -"过滤器。" +"标签在屏幕上显示纯文本。可以控制水平和垂直的对齐方式,并且可以将文本包裹在节" +"点的边界矩形内。它不支持粗体、斜体或其他格式。若使用,请改用 " +"[RichTextLabel]。\n" +"[b]注意:[/b] 与大多数其他 [Control] 不同,Label 的 [member Control." +"mouse_filter] 默认为 [constant Control.MOUSE_FILTER_IGNORE],即它不响应鼠标输" +"入事件。这意味着标签不会显示任何已配置的 [member Control.hint_tooltip],除非" +"更改其鼠标过滤器。\n" +"[b]注意:[/b] [code]0xffff[/code] 之后的 Unicode 字符在 Windows 上 [i]不支持 " +"[/i],例如大多数表情符号,它们将显示为未知字符。这将在 Godot 4.0 中解决。" #: doc/classes/Label.xml:18 msgid "Returns the amount of lines of text the Label has." @@ -38227,13 +38576,11 @@ msgstr "" "它将自动改变其高度以显示所有的文本。" #: doc/classes/Label.xml:48 -#, fuzzy msgid "" "If [code]true[/code], the Label only shows the text that fits inside its " "bounding rectangle and will clip text horizontally." msgstr "" -"如果[code]true[/code],标签只显示适合其边界矩形的文本。它还允许您自由地缩小节" -"点。" +"如果 [code]true[/code],则标签仅显示适合其边界矩形的文本,并将水平剪切文本。" #: doc/classes/Label.xml:51 msgid "" @@ -38344,22 +38691,21 @@ msgid "The vertical offset of the text's shadow." msgstr "文本阴影的垂直偏移。" #: doc/classes/LargeTexture.xml:4 -#, fuzzy msgid "" "[i]Deprecated.[/i] A [Texture] capable of storing many smaller textures with " "offsets." -msgstr "[Texture2D] 能够存储许多带有偏移量的较小纹理。" +msgstr "[i]已弃用。[/i] 一种能够存储许多带有偏移量的较小纹理的 [Texture]。" #: doc/classes/LargeTexture.xml:7 -#, fuzzy msgid "" "[i]Deprecated (will be removed in Godot 4.0).[/i] A [Texture] capable of " "storing many smaller textures with offsets.\n" "You can dynamically add pieces ([Texture]s) to this [LargeTexture] using " "different offsets." msgstr "" -"[Texture2D]能够存储许多带有偏移量的小纹理。\n" -"你可以使用不同的偏移量动态地将碎片[Texture2D]添加到这个[LargeTexture]中。" +"[i] 已弃用(将在 Godot 4.0 中移除)。 [/i] 一种能够存储许多具有偏移量的较小纹" +"理的 [Texture]。\n" +"你可以使用不同的偏移量向此 [LargeTexture] 动态添加[Texture]片段。" #: doc/classes/LargeTexture.xml:18 msgid "" @@ -38382,9 +38728,8 @@ msgid "Returns the offset of the piece with the index [code]idx[/code]." msgstr "返回索引为[code]idx[/code]的片段的偏移量。" #: doc/classes/LargeTexture.xml:44 -#, fuzzy msgid "Returns the [Texture] of the piece with the index [code]idx[/code]." -msgstr "返回索引为[code]idx[/code]的片段的[Texture2D]。" +msgstr "返回索引为 [code]idx[/code] 的片段的 [Texture]。" #: doc/classes/LargeTexture.xml:52 msgid "" @@ -38393,12 +38738,11 @@ msgid "" msgstr "将索引为[code]idx[/code]的片段的偏移量设置为[code]ofs[/code]。" #: doc/classes/LargeTexture.xml:60 -#, fuzzy msgid "" "Sets the [Texture] of the piece with index [code]idx[/code] to " "[code]texture[/code]." msgstr "" -"将索引为[code]idx[/code]的片段的[Texture2D]设置为[code]texture[/code]。" +"将索引为 [code]idx[/code] 的片段的 [Texture] 设置为 [code]texture[/code]。" #: doc/classes/LargeTexture.xml:67 msgid "Sets the size of this [LargeTexture]." @@ -38409,25 +38753,22 @@ msgid "Provides a base class for different kinds of light nodes." msgstr "为不同类型的光节点提供基类。" #: doc/classes/Light.xml:7 -#, fuzzy msgid "" "Light is the [i]abstract[/i] base class for light nodes. As it can't be " "instanced, it shouldn't be used directly. Other types of light nodes inherit " "from it. Light contains the common variables and parameters used for " "lighting." msgstr "" -"Light3D是光节点的[i]abstract[/i]抽象基类。因为它不能被实例化,所以不应该被直" -"接使用。其他类型的灯光节点都是继承自它。Light3D包含用于照明的常见变量和参数。" +"Light是灯光节点的[i]抽象[/i]基类。它不能被实例化,所以它不应该被直接使用。其" +"他类型的灯光节点都是继承自它。灯光包含用于照明的常用变量和参数。" #: doc/classes/Light.xml:18 -#, fuzzy msgid "Returns the value of the specified [enum Light.Param] parameter." -msgstr "返回指定的[enum Light3D.Param]参数的值。" +msgstr "返回指定的[enum Light.Param]参数的值。" #: doc/classes/Light.xml:26 -#, fuzzy msgid "Sets the value of the specified [enum Light.Param] parameter." -msgstr "设置指定的[enum Light3D.Param]参数的值。" +msgstr "设置指定的[enum Light.Param]参数的值。" #: doc/classes/Light.xml:32 msgid "" @@ -38452,21 +38793,21 @@ msgid "The light will affect objects in the selected layers." msgstr "灯光将影响所选图层中的对象。" #: doc/classes/Light.xml:44 -#, fuzzy msgid "" "The light's strength multiplier (this is not a physical unit). For " "[OmniLight] and [SpotLight], changing this value will only change the light " "color's intensity, not the light's radius." msgstr "" -"光的强度乘数(这不是一个物理单位)。对于[OmniLight3D]和[SpotLight3D]来说,改" -"变这个值只会改变灯光颜色的强度,不会改变灯光的半径。" +"光的强度乘数,注,这不是物理单位。对于 [OmniLight] 和 [SpotLight],更改此值只" +"会更改灯光颜色的强度,而不会更改灯光的半径。" #: doc/classes/Light.xml:47 -#, fuzzy msgid "" "Secondary multiplier used with indirect light (light bounces). This works on " "both [BakedLightmap] and [GIProbe]." -msgstr "与间接光(光反弹)一起使用的二级倍增器。与[GIProbe]一起使用。" +msgstr "" +"与间接光(光反射)一起使用的辅助倍增器。这适用于 [BakedLightmap] 和 " +"[GIProbe]。" #: doc/classes/Light.xml:50 msgid "" @@ -38476,16 +38817,15 @@ msgstr "" "如果为 [code]true[/code],则光线的效果会逆转,使区域变暗并投射明亮的阴影。" #: doc/classes/Light.xml:53 -#, 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." msgstr "" -"灯光的大小,在Godot中的单位。只适用于[OmniLight3D]s和[SpotLight3D]s。增加这个" -"值会使灯光淡出的速度变慢,阴影看起来更模糊。这在一定程度上可以用来模拟区域" -"光。" +"灯光的大小,以Godot的单位。只在烘烤的光照贴图中考虑,并且只在[member " +"light_bake_mode]被设置为[constant BAKE_ALL]时考虑。增加这个值会使阴影看起来更" +"模糊。这可以在一定程度上用于模拟区域灯光。" #: doc/classes/Light.xml:56 msgid "" @@ -38511,25 +38851,24 @@ msgid "The color of shadows cast by this light." msgstr "光线投射的阴影的颜色。" #: doc/classes/Light.xml:65 -#, fuzzy msgid "Attempts to reduce [member shadow_bias] gap." -msgstr "用于访问 [member shadow_bias] 的常量。" +msgstr "尝试减少 [member shadow_bias] 差距。" #: doc/classes/Light.xml:68 msgid "If [code]true[/code], the light will cast shadows." msgstr "如果为[code]true[/code],光线会投下阴影。" #: doc/classes/Light.xml:71 -#, fuzzy msgid "" "If [code]true[/code], reverses the backface culling of the mesh. This can be " "useful when you have a flat mesh that has a light behind it. If you need to " "cast a shadow on both sides of the mesh, set the mesh to use double-sided " "shadows with [constant GeometryInstance.SHADOW_CASTING_SETTING_DOUBLE_SIDED]." msgstr "" -"如果为[code]true[/code],则反转网格的背面消隐。当您有一个后面有灯光的平面网格" -"时,这可能很有用。如果需要在网格的两侧投射阴影,请将网格设置为使用双面阴影," -"并使用[constant GeometryInstance3D.SHADOW_CASTING_SETTING_DOUBLE_SIDED]。" +"如果 [code]true[/code],则反转网格的背面剔除。当你有一个后面有灯的平面网格" +"时,这会很有用。如果需要在网格的两侧投射阴影,请使用 [constant " +"GeometryInstance.SHADOW_CASTING_SETTING_DOUBLE_SIDED] 将网格设置为使用双面阴" +"影。" #: doc/classes/Light.xml:76 msgid "Constant for accessing [member light_energy]." @@ -38548,82 +38887,73 @@ msgid "Constant for accessing [member light_specular]." msgstr "访问[member light_specular]的常数。" #: doc/classes/Light.xml:88 -#, fuzzy msgid "" "Constant for accessing [member OmniLight.omni_range] or [member SpotLight." "spot_range]." msgstr "" -"用于访问[member OmniLight3D.omni_range]或[member SpotLight3D.spot_range]的常" -"数。" +"用于访问 [member OmniLight.omni_range] 或 [member SpotLight.spot_range] 的常" +"量。" #: doc/classes/Light.xml:91 -#, fuzzy msgid "" "Constant for accessing [member OmniLight.omni_attenuation] or [member " "SpotLight.spot_attenuation]." msgstr "" -"访问[member OmniLight3D.omni_attenuation]或[member SpotLight3D." -"spot_attenuation]的常数。" +"用于访问 [member OmniLight.omni_attenuation] 或 [member SpotLight." +"spot_attenuation] 的常量。" #: doc/classes/Light.xml:94 -#, fuzzy msgid "Constant for accessing [member SpotLight.spot_angle]." -msgstr "访问[member SpotLight3D.spot_angle]的常数。" +msgstr "用于访问 [member SpotLight.spot_angle] 的常量。" #: doc/classes/Light.xml:97 -#, fuzzy msgid "Constant for accessing [member SpotLight.spot_angle_attenuation]." -msgstr "访问[member SpotLight3D.spot_angle_Densation]的常数。" +msgstr "用于访问 [member SpotLight.spot_angle_attenuation] 的常量。" #: doc/classes/Light.xml:100 -#, fuzzy msgid "Constant for accessing [member shadow_contact]." -msgstr "用于访问 [member shadow_bias] 的常量。" +msgstr "用于访问 [member shadow_contact] 的常量。" #: doc/classes/Light.xml:103 -#, fuzzy msgid "" "Constant for accessing [member DirectionalLight." "directional_shadow_max_distance]." msgstr "" -"访问[member DirectionalLight3D.directional_shadow_max_distance]的常数。" +"用于访问 [member DirectionalLight.directional_shadow_max_distance] 的常量。" #: doc/classes/Light.xml:106 -#, fuzzy msgid "" "Constant for accessing [member DirectionalLight.directional_shadow_split_1]." -msgstr "访问[member DirectionalLight3D.directional_shadow_split_1]的常数。" +msgstr "用于访问 [member DirectionalLight.directional_shadow_split_1] 的常量。" #: doc/classes/Light.xml:109 -#, fuzzy msgid "" "Constant for accessing [member DirectionalLight.directional_shadow_split_2]." -msgstr "访问[member DirectionalLight3D.directional_shadow_split_2]的常数。" +msgstr "用于访问 [member DirectionalLight.directional_shadow_split_2] 的常量。" #: doc/classes/Light.xml:112 -#, fuzzy msgid "" "Constant for accessing [member DirectionalLight.directional_shadow_split_3]." -msgstr "访问[member DirectionalLight3D.directional_shadow_split_3]的常数。" +msgstr "用于访问 [member DirectionalLight.directional_shadow_split_3] 的常量。" #: doc/classes/Light.xml:115 -#, fuzzy msgid "" "Constant for accessing [member DirectionalLight." "directional_shadow_normal_bias]." msgstr "" -"访问[member DirectionalLight3D.directional_shadow_max_distance]的常数。" +"用于访问 [member DirectionalLight.directional_shadow_normal_bias] 的常量。" #: doc/classes/Light.xml:118 msgid "Constant for accessing [member shadow_bias]." msgstr "用于访问 [member shadow_bias] 的常量。" #: doc/classes/Light.xml:121 -#, fuzzy msgid "" "Constant for accessing [member DirectionalLight." "directional_shadow_bias_split_scale]." -msgstr "访问[member DirectionalLight3D.directional_shadow_split_1]的常数。" +msgstr "" +"用于访问 [member DirectionalLight.directional_shadow_bias_split_scale] 的常" +"量。" #: doc/classes/Light.xml:127 msgid "" @@ -38635,7 +38965,7 @@ msgstr "" #: doc/classes/Light.xml:131 msgid "Only indirect lighting will be baked (default)." -msgstr "" +msgstr "只会烘焙间接照明(默认)。" #: doc/classes/Light.xml:134 msgid "" @@ -38643,6 +38973,8 @@ msgid "" "[b]Note:[/b] You should hide the light if you don't want it to appear twice " "(dynamic and baked)." msgstr "" +"直接光和间接光都将被烘焙。\n" +"[b]注意:[/b] 如果不想让灯光出现两次(动态和烘焙),则应隐藏灯光。" #: doc/classes/Light2D.xml:4 msgid "Casts light in a 2D environment." @@ -38663,7 +38995,8 @@ msgstr "" msgid "" "https://docs.godotengine.org/en/3.4/tutorials/2d/2d_lights_and_shadows.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/2d/2d_lights_and_shadows.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/2d/2d_lights_and_shadows." +"html" #: doc/classes/Light2D.xml:17 msgid "The Light2D's [Color]." @@ -38751,9 +39084,8 @@ msgstr "" "物才会投射阴影。" #: doc/classes/Light2D.xml:74 -#, fuzzy msgid "[Texture] used for the Light2D's appearance." -msgstr "[Texture2D] 用于 Light2D 的外观。" +msgstr "用于Light2D外观的[Texture]。" #: doc/classes/Light2D.xml:77 msgid "The [code]texture[/code]'s scale factor." @@ -38791,11 +39123,10 @@ msgid "No filter applies to the shadow map. See [member shadow_filter]." msgstr "没有过滤器适用于阴影贴图。参阅[member shadow_filter]。" #: doc/classes/Light2D.xml:97 -#, fuzzy msgid "" "Percentage closer filtering (3 samples) applies to the shadow map. See " "[member shadow_filter]." -msgstr "百分比接近过滤(13个样本)适用于阴影贴图。参阅[member shadow_filter]。" +msgstr "百分比接近过滤(3个样本)适用于阴影贴图。参阅[member shadow_filter]。" #: doc/classes/Light2D.xml:100 msgid "" @@ -38804,18 +39135,16 @@ msgid "" msgstr "百分比接近过滤(5个样本)适用于阴影贴图。参阅[member shadow_filter]。" #: doc/classes/Light2D.xml:103 -#, fuzzy msgid "" "Percentage closer filtering (7 samples) applies to the shadow map. See " "[member shadow_filter]." -msgstr "百分比接近过滤(5个样本)适用于阴影贴图。参阅[member shadow_filter]。" +msgstr "百分比接近过滤(7个样本)适用于阴影贴图。参阅[member shadow_filter]。" #: doc/classes/Light2D.xml:106 -#, fuzzy msgid "" "Percentage closer filtering (9 samples) applies to the shadow map. See " "[member shadow_filter]." -msgstr "百分比接近过滤(5个样本)适用于阴影贴图。参阅[member shadow_filter]。" +msgstr "百分比接近过滤(9个样本)适用于阴影贴图。参阅[member shadow_filter]。" #: doc/classes/Light2D.xml:109 msgid "" @@ -38861,6 +39190,11 @@ msgid "" "[member ProjectSettings.rendering/limits/buffers/" "canvas_polygon_index_buffer_size_kb]." msgstr "" +"在二维空间中通过几个点的线。\n" +"[b]注意:[/b]默认情况下,Godot一次最多只能绘制4,096个多边形点。要增加这个限" +"制,请打开项目设置,增加[member ProjectSettings.rendering/limits/buffers/" +"canvas_polygon_buffer_size_kb]和[member ProjectSettings.rendering/limits/" +"buffers/canvas_polygon_index_buffer_size_kb]。" #: doc/classes/Line2D.xml:20 msgid "" @@ -38902,11 +39236,12 @@ msgid "" msgstr "用提供的[code]position[/code]位置覆盖索引[code]i[/code]处点的位置。" #: doc/classes/Line2D.xml:61 -#, fuzzy msgid "" "If [code]true[/code], the line's border will be anti-aliased.\n" "[b]Note:[/b] Line2D is not accelerated by batching when being anti-aliased." -msgstr "如果为[code]true[/code],该直线的边界将应用反锯齿化。" +msgstr "" +"如果[code]true[/code],线条的边界将抗锯齿。\n" +"[b]注意:[/b] Line2D在抗锯齿时不会被批量加速。" #: doc/classes/Line2D.xml:65 msgid "" @@ -38935,17 +39270,16 @@ msgid "The style for the points between the start and the end." msgstr "起点和终点之间点的样式。" #: doc/classes/Line2D.xml:80 -#, fuzzy msgid "" "The points that form the lines. The line is drawn between every point set in " "this array. Points are interpreted as local vectors." -msgstr "构成线条的点。这条线是在这个数组中每个点之间绘制的。" +msgstr "构成线条的点。在此数组中设置的每个点之间绘制线。点被解释为局部向量。" #: doc/classes/Line2D.xml:83 msgid "" "The smoothness of the rounded joints and caps. This is only used if a cap or " "joint is set as round." -msgstr "圆形接头和盖的平滑度。仅当盖或接头设置为圆形时才使用此选项。" +msgstr "圆形接头和盖子的平滑度。仅当盖子或接头设置为圆形时才使用此选项。" #: doc/classes/Line2D.xml:86 msgid "" @@ -38988,7 +39322,7 @@ msgstr "" #: doc/classes/Line2D.xml:106 msgid "The line's joints will be bevelled/chamfered." -msgstr "线的接头将进行斜切/倒角。" +msgstr "线的接头将斜切/倒角。" #: doc/classes/Line2D.xml:109 msgid "The line's joints will be rounded." @@ -39028,7 +39362,6 @@ msgid "Control that provides single-line string editing." msgstr "该控件提供单行字符串编辑。" #: doc/classes/LineEdit.xml:7 -#, fuzzy msgid "" "LineEdit provides a single-line string editor, used for text fields.\n" "It features many built-in shortcuts which will always be available " @@ -39057,30 +39390,27 @@ msgid "" "- Command + Right arrow: Like the End key, move the cursor to the end of the " "line" msgstr "" -"LineEdit提供了单行字符串编辑,用于文本字段。\n" -"它具有许多内置的快捷键,这些快捷键总是可用,注,[kbd]Ctrl[/kbd]在这里映射到" -"MacOS上的[kbd]Cmd[/kbd]:\n" -"- [kbd]Ctrl + C[/kbd]:复制\n" -"- [kbd]Ctrl + X[/kbd]:剪切\n" -"- [kbd]Ctrl + V[/kbd]或[kbd]Ctrl + Y[/kbd]:粘贴/\"拉动\"\n" -"- [kbd]Ctrl + Z[/kbd]:撤销\n" -"- [kbd]Ctrl + Shift + Z[/kbd]:重做\n" -"- [kbd]Ctrl + U[/kbd]:删除从光标位置到行首的文本\n" -"- [kbd]Ctrl + K[/kbd]:删除从光标位置到行尾的文本\n" -"- [kbd]Ctrl + A[/kbd]:选择所有文本\n" -"- [kbd]Up Arrow[/kbd]/[kbd]down Arrow[/kbd]:向上/向下箭头将光标移到行首/行" -"尾\n" -"在macOS上,有一些额外的键盘快捷键可用:\n" -"- [kbd]Ctrl + F[/kbd]:与[kbd]右箭头[/kbd]相同,将光标向右移动一个字符\n" -"- [kbd]Ctrl + B[/kbd]:与[kbd]左箭头[/kbd]相同,向左移动光标一个字符\n" -"- [kbd]Ctrl + P[/kbd]:与[kbd]向上箭头[/kbd]相同,将光标移到前一行\n" -"- [kbd]Ctrl + N[/kbd]:与[kbd]向下箭头[/kbd]相同,将光标移到下一行\n" -"- [kbd]Ctrl + D[/kbd]:与[kbd]Delete[/kbd]相同,删除光标右侧的字符\n" -"- [kbd]Ctrl+H[/kbd]:与[kbd]Backspace[/kbd]相同,删除光标左侧的字符\n" -"- [kbd]Ctrl+A[/kbd]:与[kbd]Home[/kbd]相同,将光标移到行首\n" -"- [kbd]Ctrl+E[/kbd]:与[kbd]End[/kbd]相同,将光标移到行尾\n" -"- [kbd]Cmd + Left Arrow[/kbd]:与[kbd]Home[/kbd]相同,将光标移到该行的开头\n" -"- [kbd]Cmd + right Arrow[/kbd]:与[kbd]End[/kbd]相同,将光标移到行尾" +"LineEdit 提供了单行字符串编辑器,用于文本字段。\n" +"它具有许多始终可用的内置快捷方式(在这里 [code]Ctrl[/code] 映射到 macOS 上的 " +"[code]Command[/code]):\n" +"- Ctrl + C:复制\n" +"- Ctrl + X:剪切\n" +"- Ctrl + V 或 Ctrl + Y:粘贴/\"拖拽\"\n" +"- Ctrl + Z:撤消\n" +"- Ctrl + Shift + Z:重做\n" +"- Ctrl + U:删除从光标位置到行首的文本\n" +"- Ctrl + K:删除从光标位置到行尾的文本\n" +"- Ctrl + A:选择所有文本\n" +"- Up/Down 箭头: :将光标移动到行的开头/结尾\n" +"在 macOS 上,有一些额外的键盘快捷键可用:\n" +"- Ctrl + F:像右箭头键一样,将光标向右移动一个字符\n" +"- Ctrl + B:像左箭头键一样,将光标向左移动一个字符\n" +"- Ctrl + P:像向上箭头键一样,将光标移动到上一行\n" +"- Ctrl + N:像向下箭头键一样,将光标移动到下一行\n" +"- Ctrl + D:像Delete键一样,删除光标右侧的字符\n" +"- Ctrl + H:像退格键一样,删除光标左侧的字符\n" +"- Command + 左箭头:像 Home 键一样,将光标移动到行首\n" +"- Command + 右箭头:像 End 键一样,将光标移动到行尾" #: doc/classes/LineEdit.xml:35 msgid "" @@ -39095,11 +39425,10 @@ msgid "Erases the [LineEdit]'s [member text]." msgstr "擦除 [LineEdit] 的 [member text]文本 。" #: doc/classes/LineEdit.xml:47 -#, fuzzy msgid "" "Deletes one character at the cursor's current position (equivalent to " "pressing the [code]Delete[/code] key)." -msgstr "删除光标当前位置的一个字符(相当于按[kbd]Delete[/kbd]输出键)。" +msgstr "在光标的当前位置删除一个字符(相当于按[code]Delete[/code]键)。" #: doc/classes/LineEdit.xml:55 msgid "" @@ -39122,12 +39451,16 @@ msgid "" "may cause a crash. If you wish to hide it or any of its children, use their " "[member CanvasItem.visible] property." msgstr "" +"返回这个[LineEdit]的[PopupMenu]。默认情况下,这个菜单在右键点击[LineEdit]时显" +"示。\n" +"[b]警告:[/b] 这是一个必要的内部节点,移除和释放它可能会导致崩溃。如果你想隐" +"藏它或它的任何子节点,请使用其的 [member CanvasItem.visible] 属性。" #: doc/classes/LineEdit.xml:74 msgid "" "Returns the scroll offset due to [member caret_position], as a number of " "characters." -msgstr "" +msgstr "返回由[member caret_position]引起的滚动偏移,作为数字字符串。" #: doc/classes/LineEdit.xml:81 msgid "Executes a given action as defined in the [enum MenuItems] enum." @@ -39224,6 +39557,21 @@ msgid "" "# `text_change_rejected` is emitted with \"bye\" as parameter.\n" "[/codeblock]" msgstr "" +"在[LineEdit]内可输入的最大字符量。如果[code]0[/code],则没有限制。\n" +"当定义了限制时,超过[member max_length]的字符会被截断。这在设置最大长度时现有" +"的 [member text] 内容,或在[LineEdit]中插入的新文本,包括粘贴时发生。如果任何" +"输入的文本被截断,[signal text_change_rejected]信号将以被截断的子串为参数发送" +"出来。\n" +"[b]例如:[/b]\n" +"[codeblock]\n" +"text = \"Hello world\"\n" +"max_length = 5\n" +"# `text` becomes \"Hello\".\n" +"max_length = 10\n" +"text += \" goodbye\"\n" +"# `text` becomes \"Hello good\".\n" +"# `text_change_rejected` is emitted with \"bye\" as parameter.\n" +"[/codeblock]" #: doc/classes/LineEdit.xml:147 msgid "" @@ -39294,6 +39642,8 @@ msgid "" "appended text is truncated to fit [member max_length], and the part that " "couldn't fit is passed as the [code]rejected_substring[/code] argument." msgstr "" +"当附加的文本超过了[member max_length]时触发。附加的文本被截断以适应[member " +"max_length],不能适应的部分被作为[code]rejected_substring[/code]参数传递。" #: doc/classes/LineEdit.xml:185 doc/classes/TextEdit.xml:506 msgid "Emitted when the text changes." @@ -39446,13 +39796,14 @@ msgid "Simple button used to represent a link to some resource." msgstr "简单的按钮,用于表示对某些资源的链接。" #: doc/classes/LinkButton.xml:7 -#, fuzzy msgid "" "This kind of button is primarily used when the interaction with the button " "causes a context change (like linking to a web page).\n" "See also [BaseButton] which contains common properties and methods " "associated with this node." -msgstr "这种按钮主要用于按钮的交互导致上下文更改(如链接到网页)时使用。" +msgstr "" +"这种按钮主要用于与按钮的交互引起上下文变化时,如链接到网页。\n" +"参阅[BaseButton],它包含了该节点相关的常用属性和方法。" #: doc/classes/LinkButton.xml:21 msgid "" @@ -39496,6 +39847,8 @@ msgid "" "text color of the button. Disabled, hovered, and pressed states take " "precedence over this color." msgstr "" +"当[LinkButton]获得焦点时使用的文本[Color]。只替换按钮的正常文本颜色。禁用、悬" +"停和按下状态优先于这个颜色。" #: doc/classes/LinkButton.xml:49 msgid "Text [Color] used when the [LinkButton] is being hovered." @@ -39514,15 +39867,13 @@ msgid "Overrides the location sounds are heard from." msgstr "覆盖听到声音的位置。" #: doc/classes/Listener.xml:7 -#, fuzzy msgid "" "Once added to the scene tree and enabled using [method make_current], this " "node will override the location sounds are heard from. This can be used to " "listen from a location different from the [Camera]." msgstr "" -"一旦添加到场景树并启用[make_current]方法,该节点将覆盖听到声音的位置。这可用" -"于从不同于[Camera3D]的位置收听。\n" -"[b]注意:[/b]此节点还没有2D对等项。" +"一旦被添加到场景树并使用[method make_current]启用,这个节点将覆盖听到声音的位" +"置。这可以用来从[Camera]不同的位置聆听。" #: doc/classes/Listener.xml:15 msgid "Disables the listener to use the current camera's listener instead." @@ -39533,24 +39884,22 @@ msgid "Returns the listener's global orthonormalized [Transform]." msgstr "返回监听器的全局正则化[Transform]。" #: doc/classes/Listener.xml:27 -#, fuzzy msgid "" "Returns [code]true[/code] if the listener was made current using [method " "make_current], [code]false[/code] otherwise.\n" "[b]Note:[/b] There may be more than one Listener marked as \"current\" in " "the scene tree, but only the one that was made current last will be used." msgstr "" -"如果使用[make_current]方法使监听器成为当前状态,返回[code]true[/code],否则返" -"回[code]false[/code]。\n" -"[b]注意:[/b] 在场景树中可能有不止一个Listener3D被标记为 \"当前\",但只有最后" -"被变成当前的那个才会被使用。" +"如果使用[make_current]方法,使监听器成为当前状态,则返回[code]true[/code],否" +"则返回[code]false[/code]。\n" +"[b]注意:[/b] 在场景树中可能有一个以上的监听器被标记为 \"当前\",但只有最后变" +"成当前的那个才会被使用。" #: doc/classes/Listener.xml:34 msgid "Enables the listener. This will override the current camera's listener." msgstr "启用监听器。这将覆盖当前相机的监听器。" #: doc/classes/Listener2D.xml:7 -#, fuzzy msgid "" "Once added to the scene tree and enabled using [method make_current], this " "node will override the location sounds are heard from. Only one [Listener2D] " @@ -39560,20 +39909,21 @@ msgid "" "screen will be used as a hearing point for the audio. [Listener2D] needs to " "be inside [SceneTree] to function." msgstr "" -"一旦添加到场景树并启用[make_current]方法,该节点将覆盖听到声音的位置。这可用" -"于从不同于[Camera3D]的位置收听。\n" -"[b]注意:[/b]此节点还没有2D对等项。" +"一旦被添加到场景树,并使用[method make_current]启用,这个节点将覆盖听到声音的" +"位置。只有一个[Listener2D]可以是当前的。使用[method make_current]将禁用以前的" +"[Listener2D]。\n" +"如果在当前的[Viewport]中没有激活的[Listener2D],屏幕中心将被用作音频的聆听" +"点。[Listener2D]需要在[SceneTree]内才能发挥作用。" #: doc/classes/Listener2D.xml:16 msgid "" "Disables the [Listener2D]. If it's not set as current, this method will have " "no effect." -msgstr "" +msgstr "禁用[Listener2D]。如果未将其设置为当前,此方法将无效。" #: doc/classes/Listener2D.xml:22 -#, fuzzy msgid "Returns [code]true[/code] if this [Listener2D] is currently active." -msgstr "如果该对等体当前已连接,则返回[code]true[/code]。" +msgstr "如果此[Listener2D]当前处于激活状态,则返回[code]true[/code]。" #: doc/classes/Listener2D.xml:28 msgid "" @@ -39583,13 +39933,15 @@ msgid "" "This method will have no effect if the [Listener2D] is not added to " "[SceneTree]." msgstr "" +"使[Listener2D]处于激活状态,将其设置为声音的聆听点。如果已经有另一个激活的" +"[Listener2D],它将被禁用。\n" +"如果[Listener2D]未添加到[SceneTree]中,此方法将无效。" #: doc/classes/MainLoop.xml:4 msgid "Abstract base class for the game's main loop." msgstr "游戏主循环的抽象基类。" #: doc/classes/MainLoop.xml:7 -#, fuzzy msgid "" "[MainLoop] is the abstract base class for a Godot project's game loop. It is " "inherited by [SceneTree], which is the default game loop implementation used " @@ -39635,14 +39987,13 @@ msgid "" "[/codeblock]" msgstr "" "[MainLoop]是Godot项目中游戏循环的抽象基类。它被[SceneTree]继承,后者是Godot项" -"目中使用的默认游戏循环实现,不过也可以编写和使用自己的[MainLoop]子类来代替场" -"景树中的实现。\n" +"目中使用的游戏循环的默认实现,不过也可以编写和使用自己的[MainLoop]子类,而不" +"是场景树。\n" "在应用程序启动时,必须向操作系统提供一个[MainLoop]实现;否则,应用程序将退" -"出。这将自动发生,并且会自动创建一个[SceneTree],除非从命令行提供一个主要的" -"[Script](例如用[code]godot -s my_loop.gd[/code]),并且它是一个[MainLoop]实" +"出。除非从命令行提供一个主[Script](例如:[code]godot -s my_loop.gd[/" +"code]),这将自动发生(并且创建一个[SceneTree]),并应该是一个[MainLoop]实" "现。\n" -"下面是一个实现简单[MainLoop]的脚本例子。\n" -"[b]FIXME:[/b] 在DisplayServer拆分和输入重构后不再有效。\n" +"下面是实现简单[MainLoop]的脚本例子:\n" "[codeblock]\n" "extends MainLoop\n" "\n" @@ -39662,9 +40013,9 @@ msgstr "" "func _input_event(event):\n" " # Record keys.\n" " if event is InputEventKey and event.pressed and !event.echo:\n" -" keys_typed.append(OS.get_keycode_string(event.keycode))\n" +" keys_typed.append(OS.get_scancode_string(event.scancode))\n" " # Quit on Escape press.\n" -" if event.keycode == KEY_ESCAPE:\n" +" if event.scancode == KEY_ESCAPE:\n" " quit = true\n" " # Quit on any mouse click.\n" " if event is InputEventMouseButton:\n" @@ -39677,14 +40028,13 @@ msgstr "" "[/codeblock]" #: doc/classes/MainLoop.xml:51 -#, fuzzy msgid "" "Called when files are dragged from the OS file manager and dropped in the " "game window. The arguments are a list of file paths and the identifier of " "the screen where the drag originated." msgstr "" -"当文件从操作系统的文件管理器中被拖到游戏窗口中时发出。参数是一个文件路径列表" -"和拖动文件的屏幕标识符。" +"当文件从操作系统的文件管理器中被拖到游戏窗口中时被调用。参数是一个文件路径列" +"表和拖动屏幕的标识符。" #: doc/classes/MainLoop.xml:57 msgid "Called before the program exits." @@ -39694,7 +40044,7 @@ msgstr "在程序退出前调用。" msgid "" "Called when the user performs an action in the system global menu (e.g. the " "Mac OS menu bar)." -msgstr "" +msgstr "当用户在系统全局菜单(如Mac OS的菜单栏)中执行动作时被调用。" #: doc/classes/MainLoop.xml:72 msgid "" @@ -39715,16 +40065,17 @@ msgstr "在初始化时调用一次。" #: doc/classes/MainLoop.xml:86 msgid "Called whenever an [InputEvent] is received by the main loop." -msgstr "" +msgstr "每当主循环接收到[InputEvent]时,就会调用。" #: doc/classes/MainLoop.xml:93 msgid "" "Deprecated callback, does not do anything. Use [method _input_event] to " "parse text input. Will be removed in Godot 4.0." msgstr "" +"废弃的回调,不做任何事情。使用[method _input_event]来解析文本输入。在Godot " +"4.0中会被删除。" #: doc/classes/MainLoop.xml:100 -#, fuzzy msgid "" "Called each physics frame with the time since the last physics frame as " "argument ([code]delta[/code], in seconds). Equivalent to [method Node." @@ -39733,10 +40084,10 @@ msgid "" "ends the main loop, while [code]false[/code] lets it proceed to the next " "frame." msgstr "" -"在每个物理帧中调用,参数为自上一个物理帧以来的时间(单位:秒)。相当于" -"[method Node._physics_process]。\n" -"如果实施,该方法必须返回一个布尔值。[code]true[/code] 结束主循环,而" -"[code]false[/code] 让它进入下一帧。" +"在每个物理帧中调用,并将自上一个物理帧以来的时间作为参数,[code]delta[/" +"code],单位为秒。相当于[method Node._physics_process]。\n" +"如果实现,该方法必须返回一个布尔值。[code]true[/code]结束主循环,而" +"[code]false[/code]让它进入下一帧。" #: doc/classes/MainLoop.xml:107 msgid "" @@ -39757,18 +40108,16 @@ msgid "" msgstr "不应手动调用,而应覆盖[method _initialize]。在Godot 4.0中会被删除。" #: doc/classes/MainLoop.xml:127 -#, fuzzy msgid "" "Should not be called manually, override [method _input_event] instead. Will " "be removed in Godot 4.0." -msgstr "不应手动调用,而应覆盖[method _idle]。在Godot 4.0中会被删除。" +msgstr "不应手动调用,而应重写[method _input_event]。在Godot 4.0中会被删除。" #: doc/classes/MainLoop.xml:134 -#, fuzzy msgid "" "Should not be called manually, override [method _input_text] instead. Will " "be removed in Godot 4.0." -msgstr "不应手动调用,而应覆盖[method _idle]。在Godot 4.0中会被删除。" +msgstr "不应手动调用,而应重写[method _input_text]。在Godot 4.0中会被删除。" #: doc/classes/MainLoop.xml:141 msgid "" @@ -39797,32 +40146,29 @@ msgstr "" "在桌面和网络平台上实现。" #: doc/classes/MainLoop.xml:164 doc/classes/Node.xml:799 -#, fuzzy msgid "" "Notification received from the OS when the game window is focused.\n" "Implemented on all platforms." msgstr "" -"当鼠标进入游戏窗口时从操作系统收到的通知。\n" -"在桌面和网络平台上实现。" +"当游戏窗口获得焦点时,从操作系统收到的通知。\n" +"在所有平台上实现。" #: doc/classes/MainLoop.xml:168 doc/classes/Node.xml:803 -#, fuzzy msgid "" "Notification received from the OS when the game window is unfocused.\n" "Implemented on all platforms." msgstr "" -"当鼠标进入游戏窗口时从操作系统收到的通知。\n" -"在桌面和网络平台上实现。" +"当游戏窗口未获得焦点时,从操作系统收到的通知。\n" +"在所有平台上实现。" #: doc/classes/MainLoop.xml:172 doc/classes/Node.xml:807 -#, fuzzy msgid "" "Notification received from the OS when a quit request is sent (e.g. closing " "the window with a \"Close\" button or Alt+F4).\n" "Implemented on desktop platforms." msgstr "" -"当发送关闭请求时从操作系统收到的通知(例如用 \"关闭 \"按钮或[kbd]Alt + F4[/" -"kbd]关闭窗口)。\n" +"发出退出请求时,从操作系统收到的通知(例如用 \"关闭\" 按钮或Alt+F4关闭窗" +"口)。\n" "在桌面平台上实现。" #: doc/classes/MainLoop.xml:176 doc/classes/Node.xml:811 @@ -39836,15 +40182,14 @@ msgstr "" "安卓平台特供。" #: doc/classes/MainLoop.xml:180 doc/classes/Node.xml:815 -#, fuzzy msgid "" "Notification received from the OS when an unfocus request is sent (e.g. " "another OS window wants to take the focus).\n" "No supported platforms currently send this notification." msgstr "" -"当发送关闭请求时从操作系统收到的通知(例如用 \"关闭 \"按钮或[kbd]Alt + F4[/" -"kbd]关闭窗口)。\n" -"在桌面平台上实现。" +"当取消焦点的请求被发送时,从操作系统收到的通知(例如,另一个操作系统窗口想要" +"得到焦点)。\n" +"目前没有支持的平台发送这个通知。" #: doc/classes/MainLoop.xml:184 doc/classes/Node.xml:819 msgid "" @@ -39895,21 +40240,19 @@ msgstr "" "特定于macOS平台。" #: doc/classes/MainLoop.xml:203 doc/classes/Node.xml:838 -#, fuzzy msgid "" "Notification received from the OS when the app is resumed.\n" "Specific to the Android platform." msgstr "" -"应用恢复时从操作系统收到的通知。\n" +"恢复应用时从操作系统收到的通知。\n" "特定于安卓平台。" #: doc/classes/MainLoop.xml:207 doc/classes/Node.xml:842 -#, fuzzy msgid "" "Notification received from the OS when the app is paused.\n" "Specific to the Android platform." msgstr "" -"应用程序暂停时从操作系统收到的通知。\n" +"暂停应用时从操作系统收到的通知。\n" "特定于安卓平台。" #: doc/classes/MarginContainer.xml:4 @@ -39917,7 +40260,6 @@ msgid "Simple margin container." msgstr "简单边距容器。" #: doc/classes/MarginContainer.xml:7 -#, fuzzy msgid "" "Adds a top, left, bottom, and right margin to all [Control] nodes that are " "direct children of the container. To control the [MarginContainer]'s margin, " @@ -39935,16 +40277,17 @@ msgid "" "[/codeblock]" msgstr "" "为所有作为容器的直接子节点的[Control]节点添加顶部、左侧、底部和右侧的边距。要" -"控制[MarginContainer]的边距,请使用下面列出的[code]margin_*[/code]主题属" +"控制[MarginContainer]的边距,请使用下面列出的[code]margin_*[/code] 主题属" "性。\n" "[b]注意:[/b]要小心,[Control]的margin值与常量margin值不同。如果你想通过代码" -"改变[MarginContainer]的自定义边距值,你应该使用下面的例子。\n" -"[codeeblock]\n" +"改变[MarginContainer]的自定义边距值,应该使用下面的例子:\n" +"[codeblock]\n" +"# 这个代码示例假定当前脚本扩展自MarginContainer。\n" "var margin_value = 100\n" -"set(\"custom_constants/margin_top\", margin_value)\n" -"set(\"custom_constants/margin_left\", margin_value)\n" -"set(\"custom_constants/margin_bottom\", margin_value)\n" -"set(\"custom_constants/margin_right\", margin_value)\n" +"add_constant_override(\"margin_top\", margin_value)\n" +"add_constant_override(\"margin_left\", margin_value)\n" +"add_constant_override(\"margin_bottom\", margin_value)\n" +"add_constant_override(\"margin_right\", margin_value)\n" "[/codeblock]" #: doc/classes/MarginContainer.xml:26 @@ -39984,12 +40327,11 @@ msgid "Provides data transformation and encoding utility functions." msgstr "提供数据转换和编码的实用功能。" #: doc/classes/Marshalls.xml:16 -#, fuzzy msgid "" "Returns a decoded [PoolByteArray] corresponding to the Base64-encoded string " "[code]base64_str[/code]." msgstr "" -"返回对应于Base64编码的字符串[code]base64_str[/code]的解码[PackedByteArray]。" +"返回对应于Base64编码字符串[code]base64_str[/code]的解码的[PoolByteArray]。" #: doc/classes/Marshalls.xml:23 msgid "" @@ -40013,9 +40355,8 @@ msgstr "" "信任的来源,请不要使用这个选项,以避免潜在的安全威胁,如远程代码执行。" #: doc/classes/Marshalls.xml:39 -#, fuzzy msgid "Returns a Base64-encoded string of a given [PoolByteArray]." -msgstr "返回给定[PackedByteArray]的Base64编码的字符串。" +msgstr "返回给定[PoolByteArray]的Base64编码的字符串。" #: doc/classes/Marshalls.xml:46 msgid "" @@ -40037,19 +40378,17 @@ msgid "Abstract base [Resource] for coloring and shading geometry." msgstr "用于为几何体上色(Coloring)和着色(Shading)的[Resource]抽象子类。" #: doc/classes/Material.xml:7 -#, fuzzy msgid "" "Material is a base [Resource] used for coloring and shading geometry. All " "materials inherit from it and almost all [VisualInstance] derived nodes " "carry a Material. A few flags and parameters are shared between all material " "types and are configured here." msgstr "" -"材质是一个基础[Resource],用于给几何体上色(Coloring)和着色(Shading)。所有的材" -"质都继承自它,几乎所有的[VisualInstance3D]派生节点都带有一个材质。有几个标志" -"和参数在所有材质类型之间是共享的,并在这里配置。" +"材质是基本[Resource],用于几何体着色器和上色。所有的材质都继承自它,几乎所有" +"的[VisualInstance]派生节点都带有材质。有几个标志和参数在所有材质类型之间是共" +"享的,并在这里进行配置。" #: doc/classes/Material.xml:17 -#, fuzzy msgid "" "Sets the [Material] to be used for the next pass. This renders the object " "again using a different material.\n" @@ -40057,11 +40396,10 @@ msgid "" "with type \"Spatial\"." msgstr "" "设置下一次使用的[Material]。这将使用不同的材质再次渲染对象。\n" -"[b]注意:[/b]只适用于[StandardMaterial3D]和[ShaderMaterial]的 \"Spatial \"类" +"[b]注意:[/b] 这只适用于[SpatialMaterial]和[ShaderMaterial]的 \"Spatial\"类" "型。" #: doc/classes/Material.xml:21 -#, fuzzy msgid "" "Sets the render priority for transparent objects in 3D scenes. Higher " "priority objects will be sorted in front of lower priority objects.\n" @@ -40070,10 +40408,10 @@ msgid "" "This is because opaque objects are not sorted, while transparent objects are " "sorted from back to front (subject to priority)." msgstr "" -"设置3D场景中透明物体的渲染优先级。高优先级的物体将被排序在低优先级的物体前" +"设置3D场景中透明物体的渲染优先级。优先级高的物体将被排序在优先级低的物体前" "面。\n" -"[b]注意:[/b]这只适用于透明物体的排序。这不会影响透明物体相对于不透明物体的排" -"序方式。这是因为不透明物体不被排序,而透明物体是从后往前排序的(取决于优先" +"[b]注意:[/b] 这只适用于透明物体的排序。这不会影响透明物体相对于不透明物体的" +"排序方式。这是因为不透明对象不被排序,而透明对象则从后往前排序(取决于优先" "级)。" #: doc/classes/Material.xml:27 @@ -40089,7 +40427,6 @@ msgid "Special button that brings up a [PopupMenu] when clicked." msgstr "特殊按钮,点击后会弹出一个[PopupMenu]。" #: doc/classes/MenuButton.xml:7 -#, fuzzy msgid "" "Special button that brings up a [PopupMenu] when clicked.\n" "New items can be created inside this [PopupMenu] using [code]get_popup()." @@ -40100,11 +40437,12 @@ msgid "" "See also [BaseButton] which contains common properties and methods " "associated with this node." msgstr "" -"特殊按钮,点击后会出现一个[PopupMenu]。\n" -"使用[code]get_popup().add_item(\"My Item Name\")[/code]可以在这个[PopupMenu]" -"中创建新项。你也可以直接从编辑器中创建它们。要做到这一点,选择[MenuButton]节" -"点,然后在2D编辑器顶部的工具栏中,点击[b]Items[/b],然后在弹出的窗口中点击" -"[b]Add[/b]。你将能够赋予每个项新的属性。" +"特殊按钮,点击后会弹出一个[PopupMenu]。\n" +"可以使用[code]get_popup().add_item(\"My Item Name\")[/code]在这个[PopupMenu]" +"中创建新项目。你也可以直接从编辑器中创建它们。要做到这点,选择[MenuButton]节" +"点,然后在2D编辑器顶部的工具栏中,点击[b]Items[/b],然后点击弹出窗口中的" +"[b]Add[/b]。你将能够赋予每个项目新的属性。\n" +"参阅[BaseButton],它包含了与该节点相关的常用属性和方法。" #: doc/classes/MenuButton.xml:17 doc/classes/OptionButton.xml:86 msgid "" @@ -40113,6 +40451,9 @@ msgid "" "may cause a crash. If you wish to hide it or any of its children, use their " "[member CanvasItem.visible] property." msgstr "" +"返回这个按钮中包含的[PopupMenu]。\n" +"[b]警告:[/b] 这是一个必需的内部节点,移除和释放它可能会导致崩溃。如果你想隐" +"藏它或它的任何子节点,请使用其的[member CanvasItem.visible]属性。" #: doc/classes/MenuButton.xml:25 msgid "" @@ -40130,9 +40471,8 @@ msgstr "" "code]的另一个[MenuButton]上方时,它将关闭当前的[MenuButton]并打开另一个。" #: doc/classes/MenuButton.xml:41 -#, fuzzy msgid "Emitted when [PopupMenu] of this MenuButton is about to show." -msgstr "当这个MenuButton的[PopupMenu]即将显示时发出。" +msgstr "当此MenuButton的[PopupMenu]即将显示时触发。" #: doc/classes/MenuButton.xml:49 msgid "[StyleBox] used when the [MenuButton] is disabled." @@ -40165,6 +40505,8 @@ msgid "" "text color of the button. Disabled, hovered, and pressed states take " "precedence over this color." msgstr "" +"当[MenuButton]获得焦点时使用的文本[Color]。只替换按钮的正常文本颜色。禁用、悬" +"停和按下状态优先于这个颜色。" #: doc/classes/MenuButton.xml:67 msgid "Text [Color] used when the [MenuButton] is being hovered." @@ -40215,6 +40557,12 @@ msgid "" "If [code]simplify[/code] is [code]true[/code], the geometry can be further " "simplified to reduce the amount of vertices. Disabled by default." msgstr "" +"从网格中计算出 [ConvexPolygonShape] 。\n" +"如果 [code]clean[/code] 是 [code]true[/code] (默认),重复的和内部的顶点会被" +"自动移除。你可以把它设为 [code]false[/code] 来使这个过程更快,如果不需要的" +"话。\n" +"如果[code]simplify[/code]是[code]true[/code],可以进一步简化几何体以减少顶点" +"的数量。默认情况下是禁用的。" #: doc/classes/Mesh.xml:30 msgid "" @@ -40227,25 +40575,23 @@ msgstr "" "[b]Note:[/b] 这个方法实际上反序返回顶点(例如输入顺时针,返回逆时针)。" #: doc/classes/Mesh.xml:37 -#, fuzzy msgid "Calculate a [ConcavePolygonShape] from the mesh." -msgstr "从该网格中计算出一个[ConcavePolygonShape3D]凹多边形。" +msgstr "从网格中计算出[ConcavePolygonShape]。" #: doc/classes/Mesh.xml:43 msgid "Generate a [TriangleMesh] from the mesh." msgstr "从网格生成[TriangleMesh]。" #: doc/classes/Mesh.xml:49 -#, fuzzy msgid "" "Returns the smallest [AABB] enclosing this mesh in local space. Not affected " "by [code]custom_aabb[/code]. See also [method VisualInstance." "get_transformed_aabb].\n" "[b]Note:[/b] This is only implemented for [ArrayMesh] and [PrimitiveMesh]." msgstr "" -"返回能够包含该网格的最小[AABB]碰撞盒。它不受[code]custom_aabb[/code]属性影" -"响。\n" -"[b]Note:[/b] 这个方法只为[ArrayMesh]和[PrimitiveMesh]实现。" +"返回局部空间中包围这个网格的最小的[AABB]。不受[code]custom_aabb[/code]的影" +"响。参阅 [method VisualInstance.get_transformed_aabb]。\n" +"[b]注意:[/b]这只对[ArrayMesh]和[PrimitiveMesh]实现。" #: doc/classes/Mesh.xml:56 msgid "" @@ -40286,6 +40632,8 @@ msgid "" "Sets a hint to be used for lightmap resolution in [BakedLightmap]. Overrides " "[member BakedLightmap.default_texels_per_unit]." msgstr "" +"设置提示,用于[BakedLightmap]中的光照贴图分辨率。重写[member BakedLightmap." +"default_texels_per_unit]。" #: doc/classes/Mesh.xml:102 msgid "Render array as points (one vertex equals one point)." @@ -40300,9 +40648,8 @@ msgid "Render array as line strip." msgstr "将顶点组渲染为线条。" #: doc/classes/Mesh.xml:111 -#, fuzzy msgid "Render array as line loop (like line strip, but closed)." -msgstr "将顶点组渲染为线条。" +msgstr "将数组渲染成线状环(像线条,但是封闭的)。" #: doc/classes/Mesh.xml:114 msgid "Render array as triangles (every three vertices a triangle is created)." @@ -40313,9 +40660,8 @@ msgid "Render array as triangle strips." msgstr "将顶点组渲染为三角形线框。" #: doc/classes/Mesh.xml:120 -#, fuzzy msgid "Render array as triangle fans." -msgstr "将顶点组渲染为三角形线框。" +msgstr "将数组渲染成三角形扇形。" #: doc/classes/Mesh.xml:123 doc/classes/VisualServer.xml:3363 msgid "Blend shapes are normalized." @@ -40368,12 +40714,11 @@ msgstr "网格组使用索引。" msgid "" "Used internally to calculate other [code]ARRAY_COMPRESS_*[/code] enum " "values. Do not use." -msgstr "" +msgstr "内部用于计算其他[code]ARRAY_COMPRESS_*[/code]枚举值。不要使用。" #: doc/classes/Mesh.xml:159 doc/classes/VisualServer.xml:3300 -#, fuzzy msgid "Flag used to mark a compressed (half float) vertex array." -msgstr "曾经用于标记压缩(半精度浮点)切向数组的Flag。" +msgstr "用于标记压缩(半精度浮点)顶点数组的标志。" #: doc/classes/Mesh.xml:162 doc/classes/VisualServer.xml:3303 msgid "Flag used to mark a compressed (half float) normal array." @@ -40398,14 +40743,12 @@ msgid "" msgstr "曾用于标记第二套UV坐标的压缩(半精度浮点)UV坐标数组的Flag。" #: doc/classes/Mesh.xml:177 doc/classes/VisualServer.xml:3318 -#, fuzzy msgid "Flag used to mark a compressed bone array." -msgstr "曾用于标记压缩索引数组的Flag。" +msgstr "用于标记压缩骨骼数组的标志。" #: doc/classes/Mesh.xml:180 doc/classes/VisualServer.xml:3321 -#, fuzzy msgid "Flag used to mark a compressed (half float) weight array." -msgstr "曾经用于标记压缩(半精度浮点)切向数组的Flag。" +msgstr "用于标记压缩(半精度浮点)权重数组的标志。" #: doc/classes/Mesh.xml:183 doc/classes/VisualServer.xml:3324 msgid "Flag used to mark a compressed index array." @@ -40416,18 +40759,16 @@ msgid "Flag used to mark that the array contains 2D vertices." msgstr "曾用于标记包含2D顶点的数组的Flag。" #: doc/classes/Mesh.xml:189 doc/classes/VisualServer.xml:3330 -#, fuzzy msgid "Flag used to mark that the array uses 16-bit bones instead of 8-bit." -msgstr "曾用于标记包含2D顶点的数组的Flag。" +msgstr "用于标记数组使用16位骨骼而不是8位的标志。" #: doc/classes/Mesh.xml:192 doc/classes/VisualServer.xml:3333 msgid "" "Flag used to mark that the array uses an octahedral representation of normal " "and tangent vectors rather than cartesian." -msgstr "" +msgstr "标志用于标记数组使用法线和切线向量的八面表示法,而不是笛卡尔式。" #: doc/classes/Mesh.xml:195 -#, fuzzy msgid "" "Used to set flags [constant ARRAY_COMPRESS_VERTEX], [constant " "ARRAY_COMPRESS_NORMAL], [constant ARRAY_COMPRESS_TANGENT], [constant " @@ -40435,9 +40776,11 @@ msgid "" "ARRAY_COMPRESS_TEX_UV2], [constant ARRAY_COMPRESS_WEIGHTS], and [constant " "ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION] quickly." msgstr "" -"曾用于快速设置 flags [constant ARRAY_COMPRESS_NORMAL], [constant " -"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant " -"ARRAY_COMPRESS_TEX_UV] 和 [constant ARRAY_COMPRESS_TEX_UV2] 。" +"用于快速设置标志[constant ARRAY_COMPRESS_VERTEX], [constant " +"ARRAY_COMPRESS_NORMAL], [constant ARRAY_COMPRESS_TANGENT], [constant " +"ARRAY_COMPRESS_COLOR], [constant ARRAY_COMPRESS_TEX_UV], [constant " +"ARRAY_COMPRESS_TEX_UV2] , [constant ARRAY_COMPRESS_WEIGHTS], 和[constant " +"ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION] 。" #: doc/classes/Mesh.xml:198 msgid "Array of vertices." @@ -40480,7 +40823,6 @@ msgid "Helper tool to access and edit [Mesh] data." msgstr "用于帮助编辑和使用 [Mesh] 网格数据的工具。" #: doc/classes/MeshDataTool.xml:7 -#, fuzzy msgid "" "MeshDataTool provides access to individual vertices in a [Mesh]. It allows " "users to read and edit vertex data of meshes. It also creates an array of " @@ -40514,25 +40856,33 @@ msgid "" "OpenGL/Face-culling]winding order[/url] for front faces of triangle " "primitive modes." msgstr "" -"网格数据工具(MeshDataTool) 提供了对[Mesh]中单个顶点的访问。它允许用户读取和编" -"辑网格的顶点数据。它还创建了一个面和边的数组。\n" -"要使用MeshDataTool,使用[method create_from_surface] 来加载一个Mesh。当你结束" -"对数据的编辑后,使用[method commit to surface] 将数据提交到一个网格中。\n" -"下面是一个用例:\n" +"MeshDataTool提供对[Mesh]中单个顶点的访问。它允许用户读取和编辑网格的顶点数" +"据。还可以创建面和边的数组。\n" +"要使用MeshDataTool,请使用[method create_from_surface]加载网格。当完成编辑数" +"据后,用[method commit_to_surface]将数据提交给Mesh。\n" +"下面是如何使用MeshDataTool的例子。\n" "[codeblock]\n" +"var mesh = ArrayMesh.new()\n" +"mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, CubeMesh.new()." +"get_mesh_arrays())\n" "var mdt = MeshDataTool.new()\n" "mdt.create_from_surface(mesh, 0)\n" "for i in range(mdt.get_vertex_count()):\n" " var vertex = mdt.get_vertex(i)\n" -" ...\n" +" # 在这个例子中,我们将Mesh扩展了一个单元,这样就会产生分离的面,因为它是" +"平面阴影。\n" +" vertex += mdt.get_vertex_normal(i)\n" +" # 保存你的改动。\n" " mdt.set_vertex(i, vertex)\n" "mesh.surface_remove(0)\n" "mdt.commit_to_surface(mesh)\n" +"var mi = MeshInstance.new()\n" +"mi.mesh = mesh\n" +"add_child(mi)\n" "[/codeblock]\n" -"若要进行程序几何生成,参阅[ArrayMesh],[ImmediateGeometry3D]和" -"[SurfaceTool]。\n" -"[b]Note: [/b] Godot使用顺时针 [url=https://learnopengl.com/Advanced-OpenGL/" -"Face-culling]winding order[/url]顺序为三角形的默认前面。" +"参阅[ArrayMesh]、[ImmediateGeometry]和[SurfaceTool]的程序性几何体生成。\n" +"[b]注意:[/b] Godot对三角形原始模式的前端面使用顺时针[url=https://" +"learnopengl.com/Advanced-OpenGL/Face-culling]缠绕顺序[/url]。" #: doc/classes/MeshDataTool.xml:36 msgid "Clears all data currently in MeshDataTool." @@ -40719,7 +41069,6 @@ msgid "Node that instances meshes into a scenario." msgstr "网格实例与场景相结合的节点。" #: doc/classes/MeshInstance.xml:7 -#, fuzzy msgid "" "MeshInstance is a node that takes a [Mesh] resource and adds it to the " "current scenario by creating an instance of it. This is the class most often " @@ -40728,10 +41077,10 @@ msgid "" "[Mesh] has to be instanced more than thousands of times at close proximity, " "consider using a [MultiMesh] in a [MultiMeshInstance] instead." msgstr "" -"MeshInstance3D是一个节点,它获取一个[Mesh]资源,并通过创建它的实例将其添加到" -"当前场景中。这是最常用的渲染3D几何的类,可以用来在许多地方实例一个[Mesh]。这" -"允许重用几何图形,可以节省资源。当一个[Mesh]需要被实例化上千次以上时,可以考" -"虑在[MultiMeshInstance3d]中使用[MultiMesh]。" +"MeshInstance是一个节点,它获取[Mesh]资源并创建一个实例,将其添加到当前场景" +"中。这是最常被用来渲染3D几何体的类,这可以在很多地方使用[Mesh]实例,它允许重" +"复使用几何体并节省资源。当[Mesh]必须在很近的地方被实例化超过数千次时,可以考" +"虑在[MultiMeshInstance]中使用[MultiMesh]来代替。" #: doc/classes/MeshInstance.xml:21 msgid "" @@ -40744,38 +41093,41 @@ msgid "" "If [code]simplify[/code] is [code]true[/code], the geometry can be further " "simplified to reduce the amount of vertices. Disabled by default." msgstr "" +"这个助手创建[StaticBody]子节点,该节点具有从网格几何形状计算的" +"[ConvexPolygonShape]碰撞形状。其主要用于测试。\n" +"如果[code]clean[/code]是[code]true[/code](默认),重复的顶点和内部顶点会被自" +"动移除。可以把它设置为[code]false[/code],以便在不需要的情况下使这个过程更" +"快。\n" +"如果[code]simplify[/code]是[code]true[/code],可以进一步简化几何体以减少顶点" +"的数量。默认情况下是禁用的。" #: doc/classes/MeshInstance.xml:29 -#, fuzzy msgid "" "This helper creates a [MeshInstance] child node with gizmos at every vertex " "calculated from the mesh geometry. It's mainly used for testing." msgstr "" -"这个帮助类创建了一个[MeshInstance3D]子节点,在每个顶点上都有从网格几何计算出" -"来的辅助线框。它主要用于测试。" +"这个辅助工具创建[MeshInstance]子节点,在每个顶点都有根据网格几何形状计算的辅" +"助线框。其主要用于测试。" #: doc/classes/MeshInstance.xml:35 -#, fuzzy msgid "" "This helper creates a [StaticBody] child node with multiple " "[ConvexPolygonShape] collision shapes calculated from the mesh geometry via " "convex decomposition. It's mainly used for testing." msgstr "" -"这个帮助类创建一个[StaticBody3D]子节点,该节点使用一个从网格几何计算的" -"[ConvexPolygonShape3D]碰撞形状。它主要用于测试。" +"这个助手创建[StaticBody]子节点,该节点具有多个[ConvexPolygonShape]碰撞形状," +"这些碰撞形状是通过凸面分解从网格几何形状计算出来的。其主要用于测试。" #: doc/classes/MeshInstance.xml:41 -#, fuzzy msgid "" "This helper creates a [StaticBody] child node with a [ConcavePolygonShape] " "collision shape calculated from the mesh geometry. It's mainly used for " "testing." msgstr "" -"这个助手创建一个[StaticBody3D]子节点,使用一个从网格几何计算的" -"[ConcavePolygonShape3D]碰撞形状。它主要用于测试。" +"这个助手创建[StaticBody]子节点,其碰撞形状是由网格的几何形状计算出来的" +"[ConcavePolygonShape],其主要用于测试。" #: doc/classes/MeshInstance.xml:48 -#, fuzzy msgid "" "Returns the [Material] that will be used by the [Mesh] when drawing. This " "can return the [member GeometryInstance.material_override], the surface " @@ -40783,33 +41135,30 @@ msgid "" "[Material] defined in the [Mesh]. For example, if [member GeometryInstance." "material_override] is used, all surfaces will return the override material." msgstr "" -"返回将在绘制时被[Mesh]使用的[Material]。这可以返回[member GeometryInstance3D." -"material_override],面会覆盖在[MeshInstance3D]中定义的[Material],或者在" -"[Mesh]中定义的表面[Material]。例如,如果使用[member GeometryInstance3D." -"Material_override]时,所有表面将返回覆盖后的材质。" +"返回[Mesh]绘制时使用的[Material]。这可以返回[member GeometryInstance." +"material_override],这个[MeshInstance]中定义的表面覆盖[Material],或者[Mesh]" +"中定义的表面[Material]。例如,如果使用[member GeometryInstance." +"material_override],所有的表面都会返回覆盖的材质。" #: doc/classes/MeshInstance.xml:55 -#, fuzzy msgid "Returns the [Material] for a surface of the [Mesh] resource." -msgstr "返回[Mesh]资源指定表面的覆盖后的[Material]。" +msgstr "返回[Mesh]资源表面的[Material]。" #: doc/classes/MeshInstance.xml:61 msgid "Returns the number of surface materials." msgstr "返回表面材质的数量。" #: doc/classes/MeshInstance.xml:69 -#, fuzzy msgid "Sets the [Material] for a surface of the [Mesh] resource." -msgstr "返回[Mesh]资源指定表面的覆盖后的[Material]。" +msgstr "为[Mesh]资源的表面设置[Material]。" #: doc/classes/MeshInstance.xml:75 msgid "The [Mesh] resource for the instance." msgstr "该实例的[Mesh]资源。" #: doc/classes/MeshInstance.xml:78 -#, fuzzy msgid "[NodePath] to the [Skeleton] associated with the instance." -msgstr "通向与该实例关联的[Skeleton3D]的[NodePath]。" +msgstr "与实例相关联[NodePath]的[Skeleton]。" #: doc/classes/MeshInstance.xml:81 msgid "Sets the skin to be used by this instance." @@ -40824,25 +41173,28 @@ msgid "" "software_skinning_fallback] for details about how software skinning is " "enabled." msgstr "" +"如果[code]true[/code],当使用软件蒙皮时,法线会被转换。当不需要法线时,设置为" +"[code]false[/code]以获得更好的性能。\n" +"关于如何启用软件蒙皮的细节,参阅[member ProjectSettings.rendering/quality/" +"skinning/software_skinning_fallback]。" #: doc/classes/MeshInstance2D.xml:4 msgid "Node used for displaying a [Mesh] in 2D." msgstr "用于在2D中显示[Mesh]的节点。" #: doc/classes/MeshInstance2D.xml:7 -#, fuzzy msgid "" "Node used for displaying a [Mesh] in 2D. Can be constructed from an existing " "[Sprite] via a tool in the editor toolbar. Select \"Sprite\" then \"Convert " "to Mesh2D\", select settings in popup and press \"Create Mesh2D\"." msgstr "" -"用于在2D中显示[Mesh]的节点。可以通过编辑器工具栏中的工具从现有的[Sprite2D]构" -"建。选择“Sprite2D”,然后“Convert to Mesh2D”,在弹出窗口中选择设置,然后" -"按“Create Mesh2D”。" +"用于在2D中显示[Mesh]的节点。可以通过编辑器工具栏上的工具从现有的[Sprite]构" +"建。选择 \"Sprite\",然后选择 \"转换为Mesh2D\",在弹出的窗口中选择设置并按下 " +"\"创建Mesh2D\"。" #: doc/classes/MeshInstance2D.xml:10 msgid "https://docs.godotengine.org/en/3.4/tutorials/2d/2d_meshes.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/2d/2d_meshes.html" +msgstr "https://docs.godotengine.org/zh_CN/stable/tutorials/2d/2d_meshes.html" #: doc/classes/MeshInstance2D.xml:16 msgid "The [Mesh] that will be drawn by the [MeshInstance2D]." @@ -40862,13 +41214,12 @@ msgstr "" "一页[/url],以获得流行引擎期望的标准法向图坐标的比较。" #: doc/classes/MeshInstance2D.xml:23 doc/classes/MultiMeshInstance2D.xml:23 -#, fuzzy msgid "" "The [Texture] that will be used if using the default [CanvasItemMaterial]. " "Can be accessed as [code]TEXTURE[/code] in CanvasItem shader." msgstr "" -"如果使用默认的[CanvasItemMaterial], 本[Texture2D]将被使用。可以在CanvasItem" -"着色器中访问[code]TEXTURE[/code]。" +"如果使用默认的[CanvasItemMaterial],就会使用[Texture]。可以在CanvasItem着色器" +"中作为[code]TEXTURE[/code]访问。" #: doc/classes/MeshInstance2D.xml:29 doc/classes/MultiMeshInstance2D.xml:29 msgid "Emitted when the [member texture] is changed." @@ -40912,9 +41263,8 @@ msgid "Returns the item's mesh." msgstr "返回该 item 的网格模型。" #: doc/classes/MeshLibrary.xml:52 -#, fuzzy msgid "Returns the transform applied to the item's mesh." -msgstr "返回应用于该项导航网格的转换。" +msgstr "返回应用到项目网格的变换。" #: doc/classes/MeshLibrary.xml:59 msgid "Returns the item's name." @@ -40929,7 +41279,6 @@ msgid "Returns the transform applied to the item's navigation mesh." msgstr "返回应用于该项导航网格的转换。" #: doc/classes/MeshLibrary.xml:80 -#, fuzzy msgid "" "When running in the editor, returns a generated item preview (a 3D rendering " "in isometric perspective). When used in a running project, returns the " @@ -40937,18 +41286,17 @@ msgid "" "set_item_preview]. Returns an empty [Texture] if no preview was manually set " "in a running project." msgstr "" -"在编辑器中运行时,返回生成的项目预览(等距透视的3D渲染)。当在一个正在运行的项" -"目中使用时,返回手动定义的项目预览,可以使用[method set_item_preview]进行设" -"置。如果在运行的项目中没有手动设置预览,则返回一个空的[Texture2D]。" +"当在编辑器中运行时,返回生成的项目预览(等距透视的3D渲染)。当在运行的项目中" +"使用时,返回手动定义的项目预览,可以使用[method set_item_preview]来设置。如果" +"在运行的项目中没有手动设置预览,返回空的[Texture]。" #: doc/classes/MeshLibrary.xml:87 -#, fuzzy msgid "" "Returns an item's collision shapes.\n" "The array consists of each [Shape] followed by its [Transform]." msgstr "" "返回项目的碰撞形状。\n" -"数组由[Shape3D]和它的[Transform]组成。" +"这个数组由每个[Shape]和它的[Transform]组成。" #: doc/classes/MeshLibrary.xml:94 msgid "Gets an unused ID for a new item." @@ -40963,9 +41311,8 @@ msgid "Sets the item's mesh." msgstr "设置该项的网格。" #: doc/classes/MeshLibrary.xml:117 -#, fuzzy msgid "Sets the transform to apply to the item's mesh." -msgstr "设置转换应用于该项的导航网格。" +msgstr "设置要应用到项目网格的变换。" #: doc/classes/MeshLibrary.xml:125 msgid "" @@ -40989,16 +41336,15 @@ msgid "Sets a texture to use as the item's preview icon in the editor." msgstr "在编辑器中设置要用作该项预览图标的纹理。" #: doc/classes/MeshLibrary.xml:158 -#, fuzzy msgid "" "Sets an item's collision shapes.\n" "The array should consist of [Shape] objects, each followed by a [Transform] " "that will be applied to it. For shapes that should not have a transform, use " "[constant Transform.IDENTITY]." msgstr "" -"设置该项的碰撞形状。\n" -"数组应该由[Shape3D]对象组成,每个对象后面都有一个[Transform],它将被应用到该" -"Shape3D。对于不应该有变换的形状,使用 [constant Transform.IDENTITY]。" +"设置项目的碰撞形状。\n" +"数组应由[Shape]对象组成,每个对象之后都有应用于它的[Transform]。对于不应有变" +"换的形状,使用[constant Transform.IDENTITY]。" #: doc/classes/MeshTexture.xml:4 msgid "Simple texture that uses a mesh to draw itself." @@ -41029,7 +41375,6 @@ msgid "Generic mobile VR implementation." msgstr "通用移动VR实现。" #: modules/mobile_vr/doc_classes/MobileVRInterface.xml:7 -#, fuzzy msgid "" "This is a generic mobile VR implementation where you need to provide details " "about the phone and HMD used. It does not rely on any existing framework. " @@ -41045,16 +41390,16 @@ msgid "" " get_viewport().arvr = true\n" "[/codeblock]" msgstr "" -"这是一个通用的移动VR实现,你需要提供关于手机和使用的HMD的详细信息。它不依赖于" -"任何现有的框架。这是我们拥有的最基础的接口。为了达到最佳效果,你需要一部带有" -"陀螺仪和加速计的手机。\n" -"注意,即使没有位置跟踪,摄像头也会假设耳机在1.85米的高度。你可以通过设置" -"[member eye_height]来改变它。\n" -"初始化该接口的方法如下:\n" +"这是通用的移动VR实现,你需要提供关于所使用的手机和HMD的细节。它不依赖于任何现" +"有的框架。这是我们拥有的最基本的接口。为了达到最好的效果,你需要一个有陀螺仪" +"和加速器的手机。\n" +"请注意,即使没有位置跟踪,相机也会假定耳机处于1.85米的高度。你可以通过设置" +"[member eye_height]来改变这一点。\n" +"你可以按以下方式初始化这个接口:\n" "[codeblock]\n" -"var interface = XRServer.find_interface(\"Native mobile\")\n" +"var interface = ARVRServer.find_interface(\"Native mobile\")\n" "if interface and interface.initialize():\n" -" get_viewport().xr = true\n" +" get_viewport().arvr = true\n" "[/codeblock]" #: modules/mobile_vr/doc_classes/MobileVRInterface.xml:22 @@ -41068,11 +41413,10 @@ msgid "The width of the display in centimeters." msgstr "显示器的宽度,以厘米为单位。" #: modules/mobile_vr/doc_classes/MobileVRInterface.xml:28 -#, fuzzy msgid "" "The height at which the camera is placed in relation to the ground (i.e. " "[ARVROrigin] node)." -msgstr "相机相对于地面放置的高度(即[XROrigin3D]节点)。" +msgstr "摄像机相对于地面所处的高度,即[ARVROrigin]节点。" #: modules/mobile_vr/doc_classes/MobileVRInterface.xml:31 msgid "" @@ -41105,7 +41449,6 @@ msgid "Provides high-performance mesh instancing." msgstr "提供高性能的网格实例化。" #: doc/classes/MultiMesh.xml:7 -#, fuzzy msgid "" "MultiMesh provides low-level mesh instancing. Drawing thousands of " "[MeshInstance] nodes can be slow, since each object is submitted to the GPU " @@ -41118,20 +41461,20 @@ msgid "" "Since instances may have any behavior, the AABB used for visibility must be " "provided by the user." msgstr "" -"MultiMesh提供了低级别的网格实例化功能。绘制成千上万的[MeshInstance3D]节点可能" -"会很慢,因为每个对象都要提交给GPU然后单独绘制。\n" +"MultiMesh提供了低级别的网格实例化功能。绘制数以千计的[MeshInstance]节点可能会" +"很慢,因为每个对象都要提交给GPU然后单独绘制。\n" "MultiMesh要快得多,因为它可以通过一次绘制调用来绘制成千上万的实例,从而减少" "API的开销。\n" -"缺点是,如果实例之间的距离太远,性能可能会降低,因为每一个实例都会被渲染(它" -"们在空间上被索引为一整个对象)。\n" -"由于实例可以有任何行为,用于可见性的AABB必须由用户提供。" +"缺点是,如果实例之间的距离太远,性能可能会降低,因为每一个实例总是会被渲染" +"(它们在空间上被索引为整个对象)。\n" +"由于实例可能具有任何行为,用于可见性的AABB必须由用户提供。" #: doc/classes/MultiMesh.xml:13 doc/classes/MultiMeshInstance.xml:11 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/3d/vertex_animation/" "animating_thousands_of_fish.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/3d/vertex_animation/" +"https://docs.godotengine.org/zh_CN/stable/tutorials/3d/vertex_animation/" "animating_thousands_of_fish.html" #: doc/classes/MultiMesh.xml:14 doc/classes/MultiMeshInstance.xml:13 @@ -41139,14 +41482,16 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/optimization/using_multimesh." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/optimization/using_multimesh." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/optimization/" +"using_multimesh.html" #: doc/classes/MultiMesh.xml:20 msgid "" "Returns the visibility axis-aligned bounding box in local space. See also " "[method VisualInstance.get_transformed_aabb]." msgstr "" +"返回局部空间中可见性轴对齐的边界框。参阅[method VisualInstance." +"get_transformed_aabb]。" #: doc/classes/MultiMesh.xml:27 msgid "Gets a specific instance's color." @@ -41176,9 +41521,15 @@ msgid "" "(4 bytes as is) and [code]COLOR_FLOAT[/code] / [code]CUSTOM_DATA_FLOAT[/" "code] is stored as 4 floats." msgstr "" +"一次性设置所有与实例相关的数据。这在从磁盘加载数据或从GDNative准备数据时特别" +"有用。\n" +"所有的数据都被打包在一个大的浮点数数组中。数组可能看起来像这样。实例1的变换," +"实例1的颜色数据,实例1的自定义数据,实例2的变换,实例2的颜色数据,等等。\n" +"[Transform]存储为12浮点数,[Transform2D]存储为8浮点数,[code]COLOR_8BIT[/" +"code] / [code]CUSTOM_DATA_8BIT[/code]存储为1浮点数(原为4字节)," +"[code]COLOR_FLOAT[/code] / [code]CUSTOM_DATA_FLOAT[/code] 存储为4浮点数。" #: doc/classes/MultiMesh.xml:65 -#, fuzzy msgid "" "Sets the color of a specific instance by [i]multiplying[/i] the mesh's " "existing vertex colors.\n" @@ -41186,21 +41537,19 @@ msgid "" "[code]null[/code] on the [MultiMesh] and [member SpatialMaterial." "vertex_color_use_as_albedo] is [code]true[/code] on the material." msgstr "" -"设置一个特定实例的颜色。\n" -"为了使颜色生效,确保[MultiMesh]上的[member use_colors]是[code]true[/code],材" -"质上的[member BaseMaterial3D.vertex_color_use_as_albedo] 是[code]true[/" -"code]。" +"通过[i]乘以[/i]网格的现有顶点颜色来设置特定实例的颜色。\n" +"为了使颜色生效,请确保[MultiMesh]上的[member color_format]不是[code]null[/" +"code],并且[member SpatialMaterial.vertex_color_use_as_albedo]上的材质是" +"[code]true[/code]。" #: doc/classes/MultiMesh.xml:74 -#, fuzzy msgid "" "Sets custom data for a specific instance. Although [Color] is used, it is " "just a container for 4 floating point numbers. The format of the number can " "change depending on the [enum CustomDataFormat] used." msgstr "" -"为一个特定的实例设置自定义数据。虽然使用了[Color],但它只是一个容纳4个浮点数" -"的容器。\n" -"为了使用自定义数据,确保[member use_custom_data]是[code]true[/code]。" +"为特定的实例设置自定义数据。虽然使用了[Color],但它只是一个容纳4个浮点数的容" +"器。数字的格式可以根据使用的[enum CustomDataFormat]来改变。" #: doc/classes/MultiMesh.xml:82 msgid "Sets the [Transform] for a specific instance." @@ -41212,7 +41561,7 @@ msgstr "为特定实例设置 [Transform2D]。" #: doc/classes/MultiMesh.xml:96 msgid "Format of colors in color array that gets passed to shader." -msgstr "" +msgstr "传递给着色器的颜色数组中的颜色格式。" #: doc/classes/MultiMesh.xml:99 msgid "Format of custom data in custom data array that gets passed to shader." @@ -41298,46 +41647,42 @@ msgid "Node that instances a [MultiMesh]." msgstr "实例化 [MultiMesh] 的节点。" #: doc/classes/MultiMeshInstance.xml:7 -#, fuzzy msgid "" "[MultiMeshInstance] is a specialized node to instance [GeometryInstance]s " "based on a [MultiMesh] resource.\n" "This is useful to optimize the rendering of a high amount of instances of a " "given mesh (for example trees in a forest or grass strands)." msgstr "" -"[MultiMeshInstance3D] 是基于 [MultiMesh] 资源实例化 [GeometryInstance3D] 的专" -"用节点。\n" -"这对于优化给定网格的大量实例(例如森林中的树木或草丛)的渲染很有用。" +"[MultiMeshInstance]是特有的节点,用于基于[MultiMesh]资源的[GeometryInstance]" +"的实例。\n" +"这对于优化给定网格的大量实例的渲染是非常有用的(例如,森林中的树木或草丛)。" #: doc/classes/MultiMeshInstance.xml:12 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/3d/using_multi_mesh_instance." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/3d/using_multi_mesh_instance." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/3d/" +"using_multi_mesh_instance.html" #: doc/classes/MultiMeshInstance.xml:19 -#, fuzzy msgid "" "The [MultiMesh] resource that will be used and shared among all instances of " "the [MultiMeshInstance]." -msgstr "" -"将在 [MultiMeshInstance3D] 的所有实例之间使用和共享的 [MultiMesh] 资源。" +msgstr "在[MultiMeshInstance]的所有实例中使用和共享的[MultiMesh]资源。" #: doc/classes/MultiMeshInstance2D.xml:4 msgid "Node that instances a [MultiMesh] in 2D." msgstr "在 2D 中实例化 [MultiMesh] 的节点。" #: doc/classes/MultiMeshInstance2D.xml:7 -#, fuzzy msgid "" "[MultiMeshInstance2D] is a specialized node to instance a [MultiMesh] " "resource in 2D.\n" "Usage is the same as [MultiMeshInstance]." msgstr "" -"[MultiMeshInstance2D] 是一个专门用于在 2D 中实例化 [MultiMesh] 资源的节点。\n" -"用法与[MultiMeshInstance3D]相同。" +"[MultiMeshInstance2D]是特有的节点,用于实例化2D的[MultiMesh]资源。\n" +"使用方法与[MultiMeshInstance]相同。" #: doc/classes/MultiMeshInstance2D.xml:16 msgid "The [MultiMesh] that will be drawn by the [MultiMeshInstance2D]." @@ -41348,7 +41693,6 @@ msgid "High-level multiplayer API." msgstr "高级多人游戏API。" #: doc/classes/MultiplayerAPI.xml:7 -#, fuzzy msgid "" "This class implements most of the logic behind the high-level multiplayer " "API. See also [NetworkedMultiplayerPeer].\n" @@ -41361,11 +41705,13 @@ msgid "" "detail and isn't meant to be used by non-Godot servers. It may change " "without notice." msgstr "" -"这个类实现了高层多人游戏API背后的大部分逻辑。\n" -"默认情况下,[SceneTree]有一个对该类的引用,用于在整个场景中提供多人游戏功能" -"(即RPC/RSET)。\n" -"通过设置[member Node.custom_multiplayer]属性,可以覆盖特定节点使用的多人游戏" -"API实例,有效地允许在同一场景中同时运行客户端和服务器。" +"该类实现了高阶多人游戏API背后的大部分逻辑。参阅[NetworkedMultiplayerPeer]。\n" +"默认情况下,[SceneTree]有对该类的引用,用于在整个场景中提供多人游戏功能(即" +"RPC/RSET)。\n" +"通过设置[member Node.custom_multiplayer]属性,可以重写特定节点使用的多人游戏" +"API实例,从而有效地允许在同一场景中同时运行客户端和服务器。\n" +"[b]注意:[/b] 高阶的多人游戏API协议实现细节,并不意味着可以被非Godot服务器使" +"用。它可能会改变,不做另行通知。" #: doc/classes/MultiplayerAPI.xml:18 msgid "" @@ -41433,7 +41779,6 @@ msgstr "" "即向所有对等体广播。" #: doc/classes/MultiplayerAPI.xml:71 -#, fuzzy msgid "" "If [code]true[/code] (or if the [member network_peer] has [member PacketPeer." "allow_object_decoding] set to [code]true[/code]), the MultiplayerAPI will " @@ -41442,8 +41787,9 @@ msgid "" "Do not use this option if the serialized object comes from untrusted sources " "to avoid potential security threats such as remote code execution." msgstr "" -"如果[code]true[/code],多人游戏API将允许在RPC/RSETs期间对对象进行编码和解" -"码。\n" +"如果[code]true[/code],或者如果[member network_peer]的[member PacketPeer." +"allow_object_decoding]设置为[code]true[/code],多人游戏API将允许在RPC/RSETs期" +"间的对象进行编码和解码。\n" "[b]警告:[/b] 反序列化的对象可能包含会被执行的代码。如果序列化的对象来自不受" "信任的来源,请不要使用这个选项,以避免潜在的安全威胁,如远程代码执行。" @@ -41472,7 +41818,6 @@ msgstr "" "连接。" #: doc/classes/MultiplayerAPI.xml:81 -#, fuzzy msgid "" "The root node to use for RPCs. Instead of an absolute path, a relative path " "will be used to find the node upon which the RPC should be executed.\n" @@ -41480,10 +41825,9 @@ msgid "" "managed by different MultiplayerAPI, allowing for example to run both client " "and server in the same scene." msgstr "" -"设置用于 RPC 的基本根节点。将使用相对路径而不是绝对路径来查找应在其上执行 " -"RPC 的节点。\n" -"这有效地允许场景树的不同分支由不同的 MultiplayerAPI 管理,例如允许在同一场景" -"中运行客户端和服务器。" +"用于RPC的根节点。不使用绝对路径,而是使用相对路径来寻找应该执行RPC的节点。\n" +"这有效地允许场景树的不同分支由不同的MultiplayerAPI管理,例如允许在同一个场景" +"中同时运行客户端和服务器。" #: doc/classes/MultiplayerAPI.xml:88 msgid "" @@ -41585,13 +41929,12 @@ msgstr "" "受来自节点的网络主站的调用或属性更改,见[method Node.set_network_master]。" #: doc/classes/MultiplayerAPI.xml:135 -#, fuzzy msgid "" "[i]Deprecated.[/i] Use [constant RPC_MODE_PUPPET] instead. Analogous to the " "[code]slave[/code] keyword." msgstr "" -"行为类似于 [constant RPC_MODE_PUPPET],但也会使调用或属性在本地改变。类似于 " -"[code]puppetsync[/code] 关键字。" +"[i]已废弃。[/i] 使用[constant RPC_MODE_PUPPET]代替。类似于[code]slave[/code]" +"关键字。" #: doc/classes/MultiplayerAPI.xml:138 msgid "" @@ -41602,13 +41945,12 @@ msgstr "" "[code]remoteesync[/code]关键字。" #: doc/classes/MultiplayerAPI.xml:141 -#, fuzzy msgid "" "[i]Deprecated.[/i] Use [constant RPC_MODE_REMOTESYNC] instead. Analogous to " "the [code]sync[/code] keyword." msgstr "" -"行为类似于[constant RPC_MODE_REMOTE],但也会使调用或属性在本地改变。类似于" -"[code]remoteesync[/code]关键字。" +"[i]已废弃。[/i] 使用[constant RPC_MODE_REMOTESYNC]代替。类似于[code]sync[/" +"code]关键字。" #: doc/classes/MultiplayerAPI.xml:144 msgid "" @@ -41647,8 +41989,8 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/threads/using_multiple_threads." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/threads/using_multiple_threads." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/threads/" +"using_multiple_threads.html" #: doc/classes/Mutex.xml:16 msgid "" @@ -41660,14 +42002,15 @@ msgstr "" "[b]注意:[/b] 如果线程已经拥有互斥锁的所有权,该函数将无阻塞地返回。" #: doc/classes/Mutex.xml:23 -#, fuzzy msgid "" "Tries locking this [Mutex], but does not block. Returns [constant OK] on " "success, [constant ERR_BUSY] otherwise.\n" "[b]Note:[/b] This function returns [constant OK] if the thread already has " "ownership of the mutex." msgstr "" -"试图锁定这个[Mutex],但并不阻塞。成功时返回[常量OK],否则返回[常量ERR_BUSY]。" +"试图锁定此[Mutex],但并不阻塞。成功时返回[constant OK],否则返回[constant " +"ERR_BUSY]。\n" +"[b]注意:[/b] 如果线程已经拥有了该Mutex的所有权,该函数返回[constant OK]。" #: doc/classes/Mutex.xml:30 msgid "" @@ -41713,7 +42056,6 @@ msgstr "" "字符串。" #: modules/gdnative/doc_classes/NativeScript.xml:40 -#, fuzzy msgid "" "Constructs a new object of the base type with a script of this type already " "attached.\n" @@ -41721,8 +42063,8 @@ msgid "" "passed to the native constructor function. This will change with in a future " "API extension." msgstr "" -"构建一个基本类型的新对象,并附加一个该类型的脚本。\n" -"[i]注意[/i]。传递给这个函数的任何参数都将被忽略,不会传递给本地构造函数。这将" +"构建基础类型的新对象,并附加此类型的脚本。\n" +"[b]注意:[/b] 传递给这个函数的任何参数将被忽略,不会传递给局部构造函数。这将" "在未来的API扩展中改变。" #: doc/classes/Navigation.xml:4 @@ -41730,7 +42072,6 @@ msgid "Mesh-based navigation and pathfinding node." msgstr "基于网格的导航和寻路节点。" #: doc/classes/Navigation.xml:7 -#, fuzzy msgid "" "Provides navigation and pathfinding within a collection of " "[NavigationMesh]es. By default, these will be automatically collected from " @@ -41742,19 +42083,21 @@ msgid "" "not always return optimal paths as expected. These issues will be fixed in " "Godot 4.0." msgstr "" -"在[NavigationMesh]的集合中提供导航和寻路。这将会从子节点[NavigationRegion3D]" -"中被自动收集。除了基本的寻路,这个类还帮助导航代理与导航上的网格对齐。" +"在[NavigationMesh]的集合中提供导航和寻路功能。默认情况下,这些将自动从子" +"[NavigationMeshInstance]节点中收集,也可以通过[method navmesh_add]即时添加。" +"除了基本的寻路之外,这个类还能帮助导航代理与其所导航的网格对齐。\n" +"[b]注意:[/b] 目前的导航系统有许多已知的问题,并不总是能像预期的那样返回最佳" +"路径。这些问题将在Godot 4.0中得到解决。" #: doc/classes/Navigation.xml:11 doc/classes/NavigationMesh.xml:10 msgid "https://godotengine.org/asset-library/asset/124" msgstr "https://godotengine.org/asset-library/asset/124" #: doc/classes/Navigation.xml:18 doc/classes/Navigation2D.xml:18 -#, fuzzy msgid "" "Returns the navigation point closest to the point given. Points are in local " "coordinate space." -msgstr "返回指定坐标的图集或自动图块中,子图块的导航多边形。" +msgstr "返回最接近给定点的导航点。点位于局部坐标空间。" #: doc/classes/Navigation.xml:25 msgid "" @@ -41788,7 +42131,6 @@ msgstr "" "导航网格之间的交点。如果找到多个交点,则返回最接近线段起点的交点。" #: doc/classes/Navigation.xml:50 -#, fuzzy msgid "" "Returns the path between two given points. Points are in local coordinate " "space. If [code]optimize[/code] is [code]true[/code] (the default), the " @@ -41797,9 +42139,11 @@ msgid "" "[b]Note:[/b] This method has known issues and will often return non-optimal " "paths. These issues will be fixed in Godot 4.0." msgstr "" -"返回两个给定点之间的路径。点在局部坐标空间中。如果[code]optimize[/code] 为 " -"[code]true[/code](默认值),则在路径计算中考虑与每个[NavigationMesh]相关联的代" -"理属性(半径、高度等),否则它们将被忽略。" +"返回两个给定点之间的路径。点是在局部坐标空间中。如果[code]optimize[/code]是" +"[code]true[/code](默认),与每个[NavigationMesh]相关的代理属性(半径、高度" +"等)在路径计算中被考虑,否则其被忽略。\n" +"[b]注意:[/b] 这个方法有已知的问题,经常会返回非最佳的路径。这些问题将在" +"Godot 4.0中得到修正。" #: doc/classes/Navigation.xml:60 msgid "" @@ -41813,14 +42157,12 @@ msgstr "" "的 [code]owner[/code] 用作 [method get_closest_point_owner] 的返回值。" #: doc/classes/Navigation.xml:67 -#, fuzzy msgid "Removes the [NavigationMesh] with the given ID." -msgstr "返回指定名称的动画节点。" +msgstr "移除具有指定ID的[NavigationMesh]。" #: doc/classes/Navigation.xml:75 -#, fuzzy msgid "Sets the transform applied to the [NavigationMesh] with the given ID." -msgstr "返回应用于该项导航网格的转换。" +msgstr "设置应用于具有指定ID的[NavigationMesh]的变换。" #: doc/classes/Navigation.xml:81 msgid "" @@ -41835,7 +42177,6 @@ msgid "2D navigation and pathfinding node." msgstr "2D导航和寻路节点。" #: doc/classes/Navigation2D.xml:7 -#, fuzzy msgid "" "Navigation2D provides navigation and pathfinding within a 2D area, specified " "as a collection of [NavigationPolygon] resources. By default, these are " @@ -41845,8 +42186,11 @@ msgid "" "not always return optimal paths as expected. These issues will be fixed in " "Godot 4.0." msgstr "" -"Navigation2D在一个2D区域内提供导航和寻路,指定为[NavigationPolygon]资源的集" -"合。这些资源被自动从子[NavigationRegion2D]节点中收集。" +"Navigation2D在2D区域内提供导航和寻路,指定为[NavigationPolygon]资源的集合。默" +"认情况下,这些资源自动从子[NavigationPolygonInstance]节点中收集,但其也可以通" +"过[method navpoly_add]即时添加。\n" +"[b]注意:[/b] 当前的导航系统有许多已知的问题,并不总是能像预期的那样返回最佳" +"的路径。这些问题将在Godot 4.0中得到解决。" #: doc/classes/Navigation2D.xml:11 doc/classes/NavigationPolygon.xml:27 msgid "https://godotengine.org/asset-library/asset/117" @@ -41865,7 +42209,6 @@ msgstr "" "给定的所有者(如果省略 [code]owner[/code] 参数,则返回 [code]null[/code])。" #: doc/classes/Navigation2D.xml:34 -#, fuzzy msgid "" "Returns the path between two given points. Points are in local coordinate " "space. If [code]optimize[/code] is [code]true[/code] (the default), the path " @@ -41873,8 +42216,10 @@ msgid "" "[b]Note:[/b] This method has known issues and will often return non-optimal " "paths. These issues will be fixed in Godot 4.0." msgstr "" -"返回两个给定点之间的路径。点在局部坐标空间中。如果[code]optimize[/code]为" -"[code]true[/code](默认),则路径将通过合并路径段来平滑。" +"返回两个给定点之间的路径。点是在局部坐标空间中。如果[code]optimize[/code]为" +"[code]true[/code](默认值),路径将尽可能地合并路径段,从而平滑。\n" +"[b]注意:[/b] 这个方法有已知的问题,经常会返回非最佳的路径。这些问题将在" +"Godot 4.0中得到解决。" #: doc/classes/Navigation2D.xml:44 msgid "" @@ -41888,15 +42233,13 @@ msgstr "" "的 [code]owner[/code] 用作 [method get_closest_point_owner] 的返回值。" #: doc/classes/Navigation2D.xml:51 -#, fuzzy msgid "Removes the [NavigationPolygon] with the given ID." -msgstr "返回图块的导航多边形。" +msgstr "移除具有指定ID的[NavigationPolygon]。" #: doc/classes/Navigation2D.xml:59 -#, fuzzy msgid "" "Sets the transform applied to the [NavigationPolygon] with the given ID." -msgstr "返回应用于该项导航网格的转换。" +msgstr "设置应用于具有指定ID的[NavigationPolygon]的变换。" #: doc/classes/NavigationMesh.xml:4 msgid "A mesh to approximate the walkable areas and obstacles." @@ -41918,10 +42261,9 @@ msgid "" msgstr "使用调用[method get_vertices]得到的顶点的索引添加一个多边形。" #: doc/classes/NavigationMesh.xml:23 -#, fuzzy msgid "" "Clears the array of polygons, but it doesn't clear the array of vertices." -msgstr "清除多边形数组,但不清除轮廓和顶点数组。" +msgstr "清除多边形数组,但不清除顶点数组。" #: doc/classes/NavigationMesh.xml:30 msgid "" @@ -41930,30 +42272,26 @@ msgid "" msgstr "通过根据 [Mesh] 设置顶点和索引来初始化导航网格。" #: doc/classes/NavigationMesh.xml:37 -#, fuzzy msgid "" "Returns whether the specified [code]bit[/code] of the [member geometry/" "collision_mask] is set." -msgstr "如果指定碰撞遮罩bit位被设置,返回[code]true[/code]。" +msgstr "返回[member geometry/collision_mask]的指定[code]bit[/code]是否被设置。" #: doc/classes/NavigationMesh.xml:44 doc/classes/NavigationPolygon.xml:81 -#, fuzzy msgid "" "Returns a [PoolIntArray] containing the indices of the vertices of a created " "polygon." -msgstr "返回一个[PackedInt32Array],其中包含一个创建多边形的顶点的索引。" +msgstr "返回包含创建的多边形顶点索引的[PoolIntArray]。" #: doc/classes/NavigationMesh.xml:50 -#, fuzzy msgid "Returns the number of polygons in the navigation mesh." -msgstr "返回动画中的帧数。" +msgstr "返回导航网格中的多边形数量。" #: doc/classes/NavigationMesh.xml:56 -#, fuzzy msgid "" "Returns a [PoolVector3Array] containing all the vertices being used to " "create the polygons." -msgstr "返回一个[PackedVector2Array],包含所有用于创建多边形的顶点。" +msgstr "返回包含用于创建多边形的所有顶点的[PoolVector3Array]。" #: doc/classes/NavigationMesh.xml:64 msgid "" @@ -41993,9 +42331,8 @@ msgstr "" "[b]注意:[/b]烘焙时,该值将向下舍入到最接近的[member cell/height]的倍数。" #: doc/classes/NavigationMesh.xml:86 -#, fuzzy msgid "The maximum slope that is considered walkable, in degrees." -msgstr "一个 Agent 能移动的最大速度。" +msgstr "认为可行走的最大坡度,单位是度。" #: doc/classes/NavigationMesh.xml:89 msgid "" @@ -42008,9 +42345,8 @@ msgstr "" "[b]注意:[/b]烘焙时,这个值会向上取整到最接近的[member cell/size]的倍数。" #: doc/classes/NavigationMesh.xml:93 -#, fuzzy msgid "The Y axis cell size to use for fields." -msgstr "用于“呼叫方法”轨道的呼叫模式。" +msgstr "用于字段Y轴单元的尺寸。" #: doc/classes/NavigationMesh.xml:96 msgid "The XZ plane cell size to use for fields." @@ -42051,9 +42387,8 @@ msgstr "" "行走范围标记为不可行走。" #: doc/classes/NavigationMesh.xml:115 -#, fuzzy msgid "If [code]true[/code], marks spans that are ledges as non-walkable." -msgstr "如果[code]true[/code],则启用传递式按压。" +msgstr "如果[code]true[/code],标记边缘间的跨度为不可行走。" #: doc/classes/NavigationMesh.xml:118 msgid "" @@ -42074,18 +42409,16 @@ msgstr "" "PARSED_GEOMETRY_STATIC_COLLIDERS]或[constant PARSED_GEOMETRY_BOTH]时才使用。" #: doc/classes/NavigationMesh.xml:125 -#, fuzzy msgid "" "Determines which type of nodes will be parsed as geometry. See [enum " "ParsedGeometryType] for possible values." -msgstr "设置关节类型。有关可能的值,请参阅[enum JointType]。" +msgstr "决定哪种类型的节点可解析为几何图形。参阅[enum ParsedGeometryType]。" #: doc/classes/NavigationMesh.xml:128 -#, fuzzy msgid "" "The source of the geometry used when baking. See [enum SourceGeometryMode] " "for possible values." -msgstr "背景模式。请参阅[enum BGMode]了解可能的值。" +msgstr "烘焙时使用的几何体的源。参阅[enum SourceGeometryMode]。" #: doc/classes/NavigationMesh.xml:131 msgid "" @@ -42128,11 +42461,10 @@ msgstr "" "将把单元格的数量设为64。" #: doc/classes/NavigationMesh.xml:146 -#, fuzzy msgid "" "Partitioning algorithm for creating the navigation mesh polys. See [enum " "SamplePartitionType] for possible values." -msgstr "图块原点的坐标。有关可能的值,参阅[enum TileOrigin]。" +msgstr "创建导航网格polys单元的分割算法。参阅[enum SamplePartitionType]。" #: doc/classes/NavigationMesh.xml:151 msgid "" @@ -42154,9 +42486,8 @@ msgid "" msgstr "层分区。用于具有中小型瓷砖的平铺导航网格的不错选择。" #: doc/classes/NavigationMesh.xml:160 -#, fuzzy msgid "Represents the size of the [enum SamplePartitionType] enum." -msgstr "表示[enum PortType]枚举的大小。" +msgstr "表示[enum SamplePartitionType]枚举的大小。" #: doc/classes/NavigationMesh.xml:163 msgid "" @@ -42182,9 +42513,8 @@ msgstr "" "PARSED_GEOMETRY_STATIC_COLLIDERS]." #: doc/classes/NavigationMesh.xml:172 -#, fuzzy msgid "Represents the size of the [enum ParsedGeometryType] enum." -msgstr "表示[enum PortType]枚举的大小。" +msgstr "表示[enum ParsedGeometryType]枚举的大小。" #: doc/classes/NavigationMesh.xml:175 msgid "" @@ -42208,14 +42538,12 @@ msgstr "" "定。" #: doc/classes/NavigationMesh.xml:184 -#, fuzzy msgid "Represents the size of the [enum SourceGeometryMode] enum." -msgstr "代表[enum ShaderMode]枚举的大小。" +msgstr "表示[enum SourceGeometryMode]枚举的大小。" #: doc/classes/NavigationMeshInstance.xml:4 -#, fuzzy msgid "Node that instances navigation meshes into a scenario." -msgstr "网格实例与场景相结合的节点。" +msgstr "将导航网格实例化为场景的节点。" #: doc/classes/NavigationMeshInstance.xml:7 msgid "" @@ -42226,14 +42554,12 @@ msgstr "" "例将其添加到当前场景中。" #: doc/classes/NavigationMeshInstance.xml:15 -#, fuzzy msgid "If [code]true[/code], the navigation mesh will be used by [Navigation]." -msgstr "如果 [code]true[/code] 时,[AnimationTree] 将执行逻辑处理。" +msgstr "如果[code]true[/code],导航网格将由[Navigation]使用。" #: doc/classes/NavigationMeshInstance.xml:18 -#, fuzzy msgid "The [NavigationMesh] resource for the instance." -msgstr "该实例的[Mesh]资源。" +msgstr "实例的[NavigationMesh]资源。" #: doc/classes/NavigationPolygon.xml:4 msgid "" @@ -42261,55 +42587,52 @@ msgid "" "var vertices = PoolVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, " "50), Vector2(50, 0)])\n" "polygon.set_vertices(vertices)\n" -"var indices = PoolIntArray(0, 3, 1)\n" +"var indices = PoolIntArray([0, 1, 2, 3])\n" "polygon.add_polygon(indices)\n" "$NavigationPolygonInstance.navpoly = polygon\n" "[/codeblock]" msgstr "" -"创建多边形有两种方法。要么使用[method add_outline]方法,要么使用[method " -"add_polygon]方法。\n" -"使用[method add_outline]:\n" +"有两种方法来创建多边形。[method add_outline]或[method add_polygon]方法。\n" +"使用[method add_outline]方法:\n" "[codeblock]\n" "var polygon = NavigationPolygon.new()\n" -"var outline = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, " +"var outline = PoolVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, " "50), Vector2(50, 0)])\n" "polygon.add_outline(outline)\n" "polygon.make_polygons_from_outlines()\n" -"$NavigationRegion2D.navpoly = polygon\n" +"$NavigationPolygonInstance.navpoly = polygon\n" "[/codeblock]\n" -"使用[method add_polygon] 和顶点数组的索引:\n" +"使用[method add_polygon]和顶点数组的索引:\n" "[codeblock]\n" "var polygon = NavigationPolygon.new()\n" -"var vertices = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), " -"Vector2(50, 50), Vector2(50, 0)])\n" +"var vertices = PoolVector2Array([Vector2(0, 0), Vector2(0, 50), Vector2(50, " +"50), Vector2(50, 0)])\n" "polygon.set_vertices(vertices)\n" -"var indices = PackedInt32Array(0, 3, 1)\n" +"var indices = PoolIntArray(0, 3, 1)\n" "polygon.add_polygon(indices)\n" -"$NavigationRegion2D.navpoly = polygon\n" +"$NavigationPolygonInstance.navpoly = polygon\n" "[/codeblock]" #: doc/classes/NavigationPolygon.xml:34 -#, fuzzy msgid "" "Appends a [PoolVector2Array] that contains the vertices of an outline to the " "internal array that contains all the outlines. You have to call [method " "make_polygons_from_outlines] in order for this array to be converted to " "polygons that the engine will use." msgstr "" -"将包含轮廓顶点的[PackedVector2Array]追加到包含所有轮廓的内部数组。你必须调用" -"[method make_polygons_from_outline]才能将这个数组转换为引擎将使用的多边形。" +"将包含轮廓顶点的[PoolVector2Array]添加到包含所有轮廓的内部数组中。你必须调用" +"[method make_polygons_from_outlines],将数组转换为引擎可使用的多边形。" #: doc/classes/NavigationPolygon.xml:42 -#, fuzzy msgid "" "Adds a [PoolVector2Array] that contains the vertices of an outline to the " "internal array that contains all the outlines at a fixed position. You have " "to call [method make_polygons_from_outlines] in order for this array to be " "converted to polygons that the engine will use." msgstr "" -"将包含轮廓顶点的[PackedVector2Array]添加到包含固定位置的所有轮廓的内部数组" -"中。你必须调用[method make_polygons_from_outline]才能将这个数组转换为引擎将使" -"用的多边形。" +"将包含轮廓顶点的[PoolVector2Array]添加到内部数组中,该数组包含所有固定位置的" +"轮廓。你必须调用[method make_polygons_from_outlines],将数组转换为引擎可使用" +"的多边形。" #: doc/classes/NavigationPolygon.xml:55 msgid "" @@ -42324,11 +42647,10 @@ msgid "" msgstr "清除多边形数组,但不清除轮廓和顶点数组。" #: doc/classes/NavigationPolygon.xml:68 -#, fuzzy msgid "" "Returns a [PoolVector2Array] containing the vertices of an outline that was " "created in the editor or by script." -msgstr "返回一个[PackedVector2Array],包含在编辑器或脚本中创建的轮廓的顶点。" +msgstr "返回[PoolVector2Array],包含在编辑器中或通过脚本创建的轮廓的顶点。" #: doc/classes/NavigationPolygon.xml:74 msgid "" @@ -42340,11 +42662,10 @@ msgid "Returns the count of all polygons." msgstr "返回多边形的数量。" #: doc/classes/NavigationPolygon.xml:93 -#, fuzzy msgid "" "Returns a [PoolVector2Array] containing all the vertices being used to " "create the polygons." -msgstr "返回一个[PackedVector2Array],包含所有用于创建多边形的顶点。" +msgstr "返回包含用于创建多边形的所有顶点的[PoolVector2Array]。" #: doc/classes/NavigationPolygon.xml:99 msgid "Creates polygons from the outlines added in the editor or by script." @@ -42399,7 +42720,7 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/networking/" "high_level_multiplayer.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/networking/" +"https://docs.godotengine.org/zh_CN/stable/tutorials/networking/" "high_level_multiplayer.html" #: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:13 @@ -42470,7 +42791,7 @@ msgid "" msgstr "" "创建服务器,通过[code]port[/code]监听连接。该端口需要是一个可用的、未使用的端" "口,在0到65535之间。注意,低于1024的端口是特权端口,根据平台的不同可能需要提" -"高权限。要改变服务器监听的接口,请使用[方法set_bind_ip]。默认IP是通配符" +"高权限。要改变服务器监听的接口,请使用[method set_bind_ip]。默认IP是通配符" "[code]\"*\"[/code],它监听所有可用的接口。[code]max_clients[/code]是允许同时" "进行的最大客户数,可以使用任何数字,最高可达4095,尽管可实现的同时进行的客户" "数可能要低得多,并且取决于应用。关于带宽参数的其他细节,见[method " @@ -42652,7 +42973,6 @@ msgstr "" "channel_count]。" #: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:139 -#, fuzzy msgid "" "When enabled, the client or server created by this peer, will use " "[PacketPeerDTLS] instead of raw UDP sockets for communicating with the " @@ -42664,20 +42984,21 @@ msgid "" "dtls_verify] option, and configure the certificate accordingly via [method " "set_dtls_certificate]." msgstr "" -"当启用时,由这个对等体创建的客户端或服务器将使用[PacketPeerDTLS]而不是原始的" -"UDP套接字来与远程对等体通信。这将使通信使用DTLS加密,但代价是更高的资源使用和" -"潜在的更大的包大小。\n" -"注意:在创建DTLS服务器时,请确保通过[method set_dtls_key]和[method " -"set_dtls_certificate]设置密钥/证书对。对于DTLS客户端,请查看[member " -"dtls_verify]选项,并通过[method set_dtls_certificate]配置相应的证书。" +"启用后,由该对等体创建的客户端或服务器将使用[PacketPeerDTLS],而不是原始UDP套" +"接字与远程对等体进行通信。通信使用DTLS加密,代价是更高的资源占用和可能更大的" +"数据包。\n" +"[b]注意:[/b] 当创建DTLS服务器时,确保用[method set_dtls_key]和[method " +"set_dtls_certificate]设置密钥/证书对。对于DTLS客户端,查看[member " +"dtls_verify]选项,用[method set_dtls_certificate]配置相应的证书。" #: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:145 -#, fuzzy msgid "" "No compression. This uses the most bandwidth, but has the upside of " "requiring the fewest CPU resources. This option may also be used to make " "network debugging using tools like Wireshark easier." -msgstr "不压缩。这将使用最多的带宽,但有一个好处,那就是需要最少的CPU资源。" +msgstr "" +"无压缩。这使用最多的带宽,但具有占用最少 CPU 资源的好处。这个选项可以用于" +"Wireshark等工具使用,更容易进行网络调试。" #: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:148 msgid "" @@ -42697,7 +43018,6 @@ msgstr "" "比,该选项使用的CPU资源更少,但使用的带宽更多。" #: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:154 -#, fuzzy msgid "" "[url=https://www.zlib.net/]Zlib[/url] compression. This option uses less " "bandwidth compared to [constant COMPRESS_FASTLZ], at the expense of using " @@ -42705,8 +43025,9 @@ msgid "" "packets smaller than 4 KB. Therefore, it's recommended to use other " "compression algorithms in most cases." msgstr "" -"[url = https://www.zlib.net/] Zlib压缩[/ url]。与[constant COMPRESS_FASTLZ]相" -"比,这个选项以使用更多CPU资源为代价,换取更少的带宽占用。" +"[url=https://www.zlib.net/]Zlib[/url]压缩。与 [constant COMPRESS_FASTLZ] 相" +"比,这个选项使用较少的带宽,但代价是使用更多的 CPU 资源。请注意,这种算法对小" +"于4KB的数据包不是很有效。因此,建议在大多数情况下使用其他压缩算法。" #: modules/enet/doc_classes/NetworkedMultiplayerENet.xml:157 msgid "[url=https://facebook.github.io/zstd/]Zstandard[/url] compression." @@ -42890,22 +43211,18 @@ msgstr "" "素。" #: doc/classes/NinePatchRect.xml:30 -#, fuzzy msgid "" "The stretch mode to use for horizontal stretching/tiling. See [enum " "NinePatchRect.AxisStretchMode] for possible values." msgstr "" -"控制如何水平拉伸或平铺样式框的纹理。有关可能的值,请参阅 [enum " -"AxisStretchMode]。" +"水平拉伸/平铺时使用的拉伸模式。参阅[enum NinePatchRect.AxisStretchMode]。" #: doc/classes/NinePatchRect.xml:33 -#, fuzzy msgid "" "The stretch mode to use for vertical stretching/tiling. See [enum " "NinePatchRect.AxisStretchMode] for possible values." msgstr "" -"控制如何水平拉伸或平铺样式框的纹理。有关可能的值,请参阅 [enum " -"AxisStretchMode]。" +"用于垂直拉伸/平铺的拉伸模式。参阅[enum NinePatchRect.AxisStretchMode]。" #: doc/classes/NinePatchRect.xml:36 msgid "" @@ -42923,34 +43240,31 @@ msgstr "" "单独设置所有4个边距值来创建具有非统一边框的面板。" #: doc/classes/NinePatchRect.xml:43 -#, fuzzy msgid "" "The width of the 9-slice's left column. A margin of 16 means the 9-slice's " "left corners and side will have a width of 16 pixels. You can set all 4 " "margin values individually to create panels with non-uniform borders." msgstr "" -"9-slice的底层行的高度。边距为16意味着9片的底角和侧面将有16像素的高度。你可以" -"单独设置所有4个边距值来创建具有非统一边框的面板。" +"9-切片的左列宽度。边距为16意味着9切片的左角和侧面将有16像素的宽度。你可以单独" +"设置所有4个边距值,来创建有非统一边框的面板。" #: doc/classes/NinePatchRect.xml:46 -#, fuzzy msgid "" "The width of the 9-slice's right column. A margin of 16 means the 9-slice's " "right corners and side will have a width of 16 pixels. You can set all 4 " "margin values individually to create panels with non-uniform borders." msgstr "" -"9-slice的底层行的高度。边距为16意味着9片的底角和侧面将有16像素的高度。你可以" -"单独设置所有4个边距值来创建具有非统一边框的面板。" +"9-切片的右列宽度。边距为16意味着9切片的右角和侧面将有16像素的宽度。你可以单独" +"设置所有4个边距值,以创建有非统一边框的面板。" #: doc/classes/NinePatchRect.xml:49 -#, fuzzy msgid "" "The height of the 9-slice's top row. A margin of 16 means the 9-slice's top " "corners and side will have a height of 16 pixels. You can set all 4 margin " "values individually to create panels with non-uniform borders." msgstr "" -"9-slice的底层行的高度。边距为16意味着9片的底角和侧面将有16像素的高度。你可以" -"单独设置所有4个边距值来创建具有非统一边框的面板。" +"9切片的顶行的高度。边距为16意味着9切片的顶角和侧面将有16像素的高度。你可以单" +"独设置所有4个边距值,来创建有非统一边框的面板。" #: doc/classes/NinePatchRect.xml:52 msgid "" @@ -42972,11 +43286,10 @@ msgid "Emitted when the node's texture changes." msgstr "当节点的纹理发生变化时触发。" #: doc/classes/NinePatchRect.xml:67 -#, fuzzy msgid "" "Stretches the center texture across the NinePatchRect. This may cause the " "texture to be distorted." -msgstr "沿直线拉伸纹理。导入禁用[b]重复[/b]的纹理以获得最佳效果。" +msgstr "将中间纹理拉伸到9切片矩形。这可能会导致纹理失真。" #: doc/classes/NinePatchRect.xml:70 msgid "" @@ -43071,53 +43384,54 @@ msgid "" "(make sure node names are the same on all peers). Also, take a look at the " "high-level networking tutorial and corresponding demos." msgstr "" -"节点是Godot的构建模块。它们可以被指定为另一个节点的子节点,从而形成树状排列。" -"一个给定的节点可以包含任意数量的节点作为子节点,要求所有的兄弟姐妹,即该节点" -"的直接子节点,应该有唯一的名字。\n" -"一个节点树被称为[i]场景[/i]。场景可以被保存到磁盘上,然后被实例化到其他场景" -"中。这使得Godot项目的架构和数据模型具有非常高的灵活性。\n" -"[b]Scene tree:[/b] [SceneTree]包含活动的节点树。当一个节点被添加到场景树中" -"时,它将收到[constant NOTIFICATION_ENTER_TREE]通知,并触发其[method " -"_enter_tree]回调。子节点总是在其父节点[i]之后[/i]被添加,即父节点的[method " -"_enter_tree]回调将在其子节点的之前被触发。\n" -"一旦所有的节点被添加到场景树中,它们就会收到[constant NOTIFICATION_READY]通" -"知,其各自的[method _ready]回调被触发。对于节点组,[method _ready]回调是按相" -"反的顺序调用的,从子节点开始,向上移动到父节点。\n" -"这意味着,当把一个节点添加到场景树中时,将使用下面的顺序进行回调。父节点的" -"[method _enter_tree],子节点的[method _enter_tree],子节点的[method _ready]," -"最后是父节点的[method _ready],即对整个场景树进行递归。\n" -"[b]Processing:[/b] 节点可以重写 \"处理\" 状态,以便它们在每一帧上收到回调,要" -"求它们进行处理,即做一些事情。普通处理尽可能快地发生,回调[method _process]," -"用[method set_process]切换,取决于帧速率,所以处理时间[i]delta[/i](单位:" -"秒)作为参数传递。物理处理每秒发生固定次数(默认为60),回调[method " -"_physics_process],用[method set_physics_process]切换,对物理引擎相关的代码很" -"有用。\n" -"节点也可以处理输入事件。当出现时,程序收到的每个输入而调用[method _input]函" -"数。在许多情况下,这可能是多余的,除非用于简单的项目,而[method " -"_unhandled_input]函数可能是首选;当输入事件没有被其他节点(通常是GUI[Control]" -"节点)处理时,它被调用,确保节点只接收为它准备的事件。\n" -"为了跟踪场景的层次结构,特别在将场景实例化到其他场景时,可以用[member owner]" -"属性为节点设置一个 \"所有者\"。这可以跟踪谁实例化了什么。这在编写编辑器和工具" -"时非常有用。\n" -"当一个节点被[method Object.free]或[method queue_free]释放时,它也将释放它的所" -"有子节点。\n" -"[b]Groups:[/b] 节点可以被添加到很多的组中,以方便管理,你可以创建比如\"敌人" -"\" 或 \"可收集物\" 这样的组,这取决于你的游戏。参阅[method add_to_group], " -"[method is_in_group] 和 [method remove_from_group]。然后你可以检索这些组中的" -"所有节点,对它们进行迭代,甚至通过[SceneTree]中的方法调用组内方法。\n" -"[b]Networking with nodes:[/b] 在连接到服务器(或制作服务器,参阅" -"[NetworkedMultiplayerENet])之后,可以使用内置的RPC(远程过程调用)系统在网络" -"上进行通信。通过调用[method rpc]的方法名,它将在本地和所有连接的对等体中被调" -"用(对等体=客户端和接受连接的服务器)。为了识别哪个节点收到RPC调用,Godot将使" -"用它的[NodePath](确保所有对等体上的节点名称相同)。另外,请参阅高级网络教程" -"和相应的演示。" +"节点是 Godot 的构建模块。它们可以被指定为另一个节点的子节点,从而形成树状排" +"列。一个给定的节点可以包含任意数量的节点作为子节点,要求所有的兄弟节点(即该" +"节点的直接子节点)的名字唯一。\n" +"节点树被称为[i]场景[/i]。场景可以被保存到磁盘上,然后被实例化到其他场景中。这" +"使得 Godot 项目的架构和数据模型具有非常高的灵活性。\n" +"[b]场景树:[/b] [SceneTree] 包含活动的节点树。当一个节点被添加到场景树中时," +"它将收到 [constant NOTIFICATION_ENTER_TREE] 通知,并触发其 [method " +"_enter_tree] 回调。子节点总是在其父节点[i]之后[/i]被添加,即父节点的 [method " +"_enter_tree] 回调将在其子节点的之前被触发。\n" +"一旦所有的节点被添加到场景树中,它们就会收到 [constant NOTIFICATION_READY] 通" +"知,其各自的 [method _ready] 回调被触发。对于一组节点,[method _ready] 回调是" +"按相反的顺序调用的,从子节点开始,向上移动到父节点。\n" +"这意味着,当把一个节点添加到场景树中时,将使用下面的顺序进行回调:父节点的 " +"[method _enter_tree]、子节点的 [method _enter_tree]、子节点的 [method " +"_ready],最后是父节点的 [method _ready](对整个场景树进行递归)。\n" +"[b]处理:[/b] 节点可以覆盖“处理”状态,以便它们在每一帧上都收到回调,要求它们" +"进行处理(做一些事情)。普通处理(回调 [method _process],可以使用 [method " +"set_process] 开关)会尽可能快地发生,并且取决于帧率,所以处理时间 [i]delta[/" +"i](单位为秒)会作为参数传入。物理处理(回调 [method _physics_process],可以" +"使用 [method set_physics_process] 开关)每秒发生固定次数(默认为 60),对物理" +"引擎相关的代码很有用。\n" +"节点也可以处理输入事件。存在 [method _input] 函数时,程序每收到一次输入都会去" +"调用它。在许多情况下,这么做是大材小用了(除非是用于简单的项目),用 [method " +"_unhandled_input] 函数可能更合适;当输入事件没有被其他节点(通常是 GUI " +"[Control] 节点)处理时,才会调用这个函数,可以确保节点只接收到它该收到的事" +"件。\n" +"为了记录场景的层次结构(尤其是在将场景实例化到其他场景时)可以用 [member " +"owner] 属性为节点设置一个“所有者”。它记录的是谁实例化了什么。这在编写编辑器和" +"工具时非常有用。\n" +"最后,当一个节点被 [method Object.free] 或 [method queue_free] 释放时,它也将" +"释放它的所有子节点。\n" +"[b]分组:[/b] 节点可以被添加到很多的组中,以方便管理,你可以根据自己游戏的需" +"要来创建类似“敌人”或“收集品”这样的组。参阅 [method add_to_group]、[method " +"is_in_group] 和 [method remove_from_group]。加入组后,你可以检索这些组中的所" +"有节点,对它们进行迭代,甚至通过 [SceneTree] 中的方法调用组内方法。\n" +"[b]节点的网络编程:[/b] 在连接到服务器(或制作服务器,参阅 " +"[NetworkedMultiplayerENet])之后,可以使用内置的 RPC(远程过程调用)系统在网" +"络上进行通信。在调用 [method rpc] 时传入方法名,将在本地和所有已连接的对等体" +"中调用对应的方法(对等体=客户端和接受连接的服务器)。为了识别哪个节点收到 " +"RPC 调用,Godot 将使用它的 [NodePath](请确保所有对等体上的节点名称相同)。另" +"外,请参阅高级网络教程和相应的演示。" #: doc/classes/Node.xml:20 msgid "" "https://docs.godotengine.org/en/3.4/getting_started/step_by_step/" "scenes_and_nodes.html" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/" +"https://docs.godotengine.org/zh_CN/stable/getting_started/step_by_step/" "scenes_and_nodes.html" #: doc/classes/Node.xml:21 @@ -43171,7 +43485,6 @@ msgstr "" "当需要更新这个节点的警告时,调用[method update_configuration_warning]。" #: doc/classes/Node.xml:50 -#, fuzzy msgid "" "Called when there is an input event. The input event propagates up through " "the node tree until a node consumes it.\n" @@ -43186,18 +43499,17 @@ msgid "" "[b]Note:[/b] This method is only called if the node is present in the scene " "tree (i.e. if it's not orphan)." msgstr "" -"当有一个输入事件时被调用。输入事件通过节点树向上传播,直到一个节点处理它。\n" -"只有当输入处理被启用时才会被调用,如果这个方法被覆盖,它就会自动完成,并且可" -"以用[method set_process_input]来切换。\n" -"要消耗输入事件并阻止它进一步传播到其他节点,可以调用[method Viewport." +"当有输入事件时被调用。输入事件通过节点树向上传播,直到一个节点消耗它。\n" +"只有当输入处理被启用时才会被调用,如果这个方法被重写,它就会自动完成,可以用" +"[method set_process_input]来切换。\n" +"要消耗输入事件并阻止它进一步传播到其他节点,可以调用[method SceneTree." "set_input_as_handled]。\n" "对于游戏输入,[method _unhandled_input]和[method _unhandled_key_input]通常更" "适合,因为它们允许GUI首先拦截事件。\n" "[b]注意:[/b] 这个方法只有在节点存在于场景树中时才会被调用(也就是说,如果它" -"不是孤儿)。" +"非\"孤儿\")。" #: doc/classes/Node.xml:61 -#, fuzzy msgid "" "Called during the physics processing step of the main loop. Physics " "processing means that the frame rate is synced to the physics, i.e. the " @@ -43211,17 +43523,16 @@ msgid "" "[b]Note:[/b] This method is only called if the node is present in the scene " "tree (i.e. if it's not orphan)." msgstr "" -"在主循环的物理处理步骤中被调用。物理处理意味着帧率与物理同步,也就是说," -"[code]delta[/code]变量应该是恒定的。\n" -"只有在物理处理被启用的情况下才会被调用,如果这个方法被重写,它就会自动完成," -"并且可以通过[method set_physics_process]来切换。\n" -"对应于[方法Object._notification]中的[constant NOTIFICATION_PHYSICS_PROCESS]通" -"知。\n" +"在主循环的物理处理步骤中被调用。物理处理意味着帧率与物理同步,即[code]delta[/" +"code]变量应该是常量。[code]delta[/code]的单位是秒。\n" +"只有当物理处理被启用时才会被调用,如果这个方法被重写,就会自动完成,可以用" +"[method set_physics_process]来切换。\n" +"对应于[method Object._notification]中的[constant " +"NOTIFICATION_PHYSICS_PROCESS]通知。\n" "[b]注意:[/b] 这个方法只有在节点存在于场景树中时才会被调用(也就是说,如果它" -"不是孤儿)。" +"不是\"孤儿\")。" #: doc/classes/Node.xml:71 -#, fuzzy msgid "" "Called during the processing step of the main loop. Processing happens at " "every frame and as fast as possible, so the [code]delta[/code] time since " @@ -43234,13 +43545,13 @@ msgid "" "tree (i.e. if it's not orphan)." msgstr "" "在主循环的处理步骤中被调用。处理发生在每一帧,并且尽可能快,所以从上一帧开始" -"的[code]delta[/code]时间不是恒定的。\n" -"只有在处理过程被启用的情况下才会被调用,如果这个方法被覆盖,就会自动完成,可" -"以用[method set_process]来切换。\n" -"对应于 [method Object._notification] 中的 [constant NOTIFICATION_PROCESS] 通" +"的[code]delta[/code]时间不是恒定的。[code]delta[/code]的单位是秒。\n" +"只有在启用处理的情况下才会被调用,如果这个方法被重写,会自动进行处理,可以用" +"[method set_process]来切换。\n" +"对应于[method Object._notification]中的[constant NOTIFICATION_PROCESS]通" "知。\n" -"[b]注意:[/b] 只有当节点存在于场景树中时才会调用这个方法(即如果它不是孤" -"儿)。" +"[b]注意:[/b] 这个方法只有在节点存在于场景树中时才会被调用(也就是说,如果它" +"不是\"孤儿\")。" #: doc/classes/Node.xml:80 msgid "" @@ -43263,14 +43574,13 @@ msgstr "" "在之后收到就绪通知。\n" "对应于[method Object._notification]中的[constant NOTIFICATION_READY]通知。也" "请参阅变量的[code]onready[/code]关键字。\n" -"通常用于初始化。对于更早的初始化,可以使用[方法Object._init]。也请参阅[方法" -"_enter_tree]。\n" +"通常用于初始化。对于更早的初始化,可以使用[method Object._init]。也请参阅" +"[method _enter_tree]。\n" "[b]注意:[/b] [method _ready] 对于每个节点只能调用一次。在从场景树中删除一个" "节点并再次添加后,[code]_ready[/code]将不会被第二次调用。这可以通过请求再次调" -"用[方法 request_ready]来绕过,它可以在再次添加节点之前的任何地方调用。" +"用[method request_ready]来绕过,它可以在再次添加节点之前的任何地方调用。" #: doc/classes/Node.xml:90 -#, fuzzy msgid "" "Called when an [InputEvent] hasn't been consumed by [method _input] or any " "GUI. The input event propagates up through the node tree until a node " @@ -43286,19 +43596,18 @@ msgid "" "[b]Note:[/b] This method is only called if the node is present in the scene " "tree (i.e. if it's not orphan)." msgstr "" -"当[InputEvent]还没有被[method _input]或任何GUI处理时调用。输入事件通过节点树" -"向上传播,直到一个节点处理它。\n" -"只有在启用了未处理的输入处理时才会被调用,如果这个方法被重载,它就会自动完" +"当[InputEvent]还未被[method _input]或任何GUI消耗时调用。输入事件通过节点树向" +"上传播,直到一个节点消耗它。\n" +"只有在启用了未处理的输入处理时才会被调用,如果这个方法被重写,它就会自动完" "成,并且可以用[method set_process_unhandled_input]来切换。\n" -"要消耗输入事件并阻止它进一步传播到其他节点,可以调用[method Viewport." +"要消耗输入事件并阻止它进一步传播到其他节点,可以调用[method SceneTree." "set_input_as_handled]。\n" "对于游戏输入,这和[method _unhandled_key_input]通常比[method _input]更适合," "因为它们允许GUI首先拦截事件。\n" -"[b]注意:[/b]这个方法只有在节点存在于场景树中时才会被调用(也就是说,如果它不" -"是孤儿)。" +"[b]注意:[/b] 这个方法只有在节点存在于场景树中时才会被调用(也就是说,如果它" +"不是\"孤儿\")。" #: doc/classes/Node.xml:101 -#, fuzzy msgid "" "Called when an [InputEventKey] hasn't been consumed by [method _input] or " "any GUI. The input event propagates up through the node tree until a node " @@ -43314,19 +43623,18 @@ msgid "" "[b]Note:[/b] This method is only called if the node is present in the scene " "tree (i.e. if it's not orphan)." msgstr "" -"当[InputEventKey]没有被[method _input]或任何GUI处理时被调用。输入事件通过节点" -"树向上传播,直到一个节点处理它。\n" -"只有在启用了未处理的键输入处理时才会被调用,如果这个方法被覆盖,它就会自动完" +"当[InputEventKey]没有被[method _input]或任何GUI消耗时被调用。输入事件通过节点" +"树向上传播,直到一个节点消耗它。\n" +"只有在启用了未处理的键输入处理时才会被调用,如果这个方法被重写,它就会自动完" "成,并且可以用[method set_process_unhandled_key_input]来切换。\n" -"要消耗输入事件并阻止它进一步传播到其他节点,可以调用[method Viewport." +"要消耗输入事件并阻止它进一步传播到其他节点,可以调用[method SceneTree." "set_input_as_handled]。\n" "对于游戏输入,这和[method _unhandled_input]通常比[method _input]更适合,因为" "它们允许GUI首先拦截事件。\n" "[b]注意:[/b] 这个方法只有在节点存在于场景树中时才会被调用(也就是说,如果它" -"不是孤儿)。" +"不是\"孤儿\")。" #: doc/classes/Node.xml:113 -#, fuzzy msgid "" "Adds a child node. Nodes can have any number of children, but every child " "must have a unique name. Child nodes are automatically deleted when the " @@ -43352,30 +43660,26 @@ msgid "" "owner], the newly added [Node] will not be visible in the scene tree, though " "it will be visible in the 2D/3D view." msgstr "" -"添加一个子节点。节点可以有任何数量的子节点,但是每个子节点必须有一个唯一的名" -"字。当父节点被删除时,子节点会被自动删除,所以整个场景可以通过删除其最上面的" -"节点而被删除。\n" +"添加子节点。节点可以有任意数量的子节点,但是每个子节点必须有唯一的名字。当父" +"节点被删除时,子节点会被自动删除,所以整个场景可以通过删除其最上面的节点而被" +"删除。\n" "如果[code]legible_unique_name[/code]是[code]true[/code],子节点将有一个基于被" -"实例化的节点的名称而不是其类型的人类可读名称。\n" -"[b]注意:[/b] 如果子节点已经有一个父节点,这个函数将失败。首先使用[method " -"remove_child]将节点从其当前的父节点中移除。比如说:\n" +"实例化的节点的名称,而不是其类型可读的名称。\n" +"[b]注意:[/b] 如果子节点已经有父节点,该函数将失败。首先使用[method " +"remove_child]将节点从其当前的父节点中移除。如:\n" "[codeblock]\n" "if child_node.get_parent():\n" " child_node.get_parent().remove_child(child_node)\n" "add_child(child_node)\n" "[/codeblock]\n" -"如果你需要将子节点添加到子节点列表中某个特定节点的下面,请使用[method " -"add_sibling]而不是这个方法。\n" -"[b]注意:[/b] 如果你希望一个子节点被持久化到[PackedScene]中,除了调用[method " -"add_child]外,你必须设置[member owner]。这通常适用于[url=https://godot." -"readthedocs.io/zh_CN/latest/tutorials/misc/running_code_in_the_editor.html]工" -"具脚本[/url]和[url=https://godot.readthedocs.io/zh_CN/latest/tutorials/" -"plugins/editor/index.html]编辑器插件[/url]。如果调用[method add_child]而不设" -"置[member owner],新添加的[Node]在场景树中是不可见的,尽管它在2D/3D视图中是可" -"见的。" +"[b]注意:[/b] 如果你想让一个子节点被持久化到[PackedScene]中,除了调用[method " +"add_child]外,还必须设置[member owner]。这通常与[url=https://godot." +"readthedocs.io/en/3.2/tutorials/misc/running_code_in_the_editor.html]工具脚本" +"[/url]和[url=https://godot.readthedocs.io/en/latest/tutorials/plugins/editor/" +"index.html]编辑器插件[/url]有关。如果调用[method add_child]而不设置[member " +"owner],新添加的[Node]在场景树中是不可见的,尽管它在2D/3D视图中可见。" #: doc/classes/Node.xml:130 -#, fuzzy msgid "" "Adds [code]child_node[/code] as a child. The child is placed below the given " "[code]node[/code] in the list of children.\n" @@ -43383,15 +43687,12 @@ msgid "" "will have a human-readable name based on the name of the node being " "instanced instead of its type." msgstr "" -"在当前的节点父节点上添加一个[code]兄弟姐妹[/code]节点,与该节点处于同一级别," -"就在其下方。\n" +"添加[code]child_node[/code]作为子节点。该子节点在子节点列表中被置于给定的" +"[code]node[/code]之下。\n" "如果[code]legible_unique_name[/code]是[code]true[/code],子节点将有一个基于被" -"实例化的节点名称而不是其类型的人类可读名称。\n" -"如果你不需要子节点被添加到子节点列表中的特定节点下面,请使用[method " -"add_child]代替这个方法。" +"实例化的节点名称,而不是其类型可读的名称。" #: doc/classes/Node.xml:139 -#, fuzzy msgid "" "Adds the node to a group. Groups are helpers to name and organize a subset " "of nodes, for example \"enemies\" or \"collectables\". A node can be in any " @@ -43404,12 +43705,14 @@ msgid "" "guaranteed. The order of node groups should not be relied upon as it can " "vary across project runs." msgstr "" -"将节点添加到一个组中。组是命名和组织节点子集的辅助工具,例如 \"敌人 \"或 \"可" -"收集物\"。一个节点可以在任何数量的组中。节点可以在任何时候被分配到一个组中," -"但是在它们进入场景树(见[method is_inside_tree])之前不会被添加。参阅描述中的" -"注释,以及[SceneTree]中的组方法。\n" +"将节点添加到一个组中。组是命名和组织节点子集的辅助工具,例如 \"敌人\" 或 \"可" +"收集物\"等。一个节点可以在任何数量的组中。节点可以在任何时候被分配到一个组" +"中,但是在它们进入场景树之前不会被添加,参阅[method is_inside_tree]。参阅描述" +"中的注释,以及[SceneTree]中的分组方法。\n" "当把节点打包到[PackedScene]并保存到文件时,会使用[code]persistent[/code]选" -"项。非持久化的组不会被存储。" +"项。非持久化的组不会被存储。\n" +"[b]注意:[/b]由于性能原因,节点组的顺序[i]不[/i]能保证。因些节点组的顺序不应" +"该被依赖,因为它可能在不同的项目运行中变化。" #: doc/classes/Node.xml:147 msgid "" @@ -43438,7 +43741,6 @@ msgstr "" "本。" #: doc/classes/Node.xml:165 -#, fuzzy msgid "" "Finds a descendant of this node whose name matches [code]mask[/code] as in " "[method String.match] (i.e. case-sensitive, but [code]\"*\"[/code] matches " @@ -43454,15 +43756,17 @@ msgid "" "consider using [method get_node] instead. To avoid using [method find_node] " "too often, consider caching the node reference into a variable." msgstr "" -"找到这个节点的子节点,其名称与[method String.match]中的[code]mask[/code]相匹" -"配(即区分大小写,但[code]\"*\"[/code]匹配零或多个字符,[code]\"?\"[/code]匹" -"配除[code]\".\"[/code]以外的任何单个字符)。\n" -"[b]注意:[/b]它不与全路径匹配,只与单个节点名称匹配。\n" +"查找该节点的子级,其名称与[method String.match]中的[code]mask[/code]相匹配," +"区分大小写,以[code]\"*\"[/code]匹配零或多个字符,[code]\"?\"[/code]匹配除" +"[code]\".\"[/code]以外的任何单字符。\n" +"[b]注意:[/b]它不是全路径匹配,只与单个节点名称匹配。\n" "如果[code]owner[/code]是[code]true[/code],这个方法只找到所有者是这个节点的节" -"点。这对通过脚本实例化的场景特别重要,因为这些场景没有所有者。" +"点。这对通过脚本实例化的场景特别重要,因为这些场景没有所有者。\n" +"[b]注意:[/b]由于这个方法会遍历节点的所有子级,它是获得另一个节点的引用的最慢" +"的方法。只要有可能,请考虑使用[method get_node]代替。为了避免过于频繁地使用" +"[method find_node],可以考虑将节点引用缓存到一个变量中。" #: doc/classes/Node.xml:175 -#, fuzzy msgid "" "Finds the first parent of the current node whose name matches [code]mask[/" "code] as in [method String.match] (i.e. case-sensitive, but [code]\"*\"[/" @@ -43475,12 +43779,13 @@ msgid "" "[method get_node] instead. To avoid using [method find_parent] too often, " "consider caching the node reference into a variable." msgstr "" -"找到这个节点的子节点,其名称与[method String.match]中的[code]mask[/code]相匹" -"配(即区分大小写,但[code]\"*\"[/code]匹配零或多个字符,[code]\"?\"[/code]匹" -"配除[code]\".\"[/code]以外的任何单个字符)。\n" -"[b]注意:[/b]它不与全路径匹配,只与单个节点名称匹配。\n" -"如果[code]owner[/code]是[code]true[/code],这个方法只找到所有者是这个节点的节" -"点。这对通过脚本实例化的场景特别重要,因为这些场景没有所有者。" +"查找当前节点的第一个父节点,其名称与[method String.match]中的[code]mask[/" +"code]相匹配,区分大小写,其[code]\"*\"[/code]匹配零或多个字符,[code]\"?\"[/" +"code]匹配任何单个字符,除了[code]\".\"[/code]。\n" +"[b]注意:[/b]它不是全路径匹配,只与单个节点名称匹配。\n" +"[b]注意:[/b]由于这个方法在场景树中向上行走,在大型的、深度嵌套的场景树中可能" +"会很慢。只要有可能,请考虑使用[method get_node]代替。为了避免过于频繁地使用" +"[method find_parent],考虑将节点引用缓存到一个变量中。" #: doc/classes/Node.xml:184 msgid "" @@ -43488,8 +43793,8 @@ msgid "" "method is often used for iterating all children of a node.\n" "To access a child node via its name, use [method get_node]." msgstr "" -"按索引返回一个子节点(见[方法get_child_count])。这个方法经常被用于遍历一个节" -"点的所有子节点。\n" +"按索引返回一个子节点(见[method get_child_count])。这个方法经常被用于遍历一" +"个节点的所有子节点。\n" "要通过一个子节点的名字访问它,请使用[method get_node]。" #: doc/classes/Node.xml:191 @@ -43645,16 +43950,15 @@ msgstr "" "场景中,否则函数将失败。" #: doc/classes/Node.xml:288 -#, fuzzy msgid "" "Returns the time elapsed (in seconds) since the last physics-bound frame " "(see [method _physics_process]). This is always a constant value in physics " "processing unless the frames per second is changed via [member Engine." "iterations_per_second]." msgstr "" -"返回从最后一个物理绑定帧开始经过的时间(参阅[method _physics_process])。这在物" -"理处理中总是一个常量,除非每秒帧数通过[member Engine.iterations_per_second]被" -"改变。" +"返回自上次物理绑定帧以来所经过的时间(单位为秒),参阅 [method " +"_physics_process]。在物理处理中,这始终是一个常数,除非通过 [member Engine." +"iterations_per_second] 改变每秒的帧数。" #: doc/classes/Node.xml:294 msgid "" @@ -43700,7 +44004,7 @@ msgid "" msgstr "" "如果[NodePath]指向一个有效的节点,并且它的子名称指向一个有效的资源,例如" "[code]Area2D/CollisionShape2D:shape[/code],则返回[code]true[/code]。具有非" -"[资源]类型的属性(例如节点或基本数学类型)不被认为是资源。" +"[Resource]类型的属性(例如节点或基本数学类型)不被认为是资源。" #: doc/classes/Node.xml:339 msgid "" @@ -43781,16 +44085,16 @@ msgid "" "Returns [code]true[/code] if the node is processing unhandled input (see " "[method set_process_unhandled_input])." msgstr "" -"如果节点正在处理未被处理的输入(参阅[方法set_process_unhandled_input]),则返回" -"[code]true[/code]。" +"如果节点正在处理未被处理的输入(参阅[method set_process_unhandled_input]),则" +"返回[code]true[/code]。" #: doc/classes/Node.xml:413 msgid "" "Returns [code]true[/code] if the node is processing unhandled key input (see " "[method set_process_unhandled_key_input])." msgstr "" -"如果节点正在处理未被处理的键输入(参阅[方法set_process_unhandled_key_input])," -"则返回[code]true[/code]。" +"如果节点正在处理未被处理的键输入(参阅[method " +"set_process_unhandled_key_input]),则返回[code]true[/code]。" #: doc/classes/Node.xml:421 msgid "" @@ -43836,7 +44140,6 @@ msgstr "" "[/codeblock]" #: doc/classes/Node.xml:448 -#, fuzzy msgid "" "Similar to [method print_tree], this prints the tree to stdout. This version " "displays a more graphical representation similar to what is displayed in the " @@ -43851,15 +44154,15 @@ msgid "" " ┖╴Camera2D\n" "[/codeblock]" msgstr "" -"类似于[method print_tree],它将树打印到标准输出。这个版本显示了一个更图形化的" -"表示,类似于在场景检查器中显示的。它对检查较大的树很有用。\n" -"[b]示例输出:[/b]\n" +"类似于[method print_tree],它将树打印到标准输出。这个版本显示更多的图形,类似" +"于在场景检查器中显示的内容。它对于检查较大的树很有用。\n" +"[b]输出示例:[/b]\n" "[codeblock]\n" " ┖╴TheGame\n" " ┠╴Menu\n" " ┃ ┠╴Label\n" " ┃ ┖╴Camera2D\n" -" ┖-SplashScreen\n" +" ┖╴SplashScreen\n" " ┖╴Camera2D\n" "[/codeblock]" @@ -43886,7 +44189,6 @@ msgstr "" "子节点。" #: doc/classes/Node.xml:479 -#, fuzzy msgid "" "Queues a node for deletion at the end of the current frame. When deleted, " "all of its child nodes will be deleted as well. This method ensures it's " @@ -43900,11 +44202,13 @@ msgid "" "or access its properties." msgstr "" "在当前帧结束时排队删除一个节点。当删除时,其所有的子节点也将被删除。这个方法" -"确保删除节点是安全的,与[method Object.free]相反。使用 [method Object." -"is_queued_for_deletion] 来检查一个节点是否会在帧结束时被删除。" +"确保删除节点是安全的,与[method Object.free]相反。使用[method Object." +"is_queued_for_deletion]来检查一个节点是否会在帧末被删除。\n" +"[b]重要:[/b] 如果你有变量指向节点,一旦节点被释放,它将[i]不会[/i] 被分配到" +"[code]null[/code]。相反,它将指向一个[i]先前被释放的实例[/i],你应该在尝试调" +"用其方法或访问其属性之前用[method @GDScript.is_instance_valid]来验证它。" #: doc/classes/Node.xml:486 -#, fuzzy msgid "" "Moves this node to the bottom of parent node's children hierarchy. This is " "often useful in GUIs ([Control] nodes), because their order of drawing " @@ -43914,9 +44218,9 @@ msgid "" "siblings." msgstr "" "将此节点移到父节点的子节点层次的底部。这在GUI([Control]节点)中通常很有用," -"因为它们的绘制顺序取决于它们在树中的顺序,也就是说,它们在节点列表中越靠前," -"它们就被绘制得越高。使用[code]raise[/code]后,一个控件将被绘制在它的兄弟姐妹" -"之上。" +"因为它们的绘制顺序取决于它们在树中的顺序。最上面的节点首先被绘制出来,然后在" +"层次结构中最上面的节点下面的所有同级被依次绘制在它的上面。使用[code]raise[/" +"code]后,一个控件将被绘制在其同级的上面。" #: doc/classes/Node.xml:492 msgid "" @@ -44114,14 +44418,13 @@ msgid "" "if [method _physics_process] is overridden. Any calls to this before [method " "_ready] will be ignored." msgstr "" -"启用或禁用物理学(即固定帧率)处理。当一个节点被处理时,它将以一个固定的(通" -"常是60FPS,见[member Engine.iterations_per_second]来更改其值)时间间隔收到一" -"个[常量NOTIFICATION_PHYSICS_PROCESS](如果存在,[method _physics_process]回调" -"将被调用)。如果[method _physics_process]被重写,则自动启用。在[method " -"_ready]之前对它的任何调用都将被忽略。" +"启用或禁用物理处理(即固定帧率)。当一个节点被处理时,它将以一个固定的(通常" +"是60FPS,参阅[member Engine.iterations_per_second]来更改该值)时间间隔收到一" +"个[constant NOTIFICATION_PHYSICS_PROCESS](如果存在,[method " +"_physics_process]回调将被调用)。如果[method _physics_process]被重写,则自动" +"启用。在[method _ready]之前对它的任何调用都将被忽略。" #: doc/classes/Node.xml:631 -#, fuzzy msgid "" "Enables or disables internal physics for this node. Internal physics " "processing happens in isolation from the normal [method _physics_process] " @@ -44134,11 +44437,13 @@ msgid "" "behavior. Script access to this internal logic is provided for specific " "advanced uses, but is unsafe and not supported." msgstr "" -"启用或禁用物理帧(即固定帧率)处理。当一个节点被处理时,它将以一个固定的(通" -"常是60FPS,见[member Engine.iterations_per_second]来改变它的值)时间间隔收到" -"一个[constant NOTIFICATION_PHYSICS_PROCESS](如果存在,[method " -"_physics_process]回调将被调用)。如果[method _physics_process]被重写,则自动" -"启用。在[method _ready]之前对它的任何调用都将被忽略。" +"启用或禁用该节点的内部物理。内部物理处理与正常的[method _physics_process]调用" +"隔离进行,并且由某些节点内部使用,以确保正常工作,即使节点暂停或物理处理因脚" +"本而禁用([method set_physics_process])。仅适用于用于操纵内置节点行为的高级" +"用途。\n" +"[b]警告:[/b] 内置节点依靠内部处理来实现自己的逻辑,所以从你的代码中改变这个值" +"可能会导致意外的行为。为特定的高级用途提供了对此内部逻辑的脚本访问,但不安全" +"且不支持。" #: doc/classes/Node.xml:639 msgid "" @@ -44163,7 +44468,6 @@ msgstr "" "写,则自动启用。任何在[method _ready]之前对它的调用都将被忽略。" #: doc/classes/Node.xml:653 -#, fuzzy msgid "" "Enables or disabled internal processing for this node. Internal processing " "happens in isolation from the normal [method _process] calls and is used by " @@ -44175,10 +44479,12 @@ msgid "" "behavior. Script access to this internal logic is provided for specific " "advanced uses, but is unsafe and not supported." msgstr "" -"启用或禁用该节点的内部处理。内部处理发生在与正常的[method _process]调用隔离的" -"情况下,并被一些节点内部使用,以保证正常运行。即使节点被暂停或process函数被脚" -"本禁用([method set_process]),其内部处理仍会进行。只对高级用途有用,可以操" -"纵内置节点的行为。" +"启用或禁用此节点的内部处理。内部处理与正常的 [method _process] 调用隔离进行," +"并且由某些节点内部使用,以确保正常工作,即使节点已暂停或处理因脚本而禁用" +"([method set_process])。仅适用于操纵内置节点行为的高级用途。\n" +"[b]警告:[/b] 内置节点依赖于内部处理来实现自己的逻辑,因此更改代码中的这个值" +"可能会导致意外行为。为特定的高级用途提供了对此内部逻辑的脚本访问,但不安全且" +"不支持。" #: doc/classes/Node.xml:661 msgid "" @@ -44188,8 +44494,8 @@ msgid "" "is overridden. Any calls to this before [method _ready] will be ignored." msgstr "" "启用未处理的输入处理。这对GUI控件来说是不需要的! 它使节点能够接收所有以前没有" -"处理的输入(通常是由[控制]处理的)。如果[method _unhandled_input]被重载,则自" -"动启用。在[method _ready]之前对它的任何调用都将被忽略。" +"处理的输入(通常是由[Control]处理的)。如果[method _unhandled_input]被重载," +"则自动启用。在[method _ready]之前对它的任何调用都将被忽略。" #: doc/classes/Node.xml:668 msgid "" @@ -44242,7 +44548,6 @@ msgstr "" "默认的SceneTree(如果在树内)。" #: doc/classes/Node.xml:697 -#, fuzzy msgid "" "The name of the node. This name is unique among the siblings (other child " "nodes from the same parent). When set to an existing name, the node will be " @@ -44251,8 +44556,11 @@ msgid "" "character, which is reserved for unique names when using [method add_child]. " "When setting the name manually, any [code]@[/code] will be removed." msgstr "" -"节点的名称。这个名字在兄弟姐妹中是唯一的(来自同一个父节点的其他子节点)。当" -"设置为现有名称时,节点将被自动重命名。" +"节点的名称。此名称在兄弟节点(来自同一父节点的其他子节点)中是唯一的。当设置" +"为现有名称时,节点将自动重命名。\n" +"[b]注意:[/b] 自动生成的名称可能包含 [code]@[/code] 字符,在使用 [method " +"add_child] 时保留该字符用于唯一名称。手动设置名称时,将删除任何 [code]@[/" +"code]。" #: doc/classes/Node.xml:701 msgid "" @@ -44335,14 +44643,14 @@ msgid "" "Notification received every frame when the physics process flag is set (see " "[method set_physics_process])." msgstr "" -"当 physics process flag 被设置时,每一帧都会收到该通知(见[方法" +"当 physics process flag 被设置时,每一帧都会收到该通知(见[method " "set_physics_process])。" #: doc/classes/Node.xml:760 msgid "" "Notification received every frame when the process flag is set (see [method " "set_process])." -msgstr "当 process flag 被设置时,每一帧都收到通知(见[方法set_process])。" +msgstr "当 process flag 被设置时,每一帧都收到通知(见[method set_process])。" #: doc/classes/Node.xml:763 msgid "" @@ -44379,7 +44687,7 @@ msgid "" "Notification received every frame when the internal process flag is set (see " "[method set_process_internal])." msgstr "" -"当 internal process flag 被设置时,每一帧都收到通知(见[方法" +"当 internal process flag 被设置时,每一帧都收到通知(见[method " "set_process_internal])。" #: doc/classes/Node.xml:785 @@ -44387,7 +44695,7 @@ msgid "" "Notification received every frame when the internal physics process flag is " "set (see [method set_physics_process_internal])." msgstr "" -"当 internal physics process flag 被设置时,每一帧都会收到通知(见[方法" +"当 internal physics process flag 被设置时,每一帧都会收到通知(见[method " "set_physics_process_internal])。" #: doc/classes/Node.xml:788 @@ -44434,7 +44742,7 @@ msgid "" "instance changes too." msgstr "" "使用实例化进行复制。\n" -"实例与原件保持联系,因此当原件发生变化时,实例也会发生变化。" +"实例与原件保持链接,因此当原件发生变化时,实例也会发生变化。" #: doc/classes/Node2D.xml:4 msgid "" @@ -44588,20 +44896,21 @@ msgstr "" "点的Z索引是2,它的父节点的有效Z索引是3,那么这个节点的有效Z索引将是2+3=5。" #: doc/classes/Node2D.xml:130 -#, fuzzy msgid "" "Z index. Controls the order in which the nodes render. A node with a higher " "Z index will display in front of others. Must be between [constant " "VisualServer.CANVAS_ITEM_Z_MIN] and [constant VisualServer." "CANVAS_ITEM_Z_MAX] (inclusive)." -msgstr "Z索引。控制节点的渲染顺序。具有较高Z指数的节点将显示在其他节点的前面。" +msgstr "" +"Z 索引。控制节点呈现的顺序。具有较高 Z 索引的节点将显示在其他节点之前。必须介" +"于 [constant VisualServer.CANVAS_ITEM_Z_MIN] 和 [constant VisualServer." +"CANVAS_ITEM_Z_MAX] 之间(含)。" #: doc/classes/NodePath.xml:4 msgid "Pre-parsed scene tree path." msgstr "预先解析的场景树路径。" #: doc/classes/NodePath.xml:7 -#, fuzzy msgid "" "A pre-parsed relative or absolute path in a scene tree, for use with [method " "Node.get_node] and similar functions. It can reference a node, a resource " @@ -44635,29 +44944,32 @@ msgid "" "when moving, renaming or deleting a node in the scene tree, but they are " "never updated at runtime." msgstr "" -"场景树中预先解析的相对或绝对路径,用于[method Node.get_node]和类似函数。它可" -"以引用一个节点,一个节点中的资源,或者一个节点或资源的属性。例如," -"[code]\"Path2D/PathFollow2D/Sprite2D:texture:size\"[/code]将引用名为" -"[code]\"Sprite2D\"[/code]的节点上的[code]texture[/code]资源的[code]size[/" -"code]属性,该节点是路径中其他指定节点的子节点。\n" -"你通常只需将一个字符串传递给[method Node.get_node],它就会被自动转换,但你偶" -"尔也会想用[NodePath]或字面语法[code]@\"path\"[/code]提前解析一个路径。导出" -"[NodePath]变量会在编辑器的属性面板中给你一个节点选择部件,这通常很有用。\n" -"一个[NodePath]是由一个斜线分隔的节点名称列表(像一个文件系统路径)和一个可选" -"的冒号分隔的 \"子名称 \"列表组成的,它可以是资源或属性。\n" -"NodePaths的一些例子包括如下。\n" -"[codeblock]\n" -"# No leading slash means it is relative to the current node.\n" -"@\"A\" # Immediate child A\n" -"@\"A/B\" # A's child B\n" -"@\".\" # The current node.\n" -"@\"..\" # The parent node.\n" -"@\"../C\" # A sibling node C.\n" -"# A leading slash means it is absolute from the SceneTree.\n" -"@\"/root\" # Equivalent to get_tree().get_root().\n" -"@\"/root/Main\" # If your main scene's root node were named \"Main\".\n" -"@\"/root/MyAutoload\" # If you have an autoloaded node or scene.\n" -"[/codeblock]" +"场景树中预先解析的相对或绝对路径,用于 [method Node.get_node] 和类似函数。它" +"可以引用节点、节点内的资源或节点或资源的属性。例如,[code]\"Path2D/" +"PathFollow2D/Sprite:texture:size\"[/code] 将引用名为 [code]\"Sprite\"[/code] " +"节点上的纹理资源 [code]texture[/code] 的尺寸 [code]size[/code] 属性,该节点是" +"路径中其他命名节点的一个子节点。\n" +"您通常只需将一个字符串传递给 [method Node.get_node] 并且它会自动转换,但您可" +"能偶尔希望使用 [NodePath] 或文字语法 [code]@\"path\"[/code] 提前解析路径。导" +"出 [NodePath] 变量将在编辑器的属性面板中为您提供一个节点选择小部件,这通常很" +"有用。\n" +"[NodePath] 由斜线分隔的节点名称列表(如文件系统路径)和可选的冒号分隔的“子名" +"称”列表组成,这些“子名称”可以是资源或属性。\n" +"NodePath 的一些示例包括:\n" +"[codeblock]\n" +"# 没有前导斜杠表示它是相对于当前节点的。\n" +"@\"A\" # 直接获得子节点 A\n" +"@\"A/B\" # A 的子节点 B\n" +"@\".\" # 当前节点。\n" +"@\"..\" # 父节点。\n" +"@\"../C\" # 兄弟节点 C.\n" +"# 前导斜杠表示它是来自场景树的绝对路径。\n" +"@\"/root\" # 等价于 get_tree().get_root()。\n" +"@\"/root/Main\" # 如果你的主场景的根节点被命名为“Main”。\n" +"@\"/root/MyAutoload\" # 如果你有一个自动加载的节点或场景。\n" +"[/codeblock]\n" +"[b]注意:[/b] 在编辑器中,[NodePath] 属性在场景树中移动、重命名或删除节点时会" +"自动更新,但它们不会在运行时更新。" #: doc/classes/NodePath.xml:26 doc/classes/PackedScene.xml:41 #: doc/classes/Panel.xml:10 doc/classes/PanelContainer.xml:10 @@ -44666,7 +44978,6 @@ msgid "https://godotengine.org/asset-library/asset/520" msgstr "https://godotengine.org/asset-library/asset/520" #: doc/classes/NodePath.xml:33 -#, fuzzy msgid "" "Creates a NodePath from a string, e.g. [code]\"Path2D/PathFollow2D/Sprite:" "texture:size\"[/code]. A path is absolute if it starts with a slash. " @@ -44693,26 +45004,25 @@ msgid "" "\"/root/Level/Path2D\"\n" "[/codeblock]" msgstr "" -"从字符串创建一个NodePath,例如[code]\"Path2D/PathFollow2D/Sprite2D:texture:" -"size\"[/code]。以斜杠开头的路径是绝对路径。绝对路径仅在全局场景树中有效,在单" -"个场景中无效。在相对路径中,[code]\".\"[/code]和[code]\"..\"[/code]表示当前节" -"点及其父节点。\n" -"可选地包含在目标节点路径之后的“子名称”可以指向资源或属性,也可以嵌套。\n" -"有效的NodePaths示例(假设这些节点存在并且有引用的资源或属性):\n" -"[codeblock]\n" -"# Points to the Sprite2D node\n" -"\"Path2D/PathFollow2D/Sprite2D\"\n" -"# Points to the Sprite2D node and its \"texture\" resource.\n" -"# get_node() would retrieve \"Sprite2D\", while get_node_and_resource()\n" -"# would retrieve both the Sprite2D node and the \"texture\" resource.\n" -"\"Path2D/PathFollow2D/Sprite2D:texture\"\n" -"# Points to the Sprite2D node and its \"position\" property.\n" -"\"Path2D/PathFollow2D/Sprite2D:position\"\n" -"# Points to the Sprite2D node and the \"x\" component of its \"position\" " -"property.\n" -"\"Path2D/PathFollow2D/Sprite2D:position:x\"\n" -"# Absolute path (from \"root\")\n" -"\"/root/Level/Path2D\"\n" +"从字符串创建一个 NodePath,例如 [code]\"Path2D/PathFollow2D/Sprite:texture:" +"size\"[/code]。如果路径以斜杠开头,则该路径是绝对路径。绝对路径仅在全局场景树" +"中有效,在单个场景中无效。在相对路径中,[code]\".\"[/code] 和 [code]\"..\"[/" +"code] 表示当前节点及其父节点。\n" +"目标节点路径后加上可选的“子名称”可以指向资源或属性,也可以嵌套。\n" +"有效 NodePath 的示例(假设这些节点存在并具有引用的资源或属性):\n" +"[codeblock]\n" +"# 指向精灵节点\n" +"“Path2D/PathFollow2D/Sprite”\n" +"# 指向 Sprite 节点及其“纹理”资源。\n" +"# get_node() 将检索“Sprite”,而 get_node_and_resource()\n" +"# 将同时检索 Sprite 节点和“纹理”资源。\n" +"“Path2D/PathFollow2D/Sprite:texture”\n" +"# 指向 Sprite 节点及其“位置”属性。\n" +"\"Path2D/PathFollow2D/Sprite:position\"\n" +"# 指向 Sprite 节点及其“position”属性的“x”组件。\n" +"\"Path2D/PathFollow2D/Sprite:position:x\"\n" +"# 绝对路径(来自“root”)\n" +"“/root/Level/Path2D”\n" "[/codeblock]" #: doc/classes/NodePath.xml:55 @@ -44743,7 +45053,6 @@ msgstr "" "[/codeblock]" #: doc/classes/NodePath.xml:68 -#, fuzzy msgid "" "Returns all subnames concatenated with a colon character ([code]:[/code]) as " "separator, i.e. the right side of the first colon in a node path.\n" @@ -44752,15 +45061,14 @@ msgid "" "print(nodepath.get_concatenated_subnames()) # texture:load_path\n" "[/codeblock]" msgstr "" -"返回所有用冒号([code]:[/code])作为分隔符连接的子名称,即节点路径中第一个冒号" -"的右侧。\n" +"返回以冒号字符 ([code]:[/code]) 作为分隔符连接的所有子名称,即节点路径中第一" +"个冒号的右侧。\n" "[codeblock]\n" -"var nodepath = NodePath(\"Path2D/PathFollow2D/Sprite2D:texture:load_path\")\n" -"print(nodepath.get_concatenated_subnames()) # texture:load_path\n" +"var nodepath = NodePath(\"Path2D/PathFollow2D/Sprite:texture:load_path\")\n" +"print(nodepath.get_concatenated_subnames()) #texture:load_path\n" "[/codeblock]" #: doc/classes/NodePath.xml:79 -#, fuzzy msgid "" "Gets the node name indicated by [code]idx[/code] (0 to [method " "get_name_count]).\n" @@ -44771,27 +45079,25 @@ msgid "" "print(node_path.get_name(2)) # Sprite\n" "[/codeblock]" msgstr "" -"获取由[code]idx[/code]表示的节点名称(0到[method get_name_count])。\n" +"获取由 [code]idx[/code](0 到 [method get_name_count])指示的节点名称。\n" "[codeblock]\n" -"var node_path = NodePath(\"Path2D/PathFollow2D/Sprite2D\")\n" +"var node_path = NodePath(\"Path2D/PathFollow2D/Sprite\")\n" "print(node_path.get_name(0)) # Path2D\n" -"print(node_path.get_name(1)) # PathFollow2D\n" -"print(node_path.get_name(2)) # Sprite\n" +"print(node_path.get_name(1)) #PathFollow2D\n" +"print(node_path.get_name(2)) #Sprite\n" "[/codeblock]" #: doc/classes/NodePath.xml:91 -#, fuzzy msgid "" "Gets the number of node names which make up the path. Subnames (see [method " "get_subname_count]) are not included.\n" "For example, [code]\"Path2D/PathFollow2D/Sprite\"[/code] has 3 names." msgstr "" -"获取构成路径的节点名称的数量。子名称(见[方法get_subname_count])不包括在" -"内。\n" -"例如,[code]\"Path2D/PathFollow2D/Sprite2D\"[/code]包含三个名称。" +"获取组成路径的节点名称的数量。不包括子名称(请参阅 [method " +"get_subname_count])。\n" +"例如,[code]\"Path2D/PathFollow2D/Sprite\"[/code] 有 3 个名称。" #: doc/classes/NodePath.xml:99 -#, fuzzy msgid "" "Gets the resource or property name indicated by [code]idx[/code] (0 to " "[method get_subname_count]).\n" @@ -44801,17 +45107,15 @@ msgid "" "print(node_path.get_subname(1)) # load_path\n" "[/codeblock]" msgstr "" -"获取由[code]idx[/code](0到[method get_subname_count])指示的资源或属性名" +"获取由 [code]idx[/code](0 到 [method get_subname_count])指示的资源或属性名" "称。\n" "[codeblock]\n" -"var node_path = NodePath(\"Path2D/PathFollow2D/Sprite2D:texture:load_path" -"\")\n" +"var node_path = NodePath(\"Path2D/PathFollow2D/Sprite:texture:load_path\")\n" "print(node_path.get_subname(0)) # texture\n" "print(node_path.get_subname(1)) # load_path\n" "[/codeblock]" #: doc/classes/NodePath.xml:110 -#, fuzzy msgid "" "Gets the number of resource or property names (\"subnames\") in the path. " "Each subname is listed after a colon character ([code]:[/code]) in the node " @@ -44819,10 +45123,10 @@ msgid "" "For example, [code]\"Path2D/PathFollow2D/Sprite:texture:load_path\"[/code] " "has 2 subnames." msgstr "" -"获取路径中的资源或属性名称(\"子名称\")的数量。每个子名称都列在节点路径中的" -"冒号字符([code]:[/code])之后。\n" -"例如,[code]\"Path2D/PathFollow2D/Sprite2D:texture:load_path\"[/code]包含两个" -"子名称。" +"获取路径中资源或属性名称(“子名称”)的数量。每个子名称都列在节点路径中的冒号" +"字符 ([code]:[/code]) 之后。\n" +"例如,[code]\"Path2D/PathFollow2D/Sprite:texture:load_path\"[/code] 有 2 个子" +"名称。" #: doc/classes/NodePath.xml:117 msgid "" @@ -44846,7 +45150,6 @@ msgid "[OpenSimplexNoise] filled texture." msgstr "[OpenSimplexNoise]填充纹理。" #: modules/opensimplex/doc_classes/NoiseTexture.xml:7 -#, fuzzy msgid "" "Uses an [OpenSimplexNoise] to fill the texture data. You can specify the " "texture size but keep in mind that larger textures will take longer to " @@ -44862,12 +45165,12 @@ msgid "" "var image = texture.get_data()\n" "[/codeblock]" msgstr "" -"使用一个[OpenSimplexNoise]来填充纹理数据。你可以指定纹理的大小,但请记住,更" -"大的纹理将需要更长的时间来生成,而且无缝噪声只适用于方形大小的纹理。\n" -"NoiseTexture也可以生成法线图纹理。\n" -"该类在内部使用[Thread]来生成纹理数据,所以如果生成过程尚未完成,[method " -"Texture2D.get_data]可能会返回[code]null[/code]。在这种情况下,你需要在访问数" -"据之前等待纹理的生成。\n" +"使用 [OpenSimplexNoise] 填充纹理数据。您可以指定纹理大小,但请记住,较大的纹" +"理将需要更长的时间来生成,并且无缝噪声仅适用于方形大小的纹理。\n" +"NoiseTexture 还可以生成法线贴图纹理。\n" +"该类内部使用线程 [Thread]s 来生成纹理数据,因此如果生成过程尚未完成,[method " +"Texture.get_data]可能会返回空 [code]null[/code]。在这种情况下,您需要在访问数" +"据之前等待纹理生成:\n" "[codeblock]\n" "var texture = preload(\"res://noise.tres\")\n" "yield(texture, \"changed\")\n" @@ -44924,12 +45227,10 @@ msgid "Width of the generated texture." msgstr "生成的纹理的宽度。" #: doc/classes/Object.xml:4 -#, fuzzy msgid "Base class for all non-built-in types." msgstr "所有非内置类型的基类。" #: doc/classes/Object.xml:7 -#, fuzzy msgid "" "Every class which is not a built-in type inherits from this class.\n" "You can construct Objects from scripting languages, using [code]Object.new()" @@ -44966,30 +45267,33 @@ msgid "" "code]. This bug only applies to Object itself, not any of its descendents " "like [Reference]." msgstr "" -"每一个不是内置类型的类都会继承自这个类。\n" -"你可以从脚本语言中构造对象,使用GDScript中的[code]Object.new()[/code],C#中," -"使用[code]new Object[/code],或者VisualScript中的 \"Construct Object \"节" -"点。\n" -"对象不管理内存。如果一个类继承于Object,你将不得不手动删除它的实例。为此,可" -"以在你的脚本中调用[method free]方法,或者从C++中删除该实例。\n" -"一些扩展Object的类会增加内存管理。这就是 [Reference] 的情况,它对引用进行计" -"数,并在不再被引用时自动删除自己。[Node],另一个基本类型,当从内存中释放时," -"会删除它的所有子节点。\n" -"对象导出属性,这主要对存储和编辑有用,但在编程中其实并不那么有用。属性在" -"[method _get_property_list]中导出,在[method _get]和[method _set]中处理。然" -"而,脚本语言和C++有更简单的方法来导出它们。\n" -"在GDScript中可以使用[code]in[/code]直接测试属性成员。\n" +"每个不是内置类型的类都继承自这个类。\n" +"您可以从脚本语言构造对象,使用 GDScript 中的 [code]Object.new()[/code]、C# 中" +"的 [code]new Object[/code] 或 VisualScript 中的“构造对象”节点。\n" +"对象不管理内存。如果类继承自 Object,则必须手动删除它的实例。为此,请从您的脚" +"本中调用 [method free] 方法或从 C++ 中删除该实例。\n" +"一些继承 Object 的类添加了内存管理。 [Reference] 就是这种情况,它对引用进行计" +"数,并在不再被引用时自动删除自己。 [Node] 是另一种基本类型,在从内存中释放时" +"删除其所有子节点。\n" +"对象导出属性,这些属性主要用于存储和编辑,但在编程中并不是那么有用。属性在 " +"[method _get_property_list] 中导出并在 [method _get] 和 [method _set] 中处" +"理。然而,脚本语言和 C++ 有更简单的方法来导出它们。\n" +"在GDScript中可以使用 [code]in[/code] 直接测试属性成员。\n" "[codeblock]\n" "var n = Node2D.new()\n" -"print(\"position\" in n) # Prints \"True\".\n" -"print(\"other_property\" in n) # Prints \"False\".\n" +"print(\"position\" in n) # 打印 \"True\"。\n" +"print(\"other_property\" in n) # 打印 \"False\"。\n" "[/codeblock]\n" -"只要键存在,[code]in[/code]操作符就会评估为[code]true[/code],即使值为" +"只要键存在,[code]in[/code] 运算符将评估为 [code]true[/code],即使值为 " "[code]null[/code]。\n" -"对象也会收到通知。通知是一种简单的方式来通知对象关于不同的事件,所以它们可以" -"一起被处理。参阅[method _notification]。\n" -"[b]注意:[/b] 与对[引用]的引用不同,对存储在变量中的对象的引用可以在没有警告" -"的情况下变得无效。因此,建议对数据类使用[引用]而不是[对象]。" +"对象也会收到通知。通知是一种将不同事件通知给对象的简单方法,因此它们可以一起" +"处理。见 [method _notification]。\n" +"[b]注意:[/b] 与对 [Reference] 的引用不同,对存储在变量中的对象的引用可能会在" +"没有警告的情况下变得无效。因此,建议对数据类使用 [Reference] 而不是 " +"[Object]。\n" +"[b]注意:[/b]由于一个错误,你不能使用 [code]Object.new()[/code] 创建一个“普" +"通”对象。请使用 [code]ClassDB.instance(\"Object\")[/code]。这个错误只适用于" +"Object本身,而不是它的任何子类,如[Reference]。" #: doc/classes/Object.xml:24 doc/classes/Reference.xml:13 #: doc/classes/Resource.xml:12 @@ -44997,15 +45301,15 @@ msgid "" "https://docs.godotengine.org/en/3.4/getting_started/workflow/best_practices/" "node_alternatives.html" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/workflow/best_practices/" -"node_alternatives.html" +"https://docs.godotengine.org/zh_CN/stable/getting_started/workflow/" +"best_practices/node_alternatives.html" #: doc/classes/Object.xml:25 msgid "" "https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/" "gdscript_exports.html#advanced-exports" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/" +"https://docs.godotengine.org/zh_CN/stable/getting_started/scripting/gdscript/" "gdscript_exports.html#advanced-exports" #: doc/classes/Object.xml:32 @@ -45154,7 +45458,6 @@ msgstr "" "set_message_translation]和[method tr]。" #: doc/classes/Object.xml:128 -#, fuzzy msgid "" "Connects a [code]signal[/code] to a [code]method[/code] on a [code]target[/" "code] object. Pass optional [code]binds[/code] to the call as an [Array] of " @@ -45187,37 +45490,36 @@ msgid "" "level, weapon_type, damage])\n" "[/codeblock]" msgstr "" -"[b]FIXME:[/b] 语法随着[Callable]的增加而改变,这应该被更新。\n" -"将一个[code]signal[/code]连接到一个[code]target[/code]对象的[code]method[/" -"code]。将可选的[code]binds[/code]作为一个[Array]的参数传递给调用。这些参数将" -"在调用[method emit_signal]时使用的任何参数之后被传递到方法中。使用" -"[code]flags[/code]来设置延迟或一次性连接。参阅[enum ConnectFlags]常量。\n" -"一个[code]signal[/code]只能被连接到一个[code]method[/code]上一次。如果已经连" -"接了,它将抛出一个错误,除非该信号是用[constant CONNECT_REFERENCE_COUNTED]连" -"接的。为了避免这种情况,首先,使用[method is_connected]来检查现有的连接。\n" -"如果[code]target[/code]在游戏的生命周期中被破坏,连接就会丢失。\n" -"下面是示例:\n" +"将信号 [code]signal[/code] 连接到目标 [code]target[/code] 对象上的方法 " +"[code]method[/code]。将可选的绑定 [code]binds[/code] 作为一个 [Array] 的参数" +"传递给调用。这些参数将在调用 [method emit_signal] 中使用的任何参数之后传递给" +"方法。使用 [code]flags[/code] 设置延迟或一次性连接。请参阅 [enum " +"ConnectFlags] 常量。\n" +"一个信号 [code]signal[/code] 与同一方法 [code]method[/code] 只能连接一次。除" +"非之前在连接信号时使用了 [constant CONNECT_REFERENCE_COUNTED],否则在进行重复" +"连接时会抛出错误。为避免这种情况,首先使用 [method is_connected] 检查是否已有" +"连接。\n" +"如果 [code]target[/code] 在游戏生命周期中被销毁,连接将丢失。\n" +"例子:\n" "[codeblock]\n" -"connect(\"pressed\", self, \"_on_Button_pressed\") # BaseButton signal\n" -"connect(\"text_entered\", self, \"_on_LineEdit_text_entered\") # LineEdit " -"signal\n" -"connect(\"hit\", self, \"_on_Player_hit\", [ weapon_type, damage ]) # User-" -"defined signal\n" +"connect(\"pressed\", self, \"_on_Button_pressed\") # BaseButton 信号\n" +"connect(\"text_entered\", self, \"_on_LineEdit_text_entered\") # LineEdit 信" +"号\n" +"connect(\"hit\", self, \"_on_Player_hit\", [ Weapon_type, damage ]) # 用户自" +"定义信号\n" "[/codeblock]\n" -"An example of the relationship between [code]binds[/code] passed to [method " -"connect] and parameters used when calling [method emit_signal]:\n" -"[codeblock]\n" -"connect(\"hit\", self, \"_on_Player_hit\", [ weapon_type, damage ]) # " -"weapon_type and damage are passed last\n" -"emit_signal(\"hit\", \"Dark lord\", 5) # \"Dark lord\" and 5 are passed " -"first\n" -"func _on_Player_hit(hit_by, level, weapon_type, damage):\n" -" print(\"Hit by %s (lvl %d) with weapon %s for %d damage\" % [hit_by, " +"传递给 [method connect] 的 [code]binds[/code] 与调用 [method emit_signal] 时" +"使用的参数的关系示例:\n" +"[codeblock]\n" +"connect(\"hit\", self, \"_on_Player_hit\", [ Weapon_type, damage ]) # 武器类" +"型和伤害最后传递\n" +"emit_signal(\"hit\", \"Dark lord\", 5) # 先传递 \"Dark lord\" 和 5\n" +"func _on_Player_hit(hit_by, level, Weapon_type, damage):\n" +" print(\"被 %s(等级 %d)使用武器 %s 击中,造成 %d 点伤害\" % [hit_by, " "level, weapon_type, damage])\n" "[/codeblock]" #: doc/classes/Object.xml:152 -#, fuzzy msgid "" "Disconnects a [code]signal[/code] from a [code]method[/code] on the given " "[code]target[/code].\n" @@ -45225,10 +45527,10 @@ msgid "" "throw an error. Use [method is_connected] to ensure that the connection " "exists." msgstr "" -"[b]FIXME:[/b] 添加了[Callable]后,语法发生了变化,应该进行更新。\n" -"从给定的[code]target[/code]上的[code]method[/code]断开[code]signal[/code]。\n" -"如果试图断开不存在的连接,该方法将抛出错误。使用[method is_connected]确保连接" -"存在。" +"将 [code] 信号 [/code] 与给定 [code] 目标 [/code] 上的 [code] 方法 [/code] 断" +"开。\n" +"如果您尝试断开不存在的连接,该方法将引发错误。使用 [method is_connected] 确保" +"连接存在。" #: doc/classes/Object.xml:160 msgid "" @@ -45335,9 +45637,8 @@ msgid "Returns the object's metadata entry for the given [code]name[/code]." msgstr "返回给定[code]name[/code]的对象的元数据条目。" #: doc/classes/Object.xml:223 -#, fuzzy msgid "Returns the object's metadata as a [PoolStringArray]." -msgstr "将对象的元数据作为一个[PackedStringArray]返回。" +msgstr "将对象的元数据作为 [PoolStringArray] 返回。" #: doc/classes/Object.xml:229 msgid "Returns the object's methods and their signatures as an [Array]." @@ -45417,14 +45718,12 @@ msgstr "" "false[/code] 。" #: doc/classes/Object.xml:306 -#, fuzzy msgid "" "Returns [code]true[/code] if a connection exists for a given [code]signal[/" "code], [code]target[/code], and [code]method[/code]." msgstr "" -"[b]FIXME:[/b] 语法随着[Callable]的增加而改变,这应该被更新。\n" -"如果给定的[code]signal[/code]、[code]target[/code]和[code]method[/code]存在一" -"个连接,返回[code]true[/code]。" +"如果给定 [code] 信号 [/code]、[code] 目标 [/code] 和 [code] 方法 [/code] 存在" +"连接,则返回 [code]true[/code]。" #: doc/classes/Object.xml:312 msgid "" @@ -45460,10 +45759,9 @@ msgstr "" "任何作用。" #: doc/classes/Object.xml:334 -#, fuzzy msgid "" "Removes a given entry from the object's metadata. See also [method set_meta]." -msgstr "从对象的元数据中删除一个给定的条目。" +msgstr "从对象的元数据中删除给定条目。另见 [method set_meta]。" #: doc/classes/Object.xml:342 msgid "" @@ -45573,8 +45871,8 @@ msgid "" "set_message_translation]." msgstr "" "使用在“项目设置”中配置的翻译目录翻译消息。\n" -"只有在启用消息翻译(默认情况下)时才有效,否则返回不变的[code]消息[/code]。" -"set_message_translation[方法]。" +"仅在启用消息翻译时(默认如此)有效,否则返回未修改的 [code]message[/code]。参" +"阅 [method set_message_translation]。" #: doc/classes/Object.xml:418 msgid "Emitted whenever the object's script is changed." @@ -45615,7 +45913,7 @@ msgstr "" #: doc/classes/Occluder.xml:4 msgid "Allows [OccluderShape]s to be used for occlusion culling." -msgstr "" +msgstr "允许使用[OccluderShape]来进行遮挡剔除。" #: doc/classes/Occluder.xml:7 msgid "" @@ -45640,6 +45938,19 @@ msgid "" "placed in rooms (based on their origin), and can block portals (and thus " "entire rooms) as well as objects from rendering." msgstr "" +"放置在场景中的 [Occluder] 遮挡器将自动剔除被遮挡器隐藏的对象。这可以通过减少" +"绘制的对象数量来提高性能。\n" +"[Occluder] 是完全动态的,您可以随意移动它们。例如,这意味着您可以在移动的宇宙" +"飞船上放置遮挡物,并让它在飞过时遮挡物体。\n" +"您可以在一个场景中放置大量 [Occluder]。由于剔除数百个遮挡物会适得其反,系统将" +"根据屏幕空间指标自动选择这些遮挡物在任何给定帧期间主动使用。较大的遮挡物以及" +"靠近相机的遮挡物受到青睐。请注意,就屏幕空间而言,靠近相机的小遮挡物可能比远" +"处的大遮挡物更好。\n" +"遮挡图元的类型由您添加到 [Occluder] 的 [OccluderShape] 决定。某些 " +"[OccluderShape] 可能允许在单个节点中有多个图元,以提高效率。\n" +"尽管 [Occluder] 在一般用途中工作,但与门户系统结合使用时,它们也会变得更加强" +"大。遮挡物放置在房间中(基于它们的原点),并且可以阻挡门户(以及整个房间)以" +"及渲染对象。" #: doc/classes/OccluderPolygon2D.xml:4 msgid "Defines a 2D polygon for LightOccluder2D." @@ -45691,15 +46002,15 @@ msgstr "按逆时针方向进行剔除。参阅[member cull_mode]。" #: doc/classes/OccluderShape.xml:4 msgid "" "Base class for shapes used for occlusion culling by the [Occluder] node." -msgstr "" +msgstr "用于[Occluder]节点进行遮挡剔除的形状的基类。" #: doc/classes/OccluderShape.xml:7 msgid "[Occluder]s can use any primitive shape derived from [OccluderShape]." -msgstr "" +msgstr "[Occluder] 可以使用从 [OccluderShape] 派生的任何原始形状。" #: doc/classes/OccluderShapeSphere.xml:4 msgid "Spherical occlusion primitive for use with the [Occluder] node." -msgstr "" +msgstr "与 [Occluder] 节点一起使用的球形遮挡基本单元。" #: doc/classes/OccluderShapeSphere.xml:7 msgid "" @@ -45710,16 +46021,18 @@ msgid "" "sphere positions can be set by dragging the handle in the Editor viewport. " "The radius can be set with the smaller handle." msgstr "" +"[OccluderShape] 是 [Occluder] 节点使用的资源,允许几何遮挡剔除。\n" +"这种形状可以包括多个球体。这些可以在编辑器检查器中或通过调用 " +"[code]set_spheres[/code] 来创建和删除。可以通过在编辑器视口中拖动手柄来设置球" +"体位置。可以使用较小的手柄设置半径。" #: doc/classes/OccluderShapeSphere.xml:18 -#, fuzzy msgid "Sets an individual sphere's position." -msgstr "在[member collision_mask]上设置独立像素。" +msgstr "设置单个球体的位置。" #: doc/classes/OccluderShapeSphere.xml:26 -#, fuzzy msgid "Sets an individual sphere's radius." -msgstr "返回图层蒙版上的单个位。" +msgstr "设置单个球体的半径。" #: doc/classes/OccluderShapeSphere.xml:32 msgid "" @@ -45727,6 +46040,8 @@ msgid "" "each sphere is stored in the [code]normal[/code], and the radius is stored " "in the [code]d[/code] value of the plane." msgstr "" +"球体数据可以作为 [Plane] 数组访问。每个球体的位置存储在[code]normal[/code]" +"中,半径存储在平面的[code]d[/code]值中。" #: doc/classes/OmniLight.xml:4 msgid "Omnidirectional light, such as a light bulb or a candle." @@ -45745,6 +46060,13 @@ msgid "" "lights per mesh, you can increase [member ProjectSettings.rendering/limits/" "rendering/max_lights_per_object] at the cost of shader compilation times." msgstr "" +"全向光是一种向所有方向发光的[Light]。光会因距离而衰减,并且可以通过更改其能" +"量、半径和衰减参数来配置这种衰减。\n" +"[b]注意:[/b] 默认情况下,只有 32 个 OmniLight 可以同时影响单个网格 [i] " +"resource [/i](资源)。考虑将关卡拆分为多个网格,以降低超过 32 个灯光影响同一网" +"格资源的可能性。拆分水平网格也将提高视锥体剔除效果,从而提高性能。如果您需要" +"为每个网格使用更多灯光,您可以以着色器编译时间为代价增加 [member " +"ProjectSettings.rendering/limits/rendering/max_lights_per_object]。" #: doc/classes/OmniLight.xml:17 msgid "" @@ -45788,11 +46110,11 @@ msgstr "" #: doc/classes/OmniLight.xml:37 msgid "Use more detail vertically when computing the shadow." -msgstr "" +msgstr "在计算阴影时,垂直方向上使用更多的细节。" #: doc/classes/OmniLight.xml:40 msgid "Use more detail horizontally when computing the shadow." -msgstr "" +msgstr "在计算阴影时,在水平方向上使用更多的细节。" #: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:4 msgid "Noise generator based on Open Simplex." @@ -45845,6 +46167,9 @@ msgid "" "value is used as the coordinates of the top-left corner of the generated " "noise." msgstr "" +"根据当前的噪声参数,生成一个[constant Image.FORMAT_L8]格式的噪声图像,需要指" +"定其[code]width[/code] 和 [code]height[/code]。如果指定了[code]noise_offset[/" +"code],那么偏移值将作为生成的噪声左上角的坐标。" #: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:40 msgid "" @@ -45871,7 +46196,6 @@ msgid "Returns the 4D noise value [code][-1,1][/code] at the given position." msgstr "返回指定位置的4D噪声值[code][-1,1][/code]。" #: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:89 -#, fuzzy msgid "" "Generate a tileable noise image in [constant Image.FORMAT_L8] format, based " "on the current noise parameters. Generated seamless images are always square " @@ -45880,8 +46204,10 @@ msgid "" "noise. This is due to the way noise uses higher dimensions for generating " "seamless noise." msgstr "" -"根据当前的噪声参数,生成一个可平铺的噪声图像。生成的无缝图像总是方形的" -"([code]size[/code] × [code]size[/code])。" +"根据当前的噪声参数,以 [constant Image.FORMAT_L8] 格式生成可平铺噪声图像。生" +"成的无缝图像始终是方形的([code]size[/code]× [code] size [/code])。\n" +"[b]注意:[/b] 与非无缝噪声相比,无缝噪声的对比度较低。。这是由于噪声使用更高" +"维度来生成无缝噪声的方式。" #: modules/opensimplex/doc_classes/OpenSimplexNoise.xml:96 msgid "Difference in period between [member octaves]." @@ -45925,7 +46251,6 @@ msgid "Button control that provides selectable options when pressed." msgstr "按下时提供可选选项的按钮控件。" #: doc/classes/OptionButton.xml:7 -#, fuzzy msgid "" "OptionButton is a type button that provides a selectable list of items when " "pressed. The item selected becomes the \"current\" item and is displayed as " @@ -45933,8 +46258,9 @@ msgid "" "See also [BaseButton] which contains common properties and methods " "associated with this node." msgstr "" -"OptionButton是一个类型按钮,当按下时提供可选择的项目列表。选中的项目将成为“当" -"前”项目,并显示为按钮文本。" +"OptionButton 是一种类型按钮,可在按下时提供可选择的项目列表。所选项目成为“当" +"前”项目并显示为按钮文本。\n" +"另请参阅 [BaseButton],其中包含与此节点关联的通用属性和方法。" #: doc/classes/OptionButton.xml:19 msgid "" @@ -46060,14 +46386,13 @@ msgid "" msgstr "当前选定项的索引,如果没有选定项,则为[code]-1[/code]。" #: doc/classes/OptionButton.xml:177 -#, fuzzy msgid "" "Emitted when the user navigates to an item using the [code]ui_up[/code] or " "[code]ui_down[/code] actions. The index of the item selected is passed as " "argument." msgstr "" -"当用户使用[code]ui_up[/code]或[code]ui_down[/code]操作导航到一个项目时触发。" -"所选项目的索引作为参数传递。" +"当用户使用 [code]ui_up[/code] 或 [code]ui_down[/code] 操作导航到一个项目时发" +"出。所选项目的索引作为参数传递。" #: doc/classes/OptionButton.xml:183 msgid "" @@ -46115,6 +46440,8 @@ msgid "" "normal text color of the button. Disabled, hovered, and pressed states take " "precedence over this color." msgstr "" +"当[OptionButton]获得焦点时使用的文本[Color]。只替换按钮的正常文本颜色。禁用、" +"悬停和按下状态优先于这个颜色。" #: doc/classes/OptionButton.xml:215 msgid "Text [Color] used when the [OptionButton] is being hovered." @@ -46159,11 +46486,11 @@ msgid "" "Displays a modal dialog box using the host OS' facilities. Execution is " "blocked until the dialog is closed." msgstr "" +"使用主机操作系统显示一个模式化的对话框。执行将被阻塞,直到该对话框被关闭。" #: doc/classes/OS.xml:24 -#, fuzzy msgid "Returns [code]true[/code] if the host OS allows drawing." -msgstr "如果字体有边框,返回[code]true[/code]。" +msgstr "如果主机操作系统允许绘制,则返回 [code]true[/code]。" #: doc/classes/OS.xml:30 msgid "" @@ -46172,9 +46499,8 @@ msgid "" msgstr "如果当前主机平台使用多个线程,则返回[code]true[/code]。" #: doc/classes/OS.xml:36 -#, fuzzy msgid "Centers the window on the screen if in windowed mode." -msgstr "设置指定节点的位置。" +msgstr "如果处于窗口模式,则使窗口在屏幕上居中。" #: doc/classes/OS.xml:42 msgid "" @@ -46203,6 +46529,18 @@ msgid "" "the project if it is currently running (since the project is an independent " "child process)." msgstr "" +"将当前线程的执行延迟 [code]msec[/code] 毫秒。 [code]msec[/code] 必须大于或等" +"于 [code]0[/code]。否则, [method delay_msec] 将不执行任何操作并打印错误消" +"息。\n" +"[b]注:[/b] [method delay_msec]是一种[i]阻塞[/i]延迟代码执行的方式。要以非阻" +"塞方式延迟代码执行,请参阅 [method SceneTree.create_timer]。使用 [method " +"SceneTree.create_timer] 生成将延迟位于 [code]yield[/code] 下方的代码的执行," +"而不会影响项目的其余部分(或编辑器,例如 [EditorPlugin] 和 " +"[EditorScript])。\n" +"[b]注意:[/b]当在主线程上调用[method delay_msec]时,它会冻结项目并阻止它重新" +"绘制和注册输入,直到延迟结束。当使用 [method delay_msec] 作为 [EditorPlugin] " +"或 [EditorScript] 的一部分时,它会冻结编辑器但不会冻结当前正在运行的项目(因" +"为项目是一个独立的子进程)。" #: doc/classes/OS.xml:59 msgid "" @@ -46223,6 +46561,18 @@ 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]。否则, [method delay_usec] 将什么也不做,并会打印错误消" +"息。\n" +"[b]注:[/b] [method delay_usec]是一种[i]阻塞[/i]延迟代码执行的方式。要以非阻" +"塞方式延迟代码执行,请参阅 [method SceneTree.create_timer]。使用 [method " +"SceneTree.create_timer] 生成将延迟位于 [code]yield[/code] 下方的代码的执行," +"而不会影响项目的其余部分(或编辑器,例如 [EditorPlugin] 和 " +"[EditorScript])。\n" +"[b]注意:[/b]当在主线程上调用[method delay_usec]时,它会冻结项目并阻止它重绘" +"和注册输入,直到延迟结束。当使用 [method delay_usec] 作为 [EditorPlugin] 或 " +"[EditorScript] 的一部分时,它会冻结编辑器但不会冻结当前正在运行的项目(因为项" +"目是一个独立的子进程)。" #: doc/classes/OS.xml:68 msgid "" @@ -46318,19 +46668,16 @@ msgstr "" "[b]注:[/b]此方法仅在Android, iOS, Linux, macOS和Windows上实现。" #: doc/classes/OS.xml:115 -#, fuzzy msgid "Returns the scancode of the given string (e.g. \"Escape\")." -msgstr "返回给定字符串的键码(例如:“Escape”)。" +msgstr "返回给定字符串的扫描码(例如“Escape”)。" #: doc/classes/OS.xml:121 -#, fuzzy msgid "Returns the total number of available audio drivers." -msgstr "返回[Mesh]中顶点的总数。" +msgstr "返回可用音频驱动程序的总数。" #: doc/classes/OS.xml:128 -#, fuzzy msgid "Returns the audio driver name for the given index." -msgstr "返回给定索引处的顶点。" +msgstr "返回给定索引的音频驱动程序名称。" #: doc/classes/OS.xml:134 msgid "" @@ -46344,9 +46691,15 @@ msgid "" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" +"根据操作系统的标准返回[i]全局[/i]缓存数据目录。在桌面平台上,可以通过在启动项" +"目之前设置 [code]XDG_CACHE_HOME[/code] 环境变量来覆盖此路径。有关更多信息,请" +"参阅文档中的 [url=https://docs.godotengine.org/zh_CN/latest/tutorials/io/" +"data_paths.html]Godot 项目中的文件路径[/url]。另请参阅 [method " +"get_config_dir] 和 [method get_data_dir]。\n" +"不要与 [method get_user_data_dir] 混淆,后者返回 [i] 项目特定的 [/i] 用户数据" +"路径。" #: doc/classes/OS.xml:141 -#, fuzzy msgid "" "Returns the command-line arguments passed to the engine.\n" "Command-line arguments can be written in any form, including both [code]--" @@ -46368,14 +46721,14 @@ msgid "" "[/codeblock]" msgstr "" "返回传递给引擎的命令行参数。\n" -"命令行参数可以以任何形式编写,包括[code]--key value[/code]和[code]--" -"key=value[/code]形式,以便正确解析它们,只要自定义命令行参数不与引擎参数冲" -"突。\n" -"您还可以使用[method get_environment]方法合并环境变量。\n" -"您可以在项目设置中设置[code]editor/main_run_args[/code],以定义在运行项目时由" -"编辑器传递的命令行参数。\n" -"下面是一个关于如何使用[code]--key=value[/code]形式将命令行参数解析为字典的最" -"小示例:\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" @@ -46396,6 +46749,12 @@ msgid "" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" +"根据操作系统的标准,返回[i]全局[/i]用户配置目录。在桌面平台上,这个路径可以在" +"启动项目前通过设置[code]XDG_CONFIG_HOME[/code]环境变量来覆盖。更多信息请参见" +"文档中[url=https://docs.godotengine.org/zh_CN/latest/tutorials/io/data_paths." +"html]Godot项目中的文件路径[/url]。也请参见 [method get_cache_dir] 和 [method " +"get_data_dir]。\n" +"不要与[method get_user_data_dir]混淆,后者返回[i]项目专用[/i]用户数据路径。" #: doc/classes/OS.xml:165 msgid "" @@ -46410,11 +46769,10 @@ msgstr "" "[b]注意:[/b]该方法仅在Linux, macOS和Windows上实现。" #: doc/classes/OS.xml:173 -#, fuzzy msgid "" "Returns the currently used video driver, using one of the values from [enum " "VideoDriver]." -msgstr "返回当前编辑的项目。这仅适用于自定义单元格模式。" +msgstr "返回当前使用的视频驱动程序,使用[enum VideoDriver]中的一个值。" #: doc/classes/OS.xml:179 msgid "" @@ -46428,6 +46786,12 @@ msgid "" "Not to be confused with [method get_user_data_dir], which returns the " "[i]project-specific[/i] user data path." msgstr "" +"根据操作系统的标准,返回[i]全局[/i]用户数据目录。在桌面平台上,这个路径可以在" +"启动项目前通过设置[code]XDG_DATA_HOME[/code]环境变量来覆盖。更多信息请参见文" +"档中[url=https://docs.godotengine.org/zh_CN/latest/tutorials/io/data_paths." +"html]Godot项目中的文件路径[/url]。也请参见 [method get_cache_dir] 和 [method " +"get_config_dir]。\n" +"不要与[method get_user_data_dir]混淆,后者返回[i]项目专用[/i]用户数据路径。" #: doc/classes/OS.xml:187 msgid "" @@ -46462,9 +46826,8 @@ msgstr "" "因为它不能从epoch确定。" #: doc/classes/OS.xml:208 -#, fuzzy msgid "Returns the total amount of dynamic memory used (only works in debug)." -msgstr "返回使用的静态内存的最大数量(仅在调试中有效)。" +msgstr "返回使用的动态内存总量(仅适用于调试)。" #: doc/classes/OS.xml:215 msgid "" @@ -46473,20 +46836,22 @@ msgid "" "[b]Note:[/b] Double-check the casing of [code]variable[/code]. Environment " "variable names are case-sensitive on all platforms except Windows." msgstr "" +"返回环境变量的值。如果环境变量不存在,则返回一个空字符串。\n" +"[b]注意:[/b] 仔细检查 [code]variable[/code] 的大小写。环境变量名称在除 " +"Windows 之外的所有平台上都区分大小写。" #: doc/classes/OS.xml:222 msgid "Returns the path to the current engine executable." msgstr "返回当前引擎可执行文件的路径。" #: doc/classes/OS.xml:228 -#, fuzzy msgid "" "With this function, you can get the list of dangerous permissions that have " "been granted to the Android application.\n" "[b]Note:[/b] This method is implemented on Android." msgstr "" -"通过这个函数,您可以获得已授予Android应用程序的危险权限列表。\n" -"[b]注意:[/b]此方法仅在Android上实现。" +"通过这个函数,你可以获得已经授予Android应用程序的危险权限列表。\n" +"[b]注意:[/b] 这个方法在Android上实现。" #: doc/classes/OS.xml:235 msgid "" @@ -46496,6 +46861,10 @@ msgid "" "notify it of changes to the IME cursor position.\n" "[b]Note:[/b] This method is implemented on macOS." msgstr "" +"返回相对于组合字符串中的字符的 IME 光标位置(字符串的当前编辑部分)。\n" +"[constant MainLoop.NOTIFICATION_OS_IME_UPDATE] 被发送到应用程序以通知它 IME " +"光标位置的变化。\n" +"[b]注:[/b]此方法在macOS上实现。" #: doc/classes/OS.xml:243 msgid "" @@ -46504,9 +46873,12 @@ msgid "" "notify it of changes to the IME composition string.\n" "[b]Note:[/b] This method is implemented on macOS." msgstr "" +"返回 IME 中间组合字符串。\n" +"[constant MainLoop.NOTIFICATION_OS_IME_UPDATE] 被发送到应用程序以通知它对 " +"IME 组合字符串的更改。\n" +"[b]注:[/b]此方法在macOS上实现。" #: doc/classes/OS.xml:251 -#, fuzzy msgid "" "Returns the current latin keyboard variant as a String.\n" "Possible return values are: [code]\"QWERTY\"[/code], [code]\"AZERTY\"[/" @@ -46515,9 +46887,12 @@ msgid "" "[b]Note:[/b] This method is implemented on Linux, macOS and Windows. Returns " "[code]\"QWERTY\"[/code] on unsupported platforms." msgstr "" -"返回主机操作系统的名称。可能的值有: [code]\"Android\"[/code], [code]\"iOS" -"\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], [code]\"Server\"[/" -"code], [code]\"Windows\"[/code], [code]\"UWP\"[/code], [code]\"X11\"[/code]." +"将当前拉丁键盘变体作为字符串返回。\n" +"可能的返回值是: [code] \"QWERTY\"[/code], [code] \"AZERTY\"[/code], " +"[code]\"QZERTY\"[/code],[code]\"DVORAK\"[/code],[code]\"NEO\"[/code]," +"[code]\"COLEMAK\"[/code]或[code]\"错误ERROR\"[/code]。\n" +"[b]注意:[/b] 此方法在 Linux、macOS 和 Windows 上实现。在不受支持的平台上返" +"回 [code] \"QWERTY\"[/code] 。" #: doc/classes/OS.xml:259 msgid "" @@ -46536,6 +46911,19 @@ msgid "" "[code]extra[/code] - optional, semicolon separated list of additional key " "words. Currency, calendar, sort order and numbering system information." msgstr "" +"将主机操作系统区域设置为 [code]language_Script_COUNTRY_VARIANT@extra[/code] " +"形式的字符串。如果您只想要语言代码而不是操作系统中完全指定的语言环境,您可以" +"使用 [method get_locale_language]。\n" +"[code]language[/code] - 2 个或 3 个字母的 [url=https://en.wikipedia.org/wiki/" +"List_of_ISO_639-1_codes]语言代码[/url],小写。\n" +"[code]Script[/code] - 可选,4 个字母 [url=https://en.wikipedia.org/wiki/" +"ISO_15924] 脚本代码 [/url],形式为标题的大小写形式。\n" +"[code]COUNTRY[/code] - 可选,2 个或 3 个字母 [url=https://en.wikipedia.org/" +"wiki/ISO_3166-1]国家代码[/url],大写。\n" +"[code]VARIANT[/code] - 可选,语言变体,地区和排序顺序。 Variant 可以有任意数" +"量的带下划线的关键字。\n" +"[code]extra[/code] - 可选,分号分隔的附加关键字列表。货币、日历、排序顺序和编" +"号系统信息。" #: doc/classes/OS.xml:270 msgid "" @@ -46548,6 +46936,13 @@ msgid "" "about country code or variants. For example, for a French Canadian user with " "[code]fr_CA[/code] locale, this would return [code]fr[/code]." msgstr "" +"将主机操作系统区域设置的 2 或 3 个字母 [url=https://en.wikipedia.org/wiki/" +"List_of_ISO_639-1_codes]语言代码[/url] 作为字符串返回,该字符串应在所有平台上" +"保持一致。这相当于提取 [method get_locale] 字符串的 [code]language[/code] 部" +"分。\n" +"当您不需要有关国家/地区代码或变体的附加信息时,这可用于将完全指定的区域设置字" +"符串缩小为“通用”语言代码。例如,对于使用 [code]fr_CA[/code] 语言环境的加拿大" +"法语用户,这将返回 [code]fr[/code]。" #: doc/classes/OS.xml:277 msgid "" @@ -46571,44 +46966,42 @@ msgstr "" "code], [code]\"Windows\"[/code], [code]\"UWP\"[/code], [code]\"X11\"[/code]." #: doc/classes/OS.xml:291 -#, fuzzy msgid "" "Returns internal structure pointers for use in GDNative plugins.\n" "[b]Note:[/b] This method is implemented on Linux and Windows (other OSs will " "soon be supported)." msgstr "" -"返回键盘布局的数量。\n" -"[b]注意:[/b]本方法在Linux、macOS和Windows上实现。" +"返回内部结构指针,以便在GDNative插件中使用。\n" +"[b]注意:[/b]此方法在Linux和Windows上实现(其他操作系统将很快被支持)。" #: doc/classes/OS.xml:298 -#, fuzzy msgid "" "Returns the amount of battery left in the device as a percentage. Returns " "[code]-1[/code] if power state is unknown.\n" "[b]Note:[/b] This method is implemented on Linux, macOS and Windows." msgstr "" -"返回位于[code]index[/code]位置的键盘布局的本地名称。\n" -"[b]注意:[/b] 本方法可在Linux、macOS和Windows上实现。" +"以百分比形式返回设备中剩余的电池电量。如果电源状态未知,则返回 [code]-1[/" +"code]。\n" +"[b]注意:[/b]该方法在Linux、macOS和Windows上实现。" #: doc/classes/OS.xml:305 -#, fuzzy msgid "" "Returns an estimate of the time left in seconds before the device runs out " "of battery. Returns [code]-1[/code] if power state is unknown.\n" "[b]Note:[/b] This method is implemented on Linux, macOS and Windows." msgstr "" -"返回位于[code]index[/code]位置的键盘布局的本地名称。\n" -"[b]注意:[/b] 本方法可在Linux、macOS和Windows上实现。" +"返回设备耗尽电池前几秒钟内剩余时间的估计值。如果电源状态未知,则返回 " +"[code]-1 [/code]。\n" +"[b]注意:[/b] 此方法在 Linux、macOS 和 Windows 上实现。" #: doc/classes/OS.xml:312 -#, fuzzy msgid "" "Returns the current state of the device regarding battery and power. See " "[enum PowerState] constants.\n" "[b]Note:[/b] This method is implemented on Linux, macOS and Windows." msgstr "" -"返回位于[code]index[/code]位置的键盘布局的本地名称。\n" -"[b]注意:[/b] 本方法可在Linux、macOS和Windows上实现。" +"返回设备关于电池和电源的当前状态。请参阅 [enum PowerState] 常量。\n" +"[b]注意:[/b]该方法在Linux、macOS和Windows上实现。" #: doc/classes/OS.xml:319 msgid "" @@ -46616,40 +47009,38 @@ msgid "" "[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and " "Windows." msgstr "" -"返回项目的进程ID。\n" -"[b]注:[/b]此方法仅在Android, iOS, Linux, macOS和Windows上实现。" +"返回项目的进程 ID。\n" +"[b]注意:[/b]此方法在Android、iOS、Linux、macOS和Windows上实现。" #: doc/classes/OS.xml:326 msgid "Returns the number of threads available on the host machine." -msgstr "返回主机上可用的线程数。" +msgstr "返回宿主机上可用的线程数。" #: doc/classes/OS.xml:332 -#, fuzzy msgid "Returns the window size including decorations like window borders." -msgstr "返回函数入口点节点的ID。" +msgstr "返回窗口大小,包括窗口边框等装饰。" #: doc/classes/OS.xml:339 -#, fuzzy msgid "" "Returns the given scancode as a string (e.g. Return values: [code]\"Escape" "\"[/code], [code]\"Shift+Escape\"[/code]).\n" "See also [member InputEventKey.scancode] and [method InputEventKey." "get_scancode_with_modifiers]." msgstr "" -"以字符串的形式返回给定的键码(例如:返回值:[code]\"Escape\"[/code], " -"[code]\"Shift+Escape\"[/code])。\n" -"参阅[member InputEventKey]。[method InputEventKey." -"get_keycode_with_modifiers]。" +"将给定的扫描码作为字符串返回(例如返回值:[code]\"Escape\"[/code]," +"[code]\"Shift+Escape\"[/code])。\n" +"另请参阅 [member InputEventKey.scancode] 和 [method InputEventKey." +"get_scancode_with_modifiers] 。" #: doc/classes/OS.xml:346 -#, fuzzy msgid "Returns the number of displays attached to the host machine." -msgstr "返回主机上可用的线程数。" +msgstr "返回连接到宿主机的显示器数量。" #: doc/classes/OS.xml:353 +#, fuzzy msgid "" "Returns the dots per inch density of the specified screen. If [code]screen[/" -"code] is [/code]-1[/code] (the default value), the current screen will be " +"code] is [code]-1[/code] (the default value), the current screen will be " "used.\n" "[b]Note:[/b] On macOS, returned value is inaccurate if fractional display " "scaling mode is used.\n" @@ -46666,6 +47057,20 @@ msgid "" "[b]Note:[/b] This method is implemented on Android, Linux, macOS and " "Windows. Returns [code]72[/code] on unsupported platforms." msgstr "" +"返回指定屏幕每英寸密度的点数。如果 [code]screen[/code] 为 [/code]-1[/code]" +"(默认值),将使用当前屏幕。\n" +"[b]注意:[/b] 在macOS上,如果使用分数显示缩放模式,则返回值不准确。\n" +"[b]注:[/b]在Android设备上,实际屏幕密度分为六种广义密度:\n" +"[codeblock]\n" +" ldpi - 120 dpi\n" +" mdpi - 160 dpi\n" +" hdpi - 240 dpi\n" +" xhdpi - 320 dpi\n" +" xxhdpi - 480 dpi\n" +"xxxhdpi - 640 dpi\n" +"[/codeblock]\n" +"[b]注:[/b]此方法在Android、Linux、macOS和Windows上实现。在不受支持的平台上返" +"回 [code]72[/code]。" #: doc/classes/OS.xml:370 msgid "" @@ -46681,33 +47086,40 @@ msgstr "" "[b]注意:[/b]此方法仅在macOS上实现。" #: doc/classes/OS.xml:379 +#, fuzzy msgid "" "Returns the position of the specified screen by index. If [code]screen[/" -"code] is [/code]-1[/code] (the default value), the current screen will be " +"code] is [code]-1[/code] (the default value), the current screen will be " "used." msgstr "" +"按索引返回指定屏幕的位置。如果 [code]screen[/code] 为 [/code]-1[/code](默认" +"值),将使用当前屏幕。" #: doc/classes/OS.xml:386 #, fuzzy msgid "" "Return the scale factor of the specified screen by index. If [code]screen[/" -"code] is [/code]-1[/code] (the default value), the current screen will be " +"code] is [code]-1[/code] (the default value), the current screen will be " "used.\n" "[b]Note:[/b] On macOS returned value is [code]2.0[/code] for hiDPI (Retina) " "screen, and [code]1.0[/code] for all other cases.\n" "[b]Note:[/b] This method is implemented on macOS." msgstr "" -"按索引返回指定屏幕的缩放。\n" -"[b]注:[/b] 在macOS上,hiDPI(Retina)屏幕的返回值为[code]2.0[/code],其他情况" -"为[code]1.0[/code]。\n" -"[b]注:[/b] 此方法在macOS上实现。" +"按索引返回指定屏幕的缩放系数。如果[code]screen[/code]是[/code]-1[/code](默认" +"值),将使用当前屏幕。\n" +"[b]注意:[/b]在macOS上,对于高DPI(Retina)屏幕,返回值是[code]2.0[/code],对" +"于所有其他情况,返回值是[code]1.0[/code]。\n" +"[b]注意:[/b] 此方法在macOS上实现。" #: doc/classes/OS.xml:395 +#, fuzzy msgid "" "Returns the dimensions in pixels of the specified screen. If [code]screen[/" -"code] is [/code]-1[/code] (the default value), the current screen will be " +"code] is [code]-1[/code] (the default value), the current screen will be " "used." msgstr "" +"以指定屏幕的像素返回尺寸。如果 [code]screen[/code] 是[/code]-1[/code](默认" +"值),则将使用当前屏幕。" #: doc/classes/OS.xml:401 msgid "" @@ -46724,7 +47136,6 @@ msgid "Returns the amount of static memory being used by the program in bytes." msgstr "返回程序所使用的静态内存量,以字节为单位。" #: doc/classes/OS.xml:421 -#, fuzzy msgid "" "Returns the actual path to commonly used folders across different platforms. " "Available locations are specified in [enum SystemDir].\n" @@ -46734,18 +47145,18 @@ msgid "" "differentiate between app specific and shared directories. Shared " "directories have additional restrictions on Android." msgstr "" -"返回跨不同平台的常用文件夹的实际路径。可用位置在[enum SystemDir]中指定。\n" -"[b]注:[/b]该方法仅在Android、Linux、macOS和Windows平台上实现。" +"返回不同平台上常用文件夹的实际路径。可用的位置在[enum SystemDir]中指定。\n" +"[b]注意:[/b] 这个方法在Android、Linux、macOS和Windows上实现。\n" +"[b]注意:[/b] 共享存储在Android上实现,并允许区分应用程序特定目录和共享目录。" +"共享目录在Android上有额外的限制。" #: doc/classes/OS.xml:429 -#, fuzzy msgid "Returns the epoch time of the operating system in milliseconds." -msgstr "返回音频流的长度,单位为秒。" +msgstr "以毫秒为单位返回操作系统的纪元时间。" #: doc/classes/OS.xml:435 -#, fuzzy msgid "Returns the epoch time of the operating system in seconds." -msgstr "返回音频流的长度,单位为秒。" +msgstr "以秒为单位返回操作系统的纪元时间。" #: doc/classes/OS.xml:441 msgid "" @@ -46771,6 +47182,8 @@ msgid "" "[b]Note:[/b] Thread IDs are not deterministic and may be reused across " "application restarts." msgstr "" +"返回当前线程的 ID。这可用于日志,以简化多线程应用程序的调试。\n" +"[b]注:[/b] 线程 ID 不是确定的,也许会在应用程序重新启动时被重复使用。" #: doc/classes/OS.xml:463 msgid "" @@ -46803,6 +47216,13 @@ msgid "" "[b]Note:[/b] Returns an empty string on HTML5 and UWP, as this method isn't " "implemented on those platforms yet." msgstr "" +"返回设备所特有的字符串。\n" +"[b]注意:[/b] 如果用户重新安装/升级其操作系统或更改其硬件,此字符串可能会在不" +"通知的情况下更改。这意味着它通常不应用于加密持续数据,因为在意外的 ID 更改变" +"得无法访问之前保存的数据。返回的字符串也可能使用外部程序伪造,因此出于安全目" +"的,不要依赖 [method get_unique_id] 返回的字符串。\n" +"[b]注意:[/b] 返回 HTML5 和 UWP 上的空字符串,因为此方法尚未在这些平台上实" +"施。" #: doc/classes/OS.xml:496 msgid "" @@ -46814,9 +47234,13 @@ msgid "" "calculation instead, since they are guaranteed to be monotonic (i.e. never " "decrease)." msgstr "" +"以秒为单位返回当前的 UNIX 纪元时间戳。\n" +"[b]重要:[/b] 这是用户可以手动设置的系统时钟。 [b]永远不要使用[/b]这种方法进" +"行精确的时间计算,因为它的结果也会受到操作系统的自动调整。 [b] 始终使用 [/b] " +"[method get_ticks_usec] 或 [method get_ticks_msec] 进行精确时间计算,因为它们" +"保证是单调的(即永不减少)。" #: doc/classes/OS.xml:504 -#, fuzzy msgid "" "Gets an epoch time value from a dictionary of time values.\n" "[code]datetime[/code] must be populated with the following keys: [code]year[/" @@ -46829,15 +47253,16 @@ msgid "" "into this function. Daylight Savings Time ([code]dst[/code]), if present, is " "ignored." msgstr "" -"从一个时间值的字典中获取一个纪元时间值。\n" -"[code]datetime[/code]将被以下键来填充: [code]year[/code], [code]month[/" -"code], [code]day[/code], [code]hour[/code], [code]minute[/code], " -"[code]second[/code]。\n" -"你可以将[method get_datetime_from_unix_time]的输出直接传递给这个函数。如果存" -"在夏令时([code]dst[/code]),则会被忽略。" +"从时间值字典中获取纪元时间值。\n" +"[code]datetime[/code] 必须填充以下键:[code]year[/code]、[code]month[/code]、" +"[code]day[/code]、[code]hour[/code]、[code]minute[/code]、[code]second[/" +"code]。\n" +"如果字典为空,则返回 [code]0[/code]。如果某些键被省略,它们默认为 UNIX 纪元时" +"间戳 0(1970-01-01 在 00:00:00 UTC)的等效值。\n" +"你可以将 [method get_datetime_from_unix_time] 的输出直接传递给此函数。夏令时 " +"([code]dst[/code])(如果存在)将被忽略。" #: doc/classes/OS.xml:513 -#, fuzzy msgid "" "Returns the absolute directory path where user data is written ([code]user://" "[/code]).\n" @@ -46857,22 +47282,23 @@ msgid "" "i] (non-project-specific) user data directory." msgstr "" "返回用户数据被写入的绝对目录路径([code]user://[/code])。\n" -"在Linux上,该路径是 [code]~/.local/share/godot/app_userdata/[project_name][/" -"code],如果[code]use_custom_user_dir[/code]被设置,则是[code]~/.local/share/" +"在Linux上,这是[code]~/.local/share/godot/app_userdata/[project_name][/" +"code],如果设置了[code]use_custom_user_dir[/code],则是[code]~/.local/share/" "[custom_name][/code]。\n" -"在macOS上,该路径是 [code]~/Library/Application Support/Godot/app_userdata/" -"[project_name][/code],如果[code]use_custom_user_dir[/code]被设置,则是" -"[code]~/Library/Application Support/[custom_name][/code]。\n" -"在Windows上,该路径是[code]%APPDATA%\\Godot\\app_userdata\\[project_name][/" -"code],如果[code]use_custom_user_dir[/code]被设置,则是[code]%APPDATA%" -"\\[custom_name][/code]。[code]%APPDATA%[/code]扩展为 [code]%USERPROFILE%" +"在macOS上,这是[code]~/Library/Application Support/Godot/app_userdata/" +"[project_name][/code],或者[code]~/Library/Application Support/[custom_name]" +"[/code],如果[code]use_custom_user_dir[/code]被设置。\n" +"在Windows中,如果设置了[code]use_custom_user_dir[/code],则为[code]%APPDATA%" +"\\Godot\\app_userdata\\[project_name][/code],或者[code]%APPDATA%" +"\\[custom_name][/code]。[code]%APPDATA%[/code]扩展到[code]%USERPROFILE%" "\\AppData\\Roaming[/code]。\n" -"如果项目名称是空的,[code]user://[/code]会退回到[code]res://[/code]。" +"如果项目名称是空的,[code]user://[/code]会退回到[code]res://[/code]。\n" +"不要与[method get_data_dir]混淆,后者返回[i]全局[/i]用户数据目录(非项目专" +"用)。" #: doc/classes/OS.xml:524 -#, fuzzy msgid "Returns the number of video drivers supported on the current platform." -msgstr "返回向左偏移的隐藏选项卡的数量。" +msgstr "返回当前平台上支持的视频驱动器的数量。" #: doc/classes/OS.xml:531 msgid "" @@ -46880,6 +47306,9 @@ msgid "" "index. This index is a value from [enum VideoDriver], and you can use " "[method get_current_video_driver] to get the current backend's index." msgstr "" +"返回与给定 [code]driver[/code] 索引匹配的视频驱动程序的名称。此索引是来自 " +"[enum VideoDriver] 的值,您可以使用 [method get_current_video_driver] 获取当" +"前后端的索引。" #: doc/classes/OS.xml:537 msgid "" @@ -46892,7 +47321,7 @@ msgstr "" msgid "" "Returns unobscured area of the window where interactive controls should be " "rendered." -msgstr "" +msgstr "返回应呈现交互式控件的窗口的未遮挡区域。" #: doc/classes/OS.xml:553 msgid "" @@ -46900,32 +47329,35 @@ msgid "" "item to the macOS dock icon menu.\n" "[b]Note:[/b] This method is implemented on macOS." msgstr "" +"将带有文本“标签”的新项目添加到全局菜单。使用“_dock”菜单将项目添加到 macOS 停" +"靠栏图标菜单。\n" +"[b]注:[/b]此方法在macOS上实现。" #: doc/classes/OS.xml:561 -#, fuzzy msgid "" "Add a separator between items. Separators also occupy an index.\n" "[b]Note:[/b] This method is implemented on macOS." -msgstr "添加项之间的分隔符。分隔符也占用索引。" +msgstr "" +"在项目之间添加一个分隔符。分隔符也占用一个索引。\n" +"[b]注意:[/b] 这个方法在macOS上实现。" #: doc/classes/OS.xml:569 -#, fuzzy msgid "" "Clear the global menu, in effect removing all items.\n" "[b]Note:[/b] This method is implemented on macOS." msgstr "" -"返回可用的写字板(译注:或触摸板、数位板,在此处尚未明确)驱动程序的总数。\n" -"[b]注意:[/b]该方法是在Windows上实现的。" +"清除全局菜单,实际上是删除所有项目。\n" +"[b]注意:[/b]这个方法在macOS上实现。" #: doc/classes/OS.xml:578 -#, fuzzy msgid "" "Removes the item at index \"idx\" from the global menu. Note that the " "indexes of items after the removed item are going to be shifted by one.\n" "[b]Note:[/b] This method is implemented on macOS." msgstr "" -"从菜单中移除索引[code]idx[/code]项。\n" -"[b]注:[/b]被移除项后的项的索引将被移位1。" +"将索引为 \"idx\" 的项目从全局菜单中移除。注意,在被删除的项目之后的项目的索引" +"将被移动1位。\n" +"[b]注意:[/b] 这个方法在macOS上实现。" #: doc/classes/OS.xml:586 msgid "" @@ -46934,9 +47366,11 @@ msgid "" "[b]Note:[/b] Double-check the casing of [code]variable[/code]. Environment " "variable names are case-sensitive on all platforms except Windows." msgstr "" +"如果名称为 [code]variable[/code] 的环境变量存在,则返回 [code]true[/code]。\n" +"[b]注意:[/b] 仔细检查 [code]variable[/code] 的大小写。环境变量名称在除 " +"Windows 之外的所有平台上都区分大小写。" #: doc/classes/OS.xml:594 -#, fuzzy msgid "" "Returns [code]true[/code] if the feature for the given feature tag is " "supported in the currently running instance, depending on the platform, " @@ -46946,25 +47380,24 @@ msgid "" "html]Feature Tags[/url] documentation for more details.\n" "[b]Note:[/b] Tag names are case-sensitive." msgstr "" -"如果给定的特征标签的特征在当前运行的实例中被支持,则返回[code]true[/code],具" -"体取决于平台和构建等。可以用来检查你当前是否在运行调试构建,是否在某个平台或" -"架构上,等等。更多细节请参考[url=https://docs.godotengine.org/zh_CN/latest/" -"getting_started/workflow/export/feature_tags.html]功能标签[/url]文档。\n" -"[b]注意:[/b] 标签名称是区分大小写的。" +"如果给定的特征标签的特征在当前运行的实例中得到支持,则返回[code]true[/code]," +"具体取决于平台和构建等。可以用来检查你当前是否在运行一个调试构建,是否在某个" +"平台或架构上,等等。更多细节请参考[url=https://docs.godotengine.org/zh_CN/" +"stable/getting_started/workflow/export/feature_tags.html]功能标签[/url]文" +"档。\n" +"[b]注意:[/b] 标签名称区分大小写。" #: doc/classes/OS.xml:601 -#, fuzzy msgid "" "Returns [code]true[/code] if the device has a touchscreen or emulates one." -msgstr "如果该设备跟踪方向,则返回[code]true[/code]。" +msgstr "如果设备有触摸屏或模拟有触摸屏,则返回[code]true[/code]。" #: doc/classes/OS.xml:607 -#, fuzzy msgid "" "Returns [code]true[/code] if the platform has a virtual keyboard, " "[code]false[/code] otherwise." msgstr "" -"如果脚本域被加载,返回 [code]true[/code] ,否则返回 [code]false[/code] 。" +"如果平台有虚拟键盘,返回[code]true[/code],否则返回[code]false[/code]。" #: doc/classes/OS.xml:613 msgid "Hides the virtual keyboard if it is shown, does nothing otherwise." @@ -46988,18 +47421,18 @@ msgstr "" "[code]OS.has_feature(\"standalone\")[/code]代替。" #: doc/classes/OS.xml:627 -#, 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 "如果该动作有给定的[InputEvent]与之相关,则返回[code]true[/code]。" +msgstr "" +"如果[b]OK[/b]按钮应该显示在左边,[b]Cancel[/b]显示在右边,则返回[code]true[/" +"code]。" #: doc/classes/OS.xml:634 -#, fuzzy msgid "" "Returns [code]true[/code] if the input scancode corresponds to a Unicode " "character." -msgstr "如果输入的键码对应于一个Unicode字符,则返回[code]true[/code]。" +msgstr "如果输入的键码与Unicode字符对应,则返回[code]true[/code]。" #: doc/classes/OS.xml:640 msgid "" @@ -47018,20 +47451,19 @@ msgstr "" "再次启动游戏后,其状态是相同的。与HTML5平台有关,在那里这种持久性可能不可用。" #: doc/classes/OS.xml:652 -#, fuzzy msgid "" "Returns [code]true[/code] if the window should always be on top of other " "windows." -msgstr "如果节点在场景dock中折叠(collapsed),则返回[code]true[/code]。" +msgstr "如果该窗口应总是在其他窗口之上,则返回[code]true[/code]。" #: doc/classes/OS.xml:658 -#, fuzzy msgid "" "Returns [code]true[/code] if the window is currently focused.\n" "[b]Note:[/b] Only implemented on desktop platforms. On other platforms, it " "will always return [code]true[/code]." msgstr "" -"如果addon准备好响应函数调用,返回[code]true[/code],否则返回[code]false[/" +"如果窗口当前获得焦点,则返回[code]true[/code]。\n" +"[b]注意:[/b] 只在桌面平台上实现。在其他平台上,它将总是返回[code]true[/" "code]。" #: doc/classes/OS.xml:665 @@ -47091,31 +47523,28 @@ msgstr "" "[b]注意:[/b] 这个方法在Android、iOS、Linux、macOS和Windows上实现。" #: doc/classes/OS.xml:712 -#, fuzzy msgid "" "Moves the window to the front.\n" "[b]Note:[/b] This method is implemented on Linux, macOS and Windows." msgstr "" -"返回键盘布局的数量。\n" -"[b]注意:[/b]本方法在Linux、macOS和Windows上实现。" +"将窗口移到前面。\n" +"[b]注意:[/b] 这个方法在Linux、macOS和Windows上实现。" #: doc/classes/OS.xml:719 -#, fuzzy msgid "" "Returns [code]true[/code] if native video is playing.\n" "[b]Note:[/b] This method is only implemented on iOS." msgstr "" -"如果视频正在播放,返回[code]true[/code] 。\n" -"[b]注意:[/b] 如果在播放过程中暂停,视频仍被认为在播放。" +"如果本地视频正在播放,返回[code]true[/code]。\n" +"[b]注意:[/b] 这个方法只在iOS上实现。" #: doc/classes/OS.xml:726 -#, fuzzy msgid "" "Pauses native video playback.\n" "[b]Note:[/b] This method is only implemented on iOS." msgstr "" -"设置活动键盘布局。\n" -"[b]注:[/b]此方法可在Linux、macOS和Windows上实现。" +"暂停本地视频播放。\n" +"[b]注意:[/b] 这个方法只在iOS上实现。" #: doc/classes/OS.xml:737 msgid "" @@ -47123,24 +47552,24 @@ msgid "" "audio and subtitle tracks.\n" "[b]Note:[/b] This method is only implemented on iOS." msgstr "" +"以给定的音量、音频和字幕轨道播放来自指定路径的本地视频。\n" +"[b]注意:[/b] 这个方法只在iOS上实现。" #: doc/classes/OS.xml:744 -#, fuzzy msgid "" "Stops native video playback.\n" "[b]Note:[/b] This method is implemented on iOS." msgstr "" -"设置活动键盘布局。\n" -"[b]注:[/b]此方法可在Linux、macOS和Windows上实现。" +"停止本地视频播放。\n" +"[b]注意:[/b] 这个方法在iOS上实现。" #: doc/classes/OS.xml:751 -#, fuzzy msgid "" "Resumes native video playback.\n" "[b]Note:[/b] This method is implemented on iOS." msgstr "" -"设置活动键盘布局。\n" -"[b]注:[/b]此方法可在Linux、macOS和Windows上实现。" +"恢复本地视频播放。\n" +"[b]注意:[/b] 这个方法在iOS上实现。" #: doc/classes/OS.xml:758 msgid "" @@ -47171,14 +47600,13 @@ msgid "Shows all resources currently used by the game." msgstr "显示游戏当前使用的所有资源。" #: doc/classes/OS.xml:792 -#, fuzzy msgid "" "Request the user attention to the window. It'll flash the taskbar button on " "Windows or bounce the dock icon on OSX.\n" "[b]Note:[/b] This method is implemented on Linux, macOS and Windows." msgstr "" -"返回位于[code]index[/code]位置的键盘布局的本地名称。\n" -"[b]注意:[/b] 本方法可在Linux、macOS和Windows上实现。" +"要求用户注意该窗口。它会在Windows上闪烁任务栏按钮,或在OSX上弹出Dock图标。\n" +"[b]注意:[/b] 这个方法在Linux、macOS和Windows上实现。" #: doc/classes/OS.xml:800 msgid "" @@ -47189,16 +47617,15 @@ msgstr "" "[code]RECORD_AUDIO[/code]的权限。" #: doc/classes/OS.xml:806 -#, fuzzy msgid "" "With this function, you can request dangerous permissions since normal " "permissions are automatically granted at install time in Android " "applications.\n" "[b]Note:[/b] This method is implemented on Android." msgstr "" -"有了这个功能,你可以申请危险的权限,因为正常的权限在Android应用程序的安装时就" -"会自动授予。\n" -"[b]注意:[/b] 这个方法在Android上实现。" +"通过这个功能,你可以申请危险的权限,因为在Android应用程序中,正常的权限会在安" +"装时自动授予。\n" +"[b]注意:[/b] 此方法在Android上实现。" #: doc/classes/OS.xml:815 msgid "" @@ -47210,6 +47637,11 @@ msgid "" "[b]Note:[/b] Double-check the casing of [code]variable[/code]. Environment " "variable names are case-sensitive on all platforms except Windows." msgstr "" +"将环境变量[code]variable[/code]的值设置为[code]value[/code]。在运行[method " +"set_environment]后,环境变量将被设置为Godot进程和任何用[method execute]执行的" +"进程。环境变量将[i]不[/i]持续存在于Godot进程终止后运行的进程中。\n" +"[b]注意:[/b] 仔细检查[code]variable[/code]的大小写。除Windows外,环境变量名" +"称在所有平台上都是区分大小写的。" #: doc/classes/OS.xml:823 msgid "" @@ -47218,6 +47650,10 @@ msgid "" "dialog. Image is scaled as needed.\n" "[b]Note:[/b] This method is implemented on HTML5, Linux, macOS and Windows." msgstr "" +"使用图像[Image]资源设置游戏的图标。\n" +"同样的图像用于窗口标题、任务栏/dock和窗口选择对话框。图像会根据需要进行缩" +"放。\n" +"[b]注意:[/b] 这个方法在HTML5、Linux、macOS和Windows上实现。" #: doc/classes/OS.xml:832 msgid "" @@ -47229,15 +47665,21 @@ msgid "" "Completed composition string is committed when input is finished.\n" "[b]Note:[/b] This method is implemented on Linux, macOS and Windows." msgstr "" +"设置是否应启用 IME 输入法模式。\n" +"如果激活,IME输入法编辑器在应用程序之前处理关键事件并创建组合字符串和建议列" +"表。\n" +"应用程序可以通过使用 [method get_ime_selection] 和 [method get_ime_text] 函数" +"来检索组合状态。\n" +"输入完成时提交完成的组合字符串。\n" +"[b]注:[/b]该方法在Linux、macOS和Windows上实现。" #: doc/classes/OS.xml:843 -#, fuzzy msgid "" "Sets position of IME suggestion list popup (in window coordinates).\n" "[b]Note:[/b] This method is implemented on Linux, macOS and Windows." msgstr "" -"关闭系统MIDI驱动程序。\n" -"[b]注意:[/b]该方法只在Linux, macOS和Windows上实现。" +"设置 IME 建议列表弹出窗口的位置(在窗口坐标中)。\n" +"[b]注意:[/b] 此方法在 Linux、macOS 和 Windows 上实现。" #: doc/classes/OS.xml:851 msgid "" @@ -47247,6 +47689,10 @@ msgid "" "window selection dialog.\n" "[b]Note:[/b] This method is implemented on macOS and Windows." msgstr "" +"使用多尺寸平台特定图标文件([code]*.ico[/code] 在 Windows 上设置游戏图标,在 " +"macOS 上设置 [code]*.icns [/code] ) 。\n" +"适当的大小子图标用于窗口标题、任务栏/停靠面板和窗口选择对话框。\n" +"[b]注意:[/b] 此方法在 macOS 和 Windows 上实现。" #: doc/classes/OS.xml:860 msgid "Sets the name of the current thread." @@ -47257,13 +47703,12 @@ msgid "Enables backup saves if [code]enabled[/code] is [code]true[/code]." msgstr "如果[code]enabled[/code]为[code]true[/code],则启用备份保存。" #: doc/classes/OS.xml:874 -#, fuzzy msgid "" "Sets whether the window should always be on top.\n" "[b]Note:[/b] This method is implemented on Linux, macOS and Windows." msgstr "" -"设置活动键盘布局。\n" -"[b]注:[/b]此方法可在Linux、macOS和Windows上实现。" +"设置窗口是否应始终位于顶部。\n" +"[b]注:[/b] 该方法在 Linux、macOS 和 Windows 上实现。" #: doc/classes/OS.xml:882 msgid "" @@ -47285,6 +47730,21 @@ msgid "" "region is not drawn, while on Linux and macOS it is.\n" "[b]Note:[/b] This method is implemented on Linux, macOS and Windows." msgstr "" +"设置窗口的一个接受鼠标事件的多边形区域。该区域外的鼠标事件将被传递出去。\n" +"传递一个空数组将禁用穿透支持(所有鼠标事件将被窗口拦截,这是默认行为)。\n" +"[codeblock]\n" +"# 设置区域,使用Path2D节点。\n" +"OS.set_window_mouse_passthrough($Path2D.curve.get_baked_points() )\n" +"\n" +"# 设置区域,使用Polygon2D节点。\n" +"OS.set_window_mouse_passthrough($Polygon2D.polygon)\n" +"\n" +"# 重置区域为默认值。\n" +"OS.set_window_mouse_passthrough([] )\n" +"[/codeblock]\n" +"[b]注意:[/b]在Windows上,位于区域外的窗口部分不会被绘制,而在Linux和macOS上则" +"会。\n" +"[b]注意:[/b] 这个方法在Linux、macOS和Windows上实现。" #: doc/classes/OS.xml:902 msgid "" @@ -47293,6 +47753,10 @@ msgid "" "as that will negatively affect performance on some window managers.\n" "[b]Note:[/b] This method is implemented on HTML5, Linux, macOS and Windows." msgstr "" +"将窗口标题设置为指定的字符串。\n" +"[b]注意:[/b] 这个应该偶尔使用。不要每帧都设置这个,因为这会对某些窗口管理器" +"的性能产生负面影响。\n" +"[b]注:[/b] 该方法在 HTML5、Linux、macOS 和 Windows 上实现。" #: doc/classes/OS.xml:911 msgid "" @@ -47327,7 +47791,6 @@ msgstr "" "现。" #: doc/classes/OS.xml:924 -#, fuzzy msgid "" "Shows the virtual keyboard if the platform has one.\n" "The [code]existing_text[/code] parameter is useful for implementing your own " @@ -47338,27 +47801,21 @@ msgid "" "be able to enter multiple lines of text, as in [TextEdit].\n" "[b]Note:[/b] This method is implemented on Android, iOS and UWP." msgstr "" -"显示虚拟键盘,如果当前平台有一个。\n" -"[code]existing_text[/code]参数可用于实现您自己的 [LineEdit] 或 [TextEdit],因" -"为它告诉虚拟键盘已输入文本的内容(虚拟键盘将其用于自动更正和预测)。\n" -"[code]position[/code]参数是编辑文本的屏幕中[Rect2]。\n" -"[code]multiline[/code]参数需要设置为[code]true[/code]才能输入多行文本,在" -"[TextEdit]中。\n" -"[code]max_length[/code]限制如果不等于 [code]-1[/code] ,可以输入的最大字符" -"数。\n" -"[code]cursor_start[/code]可以选择性地定义当前文本光标位置,如果" -"[code]cursor_end[/code]未设置。\n" -"[code]cursor_start[/code]和[code]cursor_end[/code]可以选择地定义当前文本选" -"择。\n" -"[b]注意:[/b]此方法在安卓系统、iOS 和 UWP 上实施。" +"如果平台有虚拟键盘,则显示虚拟键盘。\n" +"[code]existing_text[/code] 参数对于实现您自己的 [LineEdit] 或 [TextEdit] 很有" +"用,因为它告诉虚拟键盘已经输入了哪些文本(虚拟键盘使用它进行自动更正和预" +"测)。\n" +"[code]multiline[/code]参数需要设置为[code]true[/code]才能输入多行文本,如" +"[TextEdit]。\n" +"[b]注:[/b]此方法在Android、iOS和UWP上实现。" #: doc/classes/OS.xml:933 msgid "The clipboard from the host OS. Might be unavailable on some platforms." -msgstr "" +msgstr "主机操作系统的剪贴板在某些平台上可能不可用。" #: doc/classes/OS.xml:936 msgid "The current screen index (starting from 0)." -msgstr "" +msgstr "当前屏幕索引(从 0 开始)。" #: doc/classes/OS.xml:939 msgid "" @@ -47366,6 +47823,8 @@ msgid "" "each frame, and attempts to compensate for random variation. This will only " "operate on systems where V-Sync is active." msgstr "" +"如果 [code]true[/code],引擎会过滤每帧之间测量的时间增量,并尝试补偿随机变" +"化。这只会在垂直同步处于活动状态的系统上运行。" #: doc/classes/OS.xml:942 msgid "" @@ -47383,11 +47842,11 @@ msgstr "" "数,这个值将被忽略。" #: doc/classes/OS.xml:946 -#, fuzzy msgid "" "If [code]true[/code], the engine tries to keep the screen on while the game " "is running. Useful on mobile." -msgstr "如果 [code]true[/code],引擎将生成用于线框调试模式的线框。" +msgstr "" +"如果 [code]true[/code],引擎会尝试在游戏运行时保持屏幕开启。在手机上有用。" #: doc/classes/OS.xml:949 msgid "" @@ -47411,6 +47870,8 @@ msgid "" "decorations). Does not affect fullscreen mode. Set to [code](0, 0)[/code] to " "reset to the system default value." msgstr "" +"窗口的最大大小(不包括窗口管理器装饰)。不影响全屏模式。设置为 [code](0, 0)[/" +"code] 可重置为系统默认值。" #: doc/classes/OS.xml:958 msgid "" @@ -47421,23 +47882,24 @@ msgid "" "[code]Vector2(64, 64)[/code]. This prevents issues that can arise when the " "window is resized to a near-zero size." msgstr "" +"窗口的最小尺寸(以像素为单位)(不计算窗口管理器装饰)。不影响全屏模式。设置" +"为 [code](0, 0)[/code] 可重置为系统默认值。\n" +"[b]注:[/b] 默认情况下,项目窗口的最小尺寸为 [code]Vector2(64, 64)[/code]。这" +"可以防止在将窗口大小调整为接近零时可能出现的问题。" #: doc/classes/OS.xml:962 -#, fuzzy msgid "The current screen orientation." -msgstr "当前场景。" +msgstr "当前屏幕方向。" #: doc/classes/OS.xml:965 msgid "The current tablet driver in use." msgstr "当前正在使用的书写板(译注:或数位板、触摸板,尚未定论)驱动程序。" #: doc/classes/OS.xml:968 -#, fuzzy msgid "If [code]true[/code], vertical synchronization (Vsync) is enabled." -msgstr "如果[code]true[/code],则启用法线映射。" +msgstr "如果 [code]true[/code],则启用垂直同步 (Vsync)。" #: doc/classes/OS.xml:971 -#, fuzzy msgid "" "If [code]true[/code] and [code]vsync_enabled[/code] is true, the operating " "system's window compositor will be used for vsync when the compositor is " @@ -47447,11 +47909,11 @@ msgid "" "framerate halving (e.g. from 60 FPS to 30 FPS) when using it.\n" "[b]Note:[/b] This property is only implemented on Windows." msgstr "" -"如果[code]Use Vsync[/code]已启用,且[code]true[/code],则在窗口模式下启用排字" -"器时,可通过操作系统的窗口排字器实现垂直同步。这将防止在某些情况下卡顿。" -"(Windows)。\n" -"[b]注:[/b]这个选项是实验性的,旨在缓解一些用户的卡顿体验。然而,有些用户在使" -"用它时体验到垂直同步帧率减半(例如从60 FPS降至30 FPS)。" +"如果 [code]true[/code] 和 [code]vsync_enabled[/code] 为真,当操作系统的窗口合" +"成器被启用并且游戏处于窗口模式时,将使用该合成器进行vsync。\n" +"[b]注意:[/b] 此选项是实验性的,旨在缓解某些用户遇到的卡顿。但是,一些用户在" +"使用时遇到了 Vsync 帧率减半,例如从 60 FPS 到 30 FPS。\n" +"[b]注意:[/b] 此属性仅在 Windows 上实现。" #: doc/classes/OS.xml:976 msgid "" @@ -47459,21 +47921,21 @@ msgid "" "[b]Note:[/b] Setting [code]window_borderless[/code] to [code]false[/code] " "disables per-pixel transparency." msgstr "" +"如果 [code]true[/code],则移除窗框。\n" +"[b]注意:[/b] 将 [code]window_borderless[/code] 设置为 [code]false[/code] 将" +"禁用逐像素透明度。" #: doc/classes/OS.xml:980 -#, fuzzy msgid "If [code]true[/code], the window is fullscreen." -msgstr "如果[code]true[/code],则暂停视频。" +msgstr "如果[code]true[/code],窗口为全屏。" #: doc/classes/OS.xml:983 -#, fuzzy msgid "If [code]true[/code], the window is maximized." -msgstr "如果[code]true[/code],则暂停视频。" +msgstr "如果[code]true[/code],窗口被最大化。" #: doc/classes/OS.xml:986 -#, fuzzy msgid "If [code]true[/code], the window is minimized." -msgstr "如果[code]true[/code],则暂停视频。" +msgstr "如果[code]true[/code],窗口被最小化。" #: doc/classes/OS.xml:989 msgid "" @@ -47488,21 +47950,28 @@ msgid "" "ProjectSettings.display/window/per_pixel_transparency/enabled] to set it at " "startup instead." msgstr "" +"如果[code]true[/code],则窗口背景是透明的,窗口框架被移除。\n" +"使用 [code]get_tree().get_root().set_transparent_background(true)[/code] 禁用" +"主视口背景渲染。\n" +"[b]注意:[/b]如果禁用[member ProjectSettings.display/window/" +"per_pixel_transparency/allowed]设置,则该属性无效。\n" +"[b]注意:[/b] 此属性在 HTML5、Linux、macOS、Windows 和 Android 上实现。对于 " +"Android,它不能在运行时更改。使用 [member ProjectSettings.display/window/" +"per_pixel_transparency/enabled] 在启动时进行设置。" #: doc/classes/OS.xml:995 msgid "" "The window position relative to the screen, the origin is the top left " "corner, +Y axis goes to the bottom and +X axis goes to the right." -msgstr "" +msgstr "窗口相对于屏幕的位置,原点为左上角,+Y 轴向下,+X 轴向右。" #: doc/classes/OS.xml:998 -#, fuzzy msgid "If [code]true[/code], the window is resizable by the user." -msgstr "如果[code]true[/code],则暂停视频。" +msgstr "如果 [code]true[/code],用户可以调整窗口大小。" #: doc/classes/OS.xml:1001 msgid "The size of the window (without counting window manager decorations)." -msgstr "" +msgstr "窗口的大小(不包括窗口管理器装饰)。" #: doc/classes/OS.xml:1006 msgid "" @@ -47513,13 +47982,12 @@ msgstr "" "2.1,在网络上使用WebGL 1.0。" #: doc/classes/OS.xml:1009 -#, fuzzy msgid "" "The GLES3 rendering backend. It uses OpenGL ES 3.0 on mobile devices, OpenGL " "3.3 on desktop platforms and WebGL 2.0 on the web." msgstr "" -"GLES2的渲染后端。它在移动设备上使用OpenGL ES 2.0,在桌面平台上使用OpenGL " -"2.1,在网络上使用WebGL 1.0。" +"GLES3 渲染后端。它在移动设备上使用 OpenGL ES 3.0,在桌面平台上使用 OpenGL " +"3.3,在网络上使用 WebGL 2.0。" #: doc/classes/OS.xml:1012 msgid "Sunday." @@ -48267,7 +48735,7 @@ msgstr "https://godotengine.org/asset-library/asset/523" #: doc/classes/Panel.xml:20 msgid "The style of this [Panel]." -msgstr "这个[Panel]的样式。" +msgstr "这个 [Panel] 的样式。" #: doc/classes/PanelContainer.xml:4 msgid "Panel container type." @@ -48278,11 +48746,11 @@ msgid "" "Panel container type. This container fits controls inside of the delimited " "area of a stylebox. It's useful for giving controls an outline." msgstr "" -"面板容器类型。此容器适合样式框分隔区域内的控件。它对于给控件一个描边很有用。" +"面板容器类型。此容器会将控件放入样式盒所框定的区域内,方便为控件提供轮廓。" #: doc/classes/PanelContainer.xml:18 msgid "The style of [PanelContainer]'s background." -msgstr "[PanelContainer]的背景样式。" +msgstr "[PanelContainer] 的背景样式。" #: doc/classes/PanoramaSky.xml:4 msgid "A type of [Sky] used to draw a background texture." @@ -48300,16 +48768,17 @@ msgid "" "cubemap_to_panorama.html]this tool[/url] to convert a cube map to an " "equirectangular sky map." msgstr "" -"在[Environment]中引用的用于绘制背景的资源。全景天空的功能类似于其他引擎的天空" -"盒,除了它使用等边矩形的天空地图而不是立方体地图。\n" -"强烈建议使用HDR全景图,以获得准确、高质量的反射。为此,Godot支持Radiance HDR " -"([code].hdr[/code])和OpenEXR ([code].exr[/code])图像格式。\n" +"在 [Environment] 中引用的用于绘制背景的资源。全景天空的功能类似于其他引擎的天" +"空盒,区别在于它使用的是等距圆柱投影的天空贴图而不是立方体贴图。\n" +"强烈建议使用 HDR 全景图,以获得准确、高质量的反射。为此,Godot 支持 Radiance " +"HDR([code].hdr[/code])和 OpenEXR([code].exr[/code])图像格式。\n" "您可以使用[url=https://danilw.github.io/GLSL-howto/cubemap_to_panorama_js/" -"cubemap_to_panorama.html]这个工具[/url]将立方体地图转换为等角的天空地图。" +"cubemap_to_panorama.html]这个工具[/url]将立方体贴图转换为等距圆柱投影的天空贴" +"图。" #: doc/classes/PanoramaSky.xml:17 msgid "[Texture] to be applied to the PanoramaSky." -msgstr "将被应用到全景天空的 [Texture]。" +msgstr "将被应用到 PanoramaSky 的 [Texture]。" #: doc/classes/ParallaxBackground.xml:4 msgid "A node used to create a parallax scrolling background." @@ -48323,25 +48792,25 @@ msgid "" "2D game. If not used with a [Camera2D], you must manually calculate the " "[member scroll_offset]." msgstr "" -"一个ParallaxBackground使用一个或多个[ParallaxLayer]子节点来创建视差效果。每个" -"[ParallaxLayer]可以使用成员ParallaxLayer.motion_offset以不同的速度移动。这在" -"2D游戏中创造了一种深度错觉。如果没有与[Camera2D]一起使用,你必须手动计算" -"[member scroll_offset]。" +"ParallaxBackground 使用一个或多个 [ParallaxLayer] 子节点来创建视差效果。每个 " +"[ParallaxLayer] 可以使用 [member ParallaxLayer.motion_offset] 以不同的速度移" +"动。这在 2D 游戏中可以创造一种深度错觉。如果没有与 [Camera2D] 一起使用,你必" +"须手动计算 [member scroll_offset]。" #: doc/classes/ParallaxBackground.xml:16 msgid "The base position offset for all [ParallaxLayer] children." -msgstr "所有[ParallaxLayer]子元素的基本位置偏移。" +msgstr "所有 [ParallaxLayer] 子元素的基本位置偏移。" #: doc/classes/ParallaxBackground.xml:19 msgid "The base motion scale for all [ParallaxLayer] children." -msgstr "所有[ParallaxLayer]子元素的基本移动比例。" +msgstr "所有 [ParallaxLayer] 子元素的基本移动比例。" #: doc/classes/ParallaxBackground.xml:22 msgid "" "If [code]true[/code], elements in [ParallaxLayer] child aren't affected by " "the zoom level of the camera." msgstr "" -"如果[code]为true[/code], [ParallaxLayer]子元素将不受相机缩放级别的影响。" +"为 [code]true[/code] 时,[ParallaxLayer] 子元素将不受相机缩放级别的影响。" #: doc/classes/ParallaxBackground.xml:25 msgid "" @@ -48372,7 +48841,7 @@ msgstr "" #: doc/classes/ParallaxLayer.xml:4 msgid "A parallax scrolling layer to be used with [ParallaxBackground]." -msgstr "使用[ParallaxBackground]的视差滚动层。" +msgstr "使用 [ParallaxBackground] 的视差滚动层。" #: doc/classes/ParallaxLayer.xml:7 msgid "" @@ -48383,11 +48852,10 @@ msgid "" "[b]Note:[/b] Any changes to this node's position and scale made after it " "enters the scene will be ignored." msgstr "" -"一个ParallaxLayer必须是一个[ParallaxBackground]节点的子节点。每个" -"ParallaxLayer都可以设置为相对于相机移动或 [member ParallaxBackground." -"scroll_offset] 值。\n" +"ParallaxLayer 必须是 [ParallaxBackground] 节点的子节点。每个 ParallaxLayer 都" +"可以设置为相对于相机移动或 [member ParallaxBackground.scroll_offset] 值。\n" "该节点的子节点将受其滚动偏移量的影响。\n" -"[b]注意:[/b]当该节点进入场景后,对其位置和比例的任何改变都将被忽略。" +"[b]注意:[/b] 当该节点进入场景后,对其位置和比例的任何改变都将被忽略。" #: doc/classes/ParallaxLayer.xml:17 msgid "" @@ -48452,7 +48920,7 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/3d/vertex_animation/" "controlling_thousands_of_fish.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/3d/vertex_animation/" +"https://docs.godotengine.org/zh_CN/stable/tutorials/3d/vertex_animation/" "controlling_thousands_of_fish.html" #: doc/classes/Particles.xml:20 @@ -48542,6 +49010,11 @@ msgid "" "shadows, you may want to enlarge this AABB to ensure the shadow is updated " "when particles are off-screen." msgstr "" +"[AABB] 确定节点的区域,该区域需要在屏幕上可见才能使粒子系统处于活动状态。\n" +"如果在节点进入/退出屏幕时粒子突然出现/消失,则增大框。 [AABB] 可以通过代码或" +"使用 [b]Particles → Generate AABB[/b] 编辑器工具生成。\n" +"[b]注意:[/b] 如果使用中的 [ParticlesMaterial] 配置为投射阴影,您可能需要放大" +"此 AABB 以确保在粒子离屏时更新阴影。" #: doc/classes/Particles.xml:118 msgid "Maximum number of draw passes supported." @@ -48572,6 +49045,19 @@ msgid "" "[b]Note:[/b] Unlike [CPUParticles2D], [Particles2D] currently ignore the " "texture region defined in [AtlasTexture]s." msgstr "" +"用于创建各种粒子系统和效果的 2D 粒子节点。 [Particles2D] 具有一个发射器,可以" +"以给定的速率生成一定数量的粒子。\n" +"使用 [code]process_material[/code] 属性添加 [ParticlesMaterial] 以配置粒子外" +"观和行为。或者,您可以添加将应用于所有粒子的 [ShaderMaterial]。\n" +"[b]注意:[/b] [Particles2D] 仅在使用 GLES3 渲染器时有效。如果使用 GLES2 渲染" +"器,请改用 [CPUParticles2D]。您可以通过选择节点将 [Particles2D] 转换为 " +"[CPUParticles2D],单击 2D 编辑器视口顶部的 [b]Particles[/b] 菜单,然后选择 " +"[b]Convert to CPUParticles2D[/b]。\n" +"[b]注意:[/b]在粒子节点上工作后,记得通过选择它来更新它的[member " +"visibility_rect],单击2D编辑器视口顶部的[b]粒子[/b]菜单,然后选择[b]生成可见" +"矩形 [/b]。否则,根据相机位置和角度,粒子可能会突然消失。\n" +"[b]注:[/b]与[CPUParticles2D]不同,[Particles2D]目前忽略[AtlasTexture]s中定义" +"的纹理区域。" #: doc/classes/Particles2D.xml:21 msgid "Returns a rectangle containing the positions of all existing particles." @@ -48589,14 +49075,15 @@ msgid "" "exits the screen. The [Rect2] can be grown via code or with the [b]Particles " "→ Generate Visibility Rect[/b] editor tool." msgstr "" +"[Rect2] 确定节点的区域,该区域需要在屏幕上可见才能使粒子系统处于活动状态。\n" +"如果当节点进入/退出屏幕时粒子突然出现/消失,则增长矩形。 [Rect2] 可以通过代码" +"或使用 [b]Particles → Generate Visibility Rect[/b] 编辑器工具生成。" #: doc/classes/ParticlesMaterial.xml:4 -#, fuzzy msgid "Particle properties for [Particles] and [Particles2D] nodes." -msgstr "[GPUParticles3D]和[GPUParticles2D]节点的粒子属性。" +msgstr "[Particles] 和 [Particles2D] 节点的粒子属性。" #: doc/classes/ParticlesMaterial.xml:7 -#, fuzzy msgid "" "ParticlesMaterial defines particle properties and behavior. It is used in " "the [code]process_material[/code] of [Particles] and [Particles2D] emitter " @@ -48611,14 +49098,14 @@ msgid "" "ratio of [code]0.4[/code] would scale the original property between " "[code]0.4-1.0[/code] of its original value." msgstr "" -"ParticlesMaterial定义了粒子的属性和行为。它在[GPUParticles3D]和" -"[GPUParticles2D]发射器节点的[code]process_material[/code]中使用。\n" -"当发射时,这些材料的一些属性被应用到每个粒子上,而其他的可以有一个" -"[CurveTexture]应用到在粒子的生命周期中变化的值。\n" -"当随机比率应用于一个属性时,它被用于按随机数量缩放该属性。随机比率用于在" -"[code]1.0[/code]和一个小于1的随机数之间插入,结果乘以该属性得到随机属性。例" -"如,[code]0.4[/code]的随机比率将使原始属性在其原始值的[code]0.4-1.0[/code]之" -"间缩放。" +"ParticlesMaterial定义了粒子的属性和行为。它可用于[Particles]和[Particles2D]发" +"射器节点的[code]process_material[/code]中。\n" +"这个材质的一些属性在发射时被应用到每个粒子上,而其他属性可以应用" +"[CurveTexture]来在粒子的生命周期中改变数值。\n" +"当随机性比率被应用到一个属性时,用来以一个随机量来扩展该属性。随机率用来在" +"[code]1.0[/code]和一个小于1的随机数之间插值,结果乘以属性,得到随机的属性。例" +"如,一个[code]0.4[/code]的随机比率将在[code]0.4-1.0[/code]之间缩放原始属性的" +"原值。" #: doc/classes/ParticlesMaterial.xml:18 msgid "Returns [code]true[/code] if the specified flag is enabled." @@ -48629,9 +49116,8 @@ msgid "Returns the randomness ratio associated with the specified parameter." msgstr "返回与指定参数关联的随机比率。" #: doc/classes/ParticlesMaterial.xml:39 -#, fuzzy msgid "Returns the [Texture] used by the specified parameter." -msgstr "返回指定参数使用的[Texture2D]。" +msgstr "返回指定参数使用的 [Texture]。" #: doc/classes/ParticlesMaterial.xml:47 msgid "" @@ -48648,29 +49134,26 @@ msgid "Sets the randomness ratio for the specified [enum Parameter]." msgstr "为指定的[enum Parameter]设置随机比率。" #: doc/classes/ParticlesMaterial.xml:71 -#, fuzzy msgid "Sets the [Texture] for the specified [enum Parameter]." -msgstr "为指定的[enum Parameter]设置[Texture2D]。" +msgstr "为指定的 [enum Parameter] 设置 [Texture]。" #: doc/classes/ParticlesMaterial.xml:77 -#, fuzzy msgid "" "Initial rotation applied to each particle, in degrees.\n" "Only applied when [member flag_disable_z] or [member flag_rotate_y] are " "[code]true[/code] or the [SpatialMaterial] being used to draw the particle " "is using [constant SpatialMaterial.BILLBOARD_PARTICLES]." msgstr "" -"初始旋转作用于每个粒子,以度数表示。\n" -"仅当[member flag_disable_z]或[member flag_rotate_y]为[code]true[/code]或" -"[BaseMaterial3D]用于绘制粒子时使用[constant BaseMaterial3D. " -"billboard_particles]。" +"应用于每个粒子的初始旋转,以度为单位。\n" +"仅在 [member flag_disable_z] 或 [member flag_rotate_y] 为 [code]true[/code] " +"或用于绘制粒子的 [SpatialMaterial] 使用 [constant SpatialMaterial." +"BILLBOARD_PARTICLES] 时应用。" #: doc/classes/ParticlesMaterial.xml:81 msgid "Each particle's rotation will be animated along this [CurveTexture]." msgstr "每个粒子的旋转将沿着这个[CurveTexture]动画。" #: doc/classes/ParticlesMaterial.xml:87 -#, fuzzy msgid "" "Initial angular velocity applied to each particle. Sets the speed of " "rotation of the particle.\n" @@ -48678,10 +49161,10 @@ msgid "" "[code]true[/code] or the [SpatialMaterial] being used to draw the particle " "is using [constant SpatialMaterial.BILLBOARD_PARTICLES]." msgstr "" -"每个粒子的初始角速度。设置粒子的旋转速度。\n" -"仅当[member flag_disable_z]或[member flag_rotate_y]为[code]true[/code]或" -"[BaseMaterial3D]用于绘制粒子时使用[constant BaseMaterial3D. " -"billboard_particles]。" +"应用于每个粒子的初始角速度。设置粒子的旋转速度。\n" +"仅在 [member flag_disable_z] 或 [member flag_rotate_y] 为 [code]true[/code] " +"或用于绘制粒子的 [SpatialMaterial] 使用 [constant SpatialMaterial." +"BILLBOARD_PARTICLES] 时应用。" #: doc/classes/ParticlesMaterial.xml:91 msgid "Each particle's angular velocity will vary along this [CurveTexture]." @@ -48696,16 +49179,15 @@ msgid "Each particle's animation speed will vary along this [CurveTexture]." msgstr "每个粒子的动画速度将沿着这个[CurveTexture]变化。" #: doc/classes/ParticlesMaterial.xml:115 -#, fuzzy msgid "" "Each particle's initial color. If the [Particles2D]'s [code]texture[/code] " "is defined, it will be multiplied by this color. To have particle display " "color in a [SpatialMaterial] make sure to set [member SpatialMaterial." "vertex_color_use_as_albedo] to [code]true[/code]." msgstr "" -"每个粒子的初始颜色。如果[GPUParticles2D]的[code]texture[/code]被定义,它将乘" -"以这个颜色。要让粒子在[BaseMaterial3D]中显示颜色,请确保设置[member " -"BaseMaterial3D]。vertex_color_use_as_albedo] [code]true[/code]。" +"每个粒子的初始颜色。如果定义了 [Particles2D] 的 [code]texture[/code],它将乘" +"以该颜色。要在 [SpatialMaterial] 中使用粒子显示颜色,请确保将 [member " +"SpatialMaterial.vertex_color_use_as_albedo] 设置为 [code]true[/code]。" #: doc/classes/ParticlesMaterial.xml:124 msgid "Damping will vary along this [CurveTexture]." @@ -48761,37 +49243,25 @@ msgstr "" "的“粒子”工具下的“从网格/节点中创建发射点”自动创建网格或节点。" #: doc/classes/ParticlesMaterial.xml:148 -#, fuzzy msgid "" "The axis of the ring when using the emitter [constant EMISSION_SHAPE_RING]." -msgstr "" -"如果[enum EmissionShape]设置为[constant EMISSION_SHAPE_SPHERE],则球体的半" -"径。" +msgstr "使用发射器时的环轴 [constant EMISSION_SHAPE_RING]。" #: doc/classes/ParticlesMaterial.xml:151 -#, fuzzy msgid "" "The height of the ring when using the emitter [constant EMISSION_SHAPE_RING]." -msgstr "" -"如果[enum EmissionShape]设置为[constant EMISSION_SHAPE_SPHERE],则球体的半" -"径。" +msgstr "使用发射器时环的高度 [constant EMISSION_SHAPE_RING]。" #: doc/classes/ParticlesMaterial.xml:154 -#, fuzzy msgid "" "The inner radius of the ring when using the emitter [constant " "EMISSION_SHAPE_RING]." -msgstr "" -"如果[enum EmissionShape]设置为[constant EMISSION_SHAPE_SPHERE],则球体的半" -"径。" +msgstr "使用发射器时环的内半径 [constant EMISSION_SHAPE_RING]。" #: doc/classes/ParticlesMaterial.xml:157 -#, fuzzy msgid "" "The radius of the ring when using the emitter [constant EMISSION_SHAPE_RING]." -msgstr "" -"如果[membermission_shape]设置为[constant EMISSION_SHAPE_SPHERE],则球体的半" -"径。" +msgstr "使用发射器时的圆环半径 [constant EMISSION_SHAPE_RING]。" #: doc/classes/ParticlesMaterial.xml:160 msgid "" @@ -48808,9 +49278,8 @@ msgstr "" "半径。" #: doc/classes/ParticlesMaterial.xml:175 -#, fuzzy msgid "Amount of [member spread] along the Y axis." -msgstr "沿Y轴插入的额外边缘环的数量。" +msgstr "沿 Y 轴的 [member spread] 量。" #: doc/classes/ParticlesMaterial.xml:184 msgid "Each particle's hue will vary along this [CurveTexture]." @@ -48993,12 +49462,10 @@ msgstr "" "emission_color_texture]调节。" #: doc/classes/Path.xml:4 -#, fuzzy msgid "Contains a [Curve3D] path for [PathFollow] nodes to follow." -msgstr "包含一个[Curve3D]路径,供[PathFollow3D]节点遵循。" +msgstr "包含要遵循的 [PathFollow] 节点的 [Curve3D] 路径。" #: doc/classes/Path.xml:7 -#, fuzzy msgid "" "Can have [PathFollow] child nodes moving along the [Curve3D]. See " "[PathFollow] for more information on the usage.\n" @@ -49006,10 +49473,10 @@ msgid "" "[PathFollow]). As such, the curve should usually start with a zero vector " "[code](0, 0, 0)[/code]." msgstr "" -"可以让[PathFollow3D]子节点沿着[Curve3D]移动。请参阅[PathFollow3D]以获得更多关" -"于使用的信息。\n" -"注意,该路径被认为是相对于移动的节点([PathFollow3D]的子节点)的。因此,曲线通" -"常以零向量[code](0,0,0)[/code]开始。" +"可以让 [PathFollow] 子节点沿 [Curve3D] 移动。有关用法的更多信息,参阅 " +"[PathFollow]。\n" +"请注意,路径被视为相对于移动节点([PathFollow] 的子节点)。因此,曲线通常应以" +"零向量 [code](0, 0, 0)[/code] 开始。" #: doc/classes/Path.xml:16 msgid "A [Curve3D] describing the path." @@ -49041,12 +49508,10 @@ msgid "A [Curve2D] describing the path." msgstr "A [Curve2D]描述路径。" #: doc/classes/PathFollow.xml:4 -#, fuzzy msgid "Point sampler for a [Path]." -msgstr "对[Path2D]的点取样的取样器。" +msgstr "[Path] 的点采样器。" #: doc/classes/PathFollow.xml:7 -#, fuzzy msgid "" "This node takes its parent [Path], and returns the coordinates of a point " "within it, given a distance from the first vertex.\n" @@ -49055,13 +49520,12 @@ msgid "" "descendant nodes will then move accordingly when setting an offset in this " "node." msgstr "" -"这个节点接受它的父节点[Path2D],并返回其中一个点的坐标(给定到第一个顶点的距" -"离)。\n" -"在不编码移动模式的情况下,它可以使其他节点遵循一条路径。因此,节点必须是这个" -"节点的子节点。当在该节点中设置偏移量时,后代节点将相应地移动。" +"这个节点接受它的父节点 [Path],并返回其中一个点的坐标,给定与第一个顶点的距" +"离。\n" +"这对于使其他节点遵循路径非常有用,而无需对运动模式进行编码。为此,节点必须是" +"该节点的子节点。在此节点中设置偏移量时,子代节点将相应地移动。" #: doc/classes/PathFollow.xml:16 -#, fuzzy msgid "" "If [code]true[/code], the position between two cached points is interpolated " "cubically, and linearly otherwise.\n" @@ -49074,13 +49538,12 @@ msgid "" "points and increase memory consumption, or make a cubic interpolation " "between two points at the cost of (slightly) slower calculations." msgstr "" -"如果[code]true[/code],则两个缓存点之间的位置将进行三次插值,否则将线性插" -"值。\n" -"沿着[Path3D]的[Curve3D]的点在使用前是预先计算的,为了更快的计算。然后在两个相" -"邻的缓存点之间计算请求偏移量的点。这可能会出现一个问题,如果曲线做急转弯,因" -"为缓存点可能不跟随曲线足够近。\n" -"有两种方法可以解决这个问题:要么增加缓存点的数量,增加内存消耗,要么在两个点之" -"间进行三次插值,但代价是(稍微)降低计算速度。" +"如果[code]true[/code],两个缓存的点之间的位置是立方插值,否则是线性插值。\n" +"沿着[Path]的[Curve3D]的点在使用前被预计算,以加快计算。而后,在确定偏移量上的" +"点会在两个相邻的缓存点之间进行插值计算。如果曲线有急转弯,这可能会产生一个问" +"题,因为缓存的点可能不会足够紧跟曲线。\n" +"这个问题有两个答案:要么增加缓存点的数量,代价是增加内存消耗;要么在两个点之" +"间进行立方插值,代价是计算速度稍慢。" #: doc/classes/PathFollow.xml:21 doc/classes/PathFollow2D.xml:21 msgid "The node's offset along the curve." @@ -49124,34 +49587,29 @@ msgid "The node's offset perpendicular to the curve." msgstr "节点垂直于曲线的偏移量。" #: doc/classes/PathFollow.xml:41 -#, fuzzy msgid "Forbids the PathFollow to rotate." -msgstr "禁止PathFollow3D旋转。" +msgstr "禁止 PathFollow 旋转。" #: doc/classes/PathFollow.xml:44 -#, fuzzy msgid "Allows the PathFollow to rotate in the Y axis only." -msgstr "只允许PathFollow3D在Y轴上旋转。" +msgstr "仅允许 PathFollow 沿 Y 轴旋转。" #: doc/classes/PathFollow.xml:47 -#, fuzzy msgid "Allows the PathFollow to rotate in both the X, and Y axes." -msgstr "允许PathFollow3D在X轴和Y轴上旋转。" +msgstr "允许 PathFollow 在 X 和 Y 轴上旋转。" #: doc/classes/PathFollow.xml:50 -#, fuzzy msgid "Allows the PathFollow to rotate in any axis." -msgstr "允许PathFollow3D在任何轴上旋转。" +msgstr "允许 PathFollow 在任意轴上旋转。" #: doc/classes/PathFollow.xml:53 -#, fuzzy msgid "" "Uses the up vector information in a [Curve3D] to enforce orientation. This " "rotation mode requires the [Path]'s [member Curve3D.up_vector_enabled] " "property to be set to [code]true[/code]." msgstr "" -"使用[Curve3D]中的上向量信息来加强方向。这个旋转模式需要[Path3D]的[member " -"Curve3D。Up_vector_enabled属性设置为[code]true[/code]。" +"使用 [Curve3D] 中的向上向量信息来强制定向。此旋转模式需要将 [Path] 的 " +"[member Curve3D.up_vector_enabled] 属性设置为 [code]true[/code]。" #: doc/classes/PathFollow2D.xml:4 msgid "Point sampler for a [Path2D]." @@ -49280,7 +49738,6 @@ msgid "Exposes performance-related data." msgstr "公开与性能相关的数据。" #: doc/classes/Performance.xml:7 -#, fuzzy msgid "" "This class provides access to a number of different monitors related to " "performance, such as memory usage, draw calls, and FPS. These are the same " @@ -49292,16 +49749,13 @@ msgid "" "[b]Note:[/b] Many of these monitors are not updated in real-time, so there " "may be a short delay between changes." msgstr "" -"这个类提供了对一些与性能有关的不同监控的访问,比如内存使用量、绘图调用和FPS。" -"这些与编辑器的[b]Debugger[/b]面板中的[b]Monitor[/b]标签所显示的数值相同。通过" -"使用这个类的[method get_monitor]方法,你可以从你的代码中访问这些数据。\n" -"你可以使用[method add_custom_monitor]方法添加自定义监视器。自定义监视器可以在" -"编辑器的[b]调试器[/b]面板的[b]监视器[/b]选项卡中与内置监视器一起使用。\n" -"[b]注意:[/b] 其中一些监视器只在调试模式下可用,在发布版本中使用时将总是返回" -"0。\n" -"[b]注意:[/b] 这些监控器中的许多都不是实时更新的,所以在变化之间可能会有短暂" -"的延迟。\n" -"[b]注意:[/b] 自定义监视器不支持负值。负值被钳制为0。" +"这个类提供了对一些与性能有关的不同监控的访问,比如内存使用量、绘制调用和FPS。" +"这些与编辑器的[b]Monitor[/b]标签中的[b]Debugger[/b]面板所显示的数值相同。通过" +"使用这个类的[method get_monitor]方法,可以从你的代码中访问这些数据。\n" +"[b]注意:[/b] 这些监视器中有几个只在调试模式下可用,当在发布版构建中使用时,将" +"总是返回0。\n" +"[b]注意:[/b] 这些监控器中的许多不是实时更新的,所以在变化之间可能会有短暂的延" +"迟。" #: doc/classes/Performance.xml:18 msgid "" @@ -49336,19 +49790,17 @@ msgid "" msgstr "当前使用的静态内存,以字节为单位。在发布版本中不可用。" #: doc/classes/Performance.xml:39 -#, fuzzy msgid "" "Dynamic memory currently used, in bytes. Not available in release builds." -msgstr "当前使用的静态内存,以字节为单位。在发布版本中不可用。" +msgstr "当前使用的动态内存,以字节为单位。在发布版本中不可用。" #: doc/classes/Performance.xml:42 msgid "Available static memory. Not available in release builds." msgstr "可用的静态内存。在发布版本中不可用。" #: doc/classes/Performance.xml:45 -#, fuzzy msgid "Available dynamic memory. Not available in release builds." -msgstr "可用的静态内存。在发布版本中不可用。" +msgstr "可用的动态内存。在发布版本中不可用。" #: doc/classes/Performance.xml:48 msgid "" @@ -49403,14 +49855,12 @@ msgid "Draw calls per frame. 3D only." msgstr "每一帧的绘图调用。仅限3D。" #: doc/classes/Performance.xml:81 -#, fuzzy msgid "Items or joined items drawn per frame." -msgstr "每帧绘制3D对象的数量。" +msgstr "每帧绘制的项目或连接的项目。" #: doc/classes/Performance.xml:84 -#, fuzzy msgid "Draw calls per frame." -msgstr "每一帧的绘图调用。仅限3D。" +msgstr "每帧绘制调用。" #: doc/classes/Performance.xml:87 doc/classes/VisualServer.xml:3696 msgid "" @@ -49426,10 +49876,9 @@ msgid "The amount of vertex memory used." msgstr "使用的顶点内存数量。" #: doc/classes/Performance.xml:96 doc/classes/VisualServer.xml:3693 -#, fuzzy msgid "" "Unimplemented in the GLES2 and GLES3 rendering backends, always returns 0." -msgstr "未在GLES2呈现后端实现,总是返回0。" +msgstr "在 GLES2 和 GLES3 渲染后端中未实现,始终返回 0。" #: doc/classes/Performance.xml:99 msgid "Number of active [RigidBody2D] nodes in the game." @@ -49444,9 +49893,8 @@ msgid "Number of islands in the 2D physics engine." msgstr "2D物理引擎中的岛屿数量。" #: doc/classes/Performance.xml:108 -#, fuzzy msgid "Number of active [RigidBody] and [VehicleBody] nodes in the game." -msgstr "游戏中活跃的[RigidBody3D]和[VehicleBody3D]节点数量。" +msgstr "游戏中活动的 [RigidBody] 和 [VehicleBody] 节点的数量。" #: doc/classes/Performance.xml:111 msgid "Number of collision pairs in the 3D physics engine." @@ -49481,21 +49929,19 @@ msgid "" msgstr "从给定的[Translation]资源生成并设置优化的翻译。" #: doc/classes/Physics2DDirectBodyState.xml:4 -#, fuzzy msgid "Direct access object to a physics body in the [Physics2DServer]." -msgstr "在[PhysicsServer2D]中直接访问物理体。" +msgstr "直接访问 [Physics2DServer] 中物理物体对象。" #: doc/classes/Physics2DDirectBodyState.xml:7 -#, fuzzy msgid "" "Provides direct access to a physics body in the [Physics2DServer], allowing " "safe changes to physics properties. This object is passed via the direct " "state callback of rigid/character bodies, and is intended for changing the " "direct state of that body. See [method RigidBody2D._integrate_forces]." msgstr "" -"提供对[PhysicsServer2D]中的物理体的直接访问,允许安全地改变物理属性。这个对象" -"是通过刚性/字符体的直接状态回调传递的,目的是为了改变该体的直接状态。参阅" -"[method RigidBody2D._integrate_forces]。" +"提供对 [Physics2DServer] 中物理物体的直接访问,允许安全更改物理属性。该对象通" +"过刚体/角色物体的直接状态回调传递,从而直接改变该物体的状态。参见 [method " +"RigidBody2D._integrate_forces]。" #: doc/classes/Physics2DDirectBodyState.xml:11 #: doc/classes/Physics2DDirectSpaceState.xml:11 @@ -49504,7 +49950,8 @@ msgstr "" #: doc/classes/RayCast2D.xml:14 doc/classes/World.xml:10 #: doc/classes/World2D.xml:10 msgid "https://docs.godotengine.org/en/3.4/tutorials/physics/ray-casting.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/physics/ray-casting.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/physics/ray-casting.html" #: doc/classes/Physics2DDirectBodyState.xml:18 doc/classes/RigidBody2D.xml:30 msgid "Adds a constant directional force without affecting rotation." @@ -49570,14 +50017,13 @@ msgid "Returns the collider's shape index." msgstr "返回碰撞体的形状索引。" #: doc/classes/Physics2DDirectBodyState.xml:97 -#, fuzzy msgid "" "Returns the collided shape's metadata. This metadata is different from " "[method Object.get_meta], and is set with [method Physics2DServer." "shape_set_data]." msgstr "" -"返回碰撞形状的元数据。这个元数据与[method Object.get_meta]不同,它是用" -"[method PhysicsServer2D.shape_set_data]设置的。" +"返回碰撞形状的元数据。这个元数据不同于[method Object.get_meta],是用[method " +"Physics2DServer.shape_set_data]设置的。" #: doc/classes/Physics2DDirectBodyState.xml:104 #: doc/classes/PhysicsDirectBodyState.xml:99 @@ -49590,9 +50036,9 @@ msgid "" "[b]Note:[/b] By default, this returns 0 unless bodies are configured to " "monitor contacts. See [member RigidBody2D.contact_monitor]." msgstr "" -"返回此实体与其他实体的联系数。\n" -"[b] 注意:[/b]默认情况下,除非主体被设为监视联系人,否则返回0。请参阅 " -"[member RigidBody2D.contact_monitor]。" +"返回此物体与其他物体的接触次数。\n" +"[b] 注意:[/b]默认情况下,除非物体被设为监视接触者,否则返回0。参阅 [member " +"RigidBody2D.contact_monitor]。" #: doc/classes/Physics2DDirectBodyState.xml:118 #: doc/classes/PhysicsDirectBodyState.xml:120 @@ -49619,7 +50065,7 @@ msgstr "返回空间的当前状态,这对查询很有用。" msgid "" "Returns the body's velocity at the given relative position, including both " "translation and rotation." -msgstr "" +msgstr "返回给定相对位置的物体速度,包括平移和旋转。" #: doc/classes/Physics2DDirectBodyState.xml:151 #: doc/classes/PhysicsDirectBodyState.xml:153 @@ -49678,21 +50124,19 @@ msgstr "物体停止运动的速率,如果没有任何其他力使它运动。 #: doc/classes/Physics2DDirectBodyState.xml:184 #: doc/classes/PhysicsDirectBodyState.xml:190 msgid "The body's transformation matrix." -msgstr "身体的变换矩阵。" +msgstr "物体的变换矩阵。" #: doc/classes/Physics2DDirectSpaceState.xml:4 -#, fuzzy msgid "Direct access object to a space in the [Physics2DServer]." -msgstr "直接访问[PhysicsServer2D]中的一个空间。" +msgstr "直接访问[Physics2DServer]中的空间的对象。" #: doc/classes/Physics2DDirectSpaceState.xml:7 -#, fuzzy msgid "" "Direct access object to a space in the [Physics2DServer]. It's used mainly " "to do queries against objects and areas residing in a given space." msgstr "" -"直接访问[PhysicsServer2D]中的一个空间。它主要用于对给定空间中的对象和区域进行" -"查询。" +"直接访问[Physics2DServer]中的空间的对象。它主要用于对位于给定空间中的对象和区" +"域进行查询。" #: doc/classes/Physics2DDirectSpaceState.xml:18 msgid "" @@ -49708,9 +50152,15 @@ msgid "" "inside of, will be ignored. Use [method collide_shape] to determine the " "[Shape2D]s that the shape is already colliding with." msgstr "" +"检查 [Shape2D] 可以移动多远而不会发生碰撞。查询的所有参数,包括形状和运动,都" +"是通过 [Physics2DShapeQueryParameters] 对象提供的。\n" +"返回一个包含运动的安全和不安全比例(0 到 1 之间)的数组。安全比例是在没有碰撞" +"的情况下可以进行的运动的最大比例。不安全比例是碰撞必须移动的距离的最小部分。" +"如果没有检测到碰撞,将返回 [code][1.0, 1.0][/code] 的结果。\n" +"[b]注意:[/b] 任何已经碰撞的[Shape2D](比如内部的)会被忽略。使用 [method " +"collide_shape] 确定形状已经碰撞的 [Shape2D]。" #: doc/classes/Physics2DDirectSpaceState.xml:28 -#, fuzzy msgid "" "Checks the intersections of a shape, given through a " "[Physics2DShapeQueryParameters] object, against the space. The resulting " @@ -49718,12 +50168,11 @@ msgid "" "with [method intersect_shape], the number of returned results can be limited " "to save processing time." msgstr "" -"通过[PhysicsShapeQueryParameters2D]对象对空间检查形状的交集。生成的数组包含一" -"个与另一个形状相交的点列表。与[method intersect_shape]一样,可以限制返回结果" -"的数量,以节省处理时间。" +"通过[Physics2DShapeQueryParameters]对象给出的形状与空间的检查交点。结果数组包" +"含一个形状与另一个形状相交的点的列表。像[method intersect_shape]一样,可以限" +"制返回结果的数量以节省处理时间。" #: doc/classes/Physics2DDirectSpaceState.xml:35 -#, fuzzy msgid "" "Checks the intersections of a shape, given through a " "[Physics2DShapeQueryParameters] object, against the space. If it collides " @@ -49743,20 +50192,20 @@ msgid "" "[code]rid[/code]: The intersecting object's [RID].\n" "[code]shape[/code]: The shape index of the colliding shape." msgstr "" -"检查通过[PhysicsShapeQueryParameters2D]对象给出的形状与空间的交点。如果它与一" -"个以上的形状发生碰撞,则选择最近的一个。如果该形状没有与任何东西相交,那么将" +"通过[Physics2DShapeQueryParameters]对象给出的形状与空间的检查交点。如果它与一" +"个以上的形状发生碰撞,则选择最近的一个。如果该形状没有与任何对象相交,那么将" "返回一个空字典。\n" -"[b]注意:[/b] 这个方法不考虑对象的[code]motion[/code]属性。返回的对象是一个包" -"含以下字段的字典。\n" -"[code]collider_id[/code]。碰撞对象的ID。\n" -"[code]linear_velocity[/code]。碰撞对象的速度[Vector2]。如果对象是一个" +"[b]注意:[/b] 这个方法不考虑对象的[code]motion[/code]属性。返回的对象是包含以" +"下字段的字典。\n" +"[code]collider_id[/code]:碰撞对象的ID。\n" +"[code]linear_velocity[/code]:碰撞物体的速度[Vector2]。如果对象是一个" "[Area2D],结果是[code](0, 0)[/code]。\n" -"[code]metadata[/code]。相交的形状的元数据。这个元数据与[method Object." -"get_meta]不同,它是用[method PhysicsServer2D.shape_set_data]设置的。\n" -"[code]normal[/code]。物体在交点处的表面法线。\n" -"[code]point[/code]。相交点。\n" -"[code]rid[/code]: 相交物体的[RID]。\n" -"[code]shape[/code]: 碰撞形状的形状索引。" +"[code]metadata[/code]:相交形状的元数据。这个元数据与[method Object.get_meta]" +"不同,它是用[method Physics2DServer.shape_set_data]设置的。\n" +"[code]normal[/code]:物体在交点处的表面法线。\n" +"[code]point[/code]:相交点。\n" +"[code]rid[/code]:相交物体的[RID]。\n" +"[code]shape[/code]:碰撞形状的形状索引。" #: doc/classes/Physics2DDirectSpaceState.xml:55 #, fuzzy @@ -49771,28 +50220,70 @@ msgid "" "Physics2DServer.shape_set_data].\n" "[code]rid[/code]: The intersecting object's [RID].\n" "[code]shape[/code]: The shape index of the colliding shape.\n" +"The number of intersections can be limited with the [code]max_results[/code] " +"parameter, to reduce the processing time.\n" "Additionally, the method can take an [code]exclude[/code] array of objects " "or [RID]s that are to be excluded from collisions, a [code]collision_mask[/" "code] bitmask representing the physics layers to check in, or booleans to " -"determine if the ray should collide with [PhysicsBody]s or [Area]s, " +"determine if the ray should collide with [PhysicsBody2D]s or [Area2D]s, " +"respectively.\n" +"[b]Note:[/b] [ConcavePolygonShape2D]s and [CollisionPolygon2D]s in " +"[code]Segments[/code] build mode are not solid shapes. Therefore, they will " +"not be detected." +msgstr "" +"检查一个点是否在任意实体形状内。点所处的形状会以数组的形式返回,该数组包含有" +"以下字段的字典:\n" +"[code]collider[/code]:碰撞的对象。\n" +"[code]collider_id[/code]:碰撞对象的ID。\n" +"[code]metadata[/code]:相交形状的元数据。这个元数据与[method Object.get_meta]" +"不同,是用[method Physics2DServer.shape_set_data]设置的。\n" +"[code]rid[/code]:相交物体的[RID]。\n" +"[code]shape[/code]:碰撞形状的形状索引。\n" +"此外,该方法可以接受一个[code]exclude[/code]数组,该数组中的对象或[RID]将被排" +"除在碰撞之外,[code]collision_mask[/code]位掩码表示要检查的物理层,或者布尔值" +"来确定射线是否应该分别与[PhysicsBody]或[Area]发生碰撞。\n" +"[b]注意:[/b] [ConcavePolygonShape2D]和[CollisionPolygon2D]在[code]Segments[/" +"code]构建模式中不是实体形状。因此,它们将不会被检测到。" + +#: doc/classes/Physics2DDirectSpaceState.xml:76 +#, fuzzy +msgid "" +"Checks whether a point is inside any solid shape, in a specific canvas layer " +"given by [code]canvas_instance_id[/code]. The shapes the point is inside of " +"are returned in an array containing dictionaries with the following fields:\n" +"[code]collider[/code]: The colliding object.\n" +"[code]collider_id[/code]: The colliding object's ID.\n" +"[code]metadata[/code]: The intersecting shape's metadata. This metadata is " +"different from [method Object.get_meta], and is set with [method " +"Physics2DServer.shape_set_data].\n" +"[code]rid[/code]: The intersecting object's [RID].\n" +"[code]shape[/code]: The shape index of the colliding shape.\n" +"The number of intersections can be limited with the [code]max_results[/code] " +"parameter, to reduce the processing time.\n" +"Additionally, the method can take an [code]exclude[/code] array of objects " +"or [RID]s that are to be excluded from collisions, a [code]collision_mask[/" +"code] bitmask representing the physics layers to check in, or booleans to " +"determine if the ray should collide with [PhysicsBody2D]s or [Area2D]s, " "respectively.\n" "[b]Note:[/b] [ConcavePolygonShape2D]s and [CollisionPolygon2D]s in " "[code]Segments[/code] build mode are not solid shapes. Therefore, they will " "not be detected." msgstr "" -"检查一个点是否在任何形状内。点所处的形状将以一个数组的形式返回,该数组包含有" -"以下字段的字典。\n" -"[code]collider[/code]。碰撞的对象。\n" -"[code]collider_id[/code]。碰撞对象的ID。\n" -"[code]metadata[/code]。相交形状的元数据。这个元数据与[method Object.get_meta]" -"不同,可以用[method PhysicsServer2D.shape_set_data]来设置。\n" -"[code]rid[/code]。相交物体的[RID]。\n" -"[code]shape[/code]。碰撞形状的形状索引。\n" +"检查一个点是否在任意实体形状内。点所处的形状会以数组的形式返回,该数组包含有" +"以下字段的字典:\n" +"[code]collider[/code]:碰撞的对象。\n" +"[code]collider_id[/code]:碰撞对象的ID。\n" +"[code]metadata[/code]:相交形状的元数据。这个元数据与[method Object.get_meta]" +"不同,是用[method Physics2DServer.shape_set_data]设置的。\n" +"[code]rid[/code]:相交物体的[RID]。\n" +"[code]shape[/code]:碰撞形状的形状索引。\n" "此外,该方法可以接受一个[code]exclude[/code]数组,该数组中的对象或[RID]将被排" -"除在碰撞之外,一个[code]collision_mask[/code]位掩码代表要检查的物理层,或者布" -"尔值来确定射线是否应该分别与[PhysicsBody2D]或[Area2D]碰撞。" +"除在碰撞之外,[code]collision_mask[/code]位掩码表示要检查的物理层,或者布尔值" +"来确定射线是否应该分别与[PhysicsBody]或[Area]发生碰撞。\n" +"[b]注意:[/b] [ConcavePolygonShape2D]和[CollisionPolygon2D]在[code]Segments[/" +"code]构建模式中不是实体形状。因此,它们将不会被检测到。" -#: doc/classes/Physics2DDirectSpaceState.xml:86 +#: doc/classes/Physics2DDirectSpaceState.xml:96 #, fuzzy msgid "" "Intersects a ray in a given space. The returned object is a dictionary with " @@ -49811,25 +50302,24 @@ msgid "" "Additionally, the method can take an [code]exclude[/code] array of objects " "or [RID]s that are to be excluded from collisions, a [code]collision_mask[/" "code] bitmask representing the physics layers to check in, or booleans to " -"determine if the ray should collide with [PhysicsBody]s or [Area]s, " +"determine if the ray should collide with [PhysicsBody2D]s or [Area2D]s, " "respectively." msgstr "" -"在一个给定的空间中与一条射线相交。返回的对象是一个具有下列字段的字典。\n" -"[code]collider[/code]。碰撞的对象。\n" -"[code]collider_id[/code]。碰撞对象的ID。\n" -"[code]metadata[/code]。相交形状的元数据。这个元数据与[method Object.get_meta]" -"不同,可以用[method PhysicsServer2D.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]或[Area2D]发生碰撞。" +"在给定的空间中与一条射线相交。返回的对象是具有下列字段的字典:\n" +"[code]collider[/code]:碰撞的对象。\n" +"[code]collider_id[/code]:碰撞对象的ID。\n" +"[code]metadata[/code]:相交形状的元数据。这个元数据与[method Object.get_meta]" +"不同,可以用[method Physics2DServer.shape_set_data]来设置。\n" +"[code]normal[/code]:物体在交点处的表面法线。\n" +"[code]position[/code]:相交点。\n" +"[code]rid[/code]:相交物体的[RID]。\n" +"[code]形状[/code]:碰撞形状的形状索引。\n" +"如果射线没有与任何物体相交,那么将返回空的字典。\n" +"此外,该方法可以接受一个[code]exclude[/code]对象或[RID]数组,该数组将被排除在" +"碰撞之外,[code]collision_mask[/code]位掩码表示要检查的物理层,或者布尔值来确" +"定射线是否应该分别与[PhysicsBody]或[Area]发生碰撞。" -#: doc/classes/Physics2DDirectSpaceState.xml:103 -#, fuzzy +#: doc/classes/Physics2DDirectSpaceState.xml:113 msgid "" "Checks the intersections of a shape, given through a " "[Physics2DShapeQueryParameters] object, against the space.\n" @@ -49846,29 +50336,28 @@ msgid "" "The number of intersections can be limited with the [code]max_results[/code] " "parameter, to reduce the processing time." msgstr "" -"检查通过[PhysicsShapeQueryParameters2D]对象给出的形状与空间的交点。\n" -"[b]注意:[/b] 这个方法不考虑对象的[code]motion[/code]属性。相交的形状会以一个" -"数组的形式返回,该数组包含有以下字段的字典。\n" -"[code]collider[/code]。碰撞的对象。\n" -"[code]collider_id[/code]。碰撞对象的ID。\n" -"[code]metadata[/code]。相交形状的元数据。这个元数据与[method Object.get_meta]" -"不同,可以用[method PhysicsServer2D.shape_set_data]来设置。\n" -"[code]rid[/code]。相交物体的[RID]。\n" -"[code]shape[/code]。碰撞形状的形状索引。\n" +"通过[Physics2DShapeQueryParameters]对象给出的形状与空间的检查交点。\n" +"[b]注意:[/b] 这个方法不考虑对象的[code]motion[/code]属性。相交的形状会以数组" +"的形式返回,该数组包含有以下字段的字典:\n" +"[code]collider[/code]:碰撞的对象。\n" +"[code]collider_id[/code]:碰撞对象的ID。\n" +"[code]metadata[/code]:相交形状的元数据。这个元数据与[method Object.get_meta]" +"不同,是用[method Physics2DServer.shape_set_data]设置的。\n" +"[code]rid[/code]:相交物体的[RID]。\n" +"[code]shape[/code]:碰撞形状的形状索引。\n" "可以用[code]max_results[/code]参数限制相交的数量,以减少处理时间。" #: doc/classes/Physics2DServer.xml:4 msgid "Server interface for low-level 2D physics access." -msgstr "用于底层2D物理学访问的服务器接口。" +msgstr "用于底层2D物理访问服务的接口。" #: doc/classes/Physics2DServer.xml:7 -#, fuzzy msgid "" "Physics2DServer is the server responsible for all 2D physics. It can create " "many kinds of physics objects, but does not insert them on the node tree." msgstr "" -"PhysicsServer2D是负责所有2D物理的服务器。它可以创建多种物理对象,但不会将它们" -"插入节点树。" +"Physics2DServer 是负责所有 2D 物理的服务。它可以创建多种物理对象,但不会将它" +"们插入到节点树中。" #: doc/classes/Physics2DServer.xml:19 doc/classes/PhysicsServer.xml:19 msgid "" @@ -49897,6 +50386,8 @@ msgid "" "to a space using [method area_set_space] to use the created [Area2D] in the " "physics world." msgstr "" +"创建一个 [Area2D]。用这个方法创建了一个[Area2D]后,使用[method " +"area_set_space]将其分配给一个空间,以便在物理世界中使用创建的[Area2D]。" #: doc/classes/Physics2DServer.xml:60 doc/classes/Physics2DServer.xml:372 #: doc/classes/PhysicsServer.xml:47 doc/classes/PhysicsServer.xml:362 @@ -50017,15 +50508,15 @@ msgid "" "two are forces, the impulse clears itself after being applied." msgstr "" "在施加的力和扭矩上添加一个有作用点的力。与[method body_apply_impulse]一样,力" -"和物体原点的偏移量都在全局坐标中。力与脉冲的不同之处在于,虽然两者都是力,但" -"脉冲在被施加后会自动清除。" +"和物体原点的偏移量都在全局坐标中。力与冲量的不同之处在于,虽然两者都是力,但" +"冲量在被施加后会自动清除。" #: doc/classes/Physics2DServer.xml:259 doc/classes/PhysicsServer.xml:259 msgid "" "Adds a shape to the body, along with a transform matrix. Shapes are usually " "referenced by their index, so you should track which shape has a given index." msgstr "" -"添加一个形状到身体,以及一个变换矩阵。形状通常通过它们的索引来引用,因此您应" +"添加一个形状到物体,以及一个变换矩阵。形状通常通过它们的索引来引用,因此您应" "该跟踪哪个形状具有给定的索引。" #: doc/classes/Physics2DServer.xml:282 @@ -50057,15 +50548,16 @@ msgid "Returns the continuous collision detection mode." msgstr "返回连续碰撞检测模式。" #: doc/classes/Physics2DServer.xml:351 -#, fuzzy -msgid "Returns the [Physics2DDirectBodyState] of the body." -msgstr "返回body的[PhysicsDirectBodyState2D]。" +msgid "" +"Returns the [Physics2DDirectBodyState] of the body. Returns [code]null[/" +"code] if the body is destroyed or removed from the physics space." +msgstr "" #: doc/classes/Physics2DServer.xml:358 doc/classes/PhysicsServer.xml:348 msgid "" "Returns the maximum contacts that can be reported. See [method " "body_set_max_contacts_reported]." -msgstr "返回可报告的最大联系数。参阅[method body_set_max_contacts_reported]。" +msgstr "返回可报告的最大接触数。参阅[method body_set_max_contacts_reported]。" #: doc/classes/Physics2DServer.xml:365 doc/classes/PhysicsServer.xml:355 msgid "Returns the body mode." @@ -50153,8 +50645,8 @@ msgid "" "Sets the function used to calculate physics for an object, if that object " "allows it (see [method body_set_omit_force_integration])." msgstr "" -"设置用于计算物体物理学的函数,如果该物体允许的话(见[method " -"body_set_omit_force_integration])。" +"设置用于物体物理运算的函数,如果该物体允许的话,参阅[method " +"body_set_omit_force_integration]。" #: doc/classes/Physics2DServer.xml:500 doc/classes/PhysicsServer.xml:519 msgid "" @@ -50223,19 +50715,19 @@ msgid "" "Note that the method doesn't take effect immediately. The state will change " "on the next physics frame." msgstr "" +"使用 [enum BodyState] 常量之一设置物体状态。\n" +"请注意,该方法不会立即生效。状态将在下一个物理帧发生变化。" #: doc/classes/Physics2DServer.xml:603 -#, fuzzy msgid "" "Returns [code]true[/code] if a collision would result from moving in the " "given direction from a given point in space. Margin increases the size of " "the shapes involved in the collision detection. [Physics2DTestMotionResult] " "can be passed to return additional information in." msgstr "" -"如果从空间中的给定点向给定方向移动会导致碰撞,则返回[code]true[/code]。Margin" -"增加参与碰撞检测的形状的大小。可以通过[PhysicsTestMotionResult2D]来返回额外的" -"信息。设置体中形状的元数据。这个元数据与[方法Object.set_meta]不同,可以在形状" -"查询中检索到。" +"如果从空间中的给定点沿给定方向移动会导致碰撞,则返回 [code]true[/code]。边距" +"增加了碰撞检测中涉及的形状的大小。 通过返回[Physics2DTestMotionResult] 可以附" +"加信息。" #: doc/classes/Physics2DServer.xml:633 msgid "" @@ -50245,27 +50737,23 @@ msgstr "" "在两个体之间创建一个阻尼弹簧关节。如果没有指定,第二个体将被假定为关节本身。" #: doc/classes/Physics2DServer.xml:641 -#, fuzzy msgid "Returns the value of a damped spring joint parameter." -msgstr "返回关节参数的值。" +msgstr "返回阻尼弹簧关节参数值。" #: doc/classes/Physics2DServer.xml:650 -#, fuzzy msgid "" "Sets a damped spring joint parameter. See [enum DampedStringParam] for a " "list of available parameters." -msgstr "" -"设置一个阻尼弹簧关节参数。参阅[enum DampedSpringParam]获取可用参数列表。" +msgstr "设置阻尼弹簧关节参数。参阅[enum DampedStringParam]获取可用参数的列表。" #: doc/classes/Physics2DServer.xml:657 -#, fuzzy msgid "" "Destroys any of the objects created by Physics2DServer. If the [RID] passed " "is not one of the objects that can be created by Physics2DServer, an error " "will be sent to the console." msgstr "" -"销毁任何由PhysicsServer2D创建的对象。如果传入的[RID]不是PhysicsServer2D可以创" -"建的对象之一,则会向控制台发送一个错误。" +"销毁由 Physics2DServer 创建的任何对象。如果传递的 [RID] 不是 Physics2DServer " +"可以创建的对象之一,则会向控制台发送错误。" #: doc/classes/Physics2DServer.xml:664 msgid "" @@ -50314,6 +50802,8 @@ msgid "" "CPU power, which can decrease performance. The default value is [code]8[/" "code]." msgstr "" +"设置计算碰撞体速度的迭代次数。迭代次数越多,碰撞就越准确。但是,更大量的迭代" +"需要更多的 CPU 能力,这会降低性能。默认值为 [code]8[/code]。" #: doc/classes/Physics2DServer.xml:749 doc/classes/PhysicsServer.xml:859 msgid "Returns the shape data." @@ -50342,13 +50832,11 @@ msgstr "" "一个主体。" #: doc/classes/Physics2DServer.xml:777 -#, fuzzy msgid "" "Returns the state of a space, a [Physics2DDirectSpaceState]. This object can " "be used to make collision/intersection queries." msgstr "" -"返回一个空间的状态,一个[PhysicsDirectSpaceState2D]。这个对象可以用来进行碰" -"撞/交集查询。" +"返回空间的状态,[Physics2DDirectSpaceState]。此对象可用于进行碰撞/相交查询。" #: doc/classes/Physics2DServer.xml:785 doc/classes/PhysicsServer.xml:912 msgid "Returns the value of a space parameter." @@ -50550,8 +51038,8 @@ msgid "" "far. This way, many overlapping areas can combine their physics to make " "interesting effects." msgstr "" -"这个区域把它的重力/阻尼加到迄今为止已经计算过的任何东西上。这样一来,许多重叠" -"的区域可以结合它们的物理学来做出有趣的效果。" +"此区域把它的重力/阻尼加到目前已经计算过的对象上。这样一来,许多重叠的区域可以" +"结合它们的物理运算来产生有趣的效果。" #: doc/classes/Physics2DServer.xml:892 doc/classes/PhysicsServer.xml:1206 msgid "" @@ -50593,7 +51081,7 @@ msgid "" "Constant for rigid bodies in character mode. In this mode, a body can not " "rotate, and only its linear velocity is affected by physics." msgstr "" -"角色模式下的刚体的常数。在这种模式下,物体不能旋转,只有它的线速度受物理学影" +"角色模式下刚体的常数。在这种模式下,物体不能旋转,只有它的线速度受物理运算影" "响。" #: doc/classes/Physics2DServer.xml:913 doc/classes/PhysicsServer.xml:1227 @@ -50646,7 +51134,7 @@ msgstr "常数,用于使物体沉睡/唤醒,或得到它是否在沉睡。" #: doc/classes/Physics2DServer.xml:949 doc/classes/PhysicsServer.xml:1260 msgid "Constant to set/get whether the body can sleep." -msgstr "常数,用于设置/获取身体是否可以沉睡。" +msgstr "常量,用于设置/获取物体是否可以休眠。" #: doc/classes/Physics2DServer.xml:952 msgid "Constant to create pin joints." @@ -50731,21 +51219,15 @@ msgid "Parameters to be sent to a 2D shape physics query." msgstr "要发送到2D形状物理查询的参数。" #: doc/classes/Physics2DShapeQueryParameters.xml:7 -#, fuzzy msgid "" "This class contains the shape and other parameters for 2D intersection/" "collision queries." -msgstr "" -"这个类包含二维交集/碰撞查询的形状和其他参数。参阅" -"[PhysicsShapeQueryResult2D]。" +msgstr "此类包含用于 2D 相交/碰撞查询的形状和其他参数。" #: doc/classes/Physics2DShapeQueryParameters.xml:16 -#, fuzzy msgid "" "Sets the [Shape2D] that will be used for collision/intersection queries." -msgstr "" -"返回一个空间的状态,一个[PhysicsDirectSpaceState2D]。这个对象可以用来进行碰" -"撞/交集查询。" +msgstr "设置用于碰撞/相交查询的 [Shape2D]。" #: doc/classes/Physics2DShapeQueryParameters.xml:22 msgid "If [code]true[/code], the query will take [Area2D]s into account." @@ -50764,6 +51246,9 @@ msgid "" "physics_introduction.html#collision-layers-and-masks]Collision layers and " "masks[/url] in the documentation for more information." msgstr "" +"查询将考虑的物理层(作为位掩码)。有关更多信息,请参阅文档中的 [url=https://" +"docs.godotengine.org/zh_CN/stable/tutorials/physics/physics_introduction." +"html#collision-layers-and-masks]碰撞层和掩码[/url]。" #: doc/classes/Physics2DShapeQueryParameters.xml:31 #: doc/classes/PhysicsShapeQueryParameters.xml:31 @@ -50783,7 +51268,7 @@ msgstr "正在查询的形状的运动。" #: doc/classes/Physics2DShapeQueryParameters.xml:40 #: doc/classes/PhysicsShapeQueryParameters.xml:37 msgid "The queried shape's [RID]. See also [method set_shape]." -msgstr "" +msgstr "查询形状的 [RID]。另见[method set_shape]。" #: doc/classes/Physics2DShapeQueryParameters.xml:43 #: doc/classes/PhysicsShapeQueryParameters.xml:40 @@ -50795,11 +51280,10 @@ msgid "Base class for all objects affected by physics in 3D space." msgstr "在3D空间中受物理影响的所有对象的基类。" #: doc/classes/PhysicsBody.xml:7 -#, fuzzy msgid "" "PhysicsBody is an abstract base class for implementing a physics body. All " "*Body types inherit from it." -msgstr "PhysicsBody3D是一个实现物理体的抽象基类。所有*Body类型都继承自它。" +msgstr "PhysicsBody 是用于实现物理体的抽象基类。所有 *Body 类型都继承自它。" #: doc/classes/PhysicsBody.xml:17 doc/classes/PhysicsBody2D.xml:17 #: doc/classes/SoftBody.xml:17 @@ -50831,31 +51315,25 @@ msgstr "" "PhysicsBody2D是一个用于实现物理实体的抽象基类。所有*Body2D类型都继承自它。" #: doc/classes/PhysicsBody2D.xml:37 -#, fuzzy msgid "" "Both collision_layer and collision_mask. Returns collision_layer when " "accessed. Updates collision_layer and collision_mask when modified." -msgstr "" -"[member collision_layer]和[member collision_mask]。当访问时返回[member " -"collision_layer]。修改后更新[member collision_layer]和[member " -"collision_mask]。" +msgstr "碰撞层和碰撞掩码。访问时返回碰撞层。修改时更新碰撞层和碰撞掩码。" #: doc/classes/PhysicsDirectBodyState.xml:4 -#, fuzzy msgid "Direct access object to a physics body in the [PhysicsServer]." -msgstr "在[PhysicsServer2D]中直接访问物理体。" +msgstr "直接访问[PhysicsServer]中的物理体的对象。" #: doc/classes/PhysicsDirectBodyState.xml:7 -#, fuzzy msgid "" "Provides direct access to a physics body in the [PhysicsServer], allowing " "safe changes to physics properties. This object is passed via the direct " "state callback of rigid/character bodies, and is intended for changing the " "direct state of that body. See [method RigidBody._integrate_forces]." msgstr "" -"提供对[PhysicsServer2D]中的物理体的直接访问,允许安全地改变物理属性。这个对象" -"是通过刚性/字符体的直接状态回调传递的,目的是为了改变该体的直接状态。参阅" -"[method RigidBody2D._integrate_forces]。" +"提供对 [PhysicsServer] 中物理实体的直接访问,允许安全更改物理属性。该对象通过" +"刚体/角色物体的直接状态回调传递,直接改变该物体的状态。参阅 [method " +"RigidBody._integrate_forces]。" #: doc/classes/PhysicsDirectBodyState.xml:18 msgid "" @@ -50885,9 +51363,9 @@ msgid "" "position uses the rotation of the global coordinate system, but is centered " "at the object's origin." msgstr "" -"对物体施加一个有作用点的冲量。冲量是时间无关的! 在每一帧中施加一个脉冲将产生" -"一个与帧速率相关的力。出于这个原因,它应该只在模拟一次性冲击时使用。该位置使" -"用全局坐标系的旋转,但以物体的原点为中心。" +"对物体施加一个有作用点的冲量。冲量是时间无关的! 在每一帧中施加冲量将产生一个" +"与帧速率相关的力。出于这个原因,它应该只在模拟一次性冲击时使用。该位置使用全" +"局坐标系的旋转,但以物体的原点为中心。" #: doc/classes/PhysicsDirectBodyState.xml:57 msgid "" @@ -50903,33 +51381,30 @@ msgid "Returns the collider object." msgstr "返回碰撞对象。" #: doc/classes/PhysicsDirectBodyState.xml:105 -#, fuzzy msgid "" "Returns the number of contacts this body has with other bodies.\n" "[b]Note:[/b] By default, this returns 0 unless bodies are configured to " "monitor contacts. See [member RigidBody.contact_monitor]." msgstr "" -"返回此实体与其他实体的联系数。\n" -"[b] 注意:[/b]默认情况下,除非主体被设为监视联系人,否则返回0。请参阅 " -"[member RigidBody2D.contact_monitor]。" +"返回此物体与其他物体的接触次数。\n" +"[b] 注意:[/b]默认情况下,除非物体被设为监视接触者,否则返回0。参阅 [member " +"RigidBody2D.contact_monitor]。" #: doc/classes/PhysicsDirectBodyState.xml:113 msgid "Impulse created by the contact. Only implemented for Bullet physics." msgstr "由接触产生的冲量。仅适用于子弹物理。" #: doc/classes/PhysicsDirectSpaceState.xml:4 -#, fuzzy msgid "Direct access object to a space in the [PhysicsServer]." -msgstr "直接访问[PhysicsServer2D]中的一个空间。" +msgstr "直接访问[PhysicsServer]中空间的对象。" #: doc/classes/PhysicsDirectSpaceState.xml:7 -#, fuzzy msgid "" "Direct access object to a space in the [PhysicsServer]. It's used mainly to " "do queries against objects and areas residing in a given space." msgstr "" -"直接访问[PhysicsServer2D]中的一个空间。它主要用于对给定空间中的对象和区域进行" -"查询。" +"直接访问[PhysicsServer]中空间的对象。它主要用于对驻留在特定空间的对象和区域进" +"行查询。" #: doc/classes/PhysicsDirectSpaceState.xml:19 msgid "" @@ -50945,9 +51420,15 @@ msgid "" "inside of, will be ignored. Use [method collide_shape] to determine the " "[Shape]s that the shape is already colliding with." msgstr "" +"检查 [Shape] 可以移动多远而不会发生碰撞。查询的所有参数,包括形状,都是通过 " +"[PhysicsShapeQueryParameters] 对象提供的。\n" +"返回一个包含运动的安全和不安全比例(0 到 1 之间)的数组。安全比例是在没有碰撞" +"的情况下可以进行的运动的最大比例。不安全比例是碰撞必须移动的距离的最小部分。" +"如果未检测到碰撞,将返回 [code][1.0, 1.0][/code] 的结果。\n" +"[b]注意:[/b] 任何已经碰撞的[Shape2D](比如内部的)会被忽略。使用 [method " +"collide_shape] 确定形状已经碰撞的 [Shape]。" #: doc/classes/PhysicsDirectSpaceState.xml:29 -#, fuzzy msgid "" "Checks the intersections of a shape, given through a " "[PhysicsShapeQueryParameters] object, against the space. The resulting array " @@ -50955,12 +51436,11 @@ msgid "" "[method intersect_shape], the number of returned results can be limited to " "save processing time." msgstr "" -"通过[PhysicsShapeQueryParameters2D]对象对空间检查形状的交集。生成的数组包含一" -"个与另一个形状相交的点列表。与[method intersect_shape]一样,可以限制返回结果" -"的数量,以节省处理时间。" +"通过[PhysicsShapeQueryParameters]对象给出的形状与空间检查交点。结果数组包含一" +"个形状与另一个形状相交的点的列表。与[method intersect_shape]一样,可以限制返" +"回结果的数量,以节省处理时间。" #: doc/classes/PhysicsDirectSpaceState.xml:36 -#, fuzzy msgid "" "Checks the intersections of a shape, given through a " "[PhysicsShapeQueryParameters] object, against the space. If it collides with " @@ -50976,20 +51456,49 @@ msgid "" "If the shape did not intersect anything, then an empty dictionary is " "returned instead." msgstr "" -"检查形状的交叉点,通过[PhysicsShapeQueryParameters3D]对象,针对空间。如果它与" -"多个形状碰撞,则选择最近的一个。返回的对象是一个包含以下字段的字典:\n" +"检查通过[PhysicsShapeQueryParameters]对象给出的形状与空间的交点。如果它与一个" +"以上的形状发生碰撞,则选择最近的。返回的对象是包含以下字段的字典:\n" "[code]collider_id[/code]:碰撞对象的ID。\n" -"[code]linear_velocity[/code]:碰撞对象的速度[Vector3]。如果对象是一个" -"[Area3D],结果是[code](0,0,0)[/code]。\n" +"[code]linear_velocity[/code]:碰撞对象的速度[Vector3]。如果对象是一个[Area]," +"结果是[code](0, 0, 0)[/code]。\n" "[code]normal[/code]:物体在交点处的表面法线。\n" -"[code]point[/code]:交点。\n" -"[code]rid[/code]:相交对象的[rid]。\n" -"[code]shape[/code]:碰撞形状的形状指数。\n" -"如果形状没有与任何东西相交,则返回一个空字典。" +"[code]点[/code]:相交点。\n" +"[code]rid[/code]:相交物体的[RID]。\n" +"[code]shape[/code]:碰撞形状的形状索引。\n" +"如果该形状没有与任何物体相交,那么将返回空的字典。" #: doc/classes/PhysicsDirectSpaceState.xml:55 #, fuzzy msgid "" +"Checks whether a point is inside any solid shape. The shapes the point is " +"inside of are returned in an array containing dictionaries with the " +"following fields:\n" +"[code]collider[/code]: The colliding object.\n" +"[code]collider_id[/code]: The colliding object's ID.\n" +"[code]rid[/code]: The intersecting object's [RID].\n" +"[code]shape[/code]: The shape index of the colliding shape.\n" +"The number of intersections can be limited with the [code]max_results[/code] " +"parameter, to reduce the processing time.\n" +"Additionally, the method can take an [code]exclude[/code] array of objects " +"or [RID]s that are to be excluded from collisions, a [code]collision_mask[/" +"code] bitmask representing the physics layers to check in, or booleans to " +"determine if the ray should collide with [PhysicsBody]s or [Area]s, " +"respectively." +msgstr "" +"在给定的空间中与一条射线相交。返回的对象是具有下列字段的字典:\n" +"[code]collider[/code]:碰撞的对象。\n" +"[code]collider_id[/code]:碰撞对象的ID。\n" +"[code]normal[/code]:物体在相交点的表面法线。\n" +"[code]position[/code]:交叉点。\n" +"[code]rid[/code]:相交物体的[RID]。\n" +"[code]形状[/code]:碰撞形状的形状索引。\n" +"如果射线没有与任何物体相交,那么将返回空的字典。\n" +"此外,该方法可以接受一个[code]exclude[/code]对象或[RID]数组,该数组将被排除在" +"碰撞之外,[code]collision_mask[/code]位掩码表示要检查的物理层,或者布尔值来确" +"定射线是否应该分别与[PhysicsBody]或[Area]发生碰撞。" + +#: doc/classes/PhysicsDirectSpaceState.xml:73 +msgid "" "Intersects a ray in a given space. The returned object is a dictionary with " "the following fields:\n" "[code]collider[/code]: The colliding object.\n" @@ -51006,20 +51515,19 @@ msgid "" "determine if the ray should collide with [PhysicsBody]s or [Area]s, " "respectively." msgstr "" -"在一个给定的空间中与一条射线相交。返回的对象是一个具有下列字段的字典。\n" -"[code]collider[/code]。碰撞的对象。\n" -"[code]collider_id[/code]。碰撞对象的ID。\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]位掩码代表要检查的物理层,或者布" -"尔值来确定射线是否应该分别与[PhysicsBody3D]或[Area3D]发生碰撞。" +"在给定的空间中与一条射线相交。返回的对象是具有下列字段的字典:\n" +"[code]collider[/code]:碰撞的对象。\n" +"[code]collider_id[/code]:碰撞对象的ID。\n" +"[code]normal[/code]:物体在相交点的表面法线。\n" +"[code]position[/code]:交叉点。\n" +"[code]rid[/code]:相交物体的[RID]。\n" +"[code]形状[/code]:碰撞形状的形状索引。\n" +"如果射线没有与任何物体相交,那么将返回空的字典。\n" +"此外,该方法可以接受一个[code]exclude[/code]对象或[RID]数组,该数组将被排除在" +"碰撞之外,[code]collision_mask[/code]位掩码表示要检查的物理层,或者布尔值来确" +"定射线是否应该分别与[PhysicsBody]或[Area]发生碰撞。" -#: doc/classes/PhysicsDirectSpaceState.xml:71 -#, fuzzy +#: doc/classes/PhysicsDirectSpaceState.xml:89 msgid "" "Checks the intersections of a shape, given through a " "[PhysicsShapeQueryParameters] object, against the space. The intersected " @@ -51032,23 +51540,22 @@ msgid "" "The number of intersections can be limited with the [code]max_results[/code] " "parameter, to reduce the processing time." msgstr "" -"检查形状的交叉点,通过[PhysicsShapeQueryParameters3D]对象,针对空间。相交形状" -"在一个包含以下字段的字典数组中返回:\n" -"[code]collider[/code]:碰撞对象。\n" +"通过[PhysicsShapeQueryParameters]对象给出的形状与空间检查交点。相交的形状会以" +"数组的形式返回,该数组包含有以下字段的字典:\n" +"[code]collider[/code]:碰撞的对象。\n" "[code]collider_id[/code]:碰撞对象的ID。\n" -"[code]rid[/code]:相交对象的[rid]。\n" -"[code]shape[/code]:碰撞形状的形状指数。\n" -"可以使用[code]max_results[/code]参数限制交集的数量,以减少处理时间。" +"[code]rid[/code]:相交物体的[RID]。\n" +"[code]shape[/code]:碰撞形状的形状索引。\n" +"可以用[code]max_results[/code]参数限制相交的数量,以减少处理时间。" #: doc/classes/PhysicsMaterial.xml:4 msgid "A material for physics properties." -msgstr "具有物理学属性的材质。" +msgstr "具有物理属性的材质。" #: doc/classes/PhysicsMaterial.xml:7 -#, fuzzy msgid "" "Provides a means of modifying the collision properties of a [PhysicsBody]." -msgstr "提供一种方法来修改[PhysicsBody3D]的碰撞属性。" +msgstr "提供了一种修改[PhysicsBody]的碰撞属性的方法。" #: doc/classes/PhysicsMaterial.xml:15 msgid "" @@ -51087,13 +51594,12 @@ msgid "Server interface for low-level physics access." msgstr "用于低级物理访问的服务器接口。" #: doc/classes/PhysicsServer.xml:7 -#, fuzzy msgid "" "PhysicsServer is the server responsible for all 3D physics. It can create " "many kinds of physics objects, but does not insert them on the node tree." msgstr "" -"PhysicsServer3D是负责所有3D物理的服务器。它可以创建多种物理对象,但不能将它们" -"插入节点树。" +"PhysicsServer是负责所有3D物理的服务。它可以创建许多种类的物理对象,但不会在节" +"点树上插入这些对象。" #: doc/classes/PhysicsServer.xml:40 msgid "Creates an [Area]." @@ -51130,7 +51636,7 @@ msgstr "" msgid "" "Gives the body a push at a [code]position[/code] in the direction of the " "[code]impulse[/code]." -msgstr "在[code]position[/code]impulse[code]脉冲方向推动物体[/code]。" +msgstr "在[code]position[/code]impulse[code]冲量方向推动物体[/code]。" #: doc/classes/PhysicsServer.xml:290 msgid "Gives the body a push to rotate it." @@ -51142,8 +51648,8 @@ msgid "" "BodyMode] constants, for the type of body created. Additionally, the body " "can be created in sleeping state to save processing time." msgstr "" -"创建一个物理实体。对于创建的实体类型,第一个参数可以是[enum BodyMode]常量中的" -"任何值。此外,身体可以在睡眠状态下创建,以节省处理时间。" +"创建物理体。对于创建的物体类型,第一个参数可以是[enum BodyMode]常量中的任何" +"值。此外,物体可以在休眠状态下创建,以节省处理时间。" #: doc/classes/PhysicsServer.xml:327 msgid "" @@ -51155,8 +51661,10 @@ msgstr "" #: doc/classes/PhysicsServer.xml:335 #, fuzzy -msgid "Returns the [PhysicsDirectBodyState] of the body." -msgstr "返回body的[PhysicsDirectBodyState2D]。" +msgid "" +"Returns the [PhysicsDirectBodyState] of the body. Returns [code]null[/code] " +"if the body is destroyed or removed from the physics space." +msgstr "返回指定属性的初始值。如果属性不存在,则返回[code]null[/code]。" #: doc/classes/PhysicsServer.xml:370 msgid "" @@ -51210,16 +51718,13 @@ msgid "Sets a body state (see [enum BodyState] constants)." msgstr "设置主体状态(请参阅[enum BodyState]常量)。" #: doc/classes/PhysicsServer.xml:608 -#, fuzzy msgid "" "Returns [code]true[/code] if a collision would result from moving in the " "given direction from a given point in space. [PhysicsTestMotionResult] can " "be passed to return additional information in." msgstr "" -"如果从空间中的给定点向给定方向移动会导致碰撞,则返回[code]true[/code]。Margin" -"增加参与碰撞检测的形状的大小。可以通过[PhysicsTestMotionResult2D]来返回额外的" -"信息。设置体中形状的元数据。这个元数据与[方法Object.set_meta]不同,可以在形状" -"查询中检索到。" +"如果从空间的给定点向给定方向移动会导致碰撞,则返回[code]true[/code]。可以通过" +"[PhysicsTestMotionResult]来返回额外的信息。" #: doc/classes/PhysicsServer.xml:616 msgid "" @@ -51232,14 +51737,13 @@ msgid "" msgstr "设置圆锥体扭曲关节参数(请参阅[enum ConeTwistJointParam]常量)。" #: doc/classes/PhysicsServer.xml:632 -#, fuzzy msgid "" "Destroys any of the objects created by PhysicsServer. If the [RID] passed is " "not one of the objects that can be created by PhysicsServer, an error will " "be sent to the console." msgstr "" -"销毁任何由PhysicsServer2D创建的对象。如果传入的[RID]不是PhysicsServer2D可以创" -"建的对象之一,则会向控制台发送一个错误。" +"销毁由 PhysicsServer 创建的任何对象。如果传递的 [RID] 不是 PhysicsServer 可以" +"创建的对象之一,则会向控制台发送错误。" #: doc/classes/PhysicsServer.xml:641 msgid "" @@ -51305,19 +51809,16 @@ msgid "Creates a [SliderJoint]." msgstr "创建一个 [SliderJoint]关节。" #: doc/classes/PhysicsServer.xml:768 -#, fuzzy msgid "Gets the priority value of the Joint." -msgstr "获取Joint3D的优先级值。" +msgstr "获取关节的优先级值。" #: doc/classes/PhysicsServer.xml:775 -#, fuzzy msgid "Returns the type of the Joint." -msgstr "返回Joint3D的类型。" +msgstr "返回关节的类型。" #: doc/classes/PhysicsServer.xml:783 -#, fuzzy msgid "Sets the priority value of the Joint." -msgstr "设置Joint3D的优先级值。" +msgstr "设置关节的优先级值。" #: doc/classes/PhysicsServer.xml:790 msgid "" @@ -51359,6 +51860,10 @@ msgid "" "[b]Note:[/b] Only has an effect when using the GodotPhysics engine, not the " "default Bullet physics engine." msgstr "" +"设置计算碰撞体速度的迭代次数。迭代次数越多,碰撞就越准确。但是,更大量的迭代" +"需要更多的 CPU 能力,这会降低性能。默认值为 [code]8[/code]。\n" +"[b]注意:[/b] 仅在使用 GodotPhysics 引擎时有效,而不是默认的 Bullet 物理引" +"擎。" #: doc/classes/PhysicsServer.xml:852 msgid "" @@ -51378,13 +51883,11 @@ msgid "Gets a slider_joint parameter (see [enum SliderJointParam] constants)." msgstr "获取slider_joint参数(请参阅[enum SliderJointParam]常量)。" #: doc/classes/PhysicsServer.xml:904 -#, fuzzy msgid "" "Returns the state of a space, a [PhysicsDirectSpaceState]. This object can " "be used to make collision/intersection queries." msgstr "" -"返回一个空间的状态,一个[PhysicsDirectSpaceState2D]。这个对象可以用来进行碰" -"撞/交集查询。" +"返回空间的状态,[PhysicsDirectSpaceState]。此对象可用于进行碰撞/相交查询。" #: doc/classes/PhysicsServer.xml:936 msgid "" @@ -51393,29 +51896,24 @@ msgid "" msgstr "设置空间参数的值。可用参数列表位于[enum SpaceParameter]常量上。" #: doc/classes/PhysicsServer.xml:942 -#, fuzzy msgid "The [Joint] is a [PinJoint]." -msgstr "[Joint3D]是一个[PinJoint3D]。" +msgstr "该[Joint] 是 [PinJoint]。" #: doc/classes/PhysicsServer.xml:945 -#, fuzzy msgid "The [Joint] is a [HingeJoint]." -msgstr "[Joint3D]是一个[HingeJoint3D]。" +msgstr "该 [Joint] 是 [HingeJoint]。" #: doc/classes/PhysicsServer.xml:948 -#, fuzzy msgid "The [Joint] is a [SliderJoint]." -msgstr "[Joint3D]是一个[SliderJoint3D]。" +msgstr "该 [Joint] 是 [SliderJoint]。" #: doc/classes/PhysicsServer.xml:951 -#, fuzzy msgid "The [Joint] is a [ConeTwistJoint]." -msgstr "[Joint3D]是一个[conetwitstjoint 3d]。" +msgstr "该 [Joint] 是 [ConeTwistJoint]。" #: doc/classes/PhysicsServer.xml:954 -#, fuzzy msgid "The [Joint] is a [Generic6DOFJoint]." -msgstr "[Joint3D]是一个[Generic6DOFJoint3D]。" +msgstr "该 [Joint] 是 [Generic6DOFJoint]。" #: doc/classes/PhysicsServer.xml:957 msgid "" @@ -51436,11 +51934,10 @@ msgstr "" "越高越强。" #: doc/classes/PhysicsServer.xml:965 -#, fuzzy msgid "" "If above 0, this value is the maximum value for an impulse that this Joint " "puts on its ends." -msgstr "如果大于0,则该值是该Joint3D在其末端施加的冲量的最大值。" +msgstr "如果大于0,这个值就是这个关节对其两端施加的冲量的最大值。" #: doc/classes/PhysicsServer.xml:971 msgid "The maximum rotation across the Hinge." @@ -51584,11 +52081,10 @@ msgid "Represents the size of the [enum SliderJointParam] enum." msgstr "表示[enum SliderJointParam]枚举的大小。" #: doc/classes/PhysicsServer.xml:1080 -#, fuzzy msgid "" "The ease with which the Joint twists, if it's too low, it takes more force " "to twist the joint." -msgstr "关节三维扭曲的难易程度,如果太低,扭曲关节需要更多的力。" +msgstr "关节扭曲的难易程度,如果它太低,则需要更多的力量来扭曲关节。" #: doc/classes/PhysicsServer.xml:1092 msgid "" @@ -51644,89 +52140,74 @@ msgid "" msgstr "如果[code]set[/code],则此轴上有一个以特定速度为目标的线性电机。" #: doc/classes/PhysicsServer.xml:1146 -#, fuzzy msgid "The [Shape] is a [PlaneShape]." -msgstr "[Shape3D]是一个[RayShape3D]。" +msgstr "该[Shape] 是 [PlaneShape]。" #: doc/classes/PhysicsServer.xml:1149 -#, fuzzy msgid "The [Shape] is a [RayShape]." -msgstr "[Shape3D]是一个[RayShape3D]。" +msgstr "该 [Shape] 是 [RayShape]。" #: doc/classes/PhysicsServer.xml:1152 -#, fuzzy msgid "The [Shape] is a [SphereShape]." -msgstr "[Shape3D]是一个[SphereShape3D]。" +msgstr "该 [Shape] 是一个 [SphereShape]。" #: doc/classes/PhysicsServer.xml:1155 -#, fuzzy msgid "The [Shape] is a [BoxShape]." -msgstr "[Shape3D]是一个[BoxShape3D]。" +msgstr "该 [Shape] 是一个 [BoxShape]。" #: doc/classes/PhysicsServer.xml:1158 -#, fuzzy msgid "The [Shape] is a [CapsuleShape]." -msgstr "[Shape3D]是一个[CapsuleShape3D]。" +msgstr "该 [Shape] 是 [CapsuleShape]。" #: doc/classes/PhysicsServer.xml:1161 -#, fuzzy msgid "The [Shape] is a [CylinderShape]." -msgstr "[Shape3D]是[CylinderShape3D]。" +msgstr "该 [Shape] 是 [CylinderShape]。" #: doc/classes/PhysicsServer.xml:1164 -#, fuzzy msgid "The [Shape] is a [ConvexPolygonShape]." -msgstr "[Shape3D]是[ConvexPolygonShape3D]。" +msgstr "该 [Shape] 是 [ConvexPolygonShape]。" #: doc/classes/PhysicsServer.xml:1167 -#, fuzzy msgid "The [Shape] is a [ConcavePolygonShape]." -msgstr "[Shape3D]是[ConcavePolygonShape3D]。" +msgstr "该 [Shape] 是 [ConcavePolygonShape]。" #: doc/classes/PhysicsServer.xml:1170 -#, fuzzy msgid "The [Shape] is a [HeightMapShape]." -msgstr "[Shape3D]是一个[highmapshape3d]。" +msgstr "该 [Shape] 是 [HeightMapShape]。" #: doc/classes/PhysicsShapeQueryParameters.xml:4 msgid "Parameters to be sent to a 3D shape physics query." msgstr "要发送到三维形状物理查询的参数。" #: doc/classes/PhysicsShapeQueryParameters.xml:7 -#, fuzzy msgid "" "This class contains the shape and other parameters for 3D intersection/" "collision queries." -msgstr "" -"此类包含三维相交/碰撞查询的形状和其他参数。另请参阅" -"[PhysicsShapeQueryResult3d]。" +msgstr "此类包含用于 3D 相交/碰撞查询的形状和其他参数。" #: doc/classes/PhysicsShapeQueryParameters.xml:16 -#, fuzzy msgid "Sets the [Shape] that will be used for collision/intersection queries." -msgstr "将用于填充纹理的[Gradient]。" +msgstr "设置将用于碰撞/相交查询的 [Shape]。" #: doc/classes/PhysicsShapeQueryParameters.xml:22 -#, fuzzy msgid "If [code]true[/code], the query will take [Area]s into account." -msgstr "如果[code]true[/code],查询将考虑[Area2D]。" +msgstr "如果[code]true[/code],查询将考虑[Area]。" #: doc/classes/PhysicsShapeQueryParameters.xml:25 -#, fuzzy msgid "If [code]true[/code], the query will take [PhysicsBody]s into account." -msgstr "如果[code]true[/code],查询将考虑[PhysicsBody2D]。" +msgstr "如果 [code]true[/code],则查询将考虑 [PhysicsBody]。" #: doc/classes/PinJoint.xml:4 -#, fuzzy msgid "Pin joint for 3D PhysicsBodies." -msgstr "三维形状的图钉关节。" +msgstr "用于 3D 物理体的钉关节。" #: doc/classes/PinJoint.xml:7 -#, fuzzy msgid "" "Pin joint for 3D rigid bodies. It pins 2 bodies (rigid or static) together. " "See also [Generic6DOFJoint]." -msgstr "三维刚体的图钉关节。将两个刚体(或静态)钉在一起。" +msgstr "" +"3D刚体的钉关节。它将两个物体(刚体或静态体)钉在一起。参阅" +"[Generic6DOFJoint]。" #: doc/classes/PinJoint.xml:30 doc/classes/PinJoint.xml:41 msgid "" @@ -51741,22 +52222,19 @@ msgid "" msgstr "被钉在一起的物体之间保持共速的力。越高,力越大。" #: doc/classes/PinJoint.xml:36 doc/classes/PinJoint.xml:47 -#, fuzzy msgid "" "If above 0, this value is the maximum value for an impulse that this Joint " "produces." -msgstr "如果大于0,这个值就是这个 Joint3D 产生的冲量的最大值。" +msgstr "如果大于0,这个值就是此关节产生的冲量的最大值。" #: doc/classes/PinJoint2D.xml:4 -#, fuzzy msgid "Pin Joint for 2D shapes." -msgstr "2D形状的图钉关节。" +msgstr "用于 2D 形状的钉关节。" #: doc/classes/PinJoint2D.xml:7 -#, fuzzy msgid "" "Pin Joint for 2D rigid bodies. It pins two bodies (rigid or static) together." -msgstr "用于二维刚体的图钉关节。它将两个物体(刚性的或静态的)钉在一起。" +msgstr "用于 2D 刚体的钉关节。它将两个物体钉在一起,刚体或静态体。" #: doc/classes/PinJoint2D.xml:15 msgid "" @@ -51812,6 +52290,8 @@ msgid "" "Returns the center of the plane.\n" "This method is deprecated, please use [method center] instead." msgstr "" +"返回平面的中心。\n" +"此方法已被废弃,请使用[method center]代替。" #: doc/classes/Plane.xml:65 msgid "" @@ -51924,7 +52404,6 @@ msgid "Class representing a planar [PrimitiveMesh]." msgstr "表示平面的类。" #: doc/classes/PlaneMesh.xml:7 -#, fuzzy msgid "" "Class representing a planar [PrimitiveMesh]. This flat mesh does not have a " "thickness. By default, this mesh is aligned on the X and Z axes; this " @@ -51935,12 +52414,16 @@ msgid "" "this, increase [member subdivide_depth] and [member subdivide_width] until " "you no longer notice UV jittering." msgstr "" -"表示平面的类。这个平面网格没有厚度。默认情况下,这个网格在X轴和Z轴上对齐;这种" -"默认的旋转不适合用于告示牌材质。对于告示牌材质,使用[QuadMesh]代替。" +"表示平面 [PrimitiveMesh] 的类。这个平面网格没有厚度。默认情况下,此网格在 X " +"轴和 Z 轴上对齐;此默认旋转不适合与广告牌材质一起使用。对于广告牌材质,请改" +"用 [QuadMesh]。\n" +"[b]注意:[/b] 当使用大纹理 [PlaneMesh](例如作为地板)时,你可能会偶然发现 " +"UV 抖动问题,具体取决于相机角度。要解决此问题,请增加 [member " +"subdivide_depth] 和 [member subdivide_width],直到你不再注意到 UV 抖动。" #: doc/classes/PlaneMesh.xml:16 msgid "Offset from the origin of the generated plane. Useful for particles." -msgstr "" +msgstr "从生成平面的原点偏移。对粒子有用。" #: doc/classes/PlaneMesh.xml:19 msgid "Size of the generated plane." @@ -51959,28 +52442,25 @@ msgid "Infinite plane shape for 3D collisions." msgstr "无限的平面形状,用于三维碰撞。" #: doc/classes/PlaneShape.xml:7 -#, fuzzy msgid "" "An infinite plane shape for 3D collisions. Note that the [Plane]'s normal " "matters; anything \"below\" the plane will collide with it. If the " "[PlaneShape] is used in a [PhysicsBody], it will cause colliding objects " "placed \"below\" it to teleport \"above\" the plane." msgstr "" -"用于三维碰撞的无限的平面形状。请注意,[Plane]的法线很重要;任何 \"低于\" 该平" -"面的物体都会与之发生碰撞。如果[WorldMarginShape3D]被用于[PhysicsBody3D],它将" -"导致放置在它 \"下面\" 的碰撞物体被传送到平面 \"上面\" 。" +"用于3D碰撞的无限的平面形状。请注意,[Plane]的法线很重要;任何 \"低于\" 该平面" +"的物体都会与它发生碰撞。如果[PlaneShape]被用于[PhysicsBody],它将导致放置在" +"它 \"下面\" 的碰撞物体被传送到 \"上面\" 的平面。" #: doc/classes/PlaneShape.xml:15 -#, fuzzy msgid "The [Plane] used by the [PlaneShape] for collision." -msgstr "[WorldMarginShape3D]用于碰撞的[Plane]平面。" +msgstr "[PlaneShape] 用于碰撞的 [Plane]。" #: doc/classes/PointMesh.xml:4 msgid "Mesh with a single Point primitive." msgstr "单点原始网格。" #: doc/classes/PointMesh.xml:7 -#, fuzzy msgid "" "The PointMesh is made from a single point. Instead of relying on triangles, " "points are rendered as a single rectangle on the screen with a constant " @@ -51994,20 +52474,21 @@ msgid "" "When using PointMeshes, properties that normally alter vertices will be " "ignored, including billboard mode, grow, and cull face." msgstr "" -"点网格是由一个点构成的。点不是依赖于三角形,而是在屏幕上以固定大小呈现为单个" -"矩形。它们的目的是与粒子系统一起使用,但也可以作为一种廉价的方法来渲染固定大" -"小的告示牌精灵(例如点云)。\n" -"pointmesh,必须与具有点大小的材质一起使用。点大小可以通过[code]POINT_SIZE[/" -"code]在着色器中访问,或者通过设置[member BaseMaterial3D]在[BaseMaterial3D]中" -"访问。和变量[member BaseMaterial3D.point_size]。\n" -"当使用pointmesh时,通常改变顶点的属性将被忽略,包括广告牌模式、增长和剔除面。" +"PointMesh是由单个的点构成。与其依赖三角形与点在屏幕上渲染形成具有恒定尺寸的单" +"独矩形。其旨在与粒子系统一起使用,但也可以作为一种消耗小的方式来渲染恒定尺寸" +"的广告牌精灵,例如,在点云中。\n" +"PointMeshes,必须与具有点大小的材质一起使用。点大小可以通过[code]POINT_SIZE[/" +"code]在着色器中访问,或者通过设置[member SpatialMaterial." +"flags_use_point_size]和变量[member SpatialMaterial.params_point_size]在" +"[SpatialMaterial]中访问。\n" +"当使用PointMeshes时,通常改变顶点的属性将被忽略,包括广告牌模式、增长和剔除" +"面。" #: doc/classes/Polygon2D.xml:4 msgid "A 2D polygon." msgstr "一个2D多边形。" #: doc/classes/Polygon2D.xml:7 -#, fuzzy msgid "" "A Polygon2D is defined by a set of points. Each point is connected to the " "next, with the final point being connected to the first, resulting in a " @@ -52019,9 +52500,13 @@ msgid "" "[member ProjectSettings.rendering/limits/buffers/" "canvas_polygon_index_buffer_size_kb]." msgstr "" -"一个Polygon2D是由一组点定义的.每个点与下一个点相连,最后一个点与第一个点相连," -"从而形成一个封闭的多边形.Polygon2D可以用颜色(纯色或渐变)填充,也可以用给定的贴" -"图填充." +"Polygon2D 由一组点定义。每个点都连接到下一个点,最后一个点连接到第一个点,从" +"而形成封闭的多边形。 Polygon2Ds可以填充颜色(纯色或渐变色)或填充给定的纹" +"理。\n" +"[b]注:[/b] 默认情况下,Godot 一次最多只能绘制 4096 个多边形点。要增加此限" +"制,请打开项目设置并增加 [member ProjectSettings.rendering/limits/buffers/" +"canvas_polygon_buffer_size_kb] 和 [member ProjectSettings.rendering/limits/" +"buffers/canvas_polygon_index_buffer_size_kb]。" #: doc/classes/Polygon2D.xml:18 msgid "" @@ -52090,15 +52575,14 @@ msgid "The offset applied to each vertex." msgstr "应用于每个顶点的位置偏移量." #: doc/classes/Polygon2D.xml:92 -#, fuzzy msgid "" "The polygon's list of vertices. The final point will be connected to the " "first.\n" "[b]Note:[/b] This returns a copy of the [PoolVector2Array] rather than a " "reference." msgstr "" -"多边形顶点的列表.最后一个点将连接到第一个点.\n" -"[b]注意:[/b]这将返回[PoolVector2Array]的拷贝,而不是引用." +"多边形的顶点列表。最后一点将连接到第一个。\n" +"[b]注意:[/b] 这将返回 [PoolVector2Array] 的副本而不是引用。" #: doc/classes/Polygon2D.xml:100 msgid "" @@ -52149,53 +52633,45 @@ msgstr "" "如果数量少,则未定义的顶点将使用[code]color[/code]." #: doc/classes/PoolByteArray.xml:4 -#, fuzzy msgid "A pooled [Array] of bytes." -msgstr "一个打包的字节[Array]。" +msgstr "[Array] 字节集合。" #: doc/classes/PoolByteArray.xml:7 -#, fuzzy msgid "" "An [Array] specifically designed to hold bytes. Optimized for memory usage, " "does not fragment the memory.\n" "[b]Note:[/b] This type is passed by value and not by reference." msgstr "" -"一个专门用来保存字节的[Array]。它紧密地包裹数据,所以当数组尺寸较大时,该格式" -"将节省一笔内存。\n" -"[b]注意:[/b] 这种类型是通过值传递的,而不是通过引用。" +"一个 [Array] 专门设计用于保存字节。针对内存使用进行了优化,不会造成内存碎" +"片。\n" +"[b]注意:[/b] 这种类型是按值传递而不是按引用传递。" #: doc/classes/PoolByteArray.xml:17 -#, fuzzy msgid "" "Constructs a new [PoolByteArray]. Optionally, you can pass in a generic " "[Array] that will be converted." -msgstr "" -"构建一个新的[PackedByteArray]。你可以选择传入一个通用的[Array],它将被转换。" +msgstr "构建新的[PoolByteArray]。你可以选择传入一个通用的[Array],它将被转换。" #: doc/classes/PoolByteArray.xml:29 -#, fuzzy msgid "Appends a [PoolByteArray] at the end of this array." -msgstr "在这个数组的末端添加一个[PackedByteArray]。" +msgstr "在这个数组的最后添加[PoolByteArray]。" #: doc/classes/PoolByteArray.xml:36 -#, fuzzy msgid "" "Returns a new [PoolByteArray] with the data compressed. Set the compression " "mode using one of [enum File.CompressionMode]'s constants." msgstr "" -"返回一个新的带有压缩数据的[PackedByteArray]。使用[enum File.CompressionMode]" -"中的一个常量来设置压缩模式。" +"返回新的[PoolByteArray],其中的数据被压缩。使用[enum File.CompressionMode]中" +"的一个常数来设置压缩模式。" #: doc/classes/PoolByteArray.xml:44 -#, fuzzy msgid "" "Returns a new [PoolByteArray] with the data decompressed. Set " "[code]buffer_size[/code] to the size of the uncompressed data. Set the " "compression mode using one of [enum File.CompressionMode]'s constants." msgstr "" -"返回一个新的[PackedByteArray],并对数据进行解压。使用[code]buffer_size[/code]" -"来设置未压缩数据的大小。使用[enum File.CompressionMode]中的一个常量来设置压缩" -"模式。" +"返回新的 [PoolByteArray] 解压数据。 [code]buffer_size[/code] 设置未压缩数据的" +"大小。使用 [enum File.CompressionMode] 常量之一设置压缩模式。" #: doc/classes/PoolByteArray.xml:52 msgid "" @@ -52214,6 +52690,16 @@ msgid "" "will allow for unbounded output. If any positive value is passed, and the " "decompression exceeds that ammount in bytes, then an error will be returned." msgstr "" +"返回数据解压后的新 [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:67 msgid "" @@ -52240,7 +52726,6 @@ msgstr "" "数。" #: doc/classes/PoolByteArray.xml:79 -#, fuzzy msgid "" "Returns a hexadecimal representation of this array as a [String].\n" "[codeblock]\n" @@ -52250,7 +52735,7 @@ msgid "" msgstr "" "返回该数组的十六进制,表示为一个[String]。\n" "[codeblock]\n" -"var array = PackedByteArray([11, 46, 255])\n" +"var array = PoolByteArray([11, 46, 255])\n" "print(array.hex_encode()) # Prints: 0b2eff\n" "[/codeblock]" @@ -52277,7 +52762,6 @@ msgstr "从数组中删除位于索引的元素。" #: doc/classes/PoolByteArray.xml:114 doc/classes/PoolIntArray.xml:67 #: doc/classes/PoolRealArray.xml:67 -#, fuzzy msgid "" "Sets the size of the array. If the array is grown, reserves elements at the " "end of the array. If the array is shrunk, truncates the array to the new " @@ -52285,8 +52769,9 @@ msgid "" "[b]Note:[/b] Added elements are not automatically initialized to 0 and will " "contain garbage, i.e. indeterminate values." msgstr "" -"设置数组的大小。如果数组被增大,则保留数组末端的元素。如果数组被缩小,则将数" -"组截断到新的大小。" +"设置数组的大小。如果数组增长,则保留数组末尾的元素。如果数组缩小,则将数组截" +"断为新大小。\n" +"[b]注意:[/b] 添加的元素不会自动初始化为 0,并且会包含垃圾,即不确定值。" #: doc/classes/PoolByteArray.xml:122 msgid "Changes the byte at the given index." @@ -52299,43 +52784,37 @@ msgid "Returns the size of the array." msgstr "返回数组的大小。" #: doc/classes/PoolByteArray.xml:136 -#, fuzzy msgid "" "Returns the slice of the [PoolByteArray] between indices (inclusive) as a " "new [PoolByteArray]. Any negative index is considered to be from the end of " "the array." msgstr "" -"返回索引(包括其本身)之间的[PackedByteArray]的片断为一个新的" -"[PackedByteArray]。任何负的索引都被认为是从数组的末端开始的。" +"返回索引(包括)之间的[PoolByteArray]的片断为一个新的[PoolByteArray]。任何负" +"的索引都被认为是从数组的末端开始的。" #: doc/classes/PoolColorArray.xml:4 -#, fuzzy msgid "A pooled [Array] of [Color]." -msgstr "一个包装好的[Color]的[Array]。" +msgstr "[Color]的[Array]的集合。" #: doc/classes/PoolColorArray.xml:7 -#, fuzzy msgid "" "An [Array] specifically designed to hold [Color]. Optimized for memory " "usage, does not fragment the memory.\n" "[b]Note:[/b] This type is passed by value and not by reference." msgstr "" -"一个专门为容纳[Color]而设计的[Array]。紧密地包装数据,当数组尺寸较大时,这将" -"节省内存。\n" -"[b]注意:[/b] 这种类型是通过值传递的,而不是通过引用。" +"专门用于保存[Color]的[Array]。对内存的使用进行了优化,不会使内存碎片化。\n" +"[b]注意:[/b] 这种类型是通过值传递的,而不是引用。" #: doc/classes/PoolColorArray.xml:17 -#, fuzzy msgid "" "Constructs a new [PoolColorArray]. Optionally, you can pass in a generic " "[Array] that will be converted." msgstr "" -"构造一个新的[PackedColorArray]。你可以选择传入一个通用的[Array],它将被转换。" +"构建新的[PoolColorArray]。你可以选择传入一个通用的[Array],它将被转换。" #: doc/classes/PoolColorArray.xml:29 -#, fuzzy msgid "Appends a [PoolColorArray] at the end of this array." -msgstr "将一个[PackedColorArray]追加到该数组的尾部。" +msgstr "在这个数组的最后添加一个[PoolColorArray]。" #: doc/classes/PoolColorArray.xml:54 doc/classes/PoolIntArray.xml:55 msgid "Appends a value to the array." @@ -52356,12 +52835,10 @@ msgid "Changes the [Color] at the given index." msgstr "更改给定索引处的[Color]。" #: doc/classes/PoolIntArray.xml:4 -#, fuzzy msgid "A pooled [Array] of integers ([int])." -msgstr "一个32位整数的压缩[Array]。" +msgstr "整数[int]的[Array]的集合。" #: doc/classes/PoolIntArray.xml:7 -#, fuzzy msgid "" "An [Array] specifically designed to hold integer values ([int]). Optimized " "for memory usage, does not fragment the memory.\n" @@ -52372,50 +52849,42 @@ msgid "" "around. In comparison, [int] uses signed 64-bit integers which can hold much " "larger values." msgstr "" -"一个专门用于保存32位整数值的[阵列]。紧密地包装数据,所以它为大的数组尺寸节省" -"了内存。\n" -"[b]注意:[/b] 这种类型是通过值传递的,而不是通过引用。\n" -"[b]注意:[/b] 该类型存储有符号的32位整数,这意味着它可以在[code][-2^31, 2^31 " -"- 1][/code]之间取值,即[code][-2147483648, 2147483647][/code]。超过这些界限就" -"会被包起来。相比之下,[int]使用有符号的64位整数,可以容纳大得多的值。如果你需" -"要严格打包64位整数,请参阅[PackedInt64Array]。" +"一个专门用于保存整数值的[Array]([int])。对内存的使用进行了优化,不会使内存" +"碎片化。\n" +"[b]注意:[/b] 这种类型是通过值传递的,而不是引用。\n" +"[b]注意:[/b] 这个类型仅限于有符号的32位整数,这意味着它只能在[code][-2^31, " +"2^31 - 1][/code]的区间取值,即[code][-2147483648, 2147483647][/code]。超过这" +"些界限就会被包起来。相比之下,[int]使用有符号的64位整数,可以容纳大得多的值。" #: doc/classes/PoolIntArray.xml:18 -#, fuzzy msgid "" "Constructs a new [PoolIntArray]. Optionally, you can pass in a generic " "[Array] that will be converted." -msgstr "" -"构建一个新的[PackedInt32Array]。你可以选择传入一个通用的[Array],它将被转" -"换。。" +msgstr "构建新的[PoolIntArray]。你可以选择传入一个通用的[Array],它将被转换。" #: doc/classes/PoolIntArray.xml:30 -#, fuzzy msgid "Appends a [PoolIntArray] at the end of this array." -msgstr "在数组的末尾追加一个[PackedInt32Array]。" +msgstr "在这个数组的最后添加[PoolIntArray]。" #: doc/classes/PoolIntArray.xml:44 -#, fuzzy msgid "" "Inserts a new int at a given position in the array. The position must be " "valid, or at the end of the array ([code]idx == size()[/code])." msgstr "" -"在数组的给定位置插入一个新的整数。位置必须是有效的,或者位于数组的末尾" -"([code]idx == size()[/code])。" +"在数组中的指定位置插入一个新的int。这个位置必须是有效的,或者在数组的末端" +"([code]idx == size()[/code])。" #: doc/classes/PoolIntArray.xml:75 -#, fuzzy msgid "Changes the int at the given index." -msgstr "改变给定索引处的整数。" +msgstr "更改给定索引处的 int。" #: doc/classes/PoolIntArray.xml:81 msgid "Returns the array size." msgstr "返回数组大小。" #: doc/classes/PoolRealArray.xml:4 -#, fuzzy msgid "A pooled [Array] of reals ([float])." -msgstr "一个包装好的[Color]的[Array]。" +msgstr "实数 [float] 的[Array]集合。" #: doc/classes/PoolRealArray.xml:7 msgid "" @@ -52430,59 +52899,60 @@ msgid "" "store [float]s will use roughly 6 times more memory compared to a " "[PoolRealArray]." msgstr "" +"专门设计用于保存浮点值的 [Array] 。针对内存使用进行了优化,不会造成内存碎" +"片。\n" +"[b]注意:[/b] 这种类型是按值传递而不是按引用传递。\n" +"[b]注意:[/b] 与 64 位原始 [float] 不同,存储在 [PoolRealArray] 中的数字是 " +"32 位浮点数。这意味着与原始 [float] 相比,存储在 [PoolRealArray] 中的值具有较" +"低的精度。如果您需要在数组中存储 64 位浮点数,请使用具有 [float] 元素的通用 " +"[Array],因为这些元素仍为 64 位。但是,与 [PoolRealArray] 相比,使用通用 " +"[Array] 存储 [float] 将使用大约 6 倍的内存。" #: doc/classes/PoolRealArray.xml:18 -#, fuzzy msgid "" "Constructs a new [PoolRealArray]. Optionally, you can pass in a generic " "[Array] that will be converted." -msgstr "" -"构造一个新的[PackedColorArray]。你可以选择传入一个通用的[Array],它将被转换。" +msgstr "构建新的[PoolRealArray]。你可以选择传入一个通用的[Array],它将被转换。" #: doc/classes/PoolRealArray.xml:30 -#, fuzzy msgid "Appends a [PoolRealArray] at the end of this array." -msgstr "将一个[PackedColorArray]追加到该数组的尾部。" +msgstr "在这个数组的最后添加[PoolRealArray]。" #: doc/classes/PoolRealArray.xml:75 msgid "Changes the float at the given index." msgstr "更改给定索引处的浮点数。" #: doc/classes/PoolStringArray.xml:4 -#, fuzzy msgid "A pooled [Array] of [String]." -msgstr "一个由压缩的[String]组成的[Array]。" +msgstr "[String] 的 [Array] 集合。" #: doc/classes/PoolStringArray.xml:7 -#, fuzzy msgid "" "An [Array] specifically designed to hold [String]s. Optimized for memory " "usage, does not fragment the memory.\n" "[b]Note:[/b] This type is passed by value and not by reference." msgstr "" -"一个专门设计用来保存字符串的[Array]。通过紧密地包装数据,当数组尺寸较大时,这" -"将节省一定内存。\n" -"[b]注意:[/b]该类型是通过值而不是引用传递的。" +"[Array] 专门设计用于保存 [String]。针对内存使用进行了优化,不会造成内存碎" +"片。\n" +"[b]注意:[/b] 这种类型是按值传递,而不是引用传递。" #: doc/classes/PoolStringArray.xml:18 -#, fuzzy msgid "" "Constructs a new [PoolStringArray]. Optionally, you can pass in a generic " "[Array] that will be converted." msgstr "" -"构造一个新的[PackedStringArray]。或者,您可以传入将被转换的通用[Array]。" +"构建新的[PoolStringArray]。你可以选择传入一个通用的[Array],它将被转换。" #: doc/classes/PoolStringArray.xml:30 -#, fuzzy msgid "Appends a [PoolStringArray] at the end of this array." -msgstr "在此数组末尾追加[PackedStringArray]。" +msgstr "在这个数组的最后添加[PoolStringArray]。" #: doc/classes/PoolStringArray.xml:56 -#, fuzzy msgid "" "Returns a [String] with each element of the array joined with the given " "[code]delimiter[/code]." -msgstr "返回与给定[code] id [/code]关联的点的权重比例。" +msgstr "" +"返回一个[String],数组的每个元素都用给定的[code]delimiter[/code]分隔符连接。" #: doc/classes/PoolStringArray.xml:62 msgid "Appends a string element at end of the array." @@ -52493,20 +52963,17 @@ msgid "Changes the [String] at the given index." msgstr "更改给定索引处的[String]。" #: doc/classes/PoolVector2Array.xml:4 -#, fuzzy msgid "A pooled [Array] of [Vector2]." -msgstr "[Vector2]的压缩[Array]。" +msgstr "[Vector2] 的 [Array] 集合。" #: doc/classes/PoolVector2Array.xml:7 -#, fuzzy msgid "" "An [Array] specifically designed to hold [Vector2]. Optimized for memory " "usage, does not fragment the memory.\n" "[b]Note:[/b] This type is passed by value and not by reference." msgstr "" -"专门设计用来容纳Vector2的[Array]。通过紧密地包装数据,当数组尺寸较大时,这将" -"节省一定内存。\n" -"[b] 注意:[/b]此类型是通过值传递的,而不是通过引用传递的。" +"专门用来保存[Vector2]的[Array]。对内存的使用进行了优化,不会使内存碎片化。\n" +"[b]注意:[/b] 这种类型是通过值传递的,而不是引用。" #: doc/classes/PoolVector2Array.xml:11 doc/classes/TileMap.xml:15 #: doc/classes/TileSet.xml:15 @@ -52514,17 +52981,15 @@ msgid "https://godotengine.org/asset-library/asset/519" msgstr "https://godotengine.org/asset-library/asset/519" #: doc/classes/PoolVector2Array.xml:18 -#, fuzzy msgid "" "Constructs a new [PoolVector2Array]. Optionally, you can pass in a generic " "[Array] that will be converted." msgstr "" -"构造一个新的[PackedVector2Array]。或者,您可以传入将被转换的通用[Array]。" +"构建新的[PoolVector2Array]。你可以选择传入一个通用的[Array],它将被转换。" #: doc/classes/PoolVector2Array.xml:30 -#, fuzzy msgid "Appends a [PoolVector2Array] at the end of this array." -msgstr "在此数组末尾追加一个[PackedVector2Array]。" +msgstr "在这个数组的最后添加[PoolVector2Array]。" #: doc/classes/PoolVector2Array.xml:55 msgid "Inserts a [Vector2] at the end." @@ -52535,33 +53000,29 @@ msgid "Changes the [Vector2] at the given index." msgstr "在给定索引处更改[Vector2]。" #: doc/classes/PoolVector3Array.xml:4 -#, fuzzy msgid "A pooled [Array] of [Vector3]." -msgstr "[Vector3]的压缩[Array]。" +msgstr "[Vector3] 的 [Array] 集合。" #: doc/classes/PoolVector3Array.xml:7 -#, fuzzy msgid "" "An [Array] specifically designed to hold [Vector3]. Optimized for memory " "usage, does not fragment the memory.\n" "[b]Note:[/b] This type is passed by value and not by reference." msgstr "" -"专门设计用来容纳Vector3的[Array]。通过紧密地包装数据,当数组尺寸较大时,这将" -"节省一定内存。\n" -"[b] 注意:[/b]此类型是通过值传递的,而不是通过引用传递的。" +"专门设计来容纳[Vector3]的[Array]。对内存的使用进行了优化,不会使内存碎片" +"化。\n" +"[b]注意:[/b] 这种类型是通过值传递的,而不是引用。" #: doc/classes/PoolVector3Array.xml:17 -#, fuzzy msgid "" "Constructs a new [PoolVector3Array]. Optionally, you can pass in a generic " "[Array] that will be converted." msgstr "" -"构造一个新的[PackedVector3Array]。或者,您可以传入将被转换的通用[Array]。" +"构建新的[PoolVector3Array]。你可以选择传入一个通用的[Array],它将被转换。" #: doc/classes/PoolVector3Array.xml:29 -#, fuzzy msgid "Appends a [PoolVector3Array] at the end of this array." -msgstr "在此数组末尾追加一个[PackedVector3Array]。" +msgstr "在这个数组的最后添加[PoolVector3Array]。" #: doc/classes/PoolVector3Array.xml:54 msgid "Inserts a [Vector3] at the end." @@ -52576,18 +53037,18 @@ msgid "Base container control for popups and dialogs." msgstr "用于弹出窗口和对话框的基本容器控件。" #: doc/classes/Popup.xml:7 -#, fuzzy msgid "" "Popup is a base [Control] used to show dialogs and popups. It's a subwindow " "and modal by default (see [Control]) and has helpers for custom popup " "behavior. All popup methods ensure correct placement within the viewport." msgstr "" -"弹出框是一个用于显示对话框和其他弹出框的基类[Control].默认,它是一个子窗口和模" -"态(参阅[Control]),并且有自定义弹出动作的帮助程序." +"Popup 是基本的 [Control],用于显示对话框和弹出窗口。默认情况下,它是一个子窗" +"口和模态,参阅 [Control],并具有自定义弹出行为的辅助程序。所有弹出方法都确保" +"在视窗中正确放置。" #: doc/classes/Popup.xml:16 msgid "Popup (show the control in modal form)." -msgstr "" +msgstr "弹出窗口(以模态形式显示控件)。" #: doc/classes/Popup.xml:23 msgid "" @@ -52595,6 +53056,8 @@ msgid "" "to its current canvas transform, at the current size, or at a size " "determined by [code]size[/code]." msgstr "" +"根据相对于当前画布转换、当前大小或由 [code]size[/code] 确定的大小,在屏幕中央" +"弹出窗口(以模态形式显示控制)。" #: doc/classes/Popup.xml:31 msgid "" @@ -52603,6 +53066,9 @@ msgid "" "then ensuring the popup is no larger than the viewport size multiplied by " "[code]fallback_ratio[/code]." msgstr "" +"相对于当前画布变换在屏幕中央弹出(以模态形式显示控件),将大小限制为" +"[code]size[/code],并确保弹出窗口不大于视口大小乘以[code] fallback_ratio[/" +"code]。" #: doc/classes/Popup.xml:38 msgid "" @@ -52610,16 +53076,20 @@ msgid "" "to the current canvas transform, ensuring the size is never smaller than " "[code]minsize[/code]." msgstr "" +"相对于当前画布变换在屏幕中央弹出(以模态形式显示控件),确保尺寸永远不会小于 " +"[code]minsize[/code]。" #: doc/classes/Popup.xml:45 msgid "" "Popup (show the control in modal form) in the center of the screen relative " "to the current canvas transform, scaled at a ratio of size of the screen." msgstr "" +"相对于当前画布变换在屏幕中央弹出(以模态形式显示控件),按屏幕大小的比例缩" +"放。" #: doc/classes/Popup.xml:51 msgid "Shrink popup to keep to the minimum size of content." -msgstr "" +msgstr "缩小弹出窗口以保持内容的最小大小。" #: doc/classes/Popup.xml:57 msgid "" @@ -52631,6 +53101,12 @@ msgid "" "ConfirmationDialog.get_cancel] and hide the buttons in question by setting " "their [member CanvasItem.visible] property to [code]false[/code]." msgstr "" +"如果[code]true[/code],当点击事件发生在它之外,或者当它收到[code]ui_cancel[/" +"code]动作事件时,弹出窗口不会被隐藏。\n" +"[b]注意:[/b] 启用此属性不会影响从此类继承的对话框中关闭或取消按钮的行为。作" +"为解决方法,您可以使用 [method WindowDialog.get_close_button] 或 [method " +"ConfirmationDialog.get_cancel] 并通过将其 [member CanvasItem.visible] 属性设" +"置为 [code]false[/code] 来隐藏有问题的按钮。" #: doc/classes/Popup.xml:65 msgid "" @@ -52638,35 +53114,33 @@ msgid "" "to clear the list of options then create a new one according to the current " "context." msgstr "" +"当弹出窗口即将显示时发出。这通常在 [PopupMenu] 中用于清除选项列表,然后根据当" +"前上下文创建一个新选项。" #: doc/classes/Popup.xml:70 msgid "Emitted when a popup is hidden." msgstr "当弹出窗口被隐藏时发出." #: doc/classes/Popup.xml:76 -#, fuzzy msgid "Notification sent right after the popup is shown." -msgstr "节点被实例化时收到的通知。" +msgstr "在弹出窗口显示后立即发送通知。" #: doc/classes/Popup.xml:79 -#, fuzzy msgid "Notification sent right after the popup is hidden." -msgstr "节点被实例化时收到的通知。" +msgstr "在弹出窗口被隐藏后立即发送通知。" #: doc/classes/PopupDialog.xml:4 -#, fuzzy msgid "Base class for popup dialogs." -msgstr "分离器的基类。" +msgstr "弹出对话框的基类。" #: doc/classes/PopupDialog.xml:7 msgid "" "PopupDialog is a base class for popup dialogs, along with [WindowDialog]." -msgstr "" +msgstr "PopupDialog 是弹出对话框的基类,与 [WindowDialog] 一起。" #: doc/classes/PopupDialog.xml:17 -#, fuzzy msgid "Sets a custom [StyleBox] for the panel of the [PopupDialog]." -msgstr "为 [SpinBox] 的上下箭头设置自定义 [Texture2D]。" +msgstr "为[PopupDialog]的面板设置自定义的[StyleBox]。" #: doc/classes/PopupMenu.xml:4 msgid "PopupMenu displays a list of options." @@ -52826,7 +53300,7 @@ msgstr "" "code]定义。\n" "可以选择提供[code]id[/code],以及加速器([code]accel[/code])。如果没有提供" "[code]id[/code],将从索引中创建一个。如果没有提供[code]accel[/code],则默认的" -"[code]0[/code]将被分配给它。有关加速器的更多信息,请参阅[方法" +"[code]0[/code]将被分配给它。有关加速器的更多信息,请参阅[method " "get_item_accelerator]。" #: doc/classes/PopupMenu.xml:129 @@ -52968,11 +53442,10 @@ msgid "" msgstr "返回与指定索引 [code]idx[/code]关联的工具提示。" #: doc/classes/PopupMenu.xml:258 -#, fuzzy msgid "" "Returns [code]true[/code] if the popup will be hidden when the window loses " "focus or not." -msgstr "返回[code]true[/code],如果窗口失去焦点时,弹出窗口会被隐藏。" +msgstr "如果窗口失去焦点时是否隐藏弹出窗口,则返回 [code]true[/code]。" #: doc/classes/PopupMenu.xml:265 msgid "" @@ -53267,7 +53740,7 @@ msgstr "未选中的单选按钮项目的 [Texture] 图标。" #: doc/classes/PopupMenu.xml:545 msgid "[StyleBox] used for the separators. See [method add_separator]." -msgstr "用于分隔符的[StyleBox]。请参阅[方法add_separator]。" +msgstr "用于分隔符的[StyleBox]。请参阅[method add_separator]。" #: doc/classes/PopupMenu.xml:548 msgid "[Texture] icon for the submenu arrow." @@ -53318,16 +53791,25 @@ msgid "" "There is no need to place an opposite portal in an adjacent room, links are " "made two-way automatically." msgstr "" +"[Portal] 是一种特殊类型的 [MeshInstance],允许门户剔除系统从一个空间“看到”到" +"另一个空间。它们通常对应于水平几何中的门窗。只允许 [Camera] 透过传送门看到," +"这允许系统剔除空间中无法透过传送门看到的所有物体。这是[b]遮挡剔除[/b]的一种形" +"式,可以大大提高性能。\n" +"Portal的形式有一些限制:\n" +"它们必须是单面凸多边形,并且通常您会将它们的正面 [b] 向外 [/b] 从它们所在的 " +"[Room] 定向。顶点应该位于一个平面上(尽管它们的位置不必完美)。\n" +"无需在相邻空间放置对面的传送门,它们会自动建立双向链接。" #: doc/classes/Portal.xml:20 doc/classes/Room.xml:21 msgid "Sets individual points. Primarily for use by the editor." -msgstr "" +msgstr "设置单个点。主要供编辑器使用。" #: doc/classes/Portal.xml:26 msgid "" "This is a shortcut for setting the linked [Room] in the name of the [Portal] " "(the name is used during conversion)." msgstr "" +"这是在[Portal]的名称中设置链接[Room]的快捷方式(名称在转换过程中使用)。" #: doc/classes/Portal.xml:29 msgid "" @@ -53337,12 +53819,17 @@ msgid "" "[Portal] node's [member Spatial.global_transform].\n" "[b]Note:[/b] These raw points are sanitized for winding order internally." msgstr "" +"定义 [Portal] 多边形形状的点(应该是凸面)。\n" +"这些是在 2D 中定义的,[code]0,0[/code] 是 [Portal] 节点的 [member Spatial." +"global_transform] 的原点。\n" +"[b]注意:[/b] 这些原始点会被整理以便在内部缠绕顺序。" #: doc/classes/Portal.xml:34 msgid "" "Visibility through [Portal]s can be turned on and off at runtime - this is " "useful for having closable doors." msgstr "" +"可以在运行时打开和关闭通过 [Portal] 的可见性 - 这对于具有可关闭的门很有用。" #: doc/classes/Portal.xml:37 msgid "" @@ -53351,12 +53838,17 @@ msgid "" "to be assigned to neighbouring rooms, you can assign an extra margin through " "the [Portal] to allow objects to breach without sprawling." msgstr "" +"有些物体非常大,以至于它们可能会出现在不止一个 [Room]中(“蔓延”)。由于我们通" +"常不希望将*只是*突破边缘的对象分配给相邻的房间,因此您可以通过 [Portal] 分配" +"额外的边距,以允许对象在不蔓延的情况下突破。" #: doc/classes/Portal.xml:40 msgid "" "Portals default to being two way - see through in both directions, however " "you can make them one way, visible from the source room only." msgstr "" +"Portal默认为双向 - 在两个方向都可以看到,但是您可以将它们设为一种从源房间可见" +"的方式。" #: doc/classes/Portal.xml:43 msgid "" @@ -53365,6 +53857,10 @@ msgid "" "If you want to override this default, set this value to [code]false[/code], " "and the local [member portal_margin] will take effect." msgstr "" +"在大多数情况下,您会希望在Portal中使用默认的 [Portal] 边距(这是在 " +"[RoomManager] 中设置的)。\n" +"如果要覆盖这个默认值,把这个值设置为[code]false[/code],本地的[member " +"portal_margin]就会生效。" #: doc/classes/Position2D.xml:4 msgid "Generic 2D position hint for editing." @@ -53429,16 +53925,15 @@ msgstr "" "[/codeblock]" #: doc/classes/PrimitiveMesh.xml:29 -#, fuzzy msgid "" "If set, the order of the vertices in each triangle are reversed resulting in " "the backside of the mesh being drawn.\n" "This gives the same result as using [constant SpatialMaterial.CULL_BACK] in " "[member SpatialMaterial.params_cull_mode]." msgstr "" -"如果设置,每个三角形中顶点的顺序颠倒,导致网格的背面被绘制。\n" -"这给出了与使用[constant BaseMaterial3D相同的结果。在[member BaseMaterial3D." -"cull_mode]中的CULL_BACK]。" +"如果设置,则每个三角形中顶点的顺序会颠倒,从而绘制网格的背面。\n" +"这与在 [member SpatialMaterial.params_cull_mode] 中使用 [constant " +"SpatialMaterial.CULL_BACK] 的结果相同。" #: doc/classes/PrimitiveMesh.xml:33 msgid "The current [Material] of the primitive mesh." @@ -53471,13 +53966,11 @@ msgid "Number of added edge loops along the X axis." msgstr "沿X轴添加的边循环数。" #: doc/classes/ProceduralSky.xml:4 -#, fuzzy msgid "" "Type of [Sky] that is generated procedurally based on user input parameters." -msgstr "与[Sky]一起使用的[Material]根据用户输入参数生成背景。" +msgstr "根据用户输入的参数按程序生成的[Sky]类型。" #: doc/classes/ProceduralSky.xml:7 -#, fuzzy msgid "" "ProceduralSky provides a way to create an effective background quickly by " "defining procedural parameters for the sun, the sky and the ground. The sky " @@ -53494,20 +53987,18 @@ msgid "" "relatively frequently, as it is updated on a background thread when multi-" "threading is available." msgstr "" -"ProceduralSkyMaterial通过定义太阳、天空和地面的程序参数,提供了一种快速创建有" -"效背景的方法。天空和地面非常相似,它们由地平线上的一种颜色、另一种颜色以及最" -"后插入这两种颜色之间的缓和曲线来定义。类似地,太阳由天空中的位置、颜色和缓和" -"曲线来描述。然而,太阳还定义了最小和最大角度,这两个值定义了缓和曲线从太阳开" -"始和结束的距离,从而最终定义了太阳在天空中的大小。\n" -"[ProceduralSkyMaterial]使用轻量级着色器绘制天空,因此适合实时更新。当你不需要" -"一个不现实的快速天空时,这是一个很好的选择。\n" -"[ProceduralSkyMaterial]最多支持4个太阳。每个太阳都从场景中相应的" -"[DirectionalLight3D]获取其颜色、能量和方向。" +"ProceduralSky提供了一种方法,通过定义太阳、天空和地面的程序性参数,以快速创建" +"一个有效的背景。天空和地面非常相似,它们是由地平线上的两种颜色以及在这两种颜" +"色之间插值渐变曲线来定义。同样,太阳也是由天空中的位置、颜色和平缓曲线来描" +"述。同时,太阳也定义了最小和最大的角度,这两个值定义了太阳从开始和结束的距离" +"的平缓曲线,进而,最终定义了天空中太阳的大小。\n" +"在参数改变后,程序性天空会在CPU上更新。它被存储在一个纹理中,然后在场景中作为" +"背景显示。这使得它相对来说,不适合在游戏进行过程中实时更新。但,如果纹理尺寸" +"足够小,它仍然可以相对频繁地更新,因为当多线程可用时,它是在后台线程上。" #: doc/classes/ProceduralSky.xml:16 -#, fuzzy msgid "Color of the ground at the bottom." -msgstr "标题文字的颜色。" +msgstr "底部地面的颜色。" #: doc/classes/ProceduralSky.xml:19 msgid "" @@ -53546,40 +54037,38 @@ msgid "Distance from center of sun where it fades out completely." msgstr "距离太阳中心的距离,在那里它完全消失。" #: doc/classes/ProceduralSky.xml:43 -#, fuzzy msgid "Distance from sun where it goes from solid to starting to fade." -msgstr "距离太阳中心的距离,在那里它完全消失。" +msgstr "太阳从凝固到开始褪色的距离。" #: doc/classes/ProceduralSky.xml:46 msgid "The sun's color." msgstr "太阳的颜色。" #: doc/classes/ProceduralSky.xml:49 -#, fuzzy msgid "" "How quickly the sun fades away between [member sun_angle_min] and [member " "sun_angle_max]." -msgstr "太阳在太阳圆盘边缘和 [member sun_angle_max]之间消失的速度有多快。" +msgstr "" +"在 [member sun_angle_min] 和 [member sun_angle_max] 之间,太阳消逝的速度。" #: doc/classes/ProceduralSky.xml:52 -#, fuzzy msgid "Amount of energy contribution from the sun." -msgstr "来自天空的能量贡献量。" +msgstr "来自太阳的能量贡献量。" #: doc/classes/ProceduralSky.xml:55 msgid "The sun's height using polar coordinates." msgstr "用极坐标计算太阳的高度。" #: doc/classes/ProceduralSky.xml:58 -#, fuzzy msgid "The direction of the sun using polar coordinates." -msgstr "碰撞点,以全局坐标表示。" +msgstr "用极坐标表示太阳的方向。" #: doc/classes/ProceduralSky.xml:61 msgid "" "Size of [Texture] that the ProceduralSky will generate. The size is set " "using [enum TextureSize]." msgstr "" +"ProceduralSky将生成的[Texture]的大小。该大小是用[enum TextureSize]来设置的。" #: doc/classes/ProceduralSky.xml:66 msgid "Sky texture will be 256x128." @@ -53645,7 +54134,6 @@ msgid "Contains global variables accessible from everywhere." msgstr "包含可从任何地方访问的全局变量。" #: doc/classes/ProjectSettings.xml:7 -#, fuzzy msgid "" "Contains global variables accessible from everywhere. Use [method " "get_setting], [method set_setting] or [method has_setting] to access them. " @@ -53669,16 +54157,22 @@ msgid "" "[i]also[/i] override the setting with the desired feature tags if you want " "them to override base project settings on all platforms and configurations." msgstr "" -"包含可从任何地方访问的全局变量。使用[method get_setting],[method " +"包含可以从任何地方访问的全局变量。使用[method get_setting]、[method " "set_setting]或[method has_setting]来访问它们。存储在[code]project.godot[/" -"code]中的变量也被加载到ProjectSettings中,这使得这个对象对于读取自定义游戏配" -"置选项非常有用。\n" -"命名项目设置属性时,请使用包含类别的设置的完整路径。例如,项目名称的 " -"[code]\"application/config/name\"[/code]。类别和属性名称可以在“项目设置”对话" -"框中查看。\n" -"[b]覆盖:[/b]通过在项目的根目录中创建名为[code]override.cfg[/code]的文件,可以" -"覆盖任何项目设置。这也可以在导出的项目中使用,方法是将该文件与项目二进制文件" -"放在同一个目录中。" +"code]中的变量也被加载到ProjectSettings中,使得这个对象对于读取自定义游戏配置" +"选项时非常有用。\n" +"当命名一个项目设置属性时,使用设置的完整路径,包括类别。例如," +"[code]\"application/config/name\"[/code]为项目名称。类别和属性名称可以在项目" +"设置对话框中查看。\n" +"[b]特性标签:[/b] 可以使用[url=https://docs.godotengine.org/zh_CN/latest/" +"tutorials/export/feature_tags.html]特性标签[/url]为特定的平台和配置(调试、发" +"布...)覆盖项目设置。\n" +"[b]覆盖:[/b] 任何项目设置都可以通过在项目的根目录下创建一个名为 " +"[code]override.cfg[/code] 的文件来覆盖。这也可以在导出的项目中使用,把这个文" +"件放在与项目二进制文件相同的目录下。覆盖仍会考虑基本项目设置[url=https://" +"docs.godotengine.org/zh_CN/latest/tutorials/export/feature_tags.html]功能标签" +"[/url]。因此,如果你想让它们在所有平台和配置上覆盖基本项目设置,请确保[i]也[/" +"i]用所需的特性标签覆盖该设置。" #: doc/classes/ProjectSettings.xml:22 msgid "" @@ -53772,13 +54266,33 @@ msgid "" " path = OS.get_executable_path().get_base_dir().plus_file(\"hello.txt\")\n" "[/codeblock]" msgstr "" +"返回与本地化 [code]path[/code](以 [code]res://[/code] 或 [code]user://[/" +"code] 开头)相对应的绝对原生 OS 路径。返回的路径将因操作系统和用户首选项而" +"异。请参阅 [url=https://docs.godotengine.org/zh_CN/stable/tutorials/io/" +"data_paths.html]Godot 项目中的文件路径[/url] 以查看这些路径转换为什么。另见" +"[method localize_path]。\n" +"[b]注意:[/b] [method globalize_path] with [code]res://[/code] 在导出的项目中" +"不起作用。相反,当从导出的项目运行时,将可执行文件的基目录添加到路径中:\n" +"[codeblock]\n" +"var path = \"\"\n" +"if OS.has_feature(\"editor\"):\n" +" # 从编辑器二进制文件运行。\n" +" # `path` 将包含位于项目根目录中的 `hello.txt` 的绝对路径。\n" +" path = ProjectSettings.globalize_path(\"res://hello.txt\")\n" +"else:\n" +" # 从导出的项目运行。\n" +" # `path` 将包含可执行文件旁边的 `hello.txt` 的绝对路径。\n" +" # 这与使用 `ProjectSettings.globalize_path()` 和 `res://` 路径*不*相" +"同,\n" +" # 但在目的上足够接近。\n" +" path = OS.get_executable_path().get_base_dir().plus_file(\"hello.txt\")\n" +"[/codeblock]" #: doc/classes/ProjectSettings.xml:91 msgid "Returns [code]true[/code] if a configuration value is present." msgstr "如果存在配置值,则返回[code]true[/code]。" #: doc/classes/ProjectSettings.xml:100 -#, fuzzy msgid "" "Loads the contents of the .pck or .zip file specified by [code]pack[/code] " "into the resource filesystem ([code]res://[/code]). Returns [code]true[/" @@ -53791,11 +54305,13 @@ msgid "" "specify the offset in bytes to the start of the resource pack. This is only " "supported for .pck files." msgstr "" -"将由[code]pack[/code]指定的*.pck或*.zip文件的内容加载到资源文件系统" -"([code]res://[/code])。成功时返回[code]true[/code]。\n" -"[b]注意:[/b] 如果[code]pack[/code]中的文件与资源文件系统中已经存在的文件有相" -"同的路径,任何试图加载该文件的尝试将使用[code]pack[/code]中的文件,除非" -"[code]replace_files[/code]被设置为[code]false[/code]。" +"将[code]pack[/code]指定的.pck或.zip文件的内容加载到资源文件系统([code]res://" +"[/code])。成功时返回[code]true[/code]。\n" +"[b]注意:[/b] 如果[code]pack[/code]中的文件与已经在资源文件系统中的文件路径相" +"同,尝试加载该文件时,将使用[code]pack[/code]中的文件,除非" +"[code]replace_files[/code] 被设置为[code]false[/code]。\n" +"[b]注意:[/b] 可选的[code]offset[/code]参数,可以用来指定资源包开始的字节偏移" +"量。这只支持.pck文件。" #: doc/classes/ProjectSettings.xml:109 msgid "" @@ -53803,6 +54319,8 @@ msgid "" "to the absolute, native OS [code]path[/code]. See also [method " "globalize_path]." msgstr "" +"返回对应于绝对原生 OS [code]path[/code] 的本地化路径(以 [code]res://[/code] " +"开头)。另见[method globalize_path]。" #: doc/classes/ProjectSettings.xml:116 msgid "" @@ -53825,9 +54343,12 @@ msgid "" "want to change project settings in exported projects, use [method " "save_custom] to save [code]override.cfg[/code] file." msgstr "" +"将配置保存到 [code]project.godot[/code] 文件中。\n" +"[b]注意:[/b]此方法是为编辑器插件使用的,因为修改后的[ProjectSettings]无法在" +"运行的应用程序中加载回来。如果要更改导出项目中的项目设置,请使用 [method " +"save_custom] 保存 [code]override.cfg[/code] 文件。" #: doc/classes/ProjectSettings.xml:137 -#, fuzzy msgid "" "Saves the configuration to a custom file. The file extension must be [code]." "godot[/code] (to save in text-based [ConfigFile] format) or [code].binary[/" @@ -53835,8 +54356,10 @@ msgid "" "code] file, which is also text, but can be used in exported projects unlike " "other formats." msgstr "" -"将配置保存到自定义文件中。文件扩展名必须是[code].godot[/code](以基于文本的" -"[ConfigFile]格式保存)或[code].binary[/code](以二进制格式保存)。" +"将配置保存到自定义文件。文件扩展名必须是[code].godot[/code](以基于文本的" +"[ConfigFile]格式保存)或[code].binary[/code](以二进制格式保存)。你也可以保" +"存为[code]override.cfg[/code]文件,它也是文本,但与其他格式不同,可以在导出的" +"项目中使用。" #: doc/classes/ProjectSettings.xml:145 msgid "" @@ -53876,6 +54399,13 @@ msgid "" "export preset under [code]Plugins[/code] section. The singleton to access in " "code was also renamed to [code]GodotPayment[/code]." msgstr "" +"逗号分隔的自定义 Android 模块列表(必须已在 Android 导出模板中构建)使用其 " +"Java 包路径,例如[code]\"org/godotengine/godot/MyCustomSingleton,com/example/" +"foo/FrenchFriesFactory\"[/code]。\n" +"[b]注意:[/b] 自 Godot 3.2.2 起,[code]org/godotengine/godot/GodotPaymentV3[/" +"code] 模块被弃用,取而代之的是 [code]GodotPayment[/code] 插件,该插件应在 " +"Android 中启用在 [code]Plugins[/code] 部分下导出预设。在代码中访问的单例也被" +"重命名为 [code]GodotPayment[/code]。" #: doc/classes/ProjectSettings.xml:175 msgid "Background color for the boot splash." @@ -53935,13 +54465,12 @@ msgid "" msgstr "用于项目的图标,在项目加载时设置。导出时也将尽可能使用此图标。" #: doc/classes/ProjectSettings.xml:197 -#, fuzzy msgid "" "Icon set in [code].icns[/code] format used on macOS to set the game's icon. " "This is done automatically on start by calling [method OS.set_native_icon]." msgstr "" -"设置[code].icns[/code]格式图标,用于在macOS上设置游戏图标。这是在启动时通过调" -"用[method DisplayServer.set_native_icon]自动完成的。" +"在macOS上使用的[code].icns[/code]格式的图标集,用于设置游戏的图标。这在启动时" +"通过调用[method OS.set_native_icon]自动完成。" #: doc/classes/ProjectSettings.xml:200 msgid "" @@ -53957,9 +54486,15 @@ msgid "" "tutorials/io/data_paths.html]Data paths[/url] in the documentation for more " "information." msgstr "" +"项目名称。它由项目经理和出口商使用。可以通过翻译本地化文件中的值来翻译项目名" +"称。窗口标题将设置为在启动时自动匹配项目名称。\n" +"[b]注意:[/b] 如果 [member application/config/use_custom_user_dir] 为 " +"[code]false[/code],更改此值也会更改用户数据文件夹的路径。重命名项目后,您将" +"无法再访问 [code]user://[/code] 中的现有数据,除非您重命名旧文件夹以匹配新项" +"目名称。有关更多信息,请参阅文档中的 [url=https://docs.godotengine.org/zh_CN/" +"stable/tutorials/io/data_paths.html]数据路径[/url]。" #: doc/classes/ProjectSettings.xml:204 -#, fuzzy msgid "" "Specifies a file to override project settings. For example: [code]user://" "custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] " @@ -53967,9 +54502,10 @@ msgid "" "[b]Note:[/b] Regardless of this setting's value, [code]res://override.cfg[/" "code] will still be read to override the project settings." msgstr "" -"指定要替代项目设置的文件。例如:[code]user://custom_settings.cfg[/code]。\n" -"[b] 注意:[/b]无论此设置的值是多少,[code]res://override.cfg[/code]仍将被读取" -"以覆盖项目设置(请参阅顶部的此类说明)。" +"指定一个文件来覆盖项目设置。比如说。[code]user://custom_settings.cfg[/code]。" +"参见[ProjectSettings]顶部类描述中的 \"Overriding\" 以获取更多信息。\n" +"[b]注意:[/b]不管这个设置的值如何,[code]res://override.cfg[/code]仍然会被读" +"取来覆盖项目设置。" #: doc/classes/ProjectSettings.xml:208 msgid "" @@ -54000,15 +54536,21 @@ msgid "" "default can impact compatibility with some external tools or plugins which " "expect the default [code].import[/code] folder." msgstr "" +"如果 [code]true[/code],项目将使用一个隐藏目录([code].import[/code])来存储" +"项目特定的数据(元数据、着色器缓存等)。\n" +"如果 [code]false[/code],将使用非隐藏目录 ([code]import[/code])。\n" +"[b]注意:[/b]更改此设置后重新启动应用程序。\n" +"[b]注意:[/b] 更改此值有助于在平台上或使用不允许隐藏目录模式的第三方工具。仅" +"当您知道您的环境需要时才修改此设置,因为更改默认设置会影响与某些需要默认 " +"[code].import[/code] 文件夹的外部工具或插件的兼容性。" #: doc/classes/ProjectSettings.xml:217 -#, fuzzy msgid "" "Icon set in [code].ico[/code] format used on Windows to set the game's icon. " "This is done automatically on start by calling [method OS.set_native_icon]." msgstr "" -"设置[code].ico[/code]格式图标,在Windows上用于设置游戏图标。这是在启动时通过" -"调用[method DisplayServer.set_native_icon]自动完成的。" +"以[code].ico[/code]格式设置的图标,在Windows上用于设置游戏的图标。这在启动时" +"通过调用[method OS.set_native_icon]自动完成。" #: doc/classes/ProjectSettings.xml:220 msgid "" @@ -54023,6 +54565,13 @@ msgid "" "initially activated. It will only be active on machines where performance is " "adequate to render frames at the refresh rate." msgstr "" +"帧增量的时间样本会受到平台引入的随机变化的影响,即使由于 V-Sync 以固定间隔显" +"示帧也是如此。这会导致抖动。通过过滤输入增量以校正刷新率的微小波动,增量平滑" +"通常可以提供更好的结果。\n" +"[b]注意:[/b] Delta 平滑仅在 [member display/window/vsync/use_vsync] 开启时尝" +"试,因为它在没有 V-Sync 的情况下无法正常工作。\n" +"在最初激活平滑之前,以稳定的帧速率可能需要几秒钟的时间。它只会在性能足以以刷" +"新率渲染帧的机器上激活。" #: doc/classes/ProjectSettings.xml:225 msgid "" @@ -54030,6 +54579,8 @@ msgid "" "just after the drawing has taken place. This may lead to more consistent " "deltas and a reduction in frame stutters." msgstr "" +"[b]实验性的。[/b] 将每一帧的delta时间的测量转移到绘图发生之后。这可能会导致更" +"一致的延迟和减少帧的停顿。" #: doc/classes/ProjectSettings.xml:228 msgid "" @@ -54039,6 +54590,10 @@ msgid "" "application/run/disable_stdout].\n" "Changes to this setting will only be applied upon restarting the application." msgstr "" +"如果 [code]true[/code],则禁用打印到标准错误。如果 [code]true[/code],这也会" +"隐藏由 [method @GDScript.push_error] 和 [method @GDScript.push_warning] 打印" +"的错误和警告消息。另见[member application/run/disable_stdout]。\n" +"对此设置的更改只会在重新启动应用程序时应用。" #: doc/classes/ProjectSettings.xml:232 msgid "" @@ -54047,6 +54602,10 @@ msgid "" "command line argument. See also [member application/run/disable_stderr].\n" "Changes to this setting will only be applied upon restarting the application." msgstr "" +"如果 [code]true[/code],则禁用打印到标准输出。这相当于使用 [code]--quiet[/" +"code] 命令行参数启动编辑器或项目。另见[member application/run/" +"disable_stderr]。\n" +"对此设置的更改只会在重新启动应用程序时应用。" #: doc/classes/ProjectSettings.xml:236 msgid "" @@ -54063,6 +54622,15 @@ 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:242 msgid "" @@ -54070,6 +54638,9 @@ msgid "" "performance is less important during debugging.\n" "Changes to this setting will only be applied upon restarting the application." msgstr "" +"调试构建覆盖[member application/run/flush_stdout_on_print],因为在调试过程中" +"性能不那么重要。\n" +"仅在重新启动应用程序时才会应用此设置的更改。" #: doc/classes/ProjectSettings.xml:246 msgid "" @@ -54151,14 +54722,18 @@ msgstr "" #: doc/classes/ProjectSettings.xml:279 msgid "" -"Output latency in milliseconds for audio. Lower values will result in lower " -"audio latency at the cost of increased CPU usage. Low values may result in " -"audible cracking on slower hardware." +"Specifies the preferred output latency in milliseconds for audio. Lower " +"values will result in lower audio latency at the cost of increased CPU " +"usage. Low values may result in audible cracking on slower hardware.\n" +"Audio output latency may be constrained by the host operating system and " +"audio hardware drivers. If the host can not provide the specified audio " +"output latency then Godot will attempt to use the nearest latency allowed by " +"the host. As such you should always use [method AudioServer." +"get_output_latency] to determine the actual audio output latency.\n" +"[b]Note:[/b] This setting is ignored on Windows." msgstr "" -"音频的输出延迟(毫秒)。较低的值将导致较低的音频延迟,但代价是CPU使用率增加。较" -"低的值可能会导致较慢硬件上的声音破裂。" -#: doc/classes/ProjectSettings.xml:282 +#: doc/classes/ProjectSettings.xml:284 msgid "" "Safer override for [member audio/output_latency] in the Web platform, to " "avoid audio issues especially on mobile devices." @@ -54166,14 +54741,14 @@ msgstr "" "在网络平台中更安全地覆盖 [member audio/output_latency],以避免音频问题,尤其" "是在移动设备上。" -#: doc/classes/ProjectSettings.xml:285 +#: doc/classes/ProjectSettings.xml:287 msgid "" "Setting to hardcode audio delay when playing video. Best to leave this " "untouched unless you know what you are doing." msgstr "" "播放视频时设置为硬编码音频延迟。除非你知道自己在做什么,否则最好不要动它。" -#: doc/classes/ProjectSettings.xml:288 +#: doc/classes/ProjectSettings.xml:290 msgid "" "The default compression level for gzip. Affects compressed scenes and " "resources. Higher levels result in smaller files at the cost of compression " @@ -54186,7 +54761,7 @@ msgstr "" "件变小。解压缩速度大多不受压缩级别的影响。[code]-1[/code]使用默认的gzip压缩级" "别,该级别与[code]6[/code]相同,但由于底层zlib更新,未来可能会发生变化。" -#: doc/classes/ProjectSettings.xml:291 +#: doc/classes/ProjectSettings.xml:293 msgid "" "The default compression level for Zlib. Affects compressed scenes and " "resources. Higher levels result in smaller files at the cost of compression " @@ -54199,7 +54774,7 @@ msgstr "" "件变小。解压缩速度大多不受压缩级别的影响。[code]-1[/code]使用默认的gzip压缩级" "别,该级别与[code]6[/code]相同,但由于底层zlib更新,未来可能会发生变化。" -#: doc/classes/ProjectSettings.xml:294 +#: doc/classes/ProjectSettings.xml:296 msgid "" "The default compression level for Zstandard. Affects compressed scenes and " "resources. Higher levels result in smaller files at the cost of compression " @@ -54208,7 +54783,7 @@ msgstr "" "Zstandard的默认压缩级别。影响压缩的场景和资源。较高的级别会以压缩速度为代价导" "致文件变小。解压缩速度大多不受压缩级别的影响。" -#: doc/classes/ProjectSettings.xml:297 +#: doc/classes/ProjectSettings.xml:299 msgid "" "Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-" "distance matching[/url] in Zstandard." @@ -54216,7 +54791,7 @@ msgstr "" "在Zstandard中启用 [url=https://github.com/facebook/zstd/releases/tag/" "v1.3.2]long-distance matching[/url] 。" -#: doc/classes/ProjectSettings.xml:300 +#: doc/classes/ProjectSettings.xml:302 msgid "" "Largest size limit (in power of 2) allowed when compressing using long-" "distance matching with Zstandard. Higher values can result in better " @@ -54225,7 +54800,7 @@ msgstr "" "使用与Zstandard的长距离匹配进行压缩时,允许的最大大小限制(2的幂)。更高的值可" "以产生更好的压缩,但是在压缩和解压缩时需要更多的内存。" -#: doc/classes/ProjectSettings.xml:303 +#: doc/classes/ProjectSettings.xml:305 msgid "" "If [code]true[/code], displays getters and setters in autocompletion results " "in the script editor. This setting is meant to be used when porting old " @@ -54236,19 +54811,19 @@ msgstr "" "个设置是为了在移植旧项目(戈多2)时使用,因为使用成员变量是从戈多3开始的首选风" "格。" -#: doc/classes/ProjectSettings.xml:306 +#: doc/classes/ProjectSettings.xml:308 msgid "" "If [code]true[/code], enables warnings when a constant is used as a function." msgstr "如果[code]true[/code],则当常量用作函数时会发出警告。" -#: doc/classes/ProjectSettings.xml:309 +#: doc/classes/ProjectSettings.xml:311 msgid "" "If [code]true[/code], enables warnings when deprecated keywords such as " "[code]slave[/code] are used." msgstr "" "如果[code]true[/code],当使用已废弃的关键字如[code]slave[/code]时,启用警告。" -#: doc/classes/ProjectSettings.xml:312 +#: doc/classes/ProjectSettings.xml:314 msgid "" "If [code]true[/code], enables specific GDScript warnings (see [code]debug/" "gdscript/warnings/*[/code] settings). If [code]false[/code], disables all " @@ -54257,7 +54832,7 @@ msgstr "" "如果[code]true[/code],则启用特定的GDScript警告(请参阅[code]debug/gdscript/" "warnings/*[/code]设置)。如果[code]为false[/code],则禁用所有GDScript警告。" -#: doc/classes/ProjectSettings.xml:315 +#: doc/classes/ProjectSettings.xml:317 msgid "" "If [code]true[/code], scripts in the [code]res://addons[/code] folder will " "not generate warnings." @@ -54265,13 +54840,13 @@ msgstr "" "如果[code]true[/code],则[code]res://addons[/code]文件夹中的脚本不会生成警" "告。" -#: doc/classes/ProjectSettings.xml:318 +#: doc/classes/ProjectSettings.xml:320 msgid "" "If [code]true[/code], enables warnings when a function is declared with the " "same name as a constant." msgstr "如果为[code]true[/code],当函数被声明为与常量同名时,启用警告。" -#: doc/classes/ProjectSettings.xml:321 +#: doc/classes/ProjectSettings.xml:323 msgid "" "If [code]true[/code], enables warnings when a function is declared with the " "same name as a variable. This will turn into an error in a future version " @@ -54280,7 +54855,7 @@ msgstr "" "如果为[code]true[/code], 当一个函数与一个变量同名声明时,启用警告。在未来的版" "本中,当GDScript支持第一类函数时,这将变成一个错误。" -#: doc/classes/ProjectSettings.xml:324 +#: doc/classes/ProjectSettings.xml:326 msgid "" "If [code]true[/code], enables warnings when a function assigned to a " "variable may yield and return a function state instead of a value." @@ -54288,20 +54863,20 @@ msgstr "" "如果[code]为true[/code],则当分配给变量的函数可能产生并返回函数状态而不是值" "时,启用警告。" -#: doc/classes/ProjectSettings.xml:327 +#: doc/classes/ProjectSettings.xml:329 msgid "" "If [code]true[/code], enables warnings when using a function as if it was a " "property." msgstr "如果[code]true[/code],则在使用函数时启用警告,就像它是属性一样。" -#: doc/classes/ProjectSettings.xml:330 +#: doc/classes/ProjectSettings.xml:332 msgid "" "If [code]true[/code], enables warnings when a ternary operator may emit " "values with incompatible types." msgstr "" "如果[code]true[/code],则当三元运算符可能发出类型不兼容的值时,将启用警告。" -#: doc/classes/ProjectSettings.xml:333 +#: doc/classes/ProjectSettings.xml:335 msgid "" "If [code]true[/code], enables warnings when dividing an integer by another " "integer (the decimal part will be discarded)." @@ -54309,7 +54884,7 @@ msgstr "" "如果[code]为true[/code],则在用一个整数除以另一个整数时启用警告(小数部分将被" "丢弃)。" -#: doc/classes/ProjectSettings.xml:336 +#: doc/classes/ProjectSettings.xml:338 msgid "" "If [code]true[/code], enables warnings when passing a floating-point value " "to a function that expects an integer (it will be converted and lose " @@ -54318,13 +54893,13 @@ msgstr "" "如果[code]为true[/code],则在将浮点值传递给需要整数的函数时启用警告(它将被转" "换并失去精度)。" -#: doc/classes/ProjectSettings.xml:339 +#: doc/classes/ProjectSettings.xml:341 msgid "" "If [code]true[/code], enables warnings when using a property as if it was a " "function." msgstr "如果[code]true[/code],则在将属性当作函数使用时启用警告。" -#: doc/classes/ProjectSettings.xml:342 +#: doc/classes/ProjectSettings.xml:344 msgid "" "If [code]true[/code], enables warnings when calling a function without using " "its return value (by assigning it to a variable or using it as a function " @@ -54335,7 +54910,7 @@ msgstr "" "参数)调用函数时启用警告。这样的返回值有时使用[enum Error] 枚举来表示可能的错" "误。" -#: doc/classes/ProjectSettings.xml:345 +#: doc/classes/ProjectSettings.xml:347 msgid "" "If [code]true[/code], enables warnings when defining a local or subclass " "member variable that would shadow a variable at an upper level (such as a " @@ -54344,7 +54919,7 @@ msgstr "" "如果[code]true[/code],则在定义局部或子类成员变量时启用警告,该局部或子类成员" "变量将在上层阴影变量(如成员变量)。" -#: doc/classes/ProjectSettings.xml:348 +#: doc/classes/ProjectSettings.xml:350 msgid "" "If [code]true[/code], enables warnings when calling an expression that has " "no effect on the surrounding code, such as writing [code]2 + 2[/code] as a " @@ -54353,7 +54928,7 @@ msgstr "" "如果[code]true[/code],则在调用对周围代码没有影响的表达式时启用警告,例如将" "[code]2 + 2[/code]写成语句。" -#: doc/classes/ProjectSettings.xml:351 +#: doc/classes/ProjectSettings.xml:353 msgid "" "If [code]true[/code], enables warnings when calling a ternary expression " "that has no effect on the surrounding code, such as writing [code]42 if " @@ -54362,18 +54937,18 @@ msgstr "" "如果[code]true[/code],则在调用对周围代码没有影响的三元表达式时启用警告,例如" "将[code]42(如果激活else 0[/code])写入语句。" -#: doc/classes/ProjectSettings.xml:354 +#: doc/classes/ProjectSettings.xml:356 msgid "" "If [code]true[/code], all warnings will be reported as if they were errors." msgstr "如果[code]true[/code],所有警告将被报告为错误。" -#: doc/classes/ProjectSettings.xml:357 +#: doc/classes/ProjectSettings.xml:359 msgid "" "If [code]true[/code], enables warnings when using a variable that wasn't " "previously assigned." msgstr "如果[code]true[/code],则在使用以前没有赋值的变量时启用警告。" -#: doc/classes/ProjectSettings.xml:360 +#: doc/classes/ProjectSettings.xml:362 msgid "" "If [code]true[/code], enables warnings when assigning a variable using an " "assignment operator like [code]+=[/code] if the variable wasn't previously " @@ -54382,7 +54957,7 @@ msgstr "" "如果[code]true[/code],则在使用赋值操作符[code]+=[/code](如果变量之前没有赋" "值)为变量赋值时启用警告。" -#: doc/classes/ProjectSettings.xml:363 +#: doc/classes/ProjectSettings.xml:365 msgid "" "If [code]true[/code], enables warnings when unreachable code is detected " "(such as after a [code]return[/code] statement that will always be executed)." @@ -54390,7 +54965,7 @@ msgstr "" "如果[code]true[/code],则在检测到不可达的代码时启用警告(例如在始终执行的" "[code]return[/code]语句之后)。" -#: doc/classes/ProjectSettings.xml:366 +#: doc/classes/ProjectSettings.xml:368 msgid "" "If [code]true[/code], enables warnings when using an expression whose type " "may not be compatible with the function parameter expected." @@ -54398,52 +54973,52 @@ msgstr "" "如果[code]true[/code],则在使用类型可能与期望的函数参数不兼容的表达式时启用警" "告。" -#: doc/classes/ProjectSettings.xml:369 +#: doc/classes/ProjectSettings.xml:371 msgid "If [code]true[/code], enables warnings when performing an unsafe cast." msgstr "如果[code]true[/code],则在执行不安全的强制转换时启用警告。" -#: doc/classes/ProjectSettings.xml:372 +#: doc/classes/ProjectSettings.xml:374 msgid "" "If [code]true[/code], enables warnings when calling a method whose presence " "is not guaranteed at compile-time in the class." msgstr "" "如果[code]true[/code],则在调用类中不能保证在编译时存在的方法时启用警告。" -#: doc/classes/ProjectSettings.xml:375 +#: doc/classes/ProjectSettings.xml:377 msgid "" "If [code]true[/code], enables warnings when accessing a property whose " "presence is not guaranteed at compile-time in the class." msgstr "" "如果[code]true[/code],则在访问类中不能保证在编译时存在的属性时启用警告。" -#: doc/classes/ProjectSettings.xml:378 -#, fuzzy +#: doc/classes/ProjectSettings.xml:380 msgid "" "If [code]true[/code], enables warnings when a function parameter is unused." -msgstr "如果[code]true[/code],则在信号未使用时启用警告。" +msgstr "如果[code]true[/code],当一个函数参数未使用时,启用警告。" -#: doc/classes/ProjectSettings.xml:381 -#, fuzzy +#: doc/classes/ProjectSettings.xml:383 msgid "" "If [code]true[/code], enables warnings when a member variable is unused." -msgstr "如果[code]true[/code],则在局部变量未使用时启用警告。" +msgstr "如果[code]true[/code],当一个成员变量未使用时,启用警告。" -#: doc/classes/ProjectSettings.xml:384 +#: doc/classes/ProjectSettings.xml:386 msgid "If [code]true[/code], enables warnings when a signal is unused." msgstr "如果[code]true[/code],则在信号未使用时启用警告。" -#: doc/classes/ProjectSettings.xml:387 +#: doc/classes/ProjectSettings.xml:389 msgid "If [code]true[/code], enables warnings when a local variable is unused." msgstr "如果[code]true[/code],则在局部变量未使用时启用警告。" -#: doc/classes/ProjectSettings.xml:390 +#: doc/classes/ProjectSettings.xml:392 msgid "" "If [code]true[/code], enables warnings when a variable is declared with the " "same name as a function. This will turn into an error in a future version " "when first-class functions become supported in GDScript." msgstr "" +"如果 [code]true[/code],则在声明与函数同名的变量时启用警告。当 GDScript 支持" +"一流函数时,这将在未来版本中变成错误。" -#: doc/classes/ProjectSettings.xml:393 +#: doc/classes/ProjectSettings.xml:395 msgid "" "If [code]true[/code], enables warnings when assigning the result of a " "function that returns [code]void[/code] to a variable." @@ -54451,12 +55026,11 @@ msgstr "" "如果[code]true[/code],则在将返回[code]void[/code]的函数的结果赋值给变量时启" "用警告。" -#: doc/classes/ProjectSettings.xml:396 +#: doc/classes/ProjectSettings.xml:398 msgid "Message to be displayed before the backtrace when the engine crashes." msgstr "当引擎崩溃时,在回溯之前显示的消息。" -#: doc/classes/ProjectSettings.xml:399 -#, fuzzy +#: doc/classes/ProjectSettings.xml:401 msgid "" "Maximum number of frames per second allowed. The actual number of frames per " "second may still be below this value if the game is lagging.\n" @@ -54466,25 +55040,25 @@ msgid "" "VSync, e.g. to perform non-real-time rendering of static frames, or test the " "project under lag conditions." msgstr "" -"每秒允许的最大帧数。如果游戏是卡顿的,每秒的实际帧数可能仍然低于这个值。\n" -"如果[member display/window/vsync/use_vsync]被启用,它将优先且强制帧数不能超过" -"监视器的刷新率。\n" -"因此,这个设置主要用于将最大FPS降低到垂直同步以下,例如执行静态帧的非实时渲" -"染,或在延迟条件下测试项目。" +"允许的每秒最大帧数。如果游戏延迟,实际的每秒帧数可能低于这个值。\n" +"如果启用[member display/window/vsync/use_vsync],这将优先考虑,强制的FPS值不" +"能超过显示器的刷新率。\n" +"因此,这个设置主要是降低低于VSync的最大FPS,例如,对静态帧进行非实时渲染,或" +"者在延迟条件下测试项目。" -#: doc/classes/ProjectSettings.xml:404 +#: doc/classes/ProjectSettings.xml:406 msgid "Maximum call stack allowed for debugging GDScript." msgstr "调试GDScript时允许的最大调用堆栈。" -#: doc/classes/ProjectSettings.xml:407 +#: doc/classes/ProjectSettings.xml:409 msgid "Maximum amount of functions per frame allowed when profiling." msgstr "分析时每个帧允许的最大函数数量。" -#: doc/classes/ProjectSettings.xml:410 +#: doc/classes/ProjectSettings.xml:412 msgid "Print frames per second to standard output every second." msgstr "每秒钟打印帧到标准输出。" -#: doc/classes/ProjectSettings.xml:413 +#: doc/classes/ProjectSettings.xml:415 msgid "" "Print more information to standard output when running. It displays " "information such as memory leaks, which scenes and resources are being " @@ -54493,70 +55067,70 @@ msgstr "" "运行时打印更多信息到标准输出。它显示诸如内存泄漏、哪些场景和资源正在加载等信" "息。" -#: doc/classes/ProjectSettings.xml:416 +#: doc/classes/ProjectSettings.xml:418 msgid "Maximum call stack in visual scripting, to avoid infinite recursion." msgstr "最大的可视脚本调用堆栈,以避免无限递归。" -#: doc/classes/ProjectSettings.xml:419 +#: doc/classes/ProjectSettings.xml:421 msgid "" "Color of the contact points between collision shapes, visible when \"Visible " "Collision Shapes\" is enabled in the Debug menu." msgstr "碰撞形状之间接触点的颜色,在调试菜单中启用“可见碰撞形状”时可见。" -#: doc/classes/ProjectSettings.xml:422 -#, fuzzy +#: doc/classes/ProjectSettings.xml:424 msgid "" "Sets whether 2D physics will display collision outlines in game when " "\"Visible Collision Shapes\" is enabled in the Debug menu." -msgstr "碰撞形状的颜色,当在调试菜单中启用“可见碰撞形状”时可见。" +msgstr "" +"设置当调试菜单中的启用 \"可见的碰撞形状\" 时,2D物理是否会在游戏中显示碰撞轮" +"廓。" -#: doc/classes/ProjectSettings.xml:425 +#: doc/classes/ProjectSettings.xml:427 msgid "" "Maximum number of contact points between collision shapes to display when " "\"Visible Collision Shapes\" is enabled in the Debug menu." msgstr "当在调试菜单中启用“可见碰撞形状”时,碰撞形状之间显示的最大接触点数。" -#: doc/classes/ProjectSettings.xml:428 +#: doc/classes/ProjectSettings.xml:430 msgid "" "Color of the collision shapes, visible when \"Visible Collision Shapes\" is " "enabled in the Debug menu." msgstr "碰撞形状的颜色,当在调试菜单中启用“可见碰撞形状”时可见。" -#: doc/classes/ProjectSettings.xml:431 +#: doc/classes/ProjectSettings.xml:433 msgid "" "Color of the disabled navigation geometry, visible when \"Visible Navigation" "\" is enabled in the Debug menu." msgstr "被禁用的导航几何图形的颜色,在调试菜单中启用“可见导航”时可见。" -#: doc/classes/ProjectSettings.xml:434 +#: doc/classes/ProjectSettings.xml:436 msgid "" "Color of the navigation geometry, visible when \"Visible Navigation\" is " "enabled in the Debug menu." msgstr "导航几何图形的颜色,在调试菜单中启用“可见导航”时可见。" -#: doc/classes/ProjectSettings.xml:437 +#: doc/classes/ProjectSettings.xml:439 msgid "Custom image for the mouse cursor (limited to 256×256)." msgstr "鼠标光标的自定义图像(最大256×256)。" -#: doc/classes/ProjectSettings.xml:440 +#: doc/classes/ProjectSettings.xml:442 msgid "Hotspot for the custom mouse cursor image." msgstr "自定义鼠标光标图像的热点。" -#: doc/classes/ProjectSettings.xml:443 +#: doc/classes/ProjectSettings.xml:445 msgid "Position offset for tooltips, relative to the mouse cursor's hotspot." msgstr "工具提示相对于鼠标光标热点的位置偏移量。" -#: doc/classes/ProjectSettings.xml:446 -#, fuzzy +#: doc/classes/ProjectSettings.xml:448 msgid "" "If [code]true[/code], allows HiDPI display on Windows, macOS, and the HTML5 " "platform. This setting has no effect on desktop Linux, as DPI-awareness " "fallbacks are not supported there." msgstr "" -"如果[code]true[/code],允许在Windows和macOS上显示HiDPI。这个设置对桌面Linux没" -"有影响,因为dpi感知回退在那里不受支持。" +"如果[code]true[/code],允许在Windows、macOS和HTML5平台上显示HiDPI。这个设置对" +"桌面Linux没有影响,因为它不支持DPI感知回退。" -#: doc/classes/ProjectSettings.xml:449 +#: doc/classes/ProjectSettings.xml:451 msgid "" "If [code]true[/code], keeps the screen on (even in case of inactivity), so " "the screensaver does not take over. Works on desktop and mobile platforms." @@ -54564,7 +55138,7 @@ msgstr "" "如果[code]true[/code],则保持屏幕打开(即使在不活动的情况下),因此屏幕保护程序" "不会接管。适用于桌面和移动平台。" -#: doc/classes/ProjectSettings.xml:452 +#: doc/classes/ProjectSettings.xml:454 msgid "" "The default screen orientation to use on mobile devices.\n" "[b]Note:[/b] When set to a portrait orientation, this project setting does " @@ -54572,8 +55146,12 @@ msgid "" "you have to set [member display/window/size/width] and [member display/" "window/size/height] accordingly." msgstr "" +"在移动设备上使用的默认屏幕方向。\n" +"[b]注意:[/b]设置为纵向时,此项目设置不会自动翻转项目分辨率的宽度和高度。相" +"反,您必须相应地设置 [member display/window/size/width] 和 [member display/" +"window/size/height]。" -#: doc/classes/ProjectSettings.xml:456 +#: doc/classes/ProjectSettings.xml:458 msgid "" "If [code]true[/code], the home indicator is hidden automatically. This only " "affects iOS devices without a physical home button." @@ -54581,7 +55159,7 @@ msgstr "" "如果[code]true[/code],主指示器将自动隐藏。这只会影响没有物理home键的iOS设" "备。" -#: doc/classes/ProjectSettings.xml:459 +#: doc/classes/ProjectSettings.xml:461 msgid "" "If [code]true[/code], allows per-pixel transparency for the window " "background. This affects performance, so leave it on [code]false[/code] " @@ -54590,28 +55168,41 @@ msgid "" "[b]Note:[/b] This feature is implemented on HTML5, Linux, macOS, Windows, " "and Android." msgstr "" +"如果 [code]true[/code],则允许窗口背景的逐像素透明度。这会影响性能,因此除非" +"需要,否则将其保留为 [code]false[/code]。\n" +"有关更多详细信息,请参阅 [member OS." +"window_per_pixel_transparency_enabled]。\n" +"[b]注意:[/b] 此功能在 HTML5、Linux、macOS、Windows 和 Android 上实现。" -#: doc/classes/ProjectSettings.xml:464 +#: doc/classes/ProjectSettings.xml:466 msgid "" "Sets the window background to transparent when it starts.\n" "See [member OS.window_per_pixel_transparency_enabled] for more details.\n" "[b]Note:[/b] This feature is implemented on HTML5, Linux, macOS, Windows, " "and Android." msgstr "" +"启动时将窗口背景设置为透明。\n" +"有关更多详细信息,请参阅 [member OS." +"window_per_pixel_transparency_enabled]。\n" +"[b]注意:[/b] 此功能在 HTML5、Linux、macOS、Windows 和 Android 上实现。" -#: doc/classes/ProjectSettings.xml:469 +#: doc/classes/ProjectSettings.xml:471 msgid "" "Forces the main window to be always on top.\n" "[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5." msgstr "" +"强制主窗口始终在顶部。\n" +"[b]注意:[/b] 此设置在 iOS、Android 和 HTML5 上被忽略。" -#: doc/classes/ProjectSettings.xml:473 +#: doc/classes/ProjectSettings.xml:475 msgid "" "Forces the main window to be borderless.\n" "[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5." msgstr "" +"强制主窗口无边框。\n" +"[b]注意:[/b] 此设置在 iOS、Android 和 HTML5 上被忽略。" -#: doc/classes/ProjectSettings.xml:477 +#: doc/classes/ProjectSettings.xml:479 msgid "" "Sets the main window to full screen when the project starts. Note that this " "is not [i]exclusive[/i] fullscreen. On Windows and Linux, a borderless " @@ -54624,8 +55215,15 @@ msgid "" "fullscreen mode.\n" "[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5." msgstr "" +"项目启动时将主窗口设置为全屏。请注意,这不是 [i] 独立 的[/i] 全屏显示。在 " +"Windows 和 Linux 上,无边框窗口用于模拟全屏。在 macOS 上,会创建一个新的桌面" +"用于显示正在运行的项目。\n" +"无论平台如何,启用全屏都会更改窗口大小以匹配显示器的大小。因此,请确保您的项" +"目在启用全屏模式时支持 [url=https://docs.godotengine.org/zh_CN/stable/" +"tutorials/rendering/multiple_resolutions.html]多种分辨率[/url]。\n" +"[b]注意:[/b] 在 iOS、Android 和 HTML5 上忽略此设置。" -#: doc/classes/ProjectSettings.xml:482 +#: doc/classes/ProjectSettings.xml:484 msgid "" "Sets the game's main viewport height. On desktop platforms, this is the " "default window size. Stretch mode settings also use this as a reference when " @@ -54634,26 +55232,27 @@ msgstr "" "设置游戏的主视窗高度。在桌面平台上,这是默认的窗口大小。当启用拉伸模式设置" "时,也使用此参数作为参考。" -#: doc/classes/ProjectSettings.xml:485 -#, fuzzy +#: doc/classes/ProjectSettings.xml:487 msgid "" "Allows the window to be resizable by default.\n" "[b]Note:[/b] This setting is ignored on iOS and Android." -msgstr "默认情况下允许窗口可调整大小。" +msgstr "" +"允许窗口默认可调整大小。\n" +"[b]注意:[/b] 这个设置在iOS和Android上将忽略。" -#: doc/classes/ProjectSettings.xml:489 +#: doc/classes/ProjectSettings.xml:491 msgid "" "If greater than zero, overrides the window height when running the game. " "Useful for testing stretch modes." msgstr "如果大于0,则在运行游戏时覆盖窗口高度。用于测试拉伸模式。" -#: doc/classes/ProjectSettings.xml:492 +#: doc/classes/ProjectSettings.xml:494 msgid "" "If greater than zero, overrides the window width when running the game. " "Useful for testing stretch modes." msgstr "如果大于0,则在运行游戏时覆盖窗口宽度。用于测试拉伸模式。" -#: doc/classes/ProjectSettings.xml:495 +#: doc/classes/ProjectSettings.xml:497 msgid "" "Sets the game's main viewport width. On desktop platforms, this is the " "default window size. Stretch mode settings also use this as a reference when " @@ -54662,13 +55261,13 @@ msgstr "" "设置游戏的主视窗宽度。在桌面平台上,这是默认的窗口大小。当启用拉伸模式设置" "时,也使用此参数作为参考。" -#: doc/classes/ProjectSettings.xml:498 +#: doc/classes/ProjectSettings.xml:500 msgid "" "Specifies the tablet driver to use. If left empty, the default driver will " "be used." msgstr "指定要使用的平板驱动程序。如果为空,将使用默认驱动程序。" -#: doc/classes/ProjectSettings.xml:501 +#: doc/classes/ProjectSettings.xml:503 msgid "" "If [code]true[/code], enables vertical synchronization. This eliminates " "tearing that may appear in moving scenes, at the cost of higher input " @@ -54680,7 +55279,7 @@ msgstr "" "较高的输入延迟和较低的帧率为代价。如果[code]false[/code],垂直同步将被禁用," "然而,许多平台仍将执行它(如手机平台和HTML5)。" -#: doc/classes/ProjectSettings.xml:504 +#: doc/classes/ProjectSettings.xml:506 msgid "" "If [code]Use Vsync[/code] is enabled and this setting is [code]true[/code], " "enables vertical synchronization via the operating system's window " @@ -54696,7 +55295,7 @@ msgstr "" "[b]注:[/b]这个选项是实验性的,旨在缓解一些用户的卡顿体验。然而,有些用户在使" "用它时体验到垂直同步帧率减半(例如从60 FPS降至30 FPS)。" -#: doc/classes/ProjectSettings.xml:508 +#: doc/classes/ProjectSettings.xml:510 msgid "" "The command-line arguments to append to Godot's own command line when " "running the project. This doesn't affect the editor itself.\n" @@ -54711,18 +55310,26 @@ msgid "" "prime-run %command%\n" "[/codeblock]" msgstr "" +"运行项目时附加到 Godot 自己的命令行的命令行参数。这不会影响编辑器本身。\n" +"可以使用 [code]%command%[/code] 占位符使另一个可执行文件运行 Godot。占位符将" +"替换为 Godot 自己的命令行。程序特定的参数应该放在 [i] 占位符之前 [/i],而 " +"Godot 特定参数应该放在 [i] 占位符之后 [/i]。\n" +"例如,这可用于强制项目在 Linux 上的 NVIDIA Optimus 系统中的专用 GPU 上运" +"行:\n" +"[codeblock]\n" +"prime-run %command%\n" +"[/codeblock]" -#: doc/classes/ProjectSettings.xml:516 -#, fuzzy +#: doc/classes/ProjectSettings.xml:518 msgid "" "Search path for project-specific script templates. Godot will search for " "script templates both in the editor-specific path and in this project-" "specific path." msgstr "" -"搜索特定于项目的脚本模板路径。脚本模板将在特定于编辑器的路径和特定于项目的路" -"径中进行搜索。" +"对于项目特定的脚本模板的搜索路径。 Godot 将在编辑器的特定路径和此项目的路径中" +"搜索。" -#: doc/classes/ProjectSettings.xml:519 +#: doc/classes/ProjectSettings.xml:521 msgid "" "Text-based file extensions to include in the script editor's \"Find in Files" "\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse " @@ -54733,7 +55340,7 @@ msgstr "" "[code]tscn[/code],如果你也想解析你的场景文件,特别是如果你使用的是在场景文件" "中序列化的内置脚本。" -#: doc/classes/ProjectSettings.xml:522 +#: doc/classes/ProjectSettings.xml:524 msgid "" "Default value for [member ScrollContainer.scroll_deadzone], which will be " "used for all [ScrollContainer]s unless overridden." @@ -54741,16 +55348,15 @@ msgstr "" "[member ScrollContainer.scroll_deadzone],它将用于所有[ScrollContainer]s,除" "非重写。" -#: doc/classes/ProjectSettings.xml:525 -#, fuzzy +#: doc/classes/ProjectSettings.xml:527 msgid "" "If [code]true[/code], swaps OK and Cancel buttons in dialogs on Windows and " "UWP to follow interface conventions." msgstr "" -"如果[code]为true[/code],则切换Windows和UWP对话框中的Cancel和OK按钮,以遵循界" -"面约定。" +"如果[code]true[/code],在Windows和UWP的对话框中交换确定和取消按钮,以遵循界面" +"惯例。" -#: doc/classes/ProjectSettings.xml:530 +#: doc/classes/ProjectSettings.xml:532 msgid "" "Path to a custom [Theme] resource file to use for the project ([code]theme[/" "code] or generic [code]tres[/code]/[code]res[/code] extension)." @@ -54758,31 +55364,31 @@ msgstr "" "用于项目的自定义[Theme]资源文件的路径([code]theme[/code]或通用[code]tres[/" "code]/[code]res[/code]扩展名)。" -#: doc/classes/ProjectSettings.xml:533 +#: doc/classes/ProjectSettings.xml:535 msgid "" "Path to a custom [Font] resource to use as default for all GUI elements of " "the project." msgstr "自定义[Font]资源的路径,用于项目的所有GUI元素的默认字体。" -#: doc/classes/ProjectSettings.xml:536 +#: doc/classes/ProjectSettings.xml:538 msgid "If [code]true[/code], makes sure the theme used works with HiDPI." msgstr "如果[code]true[/code],确保使用的主题将在HiDPI下工作。" -#: doc/classes/ProjectSettings.xml:539 +#: doc/classes/ProjectSettings.xml:541 msgid "" "Timer setting for incremental search in [Tree], [ItemList], etc. controls " "(in milliseconds)." msgstr "在[Tree], [ItemList]等控件中为增量搜索设置计时器(以毫秒为单位)。" -#: doc/classes/ProjectSettings.xml:542 +#: doc/classes/ProjectSettings.xml:544 msgid "Timer for detecting idle in [TextEdit] (in seconds)." msgstr "检测[TextEdit]空闲的计时器(单位为秒)。" -#: doc/classes/ProjectSettings.xml:545 +#: doc/classes/ProjectSettings.xml:547 msgid "Default delay for tooltips (in seconds)." msgstr "工具提示的默认延迟(以秒为单位)。" -#: doc/classes/ProjectSettings.xml:548 +#: doc/classes/ProjectSettings.xml:550 msgid "" "Default [InputEventAction] to confirm a focused button, menu or list item, " "or validate input.\n" @@ -54794,7 +55400,7 @@ msgstr "" "[b]注意:[/b]默认的[code]ui_*[/code]动作不能被删除,因为它们是几个[Control]的" "内部逻辑所必需的。但是,可以修改分配给该操作的事件。" -#: doc/classes/ProjectSettings.xml:552 +#: doc/classes/ProjectSettings.xml:554 msgid "" "Default [InputEventAction] to discard a modal or pending input.\n" "[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are " @@ -54805,7 +55411,7 @@ msgstr "" "[b]注意:[/b]默认的[code]ui_*[/code]动作不能被删除,因为它们是几个[Control]的" "内部逻辑所必需的。但是,可以修改分配给该操作的事件。" -#: doc/classes/ProjectSettings.xml:556 +#: doc/classes/ProjectSettings.xml:558 msgid "" "Default [InputEventAction] to move down in the UI.\n" "[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are " @@ -54816,7 +55422,7 @@ msgstr "" "[b]注意:[/b]默认的[code]ui_*[/code]动作不能被删除,因为它们是几个[Control]的" "内部逻辑所必需的。但是,可以修改分配给该操作的事件。" -#: doc/classes/ProjectSettings.xml:560 +#: doc/classes/ProjectSettings.xml:562 msgid "" "Default [InputEventAction] to go to the end position of a [Control] (e.g. " "last item in an [ItemList] or a [Tree]), matching the behavior of [constant " @@ -54830,7 +55436,7 @@ msgstr "" "[b]注意:[/b]默认的[code]ui_*[/code]动作不能被删除,因为它们是几个[Control]的" "内部逻辑所必需的。但是,可以修改分配给该操作的事件。" -#: doc/classes/ProjectSettings.xml:564 +#: doc/classes/ProjectSettings.xml:566 msgid "" "Default [InputEventAction] to focus the next [Control] in the scene. The " "focus behavior can be configured via [member Control.focus_next].\n" @@ -54843,7 +55449,7 @@ msgstr "" "[b]注意:[/b]默认的[code]ui_*[/code]动作不能被删除,因为它们是几个[Control]的" "内部逻辑所必需的。但是,可以修改分配给该操作的事件。" -#: doc/classes/ProjectSettings.xml:568 +#: doc/classes/ProjectSettings.xml:570 msgid "" "Default [InputEventAction] to focus the previous [Control] in the scene. The " "focus behavior can be configured via [member Control.focus_previous].\n" @@ -54856,7 +55462,7 @@ msgstr "" "[b]注意:[/b]默认的[code]ui_*[/code]动作不能被删除,因为它们是几个[Control]的" "内部逻辑所必需的。但是,可以修改分配给该操作的事件。" -#: doc/classes/ProjectSettings.xml:572 +#: doc/classes/ProjectSettings.xml:574 msgid "" "Default [InputEventAction] to go to the start position of a [Control] (e.g. " "first item in an [ItemList] or a [Tree]), matching the behavior of [constant " @@ -54870,7 +55476,7 @@ msgstr "" "[b]注意:[/b] 默认的[code]ui_*[/code]动作不能被删除,因为它们对于几个" "[Control]的内部逻辑是必要的。然而,分配给动作的事件可以被修改。" -#: doc/classes/ProjectSettings.xml:576 +#: doc/classes/ProjectSettings.xml:578 msgid "" "Default [InputEventAction] to move left in the UI.\n" "[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are " @@ -54881,7 +55487,7 @@ msgstr "" "[b]注意:[/b]默认的[code]ui_*[/code]动作不能被删除,因为它们是几个[Control]的" "内部逻辑所必需的。但是,可以修改分配给该操作的事件。" -#: doc/classes/ProjectSettings.xml:580 +#: doc/classes/ProjectSettings.xml:582 msgid "" "Default [InputEventAction] to go down a page in a [Control] (e.g. in an " "[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on " @@ -54895,7 +55501,7 @@ msgstr "" "[b]注意:[/b]默认的[code]ui_*[/code]动作不能被删除,因为它们是几个[Control]的" "内部逻辑所必需的。但是,可以修改分配给该操作的事件。" -#: doc/classes/ProjectSettings.xml:584 +#: doc/classes/ProjectSettings.xml:586 msgid "" "Default [InputEventAction] to go up a page in a [Control] (e.g. in an " "[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on " @@ -54909,7 +55515,7 @@ msgstr "" "[b]注意:[/b]默认的[code]ui_*[/code]动作不能被删除,因为它们是几个[Control]的" "内部逻辑所必需的。但是,可以修改分配给该操作的事件。" -#: doc/classes/ProjectSettings.xml:588 +#: doc/classes/ProjectSettings.xml:590 msgid "" "Default [InputEventAction] to move right in the UI.\n" "[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are " @@ -54920,7 +55526,7 @@ msgstr "" "[b]注意:[/b]默认的[code]ui_*[/code]动作不能被删除,因为它们是几个[Control]的" "内部逻辑所必需的。但是,可以修改分配给该操作的事件。" -#: doc/classes/ProjectSettings.xml:592 +#: doc/classes/ProjectSettings.xml:594 msgid "" "Default [InputEventAction] to select an item in a [Control] (e.g. in an " "[ItemList] or a [Tree]).\n" @@ -54932,7 +55538,7 @@ msgstr "" "[b]注意:[/b]默认的[code]ui_*[/code]动作不能被删除,因为它们是几个[Control]的" "内部逻辑所必需的。但是,可以修改分配给该操作的事件。" -#: doc/classes/ProjectSettings.xml:596 +#: doc/classes/ProjectSettings.xml:598 msgid "" "Default [InputEventAction] to move up in the UI.\n" "[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are " @@ -54943,7 +55549,7 @@ msgstr "" "[b]注意:[/b]默认的[code]ui_*[/code]动作不能被删除,因为它们是几个[Control]的" "内部逻辑所必需的。但是,可以修改分配给该操作的事件。" -#: doc/classes/ProjectSettings.xml:600 +#: doc/classes/ProjectSettings.xml:602 msgid "" "If [code]true[/code], key/touch/joystick events will be flushed just before " "every idle and physics frame.\n" @@ -54954,465 +55560,446 @@ msgid "" "because they can't run at the target frame rate.\n" "[b]Note:[/b] Currently implemented only in Android." msgstr "" +"如果 [code]true[/code],按键/触摸/操纵杆事件将在每个空闲帧和物理帧之前刷" +"新。\n" +"如果 [code]false[/code],此类事件将在引擎迭代之间每个空闲帧仅刷新一次。\n" +"启用此功能可以大大提高对输入的响应能力,特别是在需要每个可见(空闲)帧运行多" +"个物理帧的设备中,因为它们无法以目标帧速率运行。\n" +"[b]注:[/b] 目前仅在 Android 中实现。" -#: doc/classes/ProjectSettings.xml:606 +#: doc/classes/ProjectSettings.xml:608 msgid "" "If [code]true[/code], sends mouse input events when tapping or swiping on " "the touchscreen." msgstr "如果[code]true[/code],则在点击或滑动触摸屏时发送鼠标输入事件。" -#: doc/classes/ProjectSettings.xml:609 +#: doc/classes/ProjectSettings.xml:611 msgid "" "If [code]true[/code], sends touch input events when clicking or dragging the " "mouse." msgstr "如果[code]true[/code],则在点击或拖动鼠标时发送触摸输入事件。" -#: doc/classes/ProjectSettings.xml:612 -#, fuzzy +#: doc/classes/ProjectSettings.xml:614 msgid "Default delay for touch events. This only affects iOS devices." msgstr "工具提示的默认延迟(以秒为单位)。" -#: doc/classes/ProjectSettings.xml:615 +#: doc/classes/ProjectSettings.xml:617 msgid "Optional name for the 2D physics layer 1." msgstr "2D物理层1的可选名称。" -#: doc/classes/ProjectSettings.xml:618 +#: doc/classes/ProjectSettings.xml:620 msgid "Optional name for the 2D physics layer 10." msgstr "2D物理层10的可选名称。" -#: doc/classes/ProjectSettings.xml:621 +#: doc/classes/ProjectSettings.xml:623 msgid "Optional name for the 2D physics layer 11." msgstr "2D物理层11的可选名称。" -#: doc/classes/ProjectSettings.xml:624 +#: doc/classes/ProjectSettings.xml:626 msgid "Optional name for the 2D physics layer 12." msgstr "2D物理层12的可选名称。" -#: doc/classes/ProjectSettings.xml:627 +#: doc/classes/ProjectSettings.xml:629 msgid "Optional name for the 2D physics layer 13." msgstr "2D物理层13的可选名称。" -#: doc/classes/ProjectSettings.xml:630 +#: doc/classes/ProjectSettings.xml:632 msgid "Optional name for the 2D physics layer 14." msgstr "2D物理层14的可选名称。" -#: doc/classes/ProjectSettings.xml:633 +#: doc/classes/ProjectSettings.xml:635 msgid "Optional name for the 2D physics layer 15." msgstr "2D物理层15的可选名称。" -#: doc/classes/ProjectSettings.xml:636 +#: doc/classes/ProjectSettings.xml:638 msgid "Optional name for the 2D physics layer 16." msgstr "2D物理层16的可选名称。" -#: doc/classes/ProjectSettings.xml:639 +#: doc/classes/ProjectSettings.xml:641 msgid "Optional name for the 2D physics layer 17." msgstr "2D物理层17的可选名称。" -#: doc/classes/ProjectSettings.xml:642 +#: doc/classes/ProjectSettings.xml:644 msgid "Optional name for the 2D physics layer 18." msgstr "2D物理层18的可选名称。" -#: doc/classes/ProjectSettings.xml:645 +#: doc/classes/ProjectSettings.xml:647 msgid "Optional name for the 2D physics layer 19." msgstr "2D物理层19的可选名称。" -#: doc/classes/ProjectSettings.xml:648 +#: doc/classes/ProjectSettings.xml:650 msgid "Optional name for the 2D physics layer 2." msgstr "2D物理层2的可选名称。" -#: doc/classes/ProjectSettings.xml:651 +#: doc/classes/ProjectSettings.xml:653 msgid "Optional name for the 2D physics layer 20." msgstr "2D物理层20的可选名称。" -#: doc/classes/ProjectSettings.xml:654 -#, fuzzy +#: doc/classes/ProjectSettings.xml:656 msgid "Optional name for the 2D physics layer 21." -msgstr "2D物理层2的可选名称。" +msgstr "2D 物理层 21 的可选名称 ." -#: doc/classes/ProjectSettings.xml:657 -#, fuzzy +#: doc/classes/ProjectSettings.xml:659 msgid "Optional name for the 2D physics layer 22." -msgstr "2D物理层2的可选名称。" +msgstr "2D物理层22 的可选名称。" -#: doc/classes/ProjectSettings.xml:660 -#, fuzzy +#: doc/classes/ProjectSettings.xml:662 msgid "Optional name for the 2D physics layer 23." -msgstr "2D物理层2的可选名称。" +msgstr "2D物理层23的可选名称。" -#: doc/classes/ProjectSettings.xml:663 -#, fuzzy +#: doc/classes/ProjectSettings.xml:665 msgid "Optional name for the 2D physics layer 24." -msgstr "2D物理层2的可选名称。" +msgstr "2D物理层24的可选名称。" -#: doc/classes/ProjectSettings.xml:666 -#, fuzzy +#: doc/classes/ProjectSettings.xml:668 msgid "Optional name for the 2D physics layer 25." -msgstr "2D物理层2的可选名称。" +msgstr "2D物理层25的可选名称。" -#: doc/classes/ProjectSettings.xml:669 -#, fuzzy +#: doc/classes/ProjectSettings.xml:671 msgid "Optional name for the 2D physics layer 26." -msgstr "2D物理层2的可选名称。" +msgstr "2D物理层26的可选名称。" -#: doc/classes/ProjectSettings.xml:672 -#, fuzzy +#: doc/classes/ProjectSettings.xml:674 msgid "Optional name for the 2D physics layer 27." -msgstr "2D物理层2的可选名称。" +msgstr "2D物理层27的可选名称。" -#: doc/classes/ProjectSettings.xml:675 -#, fuzzy +#: doc/classes/ProjectSettings.xml:677 msgid "Optional name for the 2D physics layer 28." -msgstr "2D物理层2的可选名称。" +msgstr "2D物理层28的可选名称。" -#: doc/classes/ProjectSettings.xml:678 -#, fuzzy +#: doc/classes/ProjectSettings.xml:680 msgid "Optional name for the 2D physics layer 29." -msgstr "2D物理层2的可选名称。" +msgstr "2D物理层29的可选名称。" -#: doc/classes/ProjectSettings.xml:681 +#: doc/classes/ProjectSettings.xml:683 msgid "Optional name for the 2D physics layer 3." msgstr "2D物理层3的可选名称。" -#: doc/classes/ProjectSettings.xml:684 -#, fuzzy +#: doc/classes/ProjectSettings.xml:686 msgid "Optional name for the 2D physics layer 30." -msgstr "2D物理层3的可选名称。" +msgstr "2D物理层30的可选名称。" -#: doc/classes/ProjectSettings.xml:687 -#, fuzzy +#: doc/classes/ProjectSettings.xml:689 msgid "Optional name for the 2D physics layer 31." -msgstr "2D物理层3的可选名称。" +msgstr "2D物理层31的可选名称。" -#: doc/classes/ProjectSettings.xml:690 -#, fuzzy +#: doc/classes/ProjectSettings.xml:692 msgid "Optional name for the 2D physics layer 32." -msgstr "2D物理层3的可选名称。" +msgstr "2D物理层32的可选名称。" -#: doc/classes/ProjectSettings.xml:693 +#: doc/classes/ProjectSettings.xml:695 msgid "Optional name for the 2D physics layer 4." msgstr "2D物理层4的可选名称。" -#: doc/classes/ProjectSettings.xml:696 +#: doc/classes/ProjectSettings.xml:698 msgid "Optional name for the 2D physics layer 5." msgstr "2D物理层5的可选名称。" -#: doc/classes/ProjectSettings.xml:699 +#: doc/classes/ProjectSettings.xml:701 msgid "Optional name for the 2D physics layer 6." msgstr "2D物理层6的可选名称。" -#: doc/classes/ProjectSettings.xml:702 +#: doc/classes/ProjectSettings.xml:704 msgid "Optional name for the 2D physics layer 7." msgstr "2D物理层7的可选名称。" -#: doc/classes/ProjectSettings.xml:705 +#: doc/classes/ProjectSettings.xml:707 msgid "Optional name for the 2D physics layer 8." msgstr "2D物理层8的可选名称。" -#: doc/classes/ProjectSettings.xml:708 +#: doc/classes/ProjectSettings.xml:710 msgid "Optional name for the 2D physics layer 9." msgstr "2D物理层9的可选名称。" -#: doc/classes/ProjectSettings.xml:711 +#: doc/classes/ProjectSettings.xml:713 msgid "Optional name for the 2D render layer 1." msgstr "2D物理层1的可选名称。" -#: doc/classes/ProjectSettings.xml:714 +#: doc/classes/ProjectSettings.xml:716 msgid "Optional name for the 2D render layer 10." msgstr "2D渲染层10的可选名称。" -#: doc/classes/ProjectSettings.xml:717 +#: doc/classes/ProjectSettings.xml:719 msgid "Optional name for the 2D render layer 11." msgstr "2D渲染层11的可选名称。" -#: doc/classes/ProjectSettings.xml:720 +#: doc/classes/ProjectSettings.xml:722 msgid "Optional name for the 2D render layer 12." msgstr "2D渲染层12的可选名称。" -#: doc/classes/ProjectSettings.xml:723 +#: doc/classes/ProjectSettings.xml:725 msgid "Optional name for the 2D render layer 13." msgstr "2D渲染层13的可选名称。" -#: doc/classes/ProjectSettings.xml:726 +#: doc/classes/ProjectSettings.xml:728 msgid "Optional name for the 2D render layer 14." msgstr "2D渲染层14的可选名称。" -#: doc/classes/ProjectSettings.xml:729 +#: doc/classes/ProjectSettings.xml:731 msgid "Optional name for the 2D render layer 15." msgstr "2D渲染层15的可选名称。" -#: doc/classes/ProjectSettings.xml:732 +#: doc/classes/ProjectSettings.xml:734 msgid "Optional name for the 2D render layer 16." msgstr "2D渲染层16的可选名称。" -#: doc/classes/ProjectSettings.xml:735 +#: doc/classes/ProjectSettings.xml:737 msgid "Optional name for the 2D render layer 17." msgstr "2D渲染层17的可选名称。" -#: doc/classes/ProjectSettings.xml:738 +#: doc/classes/ProjectSettings.xml:740 msgid "Optional name for the 2D render layer 18." msgstr "2D渲染层18的可选名称。" -#: doc/classes/ProjectSettings.xml:741 +#: doc/classes/ProjectSettings.xml:743 msgid "Optional name for the 2D render layer 19." msgstr "2D渲染层19的可选名称。" -#: doc/classes/ProjectSettings.xml:744 +#: doc/classes/ProjectSettings.xml:746 msgid "Optional name for the 2D render layer 2." msgstr "2D 渲染层 2 的可选名称。" -#: doc/classes/ProjectSettings.xml:747 +#: doc/classes/ProjectSettings.xml:749 msgid "Optional name for the 2D render layer 20." msgstr "2D 渲染层 20 的可选名称。" -#: doc/classes/ProjectSettings.xml:750 +#: doc/classes/ProjectSettings.xml:752 msgid "Optional name for the 2D render layer 3." msgstr "2D 渲染层 3 的可选名称。" -#: doc/classes/ProjectSettings.xml:753 +#: doc/classes/ProjectSettings.xml:755 msgid "Optional name for the 2D render layer 4." msgstr "2D 渲染层 4 的可选名称。" -#: doc/classes/ProjectSettings.xml:756 +#: doc/classes/ProjectSettings.xml:758 msgid "Optional name for the 2D render layer 5." msgstr "2D 渲染层 5 的可选名称。" -#: doc/classes/ProjectSettings.xml:759 +#: doc/classes/ProjectSettings.xml:761 msgid "Optional name for the 2D render layer 6." msgstr "2D 渲染层 6 的可选名称。" -#: doc/classes/ProjectSettings.xml:762 +#: doc/classes/ProjectSettings.xml:764 msgid "Optional name for the 2D render layer 7." msgstr "2D 渲染层 7 的可选名称。" -#: doc/classes/ProjectSettings.xml:765 +#: doc/classes/ProjectSettings.xml:767 msgid "Optional name for the 2D render layer 8." msgstr "2D 渲染层 8 的可选名称。" -#: doc/classes/ProjectSettings.xml:768 +#: doc/classes/ProjectSettings.xml:770 msgid "Optional name for the 2D render layer 9." msgstr "2D 渲染层 9 的可选名称。" -#: doc/classes/ProjectSettings.xml:771 +#: doc/classes/ProjectSettings.xml:773 msgid "Optional name for the 3D physics layer 1." msgstr "3D物理层1 的可选名称。" -#: doc/classes/ProjectSettings.xml:774 +#: doc/classes/ProjectSettings.xml:776 msgid "Optional name for the 3D physics layer 10." msgstr "3D物理层10 的可选名称。" -#: doc/classes/ProjectSettings.xml:777 +#: doc/classes/ProjectSettings.xml:779 msgid "Optional name for the 3D physics layer 11." msgstr "3D物理层11 的可选名称。" -#: doc/classes/ProjectSettings.xml:780 +#: doc/classes/ProjectSettings.xml:782 msgid "Optional name for the 3D physics layer 12." msgstr "3D物理层12 的可选名称。" -#: doc/classes/ProjectSettings.xml:783 +#: doc/classes/ProjectSettings.xml:785 msgid "Optional name for the 3D physics layer 13." msgstr "3D物理层13 的可选名称。" -#: doc/classes/ProjectSettings.xml:786 +#: doc/classes/ProjectSettings.xml:788 msgid "Optional name for the 3D physics layer 14." msgstr "3D物理层14 的可选名称。" -#: doc/classes/ProjectSettings.xml:789 +#: doc/classes/ProjectSettings.xml:791 msgid "Optional name for the 3D physics layer 15." msgstr "3D物理层15 的可选名称。" -#: doc/classes/ProjectSettings.xml:792 +#: doc/classes/ProjectSettings.xml:794 msgid "Optional name for the 3D physics layer 16." msgstr "3D物理层16 的可选名称。" -#: doc/classes/ProjectSettings.xml:795 +#: doc/classes/ProjectSettings.xml:797 msgid "Optional name for the 3D physics layer 17." msgstr "3D物理层17 的可选名称。" -#: doc/classes/ProjectSettings.xml:798 +#: doc/classes/ProjectSettings.xml:800 msgid "Optional name for the 3D physics layer 18." msgstr "3D物理层18 的可选名称。" -#: doc/classes/ProjectSettings.xml:801 +#: doc/classes/ProjectSettings.xml:803 msgid "Optional name for the 3D physics layer 19." msgstr "3D物理层19 的可选名称。" -#: doc/classes/ProjectSettings.xml:804 +#: doc/classes/ProjectSettings.xml:806 msgid "Optional name for the 3D physics layer 2." msgstr "3D物理层2 的可选名称。" -#: doc/classes/ProjectSettings.xml:807 +#: doc/classes/ProjectSettings.xml:809 msgid "Optional name for the 3D physics layer 20." msgstr "3D物理层20 的可选名称。" -#: doc/classes/ProjectSettings.xml:810 -#, fuzzy +#: doc/classes/ProjectSettings.xml:812 msgid "Optional name for the 3D physics layer 21." -msgstr "3D物理层2 的可选名称。" +msgstr "3D物理层 21 的可选名称。" -#: doc/classes/ProjectSettings.xml:813 -#, fuzzy +#: doc/classes/ProjectSettings.xml:815 msgid "Optional name for the 3D physics layer 22." -msgstr "3D物理层2 的可选名称。" +msgstr "3D物理层22 的可选名称。" -#: doc/classes/ProjectSettings.xml:816 -#, fuzzy +#: doc/classes/ProjectSettings.xml:818 msgid "Optional name for the 3D physics layer 23." -msgstr "3D物理层2 的可选名称。" +msgstr "3D物理层23 的可选名称。" -#: doc/classes/ProjectSettings.xml:819 -#, fuzzy +#: doc/classes/ProjectSettings.xml:821 msgid "Optional name for the 3D physics layer 24." -msgstr "3D物理层2 的可选名称。" +msgstr "3D物理层24 的可选名称。" -#: doc/classes/ProjectSettings.xml:822 -#, fuzzy +#: doc/classes/ProjectSettings.xml:824 msgid "Optional name for the 3D physics layer 25." -msgstr "3D物理层2 的可选名称。" +msgstr "3D物理层 25 的可选名称。" -#: doc/classes/ProjectSettings.xml:825 -#, fuzzy +#: doc/classes/ProjectSettings.xml:827 msgid "Optional name for the 3D physics layer 26." -msgstr "3D物理层2 的可选名称。" +msgstr "3D物理层26 的可选名称。" -#: doc/classes/ProjectSettings.xml:828 -#, fuzzy +#: doc/classes/ProjectSettings.xml:830 msgid "Optional name for the 3D physics layer 27." -msgstr "3D物理层2 的可选名称。" +msgstr "3D物理层27 的可选名称。" -#: doc/classes/ProjectSettings.xml:831 -#, fuzzy +#: doc/classes/ProjectSettings.xml:833 msgid "Optional name for the 3D physics layer 28." -msgstr "3D物理层2 的可选名称。" +msgstr "3D物理层28 的可选名称。" -#: doc/classes/ProjectSettings.xml:834 -#, fuzzy +#: doc/classes/ProjectSettings.xml:836 msgid "Optional name for the 3D physics layer 29." -msgstr "3D物理层2 的可选名称。" +msgstr "3D物理层29 的可选名称。" -#: doc/classes/ProjectSettings.xml:837 +#: doc/classes/ProjectSettings.xml:839 msgid "Optional name for the 3D physics layer 3." msgstr "3D物理层3 的可选名称。" -#: doc/classes/ProjectSettings.xml:840 -#, fuzzy +#: doc/classes/ProjectSettings.xml:842 msgid "Optional name for the 3D physics layer 30." -msgstr "3D物理层3 的可选名称。" +msgstr "3D物理层30 的可选名称。" -#: doc/classes/ProjectSettings.xml:843 -#, fuzzy +#: doc/classes/ProjectSettings.xml:845 msgid "Optional name for the 3D physics layer 31." -msgstr "3D物理层3 的可选名称。" +msgstr "3D物理层31 的可选名称。" -#: doc/classes/ProjectSettings.xml:846 -#, fuzzy +#: doc/classes/ProjectSettings.xml:848 msgid "Optional name for the 3D physics layer 32." -msgstr "3D物理层3 的可选名称。" +msgstr "3D物理层32 的可选名称。" -#: doc/classes/ProjectSettings.xml:849 +#: doc/classes/ProjectSettings.xml:851 msgid "Optional name for the 3D physics layer 4." msgstr "3D物理层4 的可选名称。" -#: doc/classes/ProjectSettings.xml:852 +#: doc/classes/ProjectSettings.xml:854 msgid "Optional name for the 3D physics layer 5." msgstr "3D物理层5 的可选名称。" -#: doc/classes/ProjectSettings.xml:855 +#: doc/classes/ProjectSettings.xml:857 msgid "Optional name for the 3D physics layer 6." msgstr "3D物理层6 的可选名称。" -#: doc/classes/ProjectSettings.xml:858 +#: doc/classes/ProjectSettings.xml:860 msgid "Optional name for the 3D physics layer 7." msgstr "3D物理层7 的可选名称。" -#: doc/classes/ProjectSettings.xml:861 +#: doc/classes/ProjectSettings.xml:863 msgid "Optional name for the 3D physics layer 8." msgstr "3D物理层8 的可选名称。" -#: doc/classes/ProjectSettings.xml:864 +#: doc/classes/ProjectSettings.xml:866 msgid "Optional name for the 3D physics layer 9." msgstr "3D物理层9 的可选名称。" -#: doc/classes/ProjectSettings.xml:867 +#: doc/classes/ProjectSettings.xml:869 msgid "Optional name for the 3D render layer 1." msgstr "3D渲染层1 的可选名称。" -#: doc/classes/ProjectSettings.xml:870 +#: doc/classes/ProjectSettings.xml:872 msgid "Optional name for the 3D render layer 10." msgstr "3D渲染层10 的可选名称。" -#: doc/classes/ProjectSettings.xml:873 +#: doc/classes/ProjectSettings.xml:875 msgid "Optional name for the 3D render layer 11." msgstr "3D渲染层11 的可选名称。" -#: doc/classes/ProjectSettings.xml:876 +#: doc/classes/ProjectSettings.xml:878 msgid "Optional name for the 3D render layer 12." msgstr "3D渲染层12 的可选名称。" -#: doc/classes/ProjectSettings.xml:879 +#: doc/classes/ProjectSettings.xml:881 msgid "Optional name for the 3D render layer 13." msgstr "3D渲染层13 的可选名称。" -#: doc/classes/ProjectSettings.xml:882 +#: doc/classes/ProjectSettings.xml:884 msgid "Optional name for the 3D render layer 14" msgstr "3D渲染层14 的可选名称" -#: doc/classes/ProjectSettings.xml:885 +#: doc/classes/ProjectSettings.xml:887 msgid "Optional name for the 3D render layer 15." msgstr "3D渲染层15 的可选名称。" -#: doc/classes/ProjectSettings.xml:888 +#: doc/classes/ProjectSettings.xml:890 msgid "Optional name for the 3D render layer 16." msgstr "3D渲染层16 的可选名称。" -#: doc/classes/ProjectSettings.xml:891 +#: doc/classes/ProjectSettings.xml:893 msgid "Optional name for the 3D render layer 17." msgstr "3D渲染层17 的可选名称。" -#: doc/classes/ProjectSettings.xml:894 +#: doc/classes/ProjectSettings.xml:896 msgid "Optional name for the 3D render layer 18." msgstr "3D渲染层18 的可选名称。" -#: doc/classes/ProjectSettings.xml:897 +#: doc/classes/ProjectSettings.xml:899 msgid "Optional name for the 3D render layer 19." msgstr "3D渲染层19 的可选名称。" -#: doc/classes/ProjectSettings.xml:900 +#: doc/classes/ProjectSettings.xml:902 msgid "Optional name for the 3D render layer 2." msgstr "3D渲染层2 的可选名称。" -#: doc/classes/ProjectSettings.xml:903 +#: doc/classes/ProjectSettings.xml:905 msgid "Optional name for the 3D render layer 20." msgstr "3D渲染层20 的可选名称。" -#: doc/classes/ProjectSettings.xml:906 +#: doc/classes/ProjectSettings.xml:908 msgid "Optional name for the 3D render layer 3." msgstr "3D渲染层3 的可选名称。" -#: doc/classes/ProjectSettings.xml:909 +#: doc/classes/ProjectSettings.xml:911 msgid "Optional name for the 3D render layer 4." msgstr "3D渲染层4 的可选名称。" -#: doc/classes/ProjectSettings.xml:912 +#: doc/classes/ProjectSettings.xml:914 msgid "Optional name for the 3D render layer 5." msgstr "3D渲染层5 的可选名称。" -#: doc/classes/ProjectSettings.xml:915 +#: doc/classes/ProjectSettings.xml:917 msgid "Optional name for the 3D render layer 6." msgstr "3D渲染层6 的可选名称。" -#: doc/classes/ProjectSettings.xml:918 +#: doc/classes/ProjectSettings.xml:920 msgid "Optional name for the 3D render layer 7." msgstr "3D渲染层7 的可选名称。" -#: doc/classes/ProjectSettings.xml:921 +#: doc/classes/ProjectSettings.xml:923 msgid "Optional name for the 3D render layer 8." msgstr "3D渲染层8 的可选名称。" -#: doc/classes/ProjectSettings.xml:924 +#: doc/classes/ProjectSettings.xml:926 msgid "Optional name for the 3D render layer 9." msgstr "3D渲染层9 的可选名称。" -#: doc/classes/ProjectSettings.xml:927 +#: doc/classes/ProjectSettings.xml:929 msgid "" "The locale to fall back to if a translation isn't available in a given " "language. If left empty, [code]en[/code] (English) will be used." @@ -55420,33 +56007,35 @@ msgstr "" "如果给定语言的翻译不可用,则使用默认地域。如果留空,将使用 [code]en[/code]," "即英文。" -#: doc/classes/ProjectSettings.xml:930 +#: doc/classes/ProjectSettings.xml:932 msgid "" "If non-empty, this locale will be used when running the project from the " "editor." msgstr "如果不为空,那么当从编辑器中运行项目时,将使用该语言。" -#: doc/classes/ProjectSettings.xml:933 +#: doc/classes/ProjectSettings.xml:935 msgid "If [code]true[/code], logs all output to files." msgstr "如果[code]true[/code],将所有输出记录到文件中。" -#: doc/classes/ProjectSettings.xml:936 +#: doc/classes/ProjectSettings.xml:938 msgid "" "Desktop override for [member logging/file_logging/enable_file_logging], as " "log files are not readily accessible on mobile/Web platforms." msgstr "" +"[member logging/file_logging/enable_file_logging] 的桌面覆盖,因为在 移动 / " +"Web 平台上不容易访问日志文件。" -#: doc/classes/ProjectSettings.xml:939 +#: doc/classes/ProjectSettings.xml:941 msgid "" "Path to logs within the project. Using an [code]user://[/code] path is " "recommended." -msgstr "项目中的日志的路径。建议使用[code]user://[/code]作为路径。" +msgstr "项目中日志的路径。建议使用 [code]user://[/code] 路径。" -#: doc/classes/ProjectSettings.xml:942 +#: doc/classes/ProjectSettings.xml:944 msgid "Specifies the maximum amount of log files allowed (used for rotation)." -msgstr "指定允许的日志文件的最大数量(用于旋转)。" +msgstr "指定允许的最大日志文件数量(用于轮换)。" -#: doc/classes/ProjectSettings.xml:947 +#: doc/classes/ProjectSettings.xml:949 msgid "" "Godot uses a message queue to defer some function calls. If you run out of " "space on it (you will see an error), you can increase the size here." @@ -55454,7 +56043,7 @@ msgstr "" "Godot使用一个消息队列来延迟一些函数调用。如果你的空间用完了(你会看到一个错" "误),你可以在这里增加大小。" -#: doc/classes/ProjectSettings.xml:950 +#: doc/classes/ProjectSettings.xml:952 msgid "" "This is used by servers when used in multi-threading mode (servers and " "visual). RIDs are preallocated to avoid stalling the server requesting them " @@ -55465,7 +56054,7 @@ msgstr "" "以避免在线程上停止请求它们的服务器。如果在线程中加载资源时服务器经常卡顿,请" "增加此数字。" -#: doc/classes/ProjectSettings.xml:953 +#: doc/classes/ProjectSettings.xml:955 msgid "" "Maximum amount of characters allowed to send as output from the debugger. " "Over this value, content is dropped. This helps not to stall the debugger " @@ -55474,90 +56063,84 @@ msgstr "" "允许调试器输出的最大字符量。超过这个值,内容就会被放弃。这有助于避免调试器的" "连接停滞。" -#: doc/classes/ProjectSettings.xml:956 -#, fuzzy +#: doc/classes/ProjectSettings.xml:958 msgid "" "Maximum number of errors allowed to be sent as output from the debugger. " "Over this value, content is dropped. This helps not to stall the debugger " "connection." msgstr "" -"允许调试器发送的最大错误数。超过这个值,内容就会被抛弃。这有助于避免调试器的" -"连接停滞。" +"允许作为调试器输出发送的最大错误数。超过此值,内容将被删除。这有助于避免调试" +"器的连接停滞。" -#: doc/classes/ProjectSettings.xml:959 -#, fuzzy +#: doc/classes/ProjectSettings.xml:961 msgid "" "Maximum amount of messages allowed to send as output from the debugger. Over " "this value, content is dropped. This helps not to stall the debugger " "connection." msgstr "" -"允许调试器输出的最大字符量。超过这个值,内容就会被放弃。这有助于避免调试器的" -"连接停滞。" +"允许作为调试器输出发送的最大消息量。超过此值,内容将被删除。这有助于避免调试" +"器的连接停滞。" -#: doc/classes/ProjectSettings.xml:962 -#, fuzzy +#: doc/classes/ProjectSettings.xml:964 msgid "" "Maximum number of warnings allowed to be sent as output from the debugger. " "Over this value, content is dropped. This helps not to stall the debugger " "connection." msgstr "" -"允许从调试器发送的最大警告数。超过这个值,内容就会被抛弃。这有助于避免调试器" -"的连接停滞。" +"允许作为调试器输出发送的最大警告数。超过此值,内容将被删除。这有助于避免调试" +"器的连接停滞。" -#: doc/classes/ProjectSettings.xml:965 -#, fuzzy +#: doc/classes/ProjectSettings.xml:967 msgid "" "Default size of packet peer stream for deserializing Godot data (in bytes, " "specified as a power of two). The default value [code]16[/code] is equal to " "65,536 bytes. Over this size, data is dropped." msgstr "" -"用于反序列化Godot数据的数据包对等流的默认大小。超过这个大小,数据会被丢弃。" +"用于反序列化 Godot 数据的数据包对等流 (stream) 的默认大小(以字节为单位,指定" +"为 2 的幂)。默认值 [code]16[/code] 等于 65,536 字节。超过此大小,数据将被丢" +"弃。" -#: doc/classes/ProjectSettings.xml:968 +#: doc/classes/ProjectSettings.xml:970 msgid "Timeout (in seconds) for connection attempts using TCP." msgstr "使用TCP的连接尝试的超时(以秒为单位)。" -#: doc/classes/ProjectSettings.xml:971 +#: doc/classes/ProjectSettings.xml:973 msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer." msgstr "[WebRTCDataChannel]输入缓冲区的最大尺寸(单位:千字节)。" -#: doc/classes/ProjectSettings.xml:974 -#, fuzzy +#: doc/classes/ProjectSettings.xml:976 msgid "Maximum size (in kiB) for the [WebSocketClient] input buffer." -msgstr "[WebRTCDataChannel]输入缓冲区的最大尺寸(单位:千字节)。" +msgstr "[WebSocketClient] 输入缓冲区的最大尺寸,以 kiB 为单位。" -#: doc/classes/ProjectSettings.xml:977 +#: doc/classes/ProjectSettings.xml:979 msgid "Maximum number of concurrent input packets for [WebSocketClient]." -msgstr "" +msgstr "[WebSocketClient] 的最大并发输入数据包数。" -#: doc/classes/ProjectSettings.xml:980 -#, fuzzy +#: doc/classes/ProjectSettings.xml:982 msgid "Maximum size (in kiB) for the [WebSocketClient] output buffer." -msgstr "[WebRTCDataChannel]输入缓冲区的最大尺寸(单位:千字节)。" +msgstr "[WebSocketClient]输出缓冲区的最大尺寸,以kiB为单位。" -#: doc/classes/ProjectSettings.xml:983 +#: doc/classes/ProjectSettings.xml:985 msgid "Maximum number of concurrent output packets for [WebSocketClient]." -msgstr "" +msgstr "[WebSocketClient]的最大并发输出数据包数量。" -#: doc/classes/ProjectSettings.xml:986 -#, fuzzy +#: doc/classes/ProjectSettings.xml:988 msgid "Maximum size (in kiB) for the [WebSocketServer] input buffer." -msgstr "[WebRTCDataChannel]输入缓冲区的最大尺寸(单位:千字节)。" +msgstr "[WebSocketServer]输入缓冲区的最大尺寸,以kiB为单位。" -#: doc/classes/ProjectSettings.xml:989 +#: doc/classes/ProjectSettings.xml:991 msgid "Maximum number of concurrent input packets for [WebSocketServer]." -msgstr "" +msgstr "[WebSocketServer] 的最大并发输入数据包数量。" -#: doc/classes/ProjectSettings.xml:992 -#, fuzzy +#: doc/classes/ProjectSettings.xml:994 msgid "Maximum size (in kiB) for the [WebSocketServer] output buffer." -msgstr "[WebRTCDataChannel]输入缓冲区的最大尺寸(单位:千字节)。" +msgstr "[WebSocketServer] 输出缓冲区的最大尺寸,以 kiB 为单位。" -#: doc/classes/ProjectSettings.xml:995 +#: doc/classes/ProjectSettings.xml:997 msgid "Maximum number of concurrent output packets for [WebSocketServer]." -msgstr "" +msgstr "[WebSocketServer] 的最大并发输出数据包数量。" -#: doc/classes/ProjectSettings.xml:998 +#: doc/classes/ProjectSettings.xml:1000 msgid "" "Amount of read ahead used by remote filesystem. Higher values decrease the " "effects of latency at the cost of higher bandwidth usage." @@ -55565,11 +56148,11 @@ msgstr "" "对远程文件系统的预读取量。更高的值可以减少延迟的影响,但代价是更高的带宽消" "耗。" -#: doc/classes/ProjectSettings.xml:1001 +#: doc/classes/ProjectSettings.xml:1003 msgid "Page size used by remote filesystem (in bytes)." msgstr "远程文件系统使用的页面大小(字节)。" -#: doc/classes/ProjectSettings.xml:1004 +#: doc/classes/ProjectSettings.xml:1006 msgid "" "The CA certificates bundle to use for SSL connections. If this is set to a " "non-empty value, this will [i]override[/i] Godot's default [url=https://" @@ -55583,35 +56166,39 @@ msgstr "" "certificates.crt]Mozilla证书包[/url]。如果留空,将使用默认的证书包。\n" "如果有疑问,让这个设置为空。" -#: doc/classes/ProjectSettings.xml:1008 +#: doc/classes/ProjectSettings.xml:1010 msgid "" "When creating node names automatically, set the type of casing in this " "project. This is mostly an editor setting." msgstr "" "当自动创建节点名称时,在这个项目中设置大小写的类型。这主要是编辑器设置。" -#: doc/classes/ProjectSettings.xml:1011 +#: doc/classes/ProjectSettings.xml:1013 msgid "" "What to use to separate node name from number. This is mostly an editor " "setting." msgstr "用什么来分隔节点名称和编号。这主要是一个编辑器的设置。" -#: doc/classes/ProjectSettings.xml:1014 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1016 msgid "" "Size of the hash table used for the broad-phase 2D hash grid algorithm.\n" "[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is " "enabled." -msgstr "用于broad-phase 2D 哈希网格算法的哈希表的大小。" +msgstr "" +"用于宽相 2D 哈希网格算法的哈希表的大小。\n" +"[b]注意:[/b] 如果启用了 [member ProjectSettings.physics/2d/use_bvh],则不使" +"用。" -#: doc/classes/ProjectSettings.xml:1018 +#: doc/classes/ProjectSettings.xml:1020 msgid "" "Cell size used for the broad-phase 2D hash grid algorithm (in pixels).\n" "[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is " "enabled." msgstr "" +"用于宽相2D哈希网格算法的单元尺寸,像素单位。\n" +"[b]注意:[/b] 如果启用[member ProjectSettings.physics/2D/use_bvh],则不使用。" -#: doc/classes/ProjectSettings.xml:1022 +#: doc/classes/ProjectSettings.xml:1024 msgid "" "The default angular damp in 2D.\n" "[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. " @@ -55623,9 +56210,15 @@ msgid "" "common/physics_fps], [code]60[/code] by default) will bring the object to a " "stop in one iteration." msgstr "" +"2D 中的默认角阻尼。\n" +"[b]注意:[/b] 良好的值在 [code]0[/code] 到 [code]1[/code] 的范围内。在值为 " +"[code]0[/code] 时,对象将继续以相同的速度移动。大于 [code]1[/code] 的值将旨在" +"不到一秒的时间内将速度降低到 [code]0[/code],例如[code]2[/code] 的值将旨在在" +"半秒内将速度降低到 [code]0[/code]。等于或大于物理帧速率的值将使对象在一次迭代" +"中停止,[member ProjectSettings.physics/common/physics_fps]默认情况下为 " +"[code]60[/code]。" -#: doc/classes/ProjectSettings.xml:1026 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1028 msgid "" "The default gravity strength in 2D (in pixels per second squared).\n" "[b]Note:[/b] This property is only read when the project starts. To change " @@ -55636,17 +56229,16 @@ msgid "" "Physics2DServer.AREA_PARAM_GRAVITY, 98)\n" "[/codeblock]" msgstr "" -"2D中默认的重力强度。\n" -"[b]注意:[/b]这个属性只在项目启动时被读取。若要在运行时改变默认的重力,请使用" -"以下代码示例。\n" +"2D中默认的重力强度,单位:每秒平方像素。\n" +"[b]注意:[/b]这个属性只在项目启动时被读取。要在运行时改变默认的重力,请使用以" +"下代码示例:\n" "[codeblock]\n" "# 设置默认的重力强度为98。\n" -"PhysicsServer2D.area_set_param(get_viewport().find_world_2d().get_space(), " -"PhysicsServer2D.area_PARAM_GRAVITY, 98)\n" +"Physics2DServer.area_set_param(get_viewport().find_world_2d().get_space(), " +"Physics2DServer.AREA_PARAM_GRAVITY, 98)\n" "[/codeblock]" -#: doc/classes/ProjectSettings.xml:1034 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1036 msgid "" "The default gravity direction in 2D.\n" "[b]Note:[/b] This property is only read when the project starts. To change " @@ -55657,16 +56249,16 @@ msgid "" "Physics2DServer.AREA_PARAM_GRAVITY_VECTOR, Vector2(0, 1))\n" "[/codeblock]" msgstr "" -"2D中默认的重力方向。\n" -"[b]注意:[/b]这个属性只在项目启动时被读取。若要在运行时改变默认的重力向量,请" -"使用下面的代码示例。\n" +"2D 中的默认重力方向。\n" +"[b]注:[/b] 该属性仅在项目启动时读取。要在运行时更改默认重力向量,请使用以下" +"代码示例:\n" "[codeblock]\n" -"# 设置默认的重力方向为`Vector2(0, 1)`。\n" -"PhysicsServer2D.area_set_param(get_viewport().find_world_2d().get_space(), " -"PhysicsServer2D.area_PARAM_GRAVITY_VECTOR, Vector2(0, 1))\n" +"# 设置默认重力方向为`Vector2(0, 1)`。\n" +"Physics2DServer.area_set_param(get_viewport().find_world_2d().get_space(), " +"Physics2DServer.AREA_PARAM_GRAVITY_VECTOR, Vector2(0, 1))\n" "[/codeblock]" -#: doc/classes/ProjectSettings.xml:1042 +#: doc/classes/ProjectSettings.xml:1044 msgid "" "The default linear damp in 2D.\n" "[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. " @@ -55678,50 +56270,54 @@ msgid "" "common/physics_fps], [code]60[/code] by default) will bring the object to a " "stop in one iteration." msgstr "" +"2D 中的默认线性阻尼。\n" +"[b]注:[/b]良好的值在[code]0[/code]到[code]1[/code]的范围内。在值为 [code]0[/" +"code] 时,对象将继续以相同的速度移动。大于 [code]1[/code] 的值将旨在不到一秒" +"的时间内将速度降低到 [code]0[/code],例如[code]2[/code] 的值将旨在半秒内将速" +"度降低到 [code]0[/code]。等于或大于物理帧速率的值将使对象在一次迭代中停止," +"[member ProjectSettings.physics/common/physics_fps],默认情况下为 [code]60[/" +"code]。" -#: doc/classes/ProjectSettings.xml:1046 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1048 msgid "" "Threshold defining the surface size that constitutes a large object with " "regard to cells in the broad-phase 2D hash grid algorithm.\n" "[b]Note:[/b] Not used if [member ProjectSettings.physics/2d/use_bvh] is " "enabled." msgstr "" -"在broad-phase 2D哈希网格算法中,定义相对于单元而言的构成大型物体的表面尺寸的" -"阈值。" +"定义构成大对象的表面尺寸的阈值,与宽相 2D 散列网格算法中的单元有关。\n" +"[b]注意:[/b]如果启用了[member ProjectSettings.physics/2d/use_bvh],则不使" +"用。" -#: doc/classes/ProjectSettings.xml:1050 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1052 msgid "" "Sets which physics engine to use for 2D physics.\n" "\"DEFAULT\" and \"GodotPhysics\" are the same, as there is currently no " "alternative 2D physics server implemented." msgstr "" -"设置用于2D物理的物理引擎。\n" -"\"DEFAULT \"和 \"GodotPhysics2D \"是一样的,因为目前还没有使用其他的2D物理引" -"擎。" +"设置用于 2D 物理的物理引擎。\n" +"\"DEFAULT\" 和 \"GodotPhysics\" 是一样的,因为目前没有实现可替代的 2D 物理服" +"务。" -#: doc/classes/ProjectSettings.xml:1054 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1056 msgid "" "Threshold angular velocity under which a 2D physics body will be considered " "inactive. See [constant Physics2DServer." "SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]." msgstr "" -"角速度阈值。在此阈值以下,2D物理体将被视为不活动。参阅[constant " -"physicsServer2D.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]。" +"阈值角速度,在该阈值下 2D 物理体将被视为非活动。参阅 [constant " +"Physics2DServer.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]。" -#: doc/classes/ProjectSettings.xml:1057 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1059 msgid "" "Threshold linear velocity under which a 2D physics body will be considered " "inactive. See [constant Physics2DServer." "SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]." msgstr "" -"线性速度的阈值。在此阈值下二维物理体被认为是不活动的。参阅[constant " +"线性速度的阈值。在此阈值下2D物理体被认为是非活动的。参阅[constant " "PhysicsServer2D.SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]。" -#: doc/classes/ProjectSettings.xml:1060 +#: doc/classes/ProjectSettings.xml:1062 msgid "" "Sets whether physics is run on the main thread or a separate one. Running " "the server on a thread increases performance, but restricts API access to " @@ -55735,30 +56331,31 @@ msgstr "" "[b]警告:[/b] 从Godot 3.2开始,关于物理运算使用多线程的反馈不一。请务必评估它" "是否确实给你带来了额外的性能,并且在使用它时没有过时。" -#: doc/classes/ProjectSettings.xml:1064 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1066 msgid "" "Time (in seconds) of inactivity before which a 2D physics body will put to " "sleep. See [constant Physics2DServer.SPACE_PARAM_BODY_TIME_TO_SLEEP]." msgstr "" -"2D物理物体不活动的时间(以秒为单位)。在此之前,2D物理体将进入睡眠状态。参阅" +"2D物理物体非活动的时间,以秒为单位。在此之前,2D物理物体将进入休眠状态。参阅" "[constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]。" -#: doc/classes/ProjectSettings.xml:1067 +#: doc/classes/ProjectSettings.xml:1069 msgid "" "Enables the use of bounding volume hierarchy instead of hash grid for 2D " "physics spatial partitioning. This may give better performance." msgstr "" +"启用边界体积层次结构而不是散列网格,用于 2D 物理空间分区。这可能会提供更好的" +"性能。" -#: doc/classes/ProjectSettings.xml:1070 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1072 msgid "" "Sets whether the 3D physics world will be created with support for " "[SoftBody] physics. Only applies to the Bullet physics engine." msgstr "" -"设置三维物理世界的创建是否支持[SoftBody3D]物理运算(只适用于Bullet物理引擎)。" +"设置是否在支持 [SoftBody] 物理的情况下创建 3D 物理世界。仅适用于 Bullet 物理" +"引擎。" -#: doc/classes/ProjectSettings.xml:1073 +#: doc/classes/ProjectSettings.xml:1075 msgid "" "The default angular damp in 3D.\n" "[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. " @@ -55770,9 +56367,15 @@ msgid "" "common/physics_fps], [code]60[/code] by default) will bring the object to a " "stop in one iteration." msgstr "" +"3D 中的默认角阻尼。\n" +"[b]注意:[/b] 良好的值在 [code]0[/code] 到 [code]1[/code] 的范围内。在值为 " +"[code]0[/code] 时,对象将继续以相同的速度移动。大于 [code]1[/code] 的值将旨在" +"不到一秒的时间内将速度降低到 [code]0[/code],例如[code]2[/code] 的值将旨在半" +"秒内将速度降低到 [code]0[/code]。等于或大于物理帧速率的值将使对象在一次迭代中" +"停止,[member ProjectSettings.physics/common/physics_fps]默认情况下为 " +"[code]60[/code]。" -#: doc/classes/ProjectSettings.xml:1077 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1079 msgid "" "The default gravity strength in 3D (in meters per second squared).\n" "[b]Note:[/b] This property is only read when the project starts. To change " @@ -55783,17 +56386,16 @@ msgid "" "PhysicsServer.AREA_PARAM_GRAVITY, 9.8)\n" "[/codeblock]" msgstr "" -"3D中默认的重力强度。\n" -"[b]注意:[/b]这个属性只在项目启动时被读取。若要在运行时改变默认的重力,请使用" -"以下代码示例。\n" +"3D 中的默认重力强度,单位:米/秒平方。\n" +"[b]注:[/b] 该属性仅在项目启动时读取。要在运行时更改默认重力,请使用以下代码" +"示例:\n" "[codeblock]\n" -"# 设置默认的重力强度为9.8。\n" -"PhysicsServer3D.area_set_param(get_viewport().find_world().get_space(), " -"PhysicsServer3D.AREA_PARAM_GRAVITY, 9.8)\n" +"# 设置默认重力强度为9.8。\n" +"PhysicsServer.area_set_param(get_viewport().find_world().get_space(), " +"PhysicsServer.AREA_PARAM_GRAVITY, 9.8)\n" "[/codeblock]" -#: doc/classes/ProjectSettings.xml:1085 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1087 msgid "" "The default gravity direction in 3D.\n" "[b]Note:[/b] This property is only read when the project starts. To change " @@ -55804,16 +56406,16 @@ msgid "" "PhysicsServer.AREA_PARAM_GRAVITY_VECTOR, Vector3(0, -1, 0))\n" "[/codeblock]" msgstr "" -"3D中默认的重力方向。\n" -"[b]注意:[/b]这个属性只在项目启动时被读取。若要在运行时改变默认的重力向量,请" -"使用下面的代码示例。\n" +"3D 中的默认重力方向。\n" +"[b]注:[/b] 该属性仅在项目启动时读取。要在运行时更改默认重力向量,请使用以下" +"代码示例:\n" "[codeblock]\n" -"# 设置默认的重力方向为`Vector3(0, -1, 0)`。\n" -"PhysicsServer3D.area_set_param(get_viewport().find_world().get_space(), " -"PhysicsServer3D.AREA_PARAM_GRAVITY_VECTOR, Vector3(0, -1, 0))\n" +"# 设置默认重力方向为`Vector3(0, -1, 0)`。\n" +"PhysicsServer.area_set_param(get_viewport().find_world().get_space(), " +"PhysicsServer.AREA_PARAM_GRAVITY_VECTOR, Vector3(0, -1, 0))\n" "[/codeblock]" -#: doc/classes/ProjectSettings.xml:1093 +#: doc/classes/ProjectSettings.xml:1095 msgid "" "The default linear damp in 3D.\n" "[b]Note:[/b] Good values are in the range [code]0[/code] to [code]1[/code]. " @@ -55825,30 +56427,38 @@ msgid "" "common/physics_fps], [code]60[/code] by default) will bring the object to a " "stop in one iteration." msgstr "" +"3D 中的默认线性阻尼。\n" +"[b]注:[/b]好的值在[code]0[/code]到[code]1[/code]的范围内。在值为 [code]0[/" +"code] 时,对象将继续以相同的速度移动。大于 [code]1[/code] 的值将旨在不到一秒" +"的时间内将速度降低到 [code]0[/code],例如[code]2[/code] 的值将旨在半秒内将速" +"度降低到 [code]0[/code]。等于或大于物理帧速率的值将使对象在一次迭代中停止," +"[member ProjectSettings.physics/common/physics_fps]默认情况下为 [code]60[/" +"code]。" -#: doc/classes/ProjectSettings.xml:1097 +#: doc/classes/ProjectSettings.xml:1099 msgid "" "Enables the use of bounding volume hierarchy instead of octree for 3D " "physics spatial partitioning. This may give better performance." msgstr "" +"允许使用边界体积层次结构而不是八叉树进行 3D 物理空间分区。这可能会提供更好的" +"性能。" -#: doc/classes/ProjectSettings.xml:1100 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1102 msgid "" "Sets which physics engine to use for 3D physics.\n" "\"DEFAULT\" is currently the [url=https://bulletphysics.org]Bullet[/url] " "physics engine. The \"GodotPhysics\" engine is still supported as an " "alternative." msgstr "" -"设置3D物理学的物理引擎。\n" -"目前 \"DEFAULT \"是[url=https://bulletphysics.org]Bullet[/url]物理引擎。仍然" -"支持 \"GodotPhysics3D \"引擎作为替代。" +"设置用于 3D 物理的物理引擎。\n" +"\"DEFAULT\"目前是 [url=https://bulletphysics.org]Bullet[/url] 物理引擎。仍然" +"支持\"GodotPhysics\"引擎作为替代。" -#: doc/classes/ProjectSettings.xml:1104 +#: doc/classes/ProjectSettings.xml:1106 msgid "Enables [member Viewport.physics_object_picking] on the root viewport." msgstr "在根视图上启用 [member Viewport.physics_object_picking]。" -#: doc/classes/ProjectSettings.xml:1107 +#: doc/classes/ProjectSettings.xml:1109 msgid "" "If enabled, 2D and 3D physics picking behaves this way in relation to " "pause:\n" @@ -55861,8 +56471,15 @@ msgid "" "picking input events during pause (so nodes won't get them) and flushing " "that queue on resume, against the state of the 2D/3D world at that point." msgstr "" +"如果启用,2D 和 3D 物理pick在暂停时会这样表现:\n" +"- 暂停开始时,悬停或捕获的每个碰撞对象(仅限 3D)都会从该状态中释放出来,获得" +"相关的鼠标退出回调,除非其暂停模式使其免于暂停。\n" +"- 在暂停期间,pick只考虑不受暂停的碰撞对象,发送输入事件和输入/退出回调到他们" +"预期。\n" +"如果禁用,则使用过去的行为,包括在暂停期间排队等待pick输入事件(因此节点不会" +"获取它们),并在恢复时根据2D/3D世界的状态刷新该队列。" -#: doc/classes/ProjectSettings.xml:1113 +#: doc/classes/ProjectSettings.xml:1115 msgid "" "The number of fixed iterations per second. This controls how often physics " "simulation and [method Node._physics_process] methods are run.\n" @@ -55875,8 +56492,7 @@ msgstr "" "[b]注意:[/b] 这个属性只在项目启动时被读取。要在运行时改变物理FPS,请设置" "[member Engine.iterations_per_second]来代替。" -#: doc/classes/ProjectSettings.xml:1117 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1119 msgid "" "Controls how much physics ticks are synchronized with real time. For 0 or " "less, the ticks are synchronized. Such values are recommended for network " @@ -55891,12 +56507,17 @@ msgid "" "[b]Note:[/b] This property is only read when the project starts. To change " "the physics FPS at runtime, set [member Engine.physics_jitter_fix] instead." msgstr "" -"控制物理时钟与实时同步的程度。为0或更少,则是同步的。这样的值建议用于网络游" -"戏,因为时钟同步很重要。较高的数值会导致游戏中的时钟和真实时钟有较大的偏差," -"但允许平滑帧率抖动。默认值0.5对大多数人来说应该是没有问题的;高于2的值可能会" -"导致游戏对掉帧的反应有明显的延迟,不建议使用。" +"控制物理时钟实时同步的程度。如果是0或更少,时钟是同步的。这样的值建议用于网络" +"游戏,因为时钟的同步性很重要。较高的值会导致游戏中的时钟和真实时钟的偏差较" +"大,但可以平滑帧速率的抖动。默认值0.5对大多数人来说应是不错的;超过2的值可能" +"会导致游戏对掉帧的反应有明显的延迟,因此不建议使用。\n" +"[b]注意:[/b]为了获得最佳效果,当使用自定义物理插值解决方案时,应该通过将" +"[member physics/common/physics_jitter_fix]设置为[code]0[/code]来禁用物理抖动" +"修复。\n" +"[b]注意:[/b] 这个属性只在项目启动时被读取。要在运行时改变物理FPS,请设置" +"[member Engine.physics_jitter_fix]。" -#: doc/classes/ProjectSettings.xml:1122 +#: doc/classes/ProjectSettings.xml:1124 msgid "" "[b]Experimental.[/b] Calls [code]glBufferData[/code] with NULL data prior to " "uploading batching data. This may not be necessary but can be used for " @@ -55905,8 +56526,12 @@ msgid "" "exports. A non-default setting that works better on your machine may " "adversely affect performance for end users." msgstr "" +"[b]实验性的。[/b]在上传批处理数据之前使用NULL数据调用[code]glBufferData[/" +"code]。这可能不是必需的,但可以用于安全。\n" +"[b]注意:[/b] 小心使用。建议您将其保留为导出的默认值。在您的计算机上效果更好" +"的非默认设置可能会对最终用户的性能产生不利影响。" -#: doc/classes/ProjectSettings.xml:1126 +#: doc/classes/ProjectSettings.xml:1128 msgid "" "[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag " "for batching buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] " @@ -55915,8 +56540,12 @@ msgid "" "exports. A non-default setting that works better on your machine may " "adversely affect performance for end users." msgstr "" +"[b]实验性的。[/b] 如果设置为 on,则使用 [code]GL_STREAM_DRAW[/code] 标志进行" +"批处理缓冲区上传。如果关闭,则使用 [code]GL_DYNAMIC_DRAW[/code] 标志。\n" +"[b]注意:[/b] 小心使用。建议您将其保留为导出的默认值。在您的计算机上效果更好" +"的非默认设置可能会对最终用户的性能产生不利影响。" -#: doc/classes/ProjectSettings.xml:1130 +#: doc/classes/ProjectSettings.xml:1132 msgid "" "[b]Experimental.[/b] If set to on, this applies buffer orphaning - " "[code]glBufferData[/code] is called with NULL data and the full buffer size " @@ -55926,8 +56555,13 @@ msgid "" "exports. A non-default setting that works better on your machine may " "adversely affect performance for end users." msgstr "" +"[b]实验性的。[/b]如果设置为,则适用缓冲孤立 - [code]glBufferData [/code] 在上" +"传新数据之前使用 NULL 数据和完整缓冲器大小进行调用。这对于避免某些硬件出现停" +"滞非常重要。\n" +"[b]注意:[/b] 小心使用。建议您将此作为导出的默认值。在机器上效果更好的非默认" +"设置可能会对最终用户的性能产生不利影响。" -#: doc/classes/ProjectSettings.xml:1134 +#: doc/classes/ProjectSettings.xml:1136 msgid "" "[b]Experimental.[/b] If set to on, uses the [code]GL_STREAM_DRAW[/code] flag " "for legacy buffer uploads. If off, uses the [code]GL_DYNAMIC_DRAW[/code] " @@ -55936,17 +56570,22 @@ msgid "" "exports. A non-default setting that works better on your machine may " "adversely affect performance for end users." msgstr "" +"[b] 实验性的。[/b] 如果设置为开启,则使用 [code]GL_STREAM_DRAW[/code] 标志进" +"行旧缓冲区上传。如果关闭,则使用 [code]GL_DYNAMIC_DRAW[/code] 标志。\n" +"[b]注意:[/b] 小心使用。建议您将其保留为导出的默认值。在您的计算机上效果更好" +"的非默认设置可能会对最终用户的性能产生不利影响。" -#: doc/classes/ProjectSettings.xml:1138 +#: doc/classes/ProjectSettings.xml:1140 msgid "" "Choose between fixed mode where corner scalings are preserved matching the " "artwork, and scaling mode.\n" "Not available in GLES3 when [member rendering/batching/options/use_batching] " "is off." msgstr "" +"在固定模式和缩放模式之间进行选择,前者保留了与图稿(artwork)相匹配的角缩放。\n" +"当[member rendering/batching/options/use_batching]关闭时,在GLES3中不可用。" -#: doc/classes/ProjectSettings.xml:1142 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1144 msgid "" "Some NVIDIA GPU drivers have a bug which produces flickering issues for the " "[code]draw_rect[/code] method, especially as used in [TileMap]. Refer to " @@ -55956,14 +56595,13 @@ msgid "" "NVIDIA GPUs at the cost of performance. This option affects GLES2 and GLES3 " "rendering, but only on desktop platforms." msgstr "" -"一些NVIDIA GPU驱动有一个bug,对[code]draw_rect[/code]方法产生闪烁问题,特别是" -"在[TileMap]中使用时。详情请参考[url=https://github.com/godotengine/godot/" +"一些NVIDIA GPU驱动有bug,对[code]draw_rect[/code]方法产生闪烁问题,特别是在" +"[TileMap]中使用时。详情参阅[url=https://github.com/godotengine/godot/" "issues/9913]GitHub issue 9913[/url]。\n" -"如果为[code]true[/code],该选项将为此类NVIDIA GPU启用一个 \"安全 \"的代码路" -"径,但会牺牲性能。这个选项只影响GLES2渲染后端,而且只影响桌面平台。在使用" -"Vulkan后端时,它是不必要的。" +"如果[code]为true[/code],该选项将为此类NVIDIA GPU启用 \"安全\" 的代码路径,但" +"会牺牲性能。这个选项会影响GLES2和GLES3的渲染,但只在桌面平台上。" -#: doc/classes/ProjectSettings.xml:1146 +#: doc/classes/ProjectSettings.xml:1148 msgid "" "If [code]true[/code], performs 2D skinning on the CPU rather than the GPU. " "This provides greater compatibility with a wide range of hardware, and also " @@ -55977,8 +56615,16 @@ msgid "" "with hardware skinning, [code]VERTEX[/code] is the position [i]before[/i] " "skinning." msgstr "" +"如果 [code]true[/code],则在 CPU 而非 GPU 上执行 2D 蒙皮。这提供了与各种硬件" +"的更大兼容性,并且在某些情况下也可能更快。\n" +"当前仅在 [member rendering/batching/options/use_batching] 处于活动状态时可" +"用。\n" +"[b]注意:[/b] 不支持抗锯齿软件蒙皮多边形,将在没有抗锯齿的情况下渲染。\n" +"[b]注意:[/b] 使用内置 [code]VERTEX[/code] 的自定义着色器在应用蒙皮 [i]之后[/" +"i]以 [code]VERTEX[/code] 位置运行 ,而使用硬件蒙皮,[code] VERTEX[/code] 是被" +"应用蒙皮 [i]之前 [/i] 的位置。" -#: doc/classes/ProjectSettings.xml:1152 +#: doc/classes/ProjectSettings.xml:1154 msgid "" "If [code]true[/code], forces snapping of vertices to pixels in 2D rendering. " "May help in some pixel art styles.\n" @@ -55986,14 +56632,19 @@ msgid "" "Consider using the project setting [member rendering/batching/precision/" "uv_contract] to prevent artifacts." msgstr "" +"如果 [code]true[/code],则在 2D 渲染中强制将顶点对齐到像素。可能有助于某些像" +"素艺术风格。\n" +"这种捕捉是在顶点着色器中的 GPU 上执行的。\n" +"考虑使用项目设置[member rendering/batching/precision/uv_contract] 来防止出现" +"伪影。" -#: doc/classes/ProjectSettings.xml:1157 +#: doc/classes/ProjectSettings.xml:1159 msgid "" "When batching is on, this regularly prints a frame diagnosis log. Note that " "this will degrade performance." -msgstr "" +msgstr "当批处理打开时,这会定期打印帧诊断日志。请注意,这会降低性能。" -#: doc/classes/ProjectSettings.xml:1160 +#: doc/classes/ProjectSettings.xml:1162 msgid "" "[b]Experimental.[/b] For regression testing against the old renderer. If " "this is switched on, and [code]use_batching[/code] is set, the renderer will " @@ -56001,8 +56652,11 @@ msgid "" "on each frame. This makes it easy to identify visual differences. " "Performance will be degraded." msgstr "" +"[b] 实验性的。[/b] 用于针对旧渲染器的回归测试。如果打开并设置 " +"[code]use_batching[/code],渲染器将在每一帧上交替使用旧渲染器和批处理渲染器。" +"这使得识别视觉差异变得容易。性能会下降。" -#: doc/classes/ProjectSettings.xml:1163 +#: doc/classes/ProjectSettings.xml:1165 msgid "" "Lights have the potential to prevent joining items, and break many of the " "performance benefits of batching. This setting enables some complex logic to " @@ -56011,8 +56665,11 @@ msgid "" "off. With large values the cost of overlap tests may lead to diminishing " "returns." msgstr "" +"灯有可能阻止连接项目,并破坏批处理的许多性能优势。此设置启用了一些复杂的逻" +"辑,如果它们的照明相似,并且重叠测试通过,则允许加入项目。这可以显着提高某些" +"游戏的性能。设置为 0 以关闭。对于较大的值,重叠测试的成本可能会导致收益递减。" -#: doc/classes/ProjectSettings.xml:1166 +#: doc/classes/ProjectSettings.xml:1168 msgid "" "Sets the proportion of the total screen area (in pixels) that must be saved " "by a scissor operation in order to activate light scissoring. This can " @@ -56023,8 +56680,12 @@ msgid "" "to give the threshold. This can reduce fill rate requirements in scenes with " "a lot of lighting." msgstr "" +"设置必须由剪切操作保存以激活光剪切的总屏幕区域的比例(以像素为单位)。这可以" +"防止部分物体被渲染到光照区域之外。较低的值会让剪切更强。值为 1 不剪切任何项," +"值为 0 剪切每个项。使用该值的4的幂,以强调较低的范围,并乘以以像素为单位的总" +"屏幕面积以给出阈值。这可以降低具有大量照明的场景中的填充率要求。" -#: doc/classes/ProjectSettings.xml:1169 +#: doc/classes/ProjectSettings.xml:1171 msgid "" "Enabling this setting uses the legacy method to draw batches containing only " "one rect. The legacy method is faster (approx twice as fast), but can cause " @@ -56033,25 +56694,31 @@ msgid "" "turn this off unless you can guarantee your target hardware will work with " "this method." msgstr "" +"启用此设置使用传统方法绘制仅包含一个矩形的批次。传统方法更快(大约快两倍)," +"但可能会导致某些系统出现闪烁。为了直接与非批处理渲染器比较性能,您可以将其设" +"置为 true,但建议将其关闭,除非您可以保证您的目标硬件可以使用此方法。" -#: doc/classes/ProjectSettings.xml:1172 +#: doc/classes/ProjectSettings.xml:1174 msgid "" "Turns 2D batching on and off. Batching increases performance by reducing the " "amount of graphics API drawcalls." msgstr "" +"打开和关闭 2D 批处理。批处理通过减少图形 API 绘制调用的数量来提高性能。" -#: doc/classes/ProjectSettings.xml:1175 +#: doc/classes/ProjectSettings.xml:1177 msgid "Switches on 2D batching within the editor." -msgstr "" +msgstr "在编辑器中打开 2D 批处理。" -#: doc/classes/ProjectSettings.xml:1178 +#: doc/classes/ProjectSettings.xml:1180 msgid "" "Size of buffer reserved for batched vertices. Larger size enables larger " "batches, but there are diminishing returns for the memory used. This should " "only have a minor effect on performance." msgstr "" +"为批处理顶点保留的缓冲区大小。更大的尺寸支持更大的批次,但所用内存的收益递" +"减。这应该只会对性能产生很小的影响。" -#: doc/classes/ProjectSettings.xml:1181 +#: doc/classes/ProjectSettings.xml:1183 msgid "" "Including color in the vertex format has a cost, however, not including " "color prevents batching across color changes. This threshold determines the " @@ -56059,16 +56726,22 @@ msgid "" "code] above which vertices will be translated to colored format. A value of " "0 will always use colored vertices, 1 will never use colored vertices." msgstr "" +"在顶点格式中包含颜色是有代价的,但是,不包含颜色会阻止跨颜色更改进行批处理。" +"此阈值会确定 [code] 顶点颜色更改次数 / 顶点总数 [/code] 的比率,高于该值的顶" +"点将被转换为彩色格式。值 0 将始终使用彩色顶点,1 永远不会使用彩色顶点。" -#: doc/classes/ProjectSettings.xml:1184 +#: doc/classes/ProjectSettings.xml:1186 msgid "" "In certain circumstances, the batcher can reorder items in order to better " "join them. This may result in better performance. An overlap test is needed " "however for each item lookahead, so there is a trade off, with diminishing " "returns. If you are getting no benefit, setting this to 0 will switch it off." msgstr "" +"在某些情况下,批处理程序可以重新排序项目以便更好地加入它们。这可能会有更好的" +"性能。然而,每个项的预先查看(lookahead)都需要重叠测试,但收益递减,因此需要权" +"衡。如果您没有得到任何好处,将此设置为 0 将关闭它。" -#: doc/classes/ProjectSettings.xml:1187 +#: doc/classes/ProjectSettings.xml:1189 msgid "" "Sets the number of commands to lookahead to determine whether to batch " "render items. A value of 1 can join items consisting of single commands, 0 " @@ -56076,8 +56749,11 @@ msgid "" "this has diminishing returns and has a runtime cost so a small value is " "recommended." msgstr "" +"设置命令数以预先查看(lookahead),以确定是否批量渲染项目。值为 1 可以加入由单" +"个命令组成的项目,0 关闭连接。理论上,较高的值更有可能加入,但这会降低回报," +"并且具有运行成本,因此建议使用少量值。" -#: doc/classes/ProjectSettings.xml:1190 +#: doc/classes/ProjectSettings.xml:1192 msgid "" "On some platforms (especially mobile), precision issues in shaders can lead " "to reading 1 texel outside of bounds, particularly where rects are scaled. " @@ -56086,53 +56762,60 @@ msgid "" "coordinates used. Note that this can result in a slight squashing of border " "texels." msgstr "" +"在某些平台(尤其是移动平台)上,着色器中的精度问题可能会导致读取 1 texel 超出" +"边界,尤其是在缩放 rect 的情况下。这尤其会导致瓷砖地图中瓷砖周围的边界伪" +"影。\n" +"此调整通过对使用的 UV 坐标进行小幅收缩来对此进行校正。请注意,这可能会导致边" +"界纹理的轻微挤压。" -#: doc/classes/ProjectSettings.xml:1194 +#: doc/classes/ProjectSettings.xml:1196 msgid "" "The amount of UV contraction. This figure is divided by 1000000, and is a " "proportion of the total texture dimensions, where the width and height are " "both ranged from 0.0 to 1.0.\n" "Use the default unless correcting for a problem on particular hardware." msgstr "" +"UV收缩量。这个数字除以1000000,是总纹理尺寸的一个比例,宽度和高度都在0.0到1.0" +"之间。\n" +"除非为了纠正特定硬件上的问题,否则请使用默认值。" -#: doc/classes/ProjectSettings.xml:1198 +#: doc/classes/ProjectSettings.xml:1200 msgid "" "Amount of light samples taken when using [constant BakedLightmap." "BAKE_QUALITY_HIGH]." -msgstr "" +msgstr "使用 [constant BakedLightmap.BAKE_QUALITY_HIGH] 时采集的光样本量。" -#: doc/classes/ProjectSettings.xml:1201 +#: doc/classes/ProjectSettings.xml:1203 msgid "" "Amount of light samples taken when using [constant BakedLightmap." "BAKE_QUALITY_LOW]." -msgstr "" +msgstr "使用 [constant BakedLightmap.BAKE_QUALITY_LOW] 时采集的光样本量。" -#: doc/classes/ProjectSettings.xml:1204 +#: doc/classes/ProjectSettings.xml:1206 msgid "" "Amount of light samples taken when using [constant BakedLightmap." "BAKE_QUALITY_MEDIUM]." -msgstr "" +msgstr "使用 [constant BakedLightmap.BAKE_QUALITY_MEDIUM] 时采集的光样本量。" -#: doc/classes/ProjectSettings.xml:1207 +#: doc/classes/ProjectSettings.xml:1209 msgid "" "Amount of light samples taken when using [constant BakedLightmap." "BAKE_QUALITY_ULTRA]." -msgstr "" +msgstr "使用 [constant BakedLightmap.BAKE_QUALITY_ULTRA] 时采集的光样本量。" -#: doc/classes/ProjectSettings.xml:1210 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1212 msgid "" "Default background clear color. Overridable per [Viewport] using its " "[Environment]. See [member Environment.background_mode] and [member " "Environment.background_color] in particular. To change this default color " "programmatically, use [method VisualServer.set_default_clear_color]." msgstr "" -"默认背景透明颜色。使用[Environment]可覆盖每个[Viewport]。具体请参阅[member " -"Environment.background_mode]和[member Environment.background_color]。要以代码" -"方式更改此默认颜色,请使用use [method RenderingServer." -"set_default_clear_color]。" +"默认背景透明颜色。使用 [Environment] 可覆盖每个[Viewport]。具体请参阅 " +"[member Environment.background_mode] 和 [member Environment." +"background_color]。要以代码方式更改此默认颜色,请使用 [method " +"RenderingServer.set_default_clear_color]。" -#: doc/classes/ProjectSettings.xml:1213 +#: doc/classes/ProjectSettings.xml:1215 msgid "" "[Environment] that will be used as a fallback environment in case a scene " "does not specify its own environment. The default environment is loaded in " @@ -56145,61 +56828,73 @@ msgstr "" "境,都会在场景加载时加载默认环境。如果不依赖默认环境,最好删除" "[code]default_env.tres[/code],或者在这里指定不同的默认环境。" -#: doc/classes/ProjectSettings.xml:1216 +#: doc/classes/ProjectSettings.xml:1218 msgid "" "The use of half-float vertex compression may be producing rendering errors " "on some platforms (especially iOS). These have been seen particularly in " "particles. Disabling half-float may resolve these problems." msgstr "" +"使用半精度浮点顶点压缩可能会在某些平台上产生渲染错误(尤其是iOS)。这些在粒子" +"中尤为明显。禁用半精度浮点可能会解决这些问题。" -#: doc/classes/ProjectSettings.xml:1219 +#: doc/classes/ProjectSettings.xml:1221 msgid "" "iOS specific override for [member rendering/gles2/compatibility/" "disable_half_float], due to poor support for half-float vertex compression " "on many devices." msgstr "" +"对[member rendering/gles2/compatibility/disable_half_float]的iOS特定重写,因" +"为在许多设备上对半精度浮点顶点压缩的支持不佳。" -#: doc/classes/ProjectSettings.xml:1222 +#: doc/classes/ProjectSettings.xml:1224 msgid "" "If [code]true[/code] and available on the target Android device, enables " "high floating point precision for all shader computations in GLES2.\n" "[b]Warning:[/b] High floating point precision can be extremely slow on older " "devices and is often not available at all. Use with caution." msgstr "" +"如果 [code]true[/code] 并且在目标 Android 设备上可用,则为 GLES2 中的所有着色" +"器计算启用高浮点精度。\n" +"[b]警告:[/b] 高浮点精度在旧设备上可能非常慢,而且通常根本不可用。谨慎使用。" -#: doc/classes/ProjectSettings.xml:1226 +#: doc/classes/ProjectSettings.xml:1228 msgid "" "Max buffer size for blend shapes. Any blend shape bigger than this will not " "work." -msgstr "" +msgstr "混合形状的最大缓冲区大小。任何比这更大的混合形状都不起作用。" -#: doc/classes/ProjectSettings.xml:1229 +#: doc/classes/ProjectSettings.xml:1231 msgid "" "Max buffer size for drawing polygons. Any polygon bigger than this will not " "work." -msgstr "" +msgstr "绘制多边形的最大缓冲区大小。任何大于此的多边形都不起作用。" -#: doc/classes/ProjectSettings.xml:1232 +#: doc/classes/ProjectSettings.xml:1234 msgid "" "Max index buffer size for drawing polygons. Any polygon bigger than this " "will not work." -msgstr "" +msgstr "绘制多边形的最大索引缓冲区大小。任何大于此的多边形都不起作用。" -#: doc/classes/ProjectSettings.xml:1235 +#: doc/classes/ProjectSettings.xml:1237 msgid "" "Max buffer size for drawing immediate objects (ImmediateGeometry nodes). " "Nodes using more than this size will not work." msgstr "" +"用于绘制直接对象(ImmediateGeometry 节点)的最大缓冲区大小。使用超过此大小的" +"节点将无法工作。" -#: doc/classes/ProjectSettings.xml:1238 +#: doc/classes/ProjectSettings.xml:1240 msgid "" "Max number of lights renderable per object. This is further limited by " "hardware support. Most devices only support 409 lights, while many devices " "(especially mobile) only support 102. Setting this low will slightly reduce " "memory usage and may decrease shader compile times." msgstr "" +"每个对象可渲染的最大灯光数。这进一步受到硬件支持的限制。大多数设备仅支持 409 " +"个灯光,而许多设备(尤其是移动设备)仅支持 102 灯。将此设置为低会略微减少内存" +"使用并可能减少着色器编译时间。" -#: doc/classes/ProjectSettings.xml:1241 +#: doc/classes/ProjectSettings.xml:1243 msgid "" "Max amount of elements renderable in a frame. If more elements than this are " "visible per frame, they will not be drawn. Keep in mind elements refer to " @@ -56208,8 +56903,12 @@ msgid "" "web. For most uses, the default value is suitable, but consider lowering as " "much as possible on web export." msgstr "" +"一帧中可渲染元素的最大数量。如果每帧可见更多元素,则不会绘制它们。请记住,元" +"素是指网格表面而不是网格本身。将此值设置得较低会略微减少内存使用量并可能减少" +"着色器编译时间,尤其是在 Web 上。对于大多数用途,默认值是合适的,但考虑在 " +"Web 导出时尽可能降低。" -#: doc/classes/ProjectSettings.xml:1244 +#: doc/classes/ProjectSettings.xml:1246 msgid "" "Max number of lights renderable in a frame. If more lights than this number " "are used, they will be ignored. Setting this low will slightly reduce memory " @@ -56217,8 +56916,11 @@ msgid "" "uses, the default value is suitable, but consider lowering as much as " "possible on web export." msgstr "" +"一帧中可渲染的最大灯光数。如果使用的灯光数超过此数量,则它们将被忽略。将此值" +"设置得较低会略微减少内存使用量并可能减少着色器编译时间,尤其是在 Web 上。对于" +"大多数用途,默认值是合适的,但考虑在 Web 导出时尽可能降低。" -#: doc/classes/ProjectSettings.xml:1247 +#: doc/classes/ProjectSettings.xml:1249 msgid "" "Max number of reflection probes renderable in a frame. If more reflection " "probes than this number are used, they will be ignored. Setting this low " @@ -56226,25 +56928,28 @@ msgid "" "particularly on web. For most uses, the default value is suitable, but " "consider lowering as much as possible on web export." msgstr "" +"一帧中可渲染的最大反射探针数。如果使用的反射探针数超过此数量,则它们将被忽" +"略。将此值设置得较低会略微减少内存使用量并可能减少着色器编译时间,尤其是在 " +"Web 上。对于大多数用途,默认值是合适的,但考虑在 Web 导出时尽可能降低。" -#: doc/classes/ProjectSettings.xml:1250 +#: doc/classes/ProjectSettings.xml:1252 msgid "" "Shaders have a time variable that constantly increases. At some point, it " "needs to be rolled back to zero to avoid precision errors on shader " "animations. This setting specifies when (in seconds)." msgstr "" +"着色器有一个不断增加的时间变量。在某些时候,它需要回滚到零以避免着色器动画的" +"精度错误。此设置用于设定时间(以秒为单位)。" -#: doc/classes/ProjectSettings.xml:1253 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1255 msgid "" "If [code]true[/code], the texture importer will import lossless textures " "using the PNG format. Otherwise, it will default to using WebP." msgstr "" -"如果[code]true[/code],纹理导入器将使用S3纹理压缩算法导入VRAM压缩的纹理。这种" -"算法只在桌面平台和游戏机上支持。" +"如果[code]true[/code],纹理导入器将使用PNG格式导入无损纹理。否则,将默认使用" +"WebP。" -#: doc/classes/ProjectSettings.xml:1256 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1258 msgid "" "The default compression level for lossless WebP. Higher levels result in " "smaller files at the cost of compression speed. Decompression speed is " @@ -56252,19 +56957,21 @@ msgid "" "Note that compression levels above 6 are very slow and offer very little " "savings." msgstr "" -"Zlib的默认压缩级别。影响压缩的场景和资源。较高的级别会以压缩速度为代价导致文" -"件变小。解压缩速度大多不受压缩级别的影响。[code]-1[/code]使用默认的gzip压缩级" -"别,该级别与[code]6[/code]相同,但由于底层zlib更新,未来可能会发生变化。" +"无损WebP的默认压缩级别。更高的级别会产生更小的文件,但会牺牲压缩速度。解压速" +"度大多不受压缩级别的影响。支持的值是0到9。请注意,高于6的压缩级别是非常慢的," +"而且节省的占用非常少。" -#: doc/classes/ProjectSettings.xml:1259 +#: doc/classes/ProjectSettings.xml:1261 msgid "" "On import, mesh vertex data will be split into two streams within a single " "vertex buffer, one for position data and the other for interleaved " "attributes data. Recommended to be enabled if targeting mobile devices. " "Requires manual reimport of meshes after toggling." msgstr "" +"导入时,网格顶点数据将在单个顶点缓冲区内分成两个流,一个用于位置数据,另一个" +"用于交错属性数据。如果用于移动设备,建议启用。切换后需要手动重新导入网格。" -#: doc/classes/ProjectSettings.xml:1262 +#: doc/classes/ProjectSettings.xml:1264 msgid "" "Determines the maximum number of sphere occluders that will be used at any " "one time.\n" @@ -56272,8 +56979,11 @@ msgid "" "choose from these the most relevant based on a screen space metric, in order " "to give the best overall performance." msgstr "" +"确定将在任何时候使用的球体遮挡器的最大数量。\n" +"尽管一个场景中可以有许多遮挡物,但系统会根据屏幕空间度量从这些遮挡物中选择最" +"相关的每一帧,以提供最佳的整体性能。" -#: doc/classes/ProjectSettings.xml:1266 +#: doc/classes/ProjectSettings.xml:1268 msgid "" "The default convention is for portal normals to point outward (face outward) " "from the source room.\n" @@ -56282,24 +56992,30 @@ msgid "" "It will flip named portal meshes (i.e. [code]-portal[/code]) on the initial " "convertion to [Portal] nodes." msgstr "" +"默认的惯例是,portal的法线从源空间向外。\n" +"如果你在建造关卡时不小心将portal朝向了错误的方向,这个设置可以解决这个问" +"题。\n" +"它将在初始转换为[Portal]节点时翻转命名的portal网格(即[code]-portal[/" +"code])。" -#: doc/classes/ProjectSettings.xml:1271 +#: doc/classes/ProjectSettings.xml:1273 msgid "" "Show conversion logs.\n" "[b]Note:[/b] This will automatically be disabled in exports." msgstr "" +"显示转换日志。\n" +"[b]注意:[/b] 这将在导出时自动禁用。" -#: doc/classes/ProjectSettings.xml:1275 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1277 msgid "" "If [code]true[/code], gameplay callbacks will be sent as [code]signals[/" "code]. If [code]false[/code], they will be sent as [code]notifications[/" "code]." msgstr "" -"如果[code]true[/code],图块地图的碰撞将被当作运动体处理。如果[code]false[/" -"code],碰撞将被当作静态体来处理。" +"如果 [code]true[/code],游戏回调将作为 [code] 信号 [/code] 发送。如果" +"[code]false[/code],它们将作为[code]通知[/code]发送。" -#: doc/classes/ProjectSettings.xml:1278 +#: doc/classes/ProjectSettings.xml:1280 msgid "" "If enabled, while merging meshes, the system will also attempt to remove " "[Spatial] nodes that no longer have any children.\n" @@ -56307,14 +57023,19 @@ msgid "" "efficient, but can be switched off in case you wish to use empty [Spatial]s " "for markers or some other purpose." msgstr "" +"如果启用,在合并网格时,系统还将尝试删除不再有任何子项的 [Spatial] 节点。\n" +"减少场景树中 [Node] 的数量可以提高遍历效率,但如果您希望将空的 [Spatial] 用于" +"标记或其他目的,则可以将其关闭。" -#: doc/classes/ProjectSettings.xml:1282 +#: doc/classes/ProjectSettings.xml:1284 msgid "" "Show logs during PVS generation.\n" "[b]Note:[/b] This will automatically be disabled in exports." msgstr "" +"在 PVS 生成期间显示日志。\n" +"[b]注意:[/b] 这将在导出时自动禁用。" -#: doc/classes/ProjectSettings.xml:1286 +#: doc/classes/ProjectSettings.xml:1288 msgid "" "Uses a simplified method of generating PVS (potentially visible set) data. " "The results may not be accurate where more than one portal join adjacent " @@ -56323,31 +57044,37 @@ msgid "" "when it is set to [code]false[/code], i.e. there are problems with the " "default method." msgstr "" +"使用生成 PVS(潜在可见集)数据的简化方法。当多个portal连接相邻空间时,结果可" +"能不准确。\n" +"[b]注意:[/b]一般只有在设置为[code]false[/code]时遇到bug,即默认方法有问题" +"时,才应该使用该选项。" -#: doc/classes/ProjectSettings.xml:1290 +#: doc/classes/ProjectSettings.xml:1292 msgid "" "If [code]true[/code], allocates the main framebuffer with high dynamic " "range. High dynamic range allows the use of [Color] values greater than 1.\n" "[b]Note:[/b] Only available on the GLES3 backend." msgstr "" +"如果 [code]true[/code],则分配具有高动态范围(HDR)的主帧缓冲区。高动态范围允" +"许使用大于 1 的 [Color] 值。\n" +"[b]注意:[/b] 仅在 GLES3 后端可用。" -#: doc/classes/ProjectSettings.xml:1294 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1296 msgid "" "Lower-end override for [member rendering/quality/depth/hdr] on mobile " "devices, due to performance concerns or driver support." msgstr "" -"由于性能或驱动支持问题,在移动设备上将对 [member rendering/quality/" -"shadow_atlas/size]以低配数值覆盖。" +"由于性能问题或驱动支持,移动设备上的 [member rendering/quality/depth/hdr] 的" +"低端覆盖。" -#: doc/classes/ProjectSettings.xml:1297 +#: doc/classes/ProjectSettings.xml:1299 msgid "" "Disables depth pre-pass for some GPU vendors (usually mobile), as their " "architecture already does this." msgstr "" "对一些GPU供应商(通常是移动设备)禁用深度预处理,因为他们的架构已经做了这个。" -#: doc/classes/ProjectSettings.xml:1300 +#: doc/classes/ProjectSettings.xml:1302 msgid "" "If [code]true[/code], performs a previous depth pass before rendering " "materials. This increases performance in scenes with high overdraw, when " @@ -56356,7 +57083,7 @@ msgstr "" "如果 [code]true[/code],则在渲染材质之前执行先前的深度传递。当使用复杂的材料" "和照明时,这会提高高透支场景的性能。" -#: doc/classes/ProjectSettings.xml:1303 +#: doc/classes/ProjectSettings.xml:1305 msgid "" "The directional shadow's size in pixels. Higher values will result in " "sharper shadows, at the cost of performance. The value will be rounded up to " @@ -56365,7 +57092,7 @@ msgstr "" "方向性阴影的大小,以像素为单位。更高的值会导致更清晰的阴影,但会以性能为代" "价。该值将被四舍五入到最接近的2次方。" -#: doc/classes/ProjectSettings.xml:1306 +#: doc/classes/ProjectSettings.xml:1308 msgid "" "Lower-end override for [member rendering/quality/directional_shadow/size] on " "mobile devices, due to performance concerns or driver support." @@ -56373,8 +57100,7 @@ msgstr "" "由于性能和驱动支持的问题,在移动设备上会对[member rendering/quality/" "directional_shadow/size] 以低配数值覆盖。" -#: doc/classes/ProjectSettings.xml:1309 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1311 msgid "" "The video driver to use (\"GLES2\" or \"GLES3\").\n" "[b]Note:[/b] The backend in use can be overridden at runtime via the [code]--" @@ -56383,14 +57109,13 @@ msgid "" "support GLES3 and falls back to GLES2. In such cases, this property is not " "updated, so use [method OS.get_current_video_driver] to query it at run-time." msgstr "" -"要使用的视频驱动(\"GLES2 \"或 \"Vulkan\")。\n" -"[b]注意:[/b] 使用中的后端可以在运行时通过[code]--rendering-driver[/code]命令" -"行参数来覆盖。\n" -"[b]修订说明:[/b] 在DisplayServer分离后不再有效。\n" -"在这种情况下,这个属性不会被更新,所以使用[code]OS.get_current_video_driver[/" -"code]来在运行时查询它。" +"要使用的视频驱动(\"GLES2\"或 \"GLES3\")。\n" +"[b]注意:[/b]使用中的后端可以在运行时通过[code]--video-driver[/code]命令行参" +"数而覆盖,如果目标系统不支持GLES3,要退回到GLES2,则可以通过[member " +"rendering/quality/driver/fallback_to_gles2]选项。在这种情况下,这个属性不会被" +"更新,所以在运行时使用[method OS.get_current_video_driver]来查询。" -#: doc/classes/ProjectSettings.xml:1313 +#: doc/classes/ProjectSettings.xml:1315 msgid "" "If [code]true[/code], allows falling back to the GLES2 driver if the GLES3 " "driver is not supported.\n" @@ -56401,28 +57126,35 @@ msgid "" "VRAM-compressed textures will be exported on Android and iOS, increasing the " "data pack's size." msgstr "" +"如果 [code]true[/code],且不支持 GLES3 驱动程序,则允许回退到 GLES2 驱动程" +"序。\n" +"[b]注意:[/b] 两个显卡驱动不是互相替代的,所以为 GLES3 设计的游戏在回退到 " +"GLES2 时可能无法正常运行。特别是,GLES3 后端的某些功能在 GLES2 中不可用。启用" +"此设置还意味着 ETC 和 ETC2 VRAM 压缩纹理将在 Android 和 iOS 上导出,从而增加" +"数据包的大小。" -#: doc/classes/ProjectSettings.xml:1317 +#: doc/classes/ProjectSettings.xml:1319 msgid "" "Maximum anisotropic filter level used for textures with anisotropy enabled. " "Higher values will result in sharper textures when viewed from oblique " "angles, at the cost of performance. Only power-of-two values are valid (2, " "4, 8, 16)." msgstr "" +"用于启用各向异性的纹理的最大各向异性过滤器级别。从倾斜角度查看时,较高的值将" +"导致更清晰的纹理,但会牺牲性能。只有二的指数倍的值(如2、4、8、16)是有效。" -#: doc/classes/ProjectSettings.xml:1320 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1322 msgid "" "Sets the number of MSAA samples to use. MSAA is used to reduce aliasing " "around the edges of polygons. A higher MSAA value results in smoother edges " "but can be significantly slower on some hardware.\n" "[b]Note:[/b] MSAA is not available on HTML5 export using the GLES2 backend." msgstr "" -"设置要使用的MSAA样本数(2的n次幂)。MSAA用于减少多边形边缘的锯齿。较高的MSAA" -"值可以使边缘更平滑,但在某些硬件上会明显变慢。\n" +"设置要使用的MSAA样本数。MSAA用来减少多边形边缘的混叠。较高的MSAA值可以使边缘" +"更平滑,但在某些硬件上会明显变慢。\n" "[b]注意:[/b] MSAA在使用GLES2后端的HTML5导出中不可用。" -#: doc/classes/ProjectSettings.xml:1324 +#: doc/classes/ProjectSettings.xml:1326 msgid "" "If set to a value greater than [code]0.0[/code], contrast-adaptive " "sharpening will be applied to the 3D viewport. This has a low performance " @@ -56430,8 +57162,11 @@ msgid "" "Values around [code]0.5[/code] generally give the best results. See also " "[member rendering/quality/filters/use_fxaa]." msgstr "" +"如果设置为大于 [code]0.0[/code] 的值,对比度自适应锐化将应用于 3D 视口。这具" +"有较低的性能成本,可用于恢复使用 FXAA 时损失的一些锐度。 [code]0.5[/code] 附" +"近的值通常会给出最好的结果。另见[member rendering/quality/filters/use_fxaa]。" -#: doc/classes/ProjectSettings.xml:1327 +#: doc/classes/ProjectSettings.xml:1329 msgid "" "If [code]true[/code], uses a fast post-processing filter to make banding " "significantly less visible. In some cases, debanding may introduce a " @@ -56444,9 +57179,15 @@ msgid "" "mobile platforms. Due to this, it is recommended to leave this option " "disabled when targeting mobile platforms." msgstr "" +"如果 [code]true[/code],则使用快速后处理过滤器使条带明显不那么明显。在某些情" +"况下,去带可能会引入稍微明显的抖动模式。建议仅在实际需要时启用 debanding,因" +"为抖动模式会使无损压缩的屏幕截图更大。\n" +"[b]注意:[/b] 仅在 GLES3 后端可用。 [member rendering/quality/depth/hdr] 也必" +"须为 [code]true[/code] 才能使去色带有效。\n" +"[b]注意:[/b] 已知在移动平台上的去色带存在破坏渲染的问题。因此,建议在用于移" +"动平台时禁用此选项。" -#: doc/classes/ProjectSettings.xml:1332 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1334 msgid "" "Enables FXAA in the root Viewport. FXAA is a popular screen-space " "antialiasing method, which is fast but will make the image look blurry, " @@ -56455,11 +57196,12 @@ msgid "" "recovered by enabling contrast-adaptive sharpening (see [member rendering/" "quality/filters/sharpen_intensity])." msgstr "" -"使用快速的近似抗锯齿。FXAA是一种流行的屏幕空间抗锯齿方法,它的速度很快,但会" -"使图像看起来很模糊,特别是在较低的分辨率。在1440p和4K等大分辨率下,仍然可以相" -"对良好地工作。" +"在根视窗中启用FXAA。FXAA是一种流行的屏幕空间抗锯齿方法,它速度快,但会使图像" +"看起来很模糊,特别是在低分辨率下。在1440p和4K这样的大分辨率下,可以工作得比较" +"好。一些损失的锐度可以通过启用对比度适应性锐化来恢复,参阅[member rendering/" +"quality/filters/sharpen_intensity]。" -#: doc/classes/ProjectSettings.xml:1335 +#: doc/classes/ProjectSettings.xml:1337 msgid "" "If [code]true[/code], uses nearest-neighbor mipmap filtering when using " "mipmaps (also called \"bilinear filtering\"), which will result in visible " @@ -56472,7 +57214,7 @@ msgstr "" "可能会提高移动设备的性能。如果 [code]false[/code],则使用线性 mipmap 过滤(也" "称为“三线性过滤”)。" -#: doc/classes/ProjectSettings.xml:1338 +#: doc/classes/ProjectSettings.xml:1340 msgid "" "Strategy used for framebuffer allocation. The simpler it is, the less " "resources it uses (but the less features it supports). If set to \"2D " @@ -56486,7 +57228,7 @@ msgstr "" "[code]SCREEN_TEXTURE[/code]和[code]DEPTH_TEXTURE[/code]将不能在着色器中使用," "而后处理效果将不能在[Environment]中使用。" -#: doc/classes/ProjectSettings.xml:1341 +#: doc/classes/ProjectSettings.xml:1343 msgid "" "Lower-end override for [member rendering/quality/intended_usage/" "framebuffer_allocation] on mobile devices, due to performance concerns or " @@ -56495,53 +57237,58 @@ msgstr "" "由于性能或驱动支持问题,在移动设备上对[member rendering/quality/" "intended_usage/framebuffer_allocation]以低配数值覆盖。" -#: doc/classes/ProjectSettings.xml:1344 +#: doc/classes/ProjectSettings.xml:1346 msgid "" "Enable usage of bicubic sampling in baked lightmaps. This results in " "smoother looking lighting at the expense of more bandwidth usage. On GLES2, " "changes to this setting will only be applied upon restarting the application." msgstr "" +"在烘焙光照贴图中启用双三次采样。这会导致更平滑的照明,但会占用更多带宽。在 " +"GLES2 上,只有在重新启动应用程序时才会应用对此设置的更改。" -#: doc/classes/ProjectSettings.xml:1347 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1349 msgid "" "Lower-end override for [member rendering/quality/lightmapping/" "use_bicubic_sampling] on mobile devices, in order to reduce bandwidth usage." msgstr "" -"由于性能问题或驱动支持,在移动设备上将对[member rendering/quality/shading/" -"force_vertex_shading]以低配数值覆盖。" +"在移动设备上对[member rendering/quality/lightmapping/use_bicubic_sampling]进" +"行低端覆盖,以减少带宽使用。" -#: doc/classes/ProjectSettings.xml:1350 +#: doc/classes/ProjectSettings.xml:1352 msgid "" "Size of the atlas used by reflection probes. A larger size can result in " "higher visual quality, while a smaller size will be faster and take up less " "memory." msgstr "" +"反射探针使用的图集的大小。较大的尺寸可以带来更高的视觉质量,而较小的尺寸会更" +"快并占用更少的内存。" -#: doc/classes/ProjectSettings.xml:1353 +#: doc/classes/ProjectSettings.xml:1355 msgid "" "Number of subdivisions to use for the reflection atlas. A higher number " "lowers the quality of each atlas, but allows you to use more." msgstr "" +"用于反射图集的细分数。较高的数字会降低每个图集的质量,但允许您使用更多细分。" -#: doc/classes/ProjectSettings.xml:1356 +#: doc/classes/ProjectSettings.xml:1358 msgid "" "If [code]true[/code], uses a high amount of samples to create blurred " "variants of reflection probes and panorama backgrounds (sky). Those blurred " "variants are used by rough materials." msgstr "" +"如果 [code]true[/code],则使用大量样本来创建反射探针和全景背景(天空)的模糊" +"变体。这些模糊的变体可以被粗糙的材料使用。" -#: doc/classes/ProjectSettings.xml:1359 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1361 msgid "" "Lower-end override for [member rendering/quality/reflections/" "high_quality_ggx] on mobile devices, due to performance concerns or driver " "support." msgstr "" -"由于性能问题或驱动程序支持,移动设备上将对 [member rendering/quality/" -"reflections/ggx_samples] 以低性能数值覆盖。" +"由于性能问题或驱动器支持,在移动设备上对[member rendering/quality/" +"reflections/high_quality_ggx]进行低端覆盖。" -#: doc/classes/ProjectSettings.xml:1362 +#: doc/classes/ProjectSettings.xml:1364 msgid "" "Limits the size of the irradiance map which is normally determined by " "[member Sky.radiance_size]. A higher size results in a higher quality " @@ -56551,19 +57298,22 @@ msgid "" "[b]Note:[/b] Low and mid range hardware do not support complex irradiance " "maps well and may crash if this is set too high." msgstr "" +"限制辐照度贴图的大小,通常由 [member Sky.radiance_size] 确定。与[member " +"rendering/quality/reflections/high_quality_ggx] 类似,更大的尺寸会产生更高质" +"量的辐照度贴图。使用高频 HDRI 贴图时使用较高的值,否则请尽可能降低该值。\n" +"[b]注意:[/b] 中低档硬件不能很好地支持复杂的辐照度贴图,如果设置太高可能会崩" +"溃。" -#: doc/classes/ProjectSettings.xml:1366 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1368 msgid "" "If [code]true[/code], uses texture arrays instead of mipmaps for reflection " "probes and panorama backgrounds (sky). This reduces jitter noise on " "reflections, but costs more performance and memory." msgstr "" -"如果 [code]true[/code],则对反射探针和全景背景(天空)使用纹理数组而不是 " -"mipmap。这减少了反射上的抖动噪声和放大伪影,但计算速度要慢得多,并且使用 " -"[member rendering/quality/reflections/roughness_layers]时要花费更多的内存。" +"如果[code]true[/code],对反射探针和全景背景(天空)使用纹理数组而不是" +"mipmaps。这可以减少反射的抖动噪声,但要消耗更多的性能和内存。" -#: doc/classes/ProjectSettings.xml:1369 +#: doc/classes/ProjectSettings.xml:1371 msgid "" "Lower-end override for [member rendering/quality/reflections/" "texture_array_reflections] on mobile devices, due to performance concerns or " @@ -56572,7 +57322,7 @@ msgstr "" "由于性能问题或驱动支持,在移动设备上将对[member rendering/quality/" "reflections/texture_array_reflections]以低性能数值覆盖。" -#: doc/classes/ProjectSettings.xml:1372 +#: doc/classes/ProjectSettings.xml:1374 msgid "" "If [code]true[/code], uses faster but lower-quality Blinn model to generate " "blurred reflections instead of the GGX model." @@ -56580,7 +57330,7 @@ msgstr "" "如果 [code]true[/code],则使用速度更快但质量较低的 Blinn 模型而不是 GGX 模型" "来生成模糊反射。" -#: doc/classes/ProjectSettings.xml:1375 +#: doc/classes/ProjectSettings.xml:1377 msgid "" "Lower-end override for [member rendering/quality/shading/" "force_blinn_over_ggx] on mobile devices, due to performance concerns or " @@ -56589,7 +57339,7 @@ msgstr "" "由于性能或驱动支持问题,在移动设备上将对[member rendering/quality/shading/" "force_blinn_over_ggx]以低值覆盖。" -#: doc/classes/ProjectSettings.xml:1378 +#: doc/classes/ProjectSettings.xml:1380 msgid "" "If [code]true[/code], uses faster but lower-quality Lambert material " "lighting model instead of Burley." @@ -56597,7 +57347,7 @@ msgstr "" "如果 [code]true[/code],则使用速度更快但质量较低的 Lambert 材质照明模型而不" "是 Burley。" -#: doc/classes/ProjectSettings.xml:1381 +#: doc/classes/ProjectSettings.xml:1383 msgid "" "Lower-end override for [member rendering/quality/shading/" "force_lambert_over_burley] on mobile devices, due to performance concerns or " @@ -56606,7 +57356,7 @@ msgstr "" "由于性能问题或驱动支持,在移动设备上将对[member rendering/quality/shading/" "force_lambert_over_burley]以低配数值覆盖。" -#: doc/classes/ProjectSettings.xml:1384 +#: doc/classes/ProjectSettings.xml:1386 msgid "" "If [code]true[/code], forces vertex shading for all rendering. This can " "increase performance a lot, but also reduces quality immensely. Can be used " @@ -56615,7 +57365,7 @@ msgstr "" "如果 [code]true[/code],则为所有渲染强制顶点着色。这可以大大提高性能,但也会" "极大地降低质量。可用于优化低端移动设备的性能。" -#: doc/classes/ProjectSettings.xml:1387 +#: doc/classes/ProjectSettings.xml:1389 msgid "" "Lower-end override for [member rendering/quality/shading/" "force_vertex_shading] on mobile devices, due to performance concerns or " @@ -56624,7 +57374,7 @@ msgstr "" "由于性能问题或驱动支持,在移动设备上将对[member rendering/quality/shading/" "force_vertex_shading]以低配数值覆盖。" -#: doc/classes/ProjectSettings.xml:1390 +#: doc/classes/ProjectSettings.xml:1392 msgid "" "If [code]true[/code], enables new physical light attenuation for " "[OmniLight]s and [SpotLight]s. This results in more realistic lighting " @@ -56634,8 +57384,12 @@ msgid "" "energy or attenuation values.\n" "Changes to this setting will only be applied upon restarting the application." msgstr "" +"如果 [code]true[/code],则为 [OmniLight] 和 [SpotLight] 启用新的物理光衰减。" +"这会以非常小的性能成本获得更逼真的照明外观。启用物理光衰减后,由于新的衰减公" +"式,灯光会显得更暗。这可以通过调整灯光的能量或衰减值来补偿。\n" +"对此设置的更改只会在重新启动应用程序时应用。" -#: doc/classes/ProjectSettings.xml:1394 +#: doc/classes/ProjectSettings.xml:1396 msgid "" "Size for cubemap into which the shadow is rendered before being copied into " "the shadow atlas. A higher number can result in higher resolution shadows " @@ -56643,21 +57397,25 @@ msgid "" "Setting higher than a quarter of the [member rendering/quality/shadow_atlas/" "size] will not result in a perceptible increase in visual quality." msgstr "" +"立方体贴图的大小,在将阴影复制到阴影图集中之前将其渲染到其中。当与更高的 " +"[member rendering/quality/shadow_atlas/size] 一起使用时,更高的数字会导致更高" +"分辨率的阴影。设置高于 [member rendering/quality/shadow_atlas/size] 的四分之" +"一不会导致视觉质量的明显提高。" -#: doc/classes/ProjectSettings.xml:1397 doc/classes/ProjectSettings.xml:1400 -#: doc/classes/ProjectSettings.xml:1403 doc/classes/ProjectSettings.xml:1406 +#: doc/classes/ProjectSettings.xml:1399 doc/classes/ProjectSettings.xml:1402 +#: doc/classes/ProjectSettings.xml:1405 doc/classes/ProjectSettings.xml:1408 msgid "" "Subdivision quadrant size for shadow mapping. See shadow mapping " "documentation." msgstr "阴影贴图的细分象限大小。请参阅阴影映射文档。" -#: doc/classes/ProjectSettings.xml:1409 +#: doc/classes/ProjectSettings.xml:1411 msgid "" "Size for shadow atlas (used for OmniLights and SpotLights). See " "documentation." msgstr "阴影图集的尺寸(用于OmniLights和SpotLights)。见文档。" -#: doc/classes/ProjectSettings.xml:1412 +#: doc/classes/ProjectSettings.xml:1414 msgid "" "Lower-end override for [member rendering/quality/shadow_atlas/size] on " "mobile devices, due to performance concerns or driver support." @@ -56665,7 +57423,7 @@ msgstr "" "由于性能或驱动支持问题,在移动设备上将对 [member rendering/quality/" "shadow_atlas/size]以低配数值覆盖。" -#: doc/classes/ProjectSettings.xml:1415 +#: doc/classes/ProjectSettings.xml:1417 msgid "" "Shadow filter mode. Higher-quality settings result in smoother shadows that " "flicker less when moving. \"Disabled\" is the fastest option, but also has " @@ -56675,24 +57433,30 @@ msgid "" "uses 16 samples to emulate linear filtering in the shader. This results in a " "shadow appearance similar to the one produced by the GLES3 backend." msgstr "" +"阴影过滤模式。较高的质量设置会产生更平滑的阴影,在移动时闪烁更少。\"禁用 \"是" +"最快的选项,但也有最低的质量。\"PCF5 \"更平滑,但也更慢。\"PCF13 \"是最平滑的" +"选项,但也是最慢的。\n" +"[b]注意:[/b] 当使用GLES2后端时,\"PCF13 \"选项实际上使用16个样本来模拟着色器" +"中的线性滤波。这导致了与GLES3后端产生的阴影外观相似。" -#: doc/classes/ProjectSettings.xml:1419 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1421 msgid "" "Lower-end override for [member rendering/quality/shadows/filter_mode] on " "mobile devices, due to performance concerns or driver support." msgstr "" -"由于性能或驱动支持问题,在移动设备上将对 [member rendering/quality/" -"shadow_atlas/size]以低配数值覆盖。" +"由于性能问题或驱动器支持,在移动设备上对 [member rendering/quality/shadows/" +"filter_mode] 进行低端覆盖。" -#: doc/classes/ProjectSettings.xml:1422 +#: doc/classes/ProjectSettings.xml:1424 msgid "" "Forces [MeshInstance] to always perform skinning on the CPU (applies to both " "GLES2 and GLES3).\n" "See also [member rendering/quality/skinning/software_skinning_fallback]." msgstr "" +"强制 [MeshInstance] 始终在 CPU 上执行蒙皮(适用于 GLES2 和 GLES3)。\n" +"另见[member rendering/quality/skinning/software_skinning_fallback]。" -#: doc/classes/ProjectSettings.xml:1426 +#: doc/classes/ProjectSettings.xml:1428 msgid "" "Allows [MeshInstance] to perform skinning on the CPU when the hardware " "doesn't support the default GPU skinning process with GLES2.\n" @@ -56703,48 +57467,57 @@ msgid "" "shaders will behave in a different way, because the bone transform will be " "already applied to the modelview matrix." msgstr "" +"当硬件不支持 GLES2 的默认 GPU 蒙皮过程时,允许 [MeshInstance] 在 CPU 上执行蒙" +"皮。\n" +"如果 [code]false[/code],则在这种情况下使用 GPU 上的替代蒙皮过程(在大多数情" +"况下较慢)。\n" +"另见[member rendering/quality/skinning/force_software_skinning]。\n" +"[b]注意:[/b] 当触发软件蒙皮回退时,自定义顶点着色器将以不同的方式运行,因为" +"骨骼变换已经应用于模型视图矩阵。" -#: doc/classes/ProjectSettings.xml:1432 +#: doc/classes/ProjectSettings.xml:1434 msgid "" "The rendering octree balance can be changed to favor smaller ([code]0[/" "code]), or larger ([code]1[/code]) branches.\n" "Larger branches can increase performance significantly in some projects." msgstr "" +"渲染八叉树(octree)的平衡可以改变为有利于更小的 ([code]0[/code]) 或更大的 " +"([code]1[/code]) 分支。\n" +"在某些项目中,较大的分支可以显着提高性能。" -#: doc/classes/ProjectSettings.xml:1436 +#: doc/classes/ProjectSettings.xml:1438 msgid "" "Enables the use of bounding volume hierarchy instead of octree for rendering " "spatial partitioning. This may give better performance." msgstr "" +"启用边界体积层次结构而不是八叉树来渲染空间分区。这可能会带来更好的性能。" -#: doc/classes/ProjectSettings.xml:1439 +#: doc/classes/ProjectSettings.xml:1441 msgid "" "Improves quality of subsurface scattering, but cost significantly increases." -msgstr "" +msgstr "提高次表面散射的质量,但成本显着增加。" -#: doc/classes/ProjectSettings.xml:1442 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1444 msgid "Quality setting for subsurface scattering (samples taken)." -msgstr "地下散射效应的强度。" +msgstr "次表面散射的质量设置(采样)。" -#: doc/classes/ProjectSettings.xml:1445 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1447 msgid "Max radius used for subsurface scattering samples." -msgstr "地下散射效应的强度。" +msgstr "用于次表面散射样本的最大半径。" -#: doc/classes/ProjectSettings.xml:1448 +#: doc/classes/ProjectSettings.xml:1450 msgid "" "Weight subsurface scattering samples. Helps to avoid reading samples from " "unrelated parts of the screen." -msgstr "" +msgstr "加权次表面散射样本。有助于避免从屏幕的不相关部分读取样本。" -#: doc/classes/ProjectSettings.xml:1451 +#: doc/classes/ProjectSettings.xml:1453 msgid "" "Use high-quality voxel cone tracing. This results in better-looking " "reflections, but is much more expensive on the GPU." -msgstr "" +msgstr "使用高质量的体素锥体追踪。这会产生更好看的反射,但 GPU 消耗要高得多。" -#: doc/classes/ProjectSettings.xml:1454 +#: doc/classes/ProjectSettings.xml:1456 msgid "" "Thread model for rendering. Rendering on a thread can vastly improve " "performance, but synchronizing to the main thread can cause a bit more " @@ -56753,16 +57526,18 @@ msgstr "" "渲染的线程模型。在线程上进行渲染可以极大地提高性能,但同步到主线程上会导致更" "多的抖动。" -#: doc/classes/ProjectSettings.xml:1457 +#: doc/classes/ProjectSettings.xml:1459 msgid "" "If [code]true[/code], a thread safe version of BVH (bounding volume " "hierarchy) will be used in rendering and Godot physics.\n" "Try enabling this option if you see any visual anomalies in 3D (such as " "incorrect object visibility)." msgstr "" +"如果 [code]true[/code],则将在渲染和 Godot 物理中使用线程安全版本的 BVH(边界" +"体积层次结构)。\n" +"如果您在 3D 中看到任何视觉异常,例如不正确的可见性对象,请尝试启用此选项。" -#: doc/classes/ProjectSettings.xml:1461 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1463 msgid "" "If [code]true[/code], the texture importer will import VRAM-compressed " "textures using the BPTC algorithm. This texture compression algorithm is " @@ -56774,11 +57549,14 @@ msgid "" "located inside the project folder then restart the editor (see [member " "application/config/use_hidden_project_data_directory])." msgstr "" -"如果[code]true[/code],纹理导入器将使用BPTC算法导入VRAM压缩的纹理。这种纹理压" -"缩算法只在桌面平台上支持,而且只在使用Vulkan渲染器时支持。" +"如果 [code]true[/code],纹理导入器将使用 BPTC 算法导入 VRAM 压缩的纹理。此纹" +"理压缩算法仅在桌面平台得到支持,并且仅在使用 GLES3 渲染器时才受支持。\n" +"[b]注意:[/b]更改此设置不会[i]不[/i]影响之前已经导入的纹理。要将此设置应用于" +"已导入的纹理,请退出编辑器,删除位于项目文件夹内的 [code].import/[/code] 文件" +"夹,然后重新启动编辑器(参阅 [member application/config/" +"use_hidden_project_data_directory])。" -#: doc/classes/ProjectSettings.xml:1465 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1467 msgid "" "If [code]true[/code], the texture importer will import VRAM-compressed " "textures using the Ericsson Texture Compression algorithm. This algorithm " @@ -56789,11 +57567,14 @@ msgid "" "located inside the project folder then restart the editor (see [member " "application/config/use_hidden_project_data_directory])." msgstr "" -"如果[code]true[/code],纹理导入器将使用BPTC算法导入VRAM压缩的纹理。这种纹理压" -"缩算法只在桌面平台上支持,而且只在使用Vulkan渲染器时支持。" +"如果 [code]true[/code],纹理导入器将使用Ericsson纹理压缩算法导入 VRAM 压缩的" +"纹理。此算法不支持纹理中的 alpha 通道。\n" +"[b]注意:[/b]更改此设置不会[i]不[/i]影响之前已经导入的纹理。要将此设置应用于" +"已导入的纹理,请退出编辑器,删除位于项目中的 [code].import/[/code] 文件夹,然" +"后重新启动编辑器,参阅 [member application/config/" +"use_hidden_project_data_directory]。" -#: doc/classes/ProjectSettings.xml:1469 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1471 msgid "" "If [code]true[/code], the texture importer will import VRAM-compressed " "textures using the Ericsson Texture Compression 2 algorithm. This texture " @@ -56804,11 +57585,14 @@ msgid "" "located inside the project folder then restart the editor (see [member " "application/config/use_hidden_project_data_directory])." msgstr "" -"如果[code]true[/code],纹理导入器将使用BPTC算法导入VRAM压缩的纹理。这种纹理压" -"缩算法只在桌面平台上支持,而且只在使用Vulkan渲染器时支持。" +"如果 [code]true[/code],纹理导入器将使用 Ericsson Texture Compression 2 算法" +"导入 VRAM 压缩的纹理。仅在使用 GLES3 渲染器时,才支持此纹理压缩算法。\n" +"[b]注意:[/b]更改此设置[i]不[/i]会影响之前已经导入的纹理。要将此设置应用于已" +"导入的纹理,请退出编辑器,删除位于项目中的 [code].import/[/code] 文件夹,然后" +"重新启动编辑器,参阅 [member application/config/" +"use_hidden_project_data_directory]。" -#: doc/classes/ProjectSettings.xml:1473 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1475 msgid "" "If [code]true[/code], the texture importer will import VRAM-compressed " "textures using the PowerVR Texture Compression algorithm. This texture " @@ -56819,11 +57603,14 @@ msgid "" "located inside the project folder then restart the editor (see [member " "application/config/use_hidden_project_data_directory])." msgstr "" -"如果[code]true[/code],纹理导入器将使用BPTC算法导入VRAM压缩的纹理。这种纹理压" -"缩算法只在桌面平台上支持,而且只在使用Vulkan渲染器时支持。" +"如果 [code]true[/code],纹理导入器将使用 PowerVR 纹理压缩算法导入 VRAM 压缩的" +"纹理。此纹理压缩算法仅在 iOS 上受支持。\n" +"[b]注意:[/b]更改此设置[i]不会[/i]影响之前已经导入的纹理。要将此设置应用于已" +"导入的纹理,请退出编辑器,删除位于项目中的 [code].import/[/code] 文件夹,然后" +"重新启动编辑器,参阅 [member application/config/" +"use_hidden_project_data_directory]。" -#: doc/classes/ProjectSettings.xml:1477 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1479 msgid "" "If [code]true[/code], the texture importer will import VRAM-compressed " "textures using the S3 Texture Compression algorithm. This algorithm is only " @@ -56834,15 +57621,19 @@ msgid "" "located inside the project folder then restart the editor (see [member " "application/config/use_hidden_project_data_directory])." msgstr "" -"如果[code]true[/code],纹理导入器将使用BPTC算法导入VRAM压缩的纹理。这种纹理压" -"缩算法只在桌面平台上支持,而且只在使用Vulkan渲染器时支持。" +"如果 [code]true[/code],纹理导入器将使用 S3 纹理压缩算法导入 VRAM 压缩的纹" +"理。此算法仅在桌面平台和控制台中受支持。\n" +"[b]注意:[/b]更改此设置[i]不会[/i]影响之前已经导入的纹理。要将此设置应用于已" +"导入的纹理,请退出编辑器,删除位于项目中的 [code].import/[/code] 文件夹,然后" +"重新启动编辑器,参阅 [member application/config/" +"use_hidden_project_data_directory]。" -#: doc/classes/ProjectSettings.xml:1481 -#, fuzzy +#: doc/classes/ProjectSettings.xml:1483 msgid "" "Cell size used for the 2D hash grid that [VisibilityNotifier2D] uses (in " "pixels)." -msgstr "用于[VisibilityNotifier2D]的二维哈希网格的单元格大小。" +msgstr "" +"用于 [VisibilityNotifier2D] 使用的 2D 哈希网格的单元格大小,以像素为单位。" #: doc/classes/ProximityGroup.xml:4 doc/classes/ProximityGroup.xml:7 msgid "General-purpose proximity detection node." @@ -56869,9 +57660,8 @@ msgid "https://godotengine.org/asset-library/asset/129" msgstr "https://godotengine.org/asset-library/asset/129" #: doc/classes/QuadMesh.xml:17 -#, fuzzy msgid "Offset of the generated Quad. Useful for particles." -msgstr "生成的纹理的高度。" +msgstr "生成的 Quad 的偏移量。对粒子有用。" #: doc/classes/QuadMesh.xml:20 msgid "Size on the X and Y axes." @@ -56903,7 +57693,7 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/3d/using_transforms." "html#interpolating-with-quaternions" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/3d/using_transforms." +"https://docs.godotengine.org/zh_CN/stable/tutorials/3d/using_transforms." "html#interpolating-with-quaternions" #: doc/classes/Quat.xml:20 @@ -56939,16 +57729,19 @@ msgid "" "error, so methods such as [method @GDScript.is_zero_approx] will not work " "reliably." msgstr "" +"返回此四元数与 [code]to[/code] 之间的角度。这是从一个到另一个旋转所需的角度大" +"小。\n" +"[b]注意:[/b]该方法的浮点错误率异常高,因此[method@GDScript.is_zero_approx]等" +"方法结果不可靠。" #: doc/classes/Quat.xml:63 -#, fuzzy msgid "" "Performs a cubic spherical interpolation between quaternions [code]pre_a[/" "code], this vector, [code]b[/code], and [code]post_b[/code], by the given " "amount [code]weight[/code]." msgstr "" -"在四元数[code]preA[/code]、此向量、[code]b[/code]和[code]postB[/code]之间,通" -"过给定的量[code]t[/code],执行一个三维球面插值。" +"在四元数 [code]pre_a[/code]、该向量 [code]b[/code] 和 [code]post_b[/code] 之" +"间执行三次球面插值,按给定的 [code]weight[/code]。" #: doc/classes/Quat.xml:70 msgid "Returns the dot product of two quaternions." @@ -56969,14 +57762,13 @@ msgid "Returns the inverse of the quaternion." msgstr "返回四元数的取逆。(译注:即xyz的值分别取反)." #: doc/classes/Quat.xml:89 -#, 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 "" -"通过对每个组件运行[method @GDScript.is_equal_approx],如果这个四元组和" -"[code]quat[/code]大致相等,则返回[code]true[/code]。" +"通过在每个分量上进行 [method @GDScript.is_equal_approx],如果此四元数和 " +"[code]quat[/code] 近似相等,则返回 [code]true[/code]。" #: doc/classes/Quat.xml:95 msgid "Returns whether the quaternion is normalized or not." @@ -57078,7 +57870,6 @@ msgid "A class for generating pseudo-random numbers." msgstr "一个用于生成伪随机数的类。" #: doc/classes/RandomNumberGenerator.xml:7 -#, fuzzy msgid "" "RandomNumberGenerator is a class for generating pseudo-random numbers. It " "currently uses [url=http://www.pcg-random.org/]PCG32[/url].\n" @@ -57098,25 +57889,28 @@ msgid "" "The [code]0[/code] value documented here is a placeholder, and not the " "actual default seed." msgstr "" -"RandomNumberGenerator是一个用于生成伪随机数的类。它目前使用[url=http://www." +"RandomNumberGenerator 是一个用于生成伪随机数的类。它目前使用 [url=http://www." "pcg-random.org/]PCG32[/url]。\n" -"[b]注意:[/b] 底层算法是一个实现细节。因此,它不应该被用来在不同的Godot版本中" -"产生可重复的随机流。\n" -"基于一个与时间有关的种子,生成一个随机的浮点数(在一个给定的范围内)。\n" +"[b]注:[/b]底层算法是实现细节。因此,跨 Godot 版本的可重复随机流不应该依赖于" +"此。\n" +"要根据时间相关种子生成随机浮点数,在给定范围内:\n" "[codeblock]\n" "var rng = RandomNumberGenerator.new()\n" "func _ready():\n" " rng.randomize()\n" " var my_random_number = rng.randf_range(-10.0, 10.0)\n" -"[/codeblock]" +"[/codeblock]\n" +"[b]注:[/b] [member seed] 和 [member state] 属性的默认值是伪随机的,在调用" +"[method randomize] 时会发生变化。此处记录的 [code]0[/code] 值是一个占位符,而" +"不是实际的默认种子。" #: doc/classes/RandomNumberGenerator.xml:19 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/math/random_number_generation." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/math/random_number_generation." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/math/" +"random_number_generation.html" #: doc/classes/RandomNumberGenerator.xml:25 msgid "" @@ -57182,6 +57976,19 @@ msgid "" "state], and not the initial seed value, which is going to be fixed in Godot " "4.0." msgstr "" +"根据给定的种子值初始化随机数生成器状态。给定的种子将提供可重复的伪随机数序" +"列。\n" +"[b]注:[/b] RNG 没有雪崩效应,可以输出相似的随机流给定相似的种子。如果种子来" +"自外部,请考虑使用哈希函数来提高种子质量。\n" +"[b]注:[/b]设置这个属性会产生改变内部[member state]的副作用,所以一定要在修改" +"[member state][i]之前[/i]初始化种子:\n" +"[codeblock]\n" +"var rng = RandomNumberGenerator.new()\n" +"rng.seed = hash(\"Godot\")\n" +"rng.state = 100 # Restore to some previously saved state.\n" +"[/codeblock]\n" +"[b]警告:[/b]该属性的getter返回之前的[member state],而不是初始种子值,这将在" +"Godot 4.0中修复。" #: doc/classes/RandomNumberGenerator.xml:78 msgid "" @@ -57201,6 +58008,18 @@ msgid "" "initialize the random number generator with arbitrary input, use [member " "seed] instead." msgstr "" +"随机数生成器的当前状态。保存并恢复此属性,以将生成器恢复到之前的状态:\n" +"[codeblock]\n" +"var rng = RandomNumberGenerator.new()\n" +"print(rng.randf())\n" +"var saved_state = rng.state # Store current state.\n" +"print(rng.randf()) # Advance internal state.\n" +"rng.state = saved_state # Restore the state.\n" +"print(rng.randf()) # Prints the same value as in previous.\n" +"[/codeblock]\n" +"[b]注意:[/b] 不要将状态设置为任意值,因为随机数生成器要求状态具有某些特性才" +"能正常运行。它应该只设置为来自状态属性本身的值。要使用任意输入初始化随机数生" +"成器,请改用 [member seed]。" #: doc/classes/Range.xml:4 msgid "Abstract base class for range-based controls." @@ -57312,7 +58131,6 @@ msgid "Query the closest object intersecting a ray." msgstr "查询与射线相交的最近物体。" #: doc/classes/RayCast.xml:7 -#, fuzzy msgid "" "A RayCast represents a line from its origin to its destination position, " "[code]cast_to[/code]. It is used to query the 3D space in order to find the " @@ -57329,15 +58147,15 @@ 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]的直线。它被用来查询3D空" -"间,以便沿着射线的路径找到最近的物体。\n" -"RayCast3D可以忽略一些物体,通过[code]add_exception[/code]将它们添加到异常列表" -"中,通过设置碰撞层进行适当的过滤,或者通过类型掩码过滤物体类型。\n" -"RayCast3D可以被配置为报告[Area3D]([member collide_with_areas])和" -"[PhysicsBody2D]([member collide_with_bodies])之间或彼此间的碰撞。\n" -"只有被激活的Raycast才能够查询空间并报告碰撞情况。\n" -"RayCast2D在每一个物理帧中计算交集(见[Node]),结果被缓存起来,以便以后可以用" -"到下一帧。如果在物理帧之间需要多次查询(或在同一帧中),请在调整射线广播后使" +"RayCast 表示从起点到终点位置的线,[code]cast_to[/code]。它用于检测 3D 空间," +"以便找到沿光线路径最近的对象。\n" +"RayCast 可以忽略某些对象,方法是通过 [code]add_exception[/code] 将它们添加到" +"例外列表中,或者通过使用碰撞层和掩码设置,进行适当的过滤。\n" +"RayCast 可以配置为报告与 [Area]([member collide_with_areas]) 和/或 " +"[PhysicsBody]([member collide_with_bodies]) 的碰撞。\n" +"只有启用的光线投射才能检测空间并报告碰撞。\n" +"RayCast 计算每个物理帧的交集(参阅 [Node]),并将结果缓存起来,以便稍后使用," +"直到下一帧。如果物理帧之间(或同一帧期间)需要多次检测,请在调整光线投射后使" "用[method force_raycast_update]。" #: doc/classes/RayCast.xml:22 doc/classes/RayCast2D.xml:21 @@ -57357,7 +58175,6 @@ msgid "Removes all collision exceptions for this ray." msgstr "删除此射线的所有碰撞异常。" #: doc/classes/RayCast.xml:41 -#, fuzzy msgid "" "Updates the collision information for the ray.\n" "Use this method to update the collision information immediately instead of " @@ -57365,10 +58182,10 @@ msgid "" "ray or its parent has changed state.\n" "[b]Note:[/b] [code]enabled[/code] is not required for this to work." msgstr "" -"更新光线的碰撞信息。\n" -"使用这个方法可以立即更新碰撞信息,而不是等待下一次[code]_physics_process[/" -"code]调用,例如当射线或它的父进程状态改变时。\n" -"[b]注意:[/b] 并不需要[member enabled]为[code]true[/code]才能工作。" +"更新射线的碰撞信息。\n" +"使用此方法立即更新碰撞信息,而不是等待下一个 [code]_physics_process[/code] 调" +"用,例如,如果光线或其父级已更改状态。\n" +"[b]注意:[/b] [code]enabled[/code]不需要此功能。" #: doc/classes/RayCast.xml:49 doc/classes/RayCast2D.xml:47 msgid "" @@ -57441,14 +58258,12 @@ msgid "" msgstr "光线相对于光线投射的 [code]position[/code]的目标点,。" #: doc/classes/RayCast.xml:114 -#, fuzzy msgid "If [code]true[/code], collision with [Area]s will be reported." -msgstr "如果[code]true[/code],将报告与[Area2D]的碰撞。" +msgstr "如果 [code]true[/code],将反馈与 [Area] 的碰撞。" #: doc/classes/RayCast.xml:117 -#, fuzzy msgid "If [code]true[/code], collision with [PhysicsBody]s will be reported." -msgstr "如果[code]true[/code],会报告与[PhysicsBody2D]的碰撞。" +msgstr "如果 [code]true[/code],将反馈与 [PhysicsBody] 的碰撞。" #: doc/classes/RayCast.xml:120 doc/classes/RayCast2D.xml:116 msgid "" @@ -57458,6 +58273,10 @@ msgid "" "masks]Collision layers and masks[/url] in the documentation for more " "information." msgstr "" +"光线的碰撞遮罩。只有在遮罩中启用至少一个碰撞层中物体,才会被检测到。有关更多" +"信息,请参阅文档中的 [url=https://docs.godotengine.org/zh_CN/stable/" +"tutorials/physics/physics_introduction.html#collision-layers-and-masks]碰撞层" +"和掩码[/url]。" #: doc/classes/RayCast.xml:123 msgid "" @@ -57468,6 +58287,11 @@ msgid "" "If set to [code]Color(0.0, 0.0, 0.0)[/code] (by default), the color set in " "[member ProjectSettings.debug/shapes/collision/shape_color] is used." msgstr "" +"如果在 [b]Debug[/b] 菜单中启用了可见碰撞形状 [b]Visible Collision Shapes[/" +"b],则可用于在编辑器中和运行时绘制形状的自定义颜色。如果 [RayCast] 与某物体发" +"生碰撞,此颜色将在运行时突出显示。\n" +"如果设置为 [code]Color(0.0, 0.0, 0.0)[/code](默认),则使用 [member " +"ProjectSettings.debug/shapes/collision/shape_color] 中设置的颜色。" #: doc/classes/RayCast.xml:127 msgid "" @@ -57476,17 +58300,19 @@ msgid "" "Collision Shapes[/b] to be enabled in the [b]Debug[/b] menu for the debug " "shape to be visible at run-time." msgstr "" +"如果设置为 [code]1[/code],则将一条线用作调试形状。否则,将绘制一个截断的金字" +"塔来表示 [RayCast]。需要在 [b]调试[/b] 菜单中启用可见碰撞形状 [b]Visible " +"Collision Shapes[/b],以便调试形状在运行时可见。" #: doc/classes/RayCast.xml:130 doc/classes/RayCast2D.xml:119 msgid "If [code]true[/code], collisions will be reported." msgstr "如果 [code]true[/code],将报告碰撞。" #: doc/classes/RayCast.xml:133 -#, fuzzy msgid "" "If [code]true[/code], collisions will be ignored for this RayCast's " "immediate parent." -msgstr "如果 [code]true[/code],则此 RayCast3D 的直接父级的碰撞将被忽略。" +msgstr "如果 [code]true[/code],则此 RayCast 的直接父级的碰撞将被忽略。" #: doc/classes/RayCast2D.xml:7 msgid "" @@ -57518,7 +58344,6 @@ msgstr "" "用[method force_raycast_update]。" #: doc/classes/RayCast2D.xml:40 -#, fuzzy msgid "" "Updates the collision information for the ray. Use this method to update the " "collision information immediately instead of waiting for the next " @@ -57526,9 +58351,9 @@ msgid "" "changed state.\n" "[b]Note:[/b] [code]enabled[/code] is not required for this to work." msgstr "" -"更新光线的碰撞信息。使用这个方法可以立即更新碰撞信息,而不是等待下一次" -"[code]_physics_process[/code]调用,例如当射线或它的父进程状态改变时。\n" -"[b]注意:[/b] 并不需要[member enabled]为[code]true[/code]才能工作。" +"更新射线的碰撞信息。使用此方法立即更新碰撞信息,而不是等待下一次 " +"[code]_physics_process[/code] 调用,例如,如果光线或其父级已更改状态。\n" +"[b]注意:[/b] [code]enabled[/code]不需要此功能。" #: doc/classes/RayCast2D.xml:101 msgid "" @@ -57555,15 +58380,15 @@ msgid "Ray shape for 3D collisions." msgstr "用于 3D 碰撞的射线形状。" #: doc/classes/RayShape.xml:7 -#, fuzzy msgid "" "Ray shape for 3D collisions, which can be set into a [PhysicsBody] or " "[Area]. A ray is not really a collision body; instead, it tries to separate " "itself from whatever is touching its far endpoint. It's often useful for " "characters." msgstr "" -"3D 碰撞的射线形状,可以设置为 [PhysicsBody3D] 或 [Area3D]。射线并不是真正的碰" -"撞体;相反,它试图将自己与接触其远端的任何东西分开。它通常对角色很有用。" +"用于3D碰撞的射线形状,它可以被设置成一个[PhysicsBody]或[Area]。一条射线并不是" +"真正的碰撞体;然而,它试图将自己与其远端点接触的东西分开。这通常对角色很有" +"用。" #: doc/classes/RayShape.xml:15 doc/classes/RayShape2D.xml:15 msgid "The ray's length." @@ -57587,20 +58412,19 @@ msgstr "" "任何东西分开。它通常对角色很有用。" #: doc/classes/Rect2.xml:4 -#, fuzzy msgid "2D axis-aligned bounding box." -msgstr "轴对齐包围盒。" +msgstr "2D 轴对齐边界框。" #: doc/classes/Rect2.xml:7 -#, fuzzy msgid "" "[Rect2] consists of a position, a size, and several utility functions. It is " "typically used for fast overlap tests.\n" "It uses floating-point coordinates.\n" "The 3D counterpart to [Rect2] is [AABB]." msgstr "" -"[Rect2] 由一个位置、一个大小和几个实用功能组成。它通常用于快速重叠测试。\n" -"它使用浮点坐标。" +"[Rect2] 由一个坐标、一个大小和几个实用函数组成。它通常用于快速重叠测试。\n" +"它使用浮点坐标。\n" +"[Rect2] 在 3D 中对应 [AABB]。" #: doc/classes/Rect2.xml:22 msgid "Constructs a [Rect2] by position and size." @@ -57629,40 +58453,54 @@ msgid "" msgstr "如果此 [Rect2] 完全包含另一个,则返回 [code]true[/code]。" #: doc/classes/Rect2.xml:59 -msgid "Returns this [Rect2] expanded to include a given point." -msgstr "返回包含给定点的此 [Rect2] 的扩展。" +msgid "" +"Returns a copy of this [Rect2] expanded to include a given point.\n" +"[b]Example:[/b]\n" +"[codeblock]\n" +"# position (-3, 2), size (1, 1)\n" +"var rect = Rect2(Vector2(-3, 2), Vector2(1, 1))\n" +"# position (-3, -1), size (3, 4), so we fit both rect and Vector2(0, -1)\n" +"var rect2 = rect.expand(Vector2(0, -1))\n" +"[/codeblock]" +msgstr "" -#: doc/classes/Rect2.xml:65 +#: doc/classes/Rect2.xml:72 msgid "Returns the area of the [Rect2]." msgstr "返回 [Rect2] 面积。" -#: doc/classes/Rect2.xml:72 +#: doc/classes/Rect2.xml:79 msgid "" "Returns a copy of the [Rect2] grown a given amount of units towards all the " "sides." msgstr "返回 [Rect2] 的副本,该副本向所有边增长了给定数量的单位。" -#: doc/classes/Rect2.xml:82 +#: doc/classes/Rect2.xml:89 msgid "" "Returns a copy of the [Rect2] grown a given amount of units towards each " "direction individually." msgstr "返回 [Rect2] 的副本,该副本分别向各边增长了给定数量的单位。" -#: doc/classes/Rect2.xml:90 +#: doc/classes/Rect2.xml:97 msgid "" "Returns a copy of the [Rect2] grown a given amount of units towards the " "[enum Margin] direction." msgstr "返回[Rect2]向[enum Margin]方向增长给定数量单位的副本。" -#: doc/classes/Rect2.xml:96 +#: doc/classes/Rect2.xml:103 msgid "Returns [code]true[/code] if the [Rect2] is flat or empty." msgstr "如果[Rect2]为flat或空,则返回[code]true[/code]。" -#: doc/classes/Rect2.xml:103 -msgid "Returns [code]true[/code] if the [Rect2] contains a point." -msgstr "如果 [Rect2] 包含点,则返回 [code]true[/code]。" +#: doc/classes/Rect2.xml:110 +msgid "" +"Returns [code]true[/code] if the [Rect2] contains a point. By convention, " +"the right and bottom edges of the [Rect2] are considered exclusive, so " +"points on these edges are [b]not[/b] included.\n" +"[b]Note:[/b] This method is not reliable for [Rect2] with a [i]negative " +"size[/i]. Use [method abs] to get a positive sized equivalent rectangle to " +"check for contained points." +msgstr "" -#: doc/classes/Rect2.xml:111 +#: doc/classes/Rect2.xml:119 msgid "" "Returns [code]true[/code] if the [Rect2] overlaps with [code]b[/code] (i.e. " "they have at least one point in common).\n" @@ -57674,7 +58512,7 @@ msgstr "" "如果 [code]include_borders[/code] 是 [code]true[/code],如果它们的边界接触," "即使没有交叉,它们也会被视为重叠。" -#: doc/classes/Rect2.xml:119 +#: doc/classes/Rect2.xml:127 msgid "" "Returns [code]true[/code] if this [Rect2] and [code]rect[/code] are " "approximately equal, by calling [code]is_equal_approx[/code] on each " @@ -57683,7 +58521,7 @@ msgstr "" "通过在每个组件上调用 [code]is_equal_approx[/code],如果此 [Rect2] 和 " "[code]rect[/code] 大致相等,则返回 [code]true[/code]。" -#: doc/classes/Rect2.xml:126 +#: doc/classes/Rect2.xml:134 msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]." msgstr "返回一个更大的 [Rect2],其中包含这个 [Rect2] 和 [code]b[/code]。" @@ -57708,7 +58546,6 @@ msgid "Base class for reference-counted objects." msgstr "引用计数对象的基类。" #: doc/classes/Reference.xml:7 -#, fuzzy msgid "" "Base class for any object that keeps a reference count. [Resource] and many " "other helper objects inherit this class.\n" @@ -57724,11 +58561,13 @@ 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]不同的是,引用保留了一个内部引用计数器,因此当且仅当它们不再被使用" -"时就会被自动释放。因此,引用不需要通过[method Object.free]手动释放。\n" -"在绝大多数的使用情况下,实例化和使用[Reference]派生的类型就是你需要做的全部事" -"情。这个类中提供的方法只适用于高级用户,如果误用的话会导致问题。" +"任何保持引用计数对象的基类。 [Resource] 和许多其他辅助对象继承了这个类。\n" +"与其他 [Object] 类型不同,References 保留一个内部引用计数器,以便在不使用且仅" +"在那时自动释放。因此,不需要使用 [method Object.free] 手动释放引用。\n" +"在绝大多数用例中,您只需要实例化和使用 [Reference] 派生类型。此类中提供的方法" +"仅适用于高级用户,如果误用可能会导致问题。\n" +"[b]注意:[/b]在C#中,引用不再使用后不会立即释放。相反,垃圾收集将定期运行并释" +"放不再使用的引用。这意味着未使用的引用会在被删除之前停留一段时间。" #: doc/classes/Reference.xml:19 msgid "" @@ -57764,15 +58603,14 @@ msgid "Reference frame for GUI." msgstr "GUI的引用框架。" #: doc/classes/ReferenceRect.xml:7 -#, fuzzy msgid "" "A rectangle box that displays only a [member border_color] border color " "around its rectangle. [ReferenceRect] has no fill [Color]. If you need to " "display a rectangle filled with a solid color, consider using [ColorRect] " "instead." msgstr "" -"一个矩形框,只在其矩形周围显示一个[member border_color]边框颜色。" -"[ReferenceRect]没有填充[Color]。" +"矩形框,仅在其矩形周围显示 [member border_color] 边框颜色。 [ReferenceRect] " +"没有填充 [Color]。如果你需要显示填充纯色的矩形,请考虑使用 [ColorRect] 。" #: doc/classes/ReferenceRect.xml:15 msgid "Sets the border [Color] of the [ReferenceRect]." @@ -57782,7 +58620,7 @@ msgstr "设置 [ReferenceRect] 的边框 [Color]。" msgid "" "Sets the border width of the [ReferenceRect]. The border grows both inwards " "and outwards with respect to the rectangle box." -msgstr "" +msgstr "设置 [ReferenceRect] 的边框宽度。边界相对于矩形框向内和向外生长。" #: doc/classes/ReferenceRect.xml:21 msgid "" @@ -57797,7 +58635,6 @@ msgid "Captures its surroundings to create reflections." msgstr "捕捉其周围的环境,以创造反射。" #: doc/classes/ReflectionProbe.xml:7 -#, fuzzy msgid "" "Capture its surroundings as a dual paraboloid image, and stores versions of " "it with increasing levels of blur to simulate different material " @@ -57816,17 +58653,22 @@ msgid "" "the same time for a single mesh. If possible, split up large meshes that " "span over multiple reflection probes into smaller ones." msgstr "" -"将其周围环境捕获为立方体图,并存储其版本,使其模糊程度增加,以模拟不同的材料" -"粗糙度。\n" -"[ReflectionProbe] 用于以性能为代价创建高质量的反射。它可以与 [GIProbe] 和屏幕" -"空间反射相结合,实现高质量的反射。[ReflectionProbe]渲染其[member cull_mask]中" -"的所有对象,因此更新它们可能相当昂贵。最好用重要的静态对象更新它们一次,然后" -"放下它们。" +"将其周围环境捕捉为双抛物面图像,并以越来越高的模糊度存储其版本,以模拟不同的" +"材质粗糙度。\n" +"[ReflectionProbe]用于以性能为代价创建高质量的反射。它可以与[GIProbe]和屏幕空" +"间反射相结合,实现高质量的反射。[ReflectionProbe]渲染其[member cull_mask]内的" +"所有对象,所以更新它们可能相当消耗资源。最好是用重要的静态对象更新一次,然后" +"就不去管了。\n" +"[b]注意:[/b] 默认情况下,Godot只会渲染16个反射探针。如果需要更多,可以增加图" +"集的细分数量。这个设置可以在[member ProjectSettings.rendering/quality/" +"reflections/atlas_subdiv]找到。\n" +"[b]注意:[/b] 对于一个网格,GLES2后端只能同时显示两个反射探针。如果可能的话," +"把跨越多个反射探针的大网格分割成小网格。" #: doc/classes/ReflectionProbe.xml:13 msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/reflection_probes.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/3d/reflection_probes.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/3d/reflection_probes.html" #: doc/classes/ReflectionProbe.xml:19 msgid "" @@ -57838,7 +58680,6 @@ msgstr "" "得在矩形房间中的反射看起来更正确。" #: doc/classes/ReflectionProbe.xml:22 -#, fuzzy msgid "" "Sets the cull mask which determines what objects are drawn by this probe. " "Every [VisualInstance] with a layer included in this cull mask will be " @@ -57846,9 +58687,9 @@ msgid "" "likely to take up a lot of space in the reflection in order to save on " "rendering cost." msgstr "" -"设置剔除蒙版,它决定了探测所绘制的对象。每个包含在这个剔除蒙版中的图层" -"[VisualInstance3D]都将被探针渲染。为了节省渲染成本,最好只包含大的物体,因为" -"它们很可能会占用大量的反射空间。" +"设置剔除遮罩,确定此探针绘制的对象。这个剔除蒙版中包含一个层的每个 " +"[VisualInstance] 都将由探测器渲染。最好只包含可能在反射中占用大量空间的大物" +"体,以节省渲染成本。" #: doc/classes/ReflectionProbe.xml:25 msgid "" @@ -57878,7 +58719,7 @@ msgstr "定义反射强度。" msgid "" "Sets the ambient light color to be used when this probe is set to [member " "interior_enable]." -msgstr "" +msgstr "设置环境光的颜色,当此探针被设置为[member interior_enable]时使用。" #: doc/classes/ReflectionProbe.xml:37 msgid "" @@ -57886,22 +58727,24 @@ msgid "" "light for this reflection probe when set to [member interior_enable]. Useful " "so that ambient light matches the color of the room." msgstr "" +"当设置为 [member internal_enable] 时,设置反射对该反射探测器的环境光的影响程" +"度的贡献值。环境光与房间的颜色相匹配中很有用。" #: doc/classes/ReflectionProbe.xml:40 msgid "" "Sets the energy multiplier for this reflection probe's ambient light " "contribution when set to [member interior_enable]." msgstr "" +"当设置为[member interior_enable]时,为该反射探针的环境光贡献设置能量乘数。" #: doc/classes/ReflectionProbe.xml:43 -#, fuzzy msgid "" "If [code]true[/code], reflections will ignore sky contribution. Ambient " "lighting is then controlled by the [code]interior_ambient_*[/code] " "properties." msgstr "" -"如果 [code]true[/code],反射将忽略天空因素。等效于 [member ReflectionProbe." -"interior]。" +"如果[code]true[/code],反射将忽略天空的贡献。然后环境照明由" +"[code]internal_ambient_*[/code]属性控制。" #: doc/classes/ReflectionProbe.xml:46 msgid "" @@ -57924,9 +58767,8 @@ msgstr "" "ALWAYS](一直)。" #: doc/classes/ReflectionProbe.xml:57 -#, fuzzy msgid "Update the probe once on the next frame." -msgstr "更新一次视窗,然后设置为禁用。" +msgstr "在下一帧更新一次探针。" #: doc/classes/ReflectionProbe.xml:60 msgid "" @@ -57942,7 +58784,6 @@ msgid "Class for searching text for patterns using regular expressions." msgstr "使用正则表达式搜索文本的类。" #: modules/regex/doc_classes/RegEx.xml:7 -#, fuzzy msgid "" "A regular expression (or regex) is a compact language that can be used to " "recognise strings that follow a specific pattern, such as URLs, email " @@ -58009,11 +58850,11 @@ msgid "" "[b]Tip:[/b] You can use [url=https://regexr.com/]Regexr[/url] to test " "regular expressions online." msgstr "" -"正则表达式(或称regex)是一种紧凑的语言,可用于识别符合特定表达式的字符串,如" +"正则表达式(或称regex)是一种紧凑的语言,可用于识别遵循特定模式的字符串,如" "URL、电子邮件地址、完整句子等。例如,一个[code]ab[0-9][/code]的正则表达式可以" "找到[code]ab[/code]后面跟着[code]0[/code]到[code]9[/code]的任何数字的字符串。" "要想更深入地了解,你可以很容易地在互联网上找到各种教程和详细解释。\n" -"首先,在使用RegEx对象之前,需要用[method compile]对其进行搜索模式的编译。\n" +"首先,在使用RegEx对象之前,需要用[method compile] 对其进行搜索模式的编译。\n" "[codeblock]\n" "var regex = RegEx.new()\n" "regex.compile(\"\\\\w-(\\\\d+)\")\n" @@ -58021,7 +58862,7 @@ msgstr "" "在为表达式转义之前,必须先为GDScript转义搜索模式。例如,[code]compile(\"\\\\d" "+\")[/code]会被RegEx读成[code]\\d+[/code]。同样,[code]compile(\"\\\"(?:\\\\" "\\\\.|[^\\\"])*\\\")[/code]会被读作[code]\"(?:\\.|[^\"])*\"[/code]。\n" -"使用[method search],你可以在给定的文本中找到表达式。如果找到一个表达式,将返" +"使用 [method search] ,你可以在给定的文本中匹配模式。如果匹配到一个模式,将返" "回[RegExMatch],你可以使用[method RegExMatch.get_string]和[method RegExMatch." "get_start]等方法检索结果的细节。\n" "[codeblock]\n" @@ -58029,10 +58870,10 @@ msgstr "" "regex.compile(\"\\\\w-(\\\\d+)\")\n" "var result = regex.search(\"abc n-0123\")\n" "if result:\n" -" print(result.get_string()) # 这会输出n-0123\n" +" print(result.get_string()) # Would print n-0123\n" "[/codeblock]\n" "捕获组的结果[code]()[/code]可以通过向[RegExMatch]中的各种方法传递组号来检索。" -"组0是默认的,并且将总是指整个表达式。在上面的例子中,调用[code]result." +"默认是组0,并且将总是指整个模式。在上面的例子中,调用[code]result." "get_string(1)[/code]会得到[code]0123[/code]。\n" "这个版本的RegEx也支持命名的捕获组,名称可以用来检索结果。如果两个或更多的组有" "相同的名称,那么这个名称将只指第一个有匹配的组。\n" @@ -58041,26 +58882,26 @@ msgstr "" "regex.compile(\"d(?<digit>[0-9]+)|x(?<digit>[0-9a-f]+)\")\n" "var result = regex.search(\"the number is x2f\")\n" "if result:\n" -" print(result.get_string(\"digit\")) # 这会输出 2f\n" +" print(result.get_string(\"digit\")) # Would print 2f\n" "[/codeblock]\n" -"如果你需要处理多个结果,[method search_all]会生成所有不重叠的结果的列表。为了" -"方便起见,这可以和一个[code]for[/code]循环结合起来。\n" +"如果你需要处理多个结果,[method search_all]会生成一个所有不重叠的结果列表。为" +"了方便起见,这可以和一个[code]for[/code]循环结合起来。\n" "[codeblock]\n" "for result in regex.search_all(\"d01, d03, d0c, x3f and x42\"):\n" " print(result.get_string(\"digit\"))\n" -"# 这会输出 01 03 0 3f 42\n" +"# Would print 01 03 0 3f 42\n" "[/codeblock]\n" "[b]使用RegEx分割字符串的例子:[/b]\n" "[codeblock]\n" "var regex = RegEx.new()\n" "regex.compile(\"\\\\S+\") # Negated whitespace character class.\n" "var results = []\n" -"for match in regex.search_all(\"One Two \\n\\tThree\"):\n" -" results.push_back(match.get_string())\n" -"# `results`数组现在包含 \"One\", \"Two\", \"Three\".\n" +"for result in regex.search_all(\"One Two \\n\\tThree\"):\n" +" results.push_back(result.get_string())\n" +"# The `results` array now contains \"One\", \"Two\", \"Three\".\n" "[/codeblock]\n" "[b]注意:[/b] Godot的regex实现是基于[url=https://www.pcre.org/]PCRE2[/url] " -"库。你可以查看完整的表达式参考[url=https://www.pcre.org/current/doc/html/" +"库。你可以查看完整的模式参考[url=https://www.pcre.org/current/doc/html/" "pcre2pattern.html]这里[/url]。\n" "[b]提示:[/b] 你可以使用[url=https://regexr.com/]Regexr[/url]来在线测试正则表" "达式。" @@ -58331,8 +59172,8 @@ msgid "" "https://docs.godotengine.org/en/3.4/getting_started/step_by_step/resources." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/resources." -"html" +"https://docs.godotengine.org/zh_CN/stable/getting_started/step_by_step/" +"resources.html" #: doc/classes/Resource.xml:18 msgid "" @@ -59018,23 +59859,40 @@ 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 "" +"富文本可以包含自定义文本、字体、图像和一些基本格式。标签将这些作为内部标签堆" +"栈进行管理。它还可以适应给定的宽度/高度。\n" +"[b]注意:[/b] 为 [member bbcode_text] 设置内容会清除标签堆栈并从属性的内容中" +"重建它。对 [member bbcode_text] 所做的任何编辑都将删除从其他手动来源(例如 " +"[method append_bbcode] 和 [code]push_*[/code] / [method pop] 方法)所做的先前" +"编辑。\n" +"[b]注意:[/b] RichTextLabel 不支持纠缠的 BBCode 标签。例如,不要使用 [code]" +"[b]bold[i]bold italic[/b]italic[/i][/code],而是使用 [code][b]bold[i]bold " +"italic[/i][/ b][i]italic[/i][/code]。\n" +"[b]注意:[/b] [code]push_*/pop[/code] 函数不会影响BBCode。\n" +"[b]注意:[/b] 与 [Label] 不同,RichTextLabel 没有 [i] 属性 [/i] 将文本水平对" +"齐到中心。相反,启用 [member bbcode_enabled] 并将文本括在 [code][center][/" +"code] 标签中,如下所示:[code][center]Example[/center][/code]。目前也没有垂直" +"对齐文本的内置方法,但这可以通过依赖锚点/容器和 [member fit_content_height] " +"属性来模拟。\n" +"[b]注意:[/b] [code]0xffff[/code] 之后的 Unicode 字符(例如大多数表情符号)" +"在 Windows 上 [i] 不支持 [/i]。它们将显示为未知字符。这将在 Godot 4.0 中解" +"决。" #: doc/classes/RichTextLabel.xml:16 msgid "https://godotengine.org/asset-library/asset/132" msgstr "https://godotengine.org/asset-library/asset/132" #: doc/classes/RichTextLabel.xml:26 -#, fuzzy msgid "" "Adds an image's opening and closing tags to the tag stack, optionally " "providing a [code]width[/code] and [code]height[/code] to resize the image.\n" "If [code]width[/code] or [code]height[/code] is set to 0, the image size " "will be adjusted in order to keep the original aspect ratio." msgstr "" -"将图像的开头和结尾标签添加到标签堆中,可选择提供[code]width[/code]和" -"[code]height[/code]来调整图像的大小,并提供[code]color[/code]来修改图像。\n" -"如果[code]width[/code]或[code]height[/code]被设置为0,图像的大小将被调整,以" -"保持原始长宽比。" +"将图像的开头和结尾标签添加到标签堆中,可以选择提供[code]width[/code]和" +"[code]height[/code]来调整图像的大小。\n" +"如果[code]width[/code]或[code]height[/code]被设置为0,图像的大小被调整为保持" +"原始长宽比。" #: doc/classes/RichTextLabel.xml:34 msgid "Adds raw non-BBCode-parsed text to the tag stack." @@ -59051,6 +59909,12 @@ msgid "" "a future method call, append the [member bbcode_text] instead of using " "[method append_bbcode]." msgstr "" +"解析 [code]bbcode[/code] 并根据需要将标签添加到标签堆栈中。返回解析结果,成功" +"则返回[constant OK]。\n" +"[b]注意:[/b] 使用此方法,您无法关闭在之前的 [method append_bbcode] 调用中打" +"开的标签。这样做是为了提高性能,特别是在更新大型 RichTextLabels 时,因为每次" +"重建整个 BBCode 会更慢。如果您绝对需要在将来的方法调用中关闭标签,请附加 " +"[member bbcode_text] 而不是使用 [method append_bbcode]。" #: doc/classes/RichTextLabel.xml:48 msgid "Clears the tag stack and sets [member bbcode_text] to an empty string." @@ -59079,6 +59943,9 @@ msgid "" "may cause a crash. If you wish to hide it or any of its children, use their " "[member CanvasItem.visible] property." msgstr "" +"返回垂直滚动条。\n" +"[b]警告:[/b] 这是一个必需的内部节点,删除和释放它可能会导致崩溃。如果您希望" +"隐藏它或其任何子项,请使用它们的 [member CanvasItem.visible] 属性。" #: doc/classes/RichTextLabel.xml:79 msgid "Returns the number of visible lines." @@ -59248,9 +60115,11 @@ msgid "" "add_text] will reset this to [code]false[/code]. Use instead [method " "append_bbcode] to preserve BBCode formatting." msgstr "" +"如果 [code]true[/code],标签使用 BBCode 格式。\n" +"[b]注意:[/b] 尝试使用 [method add_text] 更改 [RichTextLabel] 的文本会将其重" +"置为 [code]false[/code]。改用 [method append_bbcode] 来保留 BBCode 格式。" #: doc/classes/RichTextLabel.xml:245 -#, fuzzy msgid "" "The label's text in BBCode format. Is not representative of manual " "modifications to the internal tag stack. Erases changes made by other " @@ -59261,11 +60130,12 @@ msgid "" "append_bbcode] for adding text instead, unless you absolutely need to close " "a tag that was opened in an earlier method call." msgstr "" -"标签的文本为BBCode格式。不代表对内部标签栈的手动修改。在编辑时,会删除其他方" -"法所做的修改。\n" -"[b]注意:[/b] 不建议使用[code]+=[/code]操作符和[code]bbcode_text[/code](例如" -"[code]bbcode_text += \"some string\"[/code]),因为它取代了整个文本,会导致速" -"度降低。使用[method append_bbcode]来代替添加文本。" +"BBCode 格式的标签文本。不代表对内部标签栈的手动修改。编辑时擦除通过其他方法所" +"做的更改。\n" +"[b]注意:[/b] 不建议将 [code]+=[/code] 运算符与 [code]bbcode_text[/code] 一起" +"使用(例如 [code]bbcode_text += \"some string\"[/code]),因为它会替换整个文" +"本并可能导致速度变慢。使用 [method append_bbcode] 代替添加文本,除非你必须关" +"闭在先前方法调用中打开的标签。" #: doc/classes/RichTextLabel.xml:249 msgid "" @@ -59349,17 +60219,15 @@ msgstr "" "[member bbcode_text]。" #: doc/classes/RichTextLabel.xml:284 -#, fuzzy msgid "" "The restricted number of characters to display in the label. If [code]-1[/" "code], all characters will be displayed.\n" "[b]Note:[/b] Setting this property updates [member percent_visible] based on " "current [method get_total_character_count]." msgstr "" -"要显示的字符范围,数值为0.0和1.0之间的[float]。当分配一个超出范围的值时,它和" -"分配1.0是一样的。\n" -"[b]注意:[/b] 设置这个属性会根据当前的[method get_total_character_count]更新" -"[member visible_characters]。" +"在标签中显示的字符数限制。如果[code]-1[/code],将显示所有字符。\n" +"[b]注意:[/b] 设置此属性会根据当前的[method get_total_character_count]更新" +"[member percent_visible]。" #: doc/classes/RichTextLabel.xml:292 msgid "" @@ -59488,15 +60356,14 @@ msgid "Handle for a [Resource]'s unique ID." msgstr "[Resource] 的唯一 ID 的句柄。" #: doc/classes/RID.xml:7 -#, fuzzy msgid "" "The RID type is used to access the unique integer ID of a resource. They are " "opaque, which means they do not grant access to the associated resource by " "themselves. They are used by and with the low-level Server classes such as " "[VisualServer]." msgstr "" -"该RID类型用于访问资源的唯一整数ID。它们是不透明的,这意味着它们本身并不授予对" -"相关资源的访问。它们被低级别的服务器类使用,如[RenderingServer]。" +"RID类型用于访问资源的唯一整数ID。它们不透明,这意味着其本身并不授予对相关资源" +"的访问。它们被低级别的服务类使用,如[VisualServer]。" #: doc/classes/RID.xml:16 msgid "" @@ -59750,7 +60617,7 @@ msgid "" "function, if defined." msgstr "" "如果 [code]true[/code],则该物体的内力积分将被禁用(如重力或空气摩擦)。除了" -"碰撞响应之外,身体将仅根据 [method _integrate_forces] 函数确定的方式移动(如" +"碰撞响应之外,物体将仅根据 [method _integrate_forces] 函数确定的方式移动(如" "果已定义)。" #: doc/classes/RigidBody.xml:158 @@ -59794,9 +60661,9 @@ msgid "" "different granularity. Use [method _integrate_forces] as your process loop " "for precise control of the body state." msgstr "" -"物体的线速度。可以偶尔使用,但是[b]不要每一帧都设置它[/b],因为物理学可能在另" -"一个线程中运行,并且以不同间隔的运行。使用[method _integrate_forces]作为你的" -"进程循环,以精确控制身体状态。" +"物体的线速度。可以偶尔使用,但是[b]不要每一帧都设置它[/b],因为物理可能在另一" +"个线程中运行,并且以不同的间隔。使用[method _integrate_forces]作为你的进程循" +"环,以精确控制物体状态。" #: doc/classes/RigidBody.xml:172 doc/classes/RigidBody2D.xml:149 msgid "The body's mass." @@ -59835,7 +60702,6 @@ msgstr "" "置。" #: doc/classes/RigidBody.xml:192 -#, fuzzy msgid "" "Emitted when a collision with another [PhysicsBody] or [GridMap] occurs. " "Requires [member contact_monitor] to be set to [code]true[/code] and [member " @@ -59844,15 +60710,14 @@ msgid "" "[code]body[/code] the [Node], if it exists in the tree, of the other " "[PhysicsBody] or [GridMap]." msgstr "" -"当一个物体与这个物体接触时发出。需要将 [member contact_monitor] 设置为 " -"[code]true[/code] 并将 [member contacts_reported] 设置为足够高以检测所有碰" -"撞。\n" -"此信号不仅接收与此碰撞的物体,还接收其 [RID] ([code]body_id[/code])、碰撞物体" -"的形状索引 ([code]body_shape[/code]) 和形状索引从这个身体 " -"([code]local_shape[/code]) 另一个身体碰撞。" +"当与另一个[PhysicsBody]或[GridMap]发生碰撞时触发。需要将[member " +"contact_monitor]设置为[code]true[/code],并且将[member contacts_reported]设置" +"得足够高以检测所有的碰撞。如果[MeshLibrary]有碰撞[Shape],[GridMap]就会被检测" +"到。\n" +"[code]body[/code]的[Node],如果它存在于树中,则是其他[PhysicsBody]或[GridMap]" +"的节点。" #: doc/classes/RigidBody.xml:199 -#, fuzzy msgid "" "Emitted when the collision with another [PhysicsBody] or [GridMap] ends. " "Requires [member contact_monitor] to be set to [code]true[/code] and [member " @@ -59861,15 +60726,14 @@ msgid "" "[code]body[/code] the [Node], if it exists in the tree, of the other " "[PhysicsBody] or [GridMap]." msgstr "" -"当一个物体与这个物体接触时发出。需要将 [member contact_monitor] 设置为 " -"[code]true[/code] 并将 [member contacts_reported] 设置为足够高以检测所有碰" -"撞。\n" -"此信号不仅接收与此碰撞的物体,还接收其 [RID] ([code]body_id[/code])、碰撞物体" -"的形状索引 ([code]body_shape[/code]) 和形状索引从这个身体 " -"([code]local_shape[/code]) 另一个身体碰撞。" +"当与另一个[PhysicsBody]或[GridMap]的碰撞结束时触发。需要将[member " +"contact_monitor]设置为[code]true[/code],并且将[member contacts_reported]设置" +"得足够高以检测到所有的碰撞。如果[MeshLibrary]有碰撞[Shape],[GridMap]就会被检" +"测到。\n" +"[code]body[/code]的[Node],如果它存在于树中,则是其他[PhysicsBody]或[GridMap]" +"的节点。" #: doc/classes/RigidBody.xml:209 -#, fuzzy msgid "" "Emitted when one of this RigidBody's [Shape]s collides with another " "[PhysicsBody] or [GridMap]'s [Shape]s. Requires [member contact_monitor] to " @@ -59892,18 +60756,23 @@ msgid "" "[ConcavePolygonShape] with Bullet physics if you need shape indices." msgstr "" "当[PhysicsBody]或[GridMap]的一个形状[Shape]进入这个区域的一个形状[Shape]时发" -"出的。需要将监控[member monitoring]设置为[code]true[/code]。如果[MeshLibrary]" -"有碰撞形状[Shape],就会检测到[GridMap]。\n" -"[code]body_id[/code]参数是[PhysicsServer]使用的[PhysicsBody]或[MeshLibrary]的" -"[CollisionObject]的RID。\n" -"[code]body[/code] 参数是[PhysicsBody]或[GridMap]的[Node],如果它存在于树" -"中。\n" -"[code]body_shape[/code] 参数是由[PhysicsServer]使用的[PhysicsBody]或[GridMap]" -"的[Shape]的索引。\n" -"[code]local_shape[/code] 参数是[PhysicsServer]使用的这个区域的[Shape]的索引。" +"出的。需要将监控[member monitoring]设置为[code]true[/code],且[member " +"contacts_reported]设置的足够高以检测所有碰撞。如果[MeshLibrary]有碰撞形状" +"[Shape],就会检测到[GridMap]。\n" +"[code]body_id[/code]由[PhysicsServer]使用的其他[PhysicsBody]或[MeshLibrary]的" +"[CollisionObject]的[RID]。\n" +"[code]body[/code] 其他[PhysicsBody]或[GridMap]的[Node](如果它存在于树中)。\n" +"[code]body_shape_index[/code] 由[PhysicsServer]使用的其他[PhysicsBody]或" +"[GridMap]的[Shape]的索引。用 [code]body." +"shape_owner_get_owner(body_shape_index)[/code]获取 [CollisionShape] 节点。\n" +"[code]local_shape[/code] 由[PhysicsServer]使用的这个刚体(RigidBody)的[Shape]" +"的索引。用[code]self.shape_owner_get_owner(local_shape_index)[/code]获取" +"[CollisionShape]节点。\n" +"[b]注意:[/b]当使用[ConcavePolygonShape]时,对于子弹的物理运算无法识别形状索" +"引。如果你需要形状指数,在使用[ConcavePolygonShape]和对于子弹的物理运算时,不" +"要使用多个[CollisionShape]。" #: doc/classes/RigidBody.xml:223 -#, fuzzy msgid "" "Emitted when the collision between one of this RigidBody's [Shape]s and " "another [PhysicsBody] or [GridMap]'s [Shape]s ends. Requires [member " @@ -59926,16 +60795,25 @@ msgid "" "[ConcavePolygonShape]. Don't use multiple [CollisionShape]s when using a " "[ConcavePolygonShape] with Bullet physics if you need shape indices." msgstr "" -"当[PhysicsBody]或[GridMap]的一个形状[Shape]进入这个区域的一个形状[Shape]时发" -"出的。需要将监控[member monitoring]设置为[code]true[/code]。如果[MeshLibrary]" -"有碰撞形状[Shape],就会检测到[GridMap]。\n" -"[code]body_id[/code]参数是[PhysicsServer]使用的[PhysicsBody]或[MeshLibrary]的" -"[CollisionObject]的RID。\n" -"[code]body[/code] 参数是[PhysicsBody]或[GridMap]的[Node],如果它存在于树" +"当此 RigidBody 的 [Shape] 之一与另一个 [PhysicsBody] 或 [GridMap] 的 [Shape] " +"之间的碰撞结束时发出。需要将 [member contact_monitor] 设置为 [code]true[/" +"code] 并将 [member contacts_reported] 设置为足够高以检测所有碰撞。如果 " +"[MeshLibrary] 有碰撞 [Shape],就会检测到 [GridMap]。\n" +"[code]body_rid[/code] [PhysicsServer] 使用的其他 [PhysicsBody] 或 " +"[MeshLibrary] 的 [CollisionObject] 的 [RID]。如果网格具有 [Shape],则检测到 " +"[GridMap]。\n" +"[code]body[/code] 其他 [PhysicsBody] 或 [GridMap] 的 [Node],如果它存在于树" "中。\n" -"[code]body_shape[/code] 参数是由[PhysicsServer]使用的[PhysicsBody]或[GridMap]" -"的[Shape]的索引。\n" -"[code]local_shape[/code] 参数是[PhysicsServer]使用的这个区域的[Shape]的索引。" +"[code]body_shape_index[/code] [PhysicsServer] 使用的其他 [PhysicsBody] 或 " +"[GridMap] 的 [Shape] 的索引。使用 [code]body." +"shape_owner_get_owner(body_shape_index)[/code] 来获取 [CollisionShape] 节" +"点。\n" +"[code]local_shape_index[/code] [PhysicsServer] 使用的这个 RigidBody 的 " +"[Shape] 的索引。使用 [code]self.shape_owner_get_owner(local_shape_index)[/" +"code] 获取 [CollisionShape] 节点。\n" +"[b]注意:[/b]使用[ConcavePolygonShape]时,对于子弹的物理运算无法识别形状索" +"引。如果需要形状索引,请不要在使用带有对于子弹的物理运算的 " +"[ConcavePolygonShape] 时使用多个 [CollisionShape]。" #: doc/classes/RigidBody.xml:233 doc/classes/RigidBody2D.xml:208 msgid "" @@ -59980,7 +60858,6 @@ msgid "A body that is controlled by the 2D physics engine." msgstr "由2D物理引擎控制的实体。" #: doc/classes/RigidBody2D.xml:7 -#, fuzzy msgid "" "This node implements simulated 2D physics. You do not control a RigidBody2D " "directly. Instead, you apply forces to it (gravity, impulses, etc.) and the " @@ -60002,17 +60879,18 @@ msgid "" "The center of mass is always located at the node's origin without taking " "into account the [CollisionShape2D] centroid offsets." msgstr "" -"这个节点实现了模拟的2D物理运算。你不能直接控制一个RigidBody2D。相反,你对它施" -"加力(重力、冲力等),物理模拟会根据它的质量、摩擦力和其他物理属性来计算出结" -"果的运动。\n" -"一个RigidBody2D有4种行为[member mode]。刚性、静态、角色和运动。\n" -"[b]注意:[/b]你不应该每一帧甚至经常改变RigidBody2D的[code]位置[/code]或[code]" -"线性速度[/code]。如果你需要直接影响身体的状态,请使用[method " -"_integrate_forces],它允许你直接访问物理学状态。\n" -"也请记住,物理体管理自己的变换,它覆盖了你设置的变换。所以任何直接或间接的变" -"换(包括节点或其父体的缩放)将只在编辑器中可见,并在运行时立即重置。\n" -"如果你需要覆盖默认的物理行为或者在运行时添加一个变换,你可以写一个自定义的合" -"力。参阅[member custom_integrator]。" +"该节点实现了模拟的2D物理。你不能直接控制一个RigidBody2D。而是,你对它施加力" +"(重力、冲力等),物理模拟会根据它的质量、摩擦力和其他物理属性来计算出运动结" +"果。\n" +"RigidBody2D有4种行为[member mode]。刚性、静态、角色和运动。\n" +"[b]注意:[/b] 你不应该每一帧或经常改变RigidBody2D的[code]position[/code]或" +"[code]linear_velocity[/code]。如果需要直接影响物体的状态,请使用[method " +"_integrate_forces],它允许你直接访问物理状态。\n" +"要记住,物理物体在自己管理变换,它会覆盖你的变换设置。所以任何直接或间接的变" +"换(包括节点或其父级的缩放)将只在编辑器中可见,并在运行时立即重置。\n" +"如果你需要重载默认的物理行为或者在运行时添加变换,你可以写一个自定义的合力。" +"参阅[member custom_integrator]。\n" +"质量中心总是位于节点的原点,而不考虑[CollisionShape2D]中心点的偏移。" #: doc/classes/RigidBody2D.xml:15 msgid "https://godotengine.org/asset-library/asset/119" @@ -60058,7 +60936,6 @@ msgstr "" "行为很有用。" #: doc/classes/RigidBody2D.xml:91 -#, fuzzy msgid "" "Returns [code]true[/code] if a collision would result from moving in the " "given vector. [code]margin[/code] increases the size of the shapes involved " @@ -60072,7 +60949,6 @@ msgstr "" "话)。" #: doc/classes/RigidBody2D.xml:97 -#, fuzzy msgid "" "Damps the body's [member angular_velocity]. If [code]-1[/code], the body " "will use the [b]Default Angular Damp[/b] defined in [b]Project > Project " @@ -60080,9 +60956,11 @@ msgid "" "See [member ProjectSettings.physics/2d/default_angular_damp] for more " "details about damping." msgstr "" -"对物体的 [member angular_velocity]进行阻尼运算。如果 [code]-1[/code],主体将" +"对物体的 [member angular_velocity]进行阻尼运算。如果 [code]-1[/code],物体将" "使用 [b]Project(项目) > Project Settings(项目设置) > Physics(物理)> 2d[/b] 中" -"定义的 [b]Default Angular Damp(默认角度阻尼)[/b]。" +"定义的 [b]Default Angular Damp(默认角度阻尼)[/b]。\n" +"有关阻尼的更多详细信息,请参阅 [member ProjectSettings.physics/2d/" +"default_angular_damp]。" #: doc/classes/RigidBody2D.xml:104 msgid "The body's total applied force." @@ -60100,6 +60978,11 @@ msgid "" "[member mode] is [constant MODE_CHARACTER]. It can still be put to sleep " "manually by setting its [member sleeping] property to [code]true[/code]." msgstr "" +"如果[code]true[/code],身体可以在没有运动的情况下进入睡眠模式。见[member " +"sleeping]。\n" +"[b]注意:[/b] RigidBody2D 的[member mode] 为[constant MODE_CHARACTER] 时不会" +"自动进入休眠模式。仍然可以通过将其 [member sleep] 属性设置为 [code]true[/" +"code] 来手动使其休眠。" #: doc/classes/RigidBody2D.xml:118 msgid "" @@ -60110,7 +60993,6 @@ msgstr "" "[member contacts_reported]。" #: doc/classes/RigidBody2D.xml:121 -#, fuzzy msgid "" "The maximum number of contacts that will be recorded. Requires [member " "contact_monitor] to be set to [code]true[/code].\n" @@ -60120,8 +61002,8 @@ msgid "" msgstr "" "将被记录的最大接触次数。需要将 [member contact_monitor] 设置为 [code]true[/" "code]。\n" -"[b]注:[/b]接触次数与碰撞次数不同。平行边之间的碰撞将导致两个接触(每端一" -"个),平行面之间的碰撞将导致四个接触(每个角一个)。" +"[b]注:[/b]接触次数与碰撞次数不同。平行边之间的碰撞将意味着两个接触(每端一" +"个),平行面之间的碰撞将意味着四个接触(每个角一个)。" #: doc/classes/RigidBody2D.xml:125 msgid "" @@ -60147,14 +61029,15 @@ msgstr "" "[method _integrate_forces] 函数确定的方式移动。" #: doc/classes/RigidBody2D.xml:132 -#, fuzzy msgid "" "The body's friction. Values range from [code]0[/code] (frictionless) to " "[code]1[/code] (maximum friction).\n" "Deprecated, use [member PhysicsMaterial.friction] instead via [member " "physics_material_override]." msgstr "" -"物体的摩擦。取值范围从[code]0[/code](无摩擦)到[code]1[/code](最大摩擦)。" +"物体的摩擦。取值范围从[code]0[/code](无摩擦)到[code]1[/code](最大摩擦)。\n" +"已弃用,通过 [member Physics_material_override] 使用 [member PhysicsMaterial." +"friction]。" #: doc/classes/RigidBody2D.xml:136 msgid "" @@ -60174,12 +61057,11 @@ msgid "" "this function allows you to set a custom value. Set 0 inertia to return to " "automatically computing it." msgstr "" -"物体的惯性矩。这就像质量,但对于旋转来说:它决定了旋转身体需要多大的力矩。惯" -"性矩通常是由质量和形状自动计算出来的,但是这个函数允许你设置一个自定义值。设" -"置0惯性会切换回自动计算。" +"物体的惯性力矩。这就像质量,但对于旋转来说:它决定了旋转物体需要多大的力矩。" +"惯性力矩通常是由质量和形状自动计算出来的,但是这个函数允许你设置一个自定义" +"值。设置0惯性会切换回自动计算。" #: doc/classes/RigidBody2D.xml:142 -#, fuzzy msgid "" "Damps the body's [member linear_velocity]. If [code]-1[/code], the body will " "use the [b]Default Linear Damp[/b] in [b]Project > Project Settings > " @@ -60189,7 +61071,9 @@ msgid "" msgstr "" "对物体的[member linear_velocity]进行阻尼运算。如果[code]-1[/code],物体将使用" "[b]Project(项目) > Project Settings(项目设置) > Physics(物理)> 2d[/b]中的" -"[b]Default Linear Damp(默认线性阻尼)[/b]。" +"[b]Default Linear Damp(默认线性阻尼)[/b]。\n" +"有关阻尼的更多详细信息,请参阅 [member ProjectSettings.physics/2d/" +"default_linear_damp]。" #: doc/classes/RigidBody2D.xml:152 msgid "The body's mode. See [enum Mode] for possible values." @@ -60204,7 +61088,6 @@ msgstr "" "Physics(物理)> 2d[/b] 中的 [b] Default Gravity(默认重力) [/b] 值。" #: doc/classes/RigidBody2D.xml:169 -#, fuzzy msgid "" "Emitted when a collision with another [PhysicsBody2D] or [TileMap] occurs. " "Requires [member contact_monitor] to be set to [code]true[/code] and [member " @@ -60213,15 +61096,13 @@ msgid "" "[code]body[/code] the [Node], if it exists in the tree, of the other " "[PhysicsBody2D] or [TileMap]." msgstr "" -"当一个物体与这个物体接触时发出。需要将 [member contact_monitor] 设置为 " -"[code]true[/code] 并将 [member contacts_reported] 设置为足够高以检测所有碰" -"撞。\n" -"此信号不仅接收与此碰撞的物体,还接收其 [RID] ([code]body_id[/code])、碰撞物体" -"的形状索引 ([code]body_shape[/code]) 和形状索引从这个身体 " -"([code]local_shape[/code]) 另一个身体碰撞。" +"当与另一个[PhysicsBody2D]或[TileMap]发生碰撞时触发。需要将[member " +"contact_monitor]设置为[code]true[/code],并且将[member contacts_reported]设置" +"得足够高以检测所有的碰撞。如果[TileSet]有碰撞[Shape2D],就会检测到[TileMap]" +"的。\n" +"[code]body[/code]是其他[PhysicsBody2D]或[TileMap]的[Node],如果它存在于树中。" #: doc/classes/RigidBody2D.xml:176 -#, fuzzy msgid "" "Emitted when the collision with another [PhysicsBody2D] or [TileMap] ends. " "Requires [member contact_monitor] to be set to [code]true[/code] and [member " @@ -60230,15 +61111,13 @@ msgid "" "[code]body[/code] the [Node], if it exists in the tree, of the other " "[PhysicsBody2D] or [TileMap]." msgstr "" -"当一个物体与这个物体接触时发出。需要将 [member contact_monitor] 设置为 " -"[code]true[/code] 并将 [member contacts_reported] 设置为足够高以检测所有碰" -"撞。\n" -"此信号不仅接收与此碰撞的物体,还接收其 [RID] ([code]body_id[/code])、碰撞物体" -"的形状索引 ([code]body_shape[/code]) 和形状索引从这个身体 " -"([code]local_shape[/code]) 另一个身体碰撞。" +"当与另一个[PhysicsBody2D]或[TileMap]的碰撞结束时发出的。需要将 [member " +"contact_monitor] 设置为 [code]true[/code] 并将 [member contacts_reported] 设" +"置为足够高以检测所有碰撞。如果[TileSet]有碰撞[Shape2D],就会检测到" +"[TileMap]。\n" +"[code]body[/code] 其他[PhysicsBody2D]或[TileMap]的[Node](如果它存在于树中)。" #: doc/classes/RigidBody2D.xml:186 -#, fuzzy msgid "" "Emitted when one of this RigidBody2D's [Shape2D]s collides with another " "[PhysicsBody2D] or [TileMap]'s [Shape2D]s. Requires [member contact_monitor] " @@ -60257,20 +61136,22 @@ msgid "" "RigidBody2D used by the [Physics2DServer]. Get the [CollisionShape2D] node " "with [code]self.shape_owner_get_owner(local_shape_index)[/code]." msgstr "" -"当[PhysicsBody2D]或[TileMap]的一个[Shape2D]离开这个Area2D的一个[Shape2D]时发" -"出的。需要将监控[member monitoring]设置为[code]true[/code]。如果[TileSet]有碰" -"撞形状[Shape2D]s,就会检测到[TileMap]s。\n" -"[code]body_id[/code] 参数是[Physics2DServer]使用的[PhysicsBody2D]或[TileSet]" -"的[CollisionObject2D]的RID。\n" -"[code]body[/code]参数是[PhysicsBody2D]或[TileMap]的[Node],如果它存在于树中的" -"话。\n" -"[code]body_shape[/code] 参数是[Physics2DServer]使用的[PhysicsBody2D]或" -"[TileMap]的[Shape2D]的索引。\n" -"[code]local_shape[/code] 参数是[Physics2DServer]使用的这个Area2D的[Shape2D]的" -"索引。" +"当这个RigidBody2D的[Shape2D]与另一个[PhysicsBody2D]或[TileMap]的[Shape2D]碰撞" +"时发出。要求 [member contact_monitor] 设置为 [code]true[/code] 并且 [member " +"contacts_reported] 设置得足够高,以检测所有碰撞。如果 [TileMap] 具有碰撞 " +"[Shape2D],就会检测到 [TileSet]。\n" +"[code]body_rid[/code] 由 [Physics2DServer] 使用的其他 [PhysicsBody2D] 或 " +"[TileSet] 的 [CollisionObject2D] 的 [RID]。\n" +"[code]body[/code]其他[PhysicsBody2D]或[TileMap]的[Node](如果它存在于树上)。\n" +"[code]body_shape_index [/code] 其他 [PhysicsBody2D] 或 [TileMap] 使用 " +"[Physics2DServer] 的 [Shape2D] 索引。获得带有 [code]body." +"shape_owner_get_owner (body_shape_index)[/code] 的 [CollisionShape2D] 节" +"点。\n" +"[code]local_shape_index [/code] [Physics2DServer] 使用的此 RigidBody2D 的 " +"[Shape2D] 索引。获得带有 [code]self.shape_owner_get_owner " +"(local_shape_index)[/code] 的 [CollisionShape2D] 节点。" #: doc/classes/RigidBody2D.xml:199 -#, fuzzy msgid "" "Emitted when the collision between one of this RigidBody2D's [Shape2D]s and " "another [PhysicsBody2D] or [TileMap]'s [Shape2D]s ends. Requires [member " @@ -60289,17 +61170,20 @@ msgid "" "RigidBody2D used by the [Physics2DServer]. Get the [CollisionShape2D] node " "with [code]self.shape_owner_get_owner(local_shape_index)[/code]." msgstr "" -"当[PhysicsBody2D]或[TileMap]的[Shape2D]之一进入此Area2D的[Shape2D]之一时发" -"出。需要将监控[member monitoring]设置为[code]true[/code]。如果[TileSet]有碰撞" -"形状[Shape2D]s,就会检测到[TileMap]s。\n" -"[code]body_id[/code]参数是 [Physics2DServer]使用的[PhysicsBody2D]或[TileSet]" -"的[CollisionObject2D]的RID。\n" -"[code]body[/code]参数是 [PhysicsBody2D]或[TileMap]的[节点],如果它在树上存在" -"的话。\n" -"[code]body_shape[/code] 参数是[Physics2DServer]使用的[PhysicsBody2D]或" -"[TileMap]的[Shape2D]的索引。\n" -"[code]local_shape[/code] 参数是[Physics2DServer]使用的这个Area2D的[Shape2D]的" -"索引。" +"当这个RigidBody2D的一个[Shape2D]和另一个[PhysicsBody2D]或[TileMap]的[Shape2D]" +"之间的碰撞结束时触发。要求[member contact_monitor]设置为[code]true[/code]," +"[member contacts_reported]设置得足够高以检测所有的碰撞。如果[TileSet]有碰撞" +"[Shape2D],就会检测到[TileMap]的。\n" +"[code]body_rid[/code] [Physics2DServer]使用的其他[PhysicsBody2D]或[TileSet]的" +"[CollisionObject2D]的 [RID]。\n" +"[code]body[/code] 另一个[PhysicsBody2D]或[TileMap]的[Node],如果它存在于树" +"中。\n" +"[code]body_shape_index[/code] 由[Physics2DServer]使用的其他[PhysicsBody2D]或" +"[TileMap]的[Shape2D]的索引。用[code]body." +"shape_owner_get_owner(body_shape_index)[/code]获得[CollisionShape2D]节点。\n" +"[code]local_shape_index[/code]这个RigidBody2D的[Shape2D]的索引,由" +"[Physics2DServer]使用。用[code]self.shape_owner_get_owner(local_shape_index)" +"[/code]获取[CollisionShape2D]节点。" #: doc/classes/RigidBody2D.xml:215 msgid "" @@ -60331,7 +61215,7 @@ msgid "" "Continuous collision detection disabled. This is the fastest way to detect " "body collisions, but can miss small, fast-moving objects." msgstr "" -"禁用连续碰撞检测。这是检测身体碰撞的最快方法,但可能会错过小型、快速移动的物" +"禁用连续碰撞检测。这是检测物体碰撞的最快方法,但可能会错过小型、快速移动的物" "体。" #: doc/classes/RigidBody2D.xml:230 @@ -60349,7 +61233,7 @@ msgstr "" #: doc/classes/Room.xml:4 msgid "Room node, used to group objects together locally for [Portal] culling." -msgstr "" +msgstr "Room 节点,用于在本地将对象组合在一起以进行 [Portal] 剔除。" #: doc/classes/Room.xml:7 msgid "" @@ -60373,6 +61257,19 @@ msgid "" "placed over non-occluded openings between rooms. These will often be placed " "over doors and windows." msgstr "" +"[Portal] 剔除系统需要使用在称为 [Room] 的区域中按位置分组在一起的对象来构建关" +"卡。在许多情况下,这些将对应于建筑物中的实际空间,但不一定(峡谷区域可能被视" +"为空间)。\n" +"如果[VisualInstance] 的[code]portal_mode[/code] 设置为[code]STATIC[/code](不" +"移动) 或 [code]DYNAMIC[/code](仅在空间内移动),那么任何作为[Room]的子代或孙" +"代的[VisualInstance]将被分配到该空间。\n" +"在内部,空间边界必须形成一个 [b] 凸多边形 [/b],默认情况下,这由您放置在空间" +"内的对象的几何形状自动确定。\n" +"您也可以精确指定 [b] 手动绑定 [/b]。如果放置一个名称以[code]Bound_[/code]为前" +"缀的[MeshInstance],它将关闭几何体的边界生成,而是在转换阶段使用这个" +"MeshInstance的顶点直接计算凸多边形(见[RoomManager])。\n" +"为了从一个空间看到相邻的空间,[Portal]必须放置在空间之间的非遮挡开口上。这些" +"通常会放置在门窗上。" #: doc/classes/Room.xml:27 msgid "" @@ -60385,6 +61282,11 @@ msgid "" "room hull, and save the resulting points, allowing you to edit them to " "further refine the bound." msgstr "" +"如果设置了 [code]points[/code],则会从这些点构建 [Room] 边界凸多边形。如果未" +"设置点,则空间边界将来自手动边界([MeshInstance] 名称前缀为 [code]Bound_[/" +"code]),或来自空间内的几何体。\n" +"请注意,您可以使用 [code]Generate Points[/code] 编辑器按钮开始。这将使用几何" +"体或手动绑定来生成空间外壳,并保存结果点,允许您编辑它们以进一步细化边界。" #: doc/classes/Room.xml:31 msgid "" @@ -60392,16 +61294,20 @@ msgid "" "(bounds) are simplified, by removing similar planes. A value of 0 gives no " "simplification, 1 gives maximum simplification." msgstr "" +"[code]simplify[/code] 值通过移除相似的平面来确定空间外壳(边界)的简化程度。" +"值 0 表示不简化,1 表示最大程度的简化。" #: doc/classes/Room.xml:34 msgid "" "The room hull simplification can either use the default value set in the " "[RoomManager], or override this and use the per room setting." msgstr "" +"空间外壳简化可以使用 [RoomManager] 中设置的默认值,也可以覆盖它并使用每个空间" +"的设置。" #: doc/classes/RoomGroup.xml:4 msgid "Groups [Room]s together to allow common functionality." -msgstr "" +msgstr "将 [Room] 组合在一起以实现通用功能。" #: doc/classes/RoomGroup.xml:7 msgid "" @@ -60418,6 +61324,14 @@ msgid "" "[code]notification[/code]s as they enter and exit the [b]gameplay area[/b] " "(see [RoomManager] for details)." msgstr "" +"尽管可以单独指定 [Room] 行为,但有时为一组空间编写功能会更快更方便。\n" +"[RoomGroup] 应作为 [b] 空间列表 [/b](您的 [Room] 的父 [Node])的子项而设置," +"而 [Room] 应作为 [RoomGroup] 的子项依次设置以便将它们分配给 RoomGroup。\n" +"例如,[RoomGroup] 可用于指定 [b]outside[/b] 的 [Room],并在玩家进入/退出该区" +"域时打开或关闭定向光、天空或雨效果。\n" +"当 [code]gameplay_monitor[/code] 开启时,[RoomGroup] 收到 [b]游戏回调[/b],在" +"他们进入和退出时[b]游戏区[/b]时,作为 [code] 信号 [/code] 或 [code] 通知 [/" +"code] (详见[RoomManager])。" #: doc/classes/RoomGroup.xml:18 msgid "" @@ -60430,10 +61344,15 @@ msgid "" "when the camera is within the house, the house is used as the source room, " "but outside the house, the terrain room would be used instead." msgstr "" +"此优先级将应用于组内的 [Room]。 [Room] 优先级允许使用 [b] 内部空间 [/b]、空" +"间 [i] 内 [/i] 另一个空间或多个空间。\n" +"当 [Camera] 位于多个空间(常规和内部)内时,优先级较高的空间将优先处理。因" +"此,例如,在地形“空间”内的房屋,您可以使房屋具有更高的优先级,以便当相机在房" +"屋内时,房屋用作源空间,但在房屋外,将改为使用地形空间。" #: doc/classes/RoomManager.xml:4 msgid "The RoomManager node is used to control the portal culling system." -msgstr "" +msgstr "RoomManager 节点用于控制portal剔除系统。" #: doc/classes/RoomManager.xml:7 msgid "" @@ -60444,6 +61363,10 @@ msgid "" "is controlled by the [RoomManager] node, and the [RoomManager] also contains " "settings that are common throughout the portal system." msgstr "" +"为了使用portal遮挡剔除系统,您必须使用 [Room] 和 [Portal] 来构建您的关卡。在" +"这些可以在运行时使用之前,它们必须经过一个简短的转换过程来构建 [code] room " +"graph [/code],这是portal剔除所需的运行时数据。 [code]portal graph[/code]由" +"[RoomManager]节点控制,[RoomManager]还包含整个portal系统通用的设置。" #: doc/classes/RoomManager.xml:15 msgid "" @@ -60451,6 +61374,8 @@ msgid "" "before unloading a level, when transitioning from level to level, or " "returning to a main menu." msgstr "" +"该方法会从[b]portal graph[/b]清除所有转换数据。在卸载关卡、从关卡转换到关卡或" +"返回主菜单时使用此选项。" #: doc/classes/RoomManager.xml:21 msgid "" @@ -60511,6 +61436,45 @@ msgid "" "tree, to avoid confusion. See [CullInstance] for a full description of " "portal modes." msgstr "" +"这是整个portal剔除系统中最重要的功能。没有它,系统就无法运行。\n" +"首先,它遍历作为 [code] room list [/code] 的节点(以及其中的 [RoomGroup])子" +"节点的每个 [Room],并将其转换并添加到 [code] room graph [/code]。\n" +"这适用于遵循特殊命名约定的 [Room] 节点和 [Spatial] 节点。它们应该以前缀 " +"[i]'Room_'[/i] 开头,然后是您希望为空间命名的名称,例如[i]'Room_lounge'[/i]。" +"这将自动为您将此类 [Room] 转换为 [Room] 节点。如果您想构建整个空间系统,这很" +"有用,例如Blender,并在您处理关卡时多次重新导入。\n" +"转换将尝试将作为 [Room] 的子代和孙代的 [VisualInstance] 分配给空间。这些应该" +"被赋予合适的 [code] portal mode [/code](参见 [CullInstance] 文档)。默认的 " +"[code] portal mode [/code] 是 [code]STATIC[/code] - 运行关卡时不会移动的对" +"象,通常是大多数对象。\n" +"转换通常会使用这些 [VisualInstance](和 [Portal])的几何形状来计算空间的凸多" +"边形边界。这些边界将显示在带有线框的编辑器中。或者,您可以为任何空间指定手动" +"自定义边界,请参阅 [Room] 文档。\n" +"根据定义,空间内的 [Camera] 可以看到空间内的所有其他东西(这是使用凸多边形的" +"一个优势)。但是,为了从一个空间看到相邻的空间,您必须放置 [Portal],它代表摄" +"像机可以看到的开口,如窗户和门。\n" +"[Portal] 实际上只是专门的 [MeshInstance]。实际上,您通常会首先通过创建 " +"[MeshInstance],尤其是 [code]plane[/code] 网格实例来创建portal。您可以在编辑" +"器中移动平面以覆盖窗户或门口,正面朝空间外。为了让转换过程知道您希望此网格成" +"为portal,我们再次使用特殊的命名约定。要转换为 [Portal] 的 [MeshInstance] 应" +"以前缀 [i]'Portal_'[/i] 开头。\n" +"您现在有一个选择 - 您可以将名称保留为 [i]'Portal_'[/i],并允许系统自动检测最" +"近的 [Room] 进行链接。在大多数情况下,这将正常工作。\n" +"另一种方法是手动指定要链接到的 [Room],在portal名称后附加一个后缀,该后缀应该" +"是您要链接到的空间的名称。例如,[i]'Portal_lounge'[/i] 将尝试链接到名为 " +"[i]'Room_lounge'[/i] 的空间。\n" +"这里有一个特殊情况——Godot 不允许两个节点共享相同的名称。如果您想手动将多个" +"portal通向同一个空间怎么办?当然,它们都需要被调用,例如[i]'Portal_lounge'[/" +"i]?\n" +"解决方案是通配符。在空间名称之后,如果您使用字符 [i]'*'[/i],则该字符及其后的" +"任何内容都将被忽略。因此,您可以使用例如 [i]'Portal_lounge*0'[/i]、" +"[i]'Portal_lounge*1'[/i] 等。\n" +"请注意,已经转换为 [Portal] 节点(而不是 [MeshInstance])的 [Portal] 仍然需要" +"遵循相同的命名约定,因为它们在转换过程中每次都会重新链接。\n" +"建议您仅将对象放置在希望留在这些空间内的空间中 - 即 [code]portal mode[/code]" +"是 [code]STATIC[/code] 或 [code]DYNAMIC[/code](不穿越 Portal)。 " +"[code]GLOBAL[/code] 和 [code]ROAMING[/code] 对象最好放置在场景树的另一部分," +"以避免混淆。有关portal模式的完整说明,请参阅 [CullInstance]。" #: doc/classes/RoomManager.xml:39 msgid "" @@ -60522,6 +61486,12 @@ msgid "" "Switching to [code]active[/code] will have no effect when the [code]room " "graph[/code] is unloaded (the rooms have not yet been converted)." msgstr "" +"打开和关闭portal剔除系统。\n" +"需要注意的是,当portal剔除处于活动状态时,它负责 [b]所有[/b] 3d 剔除。某些编" +"辑器功能可能更难使用,因此切换活动标志旨在确保您的 [Room] / [Portal] 布局在编" +"辑器中工作。\n" +"当[code]room graph[/code]被卸载(空间尚未转换)时,切换到[code]active[/code]" +"将不起作用。" #: doc/classes/RoomManager.xml:44 msgid "" @@ -60530,6 +61500,9 @@ msgid "" "room.\n" "Toggling this setting turns this debug view on and off." msgstr "" +"大型物体可以“蔓延”超过一个以上的空间。该设置对于可视化那些蔓延在当前空间外的" +"对象会很有用。\n" +"切换此设置可打开和关闭此调试视图。" #: doc/classes/RoomManager.xml:48 msgid "" @@ -60540,6 +61513,10 @@ msgid "" "In most cases you can set this here for all portals. It is possible to " "override the margin for each portal." msgstr "" +"通常我们不希望只有[b]刚好[/b]跨越边界进入相邻[Room]的物体蔓延到那个空间。为防" +"止这种情况发生,每个 [Portal] 都有一个额外的边距或容差区,物体可以在其中进入" +"而不会蔓延到相邻的空间。\n" +"在大多数情况下,您可以在此处为所有portal设置此项。可以覆盖每个portal的边距。" #: doc/classes/RoomManager.xml:52 msgid "" @@ -60554,6 +61531,14 @@ msgid "" "[code]NOTIFICATION_EXIT_GAMEPLAY[/code]\n" "Signals: [code]\"gameplay_entered\"[/code], [code]\"gameplay_exited\"[/code]" msgstr "" +"使用部分或完整 PVS 时,游戏监视器允许您在漫游对象或空间进入或退出 [b] 游戏区" +"域 [/b] 时接收回调。游戏区域被定义为主要或次要 PVS。\n" +"例如,这些回调允许您减少对远离玩家的对象的处理,或者打开和关闭 AI。\n" +"您可以选择通过 [code]_notification[/code] 函数接收回调作为通知,或作为信号接" +"收。\n" +"[code]NOTIFICATION_ENTER_GAMEPLAY[/code]\n" +"[code]NOTIFICATION_EXIT_GAMEPLAY[/code]\n" +"信号:[code]\"gameplay_entered\"[/code], [code]\"gameplay_exited\"[/code]" #: doc/classes/RoomManager.xml:60 msgid "" @@ -60565,6 +61550,11 @@ msgid "" "will only operate on exported or running projects, in order to prevent " "accidental alteration to the scene and loss of data." msgstr "" +"如果启用,系统将在转换期间尝试合并 [Room] 内的相似网格(特别是在材料方面)。" +"这可以显着减少渲染期间所需的绘制调用和状态更改的数量,尽管代价是降低了剔除粒" +"度。\n" +"[b]注意:[/b]此操作在转换过程中的运行时运行,并且只会在导出或运行的项目上运" +"行,以防止意外更改场景和丢失数据。" #: doc/classes/RoomManager.xml:64 msgid "" @@ -60574,6 +61564,9 @@ msgid "" "level. Here you can alter the threshold at which the editor warning appears. " "There are no other side effects." msgstr "" +"转换空间时,如果检测到空间之间有重叠,编辑器会警告您。重叠会干扰确定摄像机和" +"物体所在的空间。根据您的level,少量是可以接受的。您可以在此处更改出现编辑器警" +"告的阈值。没有其他副作用。" #: doc/classes/RoomManager.xml:67 msgid "" @@ -60583,6 +61576,9 @@ msgid "" "recursion depth.\n" "[b]Note:[/b] This value is unused when using [code]Full[/code] PVS mode." msgstr "" +"portal渲染是递归的 - 每次通过较早的portal看到一个portal时,都会产生一些成本。" +"出于这个原因,并为了防止无限循环的可能性,此设置对递归深度提供了硬性限制。\n" +"[b]注:[/b] 使用[code]Full[/code] PVS 模式时不使用该值。" #: doc/classes/RoomManager.xml:71 msgid "" @@ -60591,6 +61587,9 @@ msgid "" "to override this behaviour and force it to use a particular camera to get a " "better idea of what the occlusion culling is doing." msgstr "" +"Portal 剔除通常使用当前的 [Camera] / 多个[Camera] 进行操作,但是为了在编辑器" +"中进行调试,您可以使用此设置来覆盖此行为并强制它使用特定的相机以更好地了解遮" +"挡的内容剔除正在做。" #: doc/classes/RoomManager.xml:75 msgid "" @@ -60602,9 +61601,29 @@ msgid "" "rooms will be frustum culled, and rendered if they are within the view " "frustum." msgstr "" +"可选地,在转换期间,可以计算从每个空间可能可见的空间的潜在可见集 (PVS)。这可" +"用于帮助动态门户剔除,或完全替代门户剔除。\n" +"在 [code]Full[/code] PVS 模式下,潜在可见空间内的所有对象都将被剔除,如果它们" +"在视锥体内,则进行渲染。" #: doc/classes/RoomManager.xml:79 msgid "" +"In order to reduce processing for roaming objects, an expansion is applied " +"to their AABB as they move. This expanded volume is used to calculate which " +"rooms the roaming object is within. If the object's exact AABB is still " +"within this expanded volume on the next move, there is no need to reprocess " +"the object, which can save considerable CPU.\n" +"The downside is that if the expansion is too much, the object may end up " +"unexpectedly sprawling into neighbouring rooms and showing up where it might " +"otherwise be culled.\n" +"In order to balance roaming performance against culling accuracy, this " +"expansion margin can be customized by the user. It will typically depend on " +"your room and object sizes, and movement speeds. The default value should " +"work reasonably in most circumstances." +msgstr "" + +#: doc/classes/RoomManager.xml:84 +msgid "" "During the conversion process, the geometry of objects within [Room]s, or a " "custom specified manual bound, are used to generate a [b]convex hull bound[/" "b].\n" @@ -60621,20 +61640,33 @@ msgid "" "override this value if desired.\n" "The room convex hulls are shown as a wireframe in the editor." msgstr "" +"在转换过程中,[Room] 内对象的几何形状,或自定义指定的手动绑定,用于生成 [b] " +"凸多边形绑定 [/b]。\n" +"这个凸多边形在可见性系统中是 [b] 必需的 [/b],并且用于许多目的。最重要的是," +"它用于决定[Camera](或物体)是否在[Room]内。凸多边形生成算法很好,但有时它会" +"创建太多(或太少)的平面,无法很好地表示空间体积。\n" +"[code]room_simplify[/code] 值可用于对该过程进行精细控制。它决定了如何相似平面" +"才能将它们视为相同(并删除重复项)。该值可以设置在 0(无简化)和 1(最大简" +"化)之间。\n" +"此处设置的值是所有空间的默认值,但如果需要,个别空间可以覆盖此值。\n" +"空间凸包在编辑器中显示为线框。" -#: doc/classes/RoomManager.xml:86 +#: doc/classes/RoomManager.xml:91 msgid "" "For the [Room] conversion process to succeed, you must point the " "[RoomManager] to the parent [Node] of your [Room]s and [RoomGroup]s, which " "we refer to as the [code]roomlist[/code] (the roomlist is not a special node " "type, it is normally just a [Spatial])." msgstr "" +"要使 [Room] 转换过程成功,您必须将 [RoomManager] 指向 [Room] 和 [RoomGroup] " +"的父 [Node],我们将其称为 [code]roomlist[/code](roomlist 不是一个特殊的节点" +"类型,它通常只是一个 [Room])。" -#: doc/classes/RoomManager.xml:89 +#: doc/classes/RoomManager.xml:94 msgid "Shows the [Portal] margins when the portal gizmo is used in the editor." -msgstr "" +msgstr "当在编辑器中使用portal工具时,显示[Portal]的边界。" -#: doc/classes/RoomManager.xml:92 +#: doc/classes/RoomManager.xml:97 msgid "" "When receiving gameplay callbacks when objects enter and exit gameplay, the " "[b]gameplay area[/b] can be defined by either the primary PVS (potentially " @@ -60643,28 +61675,33 @@ msgid "" "Sometimes using the larger gameplay area of the secondary PVS may be " "preferable." msgstr "" +"当对象进入和退出游戏时接收游戏回调时,[b]游戏区域[/b]可以由[Room]的主要" +"PVS(潜在可见集)或次要PVS(主要PVS及其相邻的PVS)定义[Room])。\n" +"有时使用次要 PVS 的较大游戏区域可能更可取。" -#: doc/classes/RoomManager.xml:98 +#: doc/classes/RoomManager.xml:103 msgid "" "Use only [Portal]s at runtime to determine visibility. PVS will not be " "generated at [Room]s conversion, and gameplay notifications cannot be used." msgstr "" +"在运行时仅使用 [Portal] 来确定可见性。 [Room]的转换不会产生PVS,无法使用游戏" +"通知。" -#: doc/classes/RoomManager.xml:101 +#: doc/classes/RoomManager.xml:106 msgid "" "Use a combination of PVS and [Portal]s to determine visibility (this is " "usually fastest and most accurate)." -msgstr "" +msgstr "使用 PVS 和 [Portal] 的组合来确定可见性(这通常是最快和最准确的)。" -#: doc/classes/RoomManager.xml:104 +#: doc/classes/RoomManager.xml:109 msgid "" "Use only the PVS (potentially visible set) of [Room]s to determine " "visibility." -msgstr "" +msgstr "仅使用 [Room] 的 PVS(潜在可见集)来确定可见性。" #: doc/classes/RootMotionView.xml:4 msgid "Editor-only helper for setting up root motion in [AnimationTree]." -msgstr "" +msgstr "在[AnimationTree]中设置根运动的仅编辑器可用的辅助工具。" #: doc/classes/RootMotionView.xml:7 msgid "" @@ -60681,23 +61718,30 @@ msgid "" "[code]extends RootMotionView[/code]. Additionally, it must not be a " "[code]@tool[/code] script." msgstr "" +"[i]Root motion[/i] 指的是一种动画技术,其中使用网格的骨架为角色提供动力。在处" +"理 3D 动画时,一种流行的技术是动画师使用根骨架骨骼来为骨架的其余部分提供运" +"动。这允许以步骤实际匹配下方地板的方式为角色设置动画。它还允许在过场动画期间" +"与对象进行精确交互。另见[AnimationTree]。\n" +"[b]注意:[/b] [RootMotionView] 仅在编辑器中可见。在运行的项目中会自动隐藏,在" +"运行的项目中也会转换为普通的[Node]。这意味着附加到 [RootMotionView] 节点的脚" +"本 [i] 必须 [/i] 具有 [code] 继承节点 [/code] 而不是 [code] 继承 " +"RootMotionView[/code]。此外,它不能是 [code]@tool[/code] 脚本。" #: doc/classes/RootMotionView.xml:11 msgid "" "https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree." "html#root-motion" msgstr "" -"https://docs.godotengine.org/en/latest/tutorials/animation/animation_tree." +"https://docs.godotengine.org/zh_CN/latest/tutorials/animation/animation_tree." "html#root-motion" #: doc/classes/RootMotionView.xml:17 msgid "Path to an [AnimationTree] node to use as a basis for root motion." -msgstr "" +msgstr "用作根运动基础的 [AnimationTree] 节点的路径。" #: doc/classes/RootMotionView.xml:20 -#, fuzzy msgid "The grid's cell size in 3D units." -msgstr "图块地图的单元大小。" +msgstr "以 3D 单位表示的网格单元大小。" #: doc/classes/RootMotionView.xml:23 msgid "The grid's color." @@ -60708,16 +61752,17 @@ msgid "" "The grid's radius in 3D units. The grid's opacity will fade gradually as the " "distance from the origin increases until this [member radius] is reached." msgstr "" +"以 3D 单位表示的网格半径。随着与原点的距离增加,网格的不透明度将逐渐消失,直" +"到达到此半径 [member radius]。" #: doc/classes/RootMotionView.xml:29 -#, fuzzy msgid "" "If [code]true[/code], the grid's points will all be on the same Y coordinate " "([i]local[/i] Y = 0). If [code]false[/code], the points' original Y " "coordinate is preserved." msgstr "" -"如果[code] true [/code],则粒子将使用父节点的坐标空间。如果[code]false[/" -"code],则使用全局坐标。" +"如果 [code]true[/code],则网格的点都将位于相同的 Y 坐标上([i]local[/i] Y = " +"0)。如果 [code]false[/code],则保留点的原始 Y 坐标。" #: doc/classes/SceneState.xml:4 msgid "A script interface to a scene file's data." @@ -60908,7 +61953,6 @@ msgid "Manages the game loop via a hierarchy of nodes." msgstr "通过节点层次结构管理游戏循环。" #: doc/classes/SceneTree.xml:7 -#, fuzzy msgid "" "As one of the most important classes, the [SceneTree] manages the hierarchy " "of nodes in a scene as well as scenes themselves. Nodes can be added, " @@ -60922,28 +61966,28 @@ msgid "" "thus in charge of the game loop." msgstr "" "作为最重要的类之一,[SceneTree]管理着场景中节点的层次结构以及场景本身。节点可" -"以被添加、检索和删除。整个场景树(以及当前场景)可以被暂停。场景可以被加载、" -"切换和重新加载。\n" -"你也可以使用[SceneTree]将你的节点组织成组:每个节点都可以被分配到你想要创建的" -"组,例如一个 \"敌人 \"组。然后你可以迭代这些组,甚至可以一次调用方法并设置所" +"以被添加、检索和删除。整个场景树可以被暂停,包括当前场景。场景可以被加载、切" +"换和重新加载。\n" +"你也可以使用[SceneTree]将你的节点组织成组,每个节点都可以被分配到你想要创建的" +"组,例如一个 \"敌人\" 组。然后你可以迭代这些组,甚至可以一次调用方法并设置所" "有组成员的属性。\n" -"[SceneTree]是场景使用的默认[MainLoop]实现,因此负责游戏的循环。" +"[SceneTree]由场景使用的默认[MainLoop]实现,因此负责游戏的循环。" #: doc/classes/SceneTree.xml:12 msgid "" "https://docs.godotengine.org/en/3.4/getting_started/step_by_step/scene_tree." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/scene_tree." -"html" +"https://docs.godotengine.org/zh_CN/stable/getting_started/step_by_step/" +"scene_tree.html" #: doc/classes/SceneTree.xml:13 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/viewports/multiple_resolutions." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/viewports/multiple_resolutions." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/viewports/" +"multiple_resolutions.html" #: doc/classes/SceneTree.xml:21 msgid "" @@ -60960,6 +62004,16 @@ msgid "" "immediately, use [method call_group_flags] with the [constant " "GROUP_CALL_REALTIME] flag." msgstr "" +"对给定组的每个成员调用 [code]method[/code]。您可以通过在方法调用结束时指定参" +"数来将参数传递给 [code]method[/code]。此方法等效于使用 [constant " +"GROUP_CALL_DEFAULT] 标志调用 [method call_group_flags]。\n" +"[b]注:[/b] [code]method[/code]最多只能有5个参数(总共7个参数传递给这个方" +"法)。\n" +"[b]注意:[/b] 由于设计限制,如果参数之一为 [code]null[/code],[method " +"call_group] 将静默失败。\n" +"[b]注意:[/b] [method call_group] 将始终调用具有一帧延迟的方法,其方式类似于 " +"[method Object.call_deferred]。要立即调用方法,请将 [method " +"call_group_flags] 与 [constant GROUP_CALL_REALTIME] 标志一起使用。" #: doc/classes/SceneTree.xml:33 msgid "" @@ -60976,9 +62030,20 @@ msgid "" "GROUP_CALL_REVERSE, \"bases\", \"destroy\")\n" "[/codeblock]" msgstr "" +"对给定组的每个成员调用 [code]method[/code],遵从给定的 [enum " +"GroupCallFlags]。您可以通过在方法调用结束时指定参数来将参数传递给 " +"[code]method[/code]。\n" +"[b]注:[/b] [code]method[/code]最多只能有5个参数(总共8个参数传递给这个方" +"法)。\n" +"[b]注意:[/b] 由于设计限制,如果参数之一为 [code]null[/code],[method " +"call_group_flags] 将静默失败。\n" +"[codeblock]\n" +"# 立即以相反的顺序调用该方法。\n" +"get_tree().call_group_flags(SceneTree.GROUP_CALL_REALTIME | SceneTree." +"GROUP_CALL_REVERSE, \"bases\", \"destroy\")\n" +"[/codeblock]" #: doc/classes/SceneTree.xml:46 -#, fuzzy msgid "" "Changes the running scene to the one at the given [code]path[/code], after " "loading it into a [PackedScene] and creating a new instance.\n" @@ -60989,13 +62054,14 @@ msgid "" "node is added on the next idle frame. You won't be able to access it " "immediately after the [method change_scene] call." msgstr "" -"将正在运行的场景改变为给定的[code]path[/code]上的场景,在将其加载到一个" +"将正在运行的场景改变为指定的[code]path[/code]中的场景,在将其加载到" "[PackedScene]中并创建一个新的实例。\n" "成功时返回[constant OK],如果[code]path[/code]不能被加载到一个[PackedScene]" -"中,则返回[constant ERR_CANT_CREATE],如果该场景不能被实例化。" +"中,,该场景不能被实例化,则返回[constant ERR_CANT_CREATE]。\n" +"[b]注意:[/b]场景改变有延迟,即新的场景节点是在下一个空闲帧中添加。在[method " +"change_scene]调用之后,你不能立即访问它。" #: doc/classes/SceneTree.xml:55 -#, fuzzy msgid "" "Changes the running scene to a new instance of the given [PackedScene].\n" "Returns [constant OK] on success or [constant ERR_CANT_CREATE] if the scene " @@ -61004,12 +62070,13 @@ msgid "" "node is added on the next idle frame. You won't be able to access it " "immediately after the [method change_scene_to] call." msgstr "" -"将正在运行的场景改变为一个给定的[PackedScene]的新实例。\n" +"将正在运行的场景改变为给定的[PackedScene]的新实例。\n" "成功时返回[constant OK],如果场景不能被实例化,则返回[constant " -"ERR_CANT_CREATE]。" +"ERR_CANT_CREATE]。\n" +"[b]注意:[/b] 场景的改变是延迟的,新的场景节点是在下一个空闲帧中添加。在调用" +"[method change_scene_to]之后,你不能立即访问它。" #: doc/classes/SceneTree.xml:65 -#, fuzzy msgid "" "Returns a [SceneTreeTimer] which will [signal SceneTreeTimer.timeout] after " "the given time in seconds elapsed in this [SceneTree]. If " @@ -61027,13 +62094,14 @@ msgstr "" "返回一个[SceneTreeTimer],在这个[SceneTree]中经过给定的时间(秒)后,该" "[SceneTreeTimer.timeout]将发出信号。如果[code]pause_mode_process[/code]被设置" "为[code]false[/code],暂停[SceneTree]也将暂停该定时器。\n" -"常用于创建一个一次性的延迟定时器,如下面的例子。\n" +"常用于创建一次性的延迟定时器,如下面的例子:\n" "[codeblock]\n" "func some_function():\n" " print(\"start\")\n" " yield(get_tree().create_timer(1.0), \"timeout\")\n" " print(\"end\")\n" -"[/codeblock]" +"[/codeblock]\n" +"计时器将在其时间结束后被自动释放。" #: doc/classes/SceneTree.xml:79 msgid "" @@ -61069,13 +62137,12 @@ msgid "Returns [code]true[/code] if the given group exists." msgstr "如果给定的组存在,返回[code]true[/code]。" #: doc/classes/SceneTree.xml:129 -#, fuzzy msgid "" "Returns [code]true[/code] if the most recent [InputEvent] was marked as " "handled with [method set_input_as_handled]." msgstr "" -"如果节点正在处理未被处理的输入(参阅[方法set_process_unhandled_input]),则返回" -"[code]true[/code]。" +"如果节点正在处理未被处理的输入(参阅[method set_process_unhandled_input]),则" +"返回[code]true[/code]。" #: doc/classes/SceneTree.xml:135 msgid "" @@ -61104,7 +62171,6 @@ msgid "" msgstr "将给定的对象排队准备删除,即在当前帧之后调用 [method Object.free] 。" #: doc/classes/SceneTree.xml:166 -#, fuzzy msgid "" "Quits the application at the end of the current iteration. A process " "[code]exit_code[/code] can optionally be passed as an argument. If this " @@ -61114,9 +62180,11 @@ msgid "" "iOS Human Interface Guidelines, the user is expected to close apps via the " "Home button." msgstr "" -"退出应用程序。进程 [code]exit_code[/code] 可以选择作为参数传递。如果此参数为 " -"[code]0[/code] 或更大,它将覆盖在退出应用程序之前定义的 [member OS." -"exit_code]。" +"在当前迭代结束时退出应用程序。进程的[code]exit_code[/code]可以选择性地作为参" +"数传递。如果这个参数是[code]0[/code]或更大,它将覆盖在退出应用程序之前定义的" +"[member OS.exit_code]。\n" +"[b]注意:[/b] 在iOS上,这个方法不起作用。参考iOS界面指南建议,用户应该通过主" +"页按钮来关闭应用程序。" #: doc/classes/SceneTree.xml:173 msgid "" @@ -61158,28 +62226,28 @@ msgstr "" "code],尊重给定的 [enum GroupCallFlags]。" #: doc/classes/SceneTree.xml:207 -#, fuzzy msgid "Marks the most recent [InputEvent] as handled." -msgstr "将快捷方式的 [InputEvent] 作为 [String] 返回。" +msgstr "将最新的[InputEvent]标记为已处理。" #: doc/classes/SceneTree.xml:214 -#, fuzzy msgid "" "If [code]true[/code], the application quits automatically on going back (e." "g. on Android). Enabled by default.\n" "To handle 'Go Back' button when this option is disabled, use [constant " "MainLoop.NOTIFICATION_WM_GO_BACK_REQUEST]." msgstr "" -"如果 [code]true[/code],应用程序会在返回时自动退出(例如在 Android 上)。默认" -"启用。\n" -"要在禁用此选项时处理“返回”按钮,请使用 [constant DisplayServer." -"WINDOW_EVENT_GO_BACK_REQUEST]。" +"如果[code]true[/code],应用程序在返回时自动退出,例如在Android上。默认情况是" +"启用的。\n" +"要在这个选项被禁用时处理'Go Back'按钮,请使用 [constant MainLoop." +"NOTIFICATION_WM_GO_BACK_REQUEST] 。" #: doc/classes/SceneTree.xml:225 msgid "" "Configures screen stretching to the given [enum StretchMode], [enum " "StretchAspect], minimum size and [code]scale[/code]." msgstr "" +"将屏幕拉伸配置为给定的 [enum StretchMode]、[enum StretchAspect]、最小尺寸和 " +"[code]scale[/code]。" #: doc/classes/SceneTree.xml:231 msgid "The current scene." @@ -61241,7 +62309,6 @@ msgstr "" "过连接到 [SceneTree] 的信号来完成的。" #: doc/classes/SceneTree.xml:253 -#, fuzzy msgid "" "If [code]true[/code], the [SceneTree] is paused. Doing so will have the " "following behavior:\n" @@ -61250,10 +62317,10 @@ msgid "" "- [method Node._process], [method Node._physics_process] and [method Node." "_input] will not be called anymore in nodes." msgstr "" -"如果 [code]true[/code],则暂停 [SceneTree]。这样做将有以下行为:\n" -"- 2D 和 3D 物理将停止。\n" -"- [method Node._process]、[method Node._physics_process] 和[method Node." -"_input] 将不再在节点中调用。" +"如果[code]true[/code],[SceneTree]会暂停。这样做会有以下行为:\n" +"- 2D和3D物理将停止。这包括信号和碰撞检测。\n" +"- 节点不再调用[method Node._process]、[method Node._physics_process]和" +"[method Node._input]。" #: doc/classes/SceneTree.xml:258 msgid "" @@ -61264,14 +62331,12 @@ msgstr "" "连接。" #: doc/classes/SceneTree.xml:261 -#, fuzzy msgid "The [SceneTree]'s root [Viewport]." -msgstr "[SceneTree] 的根 [Window]。" +msgstr "[SceneTree] 的根 [Viewport]。" #: doc/classes/SceneTree.xml:264 -#, fuzzy msgid "If [code]true[/code], font oversampling is used." -msgstr "如果[code]true[/code],则启用法线映射。" +msgstr "如果 [code]true[/code],则使用字体超采样。" #: doc/classes/SceneTree.xml:270 msgid "" @@ -61299,9 +62364,8 @@ msgstr "" "和拖动文件的屏幕标识符。" #: doc/classes/SceneTree.xml:289 -#, fuzzy msgid "Emitted whenever global menu item is clicked." -msgstr "当项目被选中时触发。" +msgstr "每当单击全局菜单项时触发。" #: doc/classes/SceneTree.xml:294 msgid "" @@ -61359,7 +62423,7 @@ msgstr "" msgid "" "Emitted when the screen resolution (fullscreen) or window size (windowed) " "changes." -msgstr "" +msgstr "当屏幕分辨率(全屏)或窗口大小(窗口化)改变时发出。" #: doc/classes/SceneTree.xml:345 msgid "" @@ -61403,37 +62467,37 @@ msgstr "以更高的分辨率渲染拉伸(插值)。" msgid "" "Keep the specified display resolution. No interpolation. Content may appear " "pixelated." -msgstr "" +msgstr "保持指定的显示分辨率。没有插值。内容可能会出现像素化。" #: doc/classes/SceneTree.xml:377 msgid "" "Fill the window with the content stretched to cover excessive space. Content " "may appear stretched." -msgstr "" +msgstr "用拉伸的内容填充窗口以覆盖过多的空间。内容可能会被拉伸。" #: doc/classes/SceneTree.xml:380 msgid "" "Retain the same aspect ratio by padding with black bars on either axis. This " "prevents distortion." -msgstr "" +msgstr "在任意轴上用黑条填充来保持相同的长宽比。这可以防止失真。" #: doc/classes/SceneTree.xml:383 msgid "" "Expand vertically. Left/right black bars may appear if the window is too " "wide." -msgstr "" +msgstr "垂直展开。如果窗口太宽,可能会出现左/右黑条。" #: doc/classes/SceneTree.xml:386 msgid "" "Expand horizontally. Top/bottom black bars may appear if the window is too " "tall." -msgstr "" +msgstr "水平展开。如果窗口太高,可能会出现顶部/底部黑条。" #: doc/classes/SceneTree.xml:389 msgid "" "Expand in both directions, retaining the same aspect ratio. This prevents " "distortion while avoiding black bars." -msgstr "" +msgstr "在两个方向上扩展,保持相同的纵横比。这可以防止失真,同时避免黑条。" #: doc/classes/SceneTreeTimer.xml:4 msgid "One-shot timer." @@ -61492,8 +62556,8 @@ msgid "" "https://docs.godotengine.org/en/3.4/getting_started/step_by_step/scripting." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/step_by_step/scripting." -"html" +"https://docs.godotengine.org/zh_CN/stable/getting_started/step_by_step/" +"scripting.html" #: doc/classes/Script.xml:17 msgid "Returns [code]true[/code] if the script can be instanced." @@ -61568,7 +62632,6 @@ msgid "The Editor's popup dialog for creating new [Script] files." msgstr "用于创建新 [Script] 文件的编辑器弹出对话框。" #: doc/classes/ScriptCreateDialog.xml:7 -#, fuzzy msgid "" "The [ScriptCreateDialog] creates script files according to a given template " "for a given scripting language. The standard use is to configure its fields " @@ -61581,14 +62644,14 @@ msgid "" " dialog.popup_centered()\n" "[/codeblock]" msgstr "" -"[ScriptCreateDialog] 根据给定脚本语言的给定模板创建脚本文件。标准用法是在调" -"用 [method Window.popup] 方法之一之前配置其字段。\n" +"[ScriptCreateDialog] 根据指定脚本语言的特定模板创建脚本文件。标准用法是在类似" +"调用 [method Popup.popup] 方法之前配置其字段。\n" "[codeblock]\n" "func _ready():\n" -" dialog.config(\"Node\", \"res://new_node.gd\") # 用于引擎内类型\n" +" dialog.config(\"Node\", \"res://new_node.gd\") # For in-engine types\n" " dialog.config(\"\\\"res://base_node.gd\\\"\", \"res://derived_node.gd\") " -"# 用于脚本类型\n" -" dialog.popup_center()\n" +"# For script types\n" +" dialog.popup_centered()\n" "[/codeblock]" #: doc/classes/ScriptCreateDialog.xml:25 @@ -61631,6 +62694,8 @@ msgid "" "code]. The file extension can be omitted from [code]base_path[/code]. It " "will be added based on the selected scripting language." msgstr "" +"打开创建脚本的对话框。脚本将扩展[code]base_name[/code]。文件扩展名可以从" +"[code]base_path[/code]中省略。它将根据所选择的脚本语言添加。" #: doc/classes/ScriptEditor.xml:67 msgid "" @@ -61673,7 +62738,6 @@ msgid "A helper node for displaying scrollable elements such as lists." msgstr "用于显示可滚动元素(例如列表)的辅助节点。" #: doc/classes/ScrollContainer.xml:7 -#, fuzzy msgid "" "A ScrollContainer node meant to contain a [Control] child. ScrollContainers " "will automatically create a scrollbar child ([HScrollBar], [VScrollBar], or " @@ -61687,21 +62751,21 @@ msgid "" "they will upscale to the ScrollContainer's size if it's larger (scroll is " "invisible for the chosen dimension)." msgstr "" -"ScrollContainer 节点用于容纳一个 [Control] 子节点。\n" -"ScrollContainers 将在需要时自动创建一个滚动条子项([HScrollBar]、" -"[VScrollBar] ),并且只会在 ScrollContainer 区域内绘制控件。滚动条将自动绘制" -"在右侧(垂直)或底部(水平),并允许拖动以在 ScrollContainer 内移动可视控件" -"(及其子项)。滚动条还将根据控件相对于 ScrollContainer 的 [member Control." -"rect_min_size] 自动调整抓取器的大小。\n" -"与 [Panel] 控件配合使用效果很好。您可以在子项的大小标志上设置 [code]EXPAND[/" -"code],因此如果 ScrollContainer 的大小更大(滚动对于所选维度不可见),它们将" -"放大到 ScrollContainer 的大小。" +"滚动容器节点,用于包含 [Control] 子节点。 滚动容器将在需要时自动创建滚动条子" +"项([HScrollBar]、[VScrollBar] 或两者),且仅在滚动容器区域内绘制控件。滚动条" +"将自动绘制在右侧或底部,即垂直或水平,并允许拖动以在滚动容器内移动可视控件及" +"其子项。滚动条还将根据控件相对于滚动容器的 [member Control.rect_min_size] 自" +"动调整抓取器的大小。与 [Panel] 控件配合使用效果很好。您可以将子项的大小标志设" +"置为 [code]EXPAND[/code],当滚动容器的大小更大(滚动对于所选维度不可见),它" +"们将放大到滚动容器的大小。" #: doc/classes/ScrollContainer.xml:16 msgid "" "Ensures the given [code]control[/code] is visible (must be a direct or " "indirect child of the ScrollContainer). Used by [member follow_focus]." msgstr "" +"确保给定的 [code]control[/code] 是可见的,必须是滚动容器的直接或间接子级。由 " +"[member follow_focus] 使用。" #: doc/classes/ScrollContainer.xml:22 msgid "" @@ -61711,6 +62775,10 @@ msgid "" "[member scroll_horizontal_enabled]. If you want to only hide it instead, use " "its [member CanvasItem.visible] property." msgstr "" +"返回此[ScrollContainer]的水平滚动条[HScrollBar]。\n" +"[b]警告:[/b] 这是一个必须的内部节点,移除和释放它可能会导致崩溃。如果你想禁" +"用水平滚动条,请使用[member scroll_horizontal_enabled]。如果你只想隐藏它,则" +"使用其[member CanvasItem.visible]属性。" #: doc/classes/ScrollContainer.xml:29 msgid "" @@ -61720,6 +62788,10 @@ msgid "" "[member scroll_vertical_enabled]. If you want to only hide it instead, use " "its [member CanvasItem.visible] property." msgstr "" +"返回此[ScrollContainer]的垂直滚动条[VScrollBar]。\n" +"[b]警告:[/b] 这是一个必需的内部节点,移除和释放它可能会导致崩溃。如果你想禁" +"用垂直滚动条,请使用[member scroll_vertical_enabled]。如果你只想隐藏它,则使" +"用其[member CanvasItem.visible]属性。" #: doc/classes/ScrollContainer.xml:36 msgid "" @@ -61790,20 +62862,20 @@ msgstr "" "进制版本,请参阅 [Mutex]。" #: doc/classes/Semaphore.xml:16 -#, fuzzy msgid "" "Lowers the [Semaphore], allowing one more thread in. Returns [constant OK] " "on success, [constant ERR_BUSY] otherwise." msgstr "" -"试图锁定这个[Mutex],但并不阻塞。成功时返回[常量OK],否则返回[常量ERR_BUSY]。" +"试图锁定这个[Mutex],但并不阻塞。成功时返回[constant OK],否则返回[constant " +"ERR_BUSY]。" #: doc/classes/Semaphore.xml:22 -#, fuzzy msgid "" "Tries to wait for the [Semaphore], if its value is zero, blocks until non-" "zero. Returns [constant OK] on success, [constant ERR_BUSY] otherwise." msgstr "" -"试图锁定这个[Mutex],但并不阻塞。成功时返回[常量OK],否则返回[常量ERR_BUSY]。" +"试图锁定这个[Mutex],但并不阻塞。成功时返回[constant OK],否则返回[constant " +"ERR_BUSY]。" #: doc/classes/Separator.xml:4 msgid "Base class for separators." @@ -61835,15 +62907,15 @@ msgstr "" #: doc/classes/Shader.xml:10 doc/classes/ShaderMaterial.xml:11 msgid "https://docs.godotengine.org/en/3.4/tutorials/shading/index.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/shading/index.html" +msgstr "https://docs.godotengine.org/zh_CN/stable/tutorials/shading/index.html" #: doc/classes/Shader.xml:11 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/shading/your_first_shader/" "what_are_shaders.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/shading/your_first_shader/" -"what_are_shaders.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/shading/" +"your_first_shader/what_are_shaders.html" #: doc/classes/Shader.xml:18 msgid "" @@ -61897,6 +62969,9 @@ msgid "" "[b]Note:[/b] Custom defines are not validated by the Godot shader parser, so " "care should be taken when using them." msgstr "" +"返回该着色器的自定义。自定义可以在Godot中用于添加着色器逻辑所需的GLSL预处理指" +"令(例如:扩展)。\n" +"[b]注意:[/b] 自定义没有经过Godot着色器解析器的验证,所以使用时要注意。" #: doc/classes/Shader.xml:57 msgid "Mode used to draw all 3D objects." @@ -61917,7 +62992,6 @@ msgid "A material that uses a custom [Shader] program." msgstr "使用自定义 [Shader] 程序的材质。" #: doc/classes/ShaderMaterial.xml:7 -#, fuzzy msgid "" "A material that uses a custom [Shader] program to render either items to " "screen or process particles. You can create multiple materials for the same " @@ -61927,8 +63001,10 @@ msgid "" "emit light when used in a [GIProbe]. Only emissive [SpatialMaterial]s can " "emit light in a [GIProbe]." msgstr "" -"使用自定义[Shader]程序来渲染屏幕上的物品或粒子的材质。你可以为同一个着色器创" -"建多个材质,但要为着色器中定义的uniform配置不同的值。" +"使用自定义 [Shader] 程序渲染项目以筛选或处理粒子的材质。您可以为同一个着色器" +"创建多种材质,但可以为着色器中定义的uniforms配置不同的值。\n" +"[b]注意:[/b] 由于渲染器限制,在 [GIProbe] 中使用时,自发光 [ShaderMaterial] " +"无法发光。只有自发光的 [SpatialMaterial] 可以在 [GIProbe] 中发光。" #: doc/classes/ShaderMaterial.xml:18 msgid "" @@ -61966,18 +63042,16 @@ msgid "Base class for all 3D shape resources." msgstr "所有 3D 形状资源的基类。" #: doc/classes/Shape.xml:7 -#, fuzzy msgid "" "Base class for all 3D shape resources. Nodes that inherit from this can be " "used as shapes for a [PhysicsBody] or [Area] objects." msgstr "" -"所有 3D 形状资源的基类。继承自此的节点可用作 [PhysicsBody3D] 或 [Area3D] 对象" -"的形状。" +"所有3D形状资源的基类。继承于此的节点可以作为[PhysicsBody]或[Area]对象的形状。" #: doc/classes/Shape.xml:16 msgid "" "Returns the [ArrayMesh] used to draw the debug collision for this [Shape]." -msgstr "" +msgstr "返回用于绘制此[Shape]的调试碰撞的[ArrayMesh]。" #: doc/classes/Shape.xml:22 msgid "" @@ -61988,6 +63062,10 @@ msgid "" "better for performance, at the cost of accuracy around edges as it makes " "them less sharp." msgstr "" +"形状的碰撞边距。只在Bullet物理运算中使用。\n" +"碰撞边距允许通过在形状周围添加额外的外壳来使碰撞检测更有效。当物体重叠的部分" +"超过其边距时,碰撞算法的成本会更高,所以边距的数值越高对性能越好,但代价是边" +"缘的精度会降低。" #: doc/classes/Shape2D.xml:4 msgid "Base class for all 2D shapes." @@ -62060,14 +63138,13 @@ msgstr "" "试的运动 ([code]shape_motion[/code])。" #: doc/classes/Shape2D.xml:62 -#, fuzzy msgid "" "Draws a solid shape onto a [CanvasItem] with the [VisualServer] API filled " "with the specified [code]color[/code]. The exact drawing method is specific " "for each shape and cannot be configured." msgstr "" -"使用填充了指定 [code] color [/code] 的 [RenderingServer] API 在 [CanvasItem] " -"上绘制实体形状。确切的绘制方法是针对每个形状的,无法配置。" +"用[VisualServer]API在[CanvasItem]上绘制实体形状,并填充指定的[code]color[/" +"code]。确切的绘制方法是每个形状特有的,无法配置。" #: doc/classes/Shape2D.xml:68 msgid "The shape's custom solver bias." @@ -62116,7 +63193,6 @@ msgid "Skeleton for characters and animated objects." msgstr "角色和动画对象的骨架。" #: doc/classes/Skeleton.xml:7 -#, fuzzy msgid "" "Skeleton provides a hierarchical interface for managing bones, including " "pose, rest and animation (see [Animation]). It can also use ragdoll " @@ -62127,11 +63203,12 @@ msgid "" "with respect to skeleton, so it not the actual global/world transform of the " "bone." msgstr "" -"Skeleton3D 提供了用于管理骨骼的分层界面,包括姿势、休息和动画(参阅 " -"[Animation])。它还可以使用布娃娃物理(ragdoll physics)。\n" -"骨骼相对于骨架的整体变换由以下层次顺序确定:静止姿势、自定义姿势和姿势。\n" -"请注意,下面的“全局姿势”是指骨骼相对于骨骼的整体变换,因此它不是骨骼的实际全" -"局/世界变换。" +"骨架为管理骨骼提供了分层的界面,包括姿势、休止和动画(参阅[Animation])。它还" +"可以使用布娃娃物理。\n" +"骨骼相对于骨架的整体变换是由以下层次顺序决定的:休止姿势、自定义姿势和姿" +"势。\n" +"注意,下面的 \"global pose\"全局姿势是指骨骼相对于骨架的整体变换,所以它不是" +"骨骼的实际全局或世界变换。" #: doc/classes/Skeleton.xml:20 msgid "" @@ -62174,14 +63251,13 @@ msgstr "" "\"全局 \"变换。" #: doc/classes/Skeleton.xml:73 -#, fuzzy msgid "" "Returns the overall transform of the specified bone, with respect to the " "skeleton, but without any global pose overrides. Being relative to the " "skeleton frame, this is not the actual \"global\" transform of the bone." msgstr "" -"返回相对于骨架的指定骨骼的整体变换。由于是相对于骨架的,这不是该骨骼的实际 " -"\"全局 \"变换。" +"返回指定骨骼的整体变换,相对于骨架,但没有任何全局姿势覆盖。相对于骨架帧,这" +"不是骨骼的实际 \"global\" 变换。" #: doc/classes/Skeleton.xml:80 msgid "Returns the name of the bone at index [code]index[/code]." @@ -62221,9 +63297,8 @@ msgstr "" "[b]注意:[/b] [code]parent_idx[/code] 必须小于 [code]bone_idx[/code]。" #: doc/classes/Skeleton.xml:196 -#, fuzzy msgid "Sets the pose transform for bone [code]bone_idx[/code]." -msgstr "为骨骼[code]bone_idx[/code]设置休息变换。" +msgstr "设置骨骼 [code]bone_idx[/code] 的姿势变换。" #: doc/classes/Skeleton.xml:204 msgid "Sets the rest transform for bone [code]bone_idx[/code]." @@ -62246,7 +63321,8 @@ msgstr "" msgid "" "https://docs.godotengine.org/en/3.4/tutorials/animation/2d_skeletons.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/animation/2d_skeletons.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/animation/2d_skeletons." +"html" #: doc/classes/Skeleton2D.xml:17 msgid "" @@ -62274,6 +63350,8 @@ msgid "" "SkeletonIK is used to place the end bone of a [Skeleton] bone chain at a " "certain point in 3D by rotating all bones in the chain accordingly." msgstr "" +"SkeletonIK用于将[Skeleton]骨链的末端骨骼置于3D中的某一点,并相应地旋转骨链中" +"的所有骨骼。" #: doc/classes/SkeletonIK.xml:7 msgid "" @@ -62308,6 +63386,32 @@ msgid "" "skeleton_ik_node.set_interpolation(0.0)\n" "[/codeblock]" msgstr "" +"SkeletonIK用于将[Skeleton]骨链的末端骨骼放置在3D某一点上,并相应地旋转骨链中" +"的所有骨骼。游戏中IK的典型场景是将角色的脚放在地面上,或者将角色的手放在当前" +"持有的物体上。SkeletonIK在内部使用FabrikInverseKinematic来解决骨骼链,并将结" +"果应用于[Skeleton] [code]bones_global_pose_override[/code]属性中所有受影响的" +"骨骼链。如果完全应用,这将覆盖任何来自[Animation]的骨骼变换或用户设置的骨骼自" +"定义姿势。应用量可以用[code]interpolation[/code]属性来控制。\n" +"[codeblock]\n" +"# 在每一个新的帧上自动应用IK效果(不是当前的)。\n" +"skeleton_ik_node.start()\n" +"\n" +"# 只在当前帧上应用IK效果\n" +"skeleton_ik_node.start(true)\n" +"\n" +"# 停止IK效果并重置骨骼上的bones_global_pose_override\n" +"skeleton_ik_node.stop()\n" +"\n" +"# 应用完整的IK效果\n" +"skeleton_ik_node.set_interpolation(1.0)\n" +"\n" +"# 应用一半的IK效果\n" +"skeleton_ik_node.set_interpolation(0.5)\n" +"\n" +"# 应用零IK效果(数值为0.01或低于0.01也会移除骨骼上的" +"bones_global_pose_override)。\n" +"skeleton_ik_node.set_interpolation(0.0)\n" +"[/codeblock]" #: doc/classes/SkeletonIK.xml:35 msgid "" @@ -62315,6 +63419,8 @@ msgid "" "the [SceneTree]. Returns null if the parent node was not a [Skeleton] Node " "when SkeletonIK entered the [SceneTree]." msgstr "" +"返回SkeletonIK进入[SceneTree]时存在的父[Skeleton]节点。如果父节点在SkeletonIK" +"进入[SceneTree]时不是[Skeleton]节点,则返回null。" #: doc/classes/SkeletonIK.xml:41 msgid "" @@ -62323,6 +63429,10 @@ msgid "" "stopped or [method start] was used with the [code]one_time[/code] parameter " "set to [code]true[/code]." msgstr "" +"如果 SkeletonIK 将 IK 效果应用到 [Skeleton] 骨骼的连续帧上,则返回 " +"[code]true[/code]。如果 SkeletonIK 停止或使用 [method start] 且 " +"[code]one_time[/code] 参数设置为 [code]true[/code],则返回 [code]false[/" +"code]。" #: doc/classes/SkeletonIK.xml:48 msgid "" @@ -62331,6 +63441,8 @@ msgid "" "[code]true[/code], this will take effect immediately but also reset on the " "next frame." msgstr "" +"开始将 IK 效果应用到每一帧的 [Skeleton] 骨骼,但只会在下一帧开始生效。如果 " +"[code]one_time[/code] 为 [code]true[/code],这将立即生效,但会在下一帧重置。" #: doc/classes/SkeletonIK.xml:54 msgid "" @@ -62338,6 +63450,8 @@ msgid "" "calls [method Skeleton.clear_bones_global_pose_override] to remove existing " "overrides on all bones." msgstr "" +"停止将 IK 效果应用到每帧的 [Skeleton] 骨骼,并调用 [method Skeleton." +"clear_bones_global_pose_override] 以移除所有骨骼上的现有覆盖。" #: doc/classes/SkeletonIK.xml:60 msgid "" @@ -62347,6 +63461,10 @@ msgid "" "disable the SkeletonIK. A value at or below [code]0.01[/code] also calls " "[method Skeleton.clear_bones_global_pose_override]." msgstr "" +"IK 效果应用于当前骨架骨骼链的插值。 [code]1.0[/code] 的值将完全覆盖所有骨架骨" +"骼变换,而 [code]0.0[/code] 的值将在视觉上禁用 SkeletonIK。等于或低于 " +"[code]0.01[/code] 的值也调用 [method Skeleton." +"clear_bones_global_pose_override]。" #: doc/classes/SkeletonIK.xml:63 msgid "" @@ -62356,28 +63474,35 @@ msgid "" "bones. The middle chain bone position will be linearly interpolated with the " "magnet position." msgstr "" +"IK 链的次要目标位置(首先是 [member target] 属性或 [member target_node])。使" +"用磁铁位置(极点目标)来控制 IK 链的弯曲。仅当骨骼链具有 2 个以上的骨骼时才有" +"效。中间链骨位置将与磁铁位置进行线性插值。" #: doc/classes/SkeletonIK.xml:66 msgid "" "Number of iteration loops used by the IK solver to produce more accurate " "(and elegant) bone chain results." -msgstr "" +msgstr "IK解算器使用的迭代循环的数量,以产生更准确(和优雅)的骨链效果。" #: doc/classes/SkeletonIK.xml:69 msgid "" "The minimum distance between bone and goal target. If the distance is below " "this value, the IK solver stops further iterations." msgstr "" +"骨骼与目标对象之间的最小距离。如果距离低于这个值,IK解算器将停止进一步的迭" +"代。" #: doc/classes/SkeletonIK.xml:72 msgid "" "If [code]true[/code] overwrites the rotation of the tip bone with the " "rotation of the [member target] (or [member target_node] if defined)." msgstr "" +"如果[code]true[/code],则用 [member target] (或者如果定义了[member " +"target_node]])的旋转覆盖尖端骨骼的旋转。" #: doc/classes/SkeletonIK.xml:75 msgid "The name of the current root bone, the first bone in the IK chain." -msgstr "" +msgstr "当前根骨的名称,即IK链中的第一个骨。" #: doc/classes/SkeletonIK.xml:78 msgid "" @@ -62386,18 +63511,25 @@ msgid "" "[member target_node] path is available the nodes transform is used instead " "and this property is ignored." msgstr "" +"放置尖端骨骼的 IK 链的第一个目标,如果 [member override_tip_basis] 是 " +"[code]true[/code],尖端骨骼的旋转方式。如果 [member target_node] 路径可用,则" +"使用节点变换,并忽略此属性。" #: doc/classes/SkeletonIK.xml:81 msgid "" "Target node [NodePath] for the IK chain. If available, the node's current " "[Transform] is used instead of the [member target] property." msgstr "" +"IK链的目标节点[NodePath]。如果有的话,将使用节点当前的[Transform],而不是" +"[member target]属性。" #: doc/classes/SkeletonIK.xml:84 msgid "" "The name of the current tip bone, the last bone in the IK chain placed at " "the [member target] transform (or [member target_node] if defined)." msgstr "" +"当前尖端骨骼的名称,IK 链中放置在 [member target] 变换处的最后一个骨骼(或者" +"已定义 [member target_node])。" #: doc/classes/SkeletonIK.xml:87 msgid "" @@ -62405,13 +63537,14 @@ msgid "" "magnet target (pole target) when calculating the bone chain. Use the magnet " "position (pole target) to control the bending of the IK chain." msgstr "" +"如果[code]true[/code],指示IK求解器在解算器链时考虑次要磁铁目标(极点目标)。" +"使用磁铁位置(磁极目标)来控制IK链的弯曲。" #: doc/classes/Sky.xml:4 doc/classes/Sky.xml:7 msgid "The base class for [PanoramaSky] and [ProceduralSky]." -msgstr "" +msgstr "[PanoramaSky] 和 [ProceduralSky] 的基类。" #: doc/classes/Sky.xml:15 -#, fuzzy msgid "" "The [Sky]'s radiance map size. The higher the radiance map size, the more " "detailed the lighting from the [Sky] will be.\n" @@ -62423,10 +63556,12 @@ msgid "" "and performance. Be careful when using high radiance size values as these " "can cause crashes on low-end GPUs." msgstr "" -"[Sky]的辐照度贴图大小。辐照度贴图尺寸越大,[Sky]的照明就越细致。\n" -"有关值,请参阅 [enum RadianceSize] 常量。\n" -"[b]注意:[/b] 某些硬件在更高的辐照度尺寸下会出现问题,尤其是 [constant " -"RADIANCE_SIZE_512] 及以上。仅在高端硬件上使用如此高的值。" +"[Sky]的辐射贴图大小。辐射贴图尺寸越大,[Sky]的照明就越详细。\n" +"有关值,参阅 [enum RadianceSize] 常量。\n" +"[b]注意:[/b] 如果您的项目中有非常清晰的反射表面,并且不使用 " +"[ReflectionProbe] 或 [GIProbe],您才会受益于高辐射尺寸。对于大多数项目,将 " +"[member radiance_size] 保持为默认值是视觉效果和性能之间的最佳折衷。使用高辐射" +"大小值时要小心,因为这可能会导致低端 GPU 崩溃。" #: doc/classes/Sky.xml:22 msgid "Radiance texture size is 32×32 pixels." @@ -62454,6 +63589,9 @@ msgid "" "[b]Note:[/b] [constant RADIANCE_SIZE_1024] is not exposed in the inspector " "as it is known to cause GPU hangs on certain systems." msgstr "" +"辐射纹理尺寸为1024×1024像素。\n" +"[b]注意:[/b] [constant RADIANCE_SIZE_1024]在检查器中没有公开,因为它在某些系" +"统上会导致GPU挂起。" #: doc/classes/Sky.xml:41 msgid "" @@ -62461,6 +63599,9 @@ msgid "" "[b]Note:[/b] [constant RADIANCE_SIZE_2048] is not exposed in the inspector " "as it is known to cause GPU hangs on certain systems." msgstr "" +"辐射纹理尺寸为2048×2048像素。\n" +"[b]注意:[/b] [constant RADIANCE_SIZE_2048]没有在检查器中公开,因为它在某些系" +"统上会导致GPU挂起。" #: doc/classes/Sky.xml:45 msgid "Represents the size of the [enum RadianceSize] enum." @@ -62476,6 +63617,9 @@ msgid "" "[b]Note:[/b] The [signal Range.changed] and [signal Range.value_changed] " "signals are part of the [Range] class which this class inherits from." msgstr "" +"GUI滑块的基类。\n" +"[b]注意:[/b] [signal Range.changed]和[signal Range.value_changed]信号是该类" +"继承的[Range]类的一部分。" #: doc/classes/Slider.xml:16 msgid "" @@ -62502,15 +63646,13 @@ msgid "" msgstr "如果 [code]true[/code],滑块将显示最小值和最大值的刻度。" #: doc/classes/SliderJoint.xml:4 -#, fuzzy msgid "Slider between two PhysicsBodies in 3D." -msgstr "3D 中两个物体之间的活塞式滑块。" +msgstr "在3D中两个物理体之间的滑块。" #: doc/classes/SliderJoint.xml:7 -#, fuzzy msgid "" "Slides across the X axis of the pivot object. See also [Generic6DOFJoint]." -msgstr "在中心对象的 X 轴上滑动。" +msgstr "在枢轴对象的X轴上滑动。参阅[Generic6DOFJoint]。" #: doc/classes/SliderJoint.xml:28 msgid "" @@ -62574,7 +63716,8 @@ msgstr "" #: doc/classes/SoftBody.xml:10 msgid "https://docs.godotengine.org/en/3.4/tutorials/physics/soft_body.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/physics/soft_body.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/physics/soft_body.html" #: doc/classes/SoftBody.xml:44 msgid "Returns local translation of a vertex in the surface array." @@ -62612,7 +63755,7 @@ msgstr "" "并不是可视化的。一个可碰撞物体可以使用这些层来选择它可以与哪些物体碰撞,使用" "collision_mask属性。\n" "如果对象A在对象B所扫描的任何层中,或者对象B在对象A所扫描的任何层中,就会检测" -"到接触。更多信息请参阅文档中的[url=https://docs.godotengine.org/en/3.4/" +"到接触。更多信息请参阅文档中的[url=https://docs.godotengine.org/zh_CN/stable/" "tutorials/physics/physics_introduction.html#collision-layers-and-masks]碰撞层" "和掩码[/url]。" @@ -62623,25 +63766,25 @@ msgid "" "layers-and-masks]Collision layers and masks[/url] in the documentation for " "more information." msgstr "" +"此软体扫描碰撞的物理层。更多信息请参阅文档中的[url=https://docs.godotengine." +"org/zh_CN/stable/tutorials/physics/physics_introduction.html#collision-" +"layers-and-masks]碰撞层和掩码[/url]。" #: doc/classes/SoftBody.xml:105 -#, fuzzy msgid "[NodePath] to a [CollisionObject] this SoftBody should avoid clipping." -msgstr "[NodePath] 到 [CollisionObject3D] 此 SoftBody3D 应避免剪裁。" +msgstr "[NodePath]到[CollisionObject],这个软体应该避免剪裁。" #: doc/classes/SoftBody.xml:108 -#, fuzzy msgid "" "If [code]true[/code], the [SoftBody] is simulated in physics. Can be set to " "[code]false[/code] to pause the physics simulation." msgstr "" -"如果[code]true[/code],触摸的状态为按下。如果[code]false[/code],触摸的状态被" -"释放。" +"如果[code]true[/code],[SoftBody]会物理模拟。可以设置为[code]false[/code]来暂" +"停物理模拟。" #: doc/classes/SoftBody.xml:115 -#, fuzzy msgid "If [code]true[/code], the [SoftBody] will respond to [RayCast]s." -msgstr "如果 [code]true[/code],则 [SoftBody3D] 将响应 [RayCast3D]。" +msgstr "如果[code]true[/code],则 [SoftBody] 将响应 [RayCast]。" #: doc/classes/SoftBody.xml:118 msgid "" @@ -62658,7 +63801,6 @@ msgid "Most basic 3D game object, parent of all 3D-related nodes." msgstr "最基本的3D游戏对象,所有与3D节点相关的父节点。" #: doc/classes/Spatial.xml:7 -#, fuzzy msgid "" "Most basic 3D game object, with a 3D [Transform] and visibility settings. " "All other 3D game objects inherit from Spatial. Use [Spatial] as a parent " @@ -62674,20 +63816,21 @@ msgid "" "to radians, use [method @GDScript.deg2rad]." msgstr "" "最基本的3D游戏对象,具有3D[Transform]和可见性设置。所有其他的3D游戏对象都继承" -"自Node3D。使用[Node3D]作为父节点,在3D项目中移动、缩放、旋转和显示/隐藏子节" +"自空间。使用[Spatial]作为父节点,在3D项目中移动、缩放、旋转和显示/隐藏子节" "点。\n" -"除非[Node3D]对象被设置为顶层,否则平差操作(旋转、缩放、平移)会在父节点的本" -"地坐标系中进行。在这个坐标系中的仿射操作对应于对[Node3D]的变换的直接仿射操" -"作。下面的本地一词指的是这个坐标系。附加到[Node3D]对象本身的坐标系被称为对象-" -"本地坐标系。\n" +"除非[Spatial]对象被设置为顶层,否则仿射操作(旋转、缩放、平移)会在父节点的本" +"地坐标系中进行。在这个坐标系中的仿射操作对应于对[Spatial]变换的直接仿射运算。" +"下面的本地一词指的是局部坐标系。附加到[Spatial]对象本身的坐标系被称为对象-本" +"地坐标系。\n" "[b]注意:[/b]除非另有规定,所有有角度参数的方法必须将角度指定为[i]弧度[/i]。" -"要将度数转换为弧度,请使用[method @GDScript.deg2rad]。" +"使用[method @GDScript.deg2rad]将度数转换为弧度。" #: doc/classes/Spatial.xml:12 msgid "" "https://docs.godotengine.org/en/3.4/tutorials/3d/introduction_to_3d.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/3d/introduction_to_3d.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/3d/introduction_to_3d." +"html" #: doc/classes/Spatial.xml:13 doc/classes/Vector3.xml:16 msgid "https://github.com/godotengine/godot-demo-projects/tree/master/3d" @@ -62733,11 +63876,11 @@ msgid "" msgstr "禁用该节点的渲染。它将[member visible]改为[code]false[/code]。" #: doc/classes/Spatial.xml:65 -#, fuzzy msgid "" "Returns whether node notifies about its local transformation changes. " "[Spatial] will not propagate this by default." -msgstr "返回节点是否通知其局部变换的变化。[Node3D]默认情况下不会对其进行通知。" +msgstr "" +"返回节点是否通知其局部变换的变化。[Spatial]默认情况下不会对此进行传播。" #: doc/classes/Spatial.xml:71 msgid "" @@ -62752,12 +63895,12 @@ msgid "" msgstr "返回该节点是否被设置为Toplevel,也就是是否忽略其父节点的变换。" #: doc/classes/Spatial.xml:83 -#, fuzzy msgid "" "Returns whether the node notifies about its global and local transformation " "changes. [Spatial] will not propagate this by default." msgstr "" -"返回节点是否通知其全局和局部的变换变化。[Node3D]默认情况下不会传播这个。" +"返回节点是否通知其全局和局部的变换变化。默认情况下,[Spatial]不会对此进行传" +"播。" #: doc/classes/Spatial.xml:97 msgid "" @@ -62851,20 +63994,20 @@ msgid "" msgstr "设置节点是否忽略其转换(全局或局部)改变的通知。" #: doc/classes/Spatial.xml:192 -#, fuzzy msgid "" "Sets whether the node notifies about its local transformation changes. " "[Spatial] will not propagate this by default." -msgstr "设置节点是否通知其本地转换更改。[ Node3D ]默认情况下不会传播此更改。" +msgstr "" +"设置节点是否通知它的局部变换变化。默认情况下,[Spatial]不会传播这一点。" #: doc/classes/Spatial.xml:199 -#, fuzzy msgid "" "Sets whether the node notifies about its global and local transformation " "changes. [Spatial] will not propagate this by default, unless it is in the " "editor context and it has a valid gizmo." msgstr "" -"设置节点是否通知其全局和本地转换更改。[ Node3D ]默认情况下不会传播此更改。" +"设置节点是否通知其全局和局部变换的变化。[Spatial]默认情况下不会传播,除非是在" +"编辑器上下文中,并且它有一个有效的gizmo。" #: doc/classes/Spatial.xml:205 msgid "" @@ -62903,23 +64046,20 @@ msgid "" msgstr "通过给定的偏移量[Vector3]改变节点在局部空间中的位置。" #: doc/classes/Spatial.xml:240 -#, fuzzy msgid "Updates the [SpatialGizmo] of this node." -msgstr "更新该节点的[Node3DGizmo]。" +msgstr "更新该节点的[SpatialGizmo]。" #: doc/classes/Spatial.xml:246 -#, fuzzy msgid "" "The [SpatialGizmo] for this node. Used for example in [EditorSpatialGizmo] " "as custom visualization and editing handles in Editor." msgstr "" -"这个节点的[Node3DGizmo]。例如在[EditorNode3DGizmo]中作为自定义可视化和编辑句" -"柄使用。" +"此节点的 [SpatialGizmo]。例如在 [EditorSpatialGizmo] 中用作编辑器中的自定义可" +"视化和编辑手柄。" #: doc/classes/Spatial.xml:249 -#, fuzzy msgid "World space (global) [Transform] of this node." -msgstr "这个节点的World3D空间(全局)[Transform]。" +msgstr "此节点的世界空间(全局)[Transform]。" #: doc/classes/Spatial.xml:252 msgid "" @@ -62971,20 +64111,19 @@ msgstr "" msgid "" "Emitted by portal system gameplay monitor when a node enters the gameplay " "area." -msgstr "" +msgstr "当节点进入游戏区域时由入口系统游戏监视器触发。" #: doc/classes/Spatial.xml:279 msgid "" "Emitted by portal system gameplay monitor when a node exits the gameplay " "area." -msgstr "" +msgstr "当节点退出游戏区域时,由界面系统的游戏监视器触发。" #: doc/classes/Spatial.xml:284 msgid "Emitted when node visibility changes." msgstr "当节点可见性更改时触发。" #: doc/classes/Spatial.xml:290 -#, fuzzy msgid "" "Spatial nodes receives this notification when their global transform " "changes. This means that either the current or a parent node changed its " @@ -62993,41 +64132,39 @@ 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 "" -"当Node3D节点的全局变换发生变化时,会收到这个通知。这意味着当前节点或父节点改" -"变了它的变换。\n" -"为了使[constant NOTIFICATION_TRANSFORM_CHANGED]发挥作用,用户首先需要通过" -"[method set_notify_transform]来要求它。" +"当空间节点的全局变换发生变化时,空间节点会收到这个通知。这意味着当前节点或父" +"节点改变了它的变换。\n" +"为了使[constant NOTIFICATION_TRANSFORM_CHANGED]生效,用户首先需要用[method " +"set_notify_transform]发送请求。如果节点是在编辑器的上下文中,并且它有一个有效" +"的gizmo,那么该通知也会被发送。" #: doc/classes/Spatial.xml:294 -#, fuzzy msgid "" "Spatial nodes receives this notification when they are registered to new " "[World] resource." -msgstr "当Node3D节点被注册到新的[World3D]资源时,它们会收到这个通知。" +msgstr "空间节点在注册到新的 [World] 资源时会收到此通知。" #: doc/classes/Spatial.xml:297 -#, fuzzy msgid "" "Spatial nodes receives this notification when they are unregistered from " "current [World] resource." -msgstr "当Node3D节点从当前[World3D]资源中取消注册时,它们会收到这个通知。" +msgstr "当空间节点从当前的 [World] 资源中取消注册时,它们会收到此通知。" #: doc/classes/Spatial.xml:300 -#, fuzzy msgid "Spatial nodes receives this notification when their visibility changes." -msgstr "当Node3D节点的可见性发生变化时,会收到这个通知。" +msgstr "空间节点在其可见性发生变化时会收到此通知。" #: doc/classes/Spatial.xml:303 msgid "" "Spatial nodes receives this notification if the portal system gameplay " "monitor detects they have entered the gameplay area." -msgstr "" +msgstr "如果门户系统游戏监视器检测到它们已进入游戏区域,空间节点会收到此通知。" #: doc/classes/Spatial.xml:306 msgid "" "Spatial nodes receives this notification if the portal system gameplay " "monitor detects they have exited the gameplay area." -msgstr "" +msgstr "如果门户系统游戏监视器检测到它们已退出游戏区域,空间节点会收到此通知。" #: doc/classes/SpatialMaterial.xml:4 msgid "Default 3D rendering material." @@ -63044,7 +64181,8 @@ msgstr "" #: doc/classes/SpatialMaterial.xml:10 msgid "https://docs.godotengine.org/en/3.4/tutorials/3d/spatial_material.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/3d/spatial_material.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/3d/spatial_material.html" #: doc/classes/SpatialMaterial.xml:17 msgid "Returns [code]true[/code], if the specified [enum Feature] is enabled." @@ -63064,19 +64202,17 @@ msgid "" msgstr "返回与指定的 [enum TextureParam] 关联的 [Texture]。" #: doc/classes/SpatialMaterial.xml:39 -#, fuzzy msgid "" "If [code]true[/code], enables the specified [enum Feature]. Many features " "that are available in [SpatialMaterial]s need to be enabled before use. This " "way the cost for using the feature is only incurred when specified. Features " "can also be enabled by setting the corresponding member to [code]true[/code]." msgstr "" -"如果为 [code]true[/code],启用指定的 [enum Feature]。很多在 [BaseMaterial3D] " -"中可以使用的特性都需要在使用前启用。这样该特性的成本只有在指定时才会产生。也" -"可以通过将相应的成员设置为 [code]true[/code] 来启用特征。" +"如果 [code]true[/code],则启用指定的 [enum Feature]。 [SpatialMaterial]s 中可" +"用的许多功能需要在使用前启用。这样,只有在指定时才会产生使用该功能的成本。也" +"可以通过将相应的成员设置为 [code]true[/code] 来启用功能。" #: doc/classes/SpatialMaterial.xml:47 -#, fuzzy msgid "" "If [code]true[/code], enables the specified flag. Flags are optional " "behaviour that can be turned on and off. Only one flag can be enabled at a " @@ -63085,16 +64221,18 @@ msgid "" "setting the corresponding member to [code]true[/code]. See [enum Flags] " "enumerator for options." msgstr "" -"如果 [code]true[/code],启用指定的标志。标志是可选的行为,可以打开和关闭。使" +"如果 [code]true[/code],则启用指定的标志。标志是可以打开和关闭的可选行为。使" "用该函数一次只能启用一个标志,不能将标志枚举器进行位掩码,以一次启用或禁用多" -"个标志。也可以通过将相应的成员设置为[code]true[/code]来启用标志。选项参阅 " -"[enum Flags] 枚举器。" +"个标志。也可以通过将相应成员设置为 [code]true[/code] 来启用标志。有关选项,请" +"参阅 [enum Flags] 枚举器。" #: doc/classes/SpatialMaterial.xml:55 msgid "" "Sets the [Texture] to be used by the specified [enum TextureParam]. This " "function is called when setting members ending in [code]*_texture[/code]." msgstr "" +"设置指定的 [enum TextureParam] 所使用的 [Texture]。该函数在设置以 " +"[code]*_texture[/code] 结尾的成员时调用。" #: doc/classes/SpatialMaterial.xml:61 msgid "The material's base color." @@ -63178,7 +64316,6 @@ msgid "" msgstr "设置清漆效果的强度。设置为 [code]0[/code] 与禁用清漆效果相同。" #: doc/classes/SpatialMaterial.xml:94 -#, fuzzy msgid "" "If [code]true[/code], clearcoat rendering is enabled. Adds a secondary " "transparent pass to the lighting calculation resulting in an added specular " @@ -63187,9 +64324,11 @@ msgid "" "[b]Note:[/b] Clearcoat rendering is not visible if the material has [member " "flags_unshaded] set to [code]true[/code]." msgstr "" -"如果[code]true[/code],则启用透明涂层渲染。在光照计算中添加一个二级透明通道," -"从而产生一个额外的镜面斑点。这使得材质看起来好像有一个透明层,可以是光滑或粗" -"糙的。" +"如果 [code]true[/code],则启用清漆渲染。在照明计算中添加二级透明通路,从而导" +"致添加镜面反射斑点。这使得材料看起来好像有一层透明层,可以是有光泽的也可以是" +"粗糙的。\n" +"[b]注意:[/b]如果材质将 [member flags_unshaded] 设置为 [code]true[/code],则" +"透明涂层渲染不可见。" #: doc/classes/SpatialMaterial.xml:98 msgid "" @@ -63214,6 +64353,8 @@ msgid "" "along the view ray to determine occlusion and parrallax. This can be very " "performance demanding, but results in more realistic looking depth mapping." msgstr "" +"如果 [code]true[/code],着色器将在沿视图射线的多个点上读取深度纹理以确定遮挡" +"和视差。这可能对性能要求很高,但会产生更逼真的深度映射。" #: doc/classes/SpatialMaterial.xml:107 msgid "" @@ -63223,6 +64364,10 @@ msgid "" "the same material. The value of [member depth_enabled] will be ignored if " "[member uv1_triplanar] is enabled." msgstr "" +"如果 [code]true[/code],则启用深度映射(也称为“视差映射”或“高度映射”)。另见 " +"[member normal_enabled]。\n" +"[b]注意:[/b]如果在同一材质上使用三平面贴图,则不支持深度贴图。如果启用 " +"[member uv1_triplanar],则 [member depth_enabled] 的值将被忽略。" #: doc/classes/SpatialMaterial.xml:111 msgid "" @@ -63230,6 +64375,8 @@ msgid "" "the depth effect. This may be necessary if you have encoded your binormals " "in a way that is conflicting with the depth effect." msgstr "" +"如果 [code]true[/code],则在深度效果中使用之前会翻转副法线的方向。如果你对你" +"的副法线的编码方式与深度效果有冲突,这可能是必要的。" #: doc/classes/SpatialMaterial.xml:114 msgid "" @@ -63237,6 +64384,8 @@ msgid "" "the depth effect. This may be necessary if you have encoded your tangents in " "a way that is conflicting with the depth effect." msgstr "" +"如果 [code]true[/code],切线方向在深度效果中使用前会翻转。如果你对切线的编码" +"方式与深度效果有冲突,这可能是必要的。" #: doc/classes/SpatialMaterial.xml:117 msgid "" @@ -63245,6 +64394,8 @@ msgid "" "will be more performance demanding while a lower number may not look as " "crisp." msgstr "" +"使用 [member depth_deep_parallax] 且视图方向垂直于对象表面时使用的层数。较高" +"的数字对性能的要求更高,而较低的数字可能看起来不那么清晰。" #: doc/classes/SpatialMaterial.xml:120 msgid "" @@ -63252,17 +64403,19 @@ msgid "" "direction is parallel to the surface of the object. A higher number will be " "more performance demanding while a lower number may not look as crisp." msgstr "" +"使用 [member depth_deep_parallax] 且视图方向平行于对象表面时使用的层数。较高" +"的数字对性能的要求更高,而较低的数字可能看起来不那么清晰。" #: doc/classes/SpatialMaterial.xml:123 msgid "" "Scales the depth offset effect. A higher number will create a larger depth." -msgstr "" +msgstr "缩放深度偏移效果。更高的数字将创建更大的深度。" #: doc/classes/SpatialMaterial.xml:126 msgid "" "Texture used to determine depth at a given pixel. Depth is always stored in " "the red channel." -msgstr "" +msgstr "用来确定某个像素深度的纹理。深度总是存储在红色通道中。" #: doc/classes/SpatialMaterial.xml:129 msgid "Texture that specifies the color of the detail overlay." @@ -63324,6 +64477,11 @@ msgid "" "and will fully disappear once it reaches [code]distance_fade_min_distance[/" "code]." msgstr "" +"物体看起来完全不透明的距离。\n" +"[b]注意:[/b]如果 [code]distance_fade_max_distance[/code] 小于 " +"[code]distance_fade_min_distance[/code],则行为相反。物体将在 " +"[code]distance_fade_max_distance[/code] 处开始逐渐消失,并在到达 " +"[code]distance_fade_min_distance[/code] 时完全消失。" #: doc/classes/SpatialMaterial.xml:152 msgid "" @@ -63335,6 +64493,11 @@ msgid "" "and will fully disappear once it reaches [code]distance_fade_min_distance[/" "code]." msgstr "" +"物体开始变得可见的距离。如果物体的距离小于这个距离,它将是不可见的。\n" +"[b]注意:[/b]如果 [code]distance_fade_min_distance[/code] 大于 " +"[code]distance_fade_max_distance[/code],则行为将相反。物体将在 " +"[code]distance_fade_max_distance[/code] 处开始逐渐消失,并在到达 " +"[code]distance_fade_min_distance[/code] 时完全消失。" #: doc/classes/SpatialMaterial.xml:156 msgid "" @@ -63347,15 +64510,15 @@ msgid "The emitted light's color. See [member emission_enabled]." msgstr "发出的光的颜色。参阅[member emission_enabled]。" #: doc/classes/SpatialMaterial.xml:162 -#, fuzzy msgid "" "If [code]true[/code], the body emits light. Emitting light makes the object " "appear brighter. The object can also cast light on other objects if a " "[GIProbe] or [BakedLightmap] is used and this object is used in baked " "lighting." msgstr "" -"如果[code]true[/code],则物体会发出光。发光会使物体显得更亮。如果使用了" -"[GIProbe],并且该物体在烘焙照明中使用,那么该物体也可以向其他物体投光。" +"如果 [code]true[/code],物体会发光。发光使物体看起来更亮。如果使用 [GIProbe] " +"或 [BakedLightmap] 并且此对象用于烘焙照明,则该对象还可以将光投射到其他对象" +"上。" #: doc/classes/SpatialMaterial.xml:165 msgid "The emitted light's strength. See [member emission_enabled]." @@ -63399,6 +64562,8 @@ msgid "" "the normal stays correct when using a non-uniform scale. Only enable if " "using non-uniform scaling." msgstr "" +"如果 [code]true[/code],着色器将计算额外的操作,以确保在使用非均匀比例时法线" +"保持正确。仅在使用非均匀缩放时启用。" #: doc/classes/SpatialMaterial.xml:189 msgid "" @@ -63419,9 +64584,8 @@ msgid "" msgstr "如果[code]true[/code],则启用物体的透明度。参阅[member blend_mode]。" #: doc/classes/SpatialMaterial.xml:198 -#, fuzzy msgid "If [code]true[/code], the object is unaffected by lighting." -msgstr "如果[code]true[/code],则对象不接收环境光。" +msgstr "如果 [code]true[/code],则物体不受光照影响。" #: doc/classes/SpatialMaterial.xml:201 msgid "" @@ -63449,15 +64613,16 @@ msgid "" "If [code]true[/code], lighting is calculated per vertex rather than per " "pixel. This may increase performance on low-end devices." msgstr "" +"如果 [code]true[/code],则按顶点而不是按像素计算光照。这可能会提高低端设备的" +"性能。" #: doc/classes/SpatialMaterial.xml:211 -#, fuzzy msgid "" "If [code]true[/code], triplanar mapping is calculated in world space rather " "than object local space. See also [member uv1_triplanar]." msgstr "" -"如果 [code]true[/code],[code]UV[/code]的三平面贴图是在世界空间而不是对象局部" -"空间计算的。另请参阅 [member uv1_triplanar]。" +"如果 [code]true[/code],则在世界空间而不是物体局部空间中计算三平面映射。另见 " +"[member uv1_triplanar]。" #: doc/classes/SpatialMaterial.xml:214 msgid "" @@ -63516,7 +64681,6 @@ msgid "The strength of the normal map's effect." msgstr "法线贴图的效果强度。" #: doc/classes/SpatialMaterial.xml:233 -#, fuzzy msgid "" "Texture used to specify the normal at a given pixel. The " "[code]normal_texture[/code] only uses the red and green channels; the blue " @@ -63533,27 +64697,30 @@ msgid "" "Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for " "a comparison of normal map coordinates expected by popular engines." msgstr "" -"纹理用于指定给定像素的法线。[code]normal_texture[/code] 只使用红色和绿色通" -"道。从[code]normal_texture[/code]读取的法线是围绕[Mesh]提供的表面法线的。\n" -"[b]注意:[/b] Godot希望法线图使用X+、Y-和Z+坐标。参阅[url=http://wiki." -"polycount.com/wiki/" -"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url],以了" -"解流行引擎所期望的法线图坐标的比较。" +"用来指定像素点的法线的纹理。[code]normal_texture[/code]只使用红色和绿色通道," +"忽略蓝色和alpha通道。从 [code]normal_texture[/code] 读取的法线围绕 [Mesh] 提" +"供的表面法线定向。\n" +"[b]注意:[/b] Mesh必须在其顶点数据中同时定义法线和切线。否则,法线贴图将无法" +"正确渲染,会出现整个表面变暗的情况。如果用[SurfaceTool]创建几何体,可以使用" +"[method SurfaceTool.generate_normals]和[method SurfaceTool.generate_tangents]" +"来分别自动生成法线和切线。\n" +"[b]注意:[/b] Godot希望法线贴图使用X+、Y-和Z+坐标。请参阅[url=http://wiki." +"polycount.com/wiki/Normal_Map_Technical_Details#Common_Swizzle_Coordinates]该" +"页[/url],了解流行引擎所期望的法线贴图坐标的比较。" #: doc/classes/SpatialMaterial.xml:238 msgid "Threshold at which the alpha scissor will discard values." msgstr "alpha scissor 会丢弃数值的阈值。" #: doc/classes/SpatialMaterial.xml:241 -#, fuzzy msgid "" "If [code]true[/code], the shader will keep the scale set for the mesh. " "Otherwise the scale is lost when billboarding. Only applies when [member " "params_billboard_mode] is [constant BILLBOARD_ENABLED]." msgstr "" -"如果 [code]true[/code],着色器将保持为网格设置的比例。否则,在做广告牌时,比" -"例尺会丢失。只有当 [member billboard_mode] 为 [constant BILLBOARD_ENABLED] 时" -"才适用。" +"如果 [code]true[/code],着色器将保持为网格缩放设置。否则,当做广告牌时,缩放" +"会丢失。仅在 [member params_billboard_mode] 为 [constant BILLBOARD_ENABLED] " +"时适用。" #: doc/classes/SpatialMaterial.xml:244 msgid "" @@ -63563,6 +64730,10 @@ msgid "" "head instead of on the table. See [url=https://github.com/godotengine/godot/" "issues/41567]GitHub issue #41567[/url] for details." msgstr "" +"控制对象如何面向摄像机。参阅[enum BillboardMode]。\n" +"[b]注意:[/b] 广告牌模式不适合VR,因为当屏幕贴在你的头部而不是在桌子上时,摄" +"像机的左右向量不是水平的。参阅[url=https://github.com/godotengine/godot/" +"issues/41567]GitHub issue #41567[/url]。" #: doc/classes/SpatialMaterial.xml:248 msgid "" @@ -63581,39 +64752,36 @@ msgid "" msgstr "渲染背面时,不绘制对象的哪一面。参阅 [enum CullMode]。" #: doc/classes/SpatialMaterial.xml:255 -#, fuzzy msgid "" "Determines when depth rendering takes place. See [enum DepthDrawMode]. See " "also [member flags_transparent]." msgstr "" -"确定何时进行深度渲染。参阅 [enum DepthDrawMode]。也请参阅 [member " -"transparency]。" +"确定深度渲染发生的时间。请参阅深度绘制模式 [enum DepthDrawMode] 。另见" +"[member flags_transparent]。" #: doc/classes/SpatialMaterial.xml:258 msgid "" "The algorithm used for diffuse light scattering. See [enum DiffuseMode]." -msgstr "用于漫射光散射的算法。参阅[enum DiffuseMode]。" +msgstr "用于漫反射光散射的算法。参见 [enum DiffuseMode]。" #: doc/classes/SpatialMaterial.xml:261 -#, fuzzy msgid "" "If [code]true[/code], enables the vertex grow setting. See [member " "params_grow_amount]." -msgstr "如果[code]true[/code],启用顶点生长设置。参阅[member grow_amount]。" +msgstr "" +"如果[code]true[/code],启用顶点生长设置。参见[member params_grow_amount]。" #: doc/classes/SpatialMaterial.xml:264 msgid "Grows object vertices in the direction of their normals." msgstr "沿着法线的方向生长对象顶点。" #: doc/classes/SpatialMaterial.xml:267 -#, fuzzy msgid "Currently unimplemented in Godot." -msgstr "目前在 Godot 3.x 中未实现。" +msgstr "目前在 Godot 中未实现。" #: doc/classes/SpatialMaterial.xml:270 -#, fuzzy msgid "The point size in pixels. See [member flags_use_point_size]." -msgstr "点的大小,单位为像素。参阅[member use_point_size]。" +msgstr "点的大小,以像素为单位。参见[member flags_use_point_size]。" #: doc/classes/SpatialMaterial.xml:273 msgid "The method for rendering the specular blob. See [enum SpecularMode]." @@ -63624,35 +64792,34 @@ msgid "" "If [code]true[/code], the shader will discard all pixels that have an alpha " "value less than [member params_alpha_scissor_threshold]." msgstr "" +"如果[code]true[/code],着色器将丢弃所有alpha值小于[member " +"params_alpha_scissor_threshold]的像素。" #: doc/classes/SpatialMaterial.xml:279 -#, fuzzy msgid "" "The number of horizontal frames in the particle sprite sheet. Only enabled " "when using [constant BILLBOARD_PARTICLES]. See [member " "params_billboard_mode]." msgstr "" -"粒子精灵表的水平帧数。仅当使用[constant BILLBOARD_PARTICLES]时启用。参阅" -"[member billboard_mode]。" +"粒子精灵表中的水平帧数。仅在使用 [constant BILLBOARD_PARTICLES] 时启用。参阅" +"[member params_billboard_mode]。" #: doc/classes/SpatialMaterial.xml:282 -#, fuzzy msgid "" "If [code]true[/code], particle animations are looped. Only enabled when " "using [constant BILLBOARD_PARTICLES]. See [member params_billboard_mode]." msgstr "" -"如果[code]true[/code],则循环播放粒子动画。仅当使用[constant " -"BILLBOARD_PARTICLES]时启用。参阅[member billboard_mode]。" +"如果 [code]true[/code],循环粒子动画。仅在使用 [constant " +"BILLBOARD_PARTICLES] 时启用。参阅[member params_billboard_mode]。" #: doc/classes/SpatialMaterial.xml:285 -#, fuzzy msgid "" "The number of vertical frames in the particle sprite sheet. Only enabled " "when using [constant BILLBOARD_PARTICLES]. See [member " "params_billboard_mode]." msgstr "" -"粒子精灵表的垂直帧数。仅当使用[constant BILLBOARD_PARTICLES]时启用。参阅" -"[member billboard_mode]。" +"粒子精灵表中的垂直帧数。仅在使用 [constant BILLBOARD_PARTICLES] 时启用。参阅" +"[member params_billboard_mode]。" #: doc/classes/SpatialMaterial.xml:288 msgid "" @@ -63675,12 +64842,15 @@ msgid "" "backend, the material's roughness value will affect the blurriness of the " "refraction. Higher roughness values will make the refraction look blurrier." msgstr "" +"如果[code]true[/code],则启用折射效果。折射是根据来自物体后面的光线来扭曲透明" +"度的。当使用GLES3后端时,材质的粗糙度值会影响折射的模糊度。较高的粗糙度值会使" +"折射看起来更模糊。" #: doc/classes/SpatialMaterial.xml:297 msgid "" "The strength of the refraction effect. Higher values result in a more " "distorted appearance for the refraction." -msgstr "" +msgstr "折射效果的强度。较高的值会使折射的表现更加扭曲。" #: doc/classes/SpatialMaterial.xml:300 msgid "" @@ -63689,7 +64859,6 @@ msgid "" msgstr "控制每个像素折射强度的纹理。乘以[member refraction_scale]。" #: doc/classes/SpatialMaterial.xml:303 -#, fuzzy msgid "" "Specifies the channel of the [member refraction_texture] in which the " "refraction information is stored. This is useful when you store the " @@ -63697,23 +64866,25 @@ msgid "" "stored metallic in the red channel, roughness in the blue, and ambient " "occlusion in the green you could reduce the number of textures you use." msgstr "" -"指定存储金属信息的 [member metallic_texture] 的通道。当您在一个纹理中存储多个" -"效果的信息时,这很有用。例如,如果您将金属效果存储在红色通道中,将粗糙度存储" -"在蓝色通道中,将环境遮挡存储在绿色通道中,就可以减少您使用的纹理数量。" +"指定存储折射信息的[member refraction_texture]的通道。当你在纹理中存储多种效果" +"的信息时,这很有用。例如,如果你在红色通道中存储金属效果,在蓝色通道中存储粗" +"糙度,在绿色通道中存储环境遮挡,就可以减少使用纹理的数量。" #: doc/classes/SpatialMaterial.xml:306 msgid "Sets the strength of the rim lighting effect." msgstr "设置边缘照明效果的强度。" #: doc/classes/SpatialMaterial.xml:309 -#, fuzzy msgid "" "If [code]true[/code], rim effect is enabled. Rim lighting increases the " "brightness at glancing angles on an object.\n" "[b]Note:[/b] Rim lighting is not visible if the material has [member " "flags_unshaded] set to [code]true[/code]." msgstr "" -"如果[code]true[/code],则启用边缘效果。边框照明会增加物体上的斜角亮度。" +"如果 [code]true[/code],则启用边缘效果。边缘照明增加了物体上掠过角度的亮" +"度。\n" +"[b]注意:[/b] 如果材质将 [member flags_unshaded] 设置为 [code]true[/code],则" +"边缘光照不可见。" #: doc/classes/SpatialMaterial.xml:313 msgid "" @@ -63766,23 +64937,20 @@ msgstr "" "subsurf_scatter_strength]。" #: doc/classes/SpatialMaterial.xml:337 -#, fuzzy msgid "" "The color used by the transmission effect. Represents the light passing " "through an object." -msgstr "背光效果使用的颜色。表示穿过物体的光线。" +msgstr "传输效果使用的颜色。表示穿过物体的光。" #: doc/classes/SpatialMaterial.xml:340 -#, fuzzy msgid "If [code]true[/code], the transmission effect is enabled." -msgstr "如果为[code]true[/code],则启用glow效果。" +msgstr "如果 [code]true[/code],则启用传输效果。" #: doc/classes/SpatialMaterial.xml:343 -#, fuzzy msgid "" "Texture used to control the transmission effect per-pixel. Added to [member " "transmission]." -msgstr "用于控制每个像素的背光效果的纹理。添加到 [member backlight]。" +msgstr "纹理用于控制每个像素的传输效果。添加到[member transmission]。" #: doc/classes/SpatialMaterial.xml:346 msgid "" @@ -63910,18 +65078,16 @@ msgid "Texture specifying per-pixel ambient occlusion value." msgstr "指定每个像素环境遮挡值的纹理。" #: doc/classes/SpatialMaterial.xml:405 -#, fuzzy msgid "Texture specifying per-pixel depth." -msgstr "指定每个像素高度的纹理。" +msgstr "指定每个像素深度的纹理。" #: doc/classes/SpatialMaterial.xml:408 msgid "Texture specifying per-pixel subsurface scattering." msgstr "指定每个像素的亚表面散射的纹理。" #: doc/classes/SpatialMaterial.xml:411 -#, fuzzy msgid "Texture specifying per-pixel transmission color." -msgstr "指定每个像素发射颜色的纹理。" +msgstr "指定每个像素传输颜色的纹理。" #: doc/classes/SpatialMaterial.xml:414 msgid "Texture specifying per-pixel refraction strength." @@ -63952,9 +65118,8 @@ msgid "Use [code]UV2[/code] with the detail texture." msgstr "使用[code]UV2[/code]与细节纹理。" #: doc/classes/SpatialMaterial.xml:435 -#, fuzzy msgid "Constant for setting [member flags_transparent]." -msgstr "用于设置[member ao_enabled]的常量。" +msgstr "用于设置 [member flags_transparent] 的常量。" #: doc/classes/SpatialMaterial.xml:438 msgid "Constant for setting [member emission_enabled]." @@ -63981,18 +65146,16 @@ msgid "Constant for setting [member ao_enabled]." msgstr "用于设置[member ao_enabled]的常量。" #: doc/classes/SpatialMaterial.xml:456 -#, fuzzy msgid "Constant for setting [member depth_enabled]." -msgstr "常量,用于设置[member detail_enabled]。" +msgstr "用于设置 [member depth_enabled] 的常量。" #: doc/classes/SpatialMaterial.xml:459 msgid "Constant for setting [member subsurf_scatter_enabled]." msgstr "用于设置[member subsurf_scatter_enabled]的常量。" #: doc/classes/SpatialMaterial.xml:462 -#, fuzzy msgid "Constant for setting [member transmission_enabled]." -msgstr "常量,用于设置[member emission_enabled]。" +msgstr "用于设置 [member transmission_enabled] 的常量。" #: doc/classes/SpatialMaterial.xml:465 msgid "Constant for setting [member refraction_enabled]." @@ -64036,7 +65199,7 @@ msgstr "没有深度的绘制。" msgid "" "For transparent objects, an opaque pass is made first with the opaque parts, " "then transparency is drawn." -msgstr "" +msgstr "对于透明对象,首先对不透明部分进行不透明传递,然后绘制透明度。" #: doc/classes/SpatialMaterial.xml:498 msgid "Default cull mode. The back of the object is culled when not visible." @@ -64054,13 +65217,15 @@ msgstr "不进行剔除。" msgid "" "No lighting is used on the object. Color comes directly from [code]ALBEDO[/" "code]." -msgstr "" +msgstr "物体上不使用照明。颜色直接来自 [code]ALBEDO[/code]。" #: doc/classes/SpatialMaterial.xml:510 msgid "" "Lighting is calculated per-vertex rather than per-pixel. This can be used to " "increase the speed of the shader at the cost of quality." msgstr "" +"光照是按顶点计算的,而不是按像素计算。这可用于以牺牲质量为代价提高着色器的速" +"度。" #: doc/classes/SpatialMaterial.xml:513 msgid "" @@ -64075,11 +65240,10 @@ msgid "Set [code]ALBEDO[/code] to the per-vertex color specified in the mesh." msgstr "将 [code]ALBEDO[/code] 设置为网格中指定的每顶点颜色。" #: doc/classes/SpatialMaterial.xml:519 -#, fuzzy msgid "" "Vertex color is in sRGB space and needs to be converted to linear. Only " "applies in the GLES3 renderer." -msgstr "顶点颜色在sRGB空间,需要转换为线性颜色。仅适用于Vulkan渲染器。" +msgstr "顶点颜色在sRGB空间,需要转成线性。仅适用于 GLES3 渲染器。" #: doc/classes/SpatialMaterial.xml:522 msgid "" @@ -64096,14 +65260,13 @@ msgid "" msgstr "按深度缩放对象,使其在屏幕上显示的大小始终相同。" #: doc/classes/SpatialMaterial.xml:528 -#, fuzzy msgid "" "Shader will keep the scale set for the mesh. Otherwise the scale is lost " "when billboarding. Only applies when [member params_billboard_mode] is " "[constant BILLBOARD_ENABLED]." msgstr "" -"Shader会保持网格的比例设置。否则,在做广告牌时,比例尺会丢失。只有当[member " -"billboard_mode]为[constant BILLBOARD_ENABLED]时,才适用。" +"着色器将保持为网格的缩放设置。否则,当做广告牌时,缩放会丢失。仅在 [member " +"params_billboard_mode] 为 [constant BILLBOARD_ENABLED] 时适用。" #: doc/classes/SpatialMaterial.xml:531 msgid "" @@ -64130,13 +65293,13 @@ msgstr "使用[code]UV2[/code]坐标,从[member emission_texture]中查找。" #: doc/classes/SpatialMaterial.xml:543 msgid "Use alpha scissor. Set by [member params_use_alpha_scissor]." -msgstr "" +msgstr "使用alpha剪刀。由 [member params_use_alpha_scissor] 设置。" #: doc/classes/SpatialMaterial.xml:546 msgid "" "Use world coordinates in the triplanar texture lookup instead of local " "coordinates." -msgstr "" +msgstr "在三平面纹理查找中使用世界坐标而不是局部坐标。" #: doc/classes/SpatialMaterial.xml:549 msgid "Forces the shader to convert albedo from sRGB space to linear space." @@ -64152,7 +65315,7 @@ msgstr "禁用接收环境光。" #: doc/classes/SpatialMaterial.xml:558 msgid "Ensures that normals appear correct, even with non-uniform scaling." -msgstr "" +msgstr "确保法线显示正确,即使缩放比例不均匀。" #: doc/classes/SpatialMaterial.xml:561 msgid "Enables the shadow to opacity feature." @@ -64207,17 +65370,16 @@ msgid "The object's X axis will always face the camera." msgstr "对象的X轴将始终面向相机。" #: doc/classes/SpatialMaterial.xml:606 -#, fuzzy msgid "" "Used for particle systems when assigned to [Particles] and [CPUParticles] " "nodes. Enables [code]particles_anim_*[/code] properties.\n" "The [member ParticlesMaterial.anim_speed] or [member CPUParticles." "anim_speed] should also be set to a positive value for the animation to play." msgstr "" -"分配给 [GPUParticles3D] 和 [CPUParticles3D] 节点时,用于粒子系统。启用" +"当分配给[Particles]和[CPUParticles]节点时用于粒子系统。启用" "[code]particles_anim_*[/code]属性。\n" -"[member ParticlesMaterial.anim_speed]或[member CPUParticles3D.anim_speed]也应" -"设置为正值才能播放动画。" +"为了播放动画,[member ParticlesMaterial.anim_speed]或[member CPUParticles." +"anim_speed]也应该被设置为正值。" #: doc/classes/SpatialMaterial.xml:610 msgid "Used to read from the red channel of a texture." @@ -64309,13 +65471,12 @@ msgid "Sphere shape for 3D collisions." msgstr "用于 3D 碰撞的球形。" #: doc/classes/SphereShape.xml:7 -#, fuzzy msgid "" "Sphere shape for 3D collisions, which can be set into a [PhysicsBody] or " "[Area]. This shape is useful for modeling sphere-like 3D objects." msgstr "" -"用于3D碰撞的球体形状,可以设置成[PhysicsBody3D]或[Area3D]。这种形状对于建模类" -"似球体的三维物体很有用。" +"3D 碰撞的球体形状,可以设置为 [PhysicsBody] 或 [Area]。此形状对于模拟球状 3D " +"对象很有用。" #: doc/classes/SphereShape.xml:16 msgid "The sphere's radius. The shape's diameter is double the radius." @@ -64326,7 +65487,6 @@ msgid "Numerical input text field." msgstr "数值输入文本字段。" #: doc/classes/SpinBox.xml:7 -#, fuzzy msgid "" "SpinBox is a numerical input text field. It allows entering integers and " "floats.\n" @@ -64345,7 +65505,7 @@ msgid "" "[SpinBox]'s background, add theme items for [LineEdit] and customize them." msgstr "" "SpinBox是一个数字输入文本字段。它允许输入整数和浮点数。\n" -"[b]例如:[/b]\n" +"[b]例子:[/b]\n" "[codeblock]\n" "var spin_box = SpinBox.new()\n" "add_child(spin_box)\n" @@ -64355,7 +65515,9 @@ msgstr "" "[/codeblock]\n" "上面的代码将创建一个[SpinBox],禁用其上的上下文菜单,并将文本对齐方式设置为右" "对齐。\n" -"关于[SpinBox]的更多选项,请参阅[Range]类。" +"参阅[Range]类,以获得更多关于[SpinBox]的选项。\n" +"[b]注意:[/b] [SpinBox] 依赖于底层的[LineEdit]节点。要为[SpinBox]的背景设置主" +"题,请为[LineEdit]添加主题项,并对其进行定制。" #: doc/classes/SpinBox.xml:26 msgid "Applies the current value of this [SpinBox]." @@ -64369,6 +65531,10 @@ msgid "" "may cause a crash. If you wish to hide it or any of its children, use their " "[member CanvasItem.visible] property." msgstr "" +"返回这个[SpinBox]中的[LineEdit]实例。你可以用它来访问[LineEdit]的属性和方" +"法。\n" +"[b]警告:[/b] 这是一个必要的内部节点,移除和释放它可能会导致崩溃。如果你想隐" +"藏它或它的任何子节点,请使用其 [member CanvasItem.visible] 属性。" #: doc/classes/SpinBox.xml:39 msgid "Sets the text alignment of the [SpinBox]." @@ -64394,9 +65560,8 @@ msgid "" msgstr "在 [SpinBox] 的数值后添加指定的 [code] suffix [/code] 字符串。" #: doc/classes/SpinBox.xml:55 -#, fuzzy msgid "Sets a custom [Texture] for up and down arrows of the [SpinBox]." -msgstr "为 [SpinBox] 的上下箭头设置自定义 [Texture2D]。" +msgstr "为 [SpinBox] 的上下箭头设置自定义 [Texture]。" #: doc/classes/SplitContainer.xml:4 msgid "Container for splitting and adjusting." @@ -64470,6 +65635,13 @@ msgid "" "lights per mesh, you can increase [member ProjectSettings.rendering/limits/" "rendering/max_lights_per_object] at the cost of shader compilation times." msgstr "" +"聚光灯是一种 [Light] 节点,它在特定方向上以圆锥体的形状发光。光线在远处衰减。" +"这种衰减可以通过改变[Light]的能量、半径和衰减参数来配置。\n" +"[b]注意:[/b] 默认情况下,只有 32 个 聚光灯可以同时影响单个网格 [i] 资源 [/" +"i]。考虑将关卡拆分为多个网格,以降低超过 32 个灯光影响同一网格资源的可能性。" +"拆分水平网格也可提高视锥剔除效果,从而提高性能。如果您需要为每个网格使用更多" +"灯光,您可以增加 [member ProjectSettings.rendering/limits/rendering/" +"max_lights_per_object],以着色器编译时间为代价。" #: doc/classes/SpotLight.xml:18 msgid "The spotlight's angle in degrees." @@ -64499,7 +65671,6 @@ msgid "A helper node, mostly used in 3rd person cameras." msgstr "辅助节点,主要用于第三人称相机。" #: doc/classes/SpringArm.xml:7 -#, fuzzy msgid "" "The SpringArm node is a node that casts a ray (or collision shape) along its " "z axis and moves all its direct children to the collision point, minus a " @@ -64511,39 +65682,35 @@ msgid "" "If you use the SpringArm as a camera controller for your player, you might " "need to exclude the player's collider from the SpringArm's collision check." msgstr "" -"SpringArm3D 节点会沿其 z 轴投射一条射线(或碰撞形状)并将其所有直接子节点移动" -"到碰撞点,减去一个边距。\n" -"最常见的用例是制作一个对环境中的碰撞做出反应的第三人称相机。\n" -"SpringArm3D 将投射一条射线,或者如果给定了一个形状,它将沿其 z 轴的方向投射该" -"形状。\n" -"如果您使用 SpringArm3D 作为播放器的相机控制器,您可能需要从 SpringArm3D 的碰" -"撞检查中排除播放器的碰撞器。" +"SpringArm节点是沿其Z轴投射射线(或碰撞形状)的节点,并将其所有的直接子节点移" +"动到碰撞点,减去边距。\n" +"最常见的使用情况是制作第三人称相机,对环境中的碰撞做出反应。\n" +"SpringArm将投射一条射线,或者给出形状,它将在其Z轴的方向上投射该形状。\n" +"如果你使用SpringArm作为玩家的相机控制器,你可能需要将玩家的碰撞器排除在" +"SpringArm的碰撞检查之外。" #: doc/classes/SpringArm.xml:19 -#, fuzzy msgid "" "Adds the [PhysicsBody] object with the given [RID] to the list of " "[PhysicsBody] objects excluded from the collision check." msgstr "" -"将具有给定[RID]的[PhysicsBody3D]对象添加到排除在碰撞检查之外的[PhysicsBody3D]" -"对象列表中。" +"将具有指定 [RID] 的 [PhysicsBody] 对象添加到排除在碰撞检查之外的 " +"[PhysicsBody] 对象列表中。" #: doc/classes/SpringArm.xml:25 -#, fuzzy msgid "" "Clears the list of [PhysicsBody] objects excluded from the collision check." -msgstr "清除从碰撞检查中排除的 [PhysicsBody3D] 对象列表。" +msgstr "清除从碰撞检查中排除的 [PhysicsBody] 对象列表。" #: doc/classes/SpringArm.xml:31 msgid "Returns the spring arm's current length." msgstr "返回弹簧臂的当前长度。" #: doc/classes/SpringArm.xml:38 -#, fuzzy msgid "" "Removes the given [RID] from the list of [PhysicsBody] objects excluded from " "the collision check." -msgstr "从碰撞检查排除的 [PhysicsBody3D] 对象列表中删除给定的 [RID]。" +msgstr "从碰撞检查排除的 [PhysicsBody] 对象列表中删除指定的 [RID]。" #: doc/classes/SpringArm.xml:44 msgid "" @@ -64552,9 +65719,11 @@ msgid "" "html#collision-layers-and-masks]Collision layers and masks[/url] in the " "documentation for more information." msgstr "" +"碰撞检测的目标层。更多信息请参阅文档中的[url=https://docs.godotengine.org/" +"zh_CN/stable/tutorials/physics/physics_introduction.html#collision-layers-" +"and-masks]碰撞层与遮罩[/url]。" #: doc/classes/SpringArm.xml:47 -#, fuzzy msgid "" "When the collision check is made, a candidate length for the SpringArm is " "given.\n" @@ -64565,24 +65734,21 @@ msgid "" "collision, while with the margin the [Camera] would be placed close to the " "point of collision." msgstr "" -"进行碰撞检查时,会给出 SpringArm3D 的候选长度。\n" -"然后将边距减去此长度,并将平移应用于 SpringArm3D 的子对象。\n" -"当 SpringArm3D 将 [Camera3D] 作为子节点时,此边距很有用:没有边距," -"[Camera3D] 将放置在碰撞的确切点上,而有边距时,[Camera3D] 将放置在靠近碰撞" -"点。" +"进行碰撞检查时,会给出 SpringArm 的候选长度。\n" +"然后将边距减去此长度,并将平移应用于 SpringArm 的子对象。\n" +"当 SpringArm 将 [Camera] 作为子节点时,此边距很有用:没有边距,[Camera] 将放" +"置在碰撞的确切点上,而有边距时,[Camera] 将放置在靠近碰撞点。" #: doc/classes/SpringArm.xml:52 -#, fuzzy msgid "" "The [Shape] to use for the SpringArm.\n" "When the shape is set, the SpringArm will cast the [Shape] on its z axis " "instead of performing a ray cast." msgstr "" -"用于SpringArm3D的[Shape3D]。\n" -"当形状被设置时,SpringArm3D将在其Z轴上投射[Shape3D],而不是执行射线投射。" +"用于 SpringArm 的[Shape]。\n" +"当形状被设置时,SpringArm 将在其 Z 轴上投射 [Shape],而不是执行射线投射。" #: doc/classes/SpringArm.xml:56 -#, fuzzy msgid "" "The maximum extent of the SpringArm. This is used as a length for both the " "ray and the shape cast used internally to calculate the desired position of " @@ -64590,10 +65756,10 @@ msgid "" "To know more about how to perform a shape cast or a ray cast, please consult " "the [PhysicsDirectSpaceState] documentation." msgstr "" -"SpringArm3D 的最大范围。这用作内部使用的射线和形状投射的长度,以计算 " -"SpringArm3D 子节点的所需位置。\n" +"SpringArm 的最大范围。这用作内部使用的射线和形状投射的长度,以计算 SpringArm " +"子节点的所需位置。\n" "要了解有关如何执行形状投射或光线投射的更多信息,请参阅 " -"[PhysicsDirectSpaceState3D] 文档。" +"[PhysicsDirectSpaceState] 文档。" #: doc/classes/Sprite.xml:4 msgid "General-purpose sprite node." @@ -64608,7 +65774,6 @@ msgstr "" "表动画的帧。" #: doc/classes/Sprite.xml:16 -#, fuzzy msgid "" "Returns a [Rect2] representing the Sprite's boundary in local coordinates. " "Can be used to detect if the Sprite was clicked. Example:\n" @@ -64620,8 +65785,8 @@ msgid "" " print(\"A click!\")\n" "[/codeblock]" msgstr "" -"返回一个 [Rect2],在局部坐标中表示 Sprite2D 的边界。可用于检测 Sprite2D 是否" -"被点击。例子:\n" +"返回 [Rect2] 表示局部坐标中 Sprite 的边界。可用于检测 Sprite 是否被点击。例" +"子:\n" "[codeblock]\n" "func _input(event):\n" " if event is InputEventMouseButton and event.pressed and event." @@ -64647,29 +65812,26 @@ msgid "If [code]true[/code], texture is centered." msgstr "如果 [code]true[/code],纹理居中。" #: doc/classes/Sprite.xml:45 doc/classes/Sprite3D.xml:15 -#, fuzzy msgid "" "Current frame to display from sprite sheet. [member hframes] or [member " "vframes] must be greater than 1." msgstr "" -"从精灵表显示的当前帧。 [member vframes] 或 [member hframes] 必须大于 1。" +"当前显示的精灵表中的帧。[member vframes] 或 [member hframes] 必须大于 1。" #: doc/classes/Sprite.xml:48 doc/classes/Sprite3D.xml:18 -#, fuzzy msgid "" "Coordinates of the frame to display from sprite sheet. This is as an alias " "for the [member frame] property. [member hframes] or [member vframes] must " "be greater than 1." msgstr "" -"从精灵表显示的帧坐标。这是 [member frame] 属性的别名。 [member vframes] 或 " -"[member hframes] 必须大于 1。" +"显示的帧在精灵表中的坐标。这是 [member frame] 属性的别名。[member vframes] " +"或 [member hframes] 必须大于 1。" #: doc/classes/Sprite.xml:51 doc/classes/Sprite3D.xml:21 msgid "The number of columns in the sprite sheet." msgstr "精灵表中的列数。" #: doc/classes/Sprite.xml:54 -#, fuzzy msgid "" "The normal map gives depth to the Sprite.\n" "[b]Note:[/b] Godot expects the normal map to use X+, Y-, and Z+ coordinates. " @@ -64677,10 +65839,11 @@ msgid "" "Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for " "a comparison of normal map coordinates expected by popular engines." msgstr "" -"为 Sprite2D 提供深度的法线贴图。\n" -"[b]注:[/b] Godot 期望法线贴图使用 X+、Y- 和 Z+ 坐标。参阅[url=http://wiki." -"polycount.com/wiki/Normal_Map_Technical_Details#Common_Swizzle_Coordinates]这" -"个页面[/url] 比较流行引擎所期望的法线地图坐标。" +"为 Sprite 提供深度的法线贴图。\n" +"[b]注意:[/b] Godot 期望法线贴图使用 X+、Y- 和 Z+ 坐标系。参阅[url=http://" +"wiki.polycount.com/wiki/" +"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]这个页面[/url]比较流" +"行引擎所期望的法线贴图坐标系。" #: doc/classes/Sprite.xml:61 msgid "" @@ -64702,9 +65865,8 @@ msgstr "" "要显示的图集纹理区域。 [member region_enabled] 必须是 [code]true[/code]。" #: doc/classes/Sprite.xml:70 -#, fuzzy msgid "[Texture] object to draw." -msgstr "[Texture2D] 要绘制的对象。" +msgstr "[Texture] 要绘制的对象。" #: doc/classes/Sprite.xml:73 doc/classes/Sprite3D.xml:33 msgid "The number of rows in the sprite sheet." @@ -64723,14 +65885,13 @@ msgid "2D sprite node in a 3D world." msgstr "3D 世界中的 2D 精灵节点。" #: doc/classes/Sprite3D.xml:7 -#, fuzzy msgid "" "A node that displays a 2D texture in a 3D environment. The texture displayed " "can be a region from a larger atlas texture, or a frame from a sprite sheet " "animation." msgstr "" -"显示 2D 纹理的节点。显示的纹理可以是来自较大图集纹理的区域,也可以是来自精灵" -"表动画的帧。" +"在 3D 环境中显示 2D 纹理的节点。显示的纹理可以是来自较大图集纹理的区域,也可" +"以是来自精灵表动画的帧。" #: doc/classes/Sprite3D.xml:24 msgid "" @@ -64745,6 +65906,8 @@ msgid "" "[Texture] object to draw. If [member GeometryInstance.material_override] is " "used, this will be overridden." msgstr "" +"要绘制的 [Texture] 对象。如果 [member GeometryInstance.material_override] 被" +"使用,这将被覆盖。" #: doc/classes/SpriteBase3D.xml:4 msgid "2D sprite node in 3D environment." @@ -64781,22 +65944,20 @@ msgid "" msgstr "乘以颜色值,用于色调调制和模拟光的颜色。" #: doc/classes/SpriteBase3D.xml:66 -#, fuzzy msgid "" "The objects' visibility on a scale from [code]0[/code] fully invisible to " "[code]1[/code] fully visible." -msgstr "物体的能见度,从[code]0[/code]完全不可见到[code]1[/code]完全可见。" +msgstr "物体的可见度从 [code]0 [/code] 完全不可见到 [code]1 [/code] 完全可见。" #: doc/classes/SpriteBase3D.xml:69 msgid "The size of one pixel's width on the sprite to scale it in 3D." msgstr "精灵上一个像素宽度的大小,以 3D 缩放。" #: doc/classes/SpriteBase3D.xml:72 -#, fuzzy msgid "" "If [code]true[/code], the [Light] in the [Environment] has effects on the " "sprite." -msgstr "如果[code]true[/code],则[Environment]中的[Light3D]对精灵有影响。" +msgstr "如果 [code]true[/code],则 [Environment] 中的 [Light] 对精灵有影响。" #: doc/classes/SpriteBase3D.xml:75 msgid "" @@ -64826,9 +65987,8 @@ msgid "Represents the size of the [enum DrawFlags] enum." msgstr "代表[enum DrawFlags]枚举的大小。" #: doc/classes/SpriteFrames.xml:4 -#, fuzzy msgid "Sprite frame library for AnimatedSprite." -msgstr "AnimatedSprite2D 的精灵帧库。" +msgstr "AnimatedSprite 的 Sprite 帧数库。" #: doc/classes/SpriteFrames.xml:7 msgid "" @@ -64839,6 +65999,11 @@ msgid "" "having 2 [SpriteFrames] resources [code]run[/code] and [code]run_normal[/" "code] will make it so the [code]run[/code] animation uses the normal map." msgstr "" +"[AnimatedSprite] 的精灵帧库。包含可用于播放的帧和动画数据。\n" +"[b]注意:[/b] 你可以通过创建带有 [code]_normal[/code] 后缀的 [SpriteFrames] " +"来关联一组法线贴图。例如,同时存在两个分别叫做 [code]run[/code] 和 " +"[code]run_normal[/code] 的 [SpriteFrames] 资源,那么 [code]run[/code] 中的动" +"画就会使用法线贴图。" #: doc/classes/SpriteFrames.xml:17 msgid "Adds a new animation to the library." @@ -64857,13 +66022,12 @@ msgid "Removes all animations. A \"default\" animation will be created." msgstr "删除所有动画。将创建一个“默认”动画。" #: doc/classes/SpriteFrames.xml:46 -#, fuzzy msgid "" "Returns [code]true[/code] if the given animation is configured to loop when " "it finishes playing. Otherwise, returns [code]false[/code]." msgstr "" -"如果addon准备好响应函数调用,返回[code]true[/code],否则返回[code]false[/" -"code]。" +"当指定的动画被配置为结束播放后循环时,返回 [code]true[/code],否则返回 " +"[code]false[/code]。" #: doc/classes/SpriteFrames.xml:52 msgid "" @@ -64916,7 +66080,6 @@ msgid "Static body for 3D physics." msgstr "用于 3D 物理的静态物体。" #: doc/classes/StaticBody.xml:7 -#, fuzzy msgid "" "Static body for 3D physics. A static body is a simple body that is not " "intended to move. In contrast to [RigidBody], they don't consume any CPU " @@ -64925,7 +66088,7 @@ msgid "" "static body, so even if it doesn't move, it affects other bodies as if it " "was moving (this is useful for simulating conveyor belts or conveyor wheels)." msgstr "" -"用于 3D 物理的静态物体。静态物体是不移动的简单物体。与 [RigidBody3D] 相比,它" +"用于 3D 物理的静态物体。静态物体是不应移动的简单物体。与 [RigidBody] 相比,它" "们只要不动就不会消耗任何 CPU 资源。\n" "此外,可以为静态物体设置恒定的线速度或角速度,因此即使它不移动,也会像移动一" "样影响其他物体(这对于模拟传送带或传送轮很有用)。" @@ -64952,6 +66115,9 @@ msgid "" "Deprecated, use [member PhysicsMaterial.friction] instead via [member " "physics_material_override]." msgstr "" +"物体的摩擦,从 0(无摩擦)到 1(最大摩擦)。\n" +"已废弃,请通过 [member physics_material_override] 使用 [member " +"PhysicsMaterial.friction]。" #: doc/classes/StaticBody2D.xml:4 msgid "Static body for 2D physics." @@ -64986,28 +66152,29 @@ msgstr "" "物体的恒定线速度。这不会移动物体,但会影响碰撞的物体,就像它在移动一样。" #: doc/classes/StaticBody2D.xml:26 -#, fuzzy msgid "" "The body's friction. Values range from [code]0[/code] (no friction) to " "[code]1[/code] (full friction).\n" "Deprecated, use [member PhysicsMaterial.friction] instead via [member " "physics_material_override]." msgstr "" -"物体的摩擦。取值范围从[code]0[/code](无摩擦)到[code]1[/code](最大摩擦)。" +"物体的摩擦。取值范围从 [code]0[/code](无摩擦)到 [code]1[/code](最大摩" +"擦)。\n" +"已废弃,请通过 [member physics_material_override] 使用 [member " +"PhysicsMaterial.friction]。" #: doc/classes/StreamPeer.xml:4 msgid "Abstraction and base class for stream-based protocols." msgstr "基于流的协议的抽象和基类。" #: doc/classes/StreamPeer.xml:7 -#, fuzzy msgid "" "StreamPeer is an abstraction and base class for stream-based protocols (such " "as TCP). It provides an API for sending and receiving data through streams " "as raw data or strings." msgstr "" -"StreamPeer是基于流协议(如TCP或UNIX套接字)的一个抽象和基类。它提供了一个" -"API,用于通过流发送和接收原始数据或字符串的数据。" +"StreamPeer 是对流式协议(如 TCP)的抽象和基类。它提供了用于通过流发送和接收原" +"始数据或字符串的数据的 API。" #: doc/classes/StreamPeer.xml:15 msgid "Gets a signed 16-bit value from the stream." @@ -65154,7 +66321,6 @@ msgstr "" "值,一个 [enum @GlobalScope.Error] 错误码以及一个整数,表示实际发送的数据量。" #: doc/classes/StreamPeer.xml:174 -#, fuzzy msgid "" "Puts a zero-terminated ASCII string into the stream prepended by a 32-bit " "unsigned integer representing its size.\n" @@ -65166,7 +66332,8 @@ msgid "" msgstr "" "向流中放入一个以零结尾的 ASCII 字符串,前缀一个表示其长度的 32 位无符号整" "数。\n" -"注意:如果想发送不包含长度前缀的 ASCII 字符串,可以使用 [method put_data]:\n" +"[b]注意:[/b] 如果想发送不包含长度前缀的 ASCII 字符串,可以使用 [method " +"put_data]:\n" "[codeblock]\n" "put_data(\"Hello world\".to_ascii())\n" "[/codeblock]" @@ -65188,7 +66355,6 @@ msgid "Puts an unsigned byte into the stream." msgstr "向流中放入一个无符号字节。" #: doc/classes/StreamPeer.xml:213 -#, fuzzy msgid "" "Puts a zero-terminated UTF-8 string into the stream prepended by a 32 bits " "unsigned integer representing its size.\n" @@ -65200,7 +66366,8 @@ msgid "" msgstr "" "向流中放入一个以零结尾的 UTF-8 字符串,前缀一个表示其长度的 32 位无符号整" "数。\n" -"注意:如果想发送不包含长度前缀的 UTF-8 字符串,可以使用 [method put_data]:\n" +"[b]注意:[/b] 如果想发送不包含长度前缀的 UTF-8 字符串,可以使用 [method " +"put_data]:\n" "[codeblock]\n" "put_data(\"Hello world\".to_utf8())\n" "[/codeblock]" @@ -65321,13 +66488,12 @@ msgid "Returns the status of the connection, see [enum Status]." msgstr "返回连接的状态,见[enum Status]。" #: doc/classes/StreamPeerTCP.xml:47 -#, fuzzy msgid "" "Returns [code]true[/code] if this peer is currently connected or is " "connecting to a host, [code]false[/code] otherwise." msgstr "" -"如果这个对等体当前连接到一个主机,返回[code]true[/code],否则返回" -"[code]false[/code]。" +"当本对等体当前已连接到主机或者正在连接主机,则返回 [code]true[/code],否则返" +"回 [code]false[/code]。" #: doc/classes/StreamPeerTCP.xml:54 msgid "" @@ -65339,6 +66505,12 @@ msgid "" "send large packets or need to transfer a lot of data, as enabling this can " "decrease the total available bandwidth." msgstr "" +"如果 [code]enabled[/code] 为 [code]true[/code] 时,数据包会立即发送。如果 " +"[code]enabled[/code] 为 [code]false[/code] 时(默认如此),数据包会延迟发送," +"使用 [url=https://zh.wikipedia.org/wiki/%E7%B4%8D%E6%A0%BC%E7%AE%97%E6%B3%95]" +"纳格算法[/url]合并。\n" +"[b]注意:[/b] 如果你的应用所传输的数据包很大,或者需要传输大量数据,建议将本" +"属性保持禁用,因为启用后可能降低总体可用带宽。" #: doc/classes/StreamPeerTCP.xml:61 msgid "" @@ -65394,7 +66566,7 @@ msgid "" "https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/" "gdscript_format_string.html" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/scripting/gdscript/" +"https://docs.godotengine.org/zh_CN/stable/getting_started/scripting/gdscript/" "gdscript_format_string.html" #: doc/classes/String.xml:17 @@ -65555,6 +66727,18 @@ 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://zh.wikipedia.org/wiki/Unicode%E5%AD%97%E7%AC" +"%A6%E5%88%97%E8%A1%A8]Unicode 码位[/url],大致与字母表顺序一致。\n" +"[b]字符串长度不同时的行为:[/b] “基准”字符串比 [code]to[/code] 字符串长时返" +"回 [code]-1[/code],“基准”字符串比 [code]to[/code] 字符串短时返回 [code]-1[/" +"code]。请注意此处的长度为 Unicode 码位的长度,[i]不是[/i]实际的可见字符。\n" +"[b]存在空字符串的行为:[/b] “基准”字符串为空时返回 [code]-1[/code],字符串 " +"[code]to[/code] 为空时返回 [code]1[/code],两者都为空时返回 [code]0[/" +"code]。\n" +"如果想在比较字符串时获得布尔型的返回值,请使用 [code]==[/code] 运算符。参阅 " +"[method nocasecmp_to]。" #: doc/classes/String.xml:229 msgid "" @@ -65601,7 +66785,6 @@ msgstr "" "从该字符串的 [code]position[/code] 位置开始,擦除 [code]chars[/code] 个字符。" #: doc/classes/String.xml:272 -#, fuzzy msgid "" "Finds the first occurrence of a substring. Returns the starting position of " "the substring or [code]-1[/code] if not found. Optionally, the initial " @@ -65614,12 +66797,12 @@ msgid "" " pass\n" "[/codeblock]" msgstr "" -"返回此实例中指定字符串的 [b]first[/b] 出现的索引(区分大小写),或 [code]-1[/" -"code]。可以指定起始搜索索引,一直到字符串的结尾。\n" -"[b]注:[/b] 如果只想知道字符串是否包含子字符串,请使用 [code]in[/code] 运算" +"查找首次出现的子字符串。返回该子字符串的起始位置,未找到时则返回 [code]-1[/" +"code]。还可以传入查找的起始位置。\n" +"[b]注意:[/b] 如果只想知道字符串是否包含子字符串,请使用 [code]in[/code] 运算" "符,如下所示:\n" "[codeblock]\n" -"# 将判断为 `false`.\n" +"# 判断结果将为 `false`。\n" "if \"i\" in \"team\":\n" " pass\n" "[/codeblock]" @@ -65877,6 +67060,10 @@ msgid "" "trim_prefix] method that will remove a single prefix string rather than a " "set of characters." msgstr "" +"返回该字符串从左侧删除若干字符后的副本。参数 [code]chars[/code] 为包含所需删" +"除字符的字符串。\n" +"[b]注意:[/b] [code]chars[/code] 不是前缀。如果不想删除一组字符,而是想删除单" +"一的前缀字符串,请参阅 [method trim_prefix]。" #: doc/classes/String.xml:492 msgid "" @@ -65928,6 +67115,22 @@ msgid "" "To get a boolean result from a string comparison, use the [code]==[/code] " "operator instead. See also [method nocasecmp_to] and [method casecmp_to]." msgstr "" +"与另一个字符串进行[i]自然顺序[/i]比较,不区分大小写。小于时返回 [code]-1[/" +"code]、大于时返回 [code]1[/code]、等于时返回 [code]0[/code]。“小于”和“大于”比" +"较的是字符串中的 [url=https://zh.wikipedia.org/wiki/Unicode%E5%AD%97%E7%AC" +"%A6%E5%88%97%E8%A1%A8]Unicode 码位[/url],大致与字母表顺序一致。内部实现时," +"会将小写字符转换为大写后进行比较。\n" +"使用自然顺序进行排序时,对连续数字的排序符合大多数人的预期。使用自然顺序对 1 " +"到 10 进行排序后,会得到 [code][1, 2, 3, ...][/code] 而不是 [code][1, 10, 2, " +"3, ...][/code]。\n" +"[b]字符串长度不同时的行为:[/b] “基准”字符串比 [code]to[/code] 字符串长时返" +"回 [code]-1[/code],“基准”字符串比 [code]to[/code] 字符串短时返回 [code]-1[/" +"code]。请注意此处的长度为 Unicode 码位的长度,[i]不是[/i]实际的可见字符。\n" +"[b]存在空字符串的行为:[/b] “基准”字符串为空时返回 [code]-1[/code],字符串 " +"[code]to[/code] 为空时返回 [code]1[/code],两者都为空时返回 [code]0[/" +"code]。\n" +"如果想在比较字符串时获得布尔型的返回值,请使用 [code]==[/code] 运算符。参阅 " +"[method casecmp_to]。" #: doc/classes/String.xml:529 msgid "" @@ -65948,6 +67151,19 @@ 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://zh.wikipedia.org/wiki/Unicode%E5%AD%97%E7%AC" +"%A6%E5%88%97%E8%A1%A8]Unicode 码位[/url],大致与字母表顺序一致。内部实现时," +"会将小写字符转换为大写后进行比较。\n" +"[b]字符串长度不同时的行为:[/b] “基准”字符串比 [code]to[/code] 字符串长时返" +"回 [code]-1[/code],“基准”字符串比 [code]to[/code] 字符串短时返回 [code]-1[/" +"code]。请注意此处的长度为 Unicode 码位的长度,[i]不是[/i]实际的可见字符。\n" +"[b]存在空字符串的行为:[/b] “基准”字符串为空时返回 [code]-1[/code],字符串 " +"[code]to[/code] 为空时返回 [code]1[/code],两者都为空时返回 [code]0[/" +"code]。\n" +"如果想在比较字符串时获得布尔型的返回值,请使用 [code]==[/code] 运算符。参阅 " +"[method casecmp_to]。" #: doc/classes/String.xml:539 msgid "Returns the character code at position [code]at[/code]." @@ -65996,25 +67212,26 @@ msgstr "返回重复多次的原始字符串。重复次数由参数给出。" msgid "" "Replaces occurrences of a case-sensitive substring with the given one inside " "the string." -msgstr "将出现的子字符串替换为字符串中给定的子字符串(区分大小写)。" +msgstr "将出现的子字符串替换为字符串中给定的子字符串,区分大小写。" #: doc/classes/String.xml:595 msgid "" "Replaces occurrences of a case-insensitive substring with the given one " "inside the string." -msgstr "将出现的子字符串替换为字符串中给定的子字符串(不区分大小写)。" +msgstr "将出现的子字符串替换为字符串中给定的子字符串,不区分大小写。" #: doc/classes/String.xml:603 msgid "" "Performs a case-sensitive search for a substring, but starts from the end of " "the string instead of the beginning." -msgstr "" +msgstr "执行子字符串搜索,区分大小写。不过是从字符串末尾开始搜索,而不是开头。" #: doc/classes/String.xml:611 msgid "" "Performs a case-insensitive search for a substring, but starts from the end " "of the string instead of the beginning." msgstr "" +"执行子字符串搜索,不区分大小写。不过是从字符串末尾开始搜索,而不是开头。" #: doc/classes/String.xml:618 msgid "Returns the right side of the string from a given position." @@ -66061,6 +67278,10 @@ msgid "" "trim_suffix] method that will remove a single suffix string rather than a " "set of characters." msgstr "" +"返回该字符串从右侧删除若干字符后的副本。参数 [code]chars[/code] 为包含所需删" +"除字符的字符串。\n" +"[b]注意:[/b] [code]chars[/code] 不是后缀。如果不想删除一组字符,而是想删除单" +"一的前缀字符串,请参阅 [method trim_suffix]。" #: doc/classes/String.xml:651 msgid "Returns the SHA-1 hash of the string as an array of bytes." @@ -66162,16 +67383,14 @@ msgstr "" "[code]len[/code] 是可选的,使用 [code]-1[/code] 将返回给定位置的剩余字符。" #: doc/classes/String.xml:738 -#, fuzzy msgid "" "Converts the String (which is a character array) to [PoolByteArray] (which " "is an array of bytes). The conversion is faster compared to [method " "to_utf8], as this method assumes that all the characters in the String are " "ASCII characters." msgstr "" -"将 String(它是一个字符数组)转换为 [PackedByteArray](它是一个字节数组)。" -"与 [method to_utf8] 相比,转换速度更快,因为此方法假定 String 中的所有字符都" -"是 ASCII 字符。" +"将 String(字符数组)转换为 [PoolByteArray](字节数组)。与 [method to_utf8] " +"相比,转换速度更快,因为此方法假定 String 中的所有字符都是 ASCII 字符。" #: doc/classes/String.xml:744 msgid "" @@ -66192,14 +67411,13 @@ msgid "Returns the string converted to uppercase." msgstr "返回转换为大写的字符串。" #: doc/classes/String.xml:768 -#, fuzzy msgid "" "Converts the String (which is an array of characters) to [PoolByteArray] " "(which is an array of bytes). The conversion is a bit slower than [method " "to_ascii], but supports all UTF-8 characters. Therefore, you should prefer " "this function over [method to_ascii]." msgstr "" -"将字符串(字符数组)转换为 [PackedByteArray](字节数组)。转换比 [method " +"将字符串(字符数组)转换为 [PoolByteArray](字节数组)。转换比 [method " "to_ascii] 慢一点,但支持所有 UTF-8 字符。因此,您应该更喜欢这个函数而不是 " "[method to_ascii]。" @@ -66207,7 +67425,7 @@ msgstr "" msgid "" "Converts the String (which is an array of characters) to [PoolByteArray] " "(which is an array of bytes)." -msgstr "" +msgstr "将字符串(字符的数组)转换为 [PoolByteArray](字节的数组)。" #: doc/classes/String.xml:781 msgid "" @@ -66222,14 +67440,13 @@ msgid "" msgstr "如果以一个给定的字符串为结尾,则从该字符串中删除,或者不改变该字符串。" #: doc/classes/String.xml:794 -#, fuzzy msgid "" "Removes any characters from the string that are prohibited in [Node] names " "([code].[/code] [code]:[/code] [code]@[/code] [code]/[/code] [code]\"[/" "code])." msgstr "" -"返回当前日期作为键的字典:[code]year[/code], [code]month[/code], [code]day[/" -"code], [code]weekday[/code], [code]dst[/code](夏令时)。" +"从字符串中删除所有不允许在 [Node] 名称中出现的字符([code].[/code] [code]:[/" +"code] [code]@[/code] [code]/[/code] [code]\"[/code])。" #: doc/classes/String.xml:800 msgid "" @@ -66248,7 +67465,6 @@ msgid "Base class for drawing stylized boxes for the UI." msgstr "用于为 UI 绘制风格化框的基类。" #: doc/classes/StyleBox.xml:7 -#, fuzzy msgid "" "StyleBox is [Resource] that provides an abstract base class for drawing " "stylized boxes for the UI. StyleBoxes are used for drawing the styles of " @@ -66261,10 +67477,14 @@ msgid "" "[code]hover[/code] or [code]pressed[/code] [StyleBox]. This makes the " "[code]focus[/code] [StyleBox] more reusable across different nodes." msgstr "" -"StyleBox 是 [Resource],它提供了一个抽象基类,用于为 UI 绘制风格化的框。 " -"StyleBox 用于绘制按钮样式、线条编辑背景、树背景等,也用于测试指针信号的透明掩" -"码。如果在指定为控件的掩码的 StyleBox 上的掩码测试失败,点击和运动信号将通过" -"它传递到下面的一个。" +"样式盒 StyleBox 是一种 [Resource],它提供了一个抽象基类,用于为 UI 绘制风格化" +"的框。 StyleBox 被用于绘制按钮的样式、行编辑框的背景、树的背景等,也被用作测" +"试指针信号的透明掩码。将 StyleBox 指定为控件的掩码时,如果在掩码测试失败,点" +"击和运动信号将透过它传递至下层控件。\n" +"[b]注意:[/b] 对于有 [i]主题属性[/i] 的 [Control] 控件,名为 [code]focus[/" +"code] 的 [StyleBox] 会显示在名为 [code]normal[/code]、[code]hover[/code]、" +"[code]pressed[/code] 的 [StyleBox]之上。这样的行为有助于 [code]focus[/code] " +"[StyleBox] 在不同节点上复用。" #: doc/classes/StyleBox.xml:18 msgid "" @@ -66302,7 +67522,7 @@ msgstr "" #: doc/classes/StyleBox.xml:52 msgid "Returns the minimum size that this stylebox can be shrunk to." -msgstr "返回此StyleBox可以缩小到的最小尺寸。" +msgstr "返回此样式盒可以缩小到的最小尺寸。" #: doc/classes/StyleBox.xml:58 msgid "" @@ -66310,7 +67530,7 @@ msgid "" "equivalent to [code]Vector2(style.get_margin(MARGIN_LEFT), style." "get_margin(MARGIN_TOP))[/code]." msgstr "" -"返回样式框的“偏移量”。这个辅助函数返回一个等价于 [code]Vector2(style." +"返回样式盒的“偏移量”。这个辅助函数返回一个等价于 [code]Vector2(style." "get_margin(MARGIN_LEFT), style.get_margin(MARGIN_TOP))[/code] 的值。" #: doc/classes/StyleBox.xml:66 @@ -66318,8 +67538,8 @@ msgid "" "Sets the default value of the specified [enum Margin] to given [code]offset[/" "code] in pixels." msgstr "" -"将指定的 [enum Margin] 的默认值设置为给定的 [code]offset[/code](以像素为单" -"位)。" +"将指定 [enum Margin] 边距的默认值设置为给定的 [code]offset[/code],单位为像" +"素。" #: doc/classes/StyleBox.xml:74 msgid "Test a position in a rectangle, return whether it passes the mask test." @@ -66339,13 +67559,13 @@ msgid "" "of reading these properties directly. This is because it correctly respects " "negative values and the fallback mentioned above." msgstr "" -"此样式框内容的底部边距。增加此值会减少底部内容的可用空间。\n" -"如果此值为负,则将其忽略并改为使用特定于子节点的边距。例如,对于 " -"[StyleBoxFlat],使用边框厚度(如果有)。\n" -"由使用此样式框的代码决定这些内容是什么:例如,[Button] 遵从按钮文本内容的此内" -"容边距。\n" -"[method get_margin] 应该用于作为使用者获取这个值,而不是直接读取这些属性。这" -"是因为它正确地遵从了负值和上述回退。" +"此样式盒内容的底边距。增加此值会从底部减少内容的可用空间。\n" +"如果此值为负,则将其忽略并改为使用特定于该子类型的边距。例如,对于 " +"[StyleBoxFlat],(如果有厚度的话)将使用边框厚度。\n" +"内容是什么由使用此样式框的代码决定:例如 [Button] 会为其文本内容设置此内容边" +"距。\n" +"使用者应该通过 [method get_margin] 获取边距,而不是直接读取单独方向上的属性。" +"这是因为这个函数会正确处理负值和上述备用逻辑。" #: doc/classes/StyleBox.xml:86 msgid "" @@ -66353,8 +67573,8 @@ msgid "" "reduces the space available to the contents from the left.\n" "Refer to [member content_margin_bottom] for extra considerations." msgstr "" -"此stylebox内容的左边距。增加此值会减少左侧内容的可用空间。\n" -"有关额外注意事项,请参阅 [member content_margin_bottom]。" +"此样式盒内容的左边距。增加此值会从左侧减少内容的可用空间。\n" +"额外的注意事项请参阅 [member content_margin_bottom]。" #: doc/classes/StyleBox.xml:90 msgid "" @@ -66362,8 +67582,8 @@ msgid "" "reduces the space available to the contents from the right.\n" "Refer to [member content_margin_bottom] for extra considerations." msgstr "" -"此stylebox内容的右边距。增加此值会减少右侧内容的可用空间。\n" -"有关额外注意事项,请参阅 [member content_margin_bottom]。" +"此样式盒内容的右边距。增加此值会从右侧减少内容的可用空间。\n" +"额外的注意事项请参阅 [member content_margin_bottom]。" #: doc/classes/StyleBox.xml:94 msgid "" @@ -66371,24 +67591,23 @@ msgid "" "reduces the space available to the contents from the top.\n" "Refer to [member content_margin_bottom] for extra considerations." msgstr "" -"这个样式框的内容的上边距。增加这个值可以减少内容从顶部的可用空间。\n" -"请参考[member content_margin_bottom]以获得额外的考虑。" +"此样式盒内容的顶边距。增加此值会从顶部减少内容的可用空间。\n" +"额外的注意事项请参阅 [member content_margin_bottom]。" #: doc/classes/StyleBoxEmpty.xml:4 msgid "Empty stylebox (does not display anything)." -msgstr "空的StyleBox(不显示任何东西)。" +msgstr "空的样式盒(不显示任何东西)。" #: doc/classes/StyleBoxEmpty.xml:7 msgid "Empty stylebox (really does not display anything)." -msgstr "空的StyleBox(真的不显示任何东西)。" +msgstr "空的样式盒(真的不显示任何东西)。" #: doc/classes/StyleBoxFlat.xml:4 msgid "" "Customizable [StyleBox] with a given set of parameters (no texture required)." -msgstr "可自定义 [StyleBox] 与给定参数集 (无需纹理) 。" +msgstr "可通过一系列参数自定义的 [StyleBox](无需纹理) 。" #: doc/classes/StyleBoxFlat.xml:7 -#, fuzzy msgid "" "This [StyleBox] can be used to achieve all kinds of looks without the need " "of a texture. The following properties are customizable:\n" @@ -66411,19 +67630,19 @@ msgid "" "corner_radius_bottom_left: 20\n" "[/codeblock]" msgstr "" -"这个 [StyleBox] 可以用来实现各种外观,无需纹理。这些属性是可定制的:\n" +"这个 [StyleBox] 可以用来实现各种外观,无需纹理。以下属性是可定制的:\n" "- 颜色\n" "- 边框宽度(每个边框的单独宽度)\n" "- 圆角(每个角的单独半径)\n" "- 阴影(带有模糊和偏移)\n" -"允许将拐角半径设置为高值。一旦角重叠,样式框将切换到相关系统。例子:\n" +"允许将圆角半径设置为很高的值。两角重叠时,样式盒将切换到相对系统。例子:\n" "[codeblock]\n" "height = 30\n" "corner_radius_top_left = 50\n" "corner_radius_bottom_left = 100\n" "[/codeblock]\n" -"相关系统现在将采用两个左角的 1:2 比率来计算实际角宽度。添加的两个角将 [b] 永" -"远 [/b] 不会超过高度。结果:\n" +"相对系统现在将采用两个左角的 1:2 比率来计算实际角宽度。添加的两个角[b]永远[/" +"b]不会超过高度。结果:\n" "[codeblock]\n" "corner_radius_top_left: 10\n" "corner_radius_bottom_left: 20\n" @@ -66511,7 +67730,6 @@ msgstr "" "[code]size_right[/code] 和 [code]size_bottom[/code] 像素。" #: doc/classes/StyleBoxFlat.xml:122 -#, fuzzy msgid "" "Antialiasing draws a small ring around the edges, which fades to " "transparency. As a result, edges look much smoother. This is only noticeable " @@ -66521,8 +67739,11 @@ msgid "" "[code]false[/code] to ensure crisp visuals and avoid possible visual " "glitches." msgstr "" -"抗锯齿在边缘周围绘制一个小环,它逐渐变透明。最后边缘看起来会更加平滑。这仅在" -"使用圆角时才明显。" +"抗锯齿会在边缘周围绘制一个渐变到透明的小环。因此边缘看起来会更加平滑。这仅在" +"使用圆角时才明显。\n" +"[b]注意:[/b] 使用 45 度倒角([member corner_detail] = 1)时,建议将 [member " +"anti_aliasing] 设为 [code]false[/code],这样可以保证画面锐利、避免一些显示问" +"题。" #: doc/classes/StyleBoxFlat.xml:126 msgid "" @@ -66559,7 +67780,6 @@ msgid "Border width for the top border." msgstr "顶部边框的宽度。" #: doc/classes/StyleBoxFlat.xml:150 -#, fuzzy msgid "" "This sets the number of vertices used for each corner. Higher values result " "in rounder corners but take more processing power to compute. When choosing " @@ -66571,12 +67791,11 @@ msgid "" "A corner detail of [code]1[/code] will result in chamfered corners instead " "of rounded corners, which is useful for some artistic effects." msgstr "" -"这将设置用于每个角的顶点数量。更高的值会形成更圆的角,但需要更多的处理能力来" -"计算。选择值时,应考虑角半径([method set_corner_radius_all])。\n" -"对于小于 10 的角半径,[code]4[/code] 或 [code]5[/code] 应该就足够了。对于小" -"于 30 的角半径,[code]8[/code] 和 [code]12[/code] 之间的值应该足够了。\n" -"[code]1[/code]的corner detail 会导致倒角而不是圆角,这对于某些艺术效果很有" -"用。" +"设置用于每个角的顶点数。更高的值生成更圆的角,但需要更多的处理计算。选择值" +"时,应考虑角半径([method set_corner_radius_all])。\n" +"对于小于 10 的角半径,[code]4[/code] 或 [code]5[/code] 应该就足够。对于小于 " +"30 的角半径,[code]8[/code] 和 [code]12[/code] 之间的值应该足够。\n" +"[code]1[/code]的角细节会导致倒角而不是圆角,这对于某些艺术效果很有用。" #: doc/classes/StyleBoxFlat.xml:155 msgid "" @@ -66825,7 +68044,7 @@ msgstr "" #: doc/classes/StyleBoxTexture.xml:103 msgid "Modulates the color of the texture when this style box is drawn." -msgstr "绘制此样式框时调制纹理的颜色。" +msgstr "绘制此样式盒时用于调制纹理的颜色。" #: doc/classes/StyleBoxTexture.xml:106 msgid "" @@ -66835,10 +68054,11 @@ msgid "" "Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for " "a comparison of normal map coordinates expected by popular engines." msgstr "" -"绘制此StyleBox时使用的法线贴图。\n" -"[b]注:[/b] Godot 期望法线贴图使用 X+、Y- 和 Z+ 坐标。参阅[url=http://wiki." -"polycount.com/wiki/Normal_Map_Technical_Details#Common_Swizzle_Coordinates]这" -"个页面[/url] 比较流行引擎所期望的法线地图坐标。" +"绘制此样式盒时使用的法线贴图。\n" +"[b]注意:[/b] Godot 期望法线贴图使用 X+、Y- 和 Z+ 坐标系。参阅[url=http://" +"wiki.polycount.com/wiki/" +"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]这个页面[/url]比较流" +"行引擎所期望的法线贴图坐标系。" #: doc/classes/StyleBoxTexture.xml:110 msgid "" @@ -66851,24 +68071,24 @@ msgstr "" #: doc/classes/StyleBoxTexture.xml:114 msgid "The texture to use when drawing this style box." -msgstr "绘制此Style时要使用的纹理。" +msgstr "绘制此样式盒时所使用的纹理。" #: doc/classes/StyleBoxTexture.xml:120 msgid "Emitted when the stylebox's texture is changed." -msgstr "当stylebox的纹理被改变时发出。" +msgstr "当样式盒的纹理被改变时发出。" #: doc/classes/StyleBoxTexture.xml:126 msgid "" "Stretch the stylebox's texture. This results in visible distortion unless " "the texture size matches the stylebox's size perfectly." msgstr "" -"拉伸样式框的纹理。这会导致可见的失真,除非纹理大小与样式框的大小完美匹配。" +"拉伸样式盒的纹理。这会导致可见的失真,除非纹理大小与样式盒的大小完美匹配。" #: doc/classes/StyleBoxTexture.xml:129 msgid "" "Repeats the stylebox's texture to match the stylebox's size according to the " "nine-patch system." -msgstr "根据九宫格,重复样式框的纹理,以匹配样式框的大小。" +msgstr "根据九宫格系统,重复样式盒的纹理,以匹配样式盒的大小。" #: doc/classes/StyleBoxTexture.xml:132 msgid "" @@ -66876,15 +68096,14 @@ msgid "" "nine-patch system. Unlike [constant AXIS_STRETCH_MODE_TILE], the texture may " "be slightly stretched to make the nine-patch texture tile seamlessly." msgstr "" -"根据九宫格重复样式框的纹理以匹配样式框的大小。与 [constant " -"AXIS_STRETCH_MODE_TILE] 不同,纹理可能会稍微拉伸以使九宫格纹理平铺无缝。" +"根据九宫格系统,重复样式盒的纹理,以匹配样式盒的大小。与 [constant " +"AXIS_STRETCH_MODE_TILE] 不同,可能会稍微拉伸纹理以使九宫格纹理平铺无缝。" #: doc/classes/SurfaceTool.xml:4 msgid "Helper tool to create geometry." msgstr "创建几何图形的辅助工具。" #: doc/classes/SurfaceTool.xml:7 -#, fuzzy msgid "" "The [SurfaceTool] is used to construct a [Mesh] by specifying vertex " "attributes individually. It can be used to construct a [Mesh] from a script. " @@ -66913,9 +68132,9 @@ msgid "" "OpenGL/Face-culling]winding order[/url] for front faces of triangle " "primitive modes." msgstr "" -"[SurfaceTool] 用于通过单独指定顶点属性来构建 [Mesh]。它可用于从脚本构建 " -"[Mesh]。在调用 [method add_vertex] 之前,需要添加除索引以外的所有属性。例如," -"要添加顶点颜色和 UV:\n" +"[SurfaceTool] 用于通过单独指定顶点属性来构造[Mesh]。可以用来从脚本中构造" +"[Mesh]。在调用[method add_vertex]之前,需要添加除索引之外的所有属性。例如,添" +"加顶点颜色和UV。\n" "[codeblock]\n" "var st = SurfaceTool.new()\n" "st.begin(Mesh.PRIMITIVE_TRIANGLES)\n" @@ -66923,25 +68142,25 @@ msgstr "" "st.add_uv(Vector2(0, 0))\n" "st.add_vertex(Vector3(0, 0, 0))\n" "[/codeblock]\n" -"上面的 [SurfaceTool] 现在包含一个三角形的顶点,它具有 UV 坐标和指定的 " -"[Color]。如果在没有调用 [method add_uv] 或 [method add_color] 的情况下添加了" -"另一个顶点,则将使用最后一个值。\n" -"顶点属性必须在调用[method add_vertex][b]之前[/b]传递[b]。如果不这样做,将在将" -"顶点信息提交到网格时会导致错误。\n" -"此外,在添加第一个顶点之前使用的属性决定了网格的格式。例如,如果仅向第一个顶" -"点添加 UV,则无法向任何后续顶点添加颜色。\n" -"另请参阅 [ArrayMesh]、[ImmediateGeometry3D] 和 [MeshDataTool] 以了解程序几何" -"生成。\n" -"[b]注意:[/b]Godot使用顺时针[url=https://learnopengl.com/Advanced-OpenGL/" -"Face-culling]缠绕顺序[/url]用于三角形基元模式的正面。" +"上面的[SurfaceTool]现在包含了一个三角形的顶点,它有UV坐标和指定的[Color]。如" +"果在没有调用[method add_uv]或[method add_color]的情况下添加另一个顶点,那么就" +"会使用最后的值。\n" +"顶点属性必须在调用[method add_vertex][b]之前[/b]传递。如果不这样做,在提交顶" +"点信息到网格时将会导致错误。\n" +"此外,在添加第一个顶点之前使用的属性决定了网格的格式。例如,如果你只为第一个" +"顶点添加 UV,你就不能为任何后续的顶点添加颜色。\n" +"参阅[ArrayMesh]、[ImmediateGeometry]和[MeshDataTool]以了解程序性几何体的生" +"成。\n" +"[b]注意:[/b] Godot对三角形基本模式的正面使用顺时针[url=https://learnopengl." +"com/Advanced-OpenGL/Face-culling]缠绕顺序[/url]。" #: doc/classes/SurfaceTool.xml:29 -#, fuzzy msgid "" "Specifies an array of bones to use for the [i]next[/i] vertex. [code]bones[/" "code] must contain 4 integers." msgstr "" -"为下一个要使用的顶点添加一组骨骼。 [code]bones[/code] 必须包含 4 个整数。" +"指定[i]下一个[/i]顶点所使用的骨骼数组。 [code]bones[/code] 必须包含 4 个整" +"数。" #: doc/classes/SurfaceTool.xml:36 msgid "" @@ -66951,6 +68170,10 @@ msgid "" "[b]Note:[/b] The material must have [member SpatialMaterial." "vertex_color_use_as_albedo] enabled for the vertex color to be visible." msgstr "" +"指定[i]下一个[/i]顶点所使用的 [Color]。如果每个顶点都需要设置此信息,而您未能" +"为第一个顶点提交此信息,此信息可能根本就不会被使用。\n" +"[b]注意:[/b]材质必须启用[member SpatialMaterial.vertex_color_use_as_albedo]" +"才能使顶点颜色可见。" #: doc/classes/SurfaceTool.xml:44 msgid "" @@ -66964,6 +68187,8 @@ msgid "" "to have this information set and you fail to submit it for the first vertex, " "this information may not be used at all." msgstr "" +"指定[i]下一个[/i]顶点所使用的法线。如果每个顶点都需要设置此信息,而你没有为第" +"一个顶点提交,则可能根本无法使用此信息。" #: doc/classes/SurfaceTool.xml:58 msgid "" @@ -66980,6 +68205,8 @@ msgid "" "to have this information set and you fail to submit it for the first vertex, " "this information may not be used at all." msgstr "" +"指定[i]下一个[/i]顶点所使用的切线。如果每个顶点都需要设置此信息,而你没有为第" +"一个顶点提交,则可能根本无法使用此信息。" #: doc/classes/SurfaceTool.xml:77 msgid "" @@ -66995,6 +68222,8 @@ msgid "" "every vertex needs to have this information set and you fail to submit it " "for the first vertex, this information may not be used at all." msgstr "" +"指定[i]下一个[/i]顶点所使用的 UV 坐标。如果每个顶点都需要设置此信息,而您未能" +"为第一个顶点提交此信息,此信息可能根本就不会被使用。" #: doc/classes/SurfaceTool.xml:92 msgid "" @@ -67002,6 +68231,8 @@ msgid "" "i] vertex. If every vertex needs to have this information set and you fail " "to submit it for the first vertex, this information may not be used at all." msgstr "" +"指定可选的第二组UV坐标,用于[i]next[/i]顶点。如果每个顶点都需要设置这个信息," +"而你没有为第一个顶点提交这个信息,此信息可能根本就不会被使用。" #: doc/classes/SurfaceTool.xml:99 msgid "" @@ -67016,14 +68247,22 @@ msgid "" "set and you fail to submit it for the first vertex, this information may not " "be used at all." msgstr "" +"指定[i]下一个[/i]顶点所使用的权重值。 [code]weights[/code] 必须包含 4 个值。" +"如果每个顶点都需要设置此信息,而您未能为第一个顶点提交此信息,此信息可能根本" +"就不会被使用。" #: doc/classes/SurfaceTool.xml:115 msgid "" "Append vertices from a given [Mesh] surface onto the current vertex array " -"with specified [Transform]." -msgstr "将给定 [Mesh] 表面的顶点附加到具有指定 [Transform] 的当前顶点数组。" +"with specified [Transform].\n" +"[b]Note:[/b] Using [method append_from] on a [Thread] is much slower as the " +"GPU must communicate data back to the CPU, while also causing the main " +"thread to stall (as OpenGL is not thread-safe). Consider requesting a copy " +"of the mesh, converting it to an [ArrayMesh] and adding vertices manually " +"instead." +msgstr "" -#: doc/classes/SurfaceTool.xml:122 +#: doc/classes/SurfaceTool.xml:123 msgid "" "Called before adding any vertices. Takes the primitive type as an argument " "(e.g. [constant Mesh.PRIMITIVE_TRIANGLES])." @@ -67031,12 +68270,11 @@ msgstr "" "在添加任何顶点之前被调用。接收原始类型作为参数(例如:原始三角形[constant " "Mesh.PRIMITIVE_TRIANGLES])。" -#: doc/classes/SurfaceTool.xml:128 +#: doc/classes/SurfaceTool.xml:129 msgid "Clear all information passed into the surface tool so far." msgstr "清除到目前为止传入表面工具(surface tool)的所有信息。" -#: doc/classes/SurfaceTool.xml:136 -#, fuzzy +#: doc/classes/SurfaceTool.xml:137 msgid "" "Returns a constructed [ArrayMesh] from current information passed in. If an " "existing [ArrayMesh] is passed in as an argument, will add an extra surface " @@ -67047,11 +68285,13 @@ msgid "" "constants in [enum Mesh.ArrayFormat] for other flags." msgstr "" "从传入的当前信息返回构造的 [ArrayMesh]。如果现有的 [ArrayMesh] 作为参数传入," -"则会向现有的 [ArrayMesh] 添加额外的表面。\n" -"默认标志是 [constant Mesh.ARRAY_COMPRESS_DEFAULT]。有关其他标志,请参阅 " -"[enum Mesh.ArrayFormat] 中的 [code]ARRAY_COMPRESS_*[/code] 常量。" +"则会向现有的 [ArrayMesh] 添加额外的面。\n" +"如果启用压缩,则默认标志为 [constant Mesh.ARRAY_COMPRESS_DEFAULT]。如果禁用压" +"缩,则默认标志为 [constant Mesh.ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION]。有关" +"其他标志,参阅 [enum Mesh.ArrayFormat] 中的 [code]ARRAY_COMPRESS_*[/code] 常" +"量。" -#: doc/classes/SurfaceTool.xml:143 +#: doc/classes/SurfaceTool.xml:144 msgid "" "Commits the data to the same format used by [method ArrayMesh." "add_surface_from_arrays]. This way you can further process the mesh data " @@ -67060,11 +68300,11 @@ msgstr "" "将数据提交给[method ArrayMesh.add_surface_from_arrays]使用的相同格式。这样你" "就可以使用[ArrayMesh]的API接口进一步处理网格数据。" -#: doc/classes/SurfaceTool.xml:151 +#: doc/classes/SurfaceTool.xml:152 msgid "Creates a vertex array from an existing [Mesh]." msgstr "从现有的网格 [Mesh] 创建一个顶点数组。" -#: doc/classes/SurfaceTool.xml:160 +#: doc/classes/SurfaceTool.xml:161 msgid "" "Creates a vertex array from the specified blend shape of an existing [Mesh]. " "This can be used to extract a specific pose from a blend shape." @@ -67072,11 +68312,11 @@ msgstr "" "从现有 [Mesh] 的指定混合形状创建一个顶点数组。这可用于从混合形状中提取特定姿" "势。" -#: doc/classes/SurfaceTool.xml:166 +#: doc/classes/SurfaceTool.xml:167 msgid "Removes the index array by expanding the vertex array." msgstr "通过扩展顶点数组移除索引数组。" -#: doc/classes/SurfaceTool.xml:173 +#: doc/classes/SurfaceTool.xml:174 msgid "" "Generates normals from vertices so you do not have to do it manually. If " "[code]flip[/code] is [code]true[/code], the resulting normals will be " @@ -67087,38 +68327,45 @@ msgid "" "[b]Note:[/b] [method generate_normals] only works if the primitive type to " "be set to [constant Mesh.PRIMITIVE_TRIANGLES]." msgstr "" +"从顶点生成法线,因此您不必手动执行。如果 [code]flip[/code] 为 [code]true[/" +"code],则生成的法线将被反转。 [method generate_normals] 应在生成几何体[i]之后" +"[/i] 调用,在[i]之前[/i]使用 [method commit] 或 [method commit_to_arrays] 提" +"交网格。为了正确显示法线贴图表面,您还必须使用 [method generate_tangents] 生" +"成切线。\n" +"[b]注意:[/b] [method generate_normals] 仅当基本类型设置为 [constant Mesh." +"PRIMITIVE_TRIANGLES] 时才有效。" -#: doc/classes/SurfaceTool.xml:180 -#, fuzzy +#: doc/classes/SurfaceTool.xml:181 msgid "" "Generates a tangent vector for each vertex. Requires that each vertex have " "UVs and normals set already (see [method generate_normals])." -msgstr "为每个顶点生成一个切向量。要求每个顶点都已经设置了 UV 和法线。" +msgstr "" +"为每个顶点生成切向量。要求每个顶点已经设置了 UV 和法线,参阅 [method " +"generate_normals]。" -#: doc/classes/SurfaceTool.xml:186 -#, fuzzy +#: doc/classes/SurfaceTool.xml:187 msgid "" "Shrinks the vertex array by creating an index array. This can improve " "performance by avoiding vertex reuse." -msgstr "通过创建索引阵列(避免重复使用顶点)收缩顶点阵列。" +msgstr "通过创建索引数组来缩小顶点数组。这可以避免顶点重复而提高性能。" -#: doc/classes/SurfaceTool.xml:193 +#: doc/classes/SurfaceTool.xml:194 msgid "Sets [Material] to be used by the [Mesh] you are constructing." msgstr "设置要由您正在构建的 [Mesh] 使用的 [Material]。" #: doc/classes/TabContainer.xml:4 msgid "Tabbed container." -msgstr "标签容器。" +msgstr "选项卡容器。" #: doc/classes/TabContainer.xml:7 -#, fuzzy msgid "" "Sets the active tab's [code]visible[/code] property to the value [code]true[/" "code]. Sets all other children's to [code]false[/code].\n" "Ignores non-[Control] children." msgstr "" -"当前标签索引。设置后,此索引的 [Control] 节点的 [code]visible[/code] 属性设置" -"为 [code]true[/code],其他所有设置为 [code]false[/code]。" +"将活动选项卡的 [code]visible[/code] 属性设为 [code]true[/code],其它所有子节" +"点则设为 [code]false[/code]。\n" +"会忽略非 [Control] 子节点。" #: doc/classes/TabContainer.xml:16 msgid "Returns the child [Control] node located at the active tab index." @@ -67132,10 +68379,13 @@ msgid "" "may cause a crash. If you wish to hide it or any of its children, use their " "[member CanvasItem.visible] property." msgstr "" +"如果已通过 [method set_popup] 设置 [Popup] 节点实例,则返回该实例。\n" +"[b]警告:[/b] 该节点为必要的内部节点,将其移除或释放可能造成崩溃。如果你希望" +"将其或其子节点隐藏,请使用对应节点的 [member CanvasItem.visible] 属性。" #: doc/classes/TabContainer.xml:29 doc/classes/Tabs.xml:36 msgid "Returns the previously active tab index." -msgstr "返回以前已激活的选项卡索引。" +msgstr "返回上一个活动选项卡的索引。" #: doc/classes/TabContainer.xml:36 msgid "Returns the [Control] node from the tab at index [code]tab_idx[/code]." @@ -67153,20 +68403,18 @@ msgstr "" "如果索引 [code]tab_idx[/code] 处的选项卡被禁用,则返回 [code]true[/code]。" #: doc/classes/TabContainer.xml:56 -#, fuzzy msgid "" "Returns [code]true[/code] if the tab at index [code]tab_idx[/code] is hidden." msgstr "" -"如果索引 [code]tab_idx[/code] 处的选项卡被禁用,则返回 [code]true[/code]。" +"如果索引 [code]tab_idx[/code] 处的选项卡被隐藏,则返回 [code]true[/code]。" #: doc/classes/TabContainer.xml:63 doc/classes/Tabs.xml:62 -#, fuzzy msgid "" "Returns the [Texture] for the tab at index [code]tab_idx[/code] or " "[code]null[/code] if the tab has no [Texture]." msgstr "" -"如果选项卡没有 [Texture2D],则返回索引 [code]tab_idx[/code] 或 [code]null[/" -"code] 处的选项卡的 [Texture2D]。" +"返回索引 [code]tab_idx[/code] 处选项卡的 [Texture],如果该选项卡没有 " +"[Texture] 的话则返回 [code]null[/code]。" #: doc/classes/TabContainer.xml:70 msgid "" @@ -67174,6 +68422,8 @@ msgid "" "Returns [code]-1[/code] if the point is outside the control boundaries or if " "there's no tab at the queried position." msgstr "" +"返回位于本地坐标点 [code]point[/code] 处的选项卡的索引。如果该点位于控件范围" +"外或者请求位置没有选项卡,则返回 [code]-1[/code]。" #: doc/classes/TabContainer.xml:77 msgid "" @@ -67197,52 +68447,49 @@ msgstr "" "图标。单击它会展开 [Popup] 节点。" #: doc/classes/TabContainer.xml:98 doc/classes/Tabs.xml:118 -#, fuzzy msgid "" "If [code]disabled[/code] is [code]true[/code], disables the tab at index " "[code]tab_idx[/code], making it non-interactable." msgstr "" -"如果索引 [code]tab_idx[/code] 处的选项卡被禁用,则返回 [code]true[/code]。" +"如果 [code]disabled[/code] 是 [code]true[/code],则禁用索引 [code]tab_idx[/" +"code] 处的选项卡,使其不可交互。" #: doc/classes/TabContainer.xml:106 -#, fuzzy msgid "" "If [code]hidden[/code] is [code]true[/code], hides the tab at index " "[code]tab_idx[/code], making it disappear from the tab area." msgstr "" -"如果索引 [code]tab_idx[/code] 处的选项卡被禁用,则返回 [code]true[/code]。" +"如果 [code]hidden[/code] 为 [code]true[/code],隐藏位于索引 [code]tab_idx[/" +"code] 的选项卡,让它从选项卡区域消失。" #: doc/classes/TabContainer.xml:114 msgid "Sets an icon for the tab at index [code]tab_idx[/code]." msgstr "为索引 [code]tab_idx[/code] 处的选项卡设置图标。" #: doc/classes/TabContainer.xml:122 -#, fuzzy msgid "" "Sets a title for the tab at index [code]tab_idx[/code]. Tab titles default " "to the name of the indexed child node." msgstr "" -"为索引 [code]tab_idx[/code] 处的选项卡设置标题。标签标题默认为索引子节点的名" -"称,但这可以用 [method set_tab_title] 覆盖。" +"为索引 [code]tab_idx[/code] 处的选项卡设置标题。选项卡标题默认为索引子节点的" +"名称。" #: doc/classes/TabContainer.xml:129 -#, fuzzy msgid "" "Defines rearrange group id, choose for each [TabContainer] the same value to " "enable tab drag between [TabContainer]. Enable drag with [member " "drag_to_rearrange_enabled]." msgstr "" -"定义重新排列组id,为每个[TabContainer]选择相同的值以启用[TabContainer]之间的" -"标签拖动。使用 [code]set_drag_to_rearrange_enabled(true)[/code] 启用拖动。" +"定义重排组的编号。为不同 [TabContainer] 设置相同的值,可以允许选项卡在这些 " +"[TabContainer] 之间拖放。通过 [member drag_to_rearrange_enabled] 启用拖放。" #: doc/classes/TabContainer.xml:135 -#, fuzzy msgid "" "If [code]true[/code], all tabs are drawn in front of the panel. If " "[code]false[/code], inactive tabs are drawn behind the panel." msgstr "" -"如果 [code]true[/code],选项卡可见。如果 [code]false[/code],选项卡的内容和标" -"题被隐藏。" +"如果为 [code]true[/code],所有选项卡都会被绘制在面板之前。如果为 " +"[code]false[/code],未激活的选项卡会被绘制在面板之后。" #: doc/classes/TabContainer.xml:138 msgid "" @@ -67741,6 +68988,10 @@ msgid "" "may cause a crash. If you wish to hide it or any of its children, use their " "[member CanvasItem.visible] property." msgstr "" +"返回此[TextEdit]的[PopupMenu]。默认情况下,这个菜单在右键点击[TextEdit]的时候" +"显示。\n" +"[b]警告:[/b] 这是一个必要的内部节点,删除和释放它可能会导致崩溃。如果你想隐" +"藏它或它的任何子节点,请使用其的 [member CanvasItem.visible] 属性。" #: doc/classes/TextEdit.xml:156 msgid "Returns the selection begin column." @@ -68224,7 +69475,7 @@ msgid "" msgstr "" "纹理的作用是在视频硬件中注册一个图像,然后可以在3D模型或2D[Sprite]或" "GUI[Control]中使用。\n" -"纹理通常是通过从文件中加载来创建的。参阅[方法 @GDScript.load]。\n" +"纹理通常是通过从文件中加载来创建的。参阅[method @GDScript.load]。\n" "[Texture]是其他资源的基础。它不能被直接使用。\n" "[b]注意:[/b] 由于图形硬件的限制,最大的纹理尺寸是16384×16384像素。较大的纹理" "可能无法导入。" @@ -68306,10 +69557,12 @@ msgid "" "[b]Note:[/b] Ignored when using an [AtlasTexture] as these don't support " "repetition." msgstr "" +"重复纹理(而不是限制到边)。\n" +"[b]注意:[/b] 使用[AtlasTexture]时忽略,因为它们不支持重复。" #: doc/classes/Texture.xml:99 doc/classes/VisualServer.xml:3212 msgid "Uses a magnifying filter, to enable smooth zooming in of the texture." -msgstr "" +msgstr "使用放大过滤器,以实现纹理的平滑放大。" #: doc/classes/Texture.xml:102 doc/classes/TextureLayered.xml:88 #: doc/classes/VisualServer.xml:3215 @@ -68318,11 +69571,12 @@ msgid "" "texture with different aspect ratios.\n" "This results in better-looking textures when viewed from oblique angles." msgstr "" +"使用各向异性的mipmap过滤。生成具有不同长宽比的同一纹理的较小版本。\n" +"当从斜角观看时,这会产生更好看的纹理。" #: doc/classes/Texture.xml:106 doc/classes/VisualServer.xml:3219 -#, fuzzy msgid "Converts the texture to the sRGB color space." -msgstr "将原始数据从 sRGB 色彩空间转换为线性比例。" +msgstr "将纹理转换为 sRGB 颜色空间。" #: doc/classes/Texture.xml:109 msgid "" @@ -68330,21 +69584,21 @@ msgid "" "[b]Note:[/b] Ignored when using an [AtlasTexture] as these don't support " "repetition." msgstr "" +"重复纹理的交替部分,并对其进行镜像。\n" +"[b]注意:[/b] 在使用[AtlasTexture]时被忽略,因为它们不支持重复。" #: doc/classes/Texture.xml:113 doc/classes/VisualServer.xml:3225 -#, fuzzy msgid "Texture is a video surface." -msgstr "设置给定曲面的名称。" +msgstr "纹理是视频表面。" #: doc/classes/Texture3D.xml:4 -#, fuzzy msgid "Texture with 3 dimensions." -msgstr "返回位图的尺寸。" +msgstr "具有 3 个维度的纹理。" #: doc/classes/Texture3D.xml:7 msgid "" "Texture3D is a 3-dimensional texture that has a width, height, and depth." -msgstr "" +msgstr "Texture3D 是具有宽度、高度和深度的 3 维纹理。" #: doc/classes/Texture3D.xml:20 msgid "" @@ -68353,11 +69607,13 @@ msgid "" "code] options. See [enum TextureLayered.Flags] enumerator for [code]flags[/" "code] options." msgstr "" +"以指定的[code]width[/code]、[code]height[/code]和[code]depth[/code]创建" +"Texture3D。参阅[enum Image.Format]的[code]format[/code]选项。参阅[enum " +"TextureLayered.Flags]枚举器的[code]flags[/code]选项。" #: doc/classes/TextureArray.xml:4 -#, fuzzy msgid "Array of textures stored in a single primitive." -msgstr "在单个帧中绘制的顶点数。" +msgstr "存储在单个基元中的纹理数组。" #: doc/classes/TextureArray.xml:7 msgid "" @@ -68380,6 +69636,22 @@ msgid "" "Set the integer uniform \"index\" to show a particular part of the texture " "as defined by the Horizontal and Vertical Slices in the importer." msgstr "" +"[TextureArray]在单个[Texture]基本单元中存储一个[Image]数组。纹理数组的每一层" +"都有自己的mipmap链。这使得它成为纹理图集很好的替代品。\n" +"[TextureArray]必须使用着色器来显示。在把你的文件导入为[TextureArray]并设置适" +"当的水平和垂直切片后,通过把它设置为着色器uniform来显示它,例如。\n" +"[codeblock]\n" +"shader_type canvas_item;\n" +"\n" +"uniform sampler2DArray tex;\n" +"uniform int index;\n" +"\n" +"void fragment() {\n" +" COLOR = texture(tex, vec3(UV.x, UV.y, float(index)));\n" +"}\n" +"[/codeblock]\n" +"设置整数uniform \"index\",以显示由importer中的Horizontal和Vertical Slices定" +"义的纹理的特定部分。" #: doc/classes/TextureArray.xml:32 msgid "" @@ -68388,6 +69660,9 @@ msgid "" "code] options. See [enum TextureLayered.Flags] enumerator for [code]flags[/" "code] options." msgstr "" +"以指定的[code]width[/code]、[code]height[/code]和[code]depth[/code]创建" +"TextureArray。参阅[enum Image.Format]的[code]format[/code]选项。参阅[enum " +"TextureLayered.Flags]枚举器的[code]flags[/code]选项。" #: doc/classes/TextureButton.xml:4 msgid "" @@ -68510,7 +69785,6 @@ msgid "Base class for 3D texture types." msgstr "3D纹理类型的基类。" #: doc/classes/TextureLayered.xml:7 -#, fuzzy msgid "" "Base class for [Texture3D] and [TextureArray]. Cannot be used directly, but " "contains all the functions necessary for accessing and using [Texture3D] and " @@ -68518,16 +69792,16 @@ msgid "" "layer specifies the depth or Z-index, they can be treated as a bunch of 2D " "slices. Similarly, for [TextureArray]s, the layer specifies the array layer." msgstr "" -"[Texture2DArray]、[Cubemap]和[CubemapArray]的基类。不能直接使用,但包含了所有" -"访问派生资源类型的必要功能。数据按层设置。对于多层[Texture2DArray]指定数组" -"层。" +"是[Texture3D]和[TextureArray]的基类。不能直接使用,但包含访问和使用" +"[Texture3D]和[TextureArray]的所有必要功能。数据是以每层为单位设置的。对于" +"[Texture3D],层指定了深度或Z-index,它们可以被视为一堆二维切片。同样地,对于" +"[TextureArray],层指定了数组层。" #: doc/classes/TextureLayered.xml:15 -#, fuzzy msgid "" "Returns the depth of the texture. Depth is the 3rd dimension (typically Z-" "axis)." -msgstr "返回纹理的宽度。宽度通常由X轴表示。" +msgstr "返回纹理的深度。深度是第三个维度(通常是 Z 轴)。" #: doc/classes/TextureLayered.xml:21 msgid "" @@ -68559,13 +69833,15 @@ msgid "" "and [code]y_offset[/code] determine where the [Image] is \"stamped\" over " "the texture. The [code]image[/code] must fit within the texture." msgstr "" +"通过使用指定的[code]image[/code]的数据覆盖来部分设置指定的[code]layer[/code]" +"的数据。 [code]x_offset[/code] 和 [code]y_offset[/code] 确定 [Image] 在纹理上" +"\"stamped\" 标记的位置。 [code]image[/code] 必须适合纹理。" #: doc/classes/TextureLayered.xml:59 -#, fuzzy msgid "" "Sets the data for the specified layer. Data takes the form of a 2-" "dimensional [Image] resource." -msgstr "返回[Mesh]资源指定表面的覆盖后的[Material]。" +msgstr "设置指定图层的数据。数据的形式是二维的[Image]资源。" #: doc/classes/TextureLayered.xml:65 msgid "Returns a dictionary with all the data used by this texture." @@ -68876,7 +70152,8 @@ msgstr "" #: doc/classes/Theme.xml:11 msgid "https://docs.godotengine.org/en/3.4/tutorials/gui/gui_skinning.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/gui/gui_skinning.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/gui/gui_skinning.html" #: doc/classes/Theme.xml:17 msgid "Clears all values on the theme." @@ -69359,7 +70636,8 @@ msgstr "" msgid "" "https://docs.godotengine.org/en/3.4/tutorials/threads/thread_safe_apis.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/threads/thread_safe_apis.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/threads/thread_safe_apis." +"html" #: doc/classes/Thread.xml:19 msgid "" @@ -69376,6 +70654,9 @@ msgid "" "wait_to_finish]. For checking if a [Thread] is still executing its task, use " "[method is_alive]." msgstr "" +"如果此 [Thread] 已启动,则返回 [code]true[/code]。一旦开始,这将返回 " +"[code]true[/code] ,直到它使用 [method wait_to_finish] 加入。要检查 [Thread] " +"是否仍在执行其任务,请使用 [method is_alive]。" #: doc/classes/Thread.xml:31 msgid "" @@ -69384,6 +70665,9 @@ msgid "" "blocking the calling thread.\n" "To check if a [Thread] is joinable, use [method is_active]." msgstr "" +"当本 [Thread] 线程正在等待时,返回 [code]true[/code]。在需要确定调用 [method " +"wait_to_finish] 是否会阻塞调用线程时非常有用。\n" +"要检查 [Thread] 线程是否可合并,请使用 [method is_active]。" #: doc/classes/Thread.xml:42 msgid "" @@ -69401,7 +70685,6 @@ msgstr "" "成功时返回[constant OK],失败时返回[constant ERR_CANT_CREATE] 。" #: doc/classes/Thread.xml:49 -#, fuzzy msgid "" "Joins the [Thread] and waits for it to finish. Returns the output of the " "method passed to [method start].\n" @@ -69413,11 +70696,13 @@ msgid "" "[b]Note:[/b] After the [Thread] finishes joining it will be disposed. If you " "want to use it again you will have to create a new instance of it." msgstr "" -"加入 [Thread] 并等待它完成。返回方法调用返回的内容。\n" -"应该在您想要检索从 [Thread] 调用的方法返回的值时使用,或者在释放包含 " -"[Thread] 的实例之前使用。\n" -"[b]注:[/b][Thread]连接完成后将被销毁。如果要再次使用它,则必须创建它的新实" -"例。" +"合并 [Thread] 并等待它完成。返回传递给 [method start] 的方法的输出。\n" +"应在两种情况下使用:想要获取 [Thread] 调用的方法所返回的值,或者在释放包含 " +"[Thread] 的实例之前。\n" +"如果想确定调用本方法是否会阻塞调用线程,请检查 [method is_alive] 是否为 " +"[code]false[/code]。\n" +"[b]注意:[/b] [Thread] 在完成合并后将被销毁。如果要再次使用它,则必须创建它的" +"新实例。" #: doc/classes/Thread.xml:58 msgid "A thread running with lower priority than normally." @@ -69453,7 +70738,8 @@ msgstr "" #: doc/classes/TileMap.xml:11 doc/classes/TileSet.xml:11 msgid "https://docs.godotengine.org/en/3.4/tutorials/2d/using_tilemaps.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/2d/using_tilemaps.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/2d/using_tilemaps.html" #: doc/classes/TileMap.xml:14 doc/classes/TileSet.xml:14 msgid "https://godotengine.org/asset-library/asset/111" @@ -69721,8 +71007,8 @@ msgid "" "documentation for more information." msgstr "" "图块地图中所有碰撞器的碰撞层。更多信息请参阅文档中的[url=https://docs." -"godotengine.org/en/3.4/tutorials/physics/physics_introduction.html#collision-" -"layers-and-masks]碰撞层和掩码[/url]。" +"godotengine.org/zh_CN/stable/tutorials/physics/physics_introduction." +"html#collision-layers-and-masks]碰撞层和掩码[/url]。" #: doc/classes/TileMap.xml:252 msgid "" @@ -69732,8 +71018,8 @@ msgid "" "documentation for more information." msgstr "" "图块地图中所有碰撞器的碰撞掩码。更多信息请参阅文档中的[url=https://docs." -"godotengine.org/en/3.4/tutorials/physics/physics_introduction.html#collision-" -"layers-and-masks]碰撞层和掩码[/url]。" +"godotengine.org/zh_CN/stable/tutorials/physics/physics_introduction." +"html#collision-layers-and-masks]碰撞层和掩码[/url]。" #: doc/classes/TileMap.xml:255 msgid "" @@ -70310,6 +71596,12 @@ msgid "" "rendered framerate. For very low wait times, it is recommended to use a " "process loop in a script instead of using a Timer node." msgstr "" +"等待的秒数。\n" +"[b]注意:[/b] 计时器在一个渲染帧中最多只能触发一次(如果 [member " +"process_mode] 为 [constant TIMER_PROCESS_PHYSICS],则是在一个物理帧中最多一" +"次)。也就是说,非常低的等待时间(小于 0.05 秒)会根据渲染帧率的不同而产生不" +"同的行为。如果等待时间非常小,建议在脚本中使用 process 循环,不要用 Timer 节" +"点。" #: doc/classes/Timer.xml:67 msgid "" @@ -70372,6 +71664,8 @@ msgid "" "text color of the button. Disabled, hovered, and pressed states take " "precedence over this color." msgstr "" +"聚焦 [ToolButton] 时所使用的文本 [Color] 颜色。仅替换正常文字颜色。禁用、悬" +"停、以及按下状态的优先级比该颜色高。" #: doc/classes/ToolButton.xml:42 msgid "Text [Color] used when the [ToolButton] is being hovered." @@ -70805,12 +72099,12 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/i18n/internationalizing_games." "html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/i18n/internationalizing_games." -"html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/i18n/" +"internationalizing_games.html" #: doc/classes/Translation.xml:11 doc/classes/TranslationServer.xml:11 msgid "https://docs.godotengine.org/en/3.4/tutorials/i18n/locales.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/i18n/locales.html" +msgstr "https://docs.godotengine.org/zh_CN/stable/tutorials/i18n/locales.html" #: doc/classes/Translation.xml:18 msgid "Virtual method to override [method get_message]." @@ -73317,7 +74611,8 @@ msgstr "" #: doc/classes/Variant.xml:53 msgid "https://docs.godotengine.org/en/3.4/development/cpp/variant_class.html" -msgstr "https://docs.godotengine.org/en/3.4/development/cpp/variant_class.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/development/cpp/variant_class.html" #: doc/classes/VBoxContainer.xml:4 msgid "Vertical box container." @@ -74413,7 +75708,8 @@ msgstr "" #: doc/classes/Viewport.xml:16 msgid "https://docs.godotengine.org/en/3.4/tutorials/viewports/index.html" -msgstr "https://docs.godotengine.org/en/3.4/tutorials/viewports/index.html" +msgstr "" +"https://docs.godotengine.org/zh_CN/stable/tutorials/viewports/index.html" #: doc/classes/Viewport.xml:18 doc/classes/ViewportTexture.xml:12 msgid "https://godotengine.org/asset-library/asset/128" @@ -75400,8 +76696,8 @@ msgid "" "https://docs.godotengine.org/en/3.4/getting_started/scripting/visual_script/" "index.html" msgstr "" -"https://docs.godotengine.org/en/3.4/getting_started/scripting/visual_script/" -"index.html" +"https://docs.godotengine.org/zh_CN/stable/getting_started/scripting/" +"visual_script/index.html" #: modules/visual_script/doc_classes/VisualScript.xml:19 msgid "Add a custom signal with the specified name to the VisualScript." @@ -77412,7 +78708,8 @@ msgstr "" msgid "" "https://docs.godotengine.org/en/3.4/tutorials/optimization/using_servers.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/optimization/using_servers.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/optimization/" +"using_servers.html" #: doc/classes/VisualServer.xml:28 msgid "Sets images to be rendered in the window margin." @@ -80933,7 +82230,8 @@ msgstr "" msgid "" "https://docs.godotengine.org/en/3.4/tutorials/shading/visual_shaders.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/shading/visual_shaders.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/shading/visual_shaders." +"html" #: doc/classes/VisualShaderNode.xml:16 msgid "" @@ -81505,7 +82803,7 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/" "visual_shader_plugins.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/plugins/editor/" +"https://docs.godotengine.org/zh_CN/stable/tutorials/plugins/editor/" "visual_shader_plugins.html" #: doc/classes/VisualShaderNodeCustom.xml:22 @@ -81935,8 +83233,8 @@ msgid "" "https://docs.godotengine.org/en/3.4/tutorials/shading/shading_reference/" "index.html" msgstr "" -"https://docs.godotengine.org/en/3.4/tutorials/shading/shading_reference/" -"index.html" +"https://docs.godotengine.org/zh_CN/stable/tutorials/shading/" +"shading_reference/index.html" #: doc/classes/VisualShaderNodeInput.xml:20 msgid "" @@ -83596,14 +84894,13 @@ msgid "A class representing a specific WebSocket connection." msgstr "表示特定WebSocket连接的类。" #: modules/websocket/doc_classes/WebSocketPeer.xml:7 -#, fuzzy msgid "" "This class represents a specific WebSocket connection, allowing you to do " "lower level operations with it.\n" "You can choose to write to the socket in binary or text mode, and you can " "recognize the mode used for writing by the other peer." msgstr "" -"该类表示特定的WebSocket连接,你可以用它做低级别的操作。\n" +"该类表示特定的 WebSocket 连接,你可以用它执行底层操作。\n" "可以选择以二进制或文本模式写入套接字,也可以识别另一个对等体用于写入的模式。" #: modules/websocket/doc_classes/WebSocketPeer.xml:18 @@ -84394,6 +85691,9 @@ msgid "" "may cause a crash. If you wish to hide it or any of its children, use their " "[member CanvasItem.visible] property." msgstr "" +"返回关闭的 [TextureButton]。\n" +"[b]警告:[/b] 这是一个必需的内部节点,删除和释放它可能会导致崩溃。如果您希望" +"隐藏它或其任何子项,请使用它们的 [member CanvasItem.visible] 属性。" #: doc/classes/WindowDialog.xml:22 msgid "If [code]true[/code], the user can resize the window." @@ -84749,6 +86049,39 @@ msgid "" "If [code]true[/code], child nodes are sorted, otherwise sorting is disabled." msgstr "如果为[code]true[/code],则对子节点进行排序,否则禁用排序。" +#~ msgid "Returns this [AABB] expanded to include a given point." +#~ msgstr "返回被扩展至包含指定点的该 [AABB]。" + +#~ msgid "" +#~ "Applies morphological dilation to the bitmap. The first argument is the " +#~ "dilation amount, Rect2 is the area where the dilation will be applied." +#~ msgstr "在位图上应用形态扩展。第一个参数是扩展量,Rect2是要应用扩展的区域。" + +#~ msgid "Returns the [Physics2DDirectBodyState] of the body." +#~ msgstr "返回物体的[Physics2DDirectBodyState]。" + +#~ msgid "Returns the [PhysicsDirectBodyState] of the body." +#~ msgstr "返回物体的[PhysicsDirectBodyState]。" + +#~ msgid "" +#~ "Output latency in milliseconds for audio. Lower values will result in " +#~ "lower audio latency at the cost of increased CPU usage. Low values may " +#~ "result in audible cracking on slower hardware." +#~ msgstr "" +#~ "音频的输出延迟(毫秒)。较低的值将导致较低的音频延迟,但代价是CPU使用率增" +#~ "加。较低的值可能会导致较慢硬件上的声音破裂。" + +#~ msgid "Returns this [Rect2] expanded to include a given point." +#~ msgstr "返回包含给定点的此 [Rect2] 的扩展。" + +#~ msgid "Returns [code]true[/code] if the [Rect2] contains a point." +#~ msgstr "如果 [Rect2] 包含点,则返回 [code]true[/code]。" + +#~ msgid "" +#~ "Append vertices from a given [Mesh] surface onto the current vertex array " +#~ "with specified [Transform]." +#~ msgstr "将给定 [Mesh] 表面的顶点附加到具有指定 [Transform] 的当前顶点数组。" + #~ msgid "" #~ "Returns a list of intersecting [Area]s. For performance reasons " #~ "(collisions are all processed at the same time) this list is modified " |