diff options
Diffstat (limited to 'doc/translations/zh_CN.po')
-rw-r--r-- | doc/translations/zh_CN.po | 3353 |
1 files changed, 1912 insertions, 1441 deletions
diff --git a/doc/translations/zh_CN.po b/doc/translations/zh_CN.po index 94f4b4d5da..fdd36621c7 100644 --- a/doc/translations/zh_CN.po +++ b/doc/translations/zh_CN.po @@ -57,11 +57,12 @@ # Cc <2590090025@qq.com>, 2021. # 苏轼 <youwanyuyu@gmail.com>, 2021. # ErrorDreemurr <diandaokui@qq.com>, 2021. +# 烧风 <hk-shao@foxmail.com>, 2022. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2022-01-12 16:56+0000\n" +"PO-Revision-Date: 2022-02-14 22:08+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" @@ -70,7 +71,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.10.1\n" +"X-Generator: Weblate 4.11-dev\n" #: doc/tools/make_rst.py msgid "Description" @@ -1488,7 +1489,7 @@ msgstr "" "randi() # 返回介于 0 到 2^32 - 1 之间的随机整数\n" "randi() % 20 # 返回介于 0 到 19之间的随机整数\n" "randi() % 100 # 返回介于 0 到 99 之间的随机整数\n" -"randi() % 100 + 1 # 返回介于 0 到 100 之间的随机整数\n" +"randi() % 100 + 1 # 返回介于 1 到 100 之间的随机整数\n" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml @@ -1900,9 +1901,9 @@ msgstr "" "[codeblock]\n" "p = parse_json('[\"a\", \"b\", \"c\"]')\n" "if typeof(p) == TYPE_ARRAY:\n" -" print(p[0]) # Prints a\n" +" print(p[0]) # 输出 a\n" "else:\n" -" print(\"unexpected results\")\n" +" print(\"出乎意料的结果\")\n" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml @@ -1918,15 +1919,15 @@ msgid "" " push_error(\"Invalid JSON: \" + v)\n" "[/codeblock]" msgstr "" -"检查 [code]json[/code] 是有效的JSON数据。如果有效,则返回空字符串,否则返回错" -"误消息。\n" +"检查 [code]json[/code] 是有效的 JSON 数据。如果有效,则返回空字符串,否则返回" +"错误消息。\n" "[codeblock]\n" "j = to_json([1, 2, 3])\n" "v = validate_json(j)\n" "if not v:\n" -" print(\"Valid JSON.\")\n" +" print(\"有效 JSON。\")\n" "else:\n" -" push_error(\"Invalid JSON: \" + v)\n" +" push_error(\"无效 JSON:\" + v)\n" "[/codeblock]" #: modules/gdscript/doc_classes/@GDScript.xml @@ -1960,7 +1961,7 @@ msgstr "" "a = { \"a\": 1, \"b\": 2 }\n" "print(var2str(a))\n" "[/codeblock]\n" -"prints\n" +"会输出\n" "[codeblock]\n" "{\n" "\"a\": 1,\n" @@ -2007,18 +2008,18 @@ msgstr "" "在 [code]min[/code] 和 [code]max[/code] 之间将 [code]value[/code] 循环。\n" "可用于创建类似循环的行为或无限曲面。\n" "[codeblock]\n" -"# Infinite loop between 5.0 and 9.9\n" +"# 在 5.0 和 9.9 之间无限循环\n" "value = wrapf(value + 0.1, 5.0, 10.0)\n" "[/codeblock]\n" "[codeblock]\n" -"# Infinite rotation (in radians)\n" +"# 无限旋转(弧度)\n" "angle = wrapf(angle + 0.1, 0.0, TAU)\n" "[/codeblock]\n" "[codeblock]\n" -"# Infinite rotation (in radians)\n" +"# 无限旋转(弧度)\n" "angle = wrapf(angle + 0.1, -PI, PI)\n" "[/codeblock]\n" -"[b]注意:[/b] 如果 [code]min[/code] 为 [code]0[/code],则等价于 [method " +"[b]注意:[/b]如果 [code]min[/code] 为 [code]0[/code],则等价于 [method " "fposmod],因此请改用它。\n" "通过让用户控制最小值,[code]wrapf[/code] 比使用 [method fposmod] 方法更灵活。" @@ -3562,6 +3563,10 @@ msgid "" "- Linux: Up to 80 buttons.\n" "- Windows and macOS: Up to 128 buttons." msgstr "" +"引擎所支持的最大游戏控制器按钮数。特定平台上的实际界限可能更低:\n" +"- Android:最多 36 个按钮。\n" +"- Linux:最多 80 个按钮。\n" +"- Windows 和 macOS:最多 128 个按钮。" #: doc/classes/@GlobalScope.xml msgid "DualShock circle button." @@ -4147,9 +4152,10 @@ msgid "" "or_greater,or_lesser\"[/code]." msgstr "" "通过提示串[code]\"min,max\"[/code] 或[code]\"min,max,step\"[/code]来提示一个" -"整数或浮点数属性应当落在指定范围内。提示串可以选择性地包含 [code]\"or_greater" -"\"[/code] 与/或 [code]\"or_lesser\"[/code] 来允许手动输入的值超过或低于最大最" -"小值。例如: [code]\"-360,360,1,or_greater,or_lesser\"[/code]。" +"整数或浮点数属性应当落在指定范围内。提示串可以选择性地包含 " +"[code]\"or_greater\"[/code] 与/或 [code]\"or_lesser\"[/code] 来允许手动输入的" +"值超过或低于最大最小值。例如: [code]\"-360,360,1,or_greater,or_lesser\"[/" +"code]。" #: doc/classes/@GlobalScope.xml msgid "" @@ -4229,8 +4235,8 @@ msgid "" "with wildcards like [code]\"*.png,*.jpg\"[/code]." msgstr "" "提示一个字符串属性是关于一个文件的路径。编辑该属性时会弹出取得文件路径的文件" -"对话框。此处的提示文本可以是一组带有通配符的过滤器,例如 [code]\"*.png,*.jpg" -"\"[/code]。" +"对话框。此处的提示文本可以是一组带有通配符的过滤器,例如 [code]\"*.png,*." +"jpg\"[/code]。" #: doc/classes/@GlobalScope.xml msgid "" @@ -4244,8 +4250,8 @@ msgstr "" msgid "" "Hints that a string property is an absolute path to a file outside the " "project folder. Editing it will show a file dialog for picking the path. The " -"hint string can be a set of filters with wildcards like [code]\"*.png,*.jpg" -"\"[/code]." +"hint string can be a set of filters with wildcards like [code]\"*.png,*." +"jpg\"[/code]." msgstr "" "提示一个字符串属性是关于一个在项目文件夹之外的文件的绝对路径。编辑该属性时会" "弹出取得文件路径的文件对话框。此处的提示文本可以是一组带有通配符的过滤器,例" @@ -4609,7 +4615,6 @@ msgid "Axis-Aligned Bounding Box." msgstr "轴对齐包围盒。" #: doc/classes/AABB.xml -#, fuzzy msgid "" "[AABB] consists of a position, a size, and several utility functions. It is " "typically used for fast overlap tests.\n" @@ -4618,27 +4623,26 @@ msgid "" "[b]Note:[/b] Unlike [Rect2], [AABB] does not have a variant that uses " "integer coordinates." msgstr "" -"[AABB] 由一个位置、一个大小和几个实用函数组成。它通常用于快速重叠测试。\n" +"[AABB] 由一个位置、一个大小和若干实用函数组成,通常用于快速重叠测试。\n" "它使用浮点坐标。[AABB] 的 2D 对应物为 [Rect2]。\n" -"不支持负数的 [member size],大多数方法会无法正常工作。请使用 [method abs] 获" -"取正数大小的 AABB。\n" "[b]注意:[/b]与 [Rect2] 不同,[AABB] 没有使用整数坐标的变体。" -#: doc/classes/AABB.xml doc/classes/Basis.xml doc/classes/Plane.xml -#: doc/classes/Rect2.xml doc/classes/Transform.xml doc/classes/Transform2D.xml +#: doc/classes/AABB.xml doc/classes/Basis.xml doc/classes/Rect2.xml +#: doc/classes/Transform.xml doc/classes/Transform2D.xml #: doc/classes/Vector2.xml doc/classes/Vector3.xml -msgid "$DOCS_URL/tutorials/math/index.html" -msgstr "$DOCS_URL/tutorials/math/index.html" +msgid "Math tutorial index" +msgstr "" #: doc/classes/AABB.xml doc/classes/Rect2.xml doc/classes/Vector2.xml #: doc/classes/Vector3.xml -msgid "$DOCS_URL/tutorials/math/vector_math.html" -msgstr "$DOCS_URL/tutorials/math/vector_math.html" +#, fuzzy +msgid "Vector math" +msgstr "用于二维数学的向量。" #: doc/classes/AABB.xml doc/classes/Rect2.xml doc/classes/Vector2.xml #: doc/classes/Vector3.xml -msgid "$DOCS_URL/tutorials/math/vectors_advanced.html" -msgstr "$DOCS_URL/tutorials/math/vectors_advanced.html" +msgid "Advanced vector math" +msgstr "" #: doc/classes/AABB.xml msgid "Constructs an [AABB] from a position and size." @@ -5075,10 +5079,9 @@ msgstr "" "[code]run[/code] 和 [code]run_normal[/code],将使 [code]run[/code] 动画使用该" "法线贴图。" -#: doc/classes/AnimatedSprite.xml doc/classes/AnimatedSprite3D.xml -#: doc/classes/AnimationPlayer.xml -msgid "$DOCS_URL/tutorials/2d/2d_sprite_animation.html" -msgstr "$DOCS_URL/tutorials/2d/2d_sprite_animation.html" +#: doc/classes/AnimatedSprite.xml doc/classes/AnimationPlayer.xml +msgid "2D Sprite animation" +msgstr "" #: doc/classes/AnimatedSprite.xml doc/classes/Area2D.xml #: doc/classes/AudioStreamPlayer.xml doc/classes/Button.xml @@ -5087,8 +5090,8 @@ msgstr "$DOCS_URL/tutorials/2d/2d_sprite_animation.html" #: doc/classes/InputEventAction.xml doc/classes/Label.xml #: doc/classes/Particles2D.xml doc/classes/Timer.xml #: doc/classes/VisibilityNotifier2D.xml -msgid "https://godotengine.org/asset-library/asset/515" -msgstr "https://godotengine.org/asset-library/asset/515" +msgid "2D Dodge The Creeps Demo" +msgstr "" #: doc/classes/AnimatedSprite.xml msgid "" @@ -5175,6 +5178,10 @@ msgstr "" "动画能够使用一个 [SpriteFrames] 资源创建,可以在编辑器的动画帧面板配置。" #: doc/classes/AnimatedSprite3D.xml +msgid "2D Sprite animation (also applies to 3D)" +msgstr "" + +#: doc/classes/AnimatedSprite3D.xml msgid "Returns [code]true[/code] if an animation is currently being played." msgstr "当前正在播放动画时返回 [code]true[/code] 。" @@ -5282,11 +5289,11 @@ msgid "" "For example, an animation with 8 frames, no frame delay and a [code]fps[/" "code] value of 2 will run for 4 seconds, with each frame lasting 0.5 seconds." msgstr "" -"动画速度,以每秒帧数为单位。此值定义动画两个帧之间的默认时间间隔,并因此基于" -"[member frames]属性定义动画循环的总体持续时间。值为0表示每秒没有预定义的帧" -"数,动画将根据每个帧的帧延迟播放(请参阅[method set_frame_delay])。\n" -"例如,具有8帧,无帧延迟且[code]fps[/code]值为2的动画将运行4秒,每帧持续0.5" -"秒。" +"动画速度,以每秒帧数为单位。此值定义动画两个帧之间的默认时间间隔,并因此基于 " +"[member frames] 属性定义动画循环的总体持续时间。值为 0 表示每秒没有预定义的帧" +"数,动画将根据每个帧的帧延迟播放(请参阅 [method set_frame_delay])。\n" +"例如,具有 8 帧,无帧延迟且 [code]fps[/code] 值为 2 的动画将运行 4 秒,每帧持" +"续 0.5 秒。" #: doc/classes/AnimatedTexture.xml msgid "" @@ -5365,10 +5372,6 @@ msgstr "" "点上才能播放。动画轨道有不同的类型,每个都有自己的一套专用方法。参阅 [enum " "TrackType] 查看可用类型。" -#: doc/classes/Animation.xml doc/classes/AnimationPlayer.xml -msgid "$DOCS_URL/tutorials/animation/index.html" -msgstr "$DOCS_URL/tutorials/animation/index.html" - #: doc/classes/Animation.xml msgid "Adds a track to the Animation." msgstr "向动画添加轨道。" @@ -5872,22 +5875,6 @@ msgstr "" "在创建主要用于 [AnimationNodeBlendTree] 的节点时,继承该属性,否则应改用 " "[AnimationRootNode]。" -#: doc/classes/AnimationNode.xml doc/classes/AnimationNodeAdd2.xml -#: doc/classes/AnimationNodeAdd3.xml doc/classes/AnimationNodeAnimation.xml -#: doc/classes/AnimationNodeBlend2.xml doc/classes/AnimationNodeBlend3.xml -#: doc/classes/AnimationNodeBlendSpace1D.xml -#: doc/classes/AnimationNodeBlendSpace2D.xml -#: doc/classes/AnimationNodeBlendTree.xml doc/classes/AnimationNodeOneShot.xml -#: doc/classes/AnimationNodeOutput.xml -#: doc/classes/AnimationNodeStateMachine.xml -#: doc/classes/AnimationNodeStateMachinePlayback.xml -#: doc/classes/AnimationNodeStateMachineTransition.xml -#: doc/classes/AnimationNodeTimeScale.xml doc/classes/AnimationNodeTimeSeek.xml -#: doc/classes/AnimationNodeTransition.xml doc/classes/AnimationTree.xml -#: doc/classes/AnimationTreePlayer.xml -msgid "$DOCS_URL/tutorials/animation/animation_tree.html" -msgstr "$DOCS_URL/tutorials/animation/animation_tree.html" - #: doc/classes/AnimationNode.xml msgid "" "Adds an input to the node. This is only useful for nodes created for use in " @@ -6101,12 +6088,22 @@ msgid "" "- A +add animation to blend with when the blend amount is in the [code][0.0, " "1.0][/code] range" msgstr "" -"添加到 [AnimationNodeBlendTree] 的资源。根据 [code][-1.0, 1.0][/code] 范围内" -"的值,将三个动画中的两个动画加法混合在一起。\n" +"可添加到 [AnimationNodeBlendTree] 的资源。根据 [code][-1.0, 1.0][/code] 范围" +"内的值,将三个动画中的两个动画加法混合在一起。\n" "这个节点有三个输入。\n" "- 要添加到基础动画中的动画\n" -"- 当混合量在[code][-1.0,0.0][/code]范围内时,添加动画进行混合。\n" -"- 当混合量在[code][0.0,1.0][/code]范围内时,添加动画进行混合" +"- 当混合量在 [code][-1.0,0.0][/code] 范围内时,添加动画进行混合。\n" +"- 当混合量在 [code][0.0,1.0][/code] 范围内时,添加动画进行混合" + +#: doc/classes/AnimationNodeAdd3.xml doc/classes/AnimationNodeAnimation.xml +#: doc/classes/AnimationNodeBlend2.xml +#: doc/classes/AnimationNodeBlendSpace2D.xml +#: doc/classes/AnimationNodeOneShot.xml doc/classes/AnimationNodeOutput.xml +#: doc/classes/AnimationNodeTimeScale.xml +#: doc/classes/AnimationNodeTransition.xml +#, fuzzy +msgid "AnimationTree" +msgstr "Animation节点。" #: doc/classes/AnimationNodeAdd3.xml doc/classes/AnimationNodeAnimation.xml #: doc/classes/AnimationNodeBlend2.xml @@ -6121,8 +6118,8 @@ msgstr "" #: doc/classes/Mesh.xml doc/classes/MeshInstance.xml doc/classes/Particles.xml #: doc/classes/Quat.xml doc/classes/Skeleton.xml doc/classes/SpotLight.xml #: doc/classes/StaticBody.xml doc/classes/WorldEnvironment.xml -msgid "https://godotengine.org/asset-library/asset/678" -msgstr "https://godotengine.org/asset-library/asset/678" +msgid "Third Person Shooter Demo" +msgstr "" #: doc/classes/AnimationNodeAnimation.xml msgid "Input animation to use in an [AnimationNodeBlendTree]." @@ -6145,8 +6142,8 @@ msgstr "" #: doc/classes/KinematicBody.xml doc/classes/Mesh.xml #: doc/classes/MeshInstance.xml doc/classes/MeshLibrary.xml #: doc/classes/ProjectSettings.xml doc/classes/Transform.xml -msgid "https://godotengine.org/asset-library/asset/125" -msgstr "https://godotengine.org/asset-library/asset/125" +msgid "3D Platformer Demo" +msgstr "" #: doc/classes/AnimationNodeAnimation.xml msgid "" @@ -6210,7 +6207,7 @@ msgid "" "You can set the extents of the axis using the [member min_space] and [member " "max_space]." msgstr "" -"要添加到 [AnimationNodeBlendTree] 的资源。\n" +"可添加到 [AnimationNodeBlendTree] 的资源。\n" "这是一个虚拟轴,您可以使用 [method add_blend_point] 在上面添加任何类型的 " "[AnimationNode]。\n" "输出最接近节点当前值的两个 [AnimationNode] 的线性混合。\n" @@ -6493,7 +6490,7 @@ msgstr "连接成功。" #: doc/classes/AnimationNodeBlendTree.xml msgid "The input node is [code]null[/code]." -msgstr "输入节点为[code]null[/code]。" +msgstr "输入节点为 [code]null[/code]。" #: doc/classes/AnimationNodeBlendTree.xml msgid "The specified input port is out of range." @@ -6501,7 +6498,7 @@ msgstr "指定的输入端口已出范围。" #: doc/classes/AnimationNodeBlendTree.xml msgid "The output node is [code]null[/code]." -msgstr "输出节点为[code]null[/code]。" +msgstr "输出节点为 [code]null[/code]。" #: doc/classes/AnimationNodeBlendTree.xml msgid "Input and output nodes are the same." @@ -6513,7 +6510,7 @@ msgstr "指定的连接已经存在。" #: doc/classes/AnimationNodeOneShot.xml msgid "Plays an animation once in [AnimationNodeBlendTree]." -msgstr "在[AnimationNodeBlendTree]中播放一次动画。" +msgstr "在 [AnimationNodeBlendTree] 中播放一次动画。" #: doc/classes/AnimationNodeOneShot.xml msgid "" @@ -6521,14 +6518,14 @@ msgid "" "sub-animation and return once it finishes. Blend times for fading in and out " "can be customized, as well as filters." msgstr "" -"要添加到[AnimationNodeBlendTree]的资源。这个节点将执行一个子动画,并在完成后" -"返回。可以自定义淡入和淡出的混合时间,以及过滤器。" +"可添加到 [AnimationNodeBlendTree] 的资源。这个节点将执行一个子动画,并在完成" +"后返回。可以自定义淡入和淡出的混合时间,以及过滤器。" #: doc/classes/AnimationNodeOneShot.xml msgid "" "If [code]true[/code], the sub-animation will restart automatically after " "finishing." -msgstr "如果[code]true[/code],子动画完成后会自动重新开始。" +msgstr "如果为 [code]true[/code],则子动画完成后会自动重新开始。" #: doc/classes/AnimationNodeOneShot.xml msgid "The delay after which the automatic restart is triggered, in seconds." @@ -6545,7 +6542,7 @@ msgstr "" #: doc/classes/AnimationNodeOutput.xml msgid "Generic output node to be added to [AnimationNodeBlendTree]." -msgstr "要添加到[AnimationNodeBlendTree]的通用输出节点。" +msgstr "可添加到 [AnimationNodeBlendTree] 的通用输出节点。" #: doc/classes/AnimationNodeStateMachine.xml msgid "State machine for control of animations." @@ -6895,6 +6892,11 @@ msgstr "" "更新动画的目标属性是在处理时进行的。" #: doc/classes/AnimationPlayer.xml +#, fuzzy +msgid "Animation tutorial index" +msgstr "Animation节点。" + +#: doc/classes/AnimationPlayer.xml msgid "" "Adds [code]animation[/code] to the player accessible with the key " "[code]name[/code]." @@ -7028,13 +7030,13 @@ msgid "" "[b]Note:[/b] If a looped animation is currently playing, the queued " "animation will never play unless the looped animation is stopped somehow." msgstr "" -"当当前动画播放完毕后,排队等待播放。\n" +"将动画加入队列,在当前动画播放完毕后播放。\n" "[b]注意:[/b]如果当前正在播放循环动画,除非以某种方式停止循环动画,否则排队的" "动画将永远不会播放。" #: doc/classes/AnimationPlayer.xml msgid "Removes the animation with key [code]name[/code]." -msgstr "移除按键[code]name[/code]的动画。" +msgstr "移除键名为 [code]name[/code] 的动画。" #: doc/classes/AnimationPlayer.xml msgid "" @@ -7101,14 +7103,14 @@ msgid "" "tracks. For more information, see [Animation]." msgstr "" "当前播放的动画的名称。如果没有动画正在播放,该属性的值是一个空字符串。改变这" -"个值不会重新启动动画。关于播放动画的更多信息请参阅[method play]。\n" -"[b]注意:[/b] 虽然这个属性出现在检查器中,但它不是用来编辑的,也不会保存在场" +"个值不会重新启动动画。关于播放动画的更多信息请参阅 [method play]。\n" +"[b]注意:[/b]虽然这个属性会出现在检查器中,但它不是用来编辑的,也不会保存在场" "景中。该属性主要用于获取当前播放的动画,内部用于动画播放轨道。有关详细信息," -"请参阅动画[Animation]。" +"请参阅动画 [Animation]。" #: doc/classes/AnimationPlayer.xml msgid "The length (in seconds) of the currently being played animation." -msgstr "当前正在播放的动画的长度(秒)。" +msgstr "当前正在播放的动画的长度(以秒为单位)。" #: doc/classes/AnimationPlayer.xml msgid "The position (in seconds) of the currently playing animation." @@ -7185,7 +7187,9 @@ msgstr "当动画开始播放时通知。" msgid "" "Notifies when the caches have been cleared, either automatically, or " "manually via [method clear_caches]." -msgstr "当缓存被清除时,通过[method clear_caches]自动或手动通知。" +msgstr "" +"当缓存被清除时通知,可以是自动清除,也可以是通过 [method clear_caches] 手动清" +"除。" #: doc/classes/AnimationPlayer.xml doc/classes/AnimationTreePlayer.xml msgid "" @@ -7239,6 +7243,11 @@ msgstr "" "画。" #: doc/classes/AnimationTree.xml +#, fuzzy +msgid "Using AnimationTree" +msgstr "重置此 [AnimationTreePlayer]。" + +#: doc/classes/AnimationTree.xml msgid "Manually advance the animations by the specified time (in seconds)." msgstr "手动将动画前进指定的时间(单位为秒)。" @@ -7774,8 +7783,8 @@ msgstr "" #: doc/classes/Area.xml doc/classes/QuadMesh.xml doc/classes/Viewport.xml #: doc/classes/ViewportTexture.xml -msgid "https://godotengine.org/asset-library/asset/127" -msgstr "https://godotengine.org/asset-library/asset/127" +msgid "GUI in 3D Demo" +msgstr "" #: doc/classes/Area.xml msgid "" @@ -8091,19 +8100,19 @@ msgstr "" "参数(重力、阻尼),并将音频路由到一个自定义的音频总线。" #: doc/classes/Area2D.xml -msgid "$DOCS_URL/tutorials/physics/using_area_2d.html" -msgstr "$DOCS_URL/tutorials/physics/using_area_2d.html" +msgid "Using Area2D" +msgstr "" #: doc/classes/Area2D.xml doc/classes/CollisionShape2D.xml #: doc/classes/RectangleShape2D.xml -msgid "https://godotengine.org/asset-library/asset/121" -msgstr "https://godotengine.org/asset-library/asset/121" +msgid "2D Pong Demo" +msgstr "" #: doc/classes/Area2D.xml doc/classes/Camera2D.xml #: doc/classes/KinematicBody2D.xml doc/classes/TileMap.xml #: doc/classes/TileSet.xml -msgid "https://godotengine.org/asset-library/asset/120" -msgstr "https://godotengine.org/asset-library/asset/120" +msgid "2D Platformer Demo" +msgstr "" #: doc/classes/Area2D.xml msgid "" @@ -8393,9 +8402,9 @@ msgid "" "pushing/removing elements. Using [code]const[/code] will only prevent " "assigning the constant with another value after it was initialized." msgstr "" -"一个通用数组,可以包含多个任何类型的元素,可以通过从 0 开始的数字索引进行访" -"问。负数索引可以用来从后面数起,就像在 Python 中一样(-1 是最后一个元素、-2 " -"是倒数第二,等等)。\n" +"通用数组,可以包含多个任何类型的元素,可以通过从 0 开始的数字索引进行访问。负" +"数索引可以用来从后面数起,就像在 Python 中一样(-1 是最后一个元素、-2 是倒数" +"第二,以此类推)。\n" "[b]Example:[/b]\n" "[codeblock]\n" "var array = [\"One\", 2, 3, \"Four\"]\n" @@ -8416,36 +8425,36 @@ msgstr "" "[b]注意:[/b]数组总是通过引用来传递。要获得一个可以独立于原始数组而被修改的数" "组的副本,请使用 [method duplicate]。\n" "[b]注意:[/b]当用 [code]const[/code] 声明数组时,数组本身仍然可以通过定义各个" -"索引上的值或推/移元素而被修改。使用 [code]const[/code] 只能防止在初始化常数后" -"将其赋值给另一个值。" +"索引上的值或追加/移除元素而被修改。使用 [code]const[/code] 只能防止常量在初始" +"化后被赋值为另一个值。" #: doc/classes/Array.xml msgid "Constructs an array from a [PoolColorArray]." -msgstr "从[PoolColorArray]构建一个数组。" +msgstr "从 [PoolColorArray] 构建一个数组。" #: doc/classes/Array.xml msgid "Constructs an array from a [PoolVector3Array]." -msgstr "从一个[PoolVector3Array]构建一个数组。" +msgstr "从 [PoolVector3Array] 构建一个数组。" #: doc/classes/Array.xml msgid "Constructs an array from a [PoolVector2Array]." -msgstr "从[PoolVector2Array]构造一个数组。" +msgstr "从 [PoolVector2Array] 构造一个数组。" #: doc/classes/Array.xml msgid "Constructs an array from a [PoolStringArray]." -msgstr "从[PoolStringArray]构建一个数组。" +msgstr "从 [PoolStringArray] 构建一个数组。" #: doc/classes/Array.xml msgid "Constructs an array from a [PoolRealArray]." -msgstr "从[PoolRealArray]构造一个数组。" +msgstr "从 [PoolRealArray] 构造一个数组。" #: doc/classes/Array.xml msgid "Constructs an array from a [PoolIntArray]." -msgstr "从[PoolIntArray]构建一个数组。" +msgstr "从 [PoolIntArray] 构建一个数组。" #: doc/classes/Array.xml msgid "Constructs an array from a [PoolByteArray]." -msgstr "从[PoolByteArray]构建一个数组。" +msgstr "从 [PoolByteArray] 构建一个数组。" #: doc/classes/Array.xml doc/classes/PoolByteArray.xml #: doc/classes/PoolColorArray.xml doc/classes/PoolIntArray.xml @@ -8483,7 +8492,7 @@ msgid "" msgstr "" "返回数组的最后一个元素。如果数组为空,则打印一个错误并返回[code]null[/" "code]。\n" -"[b]注意:[/b] 调用这个函数与写入[code]array[-1][/code]不一样,如果数组是空" +"[b]注意:[/b]调用这个函数与写入 [code]array[-1][/code] 不一样,如果数组是空" "的,当从编辑器运行时,按索引访问将暂停项目的执行。" #: doc/classes/Array.xml @@ -8499,7 +8508,7 @@ msgstr "" "使用二分法查找已有值的索引(该值不存在时,为现有顺序下的插入索引)。" "[code]before[/code] 参数是可选的,为 [code]false[/code] 时返回的索引位于数组" "中所有同值元素之后。\n" -"[b]注意:[/b] 在未排序的数组上调用 [method bsearch] 会产生预料之外的行为。" +"[b]注意:[/b]在未排序的数组上调用 [method bsearch] 会产生预料之外的行为。" #: doc/classes/Array.xml msgid "" @@ -8667,18 +8676,22 @@ msgstr "" "[\"inside\", 7].has(7) # True\n" "[\"inside\", 7].has(\"7\") # False\n" "[/codeblock]\n" -" [b]注意:[/b]这等同于使用[code]in[/code]操作符,如下所示。\n" -"[codeblock] \n" -"# 将评估为 `true`。 \n" +"[b]注意:[/b]这等同于使用 [code]in[/code] 操作符,如下所示。\n" +"[codeblock]\n" +"# 将评估为 `true`。\n" "if 2 in [2, 4, 6, 8]:\n" -" pass \n" +" pass\n" "[/codeblock]" #: doc/classes/Array.xml +#, fuzzy msgid "" -"Returns a hashed integer value representing the array and its contents.\n" -"[b]Note:[/b] Arrays with equal contents can still produce different hashes. " -"Only the exact same arrays will produce the same hashed integer value." +"Returns a hashed 32-bit integer value representing the array and its " +"contents.\n" +"[b]Note:[/b] [Array]s with equal content will always produce identical hash " +"values. However, the reverse is not true. Returning identical hash values " +"does [i]not[/i] imply the arrays are equal, because different arrays can " +"have identical hash values due to hash collisions." msgstr "" "返回代表这个数组及其内容的整数哈希值。\n" "[b]注意:[/b]仅仅内容相同的数组会产生不同的哈希值, 必须要完全一致的数组才会产" @@ -8964,11 +8977,8 @@ msgstr "" "程序式几何体生成,请参阅 [ImmediateGeometry]、[MeshDataTool]、" "[SurfaceTool]。\n" "[b]注意:[/b]Godot 对三角形基本网格模式的正面使用顺时针[url=https://" -"learnopengl.com/Advanced-OpenGL/Face-culling]环绕顺序[/url]。" - -#: doc/classes/ArrayMesh.xml -msgid "$DOCS_URL/tutorials/3d/procedural_geometry/arraymesh.html" -msgstr "$DOCS_URL/tutorials/3d/procedural_geometry/arraymesh.html" +"learnopengl-cn.github.io/04%20Advanced%20OpenGL/04%20Face%20culling/]环绕顺序" +"[/url]。" #: doc/classes/ArrayMesh.xml msgid "" @@ -9044,7 +9054,7 @@ msgid "" "Returns the length in indices of the index array in the requested surface " "(see [method add_surface_from_arrays])." msgstr "" -"返回请求的曲面的索引数组的长度,以指数为单位(参阅[method " +"返回请求的曲面的索引数组的长度,以指数为单位(请参阅 [method " "add_surface_from_arrays])。" #: doc/classes/ArrayMesh.xml @@ -9108,7 +9118,7 @@ msgstr "" #: doc/classes/ArrayMesh.xml msgid "Default value used for index_array_len when no indices are present." -msgstr "当没有索引时,index_array_len的默认值。" +msgstr "没有索引时,index_array_len 的默认值。" #: doc/classes/ArrayMesh.xml msgid "Amount of weights/bone indices per vertex (always 4)." @@ -9166,10 +9176,10 @@ msgid "" "vertices of each triangle. For lines, the index array is in pairs indicating " "the start and end of each line." msgstr "" -"[PoolIntArray]整数数组,用作引用顶点、颜色、法线、切线和纹理的索引。所有这些" +"[PoolIntArray] 整数数组,用作引用顶点、颜色、法线、切线和纹理的索引。所有这些" "数组必须具有与顶点数组相同的元素数量。任何索引都不能超过顶点数组的大小。当这" -"个索引数组出现时,它使函数进入“索引模式”,其中索引选择 *i* 的顶点、法线、切" -"线、颜色、UV 等。这意味着如果你想沿着一条边有不同的法线或颜色,需拷贝顶点。\n" +"个索引数组出现时,它使函数进入“索引模式”,索引选择第 *i* 个顶点、法线、切线、" +"颜色、UV 等。这意味着如果你想沿着一条边有不同的法线或颜色,需拷贝顶点。\n" "对于三角形,索引数组被解释为三元组,指的是每个三角形的顶点。对于线,索引数组" "是成对的,表示每条线的起点和终点。" @@ -9328,12 +9338,6 @@ msgstr "" "并可被游戏逻辑使用)。请注意,与 ARVR 控制器相比,渲染线程可以获取 HMD 的最新" "跟踪数据,从而 ARVRCamera 的位置可能会滞后于对于渲染的位置几毫秒。" -#: doc/classes/ARVRCamera.xml doc/classes/ARVRController.xml -#: doc/classes/ARVRInterface.xml doc/classes/ARVROrigin.xml -#: doc/classes/ARVRPositionalTracker.xml doc/classes/ARVRServer.xml -msgid "$DOCS_URL/tutorials/vr/index.html" -msgstr "$DOCS_URL/tutorials/vr/index.html" - #: doc/classes/ARVRController.xml msgid "A spatial node representing a spatially-tracked controller." msgstr "表示空间跟踪控制器的空间节点。" @@ -10776,8 +10780,9 @@ msgstr "音频总线的基础资源。在该资源所应用的总线上应用音 #: doc/classes/AudioEffect.xml doc/classes/AudioEffectRecord.xml #: doc/classes/AudioServer.xml doc/classes/AudioStream.xml #: doc/classes/AudioStreamPlayer.xml -msgid "https://godotengine.org/asset-library/asset/527" -msgstr "https://godotengine.org/asset-library/asset/527" +#, fuzzy +msgid "Audio Mic Record Demo" +msgstr "音频频谱演示" #: doc/classes/AudioEffectAmplify.xml msgid "" @@ -11000,8 +11005,8 @@ msgid "" "Compressor's delay time to stop reducing the signal after the signal level " "falls below the threshold, in milliseconds. Value can range from 20 to 2000." msgstr "" -"压缩器在信号电平低于阈值后,停止降低信号的延迟时间,以毫秒为单位。数值范围为" -"20至2000。" +"压缩器在信号电平低于阈值后,停止降低信号的延迟时间,以毫秒为单位。取值范围为 " +"20 到 2000。" #: doc/classes/AudioEffectCompressor.xml msgid "Reduce the sound level using another audio bus for threshold detection." @@ -11036,7 +11041,7 @@ msgstr "" msgid "" "Output percent of original sound. At 0, only delayed sounds are output. " "Value can range from 0 to 1." -msgstr "原始声音的输出百分比。0时,只输出延迟的声音。值的范围为0~1。" +msgstr "原始声音的输出百分比。为 0 时,只输出延迟的声音。取值范围为 0 到 1。" #: doc/classes/AudioEffectDelay.xml msgid "If [code]true[/code], feedback is enabled." @@ -11048,27 +11053,28 @@ msgstr "反馈延迟时间,单位为毫秒。" #: doc/classes/AudioEffectDelay.xml msgid "Sound level for [code]tap1[/code]." -msgstr "[code]tap1[/code]的声音级别。" +msgstr "[code]tap1[/code] 的声音级别。" #: doc/classes/AudioEffectDelay.xml msgid "" "Low-pass filter for feedback, in Hz. Frequencies below this value are " "filtered out of the source signal." -msgstr "反馈的低通滤波器,单位为Hz。低于此值的频率会被源信号过滤掉。" +msgstr "反馈的低通滤波器,单位为 Hz。低于此值的频率会被源信号过滤掉。" #: doc/classes/AudioEffectDelay.xml msgid "If [code]true[/code], [code]tap1[/code] will be enabled." -msgstr "如果[code]true[/code],将启用[code]tap1[/code]。" +msgstr "如果为 [code]true[/code],将启用 [code]tap1[/code]。" #: doc/classes/AudioEffectDelay.xml msgid "[code]tap1[/code] delay time in milliseconds." -msgstr "[code]tap1[/code] 延时,单位为毫秒。" +msgstr "[code]tap1[/code] 延迟时间,单位为毫秒。" #: doc/classes/AudioEffectDelay.xml msgid "" "Pan position for [code]tap1[/code]. Value can range from -1 (fully left) to " "1 (fully right)." -msgstr "[code]tap1[/code]的平移位置。值的范围为-1(完全向左)至1(完全向右)。" +msgstr "" +"[code]tap1[/code] 的平移位置。取值范围为 -1(完全向左)到 1(完全向右)。" #: doc/classes/AudioEffectDelay.xml msgid "If [code]true[/code], [code]tap2[/code] will be enabled." @@ -11076,17 +11082,18 @@ msgstr "如果[code]true[/code],将启用[code]tap2[/code]。" #: doc/classes/AudioEffectDelay.xml msgid "[b]Tap2[/b] delay time in milliseconds." -msgstr "[b]Tap2[/b]延迟时间,单位为毫秒。" +msgstr "[b]Tap2[/b] 延迟时间,单位为毫秒。" #: doc/classes/AudioEffectDelay.xml msgid "Sound level for [code]tap2[/code]." -msgstr "[code]tap2[/code]的声音级别。" +msgstr "[code]tap2[/code] 的声音级别。" #: doc/classes/AudioEffectDelay.xml msgid "" "Pan position for [code]tap2[/code]. Value can range from -1 (fully left) to " "1 (fully right)." -msgstr "[code]tap2[/code]的平移位置。值的范围为-1(完全向左)至1(完全向右)。" +msgstr "" +"[code]tap2[/code] 的平移位置。取值范围为 -1(完全向左)到 1(完全向右)。" #: doc/classes/AudioEffectDistortion.xml msgid "" @@ -11112,8 +11119,8 @@ msgstr "" #: doc/classes/AudioEffectDistortion.xml doc/classes/AudioEffectFilter.xml #: doc/classes/AudioEffectHighShelfFilter.xml #: doc/classes/AudioEffectLowShelfFilter.xml doc/classes/AudioServer.xml -msgid "$DOCS_URL/tutorials/audio/audio_buses.html" -msgstr "$DOCS_URL/tutorials/audio/audio_buses.html" +msgid "Audio buses" +msgstr "" #: doc/classes/AudioEffectDistortion.xml msgid "Distortion power. Value can range from 0 to 1." @@ -11489,14 +11496,14 @@ msgid "" "Adds a pitch-shifting audio effect to an Audio bus.\n" "Raises or lowers the pitch of original sound." msgstr "" -"为音频总线添加音调变换的音频效果。\n" -"升高或降低原始声音的音调。" +"为音频总线添加音高变换的音频效果。\n" +"升高或降低原始声音的音高。" #: doc/classes/AudioEffectPitchShift.xml msgid "" "Allows modulation of pitch independently of tempo. All frequencies can be " "increased/decreased with minimal effect on transients." -msgstr "允许独立于速度调制音调。所有频率都可以增加或减少,而对瞬态的影响最小。" +msgstr "允许独立于速度调制音高。所有频率都可以增加或减少,而对瞬态的影响最小。" #: doc/classes/AudioEffectPitchShift.xml msgid "" @@ -11526,9 +11533,9 @@ msgid "" "(infinitely low pitch, inaudible) to [code]16[/code] (16 times higher than " "the initial pitch)." msgstr "" -"要使用的音阶。[code]1.0[/code]是默认的音高,播放的声音没有改变。[member " -"pitch_scale]的范围从[code]0.0[/code](无限低的音调,听不见)到[code]16[/code]" -"(比初始音调高16倍)。" +"要使用的音高缩放。[code]1.0[/code] 是默认的音高,声音会按原样播放。[member " +"pitch_scale] 的范围从 [code]0.0[/code](无限低的音高,听不见)到 [code]16[/" +"code](比初始音高要高 16 倍)。" #: doc/classes/AudioEffectPitchShift.xml #: doc/classes/AudioEffectSpectrumAnalyzer.xml @@ -11579,12 +11586,10 @@ msgid "Represents the size of the [enum FFT_Size] enum." msgstr "表示[enum FFT_Size]枚举的大小。" #: doc/classes/AudioEffectRecord.xml -#, fuzzy msgid "Audio effect used for recording the sound from an audio bus." -msgstr "用于录制来自麦克风的声音的音频效果。" +msgstr "用于录制来自音频总线的声音的音频效果。" #: doc/classes/AudioEffectRecord.xml -#, fuzzy msgid "" "Allows the user to record the sound from an audio bus. This can include all " "audio output by Godot when used on the \"Master\" audio bus.\n" @@ -11593,12 +11598,15 @@ msgid "" "16-bit, or compressed). It checks whether or not the recording is active, " "and if it is, records the sound. It then returns the recorded sample." msgstr "" -"允许用户录制来自麦克风的声音。它设置和获取记录音频文件的格式(8位,16位或压" -"缩)。它检查录音是否处于活动状态,如果是,则记录声音。然后返回记录的样本。" +"允许用户录制来自音频总线的声音。在“Master”音频总线上使用时会包含所有 Godot 输" +"出的音频。\n" +"可以用于录制麦克风(使用 [AudioStreamMicrophone])。\n" +"它设置和获取记录音频文件的格式(8位,16位或压缩)。它检查录音是否处于活动状" +"态,如果是,则记录声音。然后返回记录的样本。" #: doc/classes/AudioEffectRecord.xml -msgid "$DOCS_URL/tutorials/audio/recording_with_microphone.html" -msgstr "$DOCS_URL/tutorials/audio/recording_with_microphone.html" +msgid "Recording with microphone" +msgstr "" #: doc/classes/AudioEffectRecord.xml msgid "Returns the recorded sample." @@ -11647,7 +11655,7 @@ msgstr "定义虚拟房间墙壁的反射程度。值的范围是0到1。" msgid "" "Output percent of original sound. At 0, only modified sound is outputted. " "Value can range from 0 to 1." -msgstr "原始声音的输出百分比。0时,只输出修改后的声音。值的范围是0~1。" +msgstr "原始声音的输出百分比。为 0 时,只输出修改后的声音。取值范围是 0 到 1。" #: doc/classes/AudioEffectReverb.xml msgid "" @@ -11684,7 +11692,7 @@ msgstr "扩大或缩小混响尾音的立体声图像。1表示完全扩大。 msgid "" "Output percent of modified sound. At 0, only original sound is outputted. " "Value can range from 0 to 1." -msgstr "输出修改后声音的百分比。在0时,只输出原始声音。值的范围为0~1。" +msgstr "修改后声音的输出百分比。为 0 时,只输出原始声音。取值范围是 0 到 1。" #: doc/classes/AudioEffectSpectrumAnalyzer.xml msgid "Audio effect that can be used for real-time audio visualizations." @@ -11699,7 +11707,9 @@ msgstr "" "这种音频效果不影响声音输出,但可以用于实时音频可视化。\n" "使用程序生成声音请参阅 [AudioStreamGenerator]。" -#: doc/classes/AudioEffectSpectrumAnalyzer.xml +#: doc/classes/AudioEffectSpectrumAnalyzer.xml doc/classes/AudioServer.xml +#: doc/classes/AudioStream.xml doc/classes/AudioStreamPlayer.xml +#: doc/classes/CanvasItem.xml msgid "Audio Spectrum Demo" msgstr "音频频谱演示" @@ -11751,13 +11761,9 @@ msgstr "" "频)以及通过语音接口进行播放。" #: doc/classes/AudioServer.xml doc/classes/AudioStreamPlayer.xml -msgid "https://godotengine.org/asset-library/asset/525" -msgstr "https://godotengine.org/asset-library/asset/525" - -#: doc/classes/AudioServer.xml doc/classes/AudioStream.xml -#: doc/classes/AudioStreamPlayer.xml doc/classes/CanvasItem.xml -msgid "https://godotengine.org/asset-library/asset/528" -msgstr "https://godotengine.org/asset-library/asset/528" +#, fuzzy +msgid "Audio Device Changer Demo" +msgstr "音频频谱演示" #: doc/classes/AudioServer.xml msgid "Adds a bus at [code]at_position[/code]." @@ -11772,9 +11778,11 @@ msgstr "" "[AudioEffect] 效果。" #: doc/classes/AudioServer.xml +#, fuzzy msgid "" "Name of the current device for audio input (see [method " -"capture_get_device_list])." +"capture_get_device_list]). The value [code]\"Default\"[/code] means that the " +"system-wide default audio input is currently used." msgstr "当前音频输入设备的名称(参阅[method capture_get_device_list])。" #: doc/classes/AudioServer.xml @@ -11782,8 +11790,13 @@ msgid "Returns the names of all audio input devices detected on the system." msgstr "返回系统上检测到的所有音频输入设备的名称。" #: doc/classes/AudioServer.xml -msgid "Sets which audio input device is used for audio capture." -msgstr "设置用于音频采集的音频输入设备。" +msgid "" +"Sets which audio input device is used for audio capture. On systems with " +"multiple audio inputs (such as analog and USB), this can be used to select " +"the audio input device. Setting the value [code]\"Default\"[/code] will " +"record audio from the system-wide default audio input. If an invalid device " +"name is set, the value will be reverted back to [code]\"Default\"[/code]." +msgstr "" #: doc/classes/AudioServer.xml msgid "Generates an [AudioBusLayout] using the available buses and effects." @@ -11853,7 +11866,7 @@ msgstr "返回系统中检测到的所有音频设备的名称。" #: doc/classes/AudioServer.xml msgid "Returns the sample rate at the output of the [AudioServer]." -msgstr "返回[AudioServer]输出的采样率。" +msgstr "返回 [AudioServer] 输出的采样率。" #: doc/classes/AudioServer.xml msgid "Returns the audio driver's output latency." @@ -11960,8 +11973,13 @@ msgstr "可用音频总线的数量。" #: doc/classes/AudioServer.xml msgid "" -"Name of the current device for audio output (see [method get_device_list])." -msgstr "用于音频输出的当前设备的名称(请参阅[method get_device_list])。" +"Name of the current device for audio output (see [method get_device_list]). " +"On systems with multiple audio outputs (such as analog, USB and HDMI audio), " +"this can be used to select the audio output device. The value " +"[code]\"Default\"[/code] will play audio on the system-wide default audio " +"output. If an invalid device name is set, the value will be reverted back to " +"[code]\"Default\"[/code]." +msgstr "" #: doc/classes/AudioServer.xml msgid "" @@ -12004,15 +12022,16 @@ msgstr "" "[AudioStreamSample])和 OGG(通过[AudioStreamOGGVorbis])文件格式。" #: doc/classes/AudioStream.xml doc/classes/AudioStreamPlayer.xml -#: doc/classes/AudioStreamPlayer2D.xml doc/classes/AudioStreamPlayer3D.xml -msgid "$DOCS_URL/tutorials/audio/audio_streams.html" -msgstr "$DOCS_URL/tutorials/audio/audio_streams.html" +#, fuzzy +msgid "Audio streams" +msgstr "音频频谱演示" #: doc/classes/AudioStream.xml doc/classes/AudioStreamGenerator.xml #: doc/classes/AudioStreamGeneratorPlayback.xml #: doc/classes/AudioStreamPlayback.xml doc/classes/AudioStreamPlayer.xml -msgid "https://godotengine.org/asset-library/asset/526" -msgstr "https://godotengine.org/asset-library/asset/526" +#, fuzzy +msgid "Audio Generator Demo" +msgstr "音频频谱演示" #: doc/classes/AudioStream.xml msgid "Returns the length of the audio stream in seconds." @@ -12059,22 +12078,23 @@ msgid "" "In games, common sample rates in use are [code]11025[/code], [code]16000[/" "code], [code]22050[/code], [code]32000[/code], [code]44100[/code], and " "[code]48000[/code].\n" -"According to the [url=https://en.wikipedia.org/wiki/Nyquist" -"%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon sampling theorem[/url], " -"there is no quality difference to human hearing when going past 40,000 Hz " -"(since most humans can only hear up to ~20,000 Hz, often less). If you are " -"generating lower-pitched sounds such as voices, lower sample rates such as " -"[code]32000[/code] or [code]22050[/code] may be usable with no loss in " +"According to the [url=https://en.wikipedia.org/wiki/" +"Nyquist%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon sampling theorem[/" +"url], there is no quality difference to human hearing when going past 40,000 " +"Hz (since most humans can only hear up to ~20,000 Hz, often less). If you " +"are generating lower-pitched sounds such as voices, lower sample rates such " +"as [code]32000[/code] or [code]22050[/code] may be usable with no loss in " "quality." msgstr "" -"使用的采样率(单位:Hz)。更高的值对CPU要求更高,但会带来更好的质量。\n" -"在游戏中,常用的采样率有[code]11025[/code]、[code]16000[/code]、[code]22050[/" -"code]、[code]32000[/code]、[code]44100[/code]和[code]48000[/code]。\n" -"根据[url=https://en.wikipedia.org/wiki/Nyquist" -"%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon采样定理[/url],当超过40000" -"赫兹时,人类的听觉没有质量上的差别(因为大多数人只能听到~20000赫兹,往往更" -"少)。如果你要生成较低音调的声音,例如语音,则可以使用较低的采样率,例如 " -"[code]32000[/code] 或 [code]22050[/code],而不会降低质量。" +"使用的采样率(单位:Hz)。更高的值对 CPU 要求更高,但会带来更好的质量。\n" +"在游戏中,常用的采样率有 [code]11025[/code]、[code]16000[/code]、" +"[code]22050[/code]、[code]32000[/code]、[code]44100[/code]、[code]48000[/" +"code]。\n" +"根据[url=https://zh.wikipedia.org/wiki/%E9%87%87%E6%A0%B7%E5%AE%9A%E7%90%86]" +"奈奎斯特–香农采样定理[/url],当超过 40000 赫兹时,人类的听觉没有质量上的差别" +"(因为大多数人只能听到 ~20000 赫兹,往往更少)。如果你要生成语音等音高较低的" +"声音,则可以使用 [code]32000[/code] 或 [code]22050[/code] 等较低的采样率,不" +"会降低质量。" #: doc/classes/AudioStreamGeneratorPlayback.xml msgid "Plays back audio generated using [AudioStreamGenerator]." @@ -12301,9 +12321,14 @@ msgid "" "seconds." msgstr "从给定的位置[code]from_position[/code]播放音频,以秒为单位。" -#: doc/classes/AudioStreamPlayer2D.xml doc/classes/AudioStreamPlayer3D.xml -msgid "Areas in which this sound plays." -msgstr "这个声音的播放区域。" +#: doc/classes/AudioStreamPlayer2D.xml +msgid "" +"Determines which [Area2D] layers affect the sound for reverb and audio bus " +"effects. Areas can be used to redirect [AudioStream]s so that they play in a " +"certain audio bus. An example of how you might use this is making a " +"\"water\" area so that sounds played in the water are redirected through an " +"audio bus to make them sound like they are being played underwater." +msgstr "" #: doc/classes/AudioStreamPlayer2D.xml msgid "Dampens audio over distance with this as an exponent." @@ -12355,6 +12380,15 @@ msgstr "返回与该[AudioStreamPlayer3D]相关联的[AudioStreamPlayback]对象 #: doc/classes/AudioStreamPlayer3D.xml msgid "" +"Determines which [Area] layers affect the sound for reverb and audio bus " +"effects. Areas can be used to redirect [AudioStream]s so that they play in a " +"certain audio bus. An example of how you might use this is making a " +"\"water\" area so that sounds played in the water are redirected through an " +"audio bus to make them sound like they are being played underwater." +msgstr "" + +#: doc/classes/AudioStreamPlayer3D.xml +msgid "" "Dampens audio using a low-pass filter above this frequency, in Hz. To " "disable the dampening effect entirely, set this to [code]20500[/code] as " "this frequency is above the human hearing limit." @@ -12526,7 +12560,7 @@ msgstr "当前的[AudioStream]。" #: doc/classes/AudioStreamRandomPitch.xml msgid "The intensity of random pitch variation." -msgstr "随机音调变化的强度。" +msgstr "随机音高变化的强度。" #: doc/classes/AudioStreamSample.xml msgid "Stores audio data loaded from WAV files." @@ -12579,7 +12613,8 @@ msgid "" "sample). This information will be imported automatically from the WAV file " "if present." msgstr "" -"循环起始点(相对于样本开始的样本数)。如果存在此信息,将自动从 WAV 文件导入。" +"循环起始点(相对于样本开始的样本数)。如果 WAV 文件中存在此信息,则将自动导" +"入。" #: doc/classes/AudioStreamSample.xml msgid "" @@ -12587,15 +12622,16 @@ msgid "" "sample). This information will be imported automatically from the WAV file " "if present." msgstr "" -"循环结束点(相对于样本开始的样本数)。如果存在此信息,将自动从 WAV 文件导入。" +"循环结束点(相对于样本开始的样本数)。如果 WAV 文件中存在此信息,则将自动导" +"入。" #: doc/classes/AudioStreamSample.xml msgid "" "The loop mode. This information will be imported automatically from the WAV " "file if present. See [enum LoopMode] constants for values." msgstr "" -"循环模式。该信息将自动从WAV文件中导入(如果存在)。有关值,请参阅[enum " -"LoopMode]常量。" +"循环模式。如果 WAV 文件中存在此信息,则将自动导入。取值请参阅 [enum " +"LoopMode] 常量。" #: doc/classes/AudioStreamSample.xml msgid "" @@ -12604,34 +12640,35 @@ msgid "" "In games, common sample rates in use are [code]11025[/code], [code]16000[/" "code], [code]22050[/code], [code]32000[/code], [code]44100[/code], and " "[code]48000[/code].\n" -"According to the [url=https://en.wikipedia.org/wiki/Nyquist" -"%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon sampling theorem[/url], " -"there is no quality difference to human hearing when going past 40,000 Hz " -"(since most humans can only hear up to ~20,000 Hz, often less). If you are " -"using lower-pitched sounds such as voices, lower sample rates such as " +"According to the [url=https://en.wikipedia.org/wiki/" +"Nyquist%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon sampling theorem[/" +"url], there is no quality difference to human hearing when going past 40,000 " +"Hz (since most humans can only hear up to ~20,000 Hz, often less). If you " +"are using lower-pitched sounds such as voices, lower sample rates such as " "[code]32000[/code] or [code]22050[/code] may be usable with no loss in " "quality." msgstr "" "混合这个音频的采样率。更高的数值需要更多的存储空间,但会带来更好的质量。\n" -"在游戏中,常用的采样率有[code]11025[/code]、[code]16000[/code]、[code]22050[/" -"code]、[code]32000[/code]、[code]44100[/code],以及[code]48000[/code]。\n" -"根据[url=https://en.wikipedia.org/wiki/Nyquist" -"%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon采样定理[/url],当超过40000" -"赫兹时,对于人的听觉没有质量上的差别(因为大多数人只能听到~20000赫兹,往往更" -"少)。如果你使用低音调的声音,如语音,较低的采样率,如[code]32000[/code]或" -"[code]22050[/code]可能是可用的,没有质量上的损失。" +"在游戏中,常用的采样率有 [code]11025[/code]、[code]16000[/code]、" +"[code]22050[/code]、[code]32000[/code]、[code]44100[/code]、[code]48000[/" +"code]。\n" +"根据[url=https://zh.wikipedia.org/wiki/%E9%87%87%E6%A0%B7%E5%AE%9A%E7%90%86]" +"奈奎斯特–香农采样定理[/url],当超过 40000 赫兹时,人类的听觉没有质量上的差别" +"(因为大多数人只能听到 ~20000 赫兹,往往更少)。如果你要使用语音等音高较低的" +"声音,则可以使用 [code]32000[/code] 或 [code]22050[/code] 等较低的采样率,不" +"会降低质量。" #: doc/classes/AudioStreamSample.xml msgid "If [code]true[/code], audio is stereo." -msgstr "如果[code]true[/code],音频为立体声。" +msgstr "如果为 [code]true[/code],则音频为立体声。" #: doc/classes/AudioStreamSample.xml msgid "8-bit audio codec." -msgstr "8位音频编解码器。" +msgstr "8 位音频编解码器。" #: doc/classes/AudioStreamSample.xml msgid "16-bit audio codec." -msgstr "16位音频编解码器。" +msgstr "16 位音频编解码器。" #: doc/classes/AudioStreamSample.xml msgid "Audio is compressed using IMA ADPCM." @@ -12646,8 +12683,7 @@ msgid "" "Audio loops the data between [member loop_begin] and [member loop_end], " "playing forward only." msgstr "" -"音频循环播放 [member loop_begin] 和 [member loop_end] 之间的数据,只向前播" -"放。" +"音频在 [member loop_begin] 和 [member loop_end] 之间循环数据,仅向前播放。" #: doc/classes/AudioStreamSample.xml msgid "" @@ -12669,8 +12705,8 @@ msgid "" "accessed in your shader scripts through the " "[code]texture(SCREEN_TEXTURE, ...)[/code] function." msgstr "" -"将屏幕的某个区域(或整个屏幕)复制到缓冲区,以便可以通过" -"[code]texture(SCREEN_TEXTURE,...)[/code]函数在着色器脚本中对其进行访问。" +"将屏幕的某个区域(或整个屏幕)复制到缓冲区,以便通过 " +"[code]texture(SCREEN_TEXTURE, ...)[/code] 函数在着色器脚本中对其进行访问。" #: doc/classes/BackBufferCopy.xml msgid "" @@ -12688,10 +12724,10 @@ msgstr "" "用于对当前屏幕显示进行后台缓冲的节点。 BackBufferCopy 节点中定义的区域与其覆" "盖屏幕的内容一起缓冲,或者根据拷贝模式设置的整个屏幕进行缓冲。在着色器脚本中" "使用 [code]texture(SCREEN_TEXTURE, ...)[/code] 函数来访问缓冲区。\n" -"[b]注意:[/b] 由于该节点继承自 [Node2D],而非 [Control],锚点和边距将不会应用" -"于从 [Control] 派生的子节点。这在调整窗口大小时可能会出现问题。为避免这种情" -"况,请将 [Control] 派生节点作为 [i]同级[/i] 添加到 BackBufferCopy 节点,而不" -"是将它们添加为子节点。" +"[b]注意:[/b]由于该节点继承自 [Node2D] 而非 [Control],锚点和边距将不会应用于" +"从 [Control] 派生的子节点。这在调整窗口大小时可能会出现问题。为避免这种情况," +"请将 [Control] 派生节点添加为 BackBufferCopy 节点的[i]同级[/i],不要将它们添" +"加为其子节点。" #: doc/classes/BackBufferCopy.xml msgid "Buffer mode. See [enum CopyMode] constants." @@ -12718,7 +12754,7 @@ msgstr "BackBufferCopy 缓冲一个矩形区域。" #: doc/classes/BackBufferCopy.xml msgid "BackBufferCopy buffers the entire screen." -msgstr "BackBufferCopy可以缓冲整个屏幕。" +msgstr "BackBufferCopy 缓冲整个屏幕。" #: doc/classes/BakedLightmap.xml msgid "Prerendered indirect light map for a scene." @@ -12747,10 +12783,6 @@ msgstr "" "看到效果。" #: doc/classes/BakedLightmap.xml -msgid "$DOCS_URL/tutorials/3d/baked_lightmaps.html" -msgstr "$DOCS_URL/tutorials/3d/baked_lightmaps.html" - -#: doc/classes/BakedLightmap.xml 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 " @@ -12822,8 +12854,9 @@ msgstr "" "象。" #: doc/classes/BakedLightmap.xml +#, fuzzy msgid "" -"Bias value to reduce the amount of light proagation in the captured octree." +"Bias value to reduce the amount of light propagation in the captured octree." msgstr "偏置值,用于减少捕获的八叉树中的光传播量。" #: doc/classes/BakedLightmap.xml @@ -12835,7 +12868,7 @@ msgid "" "If a baked mesh doesn't have a UV2 size hint, this value will be used to " "roughly compute a suitable lightmap size." msgstr "" -"如果烘焙后的网格没有UV2的尺寸提示,这个值将被用来粗略计算出合适的光照贴图尺" +"如果烘焙后的网格没有 UV2 的尺寸提示,这个值将被用来粗略计算出合适的光照贴图尺" "寸。" #: doc/classes/BakedLightmap.xml @@ -12901,12 +12934,13 @@ msgid "The calculated light data." msgstr "计算出的光照数据。" #: doc/classes/BakedLightmap.xml +#, fuzzy 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 " -"settings." +"Determines the amount of samples per texel used in indirect light baking. " +"The amount of samples for each quality level can be configured in the " +"project settings." msgstr "" -"决定在不正确的光照烘烤中每一个纹理元素的采样量。可以在项目设置中配置每个质量" +"决定在不正确的光照烘焙中每一个纹理元素的采样量。可以在项目设置中配置每个质量" "级别的采样量。" #: doc/classes/BakedLightmap.xml @@ -12937,13 +12971,13 @@ msgid "" "lightmap banding even when using the GLES2 backend or if [member " "ProjectSettings.rendering/quality/depth/hdr] is [code]false[/code]." msgstr "" -"如果 [code]true[/code],则以高动态范围格式 (EXR) 存储光照贴图纹理。如果 " +"如果为 [code]true[/code],则以高动态范围格式(EXR)存储光照贴图纹理。如果为 " "[code]false[/code],则将光照贴图纹理存储在低动态范围的 PNG 图像中。这可以设置" "为 [code]false[/code] 以减少磁盘占用,但超过 1.0 的光照值将被限制,你可能会看" "到因精度降低而导致的条纹。\n" -"[b]注意:[/b] 将 [member use_hdr] 设置为 [code]true[/code] 即使使用 GLES2 后" -"端或 [member ProjectSettings.rendering/quality/depth/hdr] 为 [code]false,也" -"会降低光照贴图条纹[/code]。" +"[b]注意:[/b]将 [member use_hdr] 设置为 [code]true[/code] 可以降低光照贴图的" +"条纹,即使使用的是 GLES2 后端或 [member ProjectSettings.rendering/quality/" +"depth/hdr] 为 [code]false[/code]。" #: doc/classes/BakedLightmap.xml msgid "The lowest bake quality mode. Fastest to calculate." @@ -12959,7 +12993,7 @@ msgstr "更高的烘焙质量模式。需要更长的时间来计算。" #: doc/classes/BakedLightmap.xml msgid "The highest bake quality mode. Takes the longest to calculate." -msgstr "最高的烘烤质量模式。需要最长的时间来计算。" +msgstr "最高的烘焙质量模式。需要最长的时间来计算。" #: doc/classes/BakedLightmap.xml msgid "Baking was successful." @@ -12987,11 +13021,11 @@ msgstr "生成的光照贴图尺寸过大。" #: doc/classes/BakedLightmap.xml msgid "Some mesh contains UV2 values outside the [code][0,1][/code] range." -msgstr "有些网格包含[code][0,1][/code]范围以外的UV2值。" +msgstr "有些网格包含 [code][0,1][/code] 范围以外的 UV2 值。" #: doc/classes/BakedLightmap.xml msgid "Returns if user cancels baking." -msgstr "如果用户取消了烘烤,则返回。" +msgstr "返回用户是否取消了烘焙。" #: doc/classes/BakedLightmap.xml msgid "" @@ -13267,17 +13301,18 @@ msgstr "" "更多信息请阅读文档中的《矩阵和变换》一文。" #: doc/classes/Basis.xml doc/classes/Transform.xml doc/classes/Transform2D.xml -msgid "$DOCS_URL/tutorials/math/matrices_and_transforms.html" -msgstr "$DOCS_URL/tutorials/math/matrices_and_transforms.html" +msgid "Matrices and transforms" +msgstr "" -#: doc/classes/Basis.xml doc/classes/Transform.xml -msgid "$DOCS_URL/tutorials/3d/using_transforms.html" -msgstr "$DOCS_URL/tutorials/3d/using_transforms.html" +#: doc/classes/Basis.xml doc/classes/Quat.xml doc/classes/Transform.xml +#, fuzzy +msgid "Using 3D transforms" +msgstr "使用 3D 变换时使用此选项。" #: doc/classes/Basis.xml doc/classes/Line2D.xml doc/classes/Transform.xml #: doc/classes/Transform2D.xml doc/classes/Vector2.xml doc/classes/Vector3.xml -msgid "https://godotengine.org/asset-library/asset/584" -msgstr "https://godotengine.org/asset-library/asset/584" +msgid "Matrix Transform Demo" +msgstr "" #: doc/classes/Basis.xml doc/classes/CylinderShape.xml #: doc/classes/Dictionary.xml doc/classes/DynamicFont.xml @@ -13288,13 +13323,13 @@ msgstr "https://godotengine.org/asset-library/asset/584" #: doc/classes/SurfaceTool.xml doc/classes/TextureButton.xml #: doc/classes/TextureRect.xml doc/classes/Thread.xml #: doc/classes/VBoxContainer.xml -msgid "https://godotengine.org/asset-library/asset/676" -msgstr "https://godotengine.org/asset-library/asset/676" +msgid "3D Voxel Demo" +msgstr "" #: doc/classes/Basis.xml doc/classes/Line2D.xml doc/classes/Transform.xml #: doc/classes/Transform2D.xml -msgid "https://godotengine.org/asset-library/asset/583" -msgstr "https://godotengine.org/asset-library/asset/583" +msgid "2.5D Demo" +msgstr "" #: doc/classes/Basis.xml msgid "Constructs a pure rotation basis matrix from the given quaternion." @@ -13512,6 +13547,14 @@ msgstr "" #: doc/classes/BitMap.xml msgid "" +"Returns an image of the same size as the bitmap and with a [enum Image." +"Format] of type [code]FORMAT_L8[/code]. [code]true[/code] bits of the bitmap " +"are being converted into white pixels, and [code]false[/code] bits into " +"black." +msgstr "" + +#: doc/classes/BitMap.xml +msgid "" "Creates a bitmap with the specified size, filled with [code]false[/code]." msgstr "创建一个指定尺寸的位图,用[code]false[/code]填充。" @@ -13553,6 +13596,11 @@ msgstr "" "grow_mask] 影响。" #: doc/classes/BitMap.xml +#, fuzzy +msgid "Resizes the image to [code]new_size[/code]." +msgstr "使用颜色 [code]color[/code] 填充图像。" + +#: doc/classes/BitMap.xml msgid "" "Sets the bitmap's element at the specified position, to the specified value." msgstr "将位图中指定位置的元素设置为指定值。" @@ -13778,7 +13826,7 @@ msgstr "" "\n" "func shoot():\n" " if can_shoot:\n" -" pass # Perform shooting actions here.\n" +" pass # 在此执行射击。\n" "[/codeblock]\n" "下面的代码只有在两个条件都满足的情况下才会产生子弹:动作“shoot”被按下,并且如" "果[code]can_shoot[/code]是[code]true[/code]。\n" @@ -13842,7 +13890,7 @@ msgstr "" #: doc/classes/BoxContainer.xml msgid "Base class for box containers." -msgstr "盒子容器的基类。" +msgstr "盒式容器的基类。" #: doc/classes/BoxContainer.xml msgid "" @@ -13891,15 +13939,15 @@ msgstr "3D 盒子形状,可以是 [PhysicsBody] 或 [Area] 的子项。" #: doc/classes/CylinderShape.xml doc/classes/ProjectSettings.xml #: doc/classes/RigidBody.xml doc/classes/SphereShape.xml #: doc/classes/StaticBody.xml -msgid "https://godotengine.org/asset-library/asset/675" -msgstr "https://godotengine.org/asset-library/asset/675" +msgid "3D Physics Tests Demo" +msgstr "" #: doc/classes/BoxShape.xml doc/classes/CollisionShape.xml #: modules/gridmap/doc_classes/GridMap.xml doc/classes/KinematicBody.xml #: doc/classes/Mesh.xml doc/classes/MeshInstance.xml #: doc/classes/MeshLibrary.xml -msgid "https://godotengine.org/asset-library/asset/126" -msgstr "https://godotengine.org/asset-library/asset/126" +msgid "3D Kinematic Character Demo" +msgstr "" #: doc/classes/BoxShape.xml msgid "" @@ -13959,8 +14007,8 @@ msgstr "" #: doc/classes/GridContainer.xml doc/classes/OS.xml #: doc/classes/PoolStringArray.xml doc/classes/ProjectSettings.xml #: doc/classes/ResourceLoader.xml doc/classes/RichTextLabel.xml -msgid "https://godotengine.org/asset-library/asset/677" -msgstr "https://godotengine.org/asset-library/asset/677" +msgid "OS Test Demo" +msgstr "" #: doc/classes/Button.xml msgid "" @@ -13999,6 +14047,13 @@ msgstr "" "[code]hseparation[/code] 以及所使用的 [StyleBox] 的 [code]content_margin_*[/" "code] 属性。" +#: doc/classes/Button.xml +msgid "" +"Specifies if the icon should be aligned to the left, right, or center of a " +"button. Uses the same [enum TextAlign] constants as the text alignment. If " +"centered, text will draw on top of the icon." +msgstr "" + #: doc/classes/Button.xml doc/classes/LinkButton.xml msgid "The button's text that will be displayed inside the button's area." msgstr "按钮的文字,将显示在按钮的区域内。" @@ -14499,13 +14554,13 @@ msgstr "" "get_camera_screen_center] 来获取实际坐标。" #: doc/classes/Camera2D.xml doc/classes/TileMap.xml doc/classes/TileSet.xml -msgid "https://godotengine.org/asset-library/asset/112" -msgstr "https://godotengine.org/asset-library/asset/112" +msgid "2D Isometric Demo" +msgstr "" #: doc/classes/Camera2D.xml doc/classes/Environment.xml #: doc/classes/WorldEnvironment.xml -msgid "https://godotengine.org/asset-library/asset/110" -msgstr "https://godotengine.org/asset-library/asset/110" +msgid "2D HDR Demo" +msgstr "" #: doc/classes/Camera2D.xml msgid "Aligns the camera to the tracked node." @@ -14768,9 +14823,9 @@ msgid "" "example, use [code]Vector2(0.5, 0.5)[/code] for a 2× zoom-in, and " "[code]Vector2(4, 4)[/code] for a 4× zoom-out." msgstr "" -"相机相对于视窗的缩放比例。大于[code]Vector2(1,1)[/code]的值会缩小内容,而" -"较小的值会起到放大镜的作用。例如,将[code]Vector2(0.5,0.5)[/code]放大2倍," -"然后将[code]Vector2(4,4)[/code]用于4倍缩小。" +"相机相对于视窗的缩放比例。大于 [code]Vector2(1, 1)[/code] 的值会缩小内容,而" +"较小的值会起到放大镜的作用。例如,将 [code]Vector2(0.5, 0.5)[/code] 放大 2 " +"倍,然后将 [code]Vector2(4, 4)[/code] 用于 4 倍缩小。" #: doc/classes/Camera2D.xml msgid "" @@ -14955,7 +15010,7 @@ msgid "" "Which image within the [CameraFeed] we want access to, important if the " "camera image is split in a Y and CbCr component." msgstr "" -"我们要访问 [CameraFeed] 中的哪个图像,如果相机图像被分割成 Y 和 CbCr 组件,这" +"我们要访问 [CameraFeed] 中的哪个图像,如果相机图像被分割成 Y 和 CbCr 分量,这" "一点很重要。" #: doc/classes/CanvasItem.xml @@ -15008,12 +15063,12 @@ msgstr "" #: doc/classes/CanvasItem.xml doc/classes/CanvasLayer.xml #: doc/classes/InputEvent.xml doc/classes/Viewport.xml -msgid "$DOCS_URL/tutorials/2d/2d_transforms.html" -msgstr "$DOCS_URL/tutorials/2d/2d_transforms.html" +msgid "Viewport and canvas transforms" +msgstr "" #: doc/classes/CanvasItem.xml doc/classes/Control.xml doc/classes/Node2D.xml -msgid "$DOCS_URL/tutorials/2d/custom_drawing_in_2d.html" -msgstr "$DOCS_URL/tutorials/2d/custom_drawing_in_2d.html" +msgid "Custom drawing in 2D" +msgstr "" #: doc/classes/CanvasItem.xml msgid "" @@ -15271,8 +15326,10 @@ msgid "Returns the transform matrix of this item's canvas." msgstr "返回此项目画布的变换矩阵。" #: doc/classes/CanvasItem.xml -msgid "Returns the global position of the mouse." -msgstr "返回鼠标的全局位置。" +msgid "" +"Returns the mouse's position in the [CanvasLayer] that this [CanvasItem] is " +"in using the coordinate system of the [CanvasLayer]." +msgstr "" #: doc/classes/CanvasItem.xml msgid "Returns the global transform matrix of this item." @@ -15284,8 +15341,10 @@ msgid "" msgstr "返回此项目相对于画布的全局变换矩阵。" #: doc/classes/CanvasItem.xml -msgid "Returns the mouse position relative to this item's position." -msgstr "返回鼠标相对于此项的位置的位置。" +msgid "" +"Returns the mouse's position in this [CanvasItem] using the local coordinate " +"system of this [CanvasItem]." +msgstr "" #: doc/classes/CanvasItem.xml msgid "Returns the transform matrix of this item." @@ -15337,9 +15396,9 @@ msgid "" "also visible. If any antecedent is hidden, this node will not be visible in " "the scene tree." msgstr "" -"如果该节点位于[SceneTree]中,并且其[member visible]属性为[code]true[/code]," -"并且其所有前提均可见,则返回[code]true[/code]。如果任何先决条件被隐藏,则该节" -"点在场景树中将不可见。" +"如果该节点位于 [SceneTree] 中,并且其 [member visible] 属性为 [code]true[/" +"code],并且其所有上层节点也均可见,则返回 [code]true[/code]。如果任何上层节点" +"被隐藏,则该节点在场景树中将不可见。" #: doc/classes/CanvasItem.xml msgid "Assigns [code]screen_point[/code] as this node's new local transform." @@ -15625,12 +15684,13 @@ msgid "" msgstr "" "画布绘图层。[CanvasLayer] 的直接或间接子级的 [CanvasItem] 节点将在该层中绘" "制。层是一个决定绘制顺序的数字索引。默认 2D 场景的渲染索引为 0,因此索引为 " -"-1 的 [CanvasLayer] 会在其下方绘制,索引为 1 的则会在其上方绘制。这对于 " -"HUD(在 1+ 层或更高层中)或背景(在 -1 层或更低层中)非常有用。" +"-1 的 [CanvasLayer] 会在其下方绘制,索引为 1 的则会在其上方绘制。这对于 HUD" +"(在 1+ 层或更高层中)或背景(在 -1 层或更低层中)非常有用。" #: doc/classes/CanvasLayer.xml -msgid "$DOCS_URL/tutorials/2d/canvas_layers.html" -msgstr "$DOCS_URL/tutorials/2d/canvas_layers.html" +#, fuzzy +msgid "Canvas layers" +msgstr "画布绘图层。" #: doc/classes/CanvasLayer.xml msgid "Returns the RID of the canvas used by this layer." @@ -15683,6 +15743,19 @@ msgstr "图层的缩放。" msgid "The layer's transform." msgstr "图层的变换。" +#: doc/classes/CanvasLayer.xml +msgid "" +"If [code]false[/code], any [CanvasItem] under this [CanvasLayer] will be " +"hidden.\n" +"Unlike [member CanvasItem.visible], visibility of a [CanvasLayer] isn't " +"propagated to underlying layers." +msgstr "" + +#: doc/classes/CanvasLayer.xml +#, fuzzy +msgid "Emitted when visibility of the layer is changed. See [member visible]." +msgstr "当VisibilityNotifier退出[Camera]的视图时触发。" + #: doc/classes/CanvasModulate.xml msgid "Tint the entire canvas." msgstr "给整个画布上色。" @@ -15768,17 +15841,6 @@ msgid "" msgstr "" "通过在此对象上设置各种属性,可以控制单个字符在[RichTextEffect]中的显示方式。" -#: doc/classes/CharFXTransform.xml doc/classes/RichTextEffect.xml -#: doc/classes/RichTextLabel.xml -msgid "$DOCS_URL/tutorials/ui/bbcode_in_richtextlabel.html" -msgstr "$DOCS_URL/tutorials/ui/bbcode_in_richtextlabel.html" - -#: doc/classes/CharFXTransform.xml doc/classes/RichTextEffect.xml -msgid "" -"https://github.com/Eoin-ONeill-Yokai/Godot-Rich-Text-Effect-Test-Project" -msgstr "" -"https://github.com/Eoin-ONeill-Yokai/Godot-Rich-Text-Effect-Test-Project" - #: doc/classes/CharFXTransform.xml msgid "" "The index of the current character (starting from 0) for the " @@ -16429,6 +16491,7 @@ msgstr "" #: doc/classes/CollisionObject.xml doc/classes/CollisionObject2D.xml #: doc/classes/Navigation.xml doc/classes/Navigation2D.xml +#: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml msgid "Returns the object's [RID]." msgstr "返回对象的 [RID]。" @@ -16523,9 +16586,9 @@ msgid "" "The physics layers this CollisionObject3D is in. Collision objects can exist " "in one or more of 32 different layers. See also [member collision_mask].\n" "[b]Note:[/b] A contact is detected if object A is in any of the layers that " -"object B scans, or object B is in any layers that object A scans. See [url=" -"$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-and-" -"masks]Collision layers and masks[/url] in the documentation for more " +"object B scans, or object B is in any layers that object A scans. See " +"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-" +"and-masks]Collision layers and masks[/url] in the documentation for more " "information." msgstr "" "CollisionObject3D 所在的物理层。碰撞对象可以存在于 32 个不同层中的一个或多" @@ -16539,9 +16602,9 @@ msgid "" "The physics layers this CollisionObject3D scans. Collision objects can scan " "one or more of 32 different layers. See also [member collision_layer].\n" "[b]Note:[/b] A contact is detected if object A is in any of the layers that " -"object B scans, or object B is in any layers that object A scans. See [url=" -"$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-and-" -"masks]Collision layers and masks[/url] in the documentation for more " +"object B scans, or object B is in any layers that object A scans. See " +"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-" +"and-masks]Collision layers and masks[/url] in the documentation for more " "information." msgstr "" "CollisionObject3D 扫描的物理层。碰撞对象可以扫描 32 个不同层中的一个或多个。" @@ -16558,12 +16621,16 @@ msgstr "" "如果[code]true[/code],[CollisionObject] 将在鼠标拖过其形状时继续接收输入事" "件。" -#: doc/classes/CollisionObject.xml +#: doc/classes/CollisionObject.xml doc/classes/CollisionObject2D.xml +#, fuzzy msgid "" -"If [code]true[/code], the [CollisionObject]'s shapes will respond to " -"[RayCast]s." +"If [code]true[/code], this object is pickable. A pickable object can detect " +"the mouse pointer entering/leaving, and if the mouse is inside it, report " +"input events. Requires at least one [member collision_layer] bit to be set." msgstr "" -"如果[code]true[/code],[CollisionObject] 的形状将对 [RayCast] 做出反应。" +"如果[code]true[/code],这个对象是可拾取的。一个可拾取的对象可以检测鼠标指针的" +"进入/离开,如果鼠标在里面,就报告输入事件。要求至少有一个 " +"[code]collision_layer[/code] 位被设置。" #: doc/classes/CollisionObject.xml msgid "" @@ -16673,9 +16740,9 @@ msgid "" "The physics layers this CollisionObject2D is in. Collision objects can exist " "in one or more of 32 different layers. See also [member collision_mask].\n" "[b]Note:[/b] A contact is detected if object A is in any of the layers that " -"object B scans, or object B is in any layers that object A scans. See [url=" -"$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-and-" -"masks]Collision layers and masks[/url] in the documentation for more " +"object B scans, or object B is in any layers that object A scans. See " +"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-" +"and-masks]Collision layers and masks[/url] in the documentation for more " "information." msgstr "" "这个 CollisionObject2D 所在的物理层。碰撞对象可以存在于 32 个不同层中的一个或" @@ -16689,9 +16756,9 @@ msgid "" "The physics layers this CollisionObject2D scans. Collision objects can scan " "one or more of 32 different layers. See also [member collision_layer].\n" "[b]Note:[/b] A contact is detected if object A is in any of the layers that " -"object B scans, or object B is in any layers that object A scans. See [url=" -"$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-and-" -"masks]Collision layers and masks[/url] in the documentation for more " +"object B scans, or object B is in any layers that object A scans. See " +"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-" +"and-masks]Collision layers and masks[/url] in the documentation for more " "information." msgstr "" "这个 CollisionObject2D 所扫描的物理层。碰撞对象可以扫描 32 个不同层中的一个或" @@ -16702,17 +16769,6 @@ msgstr "" #: doc/classes/CollisionObject2D.xml msgid "" -"If [code]true[/code], this object is pickable. A pickable object can detect " -"the mouse pointer entering/leaving, and if the mouse is inside it, report " -"input events. Requires at least one [code]collision_layer[/code] bit to be " -"set." -msgstr "" -"如果[code]true[/code],这个对象是可拾取的。一个可拾取的对象可以检测鼠标指针的" -"进入/离开,如果鼠标在里面,就报告输入事件。要求至少有一个 " -"[code]collision_layer[/code] 位被设置。" - -#: doc/classes/CollisionObject2D.xml -msgid "" "Emitted when an input event occurs. Requires [member input_pickable] to be " "[code]true[/code] and at least one [code]collision_layer[/code] bit to be " "set. See [method _input_event] for details." @@ -16858,12 +16914,12 @@ msgstr "" #: doc/classes/CollisionShape.xml doc/classes/CollisionShape2D.xml #: doc/classes/Physics2DDirectBodyState.xml -#: doc/classes/Physics2DDirectSpaceState.xml doc/classes/PhysicsBody.xml -#: doc/classes/PhysicsBody2D.xml doc/classes/PhysicsDirectBodyState.xml +#: doc/classes/Physics2DDirectSpaceState.xml +#: doc/classes/PhysicsDirectBodyState.xml #: doc/classes/PhysicsDirectSpaceState.xml doc/classes/RigidBody.xml -#: doc/classes/Shape.xml doc/classes/Shape2D.xml -msgid "$DOCS_URL/tutorials/physics/physics_introduction.html" -msgstr "$DOCS_URL/tutorials/physics/physics_introduction.html" +#, fuzzy +msgid "Physics introduction" +msgstr "三次插值." #: doc/classes/CollisionShape.xml msgid "" @@ -16906,8 +16962,8 @@ msgstr "" #: doc/classes/CollisionShape2D.xml doc/classes/KinematicBody2D.xml #: doc/classes/RectangleShape2D.xml doc/classes/TileMap.xml #: doc/classes/TileSet.xml -msgid "https://godotengine.org/asset-library/asset/113" -msgstr "https://godotengine.org/asset-library/asset/113" +msgid "2D Kinematic Character Demo" +msgstr "" #: doc/classes/CollisionShape2D.xml msgid "" @@ -16968,16 +17024,16 @@ msgstr "" "color_constants.png]Color 常量速查表[/url]" #: doc/classes/Color.xml doc/classes/ColorPickerButton.xml -msgid "https://godotengine.org/asset-library/asset/517" -msgstr "https://godotengine.org/asset-library/asset/517" +msgid "2D GD Paint Demo" +msgstr "" #: doc/classes/Color.xml doc/classes/ColorPicker.xml -msgid "https://godotengine.org/asset-library/asset/146" -msgstr "https://godotengine.org/asset-library/asset/146" +msgid "Tween Demo" +msgstr "" #: doc/classes/Color.xml doc/classes/ColorPickerButton.xml -msgid "https://godotengine.org/asset-library/asset/133" -msgstr "https://godotengine.org/asset-library/asset/133" +msgid "GUI Drag And Drop Demo" +msgstr "" #: doc/classes/Color.xml msgid "" @@ -17140,10 +17196,10 @@ msgid "" "var inverted_color = color.inverted() # Equivalent to Color(0.7, 0.6, 0.1)\n" "[/codeblock]" msgstr "" -"返回反色[code](1-r,1-g,1-b,a)[/code]。\n" +"返回反色 [code](1 - r, 1 - g, 1 - b, a)[/code]。\n" "[codeblock]\n" "var color = Color(0.3, 0.4, 0.9)\n" -"var inverted_color = color.inverted() # Equivalent to Color(0.7, 0.6, 0.1)\n" +"var inverted_color = color.inverted() # 等价于 Color(0.7, 0.6, 0.1)\n" "[/codeblock]" #: doc/classes/Color.xml @@ -17152,8 +17208,8 @@ msgid "" "approximately equal, by running [method @GDScript.is_equal_approx] on each " "component." msgstr "" -"通过在每个组件上运行[method @GDScript.is_equal_approx],如果这个颜色和" -"[code]color[/code]近似相等,返回[code]true[/code]。" +"如果这个颜色和 [code]color[/code] 近似相等,则返回[code]true[/code],方法是对" +"每个分量运行 [method @GDScript.is_equal_approx]。" #: doc/classes/Color.xml msgid "" @@ -17998,16 +18054,16 @@ msgid "" "sliders.\n" "[b]Note:[/b] Cannot be enabled if raw mode is on." msgstr "" -"如果[code]true[/code],则允许使用“色相/饱和度/值”滑块编辑颜色。\n" +"如果为 [code]true[/code],则允许使用“色相/饱和度/值”滑块编辑颜色。\n" "[b]注意:[/b]如果启用了原始模式,则无法启用。" #: doc/classes/ColorPicker.xml msgid "If [code]true[/code], the \"add preset\" button is enabled." -msgstr "如果[code]true[/code],则启用 \"添加预置 \"按钮。" +msgstr "如果为 [code]true[/code],则启用“添加预设”按钮。" #: doc/classes/ColorPicker.xml msgid "If [code]true[/code], saved color presets are visible." -msgstr "如果[code]true[/code],则保存的颜色预设可见。" +msgstr "如果为 [code]true[/code],则保存的颜色预设可见。" #: doc/classes/ColorPicker.xml msgid "" @@ -18016,9 +18072,9 @@ msgid "" "tinting without darkening or rendering sprites in HDR).\n" "[b]Note:[/b] Cannot be enabled if HSV mode is on." msgstr "" -"如果[code]true[/code],则允许颜色R,G,B分量值超过1.0,该值可用于需要它的某些" -"特殊操作(例如着色而不会使HDR变暗或渲染精灵)。\n" -"[b]注意:[/b]如果启用了HSV模式,则无法启用。" +"如果为 [code]true[/code],则允许颜色 R、G、B 分量值超过 1.0,这些值可用于需要" +"它的某些特殊操作(例如着色而不会使 HDR 变暗或渲染精灵)。\n" +"[b]注意:[/b]如果启用了 HSV 模式,则无法启用。" #: doc/classes/ColorPicker.xml msgid "Emitted when the color is changed." @@ -18735,16 +18791,17 @@ msgstr "" "[method get_stylebox],以及这个类提供的 [code]add_*_override[/code] 方法。" #: doc/classes/Control.xml -msgid "$DOCS_URL/tutorials/ui/index.html" -msgstr "$DOCS_URL/tutorials/ui/index.html" +msgid "GUI tutorial index" +msgstr "" #: doc/classes/Control.xml -msgid "$DOCS_URL/tutorials/ui/control_node_gallery.html" -msgstr "$DOCS_URL/tutorials/ui/control_node_gallery.html" +#, fuzzy +msgid "Control node gallery" +msgstr "Control 键。" #: doc/classes/Control.xml -msgid "https://github.com/godotengine/godot-demo-projects/tree/master/gui" -msgstr "https://github.com/godotengine/godot-demo-projects/tree/master/gui" +msgid "All GUI Demos" +msgstr "" #: doc/classes/Control.xml msgid "" @@ -18861,8 +18918,8 @@ msgstr "" "场景树中预先存在的节点,可以复制它并传递复制的实例)。当返回 [code]null[/" "code] 或非控件节点时,将使用默认工具提示。\n" "返回的节点将作为子节点添加到 [PopupPanel],因此你应该只提供该面板的内容。该 " -"[PopupPanel] 可以使用 [method Theme.set_stylebox] 为类型 [code]\"TooltipPanel" -"\"[/code] 设置主题,参阅 [member hint_tooltip] 示例。\n" +"[PopupPanel] 可以使用 [method Theme.set_stylebox] 为类型 " +"[code]\"TooltipPanel\"[/code] 设置主题,参阅 [member hint_tooltip] 示例。\n" "[b]注意:[/b]工具提示缩小到最小尺寸。如果你想确保它完全可见,需将其 [member " "rect_min_size] 设置为非零值。\n" "自定义构建节点的使用示例:\n" @@ -18890,7 +18947,6 @@ msgstr "" "[method Node._unhandled_input]或[method Node._unhandled_key_input]的节点。" #: doc/classes/Control.xml -#, fuzzy msgid "" "Creates a local override for a theme [Color] with the specified [code]name[/" "code]. Local overrides always take precedence when fetching theme items for " @@ -18902,35 +18958,34 @@ msgid "" "custom value.\n" "$MyLabel.add_color_override(\"font_color\", Color(1, 0.5, 0))\n" "# Reset the font color of the child label.\n" -"$MyLabel.add_color_override(\"font_color\", get_color(\"font_color\", \"Label" -"\"))\n" +"$MyLabel.add_color_override(\"font_color\", get_color(\"font_color\", " +"\"Label\"))\n" "[/codeblock]" msgstr "" "使用指定的 [code]name[/code] 为主题 [Color] 创建本地覆盖项。获取控件的主题项" -"时,本地覆盖项始终优先。无法删除覆盖项,但可以使用相应的默认值覆盖它。\n" -"参阅[method get_color]。\n" -"[b]覆盖标签颜色并其后重置的示例:[/b]\n" +"时,本地覆盖项始终优先。\n" +"另请参阅 [method get_color]、[method remove_color_override]。\n" +"[b]覆盖标签颜色并其后重置的示例:[/b]\n" "[codeblock]\n" "# 给定子标签节点\"MyLabel\",用自定义值覆盖其字体颜色。\n" "$MyLabel.add_color_override(\"font_color\", Color(1, 0.5, 0))\n" "# 重置子标签的字体颜色。\n" -"$MyLabel.add_color_override(\"font_color\", get_color(\"font_color\", \"Label" -"\"))\n" +"$MyLabel.add_color_override(\"font_color\", get_color(\"font_color\", " +"\"Label\"))\n" "[/codeblock]" #: doc/classes/Control.xml -#, fuzzy msgid "" "Creates a local override for a theme constant with the specified [code]name[/" "code]. Local overrides always take precedence when fetching theme items for " "the control.\n" "See also [method get_constant], [method remove_constant_override]." msgstr "" -"为指定 [code]name[/code] 的主题着色器创建本地覆盖项。获取控件的主题项时,本地" -"覆盖项始终优先。可以通过为其分配 [code]null[/code] 值来删除覆盖。" +"为指定 [code]name[/code] 的主题常量创建本地覆盖项。获取控件的主题项时,本地覆" +"盖项始终优先。\n" +"另请参阅 [method get_constant]、[method remove_constant_override]。" #: doc/classes/Control.xml -#, fuzzy msgid "" "Creates a local override for a theme [Font] with the specified [code]name[/" "code]. Local overrides always take precedence when fetching theme items for " @@ -18941,11 +18996,12 @@ msgid "" "See also [method get_font]." msgstr "" "使用指定的 [code]name[/code] 为主题 [Font] 创建本地覆盖项。获取控件的主题项" -"时,本地覆盖项始终优先。可以通过为其分配 [code]null[/code] 值来删除覆盖。\n" +"时,本地覆盖项始终优先。\n" +"[b]注意:[/b]为覆盖项设 [code]null[/code] 值可将其删除。该行为已废弃,将在 " +"4.0 中移除,请换成 [method remove_font_override]。\n" "参阅[method get_font]。" #: doc/classes/Control.xml -#, fuzzy msgid "" "Creates a local override for a theme icon with the specified [code]name[/" "code]. Local overrides always take precedence when fetching theme items for " @@ -18956,11 +19012,12 @@ msgid "" "See also [method get_icon]." msgstr "" "为指定 [code]name[/code] 的主题图标创建本地覆盖项。获取控件的主题项时,本地覆" -"盖项始终优先。可以通过为其分配 [code]null[/code] 值来删除覆盖。\n" +"盖项始终优先。\n" +"[b]注意:[/b]为覆盖项设 [code]null[/code] 值可将其删除。该行为已废弃,将在 " +"4.0 中移除,请换成 [method remove_icon_override]。\n" "参阅[method get_icon]。" #: doc/classes/Control.xml -#, fuzzy msgid "" "Creates a local override for a theme shader with the specified [code]name[/" "code]. Local overrides always take precedence when fetching theme items for " @@ -18969,12 +19026,12 @@ msgid "" "value. This behavior is deprecated and will be removed in 4.0, use [method " "remove_shader_override] instead." msgstr "" -"使用指定的 [code]name[/code] 为主题 [Font] 创建本地覆盖项。获取控件的主题项" -"时,本地覆盖项始终优先。可以通过为其分配 [code]null[/code] 值来删除覆盖。\n" -"参阅[method get_font]。" +"使用指定的 [code]name[/code] 为主题着色器创建本地覆盖项。获取控件的主题项时," +"本地覆盖项始终优先。\n" +"[b]注意:[/b]为覆盖项设 [code]null[/code] 值可将其删除。该行为已废弃,将在 " +"4.0 中移除,请换成 [method remove_shader_override]。" #: doc/classes/Control.xml -#, fuzzy msgid "" "Creates a local override for a theme [StyleBox] with the specified " "[code]name[/code]. Local overrides always take precedence when fetching " @@ -18998,7 +19055,9 @@ msgid "" "[/codeblock]" msgstr "" "为主题 [StyleBox] 创建名为 [code]name[/code] 的本地覆盖项。获取控件的主题项" -"时,本地覆盖项始终优先。可以通过为其分配 [code]null[/code] 值来删除覆盖。\n" +"时,本地覆盖项始终优先。\n" +"[b]注意:[/b]为覆盖项设 [code]null[/code] 值可将其删除。该行为已废弃,将在 " +"4.0 中移除,请换成 [method remove_stylebox_override]。\n" "参阅 [method get_stylebox]。\n" "[b]通过复制来修改 StyleBox 中的属性的示例:[/b]\n" "[codeblock]\n" @@ -19489,37 +19548,31 @@ msgid "" msgstr "放弃焦点。其他控件将无法接收键盘输入。" #: doc/classes/Control.xml -#, fuzzy msgid "" "Removes a theme override for a [Color] with the given [code]name[/code]." -msgstr "移除按键[code]name[/code]的动画。" +msgstr "移除名为 [code]name[/code] 的主题 [Color] 覆盖项。" #: doc/classes/Control.xml -#, fuzzy msgid "" "Removes a theme override for a constant with the given [code]name[/code]." -msgstr "移除按键[code]name[/code]的动画。" +msgstr "移除名为 [code]name[/code] 的主题常量覆盖项。" #: doc/classes/Control.xml -#, fuzzy msgid "Removes a theme override for a [Font] with the given [code]name[/code]." -msgstr "移除按键[code]name[/code]的动画。" +msgstr "移除名为 [code]name[/code] 的主题 [Font] 覆盖项。" #: doc/classes/Control.xml -#, fuzzy msgid "Removes a theme override for an icon with the given [code]name[/code]." -msgstr "移除按键[code]name[/code]的动画。" +msgstr "移除名为 [code]name[/code] 的主题图标覆盖项。" #: doc/classes/Control.xml -#, fuzzy msgid "Removes a theme override for a shader with the given [code]name[/code]." -msgstr "返回带有给定[code]id[/code]的项的索引。" +msgstr "移除名为 [code]name[/code] 的主题着色器覆盖项。" #: doc/classes/Control.xml -#, fuzzy msgid "" "Removes a theme override for a [StyleBox] with the given [code]name[/code]." -msgstr "返回带有给定[code]id[/code]的项的索引。" +msgstr "移除名为 [code]name[/code] 的主题 [StyleBox] 覆盖项。" #: doc/classes/Control.xml msgid "" @@ -20200,7 +20253,6 @@ msgstr "" "mouse_entered]。" #: doc/classes/Control.xml -#, fuzzy msgid "" "Emitted when the mouse leaves the control's [code]Rect[/code] area, provided " "its [member mouse_filter] lets the event reach it.\n" @@ -20216,10 +20268,17 @@ msgid "" " # Not hovering over area.\n" "[/codeblock]" msgstr "" -"当鼠标离开控件的[code]Rect[/code]区域时触发,只要其[member mouse_filter]允许" -"事件到达。\n" -"[b]注意:[/b] 如果鼠标进入一个子[Control]节点,即使鼠标光标仍然在父" -"[code]Rect[/code]区域内,[signal mouse_exited]也将触发。" +"当鼠标离开控件的 [code]Rect[/code] 区域时触发,只要其 [member mouse_filter] " +"允许事件到达。\n" +"[b]注意:[/b]如果鼠标进入一个子 [Control] 节点,即使鼠标光标仍然在父 " +"[code]Rect[/code] 区域内,[signal mouse_exited] 也将触发。\n" +"如果你想检查鼠标是否真正离开了该区域,无视上层节点,可以使用这样的代码:\n" +"[codeblock]\n" +"func _on_mouse_exited():\n" +" if not Rect2(Vector2(), rect_size)." +"has_point(get_local_mouse_position()):\n" +" # 没有悬停在此区域。\n" +"[/codeblock]" #: doc/classes/Control.xml msgid "Emitted when the control changes size." @@ -21057,11 +21116,11 @@ msgstr "将粒子的Y轴与其速度方向对齐。" #: doc/classes/CPUParticles.xml doc/classes/ParticlesMaterial.xml msgid "If [code]true[/code], particles will not move on the z axis." -msgstr "如果[code]true[/code],则粒子将不会在z轴上移动。" +msgstr "如果为 [code]true[/code],则粒子将不会在 z 轴上移动。" #: doc/classes/CPUParticles.xml doc/classes/ParticlesMaterial.xml msgid "If [code]true[/code], particles rotate around Y axis by [member angle]." -msgstr "如果[code]true[/code],粒子绕Y轴旋转[member angle]。" +msgstr "如果为 [code]true[/code],则粒子将绕 Y 轴旋转 [member angle]。" #: doc/classes/CPUParticles.xml msgid "" @@ -21445,10 +21504,6 @@ msgstr "" "参阅[Particles2D],它通过硬件加速提供相同的功能,但可能无法在旧设备上运行。\n" "[b]注意:[/b] 其与[Particles2D]不同,可见性矩形是即时生成的,不需要用户配置。" -#: doc/classes/CPUParticles2D.xml doc/classes/Particles2D.xml -msgid "$DOCS_URL/tutorials/2d/particle_systems_2d.html" -msgstr "$DOCS_URL/tutorials/2d/particle_systems_2d.html" - #: doc/classes/CPUParticles2D.xml msgid "" "Sets this node's properties to match a given [Particles2D] node with an " @@ -21503,11 +21558,11 @@ msgid "" "Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for " "a comparison of normal map coordinates expected by popular engines." msgstr "" -"用于[member texture]属性的法线贴图。\n" -"[b]注意:[/b] Godot希望法线贴图使用X +,Y-和Z +坐标。请参阅[url=http://wiki." -"polycount.com/wiki/" -"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url],以比" -"较流行引擎期望的法线地图坐标。" +"用于 [member texture] 属性的法线贴图。\n" +"[b]注意:[/b]Godot 希望法线贴图使用 X+、Y- 和 Z+ 坐标。请参阅[url=http://" +"wiki.polycount.com/wiki/" +"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]该页[/url],了解流行" +"引擎所期望的法线贴图坐标的比较。" #: doc/classes/CPUParticles2D.xml msgid "" @@ -21672,8 +21727,8 @@ msgid "" "Generates a self-signed [X509Certificate] from the given [CryptoKey] and " "[code]issuer_name[/code]. The certificate validity will be defined by " "[code]not_before[/code] and [code]not_after[/code] (first valid date and " -"last valid date). The [code]issuer_name[/code] must contain at least \"CN=" -"\" (common name, i.e. the domain name), \"O=\" (organization, i.e. your " +"last valid date). The [code]issuer_name[/code] must contain at least " +"\"CN=\" (common name, i.e. the domain name), \"O=\" (organization, i.e. your " "company name), \"C=\" (country, i.e. 2 lettered ISO-3166 code of the country " "the organization is based in).\n" "A small example to generate an RSA key and a X509 self-signed certificate.\n" @@ -21803,8 +21858,23 @@ msgid "A CSG Box shape." msgstr "CSG 盒子形状。" #: modules/csg/doc_classes/CSGBox.xml -msgid "This node allows you to create a box for use with the CSG system." -msgstr "该节点允许您使用 CSG 系统创建一个盒子。" +msgid "" +"This node allows you to create a box for use with the CSG system.\n" +"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. " +"Creating CSG nodes has a significant CPU cost compared to creating a " +"[MeshInstance] with a [PrimitiveMesh]. Moving a CSG node within another CSG " +"node also has a significant CPU cost, so it should be avoided during " +"gameplay." +msgstr "" + +#: modules/csg/doc_classes/CSGBox.xml modules/csg/doc_classes/CSGCombiner.xml +#: modules/csg/doc_classes/CSGCylinder.xml modules/csg/doc_classes/CSGMesh.xml +#: modules/csg/doc_classes/CSGPolygon.xml +#: modules/csg/doc_classes/CSGPrimitive.xml +#: modules/csg/doc_classes/CSGShape.xml modules/csg/doc_classes/CSGSphere.xml +#: modules/csg/doc_classes/CSGTorus.xml +msgid "Prototyping levels with CSG" +msgstr "" #: modules/csg/doc_classes/CSGBox.xml msgid "Depth of the box measured from the center of the box." @@ -21827,6 +21897,7 @@ msgid "A CSG node that allows you to combine other CSG modifiers." msgstr "允许您组合其他 CSG 修改器的 CSG 节点。" #: modules/csg/doc_classes/CSGCombiner.xml +#, fuzzy msgid "" "For complex arrangements of shapes, it is sometimes needed to add structure " "to your CSG nodes. The CSGCombiner node allows you to create this structure. " @@ -21835,7 +21906,12 @@ msgid "" "children of one CSGCombiner node, and a set of separate operations on a " "second set of shapes that are children of a second CSGCombiner node, and " "then do an operation that takes the two end results as its input to create " -"the final shape." +"the final shape.\n" +"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. " +"Creating CSG nodes has a significant CPU cost compared to creating a " +"[MeshInstance] with a [PrimitiveMesh]. Moving a CSG node within another CSG " +"node also has a significant CPU cost, so it should be avoided during " +"gameplay." msgstr "" "对于复杂的形状排列,有时需要向CSG节点添加结构体。CSGCombiner节点允许你创建这" "种结构体。该节点封装了其子节点的CSG操作的结果。通过这种方式,可以对作为一个" @@ -21850,8 +21926,13 @@ msgstr "CSG 圆柱形状。" #: modules/csg/doc_classes/CSGCylinder.xml msgid "" "This node allows you to create a cylinder (or cone) for use with the CSG " -"system." -msgstr "该节点允许您创建用于CSG系统的圆柱(或圆锥体)。" +"system.\n" +"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. " +"Creating CSG nodes has a significant CPU cost compared to creating a " +"[MeshInstance] with a [PrimitiveMesh]. Moving a CSG node within another CSG " +"node also has a significant CPU cost, so it should be avoided during " +"gameplay." +msgstr "" #: modules/csg/doc_classes/CSGCylinder.xml msgid "" @@ -21894,10 +21975,14 @@ msgstr "使用网格资源的CSG网格形状。" msgid "" "This CSG node allows you to use any mesh resource as a CSG shape, provided " "it is closed, does not self-intersect, does not contain internal faces and " -"has no edges that connect to more then two faces." +"has no edges that connect to more than two faces. See also [CSGPolygon] for " +"drawing 2D extruded polygons to be used as CSG nodes.\n" +"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. " +"Creating CSG nodes has a significant CPU cost compared to creating a " +"[MeshInstance] with a [PrimitiveMesh]. Moving a CSG node within another CSG " +"node also has a significant CPU cost, so it should be avoided during " +"gameplay." msgstr "" -"此CSG节点允许您将任何网格资源用作CSG形状,只要它是封闭的,不自相交,不包含内" -"部面并且没有连接到两个以上面的边即可。" #: modules/csg/doc_classes/CSGMesh.xml msgid "The [Material] used in drawing the CSG shape." @@ -21924,8 +22009,13 @@ msgstr "拉伸2D多边形形状以创建3D网格。" #: modules/csg/doc_classes/CSGPolygon.xml msgid "" "An array of 2D points is extruded to quickly and easily create a variety of " -"3D meshes." -msgstr "挤出一组 2D 点以快速创建各种 3D 网格。" +"3D meshes. See also [CSGMesh] for using 3D meshes as CSG nodes.\n" +"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. " +"Creating CSG nodes has a significant CPU cost compared to creating a " +"[MeshInstance] with a [PrimitiveMesh]. Moving a CSG node within another CSG " +"node also has a significant CPU cost, so it should be avoided during " +"gameplay." +msgstr "" #: modules/csg/doc_classes/CSGPolygon.xml msgid "" @@ -22026,8 +22116,14 @@ msgstr "" "单位,将进行平铺。当设置为0时,纹理坐标将与几何图形完全匹配,没有平铺。" #: modules/csg/doc_classes/CSGPolygon.xml -msgid "The point array that defines the 2D polygon that is extruded." -msgstr "定义挤出的二维多边形的点数组。" +msgid "" +"The point array that defines the 2D polygon that is extruded. This can be a " +"convex or concave polygon with 3 or more points. The polygon must [i]not[/i] " +"have any intersecting edges. Otherwise, triangulation will fail and no mesh " +"will be generated.\n" +"[b]Note:[/b] If only 1 or 2 points are defined in [member polygon], no mesh " +"will be generated." +msgstr "" #: modules/csg/doc_classes/CSGPolygon.xml msgid "If [code]true[/code], applies smooth shading to the extrusions." @@ -22110,10 +22206,13 @@ msgstr "CSG基元的基类。" msgid "" "Parent class for various CSG primitives. It contains code and functionality " "that is common between them. It cannot be used directly. Instead use one of " -"the various classes that inherit from it." +"the various classes that inherit from it.\n" +"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. " +"Creating CSG nodes has a significant CPU cost compared to creating a " +"[MeshInstance] with a [PrimitiveMesh]. Moving a CSG node within another CSG " +"node also has a significant CPU cost, so it should be avoided during " +"gameplay." msgstr "" -"各种CSG原语的父类。它包含它们之间通用的代码和功能。不能直接使用。而是使用从其" -"继承的各种类之一。" #: modules/csg/doc_classes/CSGPrimitive.xml msgid "Invert the faces of the mesh." @@ -22126,8 +22225,13 @@ msgstr "CSG基类。" #: modules/csg/doc_classes/CSGShape.xml msgid "" "This is the CSG base class that provides CSG operation support to the " -"various CSG nodes in Godot." -msgstr "这是CSG基类,可为Godot中的各个CSG节点提供CSG操作支持。" +"various CSG nodes in Godot.\n" +"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. " +"Creating CSG nodes has a significant CPU cost compared to creating a " +"[MeshInstance] with a [PrimitiveMesh]. Moving a CSG node within another CSG " +"node also has a significant CPU cost, so it should be avoided during " +"gameplay." +msgstr "" #: modules/csg/doc_classes/CSGShape.xml doc/classes/RayCast2D.xml #: doc/classes/SoftBody.xml @@ -22247,8 +22351,14 @@ msgid "A CSG Sphere shape." msgstr "CSG球形形状。" #: modules/csg/doc_classes/CSGSphere.xml -msgid "This node allows you to create a sphere for use with the CSG system." -msgstr "该节点允许您创建一个供CSG系统使用的球体。" +msgid "" +"This node allows you to create a sphere for use with the CSG system.\n" +"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. " +"Creating CSG nodes has a significant CPU cost compared to creating a " +"[MeshInstance] with a [PrimitiveMesh]. Moving a CSG node within another CSG " +"node also has a significant CPU cost, so it should be avoided during " +"gameplay." +msgstr "" #: modules/csg/doc_classes/CSGSphere.xml msgid "The material used to render the sphere." @@ -22280,8 +22390,14 @@ msgid "A CSG Torus shape." msgstr "CSG圆环形状。" #: modules/csg/doc_classes/CSGTorus.xml -msgid "This node allows you to create a torus for use with the CSG system." -msgstr "该节点允许您创建用于CSG系统的环面。" +msgid "" +"This node allows you to create a torus for use with the CSG system.\n" +"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. " +"Creating CSG nodes has a significant CPU cost compared to creating a " +"[MeshInstance] with a [PrimitiveMesh]. Moving a CSG node within another CSG " +"node also has a significant CPU cost, so it should be avoided during " +"gameplay." +msgstr "" #: modules/csg/doc_classes/CSGTorus.xml msgid "The inner radius of the torus." @@ -22329,10 +22445,6 @@ msgstr "" "另请参阅[GodotSharp]。" #: modules/mono/doc_classes/CSharpScript.xml -msgid "$DOCS_URL/tutorials/scripting/c_sharp/index.html" -msgstr "$DOCS_URL/tutorials/scripting/c_sharp/index.html" - -#: modules/mono/doc_classes/CSharpScript.xml #: modules/gdnative/doc_classes/PluginScript.xml msgid "Returns a new instance of the script." msgstr "返回脚本的新实例。" @@ -22522,6 +22634,14 @@ msgstr "" #: doc/classes/CullInstance.xml msgid "" +"This allows fine control over the mesh merging feature in the " +"[RoomManager].\n" +"Setting this option to [code]false[/code] can be used to prevent an instance " +"being merged." +msgstr "" + +#: doc/classes/CullInstance.xml +msgid "" "When set to [code]0[/code], [CullInstance]s will be autoplaced in the [Room] " "with the highest priority.\n" "When set to a value other than [code]0[/code], the system will attempt to " @@ -22854,8 +22974,8 @@ msgid "" "bounds, the function sends an error to the console, and returns [code](0, 0)" "[/code]." msgstr "" -"返回顶点的位置[code]idx[/code]。如果索引超出边界,函数会向控制台发送一个错误" -"信息,并返回[code](0,0)[/code]。" +"返回顶点 [code]idx[/code] 的位置。如果索引超出边界,函数会向控制台发送一个错" +"误信息,并返回 [code](0, 0)[/code]。" #: doc/classes/Curve2D.xml msgid "" @@ -22869,12 +22989,12 @@ msgid "" "function sends an error to the console, and returns [code](0, 0)[/code]." msgstr "" "返回顶点 [code]idx[/code] 和顶点 [code]idx + 1[/code] 之间的位置,其中 " -"[code]t[/code] 控制该点是第一个顶点 ([code]t = 0.0[/code])、最后一个顶点 " -"([code]t = 1.0[/code]),还是介于两者之间。范围外的[code]t[/code]的值" -"([code]0.0 >= t <=1[/code])会产生奇怪但可预测的结果。\n" -"如果[code]idx[/code]超出边界,则截断到第一个或最后一个顶点,而[code]t[/code]" -"则被忽略。如果曲线没有点,函数会向控制台发送一个错误,并返回 [code](0,0)[/" -"code]。" +"[code]t[/code] 控制该点是第一个顶点([code]t = 0.0[/code])、最后一个顶点" +"([code]t = 1.0[/code]),还是介于两者之间。范围([code]0.0 >= t <=1[/code])" +"外的 [code]t[/code] 的值会产生奇怪但可预测的结果。\n" +"如果 [code]idx[/code] 超出边界,则截断到第一个或最后一个顶点,而 [code]t[/" +"code] 则被忽略。如果曲线没有点,函数会向控制台发送一个错误,并返回 [code](0, " +"0)[/code]。" #: doc/classes/Curve2D.xml msgid "" @@ -23044,8 +23164,8 @@ msgid "" "bounds, the function sends an error to the console, and returns [code](0, 0, " "0)[/code]." msgstr "" -"返回顶点的位置 [code]idx[/code]。如果索引超出边界,函数会向控制台发送一个错误" -"信息,并返回 [code](0,0,0)[/code]。" +"返回顶点 [code]idx[/code] 的位置。如果索引超出边界,函数会向控制台发送一个错" +"误信息,并返回 [code](0, 0, 0)[/code]。" #: doc/classes/Curve3D.xml msgid "" @@ -23149,7 +23269,7 @@ msgstr "" #: doc/classes/CurveTexture.xml msgid "A texture that shows a curve." -msgstr "一种显示曲线的纹理。" +msgstr "显示曲线的纹理。" #: doc/classes/CurveTexture.xml msgid "" @@ -23477,8 +23597,8 @@ msgstr "" "一个数值。" #: doc/classes/Dictionary.xml -msgid "$DOCS_URL/tutorials/scripting/gdscript/gdscript_basics.html#dictionary" -msgstr "$DOCS_URL/tutorials/scripting/gdscript/gdscript_basics.html#dictionary" +msgid "GDScript basics: Dictionary" +msgstr "" #: doc/classes/Dictionary.xml msgid "Clear the dictionary, removing all key/value pairs." @@ -23548,9 +23668,10 @@ msgid "" msgstr "如果字典具有给定数组中的所有键,则返回 [code]true[/code] 。" #: doc/classes/Dictionary.xml +#, fuzzy msgid "" -"Returns a hashed integer value representing the dictionary contents. This " -"can be used to compare dictionaries by value:\n" +"Returns a hashed 32-bit integer value representing the dictionary contents. " +"This can be used to compare dictionaries by value:\n" "[codeblock]\n" "var dict1 = {0: 10}\n" "var dict2 = {0: 10}\n" @@ -23559,14 +23680,17 @@ msgid "" "print(dict1.hash() == dict2.hash())\n" "[/codeblock]\n" "[b]Note:[/b] Dictionaries with the same keys/values but in a different order " -"will have a different hash." +"will have a different hash.\n" +"[b]Note:[/b] Dictionaries with equal content will always produce identical " +"hash values. However, the reverse is not true. Returning identical hash " +"values does [i]not[/i] imply the dictionaries are equal, because different " +"dictionaries can have identical hash values due to hash collisions." msgstr "" "返回一个代表字典内容的哈希整数值。这可以用来比较字典的值。\n" "[codeblock]\n" "var dict1 = {0: 10}\n" "var dict2 = {0: 10}\n" -"# The line below prints `true`, whereas it would have printed `false` if " -"both variables were compared directly.\n" +"# 下面这一行会输出 `true`,而如果直接比较这两个变量就会输出 `false`。\n" "print(dict1.hash() == dict2.hash())\n" "[/codeblock]\n" "[b]注意:[/b]具有相同键/值但顺序不同的字典将有不同的哈希值。" @@ -23599,11 +23723,6 @@ msgstr "" "可以用作离场景很远、具有强烈强度的灯光,模拟太阳光或月光。DirectionalLight 变" "换的世界空间坐标(原点)会被忽略。只会用基来确定光线的方向。" -#: doc/classes/DirectionalLight.xml doc/classes/Light.xml -#: doc/classes/OmniLight.xml doc/classes/SpotLight.xml -msgid "$DOCS_URL/tutorials/3d/lights_and_shadows.html" -msgstr "$DOCS_URL/tutorials/3d/lights_and_shadows.html" - #: doc/classes/DirectionalLight.xml msgid "" "Amount of extra bias for shadow splits that are far away. If self-shadowing " @@ -23769,10 +23888,6 @@ msgstr "" " print(\"尝试访问路径时出错。\")\n" "[/codeblock]" -#: doc/classes/Directory.xml doc/classes/File.xml -msgid "$DOCS_URL/tutorials/scripting/filesystem.html" -msgstr "$DOCS_URL/tutorials/scripting/filesystem.html" - #: doc/classes/Directory.xml msgid "" "Changes the currently opened directory to the one passed as an argument. The " @@ -24266,7 +24381,7 @@ msgid "" msgstr "" "字体轮廓的颜色。\n" "[b]注意:[/b]建议将此值保留为默认值,以便您可以在各个控件中对其进行调整。例" -"如,如果在此处将轮廓设为黑色,则无法使用Label的字体轮廓调制主题项来更改其颜" +"如,如果在此处将轮廓设为黑色,则无法使用 Label 的字体轮廓调制主题项来更改其颜" "色。" #: doc/classes/DynamicFont.xml @@ -24432,14 +24547,15 @@ msgstr "" msgid "" "Adds an iOS bundle file from the given [code]path[/code] to the exported " "project." -msgstr "从给定的 [code]path[/code] 添加一个iOS捆绑文件到导出的项目。" +msgstr "从给定的 [code]path[/code] 添加一个 iOS 捆绑文件到导出的项目。" #: doc/classes/EditorExportPlugin.xml msgid "" "Adds a C++ code to the iOS export. The final code is created from the code " "appended by each active export plugin." msgstr "" -"将C++代码添加到iOS导出中。最终的代码是由每个激活的导出插件附加的代码创建的。" +"将 C++ 代码添加到 iOS 导出中。最终的代码是由每个激活的导出插件附加的代码创建" +"的。" #: doc/classes/EditorExportPlugin.xml msgid "" @@ -24470,7 +24586,7 @@ msgstr "为 iOS 导出添加链接器标志。" #: doc/classes/EditorExportPlugin.xml msgid "Adds content for iOS Property List files." -msgstr "为iOS属性列表文件添加内容。" +msgstr "为 iOS 属性列表文件添加内容。" #: doc/classes/EditorExportPlugin.xml msgid "Adds a static lib from the given [code]path[/code] to the iOS project." @@ -24505,7 +24621,7 @@ msgstr "" msgid "" "To be called inside [method _export_file]. Skips the current file, so it's " "not included in the export." -msgstr "在[method _export_file]中调用。跳过当前文件,因此它不包括在导出中。" +msgstr "在 [method _export_file] 中调用。跳过当前文件,因此它不包括在导出中。" #: doc/classes/EditorFeatureProfile.xml msgid "" @@ -24532,7 +24648,7 @@ msgstr "" #: doc/classes/EditorFeatureProfile.xml msgid "Returns the specified [code]feature[/code]'s human-readable name." -msgstr "返回指定的[code]feature[/code]的可读名称。" +msgstr "返回指定的 [code]feature[/code] 的可读名称。" #: doc/classes/EditorFeatureProfile.xml msgid "" @@ -24540,8 +24656,8 @@ msgid "" "is disabled. When disabled, the class won't appear in the Create New Node " "dialog." msgstr "" -"如果[code]class_name[/code]指定的类被禁用,返回[code]true[/code]。当类被禁用" -"时,该类将不会出现在创建新节点的对话框中。" +"如果 [code]class_name[/code] 指定的类被禁用,返回 [code]true[/code]。当类被禁" +"用时,该类将不会出现在“创建新 Node”对话框中。" #: doc/classes/EditorFeatureProfile.xml msgid "" @@ -24550,9 +24666,9 @@ msgid "" "appear in the Create New Node dialog but the inspector will be read-only " "when selecting a node that extends the class." msgstr "" -"如果[code]class_name[/code]指定的类的编辑被禁用,返回[code]true[/code]。禁用" -"时,类仍然会出现在 \"创建新节点 \"对话框中,但在选择继承的节点时,检查器将是" -"只读的。" +"如果 [code]class_name[/code] 指定的类的编辑被禁用,返回 [code]true[/code]。禁" +"用时,类仍然会出现在“创建新 Node”对话框中,但在选择继承的节点时,检查器将是只" +"读的。" #: doc/classes/EditorFeatureProfile.xml msgid "" @@ -24598,7 +24714,7 @@ msgid "" "Create New Node dialog." msgstr "" "如果 [code]disable[/code] 是 [code]true[/code],则禁用 [code]class_name[/" -"code] 指定的类。被禁用时,该类不会出现在 \"创建新节点 \"对话框中。" +"code] 指定的类。被禁用时,该类不会出现在“创建新 Node”对话框中。" #: doc/classes/EditorFeatureProfile.xml msgid "" @@ -24608,8 +24724,8 @@ msgid "" "when selecting a node that extends the class." msgstr "" "如果 [code]disable[/code] 为 [code]true[/code],则禁用 [code]class_name[/" -"code] 指定的类的编辑。禁用时,类仍然会出现在 \"创建新节点 \"对话框中,但在选" -"择继承的节点时,检查器将只读。" +"code] 指定的类的编辑。禁用时,类仍然会出现在“创建新 Node”对话框中,但在选择继" +"承的节点时,检查器将只读。" #: doc/classes/EditorFeatureProfile.xml msgid "" @@ -24636,8 +24752,8 @@ msgid "" "The 3D editor. If this feature is disabled, the 3D editor won't display but " "3D nodes will still display in the Create New Node dialog." msgstr "" -"3D编辑器。如果禁用此功能,3D编辑器将不显示,但3D节点仍将显示在 \"创建新节点 " -"\"对话框中。" +"3D 编辑器。如果禁用此功能,3D 编辑器将不显示,但 3D 节点仍将显示在“创建新 " +"Node”对话框中。" #: doc/classes/EditorFeatureProfile.xml msgid "" @@ -24973,9 +25089,9 @@ msgid "" "returns a string such as [code]\"Resource\"[/code] or [code]\"GDScript\"[/" "code], [i]not[/i] a file extension such as [code]\".gd\"[/code]." msgstr "" -"返回索引[code]idx[/code]处文件的资源类型。这将返回字符串,如[code]\"Resource" -"\"[/code]或[code]\"GDScript\"[/code],[i]不是[/i]文件扩展名,如[code]\".gd" -"\"[/code]。" +"返回索引[code]idx[/code]处文件的资源类型。这将返回字符串,如" +"[code]\"Resource\"[/code]或[code]\"GDScript\"[/code],[i]不是[/i]文件扩展名," +"如[code]\".gd\"[/code]。" #: doc/classes/EditorFileSystemDirectory.xml msgid "Returns the name of this directory." @@ -25117,10 +25233,6 @@ msgstr "" "要使用你的 [EditorImportPlugin],请先通过 [method EditorPlugin." "add_import_plugin] 注册。" -#: doc/classes/EditorImportPlugin.xml doc/classes/ResourceImporter.xml -msgid "$DOCS_URL/tutorials/plugins/editor/import_plugins.html" -msgstr "$DOCS_URL/tutorials/plugins/editor/import_plugins.html" - #: doc/classes/EditorImportPlugin.xml msgid "" "Gets the options and default values for the preset at this index. Returns an " @@ -25159,8 +25271,8 @@ msgid "" "func get_option_visibility(option, options):\n" " # Only show the lossy quality setting if the compression mode is set to " "\"Lossy\".\n" -" if option == \"compress/lossy_quality\" and options.has(\"compress/mode" -"\"):\n" +" if option == \"compress/lossy_quality\" and options.has(\"compress/" +"mode\"):\n" " return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n" "\n" " return true\n" @@ -25173,8 +25285,8 @@ msgstr "" "func get_option_visibility(option, options):\n" " # Only show the lossy quality setting if the compression mode is set to " "\"Lossy\".\n" -" if option == \"compress/lossy_quality\" and options.has(\"compress/mode" -"\"):\n" +" if option == \"compress/lossy_quality\" and options.has(\"compress/" +"mode\"):\n" " return int(options[\"compress/mode\"]) == COMPRESS_LOSSY\n" "\n" " return true\n" @@ -25212,8 +25324,8 @@ msgstr "" #: doc/classes/EditorImportPlugin.xml msgid "" -"Gets the Godot resource type associated with this loader. e.g. [code]\"Mesh" -"\"[/code] or [code]\"Animation\"[/code]." +"Gets the Godot resource type associated with this loader. e.g. " +"[code]\"Mesh\"[/code] or [code]\"Animation\"[/code]." msgstr "" "获取与此加载程序关联的Godot资源类型,例如 [code]\"Mesh\"[/code] 或 " "[code]\"Animation\"[/code]。" @@ -25361,8 +25473,8 @@ msgstr "" "add_inspector_plugin] 方法注册。" #: doc/classes/EditorInspectorPlugin.xml -msgid "$DOCS_URL/tutorials/plugins/editor/inspector_plugins.html" -msgstr "$DOCS_URL/tutorials/plugins/editor/inspector_plugins.html" +msgid "Inspector plugins" +msgstr "" #: doc/classes/EditorInspectorPlugin.xml msgid "Adds a custom control, which is not necessarily a property editor." @@ -25679,10 +25791,6 @@ msgstr "" "件和导出插件。另请参阅[EditorScript]向编辑器添加函数。" #: doc/classes/EditorPlugin.xml -msgid "$DOCS_URL/tutorials/plugins/editor/index.html" -msgstr "$DOCS_URL/tutorials/plugins/editor/index.html" - -#: doc/classes/EditorPlugin.xml msgid "" "Adds a script at [code]path[/code] to the Autoload list as [code]name[/code]." msgstr "" @@ -25848,9 +25956,9 @@ msgid "" "[code]submenu[/code] should be an object of class [PopupMenu]. This submenu " "should be cleaned up using [code]remove_tool_menu_item(name)[/code]." msgstr "" -"在[b]项目>工具>[/b] [code]name[/code]下添加自定义子菜单。 [code]submenu[/" -"code]应该是[PopupMenu]类的对象。此子菜单应使用" -"[code]remove_tool_menu_item(name)[/code]进行清理。" +"在[b]项目 > 工具[/b]下添加名为 [code]name[/code] 的自定义子菜单。 " +"[code]submenu[/code] 应该是 [PopupMenu] 类的对象。此子菜单应使用 " +"[code]remove_tool_menu_item(name)[/code] 进行清理。" #: doc/classes/EditorPlugin.xml msgid "" @@ -26367,8 +26475,8 @@ msgid "" "This control allows property editing for one or multiple properties into " "[EditorInspector]. It is added via [EditorInspectorPlugin]." msgstr "" -"该控件可以将一个或多个属性编辑到[EditorInspector]中。通过" -"[EditorInspectorPlugin]添加。" +"该控件可以将一个或多个属性编辑到 [EditorInspector] 中。通过 " +"[EditorInspectorPlugin] 添加。" #: doc/classes/EditorProperty.xml msgid "" @@ -26400,8 +26508,8 @@ msgid "" "[method EditorInspectorPlugin.parse_property]), then this will return the " "property." msgstr "" -"获取已编辑的属性。如果你的编辑器是针对单个属性的(通过[method " -"EditorInspectorPlugin.parse_property]添加),那么这将返回属性。" +"获取已编辑的属性。如果你的编辑器是针对单个属性的(通过 [method " +"EditorInspectorPlugin.parse_property] 添加),那么这将返回属性。" #: doc/classes/EditorProperty.xml msgid "Must be implemented to provide a custom tooltip to the property editor." @@ -26423,12 +26531,12 @@ msgstr "当这个虚函数被调用时,你必须更新你的编辑器。" msgid "" "Used by the inspector, set to [code]true[/code] when the property is " "checkable." -msgstr "在检查面板使用,当属性可点击时,设置为[code]true[/code]。" +msgstr "检查器会使用,当属性可勾选时,请设置为 [code]true[/code]。" #: doc/classes/EditorProperty.xml msgid "" "Used by the inspector, set to [code]true[/code] when the property is checked." -msgstr "在检查面板使用,当属性为可选中时,设置属性为[code]true[/code]。" +msgstr "检查器会使用,当属性已勾选时,请设置为 [code]true[/code]。" #: doc/classes/EditorProperty.xml msgid "" @@ -26436,14 +26544,14 @@ msgid "" "with the editor theme's warning color. This is used for editable children's " "properties." msgstr "" -"由检查器使用,当属性用编辑器主题的警告颜色着色时,设置为[code]true[/code]。这" -"用于可编辑的子节点的属性。" +"检查器会使用,当属性用编辑器主题的警告颜色着色时,请设置为[code]true[/code]。" +"这用于可编辑的子节点的属性。" #: doc/classes/EditorProperty.xml msgid "" "Used by the inspector, set to [code]true[/code] when the property can add " "keys for animation." -msgstr "在检查面板使用,设置为[code]true[/code]时,该属性可以为动画添加键。" +msgstr "检查器会使用,当属性可以为添加为动画键时,请设置为 [code]true[/code]。" #: doc/classes/EditorProperty.xml msgid "Set this property to change the label (if you want to show one)." @@ -26453,19 +26561,19 @@ msgstr "设置此属性可改变标签(如果你想显示标签)。" msgid "" "Used by the inspector, set to [code]true[/code] when the property is read-" "only." -msgstr "在检查面板使用,当属性为只读时,设置为[code]true[/code]。" +msgstr "检查器会使用,当属性为只读时,请设置为 [code]true[/code]。" #: doc/classes/EditorProperty.xml msgid "" "Emit it if you want multiple properties modified at the same time. Do not " "use if added via [method EditorInspectorPlugin.parse_property]." msgstr "" -"如果你想同时修改多个属性,请触发它。如果通过[method EditorInspectorPlugin." -"parse_property]添加,则不要使用。" +"如果你想同时修改多个属性,请触发它。如果通过 [method EditorInspectorPlugin." +"parse_property] 添加,则不要使用。" #: doc/classes/EditorProperty.xml msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID." -msgstr "由子检查员使用。如果选择的是对象ID,则触发。" +msgstr "子检查器会使用。如果选择的是对象 ID,则触发。" #: doc/classes/EditorProperty.xml msgid "" @@ -26870,11 +26978,6 @@ msgstr "" "[/codeblock]" #: doc/classes/EditorScenePostImport.xml -msgid "$DOCS_URL/tutorials/assets_pipeline/importing_scenes.html#custom-script" -msgstr "" -"$DOCS_URL/tutorials/assets_pipeline/importing_scenes.html#custom-script" - -#: doc/classes/EditorScenePostImport.xml msgid "" "Returns the source file path which got imported (e.g. [code]res://scene.dae[/" "code])." @@ -27421,10 +27524,6 @@ msgstr "" "add_spatial_gizmo_plugin] 注册。" #: doc/classes/EditorSpatialGizmoPlugin.xml -msgid "$DOCS_URL/tutorials/plugins/editor/spatial_gizmos.html" -msgstr "$DOCS_URL/tutorials/plugins/editor/spatial_gizmos.html" - -#: doc/classes/EditorSpatialGizmoPlugin.xml msgid "" "Adds a new material to the internal material list for the plugin. It can " "then be accessed with [method get_material]. Should not be overridden." @@ -27581,14 +27680,14 @@ msgstr "" "[EditorInspectorPlugin] 一起使用,以重新创建相同的行为。" #: doc/classes/EditorVCSInterface.xml -#, fuzzy msgid "" "Version Control System (VCS) interface, which reads and writes to the local " "VCS in use." -msgstr "版本控制系统(VCS)接口,可对正在使用的本地VCS进行读写。" +msgstr "" +"版本控制系统(Version Control System,VCS)接口,可对正在使用的本地 VCS 进行" +"读写。" #: doc/classes/EditorVCSInterface.xml -#, fuzzy msgid "" "Defines the API that the editor uses to extract information from the " "underlying VCS. The implementation of this API is included in VCS plugins, " @@ -27599,27 +27698,25 @@ msgid "" "plug-n-play experience. A custom VCS plugin is supposed to inherit from " "[EditorVCSInterface] and override these virtual functions." msgstr "" -"由编辑器用来在编辑器中显示VCS提取的信息。这个API的实现包含在VCS附加组件中,这" -"些附加组件本质上是GDNative插件,需要放到项目文件夹中。这些VCS附加组件是脚本," -"它们(按需)附加到[code]EditorVCSInterface[/code]的对象实例中。下面列出的所有" -"功能,它们不是自己执行任务,而是调用VCS附加组件中内部定义的功能,以提供现写现" -"用的体验。" +"定义编辑器使用的 API,负责从底层 VCS 提取信息。这个 API 的实现包含在 VCS 插件" +"中,插件是继承了 [EditorVCSInterface] 的脚本,会(按需)附加到 " +"[EditorVCSInterface] 单例上。以下列出的所有虚函数都不会亲自执行操作,而是会去" +"调用 VCS 插件中内部覆盖的函数,带来即插即用的体验。自定义 VCS 插件应当继承 " +"[EditorVCSInterface] 并覆盖这些虚函数。" #: doc/classes/EditorVCSInterface.xml -#, fuzzy msgid "Checks out a [code]branch_name[/code] in the VCS." -msgstr "从列表中删除自动加载[code]name[/code]。" +msgstr "检出 VCS 中的 [code]branch_name[/code] 分支。" #: doc/classes/EditorVCSInterface.xml msgid "" "Commits the currently staged changes and applies the commit [code]msg[/code] " "to the resulting commit." -msgstr "" +msgstr "提交当前暂存的修改,并对提交应用提交信息 [code]msg[/code]。" #: doc/classes/EditorVCSInterface.xml -#, fuzzy msgid "Creates a new branch named [code]branch_name[/code] in the VCS." -msgstr "创建[code]class[/code]的实例。" +msgstr "在 VCS 中新建名为 [code]branch_name[/code] 的分支。" #: doc/classes/EditorVCSInterface.xml msgid "" @@ -27627,28 +27724,30 @@ msgid "" "points it to [code]remote_url[/code]. This can be both an HTTPS remote or an " "SSH remote." msgstr "" +"新建远程仓库目标,命名为 [code]remote_name[/code] 并指向 [code]remote_url[/" +"code]。既可以是 HTTPS 远程仓库,也可以是 SSH 远程仓库。" #: doc/classes/EditorVCSInterface.xml -#, fuzzy msgid "Discards the changes made in file present at [code]file_path[/code]." -msgstr "将场景保存为[code]path[/code]处的文件。" +msgstr "丢弃对位于 [code]file_path[/code] 的文件进行的修改。" #: doc/classes/EditorVCSInterface.xml msgid "" "Fetches new changes from the remote, but doesn't write changes to the " "current working directory. Equivalent to [code]git fetch[/code]." msgstr "" +"从远程仓库中抓取新修改,但不将修改写入当前工作目录。与 [code]git fetch[/" +"code] 等效。" #: doc/classes/EditorVCSInterface.xml msgid "" "Gets an instance of an [Array] of [String]s containing available branch " "names in the VCS." -msgstr "" +msgstr "获取 [String] 字符串的 [Array] 数组实例,包含在 VCS 中可用的分支名称。" #: doc/classes/EditorVCSInterface.xml -#, fuzzy msgid "Gets the current branch name defined in the VCS." -msgstr "返回在[FileSystemDock]中查看的当前路径。" +msgstr "获取 VCS 中定义的当前分支名称。" #: doc/classes/EditorVCSInterface.xml msgid "" @@ -27659,6 +27758,11 @@ msgid "" "file path, returns a file diff, and if it is a commit identifier, then " "returns a commit diff." msgstr "" +"返回 [Dictionary] 字典项的 [Array] 数组(请参阅 [method create_diff_file]、" +"[method create_diff_hunk]、[method create_diff_line]、[method " +"add_line_diffs_into_diff_hunk]、[method add_diff_hunks_into_diff_file]),每" +"一项都包含一个差异的信息。如果 [code]identifier[/code] 是文件路径,则返回文件" +"差异,如果是提交标识符,则返回提交差异。" #: doc/classes/EditorVCSInterface.xml msgid "" @@ -27666,30 +27770,37 @@ msgid "" "each containing a line diff between a file at [code]file_path[/code] and the " "[code]text[/code] which is passed in." msgstr "" +"返回 [Dictionary] 字典项的 [Array] 数组(请参阅 [method create_diff_hunk])," +"每一项都包含位于 [code]file_path[/code] 的文件与传入的 [code]text[/code] 之间" +"的单行差异。" #: doc/classes/EditorVCSInterface.xml msgid "" "Returns an [Array] of [Dictionary] items (see [method create_status_file]), " "each containing the status data of every modified file in the project folder." msgstr "" +"返回 [Dictionary] 字典项的 [Array] 数组(请参阅 [method " +"create_status_file]),每一项都包含项目文件夹中每个已修改的文件的状态数据。" #: doc/classes/EditorVCSInterface.xml msgid "" "Returns an [Array] of [Dictionary] items (see [method create_commit]), each " "containing the data for a past commit." msgstr "" +"返回 [Dictionary] 字典项的 [Array] 数组(请参阅 [method create_commit]),每" +"一项都包含一个过去提交的数据。" #: doc/classes/EditorVCSInterface.xml -#, fuzzy msgid "" "Returns an [Array] of [String]s, each containing the name of a remote " "configured in the VCS." -msgstr "返回包含所有节点名称的[PoolStringArray]。" +msgstr "" +"返回 [String] 字符串的 [Array] 数组,每一个都包含 VCS 中配置的一个远程仓库的" +"名称。" #: doc/classes/EditorVCSInterface.xml -#, fuzzy msgid "Returns the name of the underlying VCS provider." -msgstr "返回[code]idx[/code]处的节点名称。" +msgstr "返回底层 VCS 提供方的名称。" #: doc/classes/EditorVCSInterface.xml msgid "" @@ -27697,10 +27808,12 @@ msgid "" "not the plugin was successfully initialized. A VCS project is initialized at " "[code]project_path[/code]." msgstr "" +"从编辑器中调用时初始化该 VCS 插件。返回该插件是否成功初始化。会在 " +"[code]project_path[/code] 初始化 VCS 项目。" #: doc/classes/EditorVCSInterface.xml msgid "Pulls changes from the remote. This can give rise to merge conflicts." -msgstr "" +msgstr "从远程仓库拉取修改。可能带来合并冲突。" #: doc/classes/EditorVCSInterface.xml msgid "" @@ -27708,16 +27821,16 @@ msgid "" "is set to true, a force push will override the change history already " "present on the remote." msgstr "" +"将修改推送至远程仓库 [code]remote[/code]。另外可以将 [code]force[/code] 设为" +"真,会进行强制推送,覆盖远程仓库中现有的修改历史。" #: doc/classes/EditorVCSInterface.xml -#, fuzzy msgid "Remove a branch from the local VCS." -msgstr "从选择中删除一个节点。" +msgstr "从本地 VCS 中移除一个分支。" #: doc/classes/EditorVCSInterface.xml -#, fuzzy msgid "Remove a remote from the local VCS." -msgstr "从选择中删除一个节点。" +msgstr "从本地 VCS 中移除一个远程仓库。" #: doc/classes/EditorVCSInterface.xml msgid "" @@ -27727,35 +27840,44 @@ msgid "" "[code]ssh_private_key_path[/code], and [code]ssh_passphrase[/code] are only " "used during SSH authentication." msgstr "" +"在底层 VCS 中设置用户认证信息。用户名 [code]username[/code] 和密码 " +"[code]password[/code] 只会在进行 HTTPS 认证且没有在远程仓库 URL 中给出时使" +"用。SSH 公钥路径 [code]ssh_public_key_path[/code]、SSH 私钥路径 " +"[code]ssh_private_key_path[/code]、SSH 密码 [code]ssh_passphrase[/code] 只会" +"在进行 SSH 认证时使用。" #: doc/classes/EditorVCSInterface.xml msgid "" "Shuts down VCS plugin instance. Called when the user either closes the " "editor or shuts down the VCS plugin through the editor UI." msgstr "" +"关闭 VCS 插件实例。会在用户关闭编辑器或通过编辑器 UI 关闭该 VCS 插件时调用。" #: doc/classes/EditorVCSInterface.xml -#, fuzzy msgid "Stages the file present at [code]file_path[/code] to the staged area." -msgstr "将相机源 [code]feed[/code] 添加到摄像机服务器中。" +msgstr "将位于 [code]file_path[/code] 的文件暂存到暂存区。" #: doc/classes/EditorVCSInterface.xml msgid "" "Unstages the file present at [code]file_path[/code] from the staged area to " "the unstaged area." -msgstr "" +msgstr "将位于 [code]file_path[/code] 的文件从暂存区撤销到未暂存区。" #: doc/classes/EditorVCSInterface.xml msgid "" "Helper function to add an array of [code]diff_hunks[/code] into a " "[code]diff_file[/code]." msgstr "" +"将差异块数组 [code]diff_hunks[/code] 加入差异文件 [code]diff_file[/code] 的辅" +"助函数。" #: doc/classes/EditorVCSInterface.xml msgid "" "Helper function to add an array of [code]line_diffs[/code] into a " "[code]diff_hunk[/code]." msgstr "" +"将行差异数组 [code]diff_hunks[/code] 加入差异块 [code]diff_hunk[/code] 的辅助" +"函数。" #: doc/classes/EditorVCSInterface.xml msgid "" @@ -27767,12 +27889,17 @@ msgid "" "directly added to the commit item and displayed in the editor, and hence, it " "shall be a well-formatted, human-readable date string." msgstr "" +"创建提交 [Dictionary] 项目的辅助函数。[code]msg[/code] 为该提交的提交消息。" +"[code]author[/code] 为包含作者详情的人类可读的字符串,例如 VCS 中配置的邮箱和" +"名称。[code]id[/code] 为该提交的标识符,使用你的 VCS 为提交所提供的标识符的格" +"式。日期 [code]date[/code] 会被直接加入到该提交项目并被显示在编辑器中,因此," +"应当进行正确格式化,是人类可读的日期字符串。" #: doc/classes/EditorVCSInterface.xml msgid "" "Helper function to create a [code]Dictionary[/code] for storing old and new " "diff file paths." -msgstr "" +msgstr "创建用于保存新旧文件路径差异的 [code]Dictionary[/code] 的辅助函数。" #: doc/classes/EditorVCSInterface.xml msgid "" @@ -27782,70 +27909,76 @@ msgid "" "[code]old_lines[/code] is the number of lines in the old file. " "[code]new_lines[/code] is the number of lines in the new file." msgstr "" +"创建用于保存差异块数据的 [code]Dictionary[/code] 的辅助函数。" +"[code]old_start[/code] 是旧文件中的起始行号。[code]new_start[/code] 是新文件" +"中的起始行号。[code]old_lines[/code] 是旧文件中的行数。[code]new_lines[/" +"code] 是新文件中的行数。" #: doc/classes/EditorVCSInterface.xml +#, fuzzy msgid "" "Helper function to create a [code]Dictionary[/code] for storing a line diff. " "[code]new_line_no[/code] is the line number in the new file (can be " "[code]-1[/code] if the line is deleted). [code]old_line_no[/code] is the " "line number in the old file (can be [code]-1[/code] if the line is added). " -"[code]content[/code] is the diff text. [code]content[/code] is the diff " -"text. [code]status[/code] is a single character string which stores the line " -"origin." +"[code]content[/code] is the diff text. [code]status[/code] is a single " +"character string which stores the line origin." msgstr "" +"创建用于保存行差异的 [code]Dictionary[/code] 的辅助函数。[code]new_line_no[/" +"code] 是新文件中的行号(该行被删除时可为 [code]-1[/code])。" +"[code]old_line_no[/code] 是旧文件中的行号(该行为新增时可为 [code]-1[/" +"code])。[code]content[/code] 为差异文本。[code]content[/code] 为差异文本。" +"[code]status[/code] 为保存该行原点的单字符字符串。" #: doc/classes/EditorVCSInterface.xml msgid "" "Helper function to create a [code]Dictionary[/code] used by editor to read " "the status of a file." -msgstr "" +msgstr "创建编辑器用于读取文件状态的 [code]Dictionary[/code] 的辅助函数。" #: doc/classes/EditorVCSInterface.xml -#, fuzzy msgid "Pops up an error message in the edior." -msgstr "在编辑器中用于为属性分组。" +msgstr "在编辑器中弹出错误消息。" #: doc/classes/EditorVCSInterface.xml -#, fuzzy msgid "A new file has been added." -msgstr "添加新接口时触发。" +msgstr "加入了新文件。" #: doc/classes/EditorVCSInterface.xml msgid "An earlier added file has been modified." -msgstr "" +msgstr "先前加入的文件被修改。" #: doc/classes/EditorVCSInterface.xml msgid "An earlier added file has been renamed." -msgstr "" +msgstr "先前加入的文件被改名。" #: doc/classes/EditorVCSInterface.xml msgid "An earlier added file has been deleted." -msgstr "" +msgstr "先前加入的文件被删除。" #: doc/classes/EditorVCSInterface.xml msgid "An earlier added file has been typechanged." -msgstr "" +msgstr "先前加入的文件被修改类型。" #: doc/classes/EditorVCSInterface.xml msgid "A file is left unmerged." -msgstr "" +msgstr "文件未合并。" #: doc/classes/EditorVCSInterface.xml msgid "A commit is encountered from the commit area." -msgstr "" +msgstr "在提交区域遇到了提交。" #: doc/classes/EditorVCSInterface.xml -#, fuzzy msgid "A file is encountered from the staged area." -msgstr "状态:与服务器断开连接。" +msgstr "在暂存区域遇到了文件。" #: doc/classes/EditorVCSInterface.xml msgid "A file is encountered from the unstaged area." -msgstr "" +msgstr "在未暂存区域遇到了文件。" #: doc/classes/EncodedObjectAsID.xml msgid "Holds a reference to an [Object]'s instance ID." -msgstr "保存对[Object]实例ID的引用。" +msgstr "保存对 [Object] 实例 ID 的引用。" #: doc/classes/EncodedObjectAsID.xml msgid "" @@ -27872,7 +28005,7 @@ msgstr "" #: doc/classes/Engine.xml msgid "Access to engine properties." -msgstr "进入引擎属性。" +msgstr "访问引擎属性。" #: doc/classes/Engine.xml msgid "" @@ -27953,21 +28086,20 @@ msgid "" "[/codeblock]" msgstr "" "返回自引擎初始化以来的总帧数,在每个[b]空闲帧[/b]都会进行,无论渲染循环是否被" -"启用。参阅[method get_frames_drawn]和[method get_physics_frames]。\n" -"[method get_idle_frames]可以用来减少运行高消耗逻辑的次数,而不需要依靠" +"启用。参阅 [method get_frames_drawn] 和 [method get_physics_frames]。\n" +"[method get_idle_frames] 可以用来减少运行高消耗逻辑的次数,而不需要依靠 " "[Timer]。\n" "[codeblock]\n" "func _process(_delta):\n" " if Engine.get_idle_frames() % 2 == 0:\n" -" pass # Run expensive logic only once every 2 idle (render) frames " -"here.\n" +" pass # 将昂贵的逻辑放在这里,每 2 个空闲(渲染)帧运行一次。\n" "[/codeblock]" #: doc/classes/Engine.xml msgid "" "Returns Dictionary of licenses used by Godot and included third party " "components." -msgstr "返回Godot使用的Dictionary 字典列表,其中包括第三方组件。" +msgstr "返回 Godot 所使用的许可证的 Dictionary 字典列表,其中包括第三方组件。" #: doc/classes/Engine.xml msgid "Returns Godot license text." @@ -27990,14 +28122,14 @@ msgid "" " pass # Run expensive logic only once every 2 physics frames here.\n" "[/codeblock]" msgstr "" -"返回自引擎初始化以来通过的总帧数,该帧数在每个[b]物理帧[/b]上进行。参阅" +"返回自引擎初始化以来通过的总帧数,该帧数在每个[b]物理帧[/b]上进行。参阅 " "[method get_idle_frames]。\n" -"[method get_physics_frames]可以用来减少运行高消耗逻辑的次数,而不需要依靠" +"[method get_physics_frames] 可以用来减少运行高消耗逻辑的次数,而不需要依靠 " "[Timer]。\n" "[codeblock]\n" "func _physics_process(_delta):\n" " if Engine.get_physics_frames() % 2 == 0:\n" -" pass # Run expensive logic only once every 2 physics frames here.\n" +" pass # 将昂贵的逻辑放在这里,每 2 个物理帧运行一次。\n" "[/codeblock]" #: doc/classes/Engine.xml @@ -28047,27 +28179,28 @@ msgid "" "[/codeblock]" msgstr "" "在字典中返回当前的引擎版本信息。\n" -"[code]major[/code] - 将主要版本号作为一个int来保存。\n" -"[code]minor[/code] - 将小版本号作为一个int保存。\n" -"[code]patch[/code] - 将补丁版本号作为一个int来保存。\n" -"[code]hex[/code] - 保存以十六进制int编码的完整版本号,每个数字一个字节(2位)" -"(见下例)\n" -"[code]status[/code] - 以字符串形式保存状态 (例如 \"beta\", \"rc1\", " -"\"rc2\", ... \"stable\")\n" -"[code]build[/code] - 将build名称(例如 \"custom_build\")作为一个字符串保存。\n" +"[code]major[/code] - 将主版本号作为一个 int 来保存。\n" +"[code]minor[/code] - 将小版本号作为一个 int 来保存。\n" +"[code]patch[/code] - 将补丁版本号作为一个 int 来保存。\n" +"[code]hex[/code] - 保存以十六进制 int 编码的完整版本号,每个(2 位)数占一个" +"字节(见下例)\n" +"[code]status[/code] - 以字符串形式保存状态(例如 " +"\"beta\"、\"rc1\"、\"rc2\"、……\"stable\")\n" +"[code]build[/code] - 将 build 名称(例如 \"custom_build\")作为一个字符串保" +"存。\n" "[code]hash[/code] - 以字符串形式保存完整的 Git 提交哈希值。\n" -"[code]year[/code] - 将版本发布的年份作为一个int值来保存。\n" +"[code]year[/code] - 将版本发布的年份作为一个 int 值来保存。\n" "[code]string[/code] - [code]major[/code] + [code]minor[/code] + [code]patch[/" "code] + [code]status[/code] + [code]build[/code]在一个字符串中。\n" -"[code]十六进制[/code]值的编码如下,从左到右:一个字节代表主要版本,一个字节代" -"表次要版本,一个字节代表补丁版本。例如,\"3.1.12 \"就是[code]0x03010C[/" -"code]。[b]注意:[/b]内部还是一个int,打印出来会给你它的十进制表示法,意义不是" -"特别大。使用十六进制的字数,方便从代码中进行版本比较。\n" +"[code]hex[/code] 十六进制值的编码如下,从左到右:一个字节代表主要版本,一个字" +"节代表次要版本,一个字节代表补丁版本。例如,\"3.1.12\" 就是 [code]0x03010C[/" +"code]。[b]注意:[/b]内部还是一个 int,打印出来会给你它的十进制表示法,意义不" +"是特别大。使用十六进制的字数,方便从代码中进行版本比较。\n" "[codeblock]\n" "if Engine.get_version_info().hex >= 0x030200:\n" -" # Do things specific to version 3.2 or later\n" +" # 针对 3.2 及以后版本进行操作\n" "else:\n" -" # Do things specific to versions before 3.2\n" +" # 针对 3.2 之前版本进行操作\n" "[/codeblock]" #: doc/classes/Engine.xml @@ -28147,9 +28280,9 @@ msgstr "" "common/physics_fps]。\n" "[b]注意:[/b]每个渲染帧最多只能模拟 8 次物理迭代。如果为了追赶渲染,需要在每" "个渲染帧中模拟多于 8 次物理迭代,游戏看上去会是降速的(即便在物理计算中始终使" -"用 [code]delta[/code])。因此,建议不要将 [member physics/common/" -"physics_fps] 设为大于 240 的值。否则,渲染帧率低于 30 FPS 时游戏就会低速运" -"行。" +"用 [code]delta[/code])。因此,建议不要将 [member Engine." +"iterations_per_second] 设为大于 240 的值。否则,渲染帧率低于 30 FPS 时游戏就" +"会低速运行。" #: doc/classes/Engine.xml msgid "" @@ -28168,8 +28301,8 @@ msgstr "" "游戏,因为时钟的同步性很重要。较高的值会导致游戏中的时钟和真实时钟之间的偏差" "较大,但可以平滑帧速率的抖动。默认值0.5对大多数人来说应该是良好的;超过2的值" "可能导致游戏对掉帧的反应有明显的延迟,因此不推荐使用。\n" -"[b]注意:[/b]为了获得最佳效果,当使用自定义物理插值这种解决方案时,应通过将" -"[member physics_jitter_fix]设置为[code]0[/code]来禁用物理抖动修复。" +"[b]注意:[/b]为了获得最佳效果,当使用自定义物理插值这种解决方案时,应通过将 " +"[member physics_jitter_fix] 设置为 [code]0[/code] 来禁用物理抖动修复。" #: doc/classes/Engine.xml msgid "" @@ -28218,6 +28351,7 @@ msgid "" msgstr "用于定义多个渲染选项的环境节点(如 [WorldEnvironment])的资源。" #: doc/classes/Environment.xml +#, fuzzy msgid "" "Resource for environment nodes (like [WorldEnvironment]) that define " "multiple environment operations (such as background [Sky] or [Color], " @@ -28227,11 +28361,18 @@ msgid "" "- Glow\n" "- Tonemap (Auto Exposure)\n" "- Adjustments\n" -"These effects will only apply when the [Viewport]'s intended usage is \"3D\" " -"or \"3D Without Effects\". This can be configured for the root Viewport with " -"[member ProjectSettings.rendering/quality/intended_usage/" -"framebuffer_allocation], or for specific Viewports via the [member Viewport." -"usage] property." +"If the target [Viewport] is set to \"2D Without Sampling\", all post-" +"processing effects will be unavailable. With \"3D Without Effects\", the " +"following options will be unavailable:\n" +"- Ssao\n" +"- Ss Reflections\n" +"This can be configured for the root Viewport with [member ProjectSettings." +"rendering/quality/intended_usage/framebuffer_allocation], or for specific " +"Viewports via the [member Viewport.usage] property.\n" +"Note that [member ProjectSettings.rendering/quality/intended_usage/" +"framebuffer_allocation] has a mobile platform override to use \"3D Without " +"Effects\" by default. It improves the performance on mobile devices, but at " +"the same time affects the screen display on mobile devices." msgstr "" "环境节点(如 [WorldEnvironment])的资源,这些节点定义了多个环境操作(如背景 " "[Sky] 或 [Color]、环境光、雾、景深……)。这些参数会影响场景的最终渲染。这些操" @@ -28246,17 +28387,18 @@ msgstr "" "usage] 调整。" #: doc/classes/Environment.xml doc/classes/WorldEnvironment.xml -msgid "$DOCS_URL/tutorials/3d/environment_and_post_processing.html" +#, fuzzy +msgid "Environment and post-processing" msgstr "$DOCS_URL/tutorials/3d/environment_and_post_processing.html" #: doc/classes/Environment.xml -msgid "$DOCS_URL/tutorials/3d/high_dynamic_range.html" -msgstr "$DOCS_URL/tutorials/3d/high_dynamic_range.html" +msgid "Light transport in game engines" +msgstr "" #: doc/classes/Environment.xml doc/classes/Material.xml doc/classes/Mesh.xml #: doc/classes/MeshInstance.xml doc/classes/WorldEnvironment.xml -msgid "https://godotengine.org/asset-library/asset/123" -msgstr "https://godotengine.org/asset-library/asset/123" +msgid "3D Material Testers Demo" +msgstr "" #: doc/classes/Environment.xml msgid "" @@ -28330,13 +28472,16 @@ msgid "" msgstr "环境光的能量。值越高,光照越强。" #: doc/classes/Environment.xml +#, fuzzy msgid "" -"Defines the amount of light that the sky brings on the scene. A value of 0 " -"means that the sky's light emission has no effect on the scene illumination, " -"thus all ambient illumination is provided by the ambient light. On the " -"contrary, a value of 1 means that all the light that affects the scene is " -"provided by the sky, thus the ambient light parameter has no effect on the " -"scene." +"Defines the amount of light that the sky brings on the scene. A value of " +"[code]0.0[/code] means that the sky's light emission has no effect on the " +"scene illumination, thus all ambient illumination is provided by the ambient " +"light. On the contrary, a value of [code]1.0[/code] means that [i]all[/i] " +"the light that affects the scene is provided by the sky, thus the ambient " +"light parameter has no effect on the scene.\n" +"[b]Note:[/b] [member ambient_light_sky_contribution] is internally clamped " +"between [code]0.0[/code] and [code]1.0[/code] (inclusive)." msgstr "" "定义天空给场景带来的光照量。值为 0 表示天空的发光对场景照明没有影响,因此所有" "的环境照明都由环境光提供。相反,值为 1 表示所有影响场景的光线都由天空提供,因" @@ -29155,6 +29300,10 @@ msgstr "" "flush] 来解决这个问题。" #: doc/classes/File.xml +msgid "File system" +msgstr "" + +#: doc/classes/File.xml msgid "" "Closes the currently opened file and prevents subsequent read/write " "operations. Use [method flush] to persist the data to disk without closing " @@ -29622,10 +29771,10 @@ msgid "" "the file. Therefore, you must set [member endian_swap] [i]after[/i] opening " "the file, not before." msgstr "" -"为 [code]true[/code] 时文件以大端[url=https://zh.wikipedia.org/wiki/%E5%AD" -"%97%E8%8A%82%E5%BA%8F]字节序[/url]读取。为 [code]false[/code] 时文件以小端字" -"节序读取。如果不确定,请将其保留为 [code]false[/code],因为大多数文件都是以小" -"端字节序编写的。\n" +"为 [code]true[/code] 时文件以大端[url=https://zh.wikipedia.org/wiki/" +"%E5%AD%97%E8%8A%82%E5%BA%8F]字节序[/url]读取。为 [code]false[/code] 时文件以" +"小端字节序读取。如果不确定,请将其保留为 [code]false[/code],因为大多数文件都" +"是以小端字节序编写的。\n" "[b]注意:[/b][member endian_swap] 只是文件格式,与 CPU 类型无关。 CPU 字节序" "不会影响写入文件的默认字节序。\n" "[b]注意:[/b]每当您打开文件时,它总是重置为 [code]false[/code]。因此,必须在" @@ -29706,6 +29855,12 @@ msgid "" "Example filters: [code]\"*.png ; PNG Images\"[/code], [code]\"project." "godot ; Godot Project\"[/code]." msgstr "" +"将过滤器 [code]filter[/code] 加入过滤器列表,用于限制可选择的文件。\n" +"[code]filter[/code] 应该是 [code]\"文件名.扩展名 ; 描述\"[/code] 的形式,文件" +"名和扩展名都可以是 [code]*[/code],匹配任意字符串。不允许过滤器以 [code].[/" +"code] 开头(即空文件名)。\n" +"示例过滤器:[code]\"*.png ; PNG 图片\"[/code], [code]\"project.godot ; Godot " +"项目\"[/code]。" #: doc/classes/FileDialog.xml msgid "Clear all the added filters in the dialog." @@ -29768,7 +29923,6 @@ msgid "The currently selected file path of the file dialog." msgstr "当前选择的文件对话框的文件路径。" #: doc/classes/FileDialog.xml -#, fuzzy msgid "" "The available file type filters. For example, this shows only [code].png[/" "code] and [code].gd[/code] files: [code]set_filters(PoolStringArray([\"*." @@ -29778,7 +29932,9 @@ msgid "" msgstr "" "可用的文件类型过滤器。例如,这仅显示 [code].png[/code] 和 [code].gd[/code] 文" "件: [code]set_filters(PoolStringArray([\"*.png ; PNG Images\", \"*.gd ; " -"GDScript Files\" ]))[/code]。" +"GDScript Files\" ]))[/code]。单个过滤器中也可以指定多个文件类型。选中 " +"[code]\"*.png, *.jpg, *.jpeg ; Supported Images\"[/code] 后会 PNG 和 JPEG 文" +"件都会显示。" #: doc/classes/FileDialog.xml msgid "" @@ -29920,16 +30076,18 @@ msgstr "" "code]。" #: doc/classes/float.xml -msgid "https://en.wikipedia.org/wiki/Double-precision_floating-point_format" +#, fuzzy +msgid "Wikipedia: Double-precision floating-point format" msgstr "" -"https://zh.wikipedia.org/zh-cn/%E9%9B%99%E7%B2%BE%E5%BA%A6%E6%B5%AE%E9%BB%9E" -"%E6%95%B8" +"https://zh.wikipedia.org/zh-cn/" +"%E9%9B%99%E7%B2%BE%E5%BA%A6%E6%B5%AE%E9%BB%9E%E6%95%B8" #: doc/classes/float.xml -msgid "https://en.wikipedia.org/wiki/Single-precision_floating-point_format" +#, fuzzy +msgid "Wikipedia: Single-precision floating-point format" msgstr "" -"https://zh.wikipedia.org/zh-cn/%E5%96%AE%E7%B2%BE%E5%BA%A6%E6%B5%AE%E9%BB%9E" -"%E6%95%B8" +"https://zh.wikipedia.org/zh-cn/" +"%E5%96%AE%E7%B2%BE%E5%BA%A6%E6%B5%AE%E9%BB%9E%E6%95%B8" #: doc/classes/float.xml msgid "" @@ -29963,6 +30121,24 @@ msgstr "" "解析结果,因此调用 [code]float(\"1a3\")[/code] 将返回1,而调用 " "[code]float(\"1e3a2\")[/code] 将返回 1000.0。" +#: doc/classes/FlowContainer.xml +#, fuzzy +msgid "Base class for flow containers." +msgstr "盒式容器的基类。" + +#: doc/classes/FlowContainer.xml +msgid "" +"Arranges child [Control] nodes vertically or horizontally in a left-to-right " +"or top-to-bottom flow.\n" +"A line is filled with [Control] nodes until no more fit on the same line, " +"similar to text in an autowrapped label." +msgstr "" + +#: doc/classes/FlowContainer.xml +#, fuzzy +msgid "Returns the current line count." +msgstr "返回当前的滚动位置。" + #: doc/classes/Font.xml msgid "Internationalized font and text drawing support." msgstr "国际化的字体和文本绘制支持。" @@ -30142,14 +30318,6 @@ msgstr "" "个平台和架构进行编译。" #: modules/gdnative/doc_classes/GDNativeLibrary.xml -msgid "$DOCS_URL/tutorials/scripting/gdnative/gdnative-c-example.html" -msgstr "$DOCS_URL/tutorials/scripting/gdnative/gdnative-c-example.html" - -#: modules/gdnative/doc_classes/GDNativeLibrary.xml -msgid "$DOCS_URL/tutorials/scripting/gdnative/gdnative-cpp-example.html" -msgstr "$DOCS_URL/tutorials/scripting/gdnative/gdnative-cpp-example.html" - -#: modules/gdnative/doc_classes/GDNativeLibrary.xml msgid "" "Returns paths to all dependency libraries for the current platform and " "architecture." @@ -30240,10 +30408,6 @@ msgstr "" "[method Object.set_script] 会扩展该对象。" #: modules/gdscript/doc_classes/GDScript.xml -msgid "$DOCS_URL/tutorials/scripting/gdscript/index.html" -msgstr "$DOCS_URL/tutorials/scripting/gdscript/index.html" - -#: modules/gdscript/doc_classes/GDScript.xml msgid "Returns byte code for the script source code." msgstr "返回脚本源代码的字节(byte)码。" @@ -30337,7 +30501,7 @@ msgstr "" #: doc/classes/Generic6DOFJoint.xml msgid "If [code]true[/code], rotation across the X axis is limited." -msgstr "如果[code]true[/code],跨越X轴的旋转受到限制。" +msgstr "如果为 [code]true[/code],则跨越 X 轴的旋转将受到限制。" #: doc/classes/Generic6DOFJoint.xml msgid "" @@ -30382,7 +30546,7 @@ msgstr "Y轴上的旋转阻尼量。值越低,旋转的阻尼就越大。" #: doc/classes/Generic6DOFJoint.xml msgid "If [code]true[/code], rotation across the Y axis is limited." -msgstr "如果[code]true[/code],跨越Y轴的旋转受到限制。" +msgstr "如果为 [code]true[/code],则跨越 Y 轴的旋转将受到限制。" #: doc/classes/Generic6DOFJoint.xml msgid "" @@ -30427,7 +30591,7 @@ msgstr "跨越Z轴的旋转阻尼量。值越低,阻尼就越多。" #: doc/classes/Generic6DOFJoint.xml msgid "If [code]true[/code], rotation across the Z axis is limited." -msgstr "如果[code]true[/code],跨越Z轴的旋转受到限制。" +msgstr "如果为 [code]true[/code],则跨越 Z 轴的旋转将受到限制。" #: doc/classes/Generic6DOFJoint.xml msgid "" @@ -30466,7 +30630,7 @@ msgstr "正方向的最小旋转,并绕Z轴旋转。" #: doc/classes/Generic6DOFJoint.xml msgid "If [code]true[/code], a rotating motor at the X axis is enabled." -msgstr "如果为[code]true[/code],X轴的旋转电机被启用。" +msgstr "如果为 [code]true[/code],则启用 X 轴的旋转马达。" #: doc/classes/Generic6DOFJoint.xml msgid "Maximum acceleration for the motor at the X axis." @@ -30478,7 +30642,7 @@ msgstr "X轴上电机的目标速度。" #: doc/classes/Generic6DOFJoint.xml msgid "If [code]true[/code], a rotating motor at the Y axis is enabled." -msgstr "如果[code]true[/code],启用Y轴上的旋转电机。" +msgstr "如果为 [code]true[/code],则启用 Y 轴的旋转马达。" #: doc/classes/Generic6DOFJoint.xml msgid "Maximum acceleration for the motor at the Y axis." @@ -30490,7 +30654,7 @@ msgstr "电机在Y轴的目标速度。" #: doc/classes/Generic6DOFJoint.xml msgid "If [code]true[/code], a rotating motor at the Z axis is enabled." -msgstr "如果[code]true[/code],则启用Z轴的旋转电机。" +msgstr "如果为 [code]true[/code],则启用 Z 轴的旋转马达。" #: doc/classes/Generic6DOFJoint.xml msgid "Maximum acceleration for the motor at the Z axis." @@ -30506,7 +30670,7 @@ msgstr "发生在X运动的阻尼量。" #: doc/classes/Generic6DOFJoint.xml msgid "If [code]true[/code], the linear motion across the X axis is limited." -msgstr "如果[code]true[/code],整个X轴的线性运动受到限制。" +msgstr "如果为 [code]true[/code],则跨越 X 轴的线性运动将受到限制。" #: doc/classes/Generic6DOFJoint.xml msgid "The minimum difference between the pivot points' X axis." @@ -30534,7 +30698,7 @@ msgstr "发生在Y运动的阻尼量。" #: doc/classes/Generic6DOFJoint.xml msgid "If [code]true[/code], the linear motion across the Y axis is limited." -msgstr "如果[code]true[/code],限制跨越Y轴的线性运动。" +msgstr "如果为 [code]true[/code],则跨越 Y 轴的线性运动将受到限制。" #: doc/classes/Generic6DOFJoint.xml msgid "The minimum difference between the pivot points' Y axis." @@ -30562,7 +30726,7 @@ msgstr "发生在Z运动的阻尼量。" #: doc/classes/Generic6DOFJoint.xml msgid "If [code]true[/code], the linear motion across the Z axis is limited." -msgstr "如果[code]true[/code],跨Z轴的线性运动受到限制。" +msgstr "如果为 [code]true[/code],则跨越 Z 轴的线性运动将受到限制。" #: doc/classes/Generic6DOFJoint.xml msgid "The minimum difference between the pivot points' Z axis." @@ -30589,7 +30753,7 @@ msgid "" "If [code]true[/code], then there is a linear motor on the X axis. It will " "attempt to reach the target velocity while staying within the force limits." msgstr "" -"如果[code]true[/code],那么X轴上有一个线性马达。它将试图达到目标速度,同时保" +"如果为 [code]true[/code],则 X 轴上存在线性马达。它将试图达到目标速度,同时保" "持在力的限度内。" #: doc/classes/Generic6DOFJoint.xml @@ -30607,7 +30771,7 @@ msgid "" "If [code]true[/code], then there is a linear motor on the Y axis. It will " "attempt to reach the target velocity while staying within the force limits." msgstr "" -"如果[code]true[/code],那么Y轴上有一个线性马达。它将尝试达到目标速度,同时保" +"如果为 [code]true[/code],则 Y 轴上存在线性马达。它将试图达到目标速度,同时保" "持在力的限度内。" #: doc/classes/Generic6DOFJoint.xml @@ -30625,8 +30789,8 @@ msgid "" "If [code]true[/code], then there is a linear motor on the Z axis. It will " "attempt to reach the target velocity while staying within the force limits." msgstr "" -"如果[code]true[/code],那么在Z轴上有一个线性马达。它将试图达到目标速度,同时" -"保持在力的限度内。" +"如果为 [code]true[/code],则 Z 轴上存在线性马达。它将试图达到目标速度,同时保" +"持在力的限度内。" #: doc/classes/Generic6DOFJoint.xml msgid "" @@ -30732,11 +30896,11 @@ msgstr "如果启用,在给定的限度内可以进行旋转运动。" #: doc/classes/Generic6DOFJoint.xml msgid "If enabled, there is a rotational motor across these axes." -msgstr "如果启用,就有一个跨这些轴的旋转马达。" +msgstr "如果启用,则存在跨这些轴的旋转马达。" #: doc/classes/Generic6DOFJoint.xml msgid "If enabled, there is a linear motor across these axes." -msgstr "如果启用,有一个线性马达横跨这些轴。" +msgstr "如果启用,则存在跨这些轴的线性马达。" #: doc/classes/Generic6DOFJoint.xml doc/classes/HingeJoint.xml msgid "Represents the size of the [enum Flag] enum." @@ -31511,8 +31675,8 @@ msgstr "" "发光。只有发射型的[SpatialMaterial]可以在[GIProbe]中发射光线。" #: doc/classes/GIProbe.xml -msgid "$DOCS_URL/tutorials/3d/gi_probes.html" -msgstr "$DOCS_URL/tutorials/3d/gi_probes.html" +msgid "GI probes" +msgstr "" #: doc/classes/GIProbe.xml msgid "" @@ -31868,12 +32032,10 @@ msgid "The number of color samples that will be obtained from the [Gradient]." msgstr "将从[Gradient]中获得的颜色样本的数量。" #: doc/classes/GradientTexture2D.xml -#, fuzzy msgid "Gradient-filled 2D texture." -msgstr "渐变填充纹理。" +msgstr "使用渐变填充的 2D 纹理。" #: doc/classes/GradientTexture2D.xml -#, fuzzy msgid "" "The texture uses a [Gradient] to fill the texture data in 2D space. The " "gradient is filled according to the specified [member fill] and [member " @@ -31882,9 +32044,10 @@ msgid "" "interpolation of samples obtained from the gradient at fixed steps (see " "[member width] and [member height])." msgstr "" -"GradientTexture使用[Gradient]来填充纹理数据。渐变将使用从中获得的颜色从左到右" -"填充。这意味着纹理不一定代表渐变的精确副本,而是以固定的步长从渐变中获得的样" -"本的插值,见[member width]。" +"该纹理使用 [Gradient] 渐变来填充 2D 空间纹理数据。渐变会根据 [member fill] " +"和 [member repeat] 类型,使用从渐变中获取的颜色进行填充。该纹理未必精确表示该" +"渐变,可以是从该渐变上按照固定步长进行采样后再进行插值(请参阅 [member " +"width] 和 [member height])。" #: doc/classes/GradientTexture2D.xml msgid "" @@ -31892,27 +32055,27 @@ msgid "" "by interpolating colors starting from [member fill_from] to [member fill_to] " "offsets." msgstr "" +"渐变填充类型,是 [enum Fill] 中的某个值。该纹理使用的是位于 [member " +"fill_from] 到 [member fill_to] 偏移量的颜色,对它们进行插值填充。" #: doc/classes/GradientTexture2D.xml msgid "" "The initial offset used to fill the texture specified in UV coordinates." -msgstr "" +msgstr "用于填充纹理的初始偏移量,使用 UV 坐标。" #: doc/classes/GradientTexture2D.xml msgid "The final offset used to fill the texture specified in UV coordinates." -msgstr "" +msgstr "用于填充纹理的结束偏移量,使用 UV 坐标。" #: doc/classes/GradientTexture2D.xml -#, fuzzy msgid "The [Gradient] used to fill the texture." -msgstr "将用于填充纹理的[Gradient]。" +msgstr "用于填充纹理的 [Gradient]。" #: doc/classes/GradientTexture2D.xml -#, fuzzy msgid "" "The number of vertical color samples that will be obtained from the " "[Gradient], which also represents the texture's height." -msgstr "将从[Gradient]中获得的颜色样本的数量。" +msgstr "从 [Gradient] 上获取的垂直颜色采样数,也表示纹理的高度。" #: doc/classes/GradientTexture2D.xml msgid "" @@ -31920,6 +32083,8 @@ msgid "" "filled starting from [member fill_from] to [member fill_to] offsets by " "default, but the gradient fill can be repeated to cover the entire texture." msgstr "" +"渐变重复类型,是 [enum Repeat] 中的某个值。该纹理默认从偏移量 [member " +"fill_from] 到 [member fill_to] 填充,但渐变填充可以重复,从而覆盖整个纹理。" #: doc/classes/GradientTexture2D.xml msgid "" @@ -31929,39 +32094,47 @@ msgid "" "code], the generated texture will use low dynamic range; overbright colors " "will be clamped ([constant Image.FORMAT_RGBA8] format)." msgstr "" +"如果为 [code]true[/code],则生成的纹理会支持高动态范围([constant Image." +"FORMAT_RGBAF] 格式)。可以在 [member Environment.glow_enabled] 为 " +"[code]true[/code] 时实现发光效果。如果为 [code]false[/code],则生成的纹理会使" +"用低动态范围;过亮的颜色会被钳制([constant Image.FORMAT_RGBA8] 格式)。" #: doc/classes/GradientTexture2D.xml -#, fuzzy msgid "" "The number of horizontal color samples that will be obtained from the " "[Gradient], which also represents the texture's width." -msgstr "将从[Gradient]中获得的颜色样本的数量。" +msgstr "从 [Gradient] 上获取的水平颜色采样数,也表示纹理的宽度。" #: doc/classes/GradientTexture2D.xml msgid "The colors are linearly interpolated in a straight line." -msgstr "" +msgstr "颜色按照直线进行线性插值。" #: doc/classes/GradientTexture2D.xml msgid "The colors are linearly interpolated in a circular pattern." -msgstr "" +msgstr "颜色按照圆形模式进行线性插值。" #: doc/classes/GradientTexture2D.xml msgid "" "The gradient fill is restricted to the range defined by [member fill_from] " "to [member fill_to] offsets." msgstr "" +"渐变填充限制在由 [member fill_from] 到 [member fill_to] 的偏移量范围内。" #: doc/classes/GradientTexture2D.xml msgid "" "The texture is filled starting from [member fill_from] to [member fill_to] " "offsets, repeating the same pattern in both directions." msgstr "" +"纹理的填充从偏移量 [member fill_from] 开始到 [member fill_to],两个方向都按照" +"相同的模式重复。" #: doc/classes/GradientTexture2D.xml msgid "" "The texture is filled starting from [member fill_from] to [member fill_to] " "offsets, mirroring the pattern in both directions." msgstr "" +"纹理的填充从偏移量 [member fill_from] 开始到 [member fill_to],两个方向都按照" +"相同的模式镜像重复。" #: doc/classes/GraphEdit.xml msgid "" @@ -32666,11 +32839,13 @@ msgstr "" "在[GridContainer]中的列的数量。如果修改,[GridContainer]会重新排列其Control派" "生的子代,以适应新的布局。" -#: doc/classes/GridContainer.xml +#: doc/classes/GridContainer.xml doc/classes/HFlowContainer.xml +#: doc/classes/VFlowContainer.xml msgid "The horizontal separation of children nodes." msgstr "子节点的水平分隔量。" -#: doc/classes/GridContainer.xml +#: doc/classes/GridContainer.xml doc/classes/HFlowContainer.xml +#: doc/classes/VFlowContainer.xml msgid "The vertical separation of children nodes." msgstr "子节点的垂直分隔量。" @@ -32708,8 +32883,8 @@ msgstr "" "GridMap 就都不会被相关的灯光照亮。" #: modules/gridmap/doc_classes/GridMap.xml -msgid "$DOCS_URL/tutorials/3d/using_gridmaps.html" -msgstr "$DOCS_URL/tutorials/3d/using_gridmaps.html" +msgid "Using gridmaps" +msgstr "" #: modules/gridmap/doc_classes/GridMap.xml msgid "Clear all cells." @@ -32761,6 +32936,13 @@ msgid "" msgstr "返回一个包含网格中非空单元格坐标的 [Vector3] 数组。" #: modules/gridmap/doc_classes/GridMap.xml +#, fuzzy +msgid "" +"Returns an array of all cells with the given item index specified in " +"[code]item[/code]." +msgstr "返回所有具有[code]id[/code]中指定的图块索引的单元格的数组。" + +#: modules/gridmap/doc_classes/GridMap.xml msgid "" "Returns the position of a grid cell in the GridMap's local coordinate space." msgstr "返回一个网格单元在 GridMap 本地坐标空间中的位置。" @@ -32996,11 +33178,11 @@ msgstr "哈希算法:SHA-256。" #: doc/classes/HBoxContainer.xml msgid "Horizontal box container." -msgstr "水平盒容器。" +msgstr "水平盒式容器。" #: doc/classes/HBoxContainer.xml msgid "Horizontal box container. See [BoxContainer]." -msgstr "水平盒容器。请参阅 [BoxContainer]。" +msgstr "水平盒式容器。请参阅 [BoxContainer]。" #: doc/classes/HBoxContainer.xml msgid "The horizontal space between the [HBoxContainer]'s elements." @@ -33034,6 +33216,16 @@ msgid "" "map_data]." msgstr "高度图数据的宽度。更改此设置将调整 [member map_data] 的大小。" +#: doc/classes/HFlowContainer.xml +#, fuzzy +msgid "Horizontal flow container." +msgstr "水平盒式容器。" + +#: doc/classes/HFlowContainer.xml +#, fuzzy +msgid "Horizontal version of [FlowContainer]." +msgstr "水平拆分容器。" + #: doc/classes/HingeJoint.xml msgid "A hinge between two 3D PhysicsBodies." msgstr "两个 3D PhysicsBody 之间的铰链。" @@ -33454,15 +33646,6 @@ msgstr "" "是有效的,就可以接受。如果这是个问题,你可能想使用自动管理的有效期短的证书。" #: doc/classes/HTTPClient.xml -msgid "$DOCS_URL/tutorials/networking/http_client_class.html" -msgstr "$DOCS_URL/tutorials/networking/http_client_class.html" - -#: doc/classes/HTTPClient.xml doc/classes/HTTPRequest.xml -#: doc/classes/StreamPeerSSL.xml -msgid "$DOCS_URL/tutorials/networking/ssl_certificates.html" -msgstr "$DOCS_URL/tutorials/networking/ssl_certificates.html" - -#: doc/classes/HTTPClient.xml msgid "Closes the current connection, allowing reuse of this [HTTPClient]." msgstr "关闭当前连接,允许重用此[HTTPClient]。" @@ -34534,10 +34717,6 @@ msgstr "" "[/codeblock]" #: doc/classes/HTTPRequest.xml -msgid "$DOCS_URL/tutorials/networking/http_request_class.html" -msgstr "$DOCS_URL/tutorials/networking/http_request_class.html" - -#: doc/classes/HTTPRequest.xml msgid "Cancels the current request." msgstr "取消当前请求。" @@ -34718,8 +34897,8 @@ msgstr "" "能无法导入。" #: doc/classes/Image.xml doc/classes/ImageTexture.xml -msgid "$DOCS_URL/tutorials/assets_pipeline/importing_images.html" -msgstr "$DOCS_URL/tutorials/assets_pipeline/importing_images.html" +msgid "Importing images" +msgstr "" #: doc/classes/Image.xml msgid "" @@ -34998,9 +35177,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位像素的图像。" +"从 BMP 文件的二进制内容中加载图像。\n" +"[b]注意:[/b]Godot 的 BMP 模块不支持 16 位像素的图像。只支持 1 位、4 位、8 " +"位、24 位和 32 位像素的图像。" #: doc/classes/Image.xml msgid "Loads an image from the binary contents of a JPEG file." @@ -35153,7 +35332,7 @@ msgstr "解锁数据并防止更改。" msgid "" "Holds all the image's color data in a given format. See [enum Format] " "constants." -msgstr "以给定的格式保存图像的所有颜色数据。参阅[enum Format]常量。" +msgstr "以给定的格式保存图像的所有颜色数据。参阅 [enum Format] 常量。" #: doc/classes/Image.xml msgid "The maximal width allowed for [Image] resources." @@ -35221,8 +35400,8 @@ 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]GL_RGB5_A1[/code],其中 RGB 每个分量的深度为 5 位,Alpha" -"为 1 位。" +"OpenGL 纹理格式 [code]GL_RGB5_A1[/code],其中 RGB 每个分量的深度为 5 位," +"Alpha 为 1 位。" #: doc/classes/Image.xml msgid "" @@ -35259,7 +35438,7 @@ msgid "" "OpenGL texture format [code]GL_R32F[/code] where there's one component, a 16-" "bit \"half-precision\" floating-point value." msgstr "" -"OpenGL纹理格式[code]GL_R32F[/code],其中有一个分量,即16位 \"半精度 \"浮点" +"OpenGL 纹理格式 [code]GL_R32F[/code],其中有一个分量,即 16 位“半精度”浮点" "值。" #: doc/classes/Image.xml @@ -35267,32 +35446,32 @@ msgid "" "OpenGL texture format [code]GL_RG32F[/code] where there are two components, " "each a 16-bit \"half-precision\" floating-point value." msgstr "" -"OpenGL纹理格式[code]GL_RG32F[/code],其中有两个部分,每个部分都是16位 \"半精" -"度 \"浮点值。" +"OpenGL 纹理格式 [code]GL_RG32F[/code],其中有两个部分,每个部分都是 16 位“半" +"精度”浮点值。" #: doc/classes/Image.xml msgid "" "OpenGL texture format [code]GL_RGB32F[/code] where there are three " "components, each a 16-bit \"half-precision\" floating-point value." msgstr "" -"OpenGL纹理格式[code]GL_RGB32F[/code],其中有三个部分,每个部分都是16位 \"半精" -"度 \"浮点值。" +"OpenGL 纹理格式 [code]GL_RGB32F[/code],其中有三个部分,每个部分都是 16 位“半" +"精度”浮点值。" #: doc/classes/Image.xml msgid "" "OpenGL texture format [code]GL_RGBA32F[/code] where there are four " "components, each a 16-bit \"half-precision\" floating-point value." msgstr "" -"OpenGL纹理格式[code]GL_RGBA32F[/code],其中有四个部分,每个都是16位\"半精度 " -"\"浮点值。" +"OpenGL 纹理格式 [code]GL_RGBA32F[/code],其中有四个部分,每个都是 16 位“半精" +"度”浮点值。" #: doc/classes/Image.xml msgid "" "A special OpenGL texture format where the three color components have 9 bits " "of precision and all three share a single 5-bit exponent." msgstr "" -"一种特殊的OpenGL纹理格式,其中三个颜色成分的精度为9位,所有三个成分共享一个5" -"比特位的指数。" +"一种特殊的 OpenGL 纹理格式,其中三个颜色成分的精度为 9 位,所有三个成分共享一" +"个 5 比特位的指数。" #: doc/classes/Image.xml msgid "" @@ -35433,9 +35612,10 @@ msgid "" "url], also referred to as \"ETC1\", and is part of the OpenGL ES graphics " "standard. This format cannot store an alpha channel." msgstr "" -"[url=https://zh.wikipedia.org/zh-cn/%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA" -"%B9%E7%90%86%E5%8E%8B%E7%BC%A9#ETC1]爱立信纹理压缩格式 1[/url],又称“ETC1”," -"是 OpenGL ES 图形标准的一部分。这种格式无法存储 Alpha 通道。" +"[url=https://zh.wikipedia.org/zh-cn/" +"%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA%B9%E7%90%86%E5%8E%8B%E7%BC%A9#ETC1]爱立信纹" +"理压缩格式 1[/url],又称“ETC1”,是 OpenGL ES 图形标准的一部分。这种格式无法存" +"储 Alpha 通道。" #: doc/classes/Image.xml msgid "" @@ -35444,9 +35624,10 @@ msgid "" "format 2[/url] ([code]R11_EAC[/code] variant), which provides one channel of " "unsigned data." msgstr "" -"[url=https://zh.wikipedia.org/zh-cn/%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA" -"%B9%E7%90%86%E5%8E%8B%E7%BC%A9#[3]ETC2%E5%92%8CEAC]爱立信纹理压缩格式 2[/url]" -"([code]R11_EAC[/code] 变体),它提供一个无符号数据通道。" +"[url=https://zh.wikipedia.org/zh-cn/" +"%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA%B9%E7%90%86%E5%8E%8B%E7%BC%A9#[3]ETC2%E5%92%8CEAC]" +"爱立信纹理压缩格式 2[/url]([code]R11_EAC[/code] 变体),它提供一个无符号数据" +"通道。" #: doc/classes/Image.xml msgid "" @@ -35455,9 +35636,10 @@ msgid "" "format 2[/url] ([code]SIGNED_R11_EAC[/code] variant), which provides one " "channel of signed data." msgstr "" -"[url=https://zh.wikipedia.org/zh-cn/%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA" -"%B9%E7%90%86%E5%8E%8B%E7%BC%A9#[3]ETC2%E5%92%8CEAC]爱立信纹理压缩格式 2[/url]" -"([code]SIGNED_R11_EAC[/code] 变体),它提供一个有符号数据通道。" +"[url=https://zh.wikipedia.org/zh-cn/" +"%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA%B9%E7%90%86%E5%8E%8B%E7%BC%A9#[3]ETC2%E5%92%8CEAC]" +"爱立信纹理压缩格式 2[/url]([code]SIGNED_R11_EAC[/code] 变体),它提供一个有" +"符号数据通道。" #: doc/classes/Image.xml msgid "" @@ -35466,9 +35648,10 @@ msgid "" "format 2[/url] ([code]RG11_EAC[/code] variant), which provides two channels " "of unsigned data." msgstr "" -"[url=https://zh.wikipedia.org/zh-cn/%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA" -"%B9%E7%90%86%E5%8E%8B%E7%BC%A9#[3]ETC2%E5%92%8CEAC]爱立信纹理压缩格式 2[/url]" -"([code]RG11_EAC[/code] 变体),它提供一个无符号数据通道。" +"[url=https://zh.wikipedia.org/zh-cn/" +"%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA%B9%E7%90%86%E5%8E%8B%E7%BC%A9#[3]ETC2%E5%92%8CEAC]" +"爱立信纹理压缩格式 2[/url]([code]RG11_EAC[/code] 变体),它提供一个无符号数" +"据通道。" #: doc/classes/Image.xml msgid "" @@ -35477,9 +35660,10 @@ msgid "" "format 2[/url] ([code]SIGNED_RG11_EAC[/code] variant), which provides two " "channels of signed data." msgstr "" -"[url=https://zh.wikipedia.org/zh-cn/%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA" -"%B9%E7%90%86%E5%8E%8B%E7%BC%A9#[3]ETC2%E5%92%8CEAC]爱立信纹理压缩格式 2[/url]" -"([code]SIGNED_RG11_EAC[/code] 变体),它提供两个有符号数据通道。" +"[url=https://zh.wikipedia.org/zh-cn/" +"%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA%B9%E7%90%86%E5%8E%8B%E7%BC%A9#[3]ETC2%E5%92%8CEAC]" +"爱立信纹理压缩格式 2[/url]([code]SIGNED_RG11_EAC[/code] 变体),它提供两个有" +"符号数据通道。" #: doc/classes/Image.xml msgid "" @@ -35490,9 +35674,10 @@ msgid "" "[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space " "conversion is performed." msgstr "" -"[url=https://zh.wikipedia.org/zh-cn/%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA" -"%B9%E7%90%86%E5%8E%8B%E7%BC%A9#[3]ETC2%E5%92%8CEAC]爱立信纹理压缩格式 2[/url]" -"([code]RGB8[/code] 变体),它是 ETC1 的后续版本,可压缩 RGB888 数据。\n" +"[url=https://zh.wikipedia.org/zh-cn/" +"%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA%B9%E7%90%86%E5%8E%8B%E7%BC%A9#[3]ETC2%E5%92%8CEAC]" +"爱立信纹理压缩格式 2[/url]([code]RGB8[/code] 变体),它是 ETC1 的后续版本," +"可压缩 RGB888 数据。\n" "[b]注意:[/b]创建 [ImageTexture] 时,会执行 sRGB 到线性色彩空间的转换。" #: doc/classes/Image.xml @@ -35504,9 +35689,10 @@ msgid "" "[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space " "conversion is performed." msgstr "" -"[url=https://zh.wikipedia.org/zh-cn/%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA" -"%B9%E7%90%86%E5%8E%8B%E7%BC%A9#[3]ETC2%E5%92%8CEAC]爱立信纹理压缩格式 2[/url]" -"([code]RGBA8[/code] 变体),它可以压缩 RGBA8888 数据,完全支持 Alpha。\n" +"[url=https://zh.wikipedia.org/zh-cn/" +"%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA%B9%E7%90%86%E5%8E%8B%E7%BC%A9#[3]ETC2%E5%92%8CEAC]" +"爱立信纹理压缩格式 2[/url]([code]RGBA8[/code] 变体),它可以压缩 RGBA8888 数" +"据,完全支持 Alpha。\n" "[b]注意:[/b]创建 [ImageTexture] 时,会执行 sRGB 到线性色彩空间的转换。" #: doc/classes/Image.xml @@ -35519,10 +35705,10 @@ msgid "" "[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space " "conversion is performed." msgstr "" -"[url=https://zh.wikipedia.org/zh-cn/%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA" -"%B9%E7%90%86%E5%8E%8B%E7%BC%A9#[3]ETC2%E5%92%8CEAC]爱立信纹理压缩格式 2[/url]" -"([code]RGB8_PUNCHTHROUGH_ALPHA1[/code] 变体),它可以压缩 RGBA 数据,使 " -"Alpha 完全透明或完全不透明。\n" +"[url=https://zh.wikipedia.org/zh-cn/" +"%E7%88%B1%E7%AB%8B%E4%BF%A1%E7%BA%B9%E7%90%86%E5%8E%8B%E7%BC%A9#[3]ETC2%E5%92%8CEAC]" +"爱立信纹理压缩格式 2[/url]([code]RGB8_PUNCHTHROUGH_ALPHA1[/code] 变体),它" +"可以压缩 RGBA 数据,使 Alpha 完全透明或完全不透明。\n" "[b]注意:[/b]创建 [ImageTexture] 时,会执行 sRGB 到线性色彩空间的转换。" #: doc/classes/Image.xml @@ -35634,6 +35820,11 @@ msgid "" "compressed into two channels)." msgstr "原始纹理(在压缩前)是法线纹理(例如,可以压缩为两个通道)。" +#: doc/classes/Image.xml +#, fuzzy +msgid "Source texture (before compression) is a [TextureLayered]." +msgstr "原始纹理(在压缩前)使用 sRGB 空间。" + #: doc/classes/ImageTexture.xml msgid "A [Texture] based on an [Image]." msgstr "基于 [Image] 图片的 [Texture] 纹理。" @@ -35888,8 +36079,8 @@ msgstr "" "件。" #: doc/classes/Input.xml -msgid "$DOCS_URL/tutorials/inputs/index.html" -msgstr "$DOCS_URL/tutorials/inputs/index.html" +msgid "Inputs tutorial index" +msgstr "" #: doc/classes/Input.xml msgid "" @@ -35963,11 +36154,11 @@ 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]事件的方" -"向。" +"返回介于 0 和 1 之间的值,代表给定动作的原始强度,忽略动作的死区。在大多数情" +"况下,你应该使用 [method get_action_strength] 来代替。\n" +"如果 [code]exact[/code] 是 [code]false[/code],它将忽略 [InputEventKey] 和 " +"[InputEventMouseButton] 事件的输入修饰符,以及 [InputEventJoypadMotion] 事件" +"的方向。" #: doc/classes/Input.xml msgid "" @@ -36189,8 +36380,8 @@ msgid "" "for [InputEventKey] and [InputEventMouseButton] events, and the direction " "for [InputEventJoypadMotion] events.\n" "[b]Note:[/b] Due to keyboard ghosting, [method is_action_pressed] may return " -"[code]false[/code] even if one of the action's keys is pressed. See [url=" -"$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input " +"[code]false[/code] even if one of the action's keys is pressed. See " +"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input " "examples[/url] in the documentation for more information." msgstr "" "如果你正在按下动作事件,返回 [code]true[/code]。请注意,如果一个动作有多个分" @@ -36231,8 +36422,8 @@ msgid "" "keyboard shortcuts are generally dependent on the keyboard layout in non-" "game applications. If in doubt, use [method is_physical_key_pressed].\n" "[b]Note:[/b] Due to keyboard ghosting, [method is_key_pressed] may return " -"[code]false[/code] even if one of the action's keys is pressed. See [url=" -"$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input " +"[code]false[/code] even if one of the action's keys is pressed. See " +"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input " "examples[/url] in the documentation for more information." msgstr "" "如果你正在按当前键盘布局中的这个键,则返回 [code]true[/code]。可以传 [enum " @@ -36361,10 +36552,10 @@ msgid "" "[b]Note:[/b] This method generates an [InputEventMouseMotion] to update " "cursor immediately." msgstr "" -"设置视窗中使用的默认光标形状,而不是[constant CURSOR_ARROW]。\n" -"[b]注意:[/b]如果要更改[Control]节点的默认光标形状,请改用 [member Control." +"设置视窗中使用的默认光标形状,而不是 [constant CURSOR_ARROW]。\n" +"[b]注意:[/b]如果要更改 [Control] 节点的默认光标形状,请改用 [member Control." "mouse_default_cursor_shape]。\n" -"[b]注意:[/b]这个方法生成一个[InputEventMouseMotion]以立即更新游标。" +"[b]注意:[/b]这个方法会生成一个 [InputEventMouseMotion] 以立即更新光标。" #: doc/classes/Input.xml msgid "" @@ -36374,9 +36565,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上可立即被硬件传感器的值覆盖。" +"设置加速度传感器的重力值。可用于在没有硬件传感器的设备上进行调试,例如在 PC " +"上的编辑器中。\n" +"[b]注意:[/b]这个值在 Android 和 iOS 上可立即被硬件传感器的值覆盖。" #: doc/classes/Input.xml msgid "" @@ -36386,9 +36577,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上,这个值可立即被硬件传感器的值所覆盖。" +"设置陀螺仪传感器的旋转速率值。可用于在没有硬件传感器的设备上进行调试,例如在 " +"PC 上的编辑器中。\n" +"[b]注意:[/b]在 Android 和 iOS 上,这个值可立即被硬件传感器的值所覆盖。" #: doc/classes/Input.xml msgid "" @@ -36398,9 +36589,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上,这个值可立即被硬件传感器的值所覆盖。" +"设置磁力传感器的磁场值。可用于在没有硬件传感器的设备上进行调试,例如在 PC 上" +"的编辑器中。\n" +"[b]注意:[/b]在 Android 和 iOS 上,这个值可立即被硬件传感器的值所覆盖。" #: doc/classes/Input.xml msgid "Sets the mouse mode. See the constants for more information." @@ -36461,8 +36652,13 @@ msgstr "" "持续时间。" #: doc/classes/Input.xml -msgid "Sets the mouse position to the specified vector." -msgstr "将鼠标坐标设置为指定的向量。" +msgid "" +"Sets the mouse position to the specified vector, provided in pixels and " +"relative to an origin at the upper left corner of the game window.\n" +"Mouse position is clipped to the limits of the screen resolution, or to the " +"limits of the game window if [enum MouseMode] is set to [constant " +"MOUSE_MODE_CONFINED]." +msgstr "" #: doc/classes/Input.xml msgid "Emitted when a joypad device has been connected or disconnected." @@ -36614,13 +36810,9 @@ msgstr "通用输入事件。" msgid "Base class of all sort of input event. See [method Node._input]." msgstr "各种输入事件的基类。请参阅 [method Node._input]。" -#: doc/classes/InputEvent.xml doc/classes/InputEventJoypadButton.xml -#: doc/classes/InputEventJoypadMotion.xml doc/classes/InputEventKey.xml -#: doc/classes/InputEventMouse.xml doc/classes/InputEventScreenDrag.xml -#: doc/classes/InputEventScreenTouch.xml -#: doc/classes/InputEventWithModifiers.xml -msgid "$DOCS_URL/tutorials/inputs/inputevent.html" -msgstr "$DOCS_URL/tutorials/inputs/inputevent.html" +#: doc/classes/InputEvent.xml +msgid "InputEvent" +msgstr "" #: doc/classes/InputEvent.xml msgid "" @@ -36676,8 +36868,8 @@ msgid "" "modifiers for [InputEventKey] and [InputEventMouseButton] events, and the " "direction for [InputEventJoypadMotion] events.\n" "[b]Note:[/b] Due to keyboard ghosting, [method is_action_pressed] may return " -"[code]false[/code] even if one of the action's keys is pressed. See [url=" -"$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input " +"[code]false[/code] even if one of the action's keys is pressed. See " +"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input " "examples[/url] in the documentation for more information." msgstr "" "如果给定的动作被按下,则返回 [code]true[/code],并且不是 [InputEventKey] 事件" @@ -36725,8 +36917,8 @@ msgid "" "Returns [code]true[/code] if this input event is pressed. Not relevant for " "events of type [InputEventMouseMotion] or [InputEventScreenDrag].\n" "[b]Note:[/b] Due to keyboard ghosting, [method is_action_pressed] may return " -"[code]false[/code] even if one of the action's keys is pressed. See [url=" -"$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input " +"[code]false[/code] even if one of the action's keys is pressed. See " +"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input " "examples[/url] in the documentation for more information." msgstr "" "如果这个输入事件被按下,则返回 [code]true[/code]。与 [InputEventMouseMotion] " @@ -36791,8 +36983,9 @@ msgstr "" "菜单中的[b]键位映射[/b]选项卡中创建。请参阅 [method Node._input]。" #: doc/classes/InputEventAction.xml -msgid "$DOCS_URL/tutorials/inputs/inputevent.html#actions" -msgstr "$DOCS_URL/tutorials/inputs/inputevent.html#actions" +#, fuzzy +msgid "InputEvent: Actions" +msgstr "动作的输入事件类型。" #: doc/classes/InputEventAction.xml msgid "The action's name. Actions are accessed via this [String]." @@ -37010,24 +37203,19 @@ msgstr "" "行 MIDI 输入。" #: doc/classes/InputEventMIDI.xml -msgid "" -"https://www.midi.org/specifications-old/item/table-2-expanded-messages-list-" -"status-bytes" +msgid "MIDI Message Status Byte List" msgstr "" -"https://www.midi.org/specifications-old/item/table-2-expanded-messages-list-" -"status-bytes" #: doc/classes/InputEventMIDI.xml -msgid "https://en.wikipedia.org/wiki/General_MIDI#Program_change_events" +msgid "Wikipedia General MIDI Instrument List" msgstr "" -"https://zh.wikipedia.org/zh-cn/General_MIDI#%E9%9F%B3%E8%89%B2%E8%BD%89%E6%8F" -"%9B%E4%BA%8B%E4%BB%B6%EF%BC%88Program_change_events%EF%BC%89" #: doc/classes/InputEventMIDI.xml -msgid "https://en.wikipedia.org/wiki/Piano_key_frequencies#List" +#, fuzzy +msgid "Wikipedia Piano Key Frequencies List" msgstr "" -"https://zh.wikipedia.org/zh-cn/%E9%8B%BC%E7%90%B4%E9%8D%B5%E9%A0%BB%E7%8E%87#" -"%E5%88%97%E8%A1%A8" +"https://zh.wikipedia.org/zh-cn/" +"%E9%8B%BC%E7%90%B4%E9%8D%B5%E9%A0%BB%E7%8E%87#%E5%88%97%E8%A1%A8" #: doc/classes/InputEventMIDI.xml msgid "" @@ -37069,7 +37257,6 @@ msgstr "" "都减一。标准钢琴的乐器号为 0。" #: doc/classes/InputEventMIDI.xml -#, fuzzy msgid "" "Returns a value indicating the type of message for this MIDI signal. This is " "a member of the [enum @GlobalScope.MidiMessageList] enum.\n" @@ -37083,7 +37270,8 @@ msgid "" "For more information, see the MIDI message status byte list chart linked " "above." msgstr "" -"返回表示这个 MIDI 信号类型的值,是 MidiMessageList 枚举的成员。\n" +"返回表示这个 MIDI 信号类型的值,是 [enum @GlobalScope.MidiMessageList] 枚举的" +"成员。\n" "对于在 0x80 和 0xEF 之间的 MIDI 消息,这个值返回的是左半部分的比特位,另一半" "是通道(例:0x94 会变成 0x9)。对于在 0xF0 到 0xFF 之间的 MIDI 消息,这个值是" "原样返回的。\n" @@ -37098,7 +37286,7 @@ msgid "" "On a piano, middle C is 60, and A440 is 69, see the \"MIDI note\" column of " "the piano key frequency chart on Wikipedia for more information." msgstr "" -"这个 MIDI 信号的音调索引号。这个值的范围为 0 到 127。在钢琴上,中央 C 是 60," +"这个 MIDI 信号的音高索引号。这个值的范围为 0 到 127。在钢琴上,中央 C 是 60," "而 A440 是 69,更多信息请参阅维基百科钢琴琴键频率表的“MIDI 音符”列。" #: doc/classes/InputEventMIDI.xml @@ -37132,23 +37320,22 @@ msgstr "鼠标按钮掩码标识符,是[enum ButtonList] 按钮掩码之一或 #: doc/classes/InputEventMouse.xml msgid "" -"The global mouse position relative to the current [Viewport]. If used in " -"[method Control._gui_input] and if the current [Control] is not under the " -"mouse, moving it will not update this value." +"When received in [method Node._input] or [method Node._unhandled_input], " +"returns the mouse's position in the root [Viewport] using the coordinate " +"system of the root [Viewport].\n" +"When received in [method Control._gui_input], returns the mouse's position " +"in the [CanvasLayer] that the [Control] is in using the coordinate system of " +"the [CanvasLayer]." msgstr "" -"相对于当前 [Viewport] 的全局鼠标位置。如果在 [method Control._gui_input] 中使" -"用,并且当前 [Control] 不在鼠标之下,移动不会更新这个值。" #: doc/classes/InputEventMouse.xml msgid "" -"The local mouse position relative to the [Viewport]. If used in [method " -"Control._gui_input], the position is relative to the current [Control] which " -"is under the mouse. If the current [Control] is not under the mouse, moving " -"it will not update this value." +"When received in [method Node._input] or [method Node._unhandled_input], " +"returns the mouse's position in the [Viewport] this [Node] is in using the " +"coordinate system of this [Viewport].\n" +"When received in [method Control._gui_input], returns the mouse's position " +"in the [Control] using the local coordinate system of the [Control]." msgstr "" -"相对于当前 [Viewport] 的局部鼠标位置。如果在 [method Control._gui_input] 中使" -"用,该位置是相对于鼠标之下的当前 [Control] 的。如果当前 [Control] 不在鼠标之" -"下,移动不会更新这个值。" #: doc/classes/InputEventMouseButton.xml msgid "Input event type for mouse button events." @@ -37158,10 +37345,6 @@ msgstr "鼠标按钮事件的输入事件类型。" msgid "Contains mouse click information. See [method Node._input]." msgstr "包含鼠标点击信息。见[method Node._input]。" -#: doc/classes/InputEventMouseButton.xml doc/classes/InputEventMouseMotion.xml -msgid "$DOCS_URL/tutorials/inputs/mouse_and_input_coordinates.html" -msgstr "$DOCS_URL/tutorials/inputs/mouse_and_input_coordinates.html" - #: doc/classes/InputEventMouseButton.xml msgid "" "The mouse button identifier, one of the [enum ButtonList] button or button " @@ -37203,9 +37386,9 @@ msgid "" "at most. If you need more precise input reporting, call [method Input." "set_use_accumulated_input] with [code]false[/code] to make events emitted as " "often as possible. If you use InputEventMouseMotion to draw lines, consider " -"implementing [url=https://en.wikipedia.org/wiki/Bresenham" -"%27s_line_algorithm]Bresenham's line algorithm[/url] as well to avoid " -"visible gaps in lines if the user is moving the mouse quickly." +"implementing [url=https://en.wikipedia.org/wiki/" +"Bresenham%27s_line_algorithm]Bresenham's line algorithm[/url] as well to " +"avoid visible gaps in lines if the user is moving the mouse quickly." msgstr "" "包含鼠标和笔的运动信息。支持相对、绝对位置和速度。参阅[method Node." "_input]。\n" @@ -37217,6 +37400,11 @@ msgstr "" "移动鼠标时出现可见的线条空隙。" #: doc/classes/InputEventMouseMotion.xml +#, fuzzy +msgid "Mouse and input coordinates" +msgstr "X 坐标上的半偏移。" + +#: doc/classes/InputEventMouseMotion.xml msgid "" "Represents the pressure the user puts on the pen. Ranges from [code]0.0[/" "code] to [code]1.0[/code]." @@ -37356,10 +37544,6 @@ msgstr "" "改。请参阅 [method Node._input]。" #: doc/classes/InputMap.xml -msgid "$DOCS_URL/tutorials/inputs/inputevent.html#inputmap" -msgstr "$DOCS_URL/tutorials/inputs/inputevent.html#inputmap" - -#: doc/classes/InputMap.xml msgid "" "Adds an [InputEvent] to an action. This [InputEvent] will trigger the action." msgstr "给一个动作添加一个[InputEvent]。这个[InputEvent]将触发这个动作。" @@ -37919,7 +38103,7 @@ msgstr "索引所对应的项目被选中时,返回 [code]true[/code]。" #: doc/classes/ItemList.xml msgid "Moves item from index [code]from_idx[/code] to [code]to_idx[/code]." -msgstr "将项目从索引[code]from_idx[/code]移到[code]to_idx[/code]。" +msgstr "将项目从索引 [code]from_idx[/code] 移到 [code]to_idx[/code]。" #: doc/classes/ItemList.xml msgid "Removes the item specified by [code]idx[/code] index from the list." @@ -38247,14 +38431,6 @@ msgstr "" #: doc/classes/JavaScript.xml msgid "" -"$DOCS_URL/tutorials/export/exporting_for_web.html#calling-javascript-from-" -"script" -msgstr "" -"$DOCS_URL/tutorials/export/exporting_for_web.html#calling-javascript-from-" -"script" - -#: doc/classes/JavaScript.xml -msgid "" "Creates a reference to a script function that can be used as a callback by " "JavaScript. The reference must be kept until the callback happens, or it " "won't be called at all. See [JavaScriptObject] for usage." @@ -38320,6 +38496,29 @@ msgstr "" "JavaScript[code]window[/code]的一个有效属性。回调必须接受一个[Array]参数,它" "将包含JavaScript [code]arguments[/code]。参阅[JavaScriptObject]的用法。" +#: doc/classes/JavaScript.xml +msgid "" +"Returns [code]true[/code] if a new version of the progressive web app is " +"waiting to be activated.\n" +"[b]Note:[/b] Only relevant when exported as a Progressive Web App." +msgstr "" + +#: doc/classes/JavaScript.xml +msgid "" +"Performs the live update of the progressive web app. Forcing the new version " +"to be installed and the page to be reloaded.\n" +"[b]Note:[/b] Your application will be [b]reloaded in all browser tabs[/b].\n" +"[b]Note:[/b] Only relevant when exported as a Progressive Web App and " +"[method pwa_needs_update] returns [code]true[/code]." +msgstr "" + +#: doc/classes/JavaScript.xml +msgid "" +"Emitted when an update for this progressive web app has been detected but is " +"waiting to be activated because a previous version is active. See [method " +"pwa_update] to force the update to take place immediately." +msgstr "" + #: doc/classes/JavaScriptObject.xml msgid "A wrapper class for native JavaScript objects." msgstr "原生 JavaScript 对象的封装类。" @@ -38420,8 +38619,8 @@ msgstr "" "url]。" #: doc/classes/JNISingleton.xml -msgid "$DOCS_URL/tutorials/platform/android/android_plugin.html" -msgstr "$DOCS_URL/tutorials/platform/android/android_plugin.html" +msgid "Creating Android plugins" +msgstr "" #: doc/classes/Joint.xml msgid "Base class for all 3D joints." @@ -38438,8 +38637,8 @@ msgstr "" #: doc/classes/Joint.xml doc/classes/RigidBody.xml doc/classes/VehicleBody.xml #: doc/classes/VehicleWheel.xml -msgid "https://godotengine.org/asset-library/asset/524" -msgstr "https://godotengine.org/asset-library/asset/524" +msgid "3D Truck Town Demo" +msgstr "" #: doc/classes/Joint.xml msgid "" @@ -38516,13 +38715,18 @@ msgid "" msgstr "解析一个JSON编码的字符串并返回一个包含结果的[JSONParseResult]。" #: doc/classes/JSON.xml +#, fuzzy msgid "" "Converts a [Variant] var to JSON text and returns the result. Useful for " "serializing data to store or send over the network.\n" "[b]Note:[/b] The JSON specification does not define integer or float types, " "but only a [i]number[/i] type. Therefore, converting a Variant to JSON text " "will convert all numerical values to [float] types.\n" -"Use [code]indent[/code] parameter to pretty print the output.\n" +"The [code]indent[/code] parameter controls if and how something is indented, " +"the string used for this parameter will be used where there should be an " +"indent in the output, even spaces like [code]\" \"[/code] will work. " +"[code]\\t[/code] and [code]\\n[/code] can also be used for a tab indent, or " +"to make a newline for each indent respectively.\n" "[b]Example output:[/b]\n" "[codeblock]\n" "## JSON.print(my_dictionary)\n" @@ -38532,18 +38736,34 @@ msgid "" "\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" +" \"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" +"\n" +"## JSON.print(my_dictionary, \"...\")\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]" msgstr "" @@ -38631,26 +38851,26 @@ msgid "" " push_error(\"Unexpected results.\")\n" "[/codeblock]" msgstr "" -"包含解析过JSON的变量[Variant]。使用[method @GDScript.typeof]或[code]is[/code]" -"关键字来检查它是否是你期望的。例如,如果JSON源以花括号开始([code]{}[/" -"code]),将返回一个字典[Dictionary]。如果JSON源以方括号开始([code][][/" -"code]),将返回一个数组[Array]。\n" -"[b]注意:[/b] JSON规范没有定义整数或浮点数类型,而只有一个数字[i]number[/i]类" -"型。因此,解析JSON文本将把所有的数字值转换为浮点[float]类型。\n" -"[b]注意:[/b]JSON对象不像Godot字典那样保留键的顺序,因此,如果一个字典是由" -"JSON构建的,你不应该依赖键是按一定顺序的。与此相反,JSON数组保留其元素的顺" -"序。\n" +"包含解析过 JSON 的变量 [Variant]。使用 [method @GDScript.typeof] 或 " +"[code]is[/code] 关键字来检查它是否是你期望的。例如,如果 JSON 源以花括号开始" +"([code]{}[/code]),将返回一个字典 [Dictionary]。如果 JSON 源以方括号开始" +"([code][][/code]),将返回一个数组 [Array]。\n" +"[b]注意:[/b]JSON 规范没有定义整数或浮点数类型,只有一个[i]数字[/i]类型。因" +"此,解析 JSON 文本将把所有的数字值转换为 [float] 类型。\n" +"[b]注意:[/b]JSON 对象不像 Godot 字典那样保留键的顺序,因此,如果一个字典是" +"由 JSON 构建的,你不应该依赖键是按一定顺序的。与此相反,JSON 数组保留其元素的" +"顺序。\n" "[codeblock]\n" "var p = JSON.parse('[\"hello\", \"world\", \"!\"]' )\n" "if typeof(p.result) == TYPE_ARRAY:\n" " print(p.result[0]) # 打印 \"hello\"\n" "else:\n" -" push_error(\"Unexpected results.\")#意外的结果。\n" +" push_error(\"出乎意料的结果。\")\n" "[/codeblock]" #: doc/classes/JSONRPC.xml msgid "A helper to handle dictionaries which look like JSONRPC documents." -msgstr "用于处理看起来像JSONRPC文档的字典的助手。" +msgstr "用于处理看起来像 JSONRPC 文档的字典的辅助类。" #: doc/classes/JSONRPC.xml msgid "" @@ -38778,8 +38998,8 @@ msgstr "" "们在实现对世界进行碰撞,但不需要高级物理的角色时非常有用。" #: doc/classes/KinematicBody.xml doc/classes/KinematicBody2D.xml -msgid "$DOCS_URL/tutorials/physics/kinematic_character_2d.html" -msgstr "$DOCS_URL/tutorials/physics/kinematic_character_2d.html" +msgid "Kinematic character (2D)" +msgstr "" #: doc/classes/KinematicBody.xml msgid "" @@ -39117,8 +39337,9 @@ msgstr "" "们在实现对世界进行碰撞,但不需要高级物理的角色时非常有用。" #: doc/classes/KinematicBody2D.xml -msgid "$DOCS_URL/tutorials/physics/using_kinematic_body_2d.html" -msgstr "$DOCS_URL/tutorials/physics/using_kinematic_body_2d.html" +#, fuzzy +msgid "Using KinematicBody2D" +msgstr "2D 运动体节点。" #: doc/classes/KinematicBody2D.xml msgid "" @@ -39419,7 +39640,7 @@ msgstr "" #: doc/classes/Label.xml msgid "Returns the amount of lines of text the Label has." -msgstr "返回Label标签的文本行数。" +msgstr "返回该 Label 的文本行数。" #: doc/classes/Label.xml msgid "Returns the font size in pixels." @@ -39435,7 +39656,7 @@ msgstr "返回文本中可打印的字符总数,不包括空格和换行符。 msgid "" "Returns the number of lines shown. Useful if the [Label]'s height cannot " "currently display all lines." -msgstr "返回显示的行数。如果[Label]的高度目前无法显示所有的行数,将会有用。" +msgstr "返回显示的行数。如果 [Label] 的高度目前无法显示所有的行数,将会有用。" #: doc/classes/Label.xml msgid "" @@ -39477,8 +39698,8 @@ msgid "" "code] to 0.5, only up to half of the text's characters will display on " "screen. Useful to animate the text in a dialog box." msgstr "" -"限制可见字符的数量。如果你把[code]%_visible[/code]设置为0.5,屏幕上最多只能显" -"示文本的一半字符。这在对话框中对文本进行动画处理很有用。" +"限制可见字符的数量。如果你把 [code]percent_visible[/code] 设置为 0.5,则屏幕" +"上最多只能显示该文本中一半数量的字符。这在对话框中对文本进行动画处理很有用。" #: doc/classes/Label.xml msgid "The text to display on screen." @@ -39497,7 +39718,7 @@ msgstr "" #: doc/classes/Label.xml msgid "Restricts the number of characters to display. Set to -1 to disable." -msgstr "限制显示的字符数。设置为-1表示禁用限制。" +msgstr "限制显示的字符数。设置为 -1 表示禁用限制。" #: doc/classes/Label.xml msgid "Align rows to the left (default)." @@ -39505,11 +39726,11 @@ msgstr "将行左对齐,默认。" #: doc/classes/Label.xml msgid "Align rows centered." -msgstr "居中对齐行。" +msgstr "将行居中对齐。" #: doc/classes/Label.xml msgid "Align rows to the right." -msgstr "将行向右对齐。" +msgstr "将行右对齐。" #: doc/classes/Label.xml msgid "Expand row whitespaces to fit the width." @@ -39641,6 +39862,10 @@ msgstr "" "Light 是灯光节点的[i]抽象[/i]基类。它不能被实例化,所以它不应该被直接使用。其" "他类型的灯光节点都是继承自它。灯光包含用于照明的常用变量和参数。" +#: doc/classes/Light.xml doc/classes/SpotLight.xml +msgid "3D lights and shadows" +msgstr "" + #: doc/classes/Light.xml msgid "Returns the value of the specified [enum Light.Param] parameter." msgstr "返回指定的 [enum Light.Param] 参数的值。" @@ -39702,9 +39927,9 @@ msgid "" "this value will make the shadows appear blurrier. This can be used to " "simulate area lights to an extent." msgstr "" -"灯光的大小,以Godot的单位。只在烘烤的光照贴图中考虑,并且只在[member " -"light_bake_mode]被设置为[constant BAKE_ALL]时考虑。增加这个值会使阴影看起来更" -"模糊。这可以在一定程度上用于模拟区域灯光。" +"灯光的大小,使用 Godot 的单位。只在烘焙的光照贴图中考虑,并且只在 [member " +"light_bake_mode] 被设置为 [constant BAKE_ALL] 时考虑。增加这个值会使阴影看起" +"来更模糊。这可以在一定程度上用于模拟区域灯光。" #: doc/classes/Light.xml msgid "" @@ -39870,10 +40095,6 @@ msgstr "" "模式(参阅常数)以及其他各种参数(与范围和阴影有关)来定义。\n" "[b]注意:[/b] Light2D也可以作为一个遮罩使用。" -#: doc/classes/Light2D.xml doc/classes/LightOccluder2D.xml -msgid "$DOCS_URL/tutorials/2d/2d_lights_and_shadows.html" -msgstr "$DOCS_URL/tutorials/2d/2d_lights_and_shadows.html" - #: doc/classes/Light2D.xml msgid "The Light2D's [Color]." msgstr "Light2D光的颜色 [Color]。" @@ -41802,13 +42023,12 @@ msgid "Returns the number of faces in this [Mesh]." msgstr "返回这个[Mesh]中的面数。" #: doc/classes/MeshDataTool.xml -#, fuzzy msgid "" "Returns specified edge associated with given face.\n" "Edge argument must be either 0, 1, or 2 because a face only has three edges." msgstr "" "返回与给定面关联的指定边。\n" -"Edge参数必须小于等于2,因为面只有3条边。" +"边参数必须是 0、1、2 之一,因为面只有 3 条边。" #: doc/classes/MeshDataTool.xml msgid "Returns the metadata associated with the given face." @@ -41819,14 +42039,13 @@ msgid "Calculates and returns the face normal of the given face." msgstr "计算并返回给定面的面法线。" #: doc/classes/MeshDataTool.xml -#, fuzzy msgid "" "Returns the specified vertex of the given face.\n" "Vertex argument must be either 0, 1, or 2 because faces contain three " "vertices." msgstr "" "返回给定面的指定顶点。\n" -"顶点参数必须小于等于2,因为面包含3个顶点。" +"顶点参数必须是 0、1、2 之一,因为面包含 3 个顶点。" #: doc/classes/MeshDataTool.xml msgid "" @@ -42072,15 +42291,10 @@ msgstr "" "\"创建Mesh2D\"。" #: doc/classes/MeshInstance2D.xml -msgid "$DOCS_URL/tutorials/2d/2d_meshes.html" -msgstr "$DOCS_URL/tutorials/2d/2d_meshes.html" - -#: doc/classes/MeshInstance2D.xml msgid "The [Mesh] that will be drawn by the [MeshInstance2D]." msgstr "[Mesh]将由[MeshInstance2D]绘制。" #: doc/classes/MeshInstance2D.xml doc/classes/MultiMeshInstance2D.xml -#, fuzzy msgid "" "The normal map that will be used if using the default [CanvasItemMaterial].\n" "[b]Note:[/b] Godot expects the normal map to use X+, Y+, and Z+ coordinates. " @@ -42088,10 +42302,11 @@ msgid "" "Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for " "a comparison of normal map coordinates expected by popular engines." msgstr "" -"如果使用默认的[CanvasItemMaterial],法线贴图将被使用。\n" -"[b]注意:[/b] Godot期望法线映射使用X+, Y-和Z+坐标。请参阅[url=http://wiki." -"polycount.com/wiki/Normal_Map_Technical_Details#Common_Swizzle_Coordinates]这" -"一页[/url],以获得流行引擎期望的标准法向图坐标的比较。" +"如果使用默认的 [CanvasItemMaterial],法线贴图将被使用。\n" +"[b]注意:[/b]Godot 希望法线贴图使用 X+、Y+ 和 Z+ 坐标。请参阅[url=http://" +"wiki.polycount.com/wiki/" +"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]该页[/url],了解流行" +"引擎所期望的法线贴图坐标的比较。" #: doc/classes/MeshInstance2D.xml doc/classes/MultiMeshInstance2D.xml msgid "" @@ -42270,11 +42485,11 @@ msgid "" " get_viewport().arvr = true\n" "[/codeblock]" msgstr "" -"这是通用的移动VR实现,你需要提供关于所使用的手机和HMD的细节。它不依赖于任何现" -"有的框架。这是我们拥有的最基本的接口。为了达到最好的效果,你需要一个有陀螺仪" -"和加速器的手机。\n" -"请注意,即使没有位置跟踪,相机也会假定耳机处于1.85米的高度。你可以通过设置" -"[member eye_height]来改变这一点。\n" +"这是通用的移动 VR 实现,你需要提供关于所使用的手机和 HMD 的细节。它不依赖于任" +"何现有的框架。这是我们拥有的最基本的接口。为了达到最好的效果,你需要一个有陀" +"螺仪和加速器的手机。\n" +"请注意,即使没有位置跟踪,相机也会假定耳机处于 1.85 米的高度。你可以通过设置 " +"[member eye_height] 来改变这一点。\n" "你可以按以下方式初始化这个接口:\n" "[codeblock]\n" "var interface = ARVRServer.find_interface(\"Native mobile\")\n" @@ -42349,18 +42564,6 @@ msgstr "" "(它们在空间上被索引为整个对象)。\n" "由于实例可能具有任何行为,用于可见性的AABB必须由用户提供。" -#: doc/classes/MultiMesh.xml doc/classes/MultiMeshInstance.xml -msgid "" -"$DOCS_URL/tutorials/performance/vertex_animation/animating_thousands_of_fish." -"html" -msgstr "" -"$DOCS_URL/tutorials/performance/vertex_animation/animating_thousands_of_fish." -"html" - -#: doc/classes/MultiMesh.xml doc/classes/MultiMeshInstance.xml -msgid "$DOCS_URL/tutorials/performance/using_multimesh.html" -msgstr "$DOCS_URL/tutorials/performance/using_multimesh.html" - #: doc/classes/MultiMesh.xml msgid "" "Returns the visibility axis-aligned bounding box in local space. See also " @@ -42534,10 +42737,6 @@ msgstr "" "这对于优化给定网格的大量实例的渲染是非常有用的(例如,森林中的树木或草丛)。" #: doc/classes/MultiMeshInstance.xml -msgid "$DOCS_URL/tutorials/3d/using_multi_mesh_instance.html" -msgstr "$DOCS_URL/tutorials/3d/using_multi_mesh_instance.html" - -#: doc/classes/MultiMeshInstance.xml msgid "" "The [MultiMesh] resource that will be used and shared among all instances of " "the [MultiMeshInstance]." @@ -42855,10 +43054,6 @@ msgstr "" "[Semaphore]。它保证每次只有一个线程可以获得锁。互斥锁可以用来保护临界区;但" "是,要注意避免死锁。" -#: doc/classes/Mutex.xml doc/classes/Semaphore.xml doc/classes/Thread.xml -msgid "$DOCS_URL/tutorials/performance/threads/using_multiple_threads.html" -msgstr "$DOCS_URL/tutorials/performance/threads/using_multiple_threads.html" - #: doc/classes/Mutex.xml msgid "" "Locks this [Mutex], blocks until it is unlocked by the current owner.\n" @@ -42947,13 +43142,13 @@ msgid "" "navigating on." msgstr "" "在 [NavigationMesh] 的集合中提供导航和寻路功能。默认情况下,这些将自动从子 " -"[NavigationMeshInstance] 节点中收集,也可以通过 [method navmesh_add] 即时添" -"加。除了基本的寻路之外,这个类还能帮助导航代理与其所导航的网格对齐。" +"[NavigationMeshInstance] 节点中收集。除了基本的寻路之外,这个类还能帮助导航代" +"理与其所导航的网格对齐。" #: doc/classes/Navigation.xml doc/classes/NavigationMesh.xml #: doc/classes/NavigationServer.xml -msgid "https://godotengine.org/asset-library/asset/124" -msgstr "https://godotengine.org/asset-library/asset/124" +msgid "3D Navmesh Demo" +msgstr "" #: doc/classes/Navigation.xml doc/classes/Navigation2D.xml msgid "" @@ -42999,6 +43194,11 @@ msgstr "" "是 [code]true[/code](默认),与每个 [NavigationMesh] 相关的代理属性(半径、" "高度等)在路径计算中被考虑,否则其被忽略。" +#: doc/classes/Navigation.xml +#, fuzzy +msgid "The cell height to use for fields." +msgstr "用于字段Y轴单元的尺寸。" + #: doc/classes/Navigation.xml doc/classes/NavigationMesh.xml msgid "The XZ plane cell size to use for fields." msgstr "用于字段的XZ平面单元尺寸。" @@ -43032,8 +43232,8 @@ msgstr "" #: doc/classes/Navigation2D.xml doc/classes/Navigation2DServer.xml #: doc/classes/NavigationPolygon.xml -msgid "https://godotengine.org/asset-library/asset/117" -msgstr "https://godotengine.org/asset-library/asset/117" +msgid "2D Navigation Demo" +msgstr "" #: doc/classes/Navigation2D.xml msgid "" @@ -43388,9 +43588,10 @@ msgstr "" "可。" #: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml +#, fuzzy msgid "" "The minimal amount of time for which this agent's velocities, that are " -"computed with the collision avoidance algorithim, are safe with respect to " +"computed with the collision avoidance algorithm, are safe with respect to " "other agents. The larger the number, the sooner the agent will respond to " "other agents, but the less freedom in choosing its velocities. Must be " "positive." @@ -43530,14 +43731,14 @@ msgid "" msgstr "" "如果 [code]value[/code] 为 [code]true[/code],则在 [member geometry/" "collision_mask] 中设置指定的 [code]bit[/code]。\n" -"如果 [code]value[/code] 为 [code]false[/code],则清除 [member geometry/" -"collision_mask] 中指定的 [code]bit[/code]。" +"如果 [code]value[/code] 为 [code]false[/code],则在 [member geometry/" +"collision_mask] 中清除指定的 [code]bit[/code]。" #: doc/classes/NavigationMesh.xml doc/classes/NavigationPolygon.xml msgid "" "Sets the vertices that can be then indexed to create polygons with the " "[method add_polygon] method." -msgstr "设置顶点,然后使用[method add_polygon]方法创建多边形。" +msgstr "设置顶点,然后使用 [method add_polygon] 方法创建多边形。" #: doc/classes/NavigationMesh.xml msgid "" @@ -43547,7 +43748,7 @@ msgid "" "multiple of [member cell/height]." msgstr "" "地板到天花板的最小高度,仍然允许被认为是可行走的地板。\n" -"[b]注意:[/b]烘焙时,这个值会向上取整到最接近的[member cell/height]的倍数。" +"[b]注意:[/b]烘焙时,这个值会向上取整到最接近的 [member cell/height] 的倍数。" #: doc/classes/NavigationMesh.xml msgid "" @@ -43556,7 +43757,7 @@ msgid "" "multiple of [member cell/height]." msgstr "" "被认为仍可穿越的最小墙壁高度。\n" -"[b]注意:[/b]烘焙时,该值将向下舍入到最接近的[member cell/height]的倍数。" +"[b]注意:[/b]烘焙时,该值将向下舍入到最接近的 [member cell/height] 的倍数。" #: doc/classes/NavigationMesh.xml msgid "The maximum slope that is considered walkable, in degrees." @@ -43570,7 +43771,7 @@ msgid "" "multiple of [member cell/size]." msgstr "" "侵蚀/缩小远离障碍物的高度场的可行走区域距离。\n" -"[b]注意:[/b]烘焙时,这个值会向上取整到最接近的[member cell/size]的倍数。" +"[b]注意:[/b]烘焙时,这个值会向上取整到最接近的 [member cell/size] 的倍数。" #: doc/classes/NavigationMesh.xml msgid "The Y axis cell size to use for fields." @@ -43607,19 +43808,19 @@ msgid "" "If [code]true[/code], marks walkable spans as not walkable if the clearance " "above the span is less than [member agent/height]." msgstr "" -"如果 [code]true[/code],如果跨度上方的间隙小于 [member agent/height],则将可" -"行走范围标记为不可行走。" +"如果为 [code]true[/code],如果跨度上方的间隙小于 [member agent/height],则将" +"可行走范围标记为不可行走。" #: doc/classes/NavigationMesh.xml 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 msgid "" "If [code]true[/code], marks non-walkable spans as walkable if their maximum " "is within [member agent/max_climb] of a walkable neighbor." msgstr "" -"如果 [code]true[/code],如果它们的最大值在可行走邻域的 [member agent/" +"如果为 [code]true[/code],如果它们的最大值在可行走邻域的 [member agent/" "max_climb] 内,则将不可行走范围标记为可行走。" #: doc/classes/NavigationMesh.xml @@ -43629,20 +43830,21 @@ msgid "" "PARSED_GEOMETRY_STATIC_COLLIDERS] or [constant PARSED_GEOMETRY_BOTH]." msgstr "" "用于扫描静态碰撞的物理层。\n" -"仅在[member geometry/parsed_geometry_type]是[constant " -"PARSED_GEOMETRY_STATIC_COLLIDERS]或[constant PARSED_GEOMETRY_BOTH]时才使用。" +"仅在 [member geometry/parsed_geometry_type]是[constant " +"PARSED_GEOMETRY_STATIC_COLLIDERS] 或 [constant PARSED_GEOMETRY_BOTH] 时才使" +"用。" #: doc/classes/NavigationMesh.xml msgid "" "Determines which type of nodes will be parsed as geometry. See [enum " "ParsedGeometryType] for possible values." -msgstr "决定哪种类型的节点可解析为几何图形。参阅[enum ParsedGeometryType]。" +msgstr "决定哪种类型的节点可解析为几何图形。参阅 [enum ParsedGeometryType]。" #: doc/classes/NavigationMesh.xml msgid "" "The source of the geometry used when baking. See [enum SourceGeometryMode] " "for possible values." -msgstr "烘焙时使用的几何体的源。参阅[enum SourceGeometryMode]。" +msgstr "烘焙时使用的几何体的源。参阅 [enum SourceGeometryMode]。" #: doc/classes/NavigationMesh.xml msgid "" @@ -43652,9 +43854,9 @@ msgid "" "SOURCE_GEOMETRY_GROUPS_EXPLICIT]." msgstr "" "要扫描的几何体组的名称。\n" -"只有当[member geometry/source_geometry_mode]是[constant " -"SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN]或[constant " -"SOURCE_GEOMETRY_GROUPS_EXPLICIT]时才使用。" +"只有当 [member geometry/source_geometry_mode]是[constant " +"SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN] 或 [constant " +"SOURCE_GEOMETRY_GROUPS_EXPLICIT] 时才使用。" #: doc/classes/NavigationMesh.xml msgid "" @@ -43688,7 +43890,7 @@ msgstr "" msgid "" "Partitioning algorithm for creating the navigation mesh polys. See [enum " "SamplePartitionType] for possible values." -msgstr "创建导航网格polys单元的分割算法。参阅[enum SamplePartitionType]。" +msgstr "创建导航网格多边形单元的分割算法。参阅 [enum SamplePartitionType]。" #: doc/classes/NavigationMesh.xml msgid "" @@ -43711,7 +43913,7 @@ msgstr "层分区。用于具有中小型瓷砖的平铺导航网格的不错选 #: doc/classes/NavigationMesh.xml msgid "Represents the size of the [enum SamplePartitionType] enum." -msgstr "表示[enum SamplePartitionType]枚举的大小。" +msgstr "表示 [enum SamplePartitionType] 枚举的大小。" #: doc/classes/NavigationMesh.xml msgid "" @@ -43738,7 +43940,7 @@ msgstr "" #: doc/classes/NavigationMesh.xml msgid "Represents the size of the [enum ParsedGeometryType] enum." -msgstr "表示[enum ParsedGeometryType]枚举的大小。" +msgstr "表示 [enum ParsedGeometryType] 枚举的大小。" #: doc/classes/NavigationMesh.xml msgid "" @@ -43758,12 +43960,12 @@ msgid "" "Uses nodes in a group for geometry. The group is specified by [member " "geometry/source_group_name]." msgstr "" -"使用一个组中的节点进行几何运算。该组由[member geometry/source_group_name]指" +"使用一个组中的节点进行几何运算。该组由 [member geometry/source_group_name] 指" "定。" #: doc/classes/NavigationMesh.xml msgid "Represents the size of the [enum SourceGeometryMode] enum." -msgstr "表示[enum SourceGeometryMode]枚举的大小。" +msgstr "表示 [enum SourceGeometryMode] 枚举的大小。" #: doc/classes/NavigationMeshGenerator.xml msgid "This class is responsible for creating and clearing navigation meshes." @@ -43864,7 +44066,6 @@ msgid "2D obstacle used in navigation for collision avoidance." msgstr "在导航中用于防撞的 2D 障碍物。" #: doc/classes/NavigationObstacle2D.xml -#, fuzzy msgid "" "2D obstacle used in navigation for collision avoidance. The obstacle needs " "navigation data to work correctly. This can be done by having the obstacle " @@ -43873,7 +44074,7 @@ msgid "" msgstr "" "导航中用于防撞的 2D 障碍物。障碍物需要导航数据才能正确工作。可以通过让障碍物" "成为 [Navigation2D] 节点的子项实现,也可以使用 [method set_navigation]。" -"[NavigationObstacle] 是物理安全的。" +"[NavigationObstacle2D] 是物理安全的。" #: doc/classes/NavigationObstacle2D.xml msgid "" @@ -44054,6 +44255,11 @@ msgstr "" "程中请求对地图进行任何修改。" #: doc/classes/NavigationServer.xml +#, fuzzy +msgid "Returns the map cell height." +msgstr "返回地图的单元格大小。" + +#: doc/classes/NavigationServer.xml msgid "" "Returns the normal for the point returned by [method map_get_closest_point]." msgstr "返回 [method map_get_closest_point] 所返回的点的法线。" @@ -44075,6 +44281,11 @@ msgid "Returns the map's up direction." msgstr "返回地图的上方向。" #: doc/classes/NavigationServer.xml +#, fuzzy +msgid "Set the map cell height used to weld the navigation mesh polygons." +msgstr "设置用于焊接导航网格多边形的地图单元格大小。" + +#: doc/classes/NavigationServer.xml msgid "Sets the map up direction." msgstr "设置地图的上方向。" @@ -44125,15 +44336,6 @@ msgstr "" "器时自动转发服务器端口。" #: modules/enet/doc_classes/NetworkedMultiplayerENet.xml -#: doc/classes/NetworkedMultiplayerPeer.xml -msgid "$DOCS_URL/tutorials/networking/high_level_multiplayer.html" -msgstr "$DOCS_URL/tutorials/networking/high_level_multiplayer.html" - -#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml -msgid "http://enet.bespin.org/usergroup0.html" -msgstr "http://enet.bespin.org/usergroup0.html" - -#: modules/enet/doc_classes/NetworkedMultiplayerENet.xml msgid "" "Closes the connection. Ignored if no connection is currently established. If " "this is a server it tries to notify all clients before forcibly " @@ -44457,8 +44659,13 @@ msgstr "" "使用。改变时恕不另行通知。" #: doc/classes/NetworkedMultiplayerPeer.xml -msgid "https://godotengine.org/asset-library/asset/537" -msgstr "https://godotengine.org/asset-library/asset/537" +#, fuzzy +msgid "High-level multiplayer" +msgstr "高级多人游戏API。" + +#: doc/classes/NetworkedMultiplayerPeer.xml +msgid "WebRTC Signaling Demo" +msgstr "" #: doc/classes/NetworkedMultiplayerPeer.xml msgid "" @@ -44834,12 +45041,12 @@ msgstr "" "外,请参阅高级网络教程和相应的演示。" #: doc/classes/Node.xml -msgid "$DOCS_URL/getting_started/step_by_step/nodes_and_scenes.html" -msgstr "$DOCS_URL/getting_started/step_by_step/nodes_and_scenes.html" +msgid "Nodes and Scenes" +msgstr "" #: doc/classes/Node.xml -msgid "https://github.com/godotengine/godot-demo-projects/" -msgstr "https://github.com/godotengine/godot-demo-projects/" +msgid "All Demos" +msgstr "" #: doc/classes/Node.xml msgid "" @@ -44888,6 +45095,7 @@ msgstr "" "当需要更新这个节点的警告时,调用[method update_configuration_warning]。" #: doc/classes/Node.xml +#, fuzzy msgid "" "Called when there is an input event. The input event propagates up through " "the node tree until a node consumes it.\n" @@ -44900,7 +45108,7 @@ msgid "" "_unhandled_key_input] are usually a better fit as they allow the GUI to " "intercept the events first.\n" "[b]Note:[/b] This method is only called if the node is present in the scene " -"tree (i.e. if it's not orphan)." +"tree (i.e. if it's not an orphan)." msgstr "" "当有输入事件时被调用。输入事件通过节点树向上传播,直到有节点将其消耗。\n" "只有当输入处理被启用时才会被调用,如果这个方法被重写,它就会自动完成,可以用 " @@ -44913,6 +45121,7 @@ msgstr "" "非“孤儿”)。" #: doc/classes/Node.xml +#, 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 " @@ -44924,7 +45133,7 @@ msgid "" "Corresponds to the [constant NOTIFICATION_PHYSICS_PROCESS] notification in " "[method Object._notification].\n" "[b]Note:[/b] This method is only called if the node is present in the scene " -"tree (i.e. if it's not orphan)." +"tree (i.e. if it's not an orphan)." msgstr "" "在主循环的物理处理步骤中被调用。物理处理意味着帧率与物理同步,即 " "[code]delta[/code] 变量应该是常量。[code]delta[/code] 的单位是秒。\n" @@ -44936,6 +45145,7 @@ msgstr "" "是“孤儿”)。" #: doc/classes/Node.xml +#, 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 " @@ -44945,7 +45155,7 @@ msgid "" "Corresponds to the [constant NOTIFICATION_PROCESS] notification in [method " "Object._notification].\n" "[b]Note:[/b] This method is only called if the node is present in the scene " -"tree (i.e. if it's not orphan)." +"tree (i.e. if it's not an orphan)." msgstr "" "在主循环的处理步骤中被调用。处理发生在每一帧,并且尽可能快,所以从上一帧开始" "的 [code]delta[/code] 时间不是恒定的。[code]delta[/code] 的单位是秒。\n" @@ -44957,6 +45167,7 @@ msgstr "" "是“孤儿”)。" #: doc/classes/Node.xml +#, fuzzy msgid "" "Called when the node is \"ready\", i.e. when both the node and its children " "have entered the scene tree. If the node has children, their [method _ready] " @@ -44968,10 +45179,10 @@ msgid "" "Usually used for initialization. For even earlier initialization, [method " "Object._init] may be used. See also [method _enter_tree].\n" "[b]Note:[/b] [method _ready] may be called only once for each node. After " -"removing a node from the scene tree and adding again, [code]_ready[/code] " -"will not be called for the second time. This can be bypassed with requesting " -"another call with [method request_ready], which may be called anywhere " -"before adding the node again." +"removing a node from the scene tree and adding it again, [code]_ready[/code] " +"will not be called a second time. This can be bypassed by requesting another " +"call with [method request_ready], which may be called anywhere before adding " +"the node again." msgstr "" "当节点 \"就绪 \"时被调用。子节点的[method _ready]回调会首先被触发,而父节点会" "在之后收到就绪通知。\n" @@ -44984,10 +45195,11 @@ msgstr "" "用[method request_ready]来绕过,它可以在再次添加节点之前的任何地方调用。" #: doc/classes/Node.xml +#, 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 " -"consumes it.\n" +"GUI [Control] item. The input event propagates up through the node tree " +"until a node consumes it.\n" "It is only called if unhandled input processing is enabled, which is done " "automatically if this method is overridden, and can be toggled with [method " "set_process_unhandled_input].\n" @@ -44997,7 +45209,7 @@ msgid "" "better fit than [method _input] as they allow the GUI to intercept the " "events first.\n" "[b]Note:[/b] This method is only called if the node is present in the scene " -"tree (i.e. if it's not orphan)." +"tree (i.e. if it's not an orphan)." msgstr "" "当 [InputEvent] 还未被 [method _input] 或任何 GUI 消耗时调用。输入事件通过节" "点树向上传播,直到一个节点消耗它。\n" @@ -45011,10 +45223,11 @@ msgstr "" "是“孤儿”)。" #: doc/classes/Node.xml +#, 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 " -"consumes it.\n" +"any GUI [Control] item. The input event propagates up through the node tree " +"until a node consumes it.\n" "It is only called if unhandled key input processing is enabled, which is " "done automatically if this method is overridden, and can be toggled with " "[method set_process_unhandled_key_input].\n" @@ -45024,7 +45237,7 @@ msgid "" "fit than [method _input] as they allow the GUI to intercept the events " "first.\n" "[b]Note:[/b] This method is only called if the node is present in the scene " -"tree (i.e. if it's not orphan)." +"tree (i.e. if it's not an orphan)." msgstr "" "当 [InputEventKey] 没有被 [method _input] 或任何 GUI 消耗时被调用。输入事件通" "过节点树向上传播,直到一个节点消耗它。\n" @@ -46025,6 +46238,18 @@ msgstr "" "级值[i]较低[/i]的节点将首先执行其处理回调。" #: doc/classes/Node.xml +msgid "" +"Emitted when a child node enters the scene tree, either because it entered " +"on its own or because this node entered with it." +msgstr "" + +#: doc/classes/Node.xml +msgid "" +"Emitted when a child node exits the scene tree, either because it exited on " +"its own or because this node exited." +msgstr "" + +#: doc/classes/Node.xml msgid "Emitted when the node is ready." msgstr "当节点准备好时触发。" @@ -46196,8 +46421,8 @@ msgstr "" "点。还可以控制节点的渲染顺序。" #: doc/classes/Node2D.xml doc/classes/Vector2.xml -msgid "https://github.com/godotengine/godot-demo-projects/tree/master/2d" -msgstr "https://github.com/godotengine/godot-demo-projects/tree/master/2d" +msgid "All 2D Demos" +msgstr "" #: doc/classes/Node2D.xml msgid "Multiplies the current scale by the [code]ratio[/code] vector." @@ -46408,8 +46633,8 @@ msgstr "" #: doc/classes/NodePath.xml doc/classes/PackedScene.xml doc/classes/Panel.xml #: doc/classes/PanelContainer.xml doc/classes/TileMap.xml #: doc/classes/TileSet.xml -msgid "https://godotengine.org/asset-library/asset/520" -msgstr "https://godotengine.org/asset-library/asset/520" +msgid "2D Role Playing Game Demo" +msgstr "" #: doc/classes/NodePath.xml msgid "" @@ -46465,11 +46690,11 @@ msgid "" "transforming it to a pure property path with no node name (defaults to " "resolving from the current node).\n" "[codeblock]\n" -"# This will be parsed as a node path to the \"x\" property in the \"position" -"\" node\n" +"# This will be parsed as a node path to the \"x\" property in the " +"\"position\" node\n" "var node_path = NodePath(\"position:x\")\n" -"# This will be parsed as a node path to the \"x\" component of the \"position" -"\" property in the current node\n" +"# This will be parsed as a node path to the \"x\" component of the " +"\"position\" property in the current node\n" "var property_path = node_path.get_as_property_path()\n" "print(property_path) # :position:x\n" "[/codeblock]" @@ -46666,8 +46891,8 @@ msgstr "所有非内置类型的基类。" 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()" -"[/code] in GDScript, [code]new Object[/code] in C#, or the \"Construct Object" -"\" node in VisualScript.\n" +"[/code] in GDScript, [code]new Object[/code] in C#, or the \"Construct " +"Object\" node in VisualScript.\n" "Objects do not manage memory. If a class inherits from Object, you will have " "to delete instances of it manually. To do so, call the [method free] method " "from your script or delete the instance from C++.\n" @@ -46728,14 +46953,12 @@ msgstr "" "于 Object 本身,[Reference] 等派生类不受影响。" #: doc/classes/Object.xml doc/classes/Reference.xml doc/classes/Resource.xml -msgid "$DOCS_URL/tutorials/best_practices/node_alternatives.html" -msgstr "$DOCS_URL/tutorials/best_practices/node_alternatives.html" +msgid "When and how to avoid using nodes for everything" +msgstr "" #: doc/classes/Object.xml -msgid "" -"$DOCS_URL/tutorials/scripting/gdscript/gdscript_exports.html#advanced-exports" +msgid "Advanced exports using _get_property_list()" msgstr "" -"$DOCS_URL/tutorials/scripting/gdscript/gdscript_exports.html#advanced-exports" #: doc/classes/Object.xml msgid "" @@ -46967,9 +47190,9 @@ msgid "" "emit_signal(\"game_over\")\n" "[/codeblock]" msgstr "" -"发射给定的[code]信号[/code]。这个信号必须存在,所以它应该是这个类或其父类中的" -"一个内置信号,或者是一个用户定义的信号。这个方法支持可变数量的参数,所以参数" -"是以逗号分隔的列表形式传递。例子。\n" +"发射给定的信号 [code]signal[/code]。这个信号必须存在,所以它应该是这个类或其" +"父类中的一个内置信号,或者是一个用户定义的信号。这个方法支持可变数量的参数," +"所以参数是以逗号分隔的列表形式传递。例子:\n" "[codeblock]\n" "emit_signal(\"hit\", weapon_type, damage)\n" "emit_signal(\"game_over\")\n" @@ -46988,10 +47211,10 @@ msgid "" msgstr "" "立即从内存中删除对象。对于 [Node],您可能希望使用 [method Node.queue_free] 将" "节点排队以在当前帧的末尾安全删除。\n" -"[b]重要提示:[/b] 如果你有一个指向一个对象的变量,一旦对象被释放,它将 [i]不" -"会[/i] 分配为 [code]null[/code]。相反,它会指向一个[i]先前释放的实例[/i],您" -"应该在尝试调用其方法或访问其属性之前使用 [method @GDScript." -"is_instance_valid] 对其进行验证。" +"[b]重要:[/b]如果你有一个指向一个对象的变量,一旦对象被释放,它将[i]不会[/i]" +"被赋为 [code]null[/code]。相反,它会指向一个[i]先前释放的实例[/i],您应该在尝" +"试调用其方法或访问其属性之前使用 [method @GDScript.is_instance_valid] 对其进" +"行验证。" #: doc/classes/Object.xml msgid "" @@ -47039,8 +47262,8 @@ msgstr "" msgid "" "Gets the object's property indexed by the given [NodePath]. The node path " "should be relative to the current object and can use the colon character " -"([code]:[/code]) to access nested properties. Examples: [code]\"position:x" -"\"[/code] or [code]\"material:next_pass:blend_mode\"[/code].\n" +"([code]:[/code]) to access nested properties. Examples: [code]\"position:" +"x\"[/code] or [code]\"material:next_pass:blend_mode\"[/code].\n" "[b]Note:[/b] Even though the method takes [NodePath] argument, it doesn't " "support actual paths to [Node]s in the scene tree, only colon-separated sub-" "property paths. For the purpose of nodes, use [method Node." @@ -47195,9 +47418,10 @@ msgid "" msgstr "从对象的元数据中删除给定条目。另见 [method set_meta]。" #: doc/classes/Object.xml +#, fuzzy msgid "" "Assigns a new value to the given property. If the [code]property[/code] does " -"not exist, nothing will happen.\n" +"not exist or the given value's type doesn't match, nothing will happen.\n" "[b]Note:[/b] In C#, the property name must be specified as snake_case if it " "is defined by a built-in Godot node. This doesn't apply to user-defined " "properties where you should use the same convention as in the C# source " @@ -47223,12 +47447,12 @@ msgid "" "properties where you should use the same convention as in the C# source " "(typically PascalCase)." msgstr "" -"在当前帧的物理完成之后,将给定属性赋一个新值。这相当于通过[method " -"call_deferred]调用[method set],即[code]call_deferred(\"set\", property, " +"在当前帧的物理完成之后,将给定属性赋一个新值。这相当于通过 [method " +"call_deferred] 调用 [method set],即 [code]call_deferred(\"set\", property, " "value)[/code]。\n" -"[b]注意:[/b]在c#中,属性名必须指定为snake_case,如果它是由内置的Godot节点定义" -"的。这并不适用于用户定义的属性,因为您应该使用与c#源代码(通常是PascalCase)相" -"同的约定。" +"[b]注意:[/b]在 C# 中,由 Godot 内置节点定义的属性名必须指定为 snake_case。这" +"并不适用于用户定义的属性,因为您应该使用与 C# 源代码(通常是 PascalCase)相同" +"的约定。" #: doc/classes/Object.xml msgid "" @@ -47439,6 +47663,53 @@ msgstr "用于[Occluder]节点进行遮挡剔除的形状的基类。" msgid "[Occluder]s can use any primitive shape derived from [OccluderShape]." msgstr "[Occluder] 可以使用从 [OccluderShape] 派生的任何原始形状。" +#: doc/classes/OccluderShapePolygon.xml +#, fuzzy +msgid "Polygon occlusion primitive for use with the [Occluder] node." +msgstr "与 [Occluder] 节点一起使用的球形遮挡基本单元。" + +#: doc/classes/OccluderShapePolygon.xml +msgid "" +"[OccluderShape]s are resources used by [Occluder] nodes, allowing geometric " +"occlusion culling.\n" +"The polygon must be a convex polygon. The polygon points can be created and " +"deleted either in the Editor inspector or by calling " +"[code]set_polygon_points[/code]. The points of the edges can be set by " +"dragging the handles in the Editor viewport.\n" +"Additionally each polygon occluder can optionally support a single hole. If " +"you add at least three points in the Editor inspector to the hole, you can " +"drag the edge points of the hole in the Editor viewport.\n" +"In general, the lower the number of edges in polygons and holes, the faster " +"the system will operate at runtime, so in most cases you will want to use 4 " +"points for each." +msgstr "" + +#: doc/classes/OccluderShapePolygon.xml +#, fuzzy +msgid "Sets an individual hole point position." +msgstr "设置单个球体的位置。" + +#: doc/classes/OccluderShapePolygon.xml +#, fuzzy +msgid "Sets an individual polygon point position." +msgstr "设置单个球体的位置。" + +#: doc/classes/OccluderShapePolygon.xml +#, fuzzy +msgid "Allows changing the hole geometry from code." +msgstr "通过代码绘制简单的几何形状。" + +#: doc/classes/OccluderShapePolygon.xml +#, fuzzy +msgid "Allows changing the polygon geometry from code." +msgstr "通过代码绘制简单的几何形状。" + +#: doc/classes/OccluderShapePolygon.xml +msgid "" +"Specifies whether the occluder should operate one way only, or from both " +"sides." +msgstr "" + #: doc/classes/OccluderShapeSphere.xml msgid "Spherical occlusion primitive for use with the [Occluder] node." msgstr "与 [Occluder] 节点一起使用的球形遮挡基本单元。" @@ -48079,39 +48350,50 @@ msgid "" "OS.execute(\"CMD.exe\", [\"/C\", \"cd %TEMP% && dir\"], true, output)\n" "[/codeblock]\n" "[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and " -"Windows." +"Windows.\n" +"[b]Note:[/b] To execute a Windows command interpreter built-in command, " +"specify [code]cmd.exe[/code] in [code]path[/code], [code]/c[/code] as the " +"first argument, and the desired command as the second argument.\n" +"[b]Note:[/b] To execute a PowerShell built-in command, specify " +"[code]powershell.exe[/code] in [code]path[/code], [code]-Command[/code] as " +"the first argument, and the desired command as the second argument.\n" +"[b]Note:[/b] To execute a Unix shell built-in command, specify shell " +"executable name in [code]path[/code], [code]-c[/code] as the first argument, " +"and the desired command as the second argument." msgstr "" "在给定的路径上执行文件,参数以字符串数组的形式传递。将进行平台路径解析。被解" "析的文件必须存在并且是可执行的。\n" -"参数按照给定的顺序使用,并用空格隔开,所以[code]OS.execute(\"ping\", [\"-w" -"\", \"3\", \"godotengine.org\"], false)[/code] 将在系统的外壳中解析为" +"参数按照给定的顺序使用,并用空格隔开,所以 [code]OS.execute(\"ping\", [\"-" +"w\", \"3\", \"godotengine.org\"], false)[/code] 将在系统的 shell 中解析为 " "[code]ping -w 3 godotengine.org[/code]。\n" -"这个方法根据是否启用[code]blocking[/code]模式,有稍微不同的行为。\n" -"如果[code]blocking[/code]为[code]true[/code],Godot线程将暂停执行,等待进程的" -"终止。进程的shell输出将作为一个字符串写入[code]output[/code]数组。当进程终止" -"时,Godot线程将恢复执行。\n" -"如果[code]blocking[/code]为[code]false[/code],Godot线程将在新进程运行时继" -"续。在非阻塞模式下不可能检索shell的输出,所以[code]output[/code]将是空的。\n" +"这个方法根据是否启用 [code]blocking[/code] 模式,有稍微不同的行为。\n" +"如果 [code]blocking[/code] 为 [code]true[/code],Godot 线程将暂停执行,等待进" +"程的终止。进程的 shell 输出将作为一个字符串写入 [code]output[/code] 数组。当" +"进程终止时,Godot 线程将恢复执行。\n" +"如果 [code]blocking[/code] 为 [code]false[/code],Godot 线程将在新进程运行时" +"继续。在非阻塞模式下不可能检索 shell 的输出,所以 [code]output[/code] 将是空" +"的。\n" +"在 Windows 上,如果 [code]open_console[/code] 为 [code]true[/code] 并且进程为" +"命令行应用,则会打开新的终端窗口,在其他平台上会被忽略。\n" "返回值也取决于阻塞模式。当阻塞时,该方法将返回一个进程的退出代码。当非阻塞" "时,该方法返回一个进程ID,你可以用它来监视该进程(并有可能用[method kill]来终" -"止它)。如果进程分叉(非阻塞)或打开(阻塞)失败,该方法将返回[code]-1[/code]" -"或其他退出代码。\n" -"阻塞模式和检索shell输出的例子:\n" +"止它)。如果进程分叉(非阻塞)或打开(阻塞)失败,该方法将返回 [code]-1[/" +"code] 或其他退出代码。\n" +"阻塞模式和检索 shell 输出的例子:\n" "[codeblock]\n" "var output = []\n" "var exit_code = OS.execute(\"ls\", [\"-l\", \"/tmp\"], true, output)\n" "[/codeblock]\n" -"Example of non-blocking mode, running another instance of the project and " -"storing its process ID:\n" +"非阻塞模式实例,运行该项目的另一实例并保存其进程 ID:\n" "[codeblock]\n" "var pid = OS.execute(OS.get_executable_path(), [], false)\n" "[/codeblock]\n" -"If you wish to access a shell built-in or perform a composite command, a " -"platform-specific shell can be invoked. For example:\n" +"如果你希望访问 shell 内置函数或执行复合命令,可以调用平台特定的 shell。例" +"如:\n" "[codeblock]\n" "OS.execute(\"CMD.exe\", [\"/C\", \"cd %TEMP% && dir\"], true, output)\n" "[/codeblock]\n" -"[b]注:[/b]此方法仅在Android, iOS, Linux, macOS和Windows上实现。" +"[b]注意:[/b]此方法仅在 Android、iOS、Linux、macOS 和 Windows 上实现。" #: doc/classes/OS.xml msgid "Returns the scancode of the given string (e.g. \"Escape\")." @@ -48416,9 +48698,10 @@ msgid "" "[code]\"Server\"[/code], [code]\"Windows\"[/code], [code]\"UWP\"[/code], " "[code]\"X11\"[/code]." 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]." +"返回主机操作系统的名称。可能的值有: [code]\"Android\"[/code], " +"[code]\"iOS\"[/code], [code]\"HTML5\"[/code], [code]\"OSX\"[/code], " +"[code]\"Server\"[/code], [code]\"Windows\"[/code], [code]\"UWP\"[/code], " +"[code]\"X11\"[/code]." #: doc/classes/OS.xml msgid "" @@ -48477,8 +48760,8 @@ msgstr "返回窗口大小,包括窗口边框等装饰。" #: doc/classes/OS.xml msgid "" -"Returns the given scancode as a string (e.g. Return values: [code]\"Escape" -"\"[/code], [code]\"Shift+Escape\"[/code]).\n" +"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 "" @@ -48616,17 +48899,16 @@ msgid "" "Returns the total number of available tablet drivers.\n" "[b]Note:[/b] This method is implemented on Windows." msgstr "" -"返回可用的写字板(译注:或触摸板、数位板,在此处尚未明确)驱动程序的总数。\n" -"[b]注意:[/b]该方法是在Windows上实现的。" +"返回可用的数位板驱动程序的总数。\n" +"[b]注意:[/b]该方法在 Windows 上实现。" #: doc/classes/OS.xml msgid "" "Returns the tablet driver name for the given index.\n" "[b]Note:[/b] This method is implemented on Windows." msgstr "" -"返回给定索引的写字板(译注:或触摸板、数位板,在此处尚未明确)驱动程序名" -"称。\n" -"[b]注意:[/b]该方法是在Windows上实现的。" +"返回给定索引的数位板驱动程序名称。\n" +"[b]注意:[/b]该方法在 Windows 上实现。" #: doc/classes/OS.xml msgid "" @@ -48823,6 +49105,11 @@ msgstr "" "[b]注意:[/b] 这个方法在macOS上实现。" #: doc/classes/OS.xml +#, fuzzy +msgid "Returns [code]true[/code] if there is content on the clipboard." +msgstr "如果文件当前被打开,返回[code]true[/code]。" + +#: doc/classes/OS.xml msgid "" "Returns [code]true[/code] if the environment variable with the name " "[code]variable[/code] exists.\n" @@ -48965,6 +49252,16 @@ msgstr "" "[b]注意:[/b] 本方法可在Linux、macOS和Windows上实现。" #: doc/classes/OS.xml +#, fuzzy +msgid "" +"Converts a physical (US QWERTY) [code]scancode[/code] to one in the active " +"keyboard layout.\n" +"[b]Note:[/b] This method is implemented on Linux, macOS and Windows." +msgstr "" +"设置活动键盘布局。\n" +"[b]注:[/b]此方法可在Linux、macOS和Windows上实现。" + +#: doc/classes/OS.xml msgid "" "Sets active keyboard layout.\n" "[b]Note:[/b] This method is implemented on Linux, macOS and Windows." @@ -49041,8 +49338,8 @@ msgid "" "Initialises the singleton for the system MIDI driver.\n" "[b]Note:[/b] This method is implemented on Linux, macOS and Windows." msgstr "" -"初始化系统MIDI驱动的单例。\n" -"[b]注意:[/b] 该方法在Linux、macOS和Windows上实现。" +"初始化系统 MIDI 驱动的单例。\n" +"[b]注意:[/b]该方法在 Linux、macOS 和 Windows 上实现。" #: doc/classes/OS.xml msgid "" @@ -49276,7 +49573,7 @@ msgstr "" #: doc/classes/OS.xml msgid "The clipboard from the host OS. Might be unavailable on some platforms." -msgstr "主机操作系统的剪贴板在某些平台上可能不可用。" +msgstr "宿主操作系统的剪贴板。在某些平台上可能不可用。" #: doc/classes/OS.xml msgid "The current screen index (starting from 0)." @@ -49311,23 +49608,24 @@ 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],引擎会尝试在游戏运行时保持屏幕开启。在手机上有用。" +"如果为 [code]true[/code],则引擎会尝试在游戏运行时保持屏幕开启。在手机上有" +"用。" #: doc/classes/OS.xml msgid "" "If [code]true[/code], the engine optimizes for low processor usage by only " "refreshing the screen if needed. Can improve battery consumption on mobile." msgstr "" -"如果[code]true[/code],引擎会通过只在需要时刷新屏幕来优化处理器的使用。可以改" -"善移动设备上的电池消耗。" +"如果为 [code]true[/code],则引擎会通过只在需要时刷新屏幕来优化处理器的使用。" +"可以改善移动设备上的电池消耗。" #: doc/classes/OS.xml msgid "" "The amount of sleeping between frames when the low-processor usage mode is " "enabled (in microseconds). Higher values will result in lower CPU usage." msgstr "" -"启用低处理器使用模式时,帧之间的休眠量(以微秒计)。较高的值将导致较低的CPU使" -"用率。" +"启用低处理器使用模式时,帧之间的休眠量(单位为微秒)。较高的值将导致较低的 " +"CPU 使用率。" #: doc/classes/OS.xml msgid "" @@ -49358,11 +49656,11 @@ msgstr "当前屏幕方向。" #: doc/classes/OS.xml msgid "The current tablet driver in use." -msgstr "当前正在使用的书写板(译注:或数位板、触摸板,尚未定论)驱动程序。" +msgstr "当前正在使用的数位板驱动程序。" #: doc/classes/OS.xml msgid "If [code]true[/code], vertical synchronization (Vsync) is enabled." -msgstr "如果 [code]true[/code],则启用垂直同步 (Vsync)。" +msgstr "如果为 [code]true[/code],则启用垂直同步(Vsync)。" #: doc/classes/OS.xml msgid "" @@ -49386,21 +49684,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] 将" -"禁用逐像素透明度。" +"如果为 [code]true[/code],则移除窗口边框。\n" +"[b]注意:[/b]将 [code]window_borderless[/code] 设置为 [code]false[/code] 将禁" +"用逐像素透明度。" #: doc/classes/OS.xml msgid "If [code]true[/code], the window is fullscreen." -msgstr "如果[code]true[/code],窗口为全屏。" +msgstr "如果为 [code]true[/code],则窗口为全屏。" #: doc/classes/OS.xml msgid "If [code]true[/code], the window is maximized." -msgstr "如果[code]true[/code],窗口被最大化。" +msgstr "如果为 [code]true[/code],则窗口被最大化。" #: doc/classes/OS.xml msgid "If [code]true[/code], the window is minimized." -msgstr "如果[code]true[/code],窗口被最小化。" +msgstr "如果为 [code]true[/code],则窗口被最小化。" #: doc/classes/OS.xml msgid "" @@ -49415,12 +49713,12 @@ msgid "" "ProjectSettings.display/window/per_pixel_transparency/enabled] to set it at " "startup instead." msgstr "" -"如果[code]true[/code],则窗口背景是透明的,窗口框架被移除。\n" +"如果为 [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 上实现。对于 " +"[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] 在启动时进行设置。" @@ -49432,7 +49730,7 @@ msgstr "窗口相对于屏幕的位置,原点为左上角,+Y 轴向下,+X #: doc/classes/OS.xml msgid "If [code]true[/code], the window is resizable by the user." -msgstr "如果 [code]true[/code],用户可以调整窗口大小。" +msgstr "如果为 [code]true[/code],则用户可以调整窗口大小。" #: doc/classes/OS.xml msgid "The size of the window (without counting window manager decorations)." @@ -50201,12 +50499,12 @@ msgstr "" "点和容器。" #: doc/classes/Panel.xml -msgid "https://godotengine.org/asset-library/asset/516" -msgstr "https://godotengine.org/asset-library/asset/516" +msgid "2D Finite State Machine Demo" +msgstr "" #: doc/classes/Panel.xml doc/classes/Skeleton.xml doc/classes/SkeletonIK.xml -msgid "https://godotengine.org/asset-library/asset/523" -msgstr "https://godotengine.org/asset-library/asset/523" +msgid "3D Inverse Kinematics Demo" +msgstr "" #: doc/classes/Panel.xml msgid "The style of this [Panel]." @@ -50360,7 +50658,6 @@ msgid "GPU-based 3D particle emitter." msgstr "基于GPU的3D粒子发射器。" #: doc/classes/Particles.xml -#, fuzzy msgid "" "3D particle node used to create a variety of particle systems and effects. " "[Particles] features an emitter that generates some number of particles at a " @@ -50388,20 +50685,19 @@ msgstr "" "使用 [code]process_material[/code] 属性添加 [ParticlesMaterial] 来配置粒子外" "观和行为。或者,您可以添加一个将应用于所有粒子的 [ShaderMaterial]。\n" "[b]注意:[/b][Particles] 仅在使用 GLES3 渲染器时有效。如果使用 GLES2 渲染器," -"请改用[CPUParticles]。您可以通过选择节点,单击 3D 编辑器视窗顶部的[b]粒子[/b]" -"菜单,然后选择[b]转换为 CPUParticles[/b],将 [Particles] 转换为 " +"请改用 [CPUParticles]。您可以通过选择节点,单击 3D 编辑器视窗顶部的" +"[b]Particles[/b]菜单,然后选择[b]转换为 CPUParticles[/b],将 [Particles] 转换" +"为 [CPUParticles]。\n" +"[b]注意:[/b]在 macOS 上,渲染 [Particles] 比 [CPUParticles] 要慢上很多,因为" +"变换反馈是在 CPU 上实现的,而不是 GPU。以 macOS 为目标时,请考虑使用 " "[CPUParticles]。\n" -"[b]注意:[/b]在处理粒子节点后,记得通过选择它来更新其[member " -"visibility_aabb],单击 3D 编辑器视窗顶部的[b]粒子[/b]菜单,然后选择[b]生成可" -"见 AABB[/b]。否则,粒子可能会由于相机位置和角度的改变突然消失。" +"[b]注意:[/b]在处理粒子节点后,记得通过选择它来更新其 [member " +"visibility_aabb],单击 3D 编辑器视窗顶部的[b]Particles[/b]菜单,然后选择[b]生" +"成可见 AABB[/b]。否则,粒子可能会由于相机位置和角度的改变突然消失。" #: doc/classes/Particles.xml -msgid "" -"$DOCS_URL/tutorials/performance/vertex_animation/" -"controlling_thousands_of_fish.html" +msgid "Controlling thousands of fish with Particles" msgstr "" -"$DOCS_URL/tutorials/performance/vertex_animation/" -"controlling_thousands_of_fish.html" #: doc/classes/Particles.xml msgid "" @@ -50505,7 +50801,6 @@ msgid "GPU-based 2D particle emitter." msgstr "基于GPU的2D粒子发射器。" #: doc/classes/Particles2D.xml -#, fuzzy msgid "" "2D particle node used to create a variety of particle systems and effects. " "[Particles2D] features an emitter that generates some number of particles at " @@ -50536,13 +50831,20 @@ msgstr "" "观和行为。或者,您可以添加将应用于所有粒子的 [ShaderMaterial]。\n" "[b]注意:[/b][Particles2D] 仅在使用 GLES3 渲染器时有效。如果使用 GLES2 渲染" "器,请改用 [CPUParticles2D]。您可以通过选择节点将 [Particles2D] 转换为 " -"[CPUParticles2D],单击 2D 编辑器视口顶部的[b]粒子[/b]菜单,然后选择[b]转换为 " -"CPUParticles2D[/b]。\n" +"[CPUParticles2D],单击 2D 编辑器视口顶部的[b]Particles[/b]菜单,然后选择[b]转" +"换为 CPUParticles2D[/b]。\n" +"[b]注意:[/b]在 macOS 上,渲染 [Particles2D] 比 [CPUParticles2D] 要慢上很多," +"因为变换反馈是在 CPU 上实现的,而不是 GPU。以 macOS 为目标时,请考虑使用 " +"[CPUParticles2D]。\n" "[b]注意:[/b]在粒子节点上工作后,记得通过选择它来更新它的 [member " -"visibility_rect],单击 2D 编辑器视口顶部的[b]粒子[/b]菜单,然后选择[b]生成可" -"见矩形[/b]。否则,根据相机位置和角度,粒子可能会突然消失。\n" -"[b]注意:[/b]与[CPUParticles2D]不同,[Particles2D]目前忽略[AtlasTexture]s中定" -"义的纹理区域。" +"visibility_rect],单击 2D 编辑器视口顶部的[b]Particles[/b]菜单,然后选择[b]生" +"成可见矩形[/b]。否则,根据相机位置和角度,粒子可能会突然消失。\n" +"[b]注意:[/b]与 [CPUParticles2D] 不同,[Particles2D] 目前会忽略 " +"[AtlasTexture] 中定义的纹理区域。" + +#: doc/classes/Particles2D.xml +msgid "Particle systems (2D)" +msgstr "" #: doc/classes/Particles2D.xml msgid "Returns a rectangle containing the positions of all existing particles." @@ -51433,9 +51735,8 @@ msgstr "" #: doc/classes/Physics2DDirectSpaceState.xml #: doc/classes/PhysicsDirectBodyState.xml #: doc/classes/PhysicsDirectSpaceState.xml doc/classes/RayCast.xml -#: doc/classes/RayCast2D.xml doc/classes/World.xml doc/classes/World2D.xml -msgid "$DOCS_URL/tutorials/physics/ray-casting.html" -msgstr "$DOCS_URL/tutorials/physics/ray-casting.html" +msgid "Ray-casting" +msgstr "" #: doc/classes/Physics2DDirectBodyState.xml doc/classes/RigidBody2D.xml msgid "Adds a constant directional force without affecting rotation." @@ -52834,7 +53135,7 @@ msgid "" "This is equivalent to [code]apply_impulse(Vector3(0, 0, 0), impulse)[/code]." msgstr "" "施加单一方向的冲量而不影响旋转。\n" -"这等价于[code]apply_impulse(Vector3(0,0,0), impulse)[/code]。" +"这等价于 [code]apply_impulse(Vector3(0, 0, 0), impulse)[/code]。" #: doc/classes/PhysicsDirectBodyState.xml msgid "" @@ -53436,7 +53737,7 @@ msgstr "如果[code]true[/code],铰链具有最大和最小旋转。" #: doc/classes/PhysicsServer.xml msgid "If [code]true[/code], a motor turns the Hinge." -msgstr "如果[code]true[/code],电机将转动铰链。" +msgstr "如果为 [code]true[/code],则马达将转动铰链。" #: doc/classes/PhysicsServer.xml doc/classes/SliderJoint.xml msgid "" @@ -53598,13 +53899,13 @@ msgstr "设置时,可以做旋转运动。" #: doc/classes/PhysicsServer.xml msgid "If set, there is a rotational motor across these axes." -msgstr "设置时,在这些轴上有旋转动力。" +msgstr "设置时,存在跨这些轴的旋转马达。" #: doc/classes/PhysicsServer.xml msgid "" "If set, there is a linear motor on this axis that targets a specific " "velocity." -msgstr "设置时,在该轴上有指定速度的线性动力。" +msgstr "设置时,存在跨这些轴的线性马达,以指定的速度为目标。" #: doc/classes/PhysicsServer.xml msgid "The [Shape] is a [PlaneShape]." @@ -53801,8 +54102,8 @@ msgid "" "approximately equal, by running [method @GDScript.is_equal_approx] on each " "component." msgstr "" -"通过在每个组件上运行[method @GDScript.is_equal_approx],如果此平面和" -"[code]plane[/code]近似相等,则返回[code]true[/code]。" +"如果此平面和 [code]plane[/code] 近似相等,则返回[code]true[/code],方法是对每" +"个分量运行 [method @GDScript.is_equal_approx]。" #: doc/classes/Plane.xml msgid "" @@ -54433,8 +54734,8 @@ msgstr "" #: doc/classes/PoolVector2Array.xml doc/classes/TileMap.xml #: doc/classes/TileSet.xml -msgid "https://godotengine.org/asset-library/asset/519" -msgstr "https://godotengine.org/asset-library/asset/519" +msgid "2D Navigation Astar Demo" +msgstr "" #: doc/classes/PoolVector2Array.xml msgid "" @@ -54966,6 +55267,11 @@ msgstr "" "[b]注:[/b]被移除项后的项的索引将被移位1。" #: doc/classes/PopupMenu.xml +#, fuzzy +msgid "Sets the currently focused item as the given [code]index[/code]." +msgstr "设置在索引[code]idx[/code]处项的图标。" + +#: doc/classes/PopupMenu.xml msgid "Hides the [PopupMenu] when the window loses focus." msgstr "当窗口失去焦点时隐藏[PopupMenu]。" @@ -55830,7 +56136,6 @@ msgid "" msgstr "设置配置值的顺序(保存到配置文件时会产生影响)。" #: doc/classes/ProjectSettings.xml -#, fuzzy msgid "" "Sets the value of a setting.\n" "[b]Example:[/b]\n" @@ -55844,7 +56149,8 @@ msgstr "" "[b]示例:[/b]\n" "[codeblock]\n" "ProjectSettings.set_setting(\"application/config/name\", \"Example\")\n" -"[/codeblock]" +"[/codeblock]\n" +"也可以用于清除自定义项目设置。可通过将值修改为 [code]null[/code] 实现。" #: doc/classes/ProjectSettings.xml msgid "" @@ -56589,8 +56895,8 @@ msgstr "碰撞形状的颜色,当在调试菜单中启用“可见碰撞形状 #: doc/classes/ProjectSettings.xml msgid "" -"Color of the disabled navigation geometry, visible when \"Visible Navigation" -"\" is enabled in the Debug menu." +"Color of the disabled navigation geometry, visible when \"Visible " +"Navigation\" is enabled in the Debug menu." msgstr "被禁用的导航几何图形的颜色,在调试菜单中启用“可见导航”时可见。" #: doc/classes/ProjectSettings.xml @@ -56699,8 +57005,8 @@ msgid "" "window is used to emulate fullscreen. On macOS, a new desktop is used to " "display the running project.\n" "Regardless of the platform, enabling fullscreen will change the window size " -"to match the monitor's size. Therefore, make sure your project supports [url=" -"$DOCS_URL/tutorials/rendering/multiple_resolutions.html]multiple " +"to match the monitor's size. Therefore, make sure your project supports " +"[url=$DOCS_URL/tutorials/rendering/multiple_resolutions.html]multiple " "resolutions[/url] when enabling fullscreen mode.\n" "[b]Note:[/b] This setting is ignored on iOS, Android, and HTML5." msgstr "" @@ -56733,13 +57039,13 @@ msgstr "" msgid "" "If greater than zero, overrides the window height when running the game. " "Useful for testing stretch modes." -msgstr "如果大于0,则在运行游戏时覆盖窗口高度。用于测试拉伸模式。" +msgstr "如果大于 0,则在运行游戏时覆盖窗口高度。用于测试拉伸模式。" #: doc/classes/ProjectSettings.xml msgid "" "If greater than zero, overrides the window width when running the game. " "Useful for testing stretch modes." -msgstr "如果大于0,则在运行游戏时覆盖窗口宽度。用于测试拉伸模式。" +msgstr "如果大于 0,则在运行游戏时覆盖窗口宽度。用于测试拉伸模式。" #: doc/classes/ProjectSettings.xml msgid "" @@ -56754,7 +57060,7 @@ msgstr "" msgid "" "Specifies the tablet driver to use. If left empty, the default driver will " "be used." -msgstr "指定要使用的平板驱动程序。如果为空,将使用默认驱动程序。" +msgstr "指定要使用的数位板驱动程序。如果为空,将使用默认驱动程序。" #: doc/classes/ProjectSettings.xml msgid "" @@ -56764,9 +57070,9 @@ msgid "" "synchronization will be disabled, however, many platforms will enforce it " "regardless (such as mobile platforms and HTML5)." msgstr "" -"如果[code]true[/code],则启用垂直同步。这消除了在移动场景中可能出现的撕裂,以" -"较高的输入延迟和较低的帧率为代价。如果[code]false[/code],垂直同步将被禁用," -"然而,许多平台仍将执行它(如手机平台和HTML5)。" +"如果为 [code]true[/code],则启用垂直同步。这消除了在移动场景中可能出现的撕" +"裂,以较高的输入延迟和较低的帧率为代价。如果为 [code]false[/code],垂直同步将" +"被禁用,然而,许多平台仍将执行它(如移动平台和 HTML5)。" #: doc/classes/ProjectSettings.xml msgid "" @@ -56778,11 +57084,11 @@ msgid "" "experienced by some users. However, some users have experienced a Vsync " "framerate halving (e.g. from 60 FPS to 30 FPS) when using it." msgstr "" -"如果[code]Use Vsync[/code]已启用,且[code]true[/code],则在窗口模式下启用排字" -"器时,可通过操作系统的窗口排字器实现垂直同步。这将防止在某些情况下卡顿。" -"(Windows)。\n" -"[b]注:[/b]这个选项是实验性的,旨在缓解一些用户的卡顿体验。然而,有些用户在使" -"用它时体验到垂直同步帧率减半(例如从60 FPS降至30 FPS)。" +"如果 [code]Use Vsync[/code] 已启用,且这个设置为 [code]true[/code],则在窗口" +"模式下且启用了合成器时,会通过操作系统的窗口合成器启用垂直同步。这将防止在某" +"些情况下卡顿。(仅限 Windows)。\n" +"[b]注意:[/b]这个选项是实验性的,旨在缓解一些用户的卡顿体验。然而,有些用户在" +"使用它时体验到垂直同步帧率减半(例如从 60 FPS 降至 30 FPS)。" #: doc/classes/ProjectSettings.xml msgid "" @@ -56820,9 +57126,9 @@ msgstr "" #: doc/classes/ProjectSettings.xml 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 " -"your scene files, especially if you use built-in scripts which are " +"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 your scene files, especially if you use built-in scripts which are " "serialized in the scene files." msgstr "" "脚本编辑器的“在文件中查找”特性中包含的基于文本的文件扩展名。你可以添加例如" @@ -56834,12 +57140,14 @@ msgid "" "Load the previously opened VCS plugin when the editor starts up. This is set " "to [code]true[/code] whenever a new VCS plugin is initialized." msgstr "" +"编辑器启动时加载上一次打开的 VCS 插件。初始化新 VCS 插件时,会被设为 " +"[code]true[/code]。" #: doc/classes/ProjectSettings.xml msgid "" "Last loaded VCS plugin name. Used to autoload the plugin when the editor " "starts up." -msgstr "" +msgstr "上次加载的 VCS 插件名称。用于在编辑器启动时自动加载该插件。" #: doc/classes/ProjectSettings.xml msgid "" @@ -58523,6 +58831,7 @@ msgstr "" "义。" #: doc/classes/ProjectSettings.xml +#, fuzzy msgid "" "If set to [code]Asynchronous[/code] and available on the target device, " "asynchronous compilation of shaders is enabled (in contrast to " @@ -58539,12 +58848,14 @@ msgid "" "situation, that the engine generates internally so it can be used from the " "beginning while the traditional conditioned, optimized version of it is " "being compiled.\n" -"In order to save some loading time, you can use [code]Asynchronous + Cache[/" -"code], which also causes the ubershaders to be cached into storage so they " -"can be ready faster next time they are used (provided the platform provides " -"support for it).\n" -"[b]Warning:[/b] Async. compilation is currently only supported for spatial " -"and particle materials/shaders." +"To reduce loading times after the project has been launched at least once, " +"you can use [code]Asynchronous + Cache[/code]. This also causes the " +"ubershaders to be cached into storage so they can be ready faster next time " +"they are used (provided the platform provides support for it).\n" +"[b]Note:[/b] Asynchronous compilation is currently only supported for " +"spatial (3D) and particle materials/shaders. CanvasItem (2D) shaders will " +"not use asynchronous compilation even if this setting is set to " +"[code]Asynchronous[/code] or [code]Asynchronous + Cache[/code]." msgstr "" "设为 [code]Asynchronous[/code] 时,如果目标设备具备条件,就会启用着色器的异步" "编译(此处点题 [code]Asynchronous[/code])。\n" @@ -58676,6 +58987,21 @@ msgstr "" "用于交错属性数据。如果用于移动设备,建议启用。切换后需要手动重新导入网格。" #: doc/classes/ProjectSettings.xml +#, fuzzy +msgid "" +"Determines the maximum number of polygon occluders that will be used at any " +"one time.\n" +"Although you can have many occluders in a scene, each frame the system will " +"choose from these the most relevant based on a screen space metric, in order " +"to give the best overall performance.\n" +"A greater number of polygons can potentially cull more objects, however the " +"cost of culling calculations scales with the number of occluders." +msgstr "" +"确定将在任何时候使用的球体遮挡器的最大数量。\n" +"尽管一个场景中可以有许多遮挡物,但系统会根据屏幕空间度量从这些遮挡物中选择最" +"相关的每一帧,以提供最佳的整体性能。" + +#: doc/classes/ProjectSettings.xml msgid "" "Determines the maximum number of sphere occluders that will be used at any " "one time.\n" @@ -58809,10 +59135,12 @@ msgstr "" "和照明时,这会提高高透支场景的性能。" #: doc/classes/ProjectSettings.xml +#, fuzzy 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 " -"the nearest power of 2." +"the nearest power of 2. This setting can be changed at run-time; the change " +"will be applied immediately." msgstr "" "方向性阴影的大小,以像素为单位。更高的值会导致更清晰的阴影,但会以性能为代" "价。该值将被四舍五入到最接近的2次方。" @@ -59382,6 +59710,12 @@ msgid "" msgstr "" "用于 [VisibilityNotifier2D] 使用的 2D 哈希网格的单元格大小,以像素为单位。" +#: doc/classes/ProjectSettings.xml +msgid "" +"Objects can use this signal to restrict reading of settings only to " +"situations where a change has been made." +msgstr "" + #: doc/classes/ProximityGroup.xml msgid "General-purpose proximity detection node." msgstr "通用的靠近检测节点。" @@ -59403,8 +59737,8 @@ msgstr "" #: doc/classes/QuadMesh.xml doc/classes/Viewport.xml #: doc/classes/ViewportTexture.xml -msgid "https://godotengine.org/asset-library/asset/129" -msgstr "https://godotengine.org/asset-library/asset/129" +msgid "2D in 3D Demo" +msgstr "" #: doc/classes/QuadMesh.xml msgid "Offset of the generated Quad. Useful for particles." @@ -59436,12 +59770,6 @@ msgstr "" "加有效,并且对浮点错误有很强的抵抗力。" #: doc/classes/Quat.xml -msgid "" -"$DOCS_URL/tutorials/3d/using_transforms.html#interpolating-with-quaternions" -msgstr "" -"$DOCS_URL/tutorials/3d/using_transforms.html#interpolating-with-quaternions" - -#: doc/classes/Quat.xml msgid "Constructs a quaternion from the given [Basis]." msgstr "从给定的 [Basis] 构造一个四元数。" @@ -59499,12 +59827,12 @@ msgid "" "quaternion. Returned vector contains the rotation angles in the format (X " "angle, Y angle, Z angle)." msgstr "" -"返回与单位四元数所代表的旋转相对应的欧拉角(按照YXZ惯例:分解时,先Z后X,最后" -"是Y)。返回的向量包含格式为(X角、Y角、Z角)的旋转角。" +"返回与单位四元数所代表的旋转相对应的欧拉角(按照 YXZ 惯例:分解时先 Z 后 X," +"最后是 Y)。返回的向量包含格式为(X角、Y角、Z角)的旋转角。" #: doc/classes/Quat.xml msgid "Returns the inverse of the quaternion." -msgstr "返回四元数的取逆。(译注:即xyz的值分别取反)." +msgstr "返回四元数的取逆。" #: doc/classes/Quat.xml msgid "" @@ -59650,8 +59978,9 @@ msgstr "" "不是实际的默认种子。" #: doc/classes/RandomNumberGenerator.xml -msgid "$DOCS_URL/tutorials/math/random_number_generation.html" -msgstr "$DOCS_URL/tutorials/math/random_number_generation.html" +#, fuzzy +msgid "Random number generation" +msgstr "设置随机数生成器的种子。" #: doc/classes/RandomNumberGenerator.xml msgid "" @@ -60142,18 +60471,15 @@ msgid "2D axis-aligned bounding box." msgstr "2D 轴对齐边界框。" #: doc/classes/Rect2.xml -#, 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]。\n" -"不支持负数的 [member size],大多数方法都无法正常工作。请使用 [method abs] 获" -"取正数大小的 Rect2。" +"[Rect2] 在 3D 中对应 [AABB]。" #: doc/classes/Rect2.xml msgid "Constructs a [Rect2] by position and size." @@ -60202,7 +60528,8 @@ msgstr "" "[/codeblock]" #: doc/classes/Rect2.xml -msgid "Returns the area of the [Rect2]." +#, fuzzy +msgid "Returns the area of the [Rect2]. See also [method has_no_area]." msgstr "返回 [Rect2] 面积。" #: doc/classes/Rect2.xml @@ -60230,8 +60557,18 @@ msgid "" msgstr "返回[Rect2]向[enum Margin]方向增长给定数量单位的副本。" #: doc/classes/Rect2.xml -msgid "Returns [code]true[/code] if the [Rect2] is flat or empty." -msgstr "如果[Rect2]为flat或空,则返回[code]true[/code]。" +#, fuzzy +msgid "" +"Returns [code]true[/code] if the [Rect2] is flat or empty, [code]false[/" +"code] otherwise. See also [method get_area].\n" +"[b]Note:[/b] If the [Rect2] has a negative size and is not flat or empty, " +"[method has_no_area] will return [code]true[/code]." +msgstr "" +"如果对象从给定的 [code]class[/code] 中继承,则返回 [code]true[/code]。另请参" +"阅 [method get_class]。\n" +"[b]注:[/b] [method is_class] 没有考虑 [code]class_name[/code] 声明。如果对象" +"有 [code]class_name[/code] 定义,[method is_class] 将为该名称返回 " +"[code]false[/code] 。" #: doc/classes/Rect2.xml msgid "" @@ -60265,8 +60602,8 @@ msgid "" "approximately equal, by calling [code]is_equal_approx[/code] on each " "component." msgstr "" -"通过在每个组件上调用 [code]is_equal_approx[/code],如果此 [Rect2] 和 " -"[code]rect[/code] 大致相等,则返回 [code]true[/code]。" +"如果此 [Rect2] 和 [code]rect[/code] 大致相等,则返回 [code]true[/code],方法" +"是对每个分量运行 [code]is_equal_approx[/code]。" #: doc/classes/Rect2.xml msgid "Returns a larger [Rect2] that contains this [Rect2] and [code]b[/code]." @@ -60309,7 +60646,7 @@ msgid "" "will linger on for a while before being removed." msgstr "" "任何保持引用计数对象的基类。 [Resource] 和许多其他辅助对象继承了这个类。\n" -"与其他 [Object] 类型不同,References 保留一个内部引用计数器,以便在不使用且仅" +"与其他 [Object] 类型不同,Reference 保留一个内部引用计数器,以便在不使用且仅" "在那时自动释放。因此,不需要使用 [method Object.free] 手动释放引用。\n" "在绝大多数用例中,您只需要实例化和使用 [Reference] 派生类型。此类中提供的方法" "仅适用于高级用户,如果误用可能会导致问题。\n" @@ -60428,10 +60765,6 @@ msgstr "" "把跨越多个反射探针的大网格分割成小网格。" #: doc/classes/ReflectionProbe.xml -msgid "$DOCS_URL/tutorials/3d/reflection_probes.html" -msgstr "$DOCS_URL/tutorials/3d/reflection_probes.html" - -#: doc/classes/ReflectionProbe.xml msgid "" "If [code]true[/code], enables box projection. This makes reflections look " "more correct in rectangle-shaped rooms by offsetting the reflection center " @@ -60515,10 +60848,15 @@ msgstr "" "[code]internal_ambient_*[/code]属性控制。" #: doc/classes/ReflectionProbe.xml +#, fuzzy msgid "" "The maximum distance away from the [ReflectionProbe] an object can be before " "it is culled. Decrease this to improve performance, especially when using " -"the [constant UPDATE_ALWAYS] [member update_mode]." +"the [constant UPDATE_ALWAYS] [member update_mode].\n" +"[b]Note:[/b] The maximum reflection distance is always at least equal to the " +"[member extents]. This means that decreasing [member max_distance] will not " +"always cull objects from reflections, especially if the reflection probe's " +"[member extents] are already large." msgstr "" "设置对象在被剔除前与该 [ReflectionProbe] 的最大距离。调低可以提升性能,尤其是" "使用 [constant UPDATE_ALWAYS] 作为 [member update_mode] 时。" @@ -60649,9 +60987,9 @@ msgstr "" "var regex = RegEx.new()\n" "regex.compile(\"\\\\w-(\\\\d+)\")\n" "[/codeblock]\n" -"在为表达式转义之前,必须先为GDScript转义搜索模式。例如,[code]compile(\"\\\\d" -"+\")[/code]会被RegEx读成[code]\\d+[/code]。同样,[code]compile(\"\\\"(?:\\\\" -"\\\\.|[^\\\"])*\\\")[/code]会被读作[code]\"(?:\\.|[^\"])*\"[/code]。\n" +"在为表达式转义之前,必须先为GDScript转义搜索模式。例如,[code]compile(\"\\" +"\\d+\")[/code]会被RegEx读成[code]\\d+[/code]。同样,[code]compile(\"\\\"(?:\\" +"\\\\\\.|[^\\\"])*\\\")[/code]会被读作[code]\"(?:\\.|[^\"])*\"[/code]。\n" "使用 [method search] ,你可以在给定的文本中匹配模式。如果匹配到一个模式,将返" "回[RegExMatch],你可以使用[method RegExMatch.get_string]和[method RegExMatch." "get_start]等方法检索结果的细节。\n" @@ -60958,8 +61296,8 @@ msgstr "" "行,并释放不再使用的资源。这意味着未使用的资源在被删除之前会停留一段时间。" #: doc/classes/Resource.xml -msgid "$DOCS_URL/tutorials/scripting/resources.html" -msgstr "$DOCS_URL/tutorials/scripting/resources.html" +msgid "Resources" +msgstr "" #: doc/classes/Resource.xml msgid "" @@ -61260,6 +61598,10 @@ msgstr "" "器,请参阅[EditorImportPlugin]。" #: doc/classes/ResourceImporter.xml +msgid "Import plugins" +msgstr "" + +#: doc/classes/ResourceImporter.xml msgid "The default import order." msgstr "默认导入顺序。" @@ -61664,8 +62006,12 @@ msgstr "" "(例如大多数表情符号)。它们将显示为未知字符。这将在 Godot 4.0 中解决。" #: doc/classes/RichTextLabel.xml -msgid "https://godotengine.org/asset-library/asset/132" -msgstr "https://godotengine.org/asset-library/asset/132" +msgid "BBCode in RichTextLabel" +msgstr "" + +#: doc/classes/RichTextLabel.xml +msgid "GUI Rich Text/BBcode Demo" +msgstr "" #: doc/classes/RichTextLabel.xml msgid "" @@ -61894,15 +62240,17 @@ msgstr "" "置为 [code]false[/code]。改用 [method append_bbcode] 来保留 BBCode 格式。" #: doc/classes/RichTextLabel.xml +#, 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 " "methods when edited.\n" "[b]Note:[/b] It is unadvised to use the [code]+=[/code] operator with " "[code]bbcode_text[/code] (e.g. [code]bbcode_text += \"some string\"[/code]) " -"as it replaces the whole text and can cause slowdowns. Use [method " -"append_bbcode] for adding text instead, unless you absolutely need to close " -"a tag that was opened in an earlier method call." +"as it replaces the whole text and can cause slowdowns. It will also erase " +"all BBCode that was added to stack using [code]push_*[/code] methods. Use " +"[method 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" @@ -62663,12 +63011,12 @@ msgstr "" "质量中心总是位于节点的原点,而不考虑[CollisionShape2D]中心点的偏移。" #: doc/classes/RigidBody2D.xml -msgid "https://godotengine.org/asset-library/asset/119" -msgstr "https://godotengine.org/asset-library/asset/119" +msgid "2D Physics Platformer Demo" +msgstr "" #: doc/classes/RigidBody2D.xml doc/classes/Sprite.xml -msgid "https://godotengine.org/asset-library/asset/148" -msgstr "https://godotengine.org/asset-library/asset/148" +msgid "Instancing Demo" +msgstr "" #: doc/classes/RigidBody2D.xml msgid "" @@ -62917,20 +63265,20 @@ msgid "" "RigidBody2D used by the [Physics2DServer]. Get the [CollisionShape2D] node " "with [code]self.shape_owner_get_owner(local_shape_index)[/code]." msgstr "" -"当这个RigidBody2D的[Shape2D]与另一个[PhysicsBody2D]或[TileMap]的[Shape2D]碰撞" -"时发出。要求 [member contact_monitor] 设置为 [code]true[/code] 并且 [member " -"contacts_reported] 设置得足够高,以检测所有碰撞。如果 [TileMap] 具有碰撞 " -"[Shape2D],就会检测到 [TileSet]。\n" +"当这个 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[/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" +"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] 节点。" +"[Shape2D] 索引。获得带有 [code]self.shape_owner_get_owner (local_shape_index)" +"[/code] 的 [CollisionShape2D] 节点。" #: doc/classes/RigidBody2D.xml msgid "" @@ -63464,8 +63812,8 @@ msgid "" "Sometimes using the larger gameplay area of the secondary PVS may be " "preferable." msgstr "" -"当对象进入和退出游戏时接收游戏回调时,[b]游戏区域[/b]可以由[Room]的主要" -"PVS(潜在可见集)或次要PVS(主要PVS及其相邻的PVS)定义[Room])。\n" +"当对象进入和退出游戏时接收游戏回调时,[b]游戏区域[/b]可以由[Room]的主要PVS" +"(潜在可见集)或次要PVS(主要PVS及其相邻的PVS)定义[Room])。\n" "有时使用次要 PVS 的较大游戏区域可能更可取。" #: doc/classes/RoomManager.xml @@ -63517,8 +63865,8 @@ msgstr "" "RootMotionView[/code]。此外,它不能是 [code]tool[/code] 脚本。" #: doc/classes/RootMotionView.xml -msgid "$DOCS_URL/tutorials/animation/animation_tree.html#root-motion" -msgstr "$DOCS_URL/tutorials/animation/animation_tree.html#root-motion" +msgid "Using AnimationTree - Root motion" +msgstr "" #: doc/classes/RootMotionView.xml msgid "Path to an [AnimationTree] node to use as a basis for root motion." @@ -63771,14 +64119,6 @@ msgstr "" "[SceneTree] 是场景所使用的默认 [MainLoop] 实现,因此掌控着游戏循环。" #: doc/classes/SceneTree.xml -msgid "$DOCS_URL/tutorials/scripting/scene_tree.html" -msgstr "$DOCS_URL/tutorials/scripting/scene_tree.html" - -#: doc/classes/SceneTree.xml -msgid "$DOCS_URL/tutorials/rendering/multiple_resolutions.html" -msgstr "$DOCS_URL/tutorials/rendering/multiple_resolutions.html" - -#: doc/classes/SceneTree.xml msgid "" "Calls [code]method[/code] on each member of the given group. You can pass " "arguments to [code]method[/code] by specifying them at the end of the method " @@ -63843,12 +64183,13 @@ 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]中的场景,在将其加载到" -"[PackedScene]中并创建一个新的实例。\n" -"成功时返回[constant OK],如果[code]path[/code]不能被加载到一个[PackedScene]" -"中,,该场景不能被实例化,则返回[constant ERR_CANT_CREATE]。\n" -"[b]注意:[/b]场景改变有延迟,即新的场景节点是在下一个空闲帧中添加。在[method " -"change_scene]调用之后,你不能立即访问它。" +"将位于给定路径 [code]path[/code] 的场景加载进一个 [PackedScene] 并新建其实" +"例,然后将正在运行的场景修改为这个场景。\n" +"成功时返回 [constant OK],如果 [code]path[/code] 不能被加载到一个 " +"[PackedScene] 中则返回 [constant ERR_CANT_OPEN],如果该场景不能被实例化,则返" +"回 [constant ERR_CANT_CREATE]。\n" +"[b]注意:[/b]场景改变有延迟,即新的场景节点是在下一个空闲帧中添加的。在 " +"[method change_scene] 调用之后,你无法立即访问到它。" #: doc/classes/SceneTree.xml msgid "" @@ -63859,11 +64200,11 @@ 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" -"成功时返回[constant OK],如果场景不能被实例化,则返回[constant " +"将正在运行的场景改变为给定的 [PackedScene] 的新实例。\n" +"成功时返回 [constant OK],如果场景不能被实例化,则返回 [constant " "ERR_CANT_CREATE]。\n" -"[b]注意:[/b] 场景的改变是延迟的,新的场景节点是在下一个空闲帧中添加。在调用" -"[method change_scene_to]之后,你不能立即访问它。" +"[b]注意:[/b]场景改变有延迟,即新的场景节点是在下一个空闲帧中添加的。在 " +"[method change_scene_to] 调用之后,你无法立即访问到它。" #: doc/classes/SceneTree.xml msgid "" @@ -64364,10 +64705,6 @@ msgstr "" "的基类之一相匹配,[method Object.set_script] 会扩展该对象。" #: doc/classes/Script.xml -msgid "$DOCS_URL/tutorials/scripting/index.html" -msgstr "$DOCS_URL/tutorials/scripting/index.html" - -#: doc/classes/Script.xml msgid "Returns [code]true[/code] if the script can be instanced." msgstr "如果脚本可以实例化,则返回 [code]true[/code]。" @@ -64509,7 +64846,7 @@ msgstr "" msgid "" "Reload all currently opened scripts from disk in case the file contents are " "newer." -msgstr "" +msgstr "从磁盘重新加载所有当前打开的脚本,假设文件内容更新。" #: doc/classes/ScriptEditor.xml msgid "" @@ -64734,14 +65071,6 @@ msgstr "" "编写自己的自定义行为来渲染对象或更新粒子信息。有关详细说明和用法,请参阅下面" "链接的教程。" -#: doc/classes/Shader.xml doc/classes/ShaderMaterial.xml -msgid "$DOCS_URL/tutorials/shaders/index.html" -msgstr "$DOCS_URL/tutorials/shaders/index.html" - -#: doc/classes/Shader.xml -msgid "$DOCS_URL/tutorials/shaders/introduction_to_shaders.html" -msgstr "$DOCS_URL/tutorials/shaders/introduction_to_shaders.html" - #: doc/classes/Shader.xml msgid "" "Returns the texture that is set as default for the specified parameter.\n" @@ -65142,10 +65471,6 @@ msgstr "" "对其子项的放松姿势的引用,并作为对其骨骼的单一访问点。" #: doc/classes/Skeleton2D.xml -msgid "$DOCS_URL/tutorials/animation/2d_skeletons.html" -msgstr "$DOCS_URL/tutorials/animation/2d_skeletons.html" - -#: doc/classes/Skeleton2D.xml msgid "" "Returns a [Bone2D] from the node hierarchy parented by Skeleton2D. The " "object to return is identified by the parameter [code]idx[/code]. Bones are " @@ -65471,11 +65796,12 @@ msgid "" "Emitted when dragging stops. If [code]value_changed[/code] is true, [member " "Range.value] is different from the value when you started the dragging." msgstr "" +"拖拽停止时触发。如果 [code]value_changed[/code] 为真,则 [member Range." +"value] 与开始拖拽时的值不同。" #: doc/classes/Slider.xml -#, fuzzy msgid "Emitted when dragging is started." -msgstr "滚动开始时发出。" +msgstr "拖拽开始时触发。" #: doc/classes/SliderJoint.xml msgid "Slider between two PhysicsBodies in 3D." @@ -65542,12 +65868,11 @@ msgstr "柔性网格物理体。" #: doc/classes/SoftBody.xml msgid "" "A deformable physics body. Used to create elastic or deformable objects such " -"as cloth, rubber, or other flexible materials." -msgstr "可变形的物理体。用于创建弹性或可变形的物体,如布、橡胶或其他柔性材质。" - -#: doc/classes/SoftBody.xml -msgid "$DOCS_URL/tutorials/physics/soft_body.html" -msgstr "$DOCS_URL/tutorials/physics/soft_body.html" +"as cloth, rubber, or other flexible materials.\n" +"[b]Note:[/b] There are many known bugs in [SoftBody]. Therefore, it's not " +"recommended to use them for things that can affect gameplay (such as a " +"player character made entirely out of soft bodies)." +msgstr "" #: doc/classes/SoftBody.xml msgid "Returns local translation of a vertex in the surface array." @@ -65655,12 +65980,12 @@ msgstr "" "使用 [method @GDScript.deg2rad] 将度数转换为弧度。" #: doc/classes/Spatial.xml -msgid "$DOCS_URL/tutorials/3d/introduction_to_3d.html" -msgstr "$DOCS_URL/tutorials/3d/introduction_to_3d.html" +msgid "Introduction to 3D" +msgstr "" #: doc/classes/Spatial.xml doc/classes/Vector3.xml -msgid "https://github.com/godotengine/godot-demo-projects/tree/master/3d" -msgstr "https://github.com/godotengine/godot-demo-projects/tree/master/3d" +msgid "All 3D Demos" +msgstr "" #: doc/classes/Spatial.xml msgid "" @@ -65731,17 +66056,18 @@ msgstr "" #: doc/classes/Spatial.xml msgid "" -"Rotates itself so that the local -Z axis points towards the [code]target[/" -"code] position.\n" -"The transform will first be rotated around the given [code]up[/code] vector, " -"and then fully aligned to the target by a further rotation around an axis " -"perpendicular to both the [code]target[/code] and [code]up[/code] vectors.\n" +"Rotates the node so that the local forward axis (-Z) points toward the " +"[code]target[/code] position.\n" +"The local up axis (+Y) points as close to the [code]up[/code] vector as " +"possible while staying perpendicular to the local forward axis. The " +"resulting transform is orthogonal, and the scale is preserved. Non-uniform " +"scaling may not work correctly.\n" +"The [code]target[/code] position cannot be the same as the node's position, " +"the [code]up[/code] vector cannot be zero, and the direction from the node's " +"position to the [code]target[/code] vector cannot be parallel to the " +"[code]up[/code] vector.\n" "Operations take place in global space." msgstr "" -"旋转自身,使局部-Z轴指向[code]target[/code]位置。\n" -"变换将首先围绕给定的[code]up[/code]矢量进行旋转,然后通过进一步围绕垂直于" -"[code]target[/code]和[code]up[/code]矢量的轴进行旋转来完全对准目标。\n" -"操作是在全局空间进行的。" #: doc/classes/Spatial.xml msgid "" @@ -65897,8 +66223,8 @@ msgid "" "of the Euler-angle parametrization of the rotation matrix, are stored in a " "[Vector3] data structure not because the rotation is a vector, but only " "because [Vector3] exists as a convenient data-structure to store 3 floating-" -"point numbers. Therefore, applying affine operations on the rotation \"vector" -"\" is not meaningful." +"point numbers. Therefore, applying affine operations on the rotation " +"\"vector\" is not meaningful." msgstr "" "局部变换的旋转部分以弧度表示,以YXZ-Euler角的形式表示(X角、Y角、Z角)。\n" "[b]注:[/b]在数学意义上,旋转是一个矩阵而不是一个向量。这三个欧拉角是旋转矩阵" @@ -66007,10 +66333,6 @@ msgstr "" "下面的教程。" #: doc/classes/SpatialMaterial.xml -msgid "$DOCS_URL/tutorials/3d/spatial_material.html" -msgstr "$DOCS_URL/tutorials/3d/spatial_material.html" - -#: doc/classes/SpatialMaterial.xml msgid "Returns [code]true[/code], if the specified [enum Feature] is enabled." msgstr "如果指定的 [enum Feature] 被启用,返回 [code]true[/code]。" @@ -66317,7 +66639,6 @@ msgid "" msgstr "纹理用于指定细节纹理与基础纹理的混合方式。" #: doc/classes/SpatialMaterial.xml -#, fuzzy msgid "" "Texture that specifies the per-pixel normal of the detail overlay.\n" "[b]Note:[/b] Godot expects the normal map to use X+, Y+, and Z+ coordinates. " @@ -66326,10 +66647,10 @@ msgid "" "a comparison of normal map coordinates expected by popular engines." msgstr "" "指定细节叠加层每像素法线的纹理。\n" -"[b]注意:[/b] Godot希望法线贴图使用X +,Y-和Z +坐标。请参阅[url=http://wiki." -"polycount.com/wiki/" -"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url],以比" -"较流行引擎期望的法线地图坐标。" +"[b]注意:[/b]Godot 希望法线贴图使用 X+、Y+ 和 Z+ 坐标。请参阅[url=http://" +"wiki.polycount.com/wiki/" +"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]该页[/url],了解流行" +"引擎所期望的法线贴图坐标的比较。" #: doc/classes/SpatialMaterial.xml msgid "" @@ -66553,7 +66874,6 @@ msgid "The strength of the normal map's effect." msgstr "法线贴图的效果强度。" #: doc/classes/SpatialMaterial.xml -#, 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 " @@ -66570,16 +66890,17 @@ 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]只使用红色和绿色通道," -"忽略蓝色和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],了解流行引擎所期望的法线贴图坐标的比较。" +"用来指定像素点的法线的纹理。[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 msgid "Threshold at which the alpha scissor will discard values." @@ -67612,9 +67933,9 @@ msgstr "从碰撞检查排除的 [PhysicsBody] 对象列表中删除指定的 [R #: doc/classes/SpringArm.xml msgid "" -"The layers against which the collision check shall be done. See [url=" -"$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-and-" -"masks]Collision layers and masks[/url] in the documentation for more " +"The layers against which the collision check shall be done. See " +"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-" +"and-masks]Collision layers and masks[/url] in the documentation for more " "information." msgstr "" "碰撞检测的目标层。更多信息请参阅文档中的[url=$DOCS_URL/tutorials/physics/" @@ -67737,7 +68058,7 @@ msgid "" "a comparison of normal map coordinates expected by popular engines." msgstr "" "为 Sprite 提供深度的法线贴图。\n" -"[b]注意:[/b] Godot 期望法线贴图使用 X+、Y- 和 Z+ 坐标系。参阅[url=http://" +"[b]注意:[/b]Godot 期望法线贴图使用 X+、Y- 和 Z+ 坐标系。参阅[url=http://" "wiki.polycount.com/wiki/" "Normal_Map_Technical_Details#Common_Swizzle_Coordinates]这个页面[/url]比较流" "行引擎所期望的法线贴图坐标系。" @@ -67836,15 +68157,30 @@ msgstr "" #: doc/classes/SpriteBase3D.xml msgid "" -"A color value that gets multiplied on, could be used for mood-coloring or to " -"simulate the color of light." -msgstr "乘以颜色值,用于色调调制和模拟光的颜色。" +"A color value used to [i]multiply[/i] the texture's colors. Can be used for " +"mood-coloring or to simulate the color of light.\n" +"[b]Note:[/b] If a [member GeometryInstance.material_override] is defined on " +"the [SpriteBase3D], the material override must be configured to take vertex " +"colors into account for albedo. Otherwise, the color defined in [member " +"modulate] will be ignored. For a [SpatialMaterial], [member SpatialMaterial." +"vertex_color_use_as_albedo] must be [code]true[/code]. For a " +"[ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/color] must be inserted in the " +"shader's [code]fragment()[/code] function." +msgstr "" #: doc/classes/SpriteBase3D.xml 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] 完全可见。" +"The texture's visibility on a scale from [code]0[/code] (fully invisible) to " +"[code]1[/code] (fully visible). [member opacity] is a multiplier for the " +"[member modulate] color's alpha channel.\n" +"[b]Note:[/b] If a [member GeometryInstance.material_override] is defined on " +"the [SpriteBase3D], the material override must be configured to take vertex " +"colors into account for albedo. Otherwise, the opacity defined in [member " +"opacity] will be ignored. For a [SpatialMaterial], [member SpatialMaterial." +"vertex_color_use_as_albedo] must be [code]true[/code]. For a " +"[ShaderMaterial], [code]ALPHA *= COLOR.a;[/color] must be inserted in the " +"shader's [code]fragment()[/code] function." +msgstr "" #: doc/classes/SpriteBase3D.xml msgid "The size of one pixel's width on the sprite to scale it in 3D." @@ -67884,12 +68220,10 @@ msgid "Represents the size of the [enum DrawFlags] enum." msgstr "代表[enum DrawFlags]枚举的大小。" #: doc/classes/SpriteFrames.xml -#, fuzzy msgid "Sprite frame library for AnimatedSprite and AnimatedSprite3D." -msgstr "AnimatedSprite 的精灵帧库。" +msgstr "AnimatedSprite 和 AnimatedSprite3D 的精灵帧库。" #: doc/classes/SpriteFrames.xml -#, fuzzy msgid "" "Sprite frame library for an [AnimatedSprite] or [AnimatedSprite3D] node. " "Contains frames and animation data for playback.\n" @@ -67898,7 +68232,8 @@ 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" +"[AnimatedSprite] 或 [AnimatedSprite3D] 节点的精灵帧库。包含可用于播放的帧和动" +"画数据。\n" "[b]注意:[/b]你可以通过创建带有 [code]_normal[/code] 后缀的 [SpriteFrames] 来" "关联一组法线贴图。例如,同时存在两个分别叫做 [code]run[/code] 和 " "[code]run_normal[/code] 的 [SpriteFrames] 资源,那么 [code]run[/code] 中的动" @@ -68286,6 +68621,54 @@ msgid "" "encoding and decoding." msgstr "为 [code]true[/code] 时,该 [StreamPeer] 进行编解码时会使用大端格式。" +#: doc/classes/StreamPeerBuffer.xml +#, fuzzy +msgid "Data buffer stream peer." +msgstr "SSL流对等体。" + +#: doc/classes/StreamPeerBuffer.xml +msgid "" +"Data buffer stream peer that uses a byte array as the stream. This object " +"can be used to handle binary data from network sessions. To handle binary " +"data stored in files, [File] can be used directly.\n" +"A [StreamPeerBuffer] object keeps an internal cursor which is the offset in " +"bytes to the start of the buffer. Get and put operations are performed at " +"the cursor position and will move the cursor accordingly." +msgstr "" + +#: doc/classes/StreamPeerBuffer.xml +msgid "Clears the [member data_array] and resets the cursor." +msgstr "" + +#: doc/classes/StreamPeerBuffer.xml +msgid "" +"Returns a new [StreamPeerBuffer] with the same [member data_array] content." +msgstr "" + +#: doc/classes/StreamPeerBuffer.xml +#, fuzzy +msgid "Returns the current cursor position." +msgstr "返回当前的滚动位置。" + +#: doc/classes/StreamPeerBuffer.xml +#, fuzzy +msgid "Returns the size of [member data_array]." +msgstr "返回参数的正弦值。" + +#: doc/classes/StreamPeerBuffer.xml +msgid "Resizes the [member data_array]. This [i]doesn't[/i] update the cursor." +msgstr "" + +#: doc/classes/StreamPeerBuffer.xml +msgid "" +"Moves the cursor to the specified position. [code]position[/code] must be a " +"valid index of [member data_array]." +msgstr "" + +#: doc/classes/StreamPeerBuffer.xml +msgid "The underlying data buffer. Setting this value resets the cursor." +msgstr "" + #: doc/classes/StreamPeerSSL.xml msgid "SSL stream peer." msgstr "SSL流对等体。" @@ -68462,10 +68845,6 @@ msgstr "" "进行传递的成本很低。" #: doc/classes/String.xml -msgid "$DOCS_URL/tutorials/scripting/gdscript/gdscript_format_string.html" -msgstr "$DOCS_URL/tutorials/scripting/gdscript/gdscript_format_string.html" - -#: doc/classes/String.xml msgid "Constructs a new String from the given [bool]." msgstr "从给定的 [bool] 构造新 String。" @@ -68626,8 +69005,9 @@ msgid "" 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" +"[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" @@ -68795,8 +69175,13 @@ msgstr "" "[/codeblock]" #: doc/classes/String.xml -msgid "Hashes the string and returns a 32-bit integer." -msgstr "以32位整数形式返回字符串的哈希值。" +msgid "" +"Returns the 32-bit hash value representing the string's contents.\n" +"[b]Note:[/b] [String]s with equal content will always produce identical hash " +"values. However, the reverse is not true. Returning identical hash values " +"does [i]not[/i] imply the strings are equal, because different strings can " +"have identical hash values due to hash collisions." +msgstr "" #: doc/classes/String.xml msgid "" @@ -68867,10 +69252,10 @@ msgstr "" #: doc/classes/String.xml msgid "" "Returns a copy of the string with lines indented with [code]prefix[/code].\n" -"For example, the string can be indented with two tabs using [code]\"\\t\\t" -"\"[/code], or four spaces using [code]\" \"[/code]. The prefix can be any " -"string so it can also be used to comment out strings with e.g. [code]\"# \"[/" -"code]. See also [method dedent] to remove indentation.\n" +"For example, the string can be indented with two tabs using " +"[code]\"\\t\\t\"[/code], or four spaces using [code]\" \"[/code]. The " +"prefix can be any string so it can also be used to comment out strings with " +"e.g. [code]\"# \"[/code]. See also [method dedent] to remove indentation.\n" "[b]Note:[/b] Empty lines are kept empty." msgstr "" "返回该字符串的副本,其中每一行都使用前缀 [code]prefix[/code] 进行缩进。\n" @@ -69068,9 +69453,9 @@ msgid "" 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" +"较的是字符串中的 [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" @@ -69104,9 +69489,9 @@ msgid "" 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" +"[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" @@ -69348,13 +69733,28 @@ msgstr "" #: doc/classes/String.xml msgid "" -"Converts a string containing a decimal number into a [code]float[/code]." -msgstr "将包含十进制数的字符串转换为 [code]float[/code]。" +"Converts a string containing a decimal number into a [code]float[/code]. The " +"method will stop on the first non-number character except the first [code].[/" +"code] (decimal point), and [code]e[/code] which is used for exponential.\n" +"[codeblock]\n" +"print(\"12.3\".to_float()) # 12.3\n" +"print(\"1.2.3\".to_float()) # 1.2\n" +"print(\"12ab3\".to_float()) # 12\n" +"print(\"1e3\".to_float()) # 1000\n" +"[/codeblock]" +msgstr "" #: doc/classes/String.xml msgid "" -"Converts a string containing an integer number into an [code]int[/code]." -msgstr "将包含整数的字符串转换为 [code]int[/code]。" +"Converts a string containing an integer number into an [code]int[/code]. The " +"method will remove any non-number character and stop if it encounters a " +"[code].[/code].\n" +"[codeblock]\n" +"print(\"123\".to_int()) # 123\n" +"print(\"a1b2c3\".to_int()) # 123\n" +"print(\"1.2.3\".to_int()) # 1\n" +"[/codeblock]" +msgstr "" #: doc/classes/String.xml msgid "Returns the string converted to lowercase." @@ -70009,7 +70409,7 @@ msgid "" "a comparison of normal map coordinates expected by popular engines." msgstr "" "绘制此样式盒时使用的法线贴图。\n" -"[b]注意:[/b] Godot 期望法线贴图使用 X+、Y- 和 Z+ 坐标系。参阅[url=http://" +"[b]注意:[/b]Godot 期望法线贴图使用 X+、Y- 和 Z+ 坐标系。参阅[url=http://" "wiki.polycount.com/wiki/" "Normal_Map_Technical_Details#Common_Swizzle_Coordinates]这个页面[/url]比较流" "行引擎所期望的法线贴图坐标系。" @@ -72169,11 +72569,11 @@ msgid "" "render_target_v_flip] on the Viewport. Otherwise, the image will appear " "upside down." msgstr "" -"用于在用户界面上绘制图标和精灵。纹理的位置可以通过[member stretch_mode]属性来" -"控制。它可以缩放、平铺,或者在其边界矩形内保持居中。\n" -"[b]注意:[/b] 当使用TextureRect来显示[ViewportTexture]时,你应该启用[member " -"flip_v]。或者,你也可以在视窗上启用[member Viewport.render_target_v_flip]。否" -"则,图像会出现颠倒的情况。" +"用于在用户界面上绘制图标和精灵。纹理的位置可以通过 [member stretch_mode] 属性" +"来控制。它可以缩放、平铺,或者在其边界矩形内保持居中。\n" +"[b]注意:[/b]当使用 TextureRect 来显示 [ViewportTexture] 时,你应该启用 " +"[member flip_v]。或者,你也可以在视窗上启用 [member Viewport." +"render_target_v_flip]。否则,图像会出现上下颠倒的情况。" #: doc/classes/TextureRect.xml msgid "If [code]true[/code], the texture scales to fit its bounding rectangle." @@ -72225,10 +72625,6 @@ msgstr "" "还可以通过编写 [code].theme[/code] 文件加载主题资源,更多信息见文档。" #: doc/classes/Theme.xml -msgid "$DOCS_URL/tutorials/ui/gui_skinning.html" -msgstr "$DOCS_URL/tutorials/ui/gui_skinning.html" - -#: doc/classes/Theme.xml msgid "Clears all values on the theme." msgstr "清除主题上的所有值。" @@ -72332,10 +72728,14 @@ msgstr "" "get_constant]和/或[method get_constant_list]使用。" #: doc/classes/Theme.xml +#, fuzzy msgid "" "Returns the [Font] at [code]name[/code] if the theme has [code]node_type[/" -"code]." -msgstr "如果主题有[code]node_type[/code],返回[code]name[/code]处的[Font]。" +"code]. If such item does not exist and [member default_font] is set on the " +"theme, the default font will be returned." +msgstr "" +"如果主题有[code]node_type[/code],则将[code]old_name[/code]的[Font]重命名为" +"[code]name[/code]。如果[code]name[/code]已经被占用,则此方法失败。" #: doc/classes/Theme.xml msgid "" @@ -72706,8 +73106,12 @@ msgstr "" "限制。" #: doc/classes/Thread.xml -msgid "$DOCS_URL/tutorials/performance/threads/thread_safe_apis.html" -msgstr "$DOCS_URL/tutorials/performance/threads/thread_safe_apis.html" +msgid "Using multiple threads" +msgstr "" + +#: doc/classes/Thread.xml +msgid "Thread-safe APIs" +msgstr "" #: doc/classes/Thread.xml msgid "" @@ -72808,12 +73212,12 @@ msgstr "" "处的单元格坐标会被编码为 [code]metadata[/code]。" #: doc/classes/TileMap.xml doc/classes/TileSet.xml -msgid "$DOCS_URL/tutorials/2d/using_tilemaps.html" -msgstr "$DOCS_URL/tutorials/2d/using_tilemaps.html" +msgid "Using Tilemaps" +msgstr "" #: doc/classes/TileMap.xml doc/classes/TileSet.xml -msgid "https://godotengine.org/asset-library/asset/111" -msgstr "https://godotengine.org/asset-library/asset/111" +msgid "2D Hexagonal Demo" +msgstr "" #: doc/classes/TileMap.xml msgid "Clears all cells." @@ -73511,8 +73915,13 @@ msgid "Sets the tile's material." msgstr "设置图块的材质。" #: doc/classes/TileSet.xml -msgid "Sets the tile's modulation color." -msgstr "设置图块的调制颜色。" +msgid "" +"Sets the tile's modulation color.\n" +"[b]Note:[/b] Modulation is performed by setting the tile's vertex color. To " +"access this in a shader, use [code]COLOR[/code] rather than [code]MODULATE[/" +"code] (which instead accesses the [TileMap]'s [member CanvasItem.modulate] " +"property)." +msgstr "" #: doc/classes/TileSet.xml msgid "Sets the tile's name." @@ -73535,9 +73944,10 @@ msgid "" "a comparison of normal map coordinates expected by popular engines." msgstr "" "设置图块的法线贴图纹理。\n" -"[b]注意:[/b] Godot希望法线贴图使用X+、Y-和Z+坐标。请参阅[url=http://wiki." -"polycount.com/wiki/Normal_Map_Technical_Details#Common_Swizzle_Coordinates]本" -"页面[/url],了解和比较流行引擎所期望的法线贴图坐标。" +"[b]注意:[/b]Godot 希望法线贴图使用 X+、Y- 和 Z+ 坐标。请参阅[url=http://" +"wiki.polycount.com/wiki/" +"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]本页面[/url],了解和" +"比较流行引擎所期望的法线贴图坐标。" #: doc/classes/TileSet.xml msgid "Sets an offset for the tile's light occluder." @@ -73717,8 +74127,8 @@ msgstr "" "给定的字典可以包含以下键: [code]year[/code]、[code]month[/code]、[code]day[/" "code]、[code]hour[/code]、[code]minute[/code]、[code]second[/code]。其他的记" "录(包括 [code]dst[/code])都会被忽略。\n" -"字典为空时将返回 [code]0[/code]。如果省略了部分键,默认使用 Unix 纪元时间戳 " -"0(1970-01-01 的 00:00:00)的对应部分。\n" +"字典为空时将返回 [code]0[/code]。如果省略了部分键,默认使用 Unix 纪元时间戳 0" +"(1970-01-01 的 00:00:00)的对应部分。\n" "[code]use_space[/code] 为真时,将使用空格代替中间的字母 T。" #: doc/classes/Time.xml @@ -73827,8 +74237,8 @@ msgstr "" "给定的字典可以包含以下键: [code]year[/code]、[code]month[/code]、[code]day[/" "code]、[code]hour[/code]、[code]minute[/code]、[code]second[/code]。其他的记" "录(包括 [code]dst[/code])都会被忽略。\n" -"字典为空时将返回 [code]0[/code]。如果省略了部分键,默认使用 Unix 纪元时间戳 " -"0(1970-01-01 的 00:00:00)的对应部分。\n" +"字典为空时将返回 [code]0[/code]。如果省略了部分键,默认使用 Unix 纪元时间戳 0" +"(1970-01-01 的 00:00:00)的对应部分。\n" "你可以将 [method get_datetime_dict_from_unix_time] 的输出直接传给本函数,得到" "的就是最初的输入。\n" "[b]注意:[/b]Unix 时间戳通常是 UTC 的。本方法不会做任何时区转换,所以时间戳的" @@ -74514,14 +74924,6 @@ msgid "" "map a string to another string." msgstr "翻译是可以按需加载和卸载的资源,将一个字符串映射到另一个字符串。" -#: doc/classes/Translation.xml doc/classes/TranslationServer.xml -msgid "$DOCS_URL/tutorials/i18n/internationalizing_games.html" -msgstr "$DOCS_URL/tutorials/i18n/internationalizing_games.html" - -#: doc/classes/Translation.xml doc/classes/TranslationServer.xml -msgid "$DOCS_URL/tutorials/i18n/locales.html" -msgstr "$DOCS_URL/tutorials/i18n/locales.html" - #: doc/classes/Translation.xml msgid "Virtual method to override [method get_message]." msgstr "重写 [method get_message] 的虚方法。" @@ -74661,8 +75063,10 @@ msgid "Clears the tree. This removes all items." msgstr "清除树。这将删除所有项目。" #: doc/classes/Tree.xml +#, fuzzy msgid "" -"Creates an item in the tree and adds it as a child of [code]parent[/code].\n" +"Creates an item in the tree and adds it as a child of [code]parent[/code], " +"which can be either a valid [TreeItem] or [code]null[/code].\n" "If [code]parent[/code] is [code]null[/code], the root item will be the " "parent, or the new item will be the root itself if the tree is empty.\n" "The new item will be the [code]idx[/code]th child of parent, or it will be " @@ -74699,6 +75103,12 @@ msgstr "" "SELECT_MULTI] 模式下可见。" #: doc/classes/Tree.xml +#, fuzzy +msgid "" +"Returns the button id at [code]position[/code], or -1 if no button is there." +msgstr "返回在[code]position[/code]的列索引,如果那里没有项目,则返回-1。" + +#: doc/classes/Tree.xml msgid "" "Returns the column index at [code]position[/code], or -1 if no item is there." msgstr "返回在[code]position[/code]的列索引,如果那里没有项目,则返回-1。" @@ -74760,10 +75170,11 @@ msgid "Returns the column for the currently edited item." msgstr "返回当前编辑项的列。" #: doc/classes/Tree.xml +#, fuzzy msgid "" -"Returns the rectangle area for the specified item. If [code]column[/code] is " -"specified, only get the position and size of that column, otherwise get the " -"rectangle containing all columns." +"Returns the rectangle area for the specified [TreeItem]. If [code]column[/" +"code] is specified, only get the position and size of that column, otherwise " +"get the rectangle containing all columns." msgstr "" "返回指定项目的矩形区域。如果[code]column[/code]被指定,只得到该列的位置和大" "小,否则得到包含所有列的矩形。" @@ -74775,9 +75186,10 @@ msgid "" msgstr "返回指定位置,即相对于树的原点位置的树中项。" #: doc/classes/Tree.xml +#, fuzzy msgid "" -"Returns the next selected item after the given one, or [code]null[/code] if " -"the end is reached.\n" +"Returns the next selected [TreeItem] after the given one, or [code]null[/" +"code] if the end is reached.\n" "If [code]from[/code] is [code]null[/code], this returns the first selected " "item." msgstr "" @@ -74828,7 +75240,8 @@ msgstr "" "要判断一个项的某一列是否被选中,请使用[method TreeItem.is_selected]。" #: doc/classes/Tree.xml -msgid "Causes the [Tree] to jump to the specified item." +#, fuzzy +msgid "Causes the [Tree] to jump to the specified [TreeItem]." msgstr "使 [Tree] 跳转到指定的项。" #: doc/classes/Tree.xml @@ -75243,13 +75656,13 @@ msgstr "" "您可以使用[method Object.free]删除[TreeItem]。" #: doc/classes/TreeItem.xml +#, fuzzy msgid "" "Adds a button with [Texture] [code]button[/code] at column [code]column[/" -"code]. The [code]button_idx[/code] index is used to identify the button when " -"calling other methods. If not specified, the next available index is used, " -"which may be retrieved by calling [method get_button_count] immediately " -"after this method. Optionally, the button can be [code]disabled[/code] and " -"have a [code]tooltip[/code]." +"code]. The [code]id[/code] is used to identify the button. If not specified, " +"the next available index is used, which may be retrieved by calling [method " +"get_button_count] immediately after this method. Optionally, the button can " +"be [code]disabled[/code] and have a [code]tooltip[/code]." msgstr "" "在 [code]column[/code] 列添加一个带有 [Texture] [code]button[/code] 的按钮。 " "[code]button_idx[/code] 索引用于在调用其他方法时标识按钮。如果未指定,则使用" @@ -75290,6 +75703,14 @@ msgstr "" "返回在[code]column[/code]中索引[code]button_idx[/code]按钮的[Texture]。" #: doc/classes/TreeItem.xml +#, fuzzy +msgid "" +"Returns the button index if there is a button with id [code]id[/code] in " +"column [code]column[/code], otherwise returns -1." +msgstr "" +"返回在[code]column[/code]中索引[code]button_idx[/code]按钮的提示信息字符串。" + +#: doc/classes/TreeItem.xml msgid "" "Returns the number of buttons in column [code]column[/code]. May be used to " "get the most recently added button's index, if no index was specified." @@ -75298,6 +75719,14 @@ msgstr "" "按钮的索引。" #: doc/classes/TreeItem.xml +#, fuzzy +msgid "" +"Returns the id for the button at index [code]button_idx[/code] in column " +"[code]column[/code]." +msgstr "" +"返回在[code]column[/code]中索引[code]button_idx[/code]按钮的提示信息字符串。" + +#: doc/classes/TreeItem.xml msgid "" "Returns the tooltip string for the button at index [code]button_idx[/code] " "in column [code]column[/code]." @@ -75632,7 +76061,6 @@ msgid "Smoothly animates a node's properties over time." msgstr "使节点的属性随时间平滑地变化。" #: doc/classes/Tween.xml -#, fuzzy msgid "" "Tweens are useful for animations requiring a numerical property to be " "interpolated over a range of values. The name [i]tween[/i] comes from [i]in-" @@ -75695,7 +76123,9 @@ msgstr "" "两处都是)。如果你不知道该选哪个过渡和缓动,你可以用 [constant EASE_IN_OUT] " "尝试不同的 [enum TransitionType] 常数,然后使用看起来最好的那个。\n" "[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/" -"tween_cheatsheet.png]Tween 缓动与过渡类型速查表[/url]" +"tween_cheatsheet.png]Tween 缓动与过渡类型速查表[/url]\n" +"[b]注意:[/b]如果无法完成所请求的操作,Tween 的方法会返回 [code]false[/" +"code]。" #: doc/classes/Tween.xml msgid "" @@ -76592,8 +77022,8 @@ msgid "" "Returns the default gateway. That is the first discovered [UPNPDevice] that " "is also a valid IGD (InternetGatewayDevice)." msgstr "" -"返回默认网关。这是第一个发现的[UPNPDevice],也是一个有效的" -"IGD(InternetGatewayDevice)。" +"返回默认网关。这是第一个发现的[UPNPDevice],也是一个有效的IGD" +"(InternetGatewayDevice)。" #: modules/upnp/doc_classes/UPNP.xml msgid "" @@ -77037,17 +77467,13 @@ msgstr "" "对一个容器的修改将修改对它的所有引用。如果需要多线程访问,应该创建一个 " "[Mutex] 来锁定它。" -#: doc/classes/Variant.xml -msgid "$DOCS_URL/development/cpp/variant_class.html" -msgstr "$DOCS_URL/development/cpp/variant_class.html" - #: doc/classes/VBoxContainer.xml msgid "Vertical box container." msgstr "垂直盒式容器。" #: doc/classes/VBoxContainer.xml msgid "Vertical box container. See [BoxContainer]." -msgstr "垂直盒式容器。参阅[BoxContainer]。" +msgstr "垂直盒式容器。请参阅 [BoxContainer]。" #: doc/classes/VBoxContainer.xml msgid "The vertical space between the [VBoxContainer]'s elements." @@ -77070,10 +77496,8 @@ msgstr "" "评估为 [code]false[/code]。否则,Vector2 将总是评估为 [code]true[/code]。" #: doc/classes/Vector2.xml doc/classes/Vector3.xml -msgid "" -"https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab" +msgid "3Blue1Brown Essence of Linear Algebra" msgstr "" -"https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab" #: doc/classes/Vector2.xml msgid "" @@ -77166,6 +77590,11 @@ msgid "" "embeds the 2D vectors in the XY plane of 3D space and uses their cross " "product's Z component as the analog." msgstr "" +"返回该向量与 [code]with[/code] 的叉积的 2D 模拟。\n" +"这是这两个向量所构成的平行四边形的有向面积。如果第二个向量相对于第一个向量是" +"顺时针的,则叉积为正面积。如果是逆时针,则叉积为负面积。\n" +"[b]注意:[/b]数学上没有定义 2D 叉积。这个方法会将这两个 2D 向量嵌入到 3D 空间" +"中的 XY 平面,然后用其叉积的 Z 分量作为模拟。" #: doc/classes/Vector2.xml msgid "" @@ -77410,7 +77839,7 @@ msgstr "右单位向量。代表右的方向。" #: doc/classes/Vector2.xml msgid "Up unit vector. Y is down in 2D, so this vector points -Y." -msgstr "上单位向量。Y 在 2D 中是向下的,所以这个向量指向 -Y。" +msgstr "上单位向量。在 2D 中 Y 是向下的,所以这个向量指向 -Y。" #: doc/classes/Vector2.xml msgid "Down unit vector. Y is down in 2D, so this vector points +Y." @@ -77435,7 +77864,7 @@ msgstr "" #: doc/classes/Vector3.xml msgid "Returns a Vector3 with the given components." -msgstr "返回具有给定分量的Vector3。" +msgstr "返回具有给定分量的 Vector3。" #: doc/classes/Vector3.xml msgid "Returns the unsigned minimum angle to the given vector, in radians." @@ -77458,7 +77887,7 @@ msgstr "" #: doc/classes/Vector3.xml msgid "Returns the distance between this vector and [code]b[/code]." -msgstr "返回此向量与[code]b[/code]之间的距离。" +msgstr "返回此向量与 [code]b[/code] 之间的距离。" #: doc/classes/Vector3.xml msgid "" @@ -77474,21 +77903,21 @@ msgid "" "aligned.\n" "[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]." msgstr "" -"返回此向量与[code]b[/code]的点积。这可以用来比较两个向量之间的角度。例如,这" -"可以用来确定一个敌人是否正面对玩家。\n" -"对于直角90度,点积将是[code]0[/code],对于窄于90度的角度,点积大于0,对于宽于" -"90度的角度,点积小于0。\n" -"当使用归一化单位向量,向量朝向相反方向时,结果总是在[code]-1.0[/code](180度" -"角)和[code]1.0[/code](0度角)之间,当向量对齐。\n" -"[b]注意:[/b][code]a.dot(b)[/code]等同于[code]b.dot(a)[/code]。" +"返回此向量与 [code]b[/code] 的点积。这可以用来比较两个向量之间的角度。例如," +"这可以用来确定一个敌人是否正面对玩家。\n" +"对于直角 90 度,点积将是 [code]0[/code],对于窄于 90 度的角度,点积大于 0,对" +"于宽于 90 度的角度,点积小于 0。\n" +"当使用归一化单位向量,向量朝向相反方向时,结果总是在 [code]-1.0[/code](180 " +"度角)和 [code]1.0[/code](0 度角)之间,当向量对齐。\n" +"[b]注意:[/b][code]a.dot(b)[/code] 等同于 [code]b.dot(a)[/code]。" #: doc/classes/Vector3.xml msgid "" "Returns the inverse of the vector. This is the same as [code]Vector3( 1.0 / " "v.x, 1.0 / v.y, 1.0 / v.z )[/code]." msgstr "" -"返回向量的反值。这与[code]Vector3( 1.0 / v.x, 1.0 / v.y, 1.0 / v.z )[/code]相" -"同。" +"返回向量的反值。这与 [code]Vector3( 1.0 / v.x, 1.0 / v.y, 1.0 / v.z )[/code] " +"相同。" #: doc/classes/Vector3.xml msgid "" @@ -77496,8 +77925,8 @@ msgid "" "[code]to[/code] by amount [code]t[/code]. [code]weight[/code] is on the " "range of 0.0 to 1.0, representing the amount of interpolation." msgstr "" -"返回这个向量与[code]to[/code]之间的线性插值的结果,插值量为[code]t[/code]。" -"[code]weight[/code]的范围是0.0到1.0,表示插值的数量。" +"返回这个向量与 [code]to[/code] 之间的线性插值的结果,插值量为 [code]t[/" +"code]。[code]weight[/code] 的范围是 0.0 到 1.0,表示插值的数量。" #: doc/classes/Vector3.xml msgid "" @@ -77505,8 +77934,8 @@ msgid "" "constants. If all components are equal, this method returns [constant " "AXIS_X]." msgstr "" -"返回向量的最大值的轴。参阅[code]AXIS_*[/code]常量。如果所有分量都相等,该方法" -"返回[constant AXIS_X]。" +"返回向量的最大值的轴。参阅 [code]AXIS_*[/code] 常量。如果所有分量都相等,该方" +"法返回 [constant AXIS_X]。" #: doc/classes/Vector3.xml msgid "" @@ -77514,8 +77943,8 @@ msgid "" "constants. If all components are equal, this method returns [constant " "AXIS_Z]." msgstr "" -"返回矢量的最小值的轴。参阅[code]AXIS_*[/code]常量。如果所有分量都相等,本方法" -"返回[constant AXIS_Z]。" +"返回矢量的最小值的轴。参阅 [code]AXIS_*[/code] 常量。如果所有分量都相等,本方" +"法返回 [constant AXIS_Z]。" #: doc/classes/Vector3.xml msgid "Returns the outer product with [code]b[/code]." @@ -77554,7 +77983,7 @@ msgstr "" msgid "" "The vector's Z component. Also accessible by using the index position [code]" "[2][/code]." -msgstr "向量的Z分量。也可以通过使用索引位置[code][2][/code]访问。" +msgstr "向量的 Z 分量。也可以通过使用索引位置 [code][2][/code] 访问。" #: doc/classes/Vector3.xml msgid "" @@ -77875,6 +78304,16 @@ msgstr "" "这个值会影响车辆的滚动。如果所有车轮都设置为1.0,车辆将容易翻车,而0.0的值将" "阻止车身侧倾。" +#: doc/classes/VFlowContainer.xml +#, fuzzy +msgid "Vertical flow container." +msgstr "垂直盒式容器。" + +#: doc/classes/VFlowContainer.xml +#, fuzzy +msgid "Vertical version of [FlowContainer]." +msgstr "[Separator]的垂直版本。" + #: doc/classes/VideoPlayer.xml msgid "Control for playing video streams." msgstr "用于播放视频流的控件。" @@ -78136,28 +78575,28 @@ msgstr "" "另外,如果设备有多个屏幕,视窗可以被分配到不同的屏幕。\n" "最后,视窗也可以作为渲染目标,在这种情况下,除非相关的纹理被用于绘制,否则它" "们将不可见。\n" -"[b]注意:[/b]默认情况下,Godot 3.x 新创建的 Viewport 是上下颠倒的。启用 " +"[b]注意:[/b]默认情况下,Godot 3.x 中新创建的 Viewport 是上下颠倒的。启用 " "[member render_target_v_flip] 可以使该 Viewport 使用正确的朝向显示。" #: doc/classes/Viewport.xml -msgid "$DOCS_URL/tutorials/rendering/index.html" -msgstr "$DOCS_URL/tutorials/rendering/index.html" +msgid "Viewports tutorial index" +msgstr "" #: doc/classes/Viewport.xml doc/classes/ViewportTexture.xml -msgid "https://godotengine.org/asset-library/asset/128" -msgstr "https://godotengine.org/asset-library/asset/128" +msgid "3D in 2D Demo" +msgstr "" #: doc/classes/Viewport.xml -msgid "https://godotengine.org/asset-library/asset/130" -msgstr "https://godotengine.org/asset-library/asset/130" +msgid "Screen Capture Demo" +msgstr "" #: doc/classes/Viewport.xml -msgid "https://godotengine.org/asset-library/asset/541" -msgstr "https://godotengine.org/asset-library/asset/541" +msgid "Dynamic Split Screen Demo" +msgstr "" #: doc/classes/Viewport.xml doc/classes/ViewportTexture.xml -msgid "https://godotengine.org/asset-library/asset/586" -msgstr "https://godotengine.org/asset-library/asset/586" +msgid "3D Viewport Scaling Demo" +msgstr "" #: doc/classes/Viewport.xml msgid "" @@ -78188,7 +78627,10 @@ msgid "Returns the topmost modal in the stack." msgstr "返回堆栈中最顶层的模型。" #: doc/classes/Viewport.xml -msgid "Returns the mouse position relative to the viewport." +#, fuzzy +msgid "" +"Returns the mouse's position in this [Viewport] using the coordinate system " +"of this [Viewport]." msgstr "返回相对于视窗的鼠标位置。" #: doc/classes/Viewport.xml @@ -78297,8 +78739,10 @@ msgid "Forces update of the 2D and 3D worlds." msgstr "强制更新 2D 和 3D 世界。" #: doc/classes/Viewport.xml -msgid "Warps the mouse to a position relative to the viewport." -msgstr "将鼠标偏移到相对于视窗的位置。" +msgid "" +"Moves the mouse pointer to the specified position in this [Viewport] using " +"the coordinate system of this [Viewport]." +msgstr "" #: doc/classes/Viewport.xml msgid "If [code]true[/code], the viewport will be used in AR/VR process." @@ -78712,8 +79156,8 @@ msgid "" "than the 3D usage modes. Note that 3D rendering effects such as glow and HDR " "are not available when using this mode." msgstr "" -"分配绘制2D场景所需的所有缓冲区。这比3D使用模式占用更少的VRAM。请注意,使用这" -"种模式时,诸如辉光和HDR等3D渲染效果是不可用的。" +"分配绘制 2D 场景所需的所有缓冲区。这比 3D 使用模式占用更少的 VRAM。请注意,使" +"用这种模式时,诸如辉光和 HDR 等 3D 渲染效果是不可用的。" #: doc/classes/Viewport.xml msgid "" @@ -78722,16 +79166,17 @@ msgid "" "Usage] types, this requires the least VRAM. Note that 3D rendering effects " "such as glow and HDR are not available when using this mode." msgstr "" -"分配2D场景所需的缓冲区,而不分配屏幕拷贝的缓冲区。相应地,你不能从屏幕上读" -"取。在[enum Usage]类型中,这需要最少的VRAM。注意,使用这种模式时,诸如辉光和" -"HDR等3D渲染效果是不可用的。" +"分配 2D 场景所需的缓冲区,而不分配屏幕拷贝的缓冲区。相应地,你不能从屏幕上读" +"取。在 [enum Usage] 类型中,这需要最少的 VRAM。注意,使用这种模式时,诸如辉光" +"和 HDR 等 3D 渲染效果是不可用的。" #: doc/classes/Viewport.xml msgid "" "Allocates full buffers for drawing 3D scenes and all 3D effects including " "buffers needed for 2D scenes and effects." msgstr "" -"为绘制3D场景和所有3D效果分配完整的缓冲区,包括2D场景和效果所需的缓冲区。" +"为绘制 3D 场景和所有 3D 效果分配完整的缓冲区,包括 2D 场景和效果所需的缓冲" +"区。" #: doc/classes/Viewport.xml msgid "" @@ -78739,8 +79184,8 @@ msgid "" "buffers needed for reading from the screen and post-processing effects. " "Saves some VRAM." msgstr "" -"分配绘制3D场景所需的缓冲区。但不分配从屏幕上读取和后期处理效果所需的缓冲区。" -"节省了一些VRAM。" +"分配绘制 3D 场景所需的缓冲区。但不分配从屏幕上读取和后期处理效果所需的缓冲" +"区。节省了一些 VRAM。" #: doc/classes/Viewport.xml msgid "Always clear the render target before drawing." @@ -79159,10 +79604,6 @@ msgstr "" "您最有可能通过 Visual Script 编辑器或在为其编写插件时使用此类。" #: modules/visual_script/doc_classes/VisualScript.xml -msgid "$DOCS_URL/tutorials/scripting/visual_script/index.html" -msgstr "$DOCS_URL/tutorials/scripting/visual_script/index.html" - -#: modules/visual_script/doc_classes/VisualScript.xml msgid "Add a custom signal with the specified name to the VisualScript." msgstr "在 VisualScript 中添加指定名称的自定义信号。" @@ -81165,10 +81606,6 @@ msgstr "" "视窗的画布的子项,或者它需要是最终连接到画布的另一个画布项的子项。" #: doc/classes/VisualServer.xml -msgid "$DOCS_URL/tutorials/performance/using_servers.html" -msgstr "$DOCS_URL/tutorials/performance/using_servers.html" - -#: doc/classes/VisualServer.xml msgid "Sets images to be rendered in the window margin." msgstr "设置在窗口边缘渲染的图像。" @@ -81654,8 +82091,8 @@ msgstr "设置环境的[i]BGMode[/i]。相当于[member Environment.background_m #: doc/classes/VisualServer.xml msgid "" -"Color displayed for clear areas of the scene (if using Custom color or Color" -"+Sky background modes)." +"Color displayed for clear areas of the scene (if using Custom color or " +"Color+Sky background modes)." msgstr "场景中空白区域的颜色显示(如果使用自定义颜色或颜色+天空背景模式)。" #: doc/classes/VisualServer.xml @@ -81966,10 +82403,11 @@ msgstr "为这个GI探针设置单元[Transform]。" #: doc/classes/VisualServer.xml msgid "" "Returns [code]true[/code] if changes have been made to the VisualServer's " -"data. [method draw] is usually called if this happens." +"data. [method draw] is usually called if this happens.\n" +"As changes are registered as either high or low priority (e.g. dynamic " +"shaders), this function takes an optional argument to query either low or " +"high priority changes, or any changes." msgstr "" -"如果VisualServer的数据被更改,则返回[code]true[/code]。如果发生这种情况,通常" -"会调用[method draw]。" #: doc/classes/VisualServer.xml msgid "Not yet implemented. Always returns [code]false[/code]." @@ -82422,10 +82860,10 @@ msgid "" "LIGHT_BAKE_DISABLED] or [constant LIGHT_BAKE_INDIRECT] depending on the " "given parameter." msgstr "" -"设置GI探针是否从这个灯中捕捉光线信息。[i]废弃的方法。[/i]使用[method " -"light_set_bake_mode]代替。这个方法只是出于兼容性考虑而被保留,它在内部调用" -"[method light_set_bake_mode],根据给定的参数将烘烤模式设置为[constant " -"LIGHT_BAKE_DISABLED]或[constant LIGHT_BAKE_INDIRECT]。" +"设置 GI 探针是否从这个灯中捕捉光线信息。[i]已废弃的方法。[/i]请使用 [method " +"light_set_bake_mode] 代替。这个方法只是出于兼容性考虑而被保留,它在内部调用 " +"[method light_set_bake_mode],根据给定的参数将烘焙模式设置为 [constant " +"LIGHT_BAKE_DISABLED] 或 [constant LIGHT_BAKE_INDIRECT]。" #: doc/classes/VisualServer.xml msgid "" @@ -84441,33 +84879,33 @@ msgstr "使用 [Transform] 存储 MultiMesh 变换。" #: doc/classes/VisualServer.xml msgid "MultiMesh does not use per-instance color." -msgstr "MultiMesh不使用每个实例的颜色。" +msgstr "MultiMesh 不使用每个实例的颜色。" #: doc/classes/VisualServer.xml msgid "" "MultiMesh color uses 8 bits per component. This packs the color into a " "single float." -msgstr "多网格颜色使用每个组件 8 位。这将颜色打包成一个浮点数。" +msgstr "MultiMesh 颜色使用每个分量 8 位。这将颜色打包成一个浮点数。" #: doc/classes/VisualServer.xml msgid "MultiMesh color uses a float per channel." -msgstr "多网格颜色使用每个通道的浮点数。" +msgstr "MultiMesh 颜色为每个通道使用浮点数。" #: doc/classes/VisualServer.xml msgid "MultiMesh does not use custom data." -msgstr "MultiMesh不使用自定义数据。" +msgstr "MultiMesh 不使用自定义数据。" #: doc/classes/VisualServer.xml msgid "" "MultiMesh custom data uses 8 bits per component. This packs the 4-component " "custom data into a single float." msgstr "" -"多网格自定义数据每个组件使用 8 位。这将 4 个组件的自定义数据打包到一个浮点数" -"中。" +"MultiMesh 自定义数据每个分量使用 8 位。这将 4 个分量的自定义数据打包到一个浮" +"点数中。" #: doc/classes/VisualServer.xml msgid "MultiMesh custom data uses a float per component." -msgstr "多网格自定义数据使用每个组件的浮点数。" +msgstr "MultiMesh 自定义数据为每个分量使用浮点数。" #: doc/classes/VisualServer.xml msgid "Reflection probe will update reflections once and then stop." @@ -84523,7 +84961,7 @@ msgstr "不要清除背景,使用上一帧渲染的东西作为背景。" #: doc/classes/VisualServer.xml msgid "Represents the size of the [enum EnvironmentBG] enum." -msgstr "代表[enum EnvironmentBG]枚举的大小。" +msgstr "代表 [enum EnvironmentBG] 枚举的大小。" #: doc/classes/VisualServer.xml msgid "Use lowest blur quality. Fastest, but may look bad." @@ -84602,6 +85040,22 @@ msgstr "对 SSAO 输出执行 2x2 模糊。" msgid "Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO." msgstr "对SSAO输出执行3x3模糊。使用它可以获得最平滑的SSAO。" +#: doc/classes/VisualServer.xml +msgid "" +"Used to query for any changes that request a redraw, whatever the priority." +msgstr "" + +#: doc/classes/VisualServer.xml +msgid "" +"Registered changes which have low priority can be optionally prevented from " +"causing editor redraws. Examples might include dynamic shaders (typically " +"using the [code]TIME[/code] built-in)." +msgstr "" + +#: doc/classes/VisualServer.xml +msgid "Registered changes which can cause a redraw default to high priority." +msgstr "" + #: doc/classes/VisualShader.xml msgid "A custom shader program with a visual editor." msgstr "带有可视化编辑器的自定义着色器程序。" @@ -84707,10 +85161,6 @@ msgstr "" "并控制着色器的流程。" #: doc/classes/VisualShaderNode.xml -msgid "$DOCS_URL/tutorials/shaders/visual_shaders.html" -msgstr "$DOCS_URL/tutorials/shaders/visual_shaders.html" - -#: doc/classes/VisualShaderNode.xml msgid "" "Returns an [Array] containing default values for all of the input ports of " "the node in the form [code][index0, value0, index1, value1, ...][/code]." @@ -85292,10 +85742,6 @@ msgstr "" "[/codeblock]" #: doc/classes/VisualShaderNodeCustom.xml -msgid "$DOCS_URL/tutorials/plugins/editor/visual_shader_plugins.html" -msgstr "$DOCS_URL/tutorials/plugins/editor/visual_shader_plugins.html" - -#: doc/classes/VisualShaderNodeCustom.xml msgid "" "Override this method to define the category of the associated custom node in " "the Visual Shader Editor's members dialog. The path may look like " @@ -85414,8 +85860,8 @@ msgid "" msgstr "" "重写此方法来定义可视化着色器编辑器的成员对话框和图中的相关自定义节点的名" "称。\n" -"定义这个方法是[b]可选的[/b],但推荐使用。如果不重写,节点将被命名为 \"Unnamed" -"\"。" +"定义这个方法是[b]可选的[/b],但推荐使用。如果不重写,节点将被命名为 " +"\"Unnamed\"。" #: doc/classes/VisualShaderNodeCustom.xml msgid "" @@ -85718,13 +86164,9 @@ msgstr "" "表,请参阅着色器参考,即查看[code]Tutorials[/code]教程部分的链接。" #: doc/classes/VisualShaderNodeInput.xml -msgid "$DOCS_URL/tutorials/shaders/shader_reference/index.html" -msgstr "$DOCS_URL/tutorials/shaders/shader_reference/index.html" - -#: doc/classes/VisualShaderNodeInput.xml msgid "" -"One of the several input constants in lower-case style like: \"vertex" -"\"([code]VERTEX[/code]) or \"point_size\"([code]POINT_SIZE[/code])." +"One of the several input constants in lower-case style like: " +"\"vertex\"([code]VERTEX[/code]) or \"point_size\"([code]POINT_SIZE[/code])." msgstr "" "小写风格的几个输入常量之一,比如。\"vertex\"([code]VERTEX[/code]) or " "\"point_size\"([code]POINT_SIZE[/code])." @@ -85780,8 +86222,8 @@ msgstr "表示可视化着色器图中的输出着色器参数。" #: doc/classes/VisualShaderNodeOutput.xml msgid "" -"This visual shader node is present in all shader graphs in form of \"Output" -"\" block with multiple output value ports." +"This visual shader node is present in all shader graphs in form of " +"\"Output\" block with multiple output value ports." msgstr "" "此可视化着色器节点以 \"输出\" 块的形式出现在所有着色器图中,有多个输出值端" "口。" @@ -86144,27 +86586,29 @@ msgstr "要执行的乘法类型。参阅[enum Operator]的选项。" #: doc/classes/VisualShaderNodeTransformVecMult.xml msgid "Multiplies transform [code]a[/code] by the vector [code]b[/code]." -msgstr "将变换[code]a[/code]乘以向量[code]b[/code]。" +msgstr "将变换 [code]a[/code] 乘以向量 [code]b[/code]。" #: doc/classes/VisualShaderNodeTransformVecMult.xml msgid "Multiplies vector [code]b[/code] by the transform [code]a[/code]." -msgstr "向量[code]b[/code]与变换[code]a[/code]相乘。" +msgstr "将向量 [code]b[/code] 乘以变换 [code]a[/code]。" #: doc/classes/VisualShaderNodeTransformVecMult.xml msgid "" "Multiplies transform [code]a[/code] by the vector [code]b[/code], skipping " "the last row and column of the transform." -msgstr "将变换[code]a[/code]乘以向量[code]b[/code],跳过变换的最后一行和一列。" +msgstr "" +"将变换 [code]a[/code] 乘以向量 [code]b[/code],跳过变换的最后一行和一列。" #: doc/classes/VisualShaderNodeTransformVecMult.xml msgid "" "Multiplies vector [code]b[/code] by the transform [code]a[/code], skipping " "the last row and column of the transform." -msgstr "向量[code]b[/code]与变换[code]a[/code]相乘,跳过变换的最后一行和一列。" +msgstr "" +"将向量 [code]b[/code] 乘以变换 [code]a[/code],跳过变换的最后一行和一列。" #: doc/classes/VisualShaderNodeUniform.xml msgid "A base type for the uniforms within the visual shader graph." -msgstr "可视化着色器图中的uniforms的基本类型。" +msgstr "可视化着色器图中的 uniform 的基本类型。" #: doc/classes/VisualShaderNodeUniform.xml msgid "" @@ -86172,46 +86616,46 @@ msgid "" "from the [ShaderMaterial]. Uniforms are exposed as properties in the " "[ShaderMaterial] and can be assigned from the inspector or from a script." msgstr "" -"uniform表示着色器中的一个变量,它是由外部设置的,即从[ShaderMaterial]中设置。" -"uniform在[ShaderMaterial]中被暴露为属性,可以从检查器或脚本中分配。" +"uniform 表示着色器中的一个变量,它是由外部设置的,即从 [ShaderMaterial] 中设" +"置。uniform 在 [ShaderMaterial] 中被暴露为属性,可以从检查器或脚本中分配。" #: doc/classes/VisualShaderNodeUniform.xml msgid "" "Name of the uniform, by which it can be accessed through the " "[ShaderMaterial] properties." -msgstr "uniform的名称,可以通过[ShaderMaterial]属性访问它。" +msgstr "uniform 的名称,可以通过 [ShaderMaterial] 属性访问它。" #: doc/classes/VisualShaderNodeUniformRef.xml msgid "A reference to an existing [VisualShaderNodeUniform]." -msgstr "对现有[VisualShaderNodeUniform]的引用。" +msgstr "对现有 [VisualShaderNodeUniform] 的引用。" #: doc/classes/VisualShaderNodeUniformRef.xml msgid "" "Creating a reference to a [VisualShaderNodeUniform] allows you to reuse this " "uniform in different shaders or shader stages easily." msgstr "" -"创建对[VisualShaderNodeUniform]的引用,可以让你在不同的着色器或着色阶段轻松地" -"重复使用这个uniform。" +"创建对 [VisualShaderNodeUniform] 的引用,可以让你在不同的着色器或着色阶段轻松" +"地重复使用这个 uniform。" #: doc/classes/VisualShaderNodeUniformRef.xml msgid "The name of the uniform which this reference points to." -msgstr "该引用所指向的uniform的名称。" +msgstr "该引用所指向的 uniform 的名称。" #: doc/classes/VisualShaderNodeVec3Constant.xml msgid "A [Vector3] constant to be used within the visual shader graph." -msgstr "一个[Vector3]常量,用于可视化着色器图中。" +msgstr "一个 [Vector3] 常量,用于可视化着色器图中。" #: doc/classes/VisualShaderNodeVec3Constant.xml msgid "A constant [Vector3], which can be used as an input node." -msgstr "一个常量[Vector3],它可以作为输入节点使用。" +msgstr "一个常量 [Vector3],它可以作为输入节点使用。" #: doc/classes/VisualShaderNodeVec3Constant.xml msgid "A [Vector3] constant which represents the state of this node." -msgstr "一个[Vector3]常量,表示该节点的状态。" +msgstr "一个 [Vector3] 常量,表示该节点的状态。" #: doc/classes/VisualShaderNodeVec3Uniform.xml msgid "A [Vector3] uniform to be used within the visual shader graph." -msgstr "一个[Vector3]的uniform,在可视化着色器图中使用。" +msgstr "一个 [Vector3] 的 uniform,在可视化着色器图中使用。" #: doc/classes/VisualShaderNodeVec3Uniform.xml msgid "Translated to [code]uniform vec3[/code] in the shader language." @@ -87434,7 +87878,7 @@ msgstr "" #: modules/websocket/doc_classes/WebSocketPeer.xml msgid "A class representing a specific WebSocket connection." -msgstr "表示特定WebSocket连接的类。" +msgstr "表示特定 WebSocket 连接的类。" #: modules/websocket/doc_classes/WebSocketPeer.xml msgid "" @@ -87472,8 +87916,8 @@ msgid "" "Returns the IP address of the connected peer.\n" "[b]Note:[/b] Not available in the HTML5 export." msgstr "" -"返回连接的对等体的IP地址。\n" -"[b]注意:[/b] 在HTML5导出中不可用。" +"返回连接的对等体的 IP 地址。\n" +"[b]注意:[/b]在 HTML5 导出中不可用。" #: modules/websocket/doc_classes/WebSocketPeer.xml msgid "" @@ -87481,7 +87925,7 @@ msgid "" "[b]Note:[/b] Not available in the HTML5 export." msgstr "" "返回所连接对等体的远程端口。\n" -"[b]注意:[/b] 在HTML5导出中不可用。" +"[b]注意:[/b]在 HTML5 导出中不可用。" #: modules/websocket/doc_classes/WebSocketPeer.xml msgid "" @@ -87684,6 +88128,7 @@ msgid "AR/VR interface using WebXR." msgstr "使用 WebXR 的 AR/VR 接口。" #: modules/webxr/doc_classes/WebXRInterface.xml +#, fuzzy msgid "" "WebXR is an open standard that allows creating VR and AR applications that " "run in the web browser.\n" @@ -87806,7 +88251,7 @@ msgid "" "signals is the same id as used in [member ARVRController.controller_id].\n" "You can use one or all of these methods to allow your game or app to support " "a wider or narrower set of devices and input methods, or to allow more " -"advanced interations with more advanced devices." +"advanced interactions with more advanced devices." msgstr "" "WebXR是一个开放标准,允许创建在网络浏览器中运行的VR和AR应用程序。\n" "因此,这个界面只有在HTML5导出中运行时才能使用。\n" @@ -87918,8 +88363,8 @@ msgstr "" "和输入方法,或者允许与更高级的设备进行更高级的交互。" #: modules/webxr/doc_classes/WebXRInterface.xml -msgid "https://www.snopekgames.com/blog/2020/how-make-vr-game-webxr-godot" -msgstr "https://www.snopekgames.com/blog/2020/how-make-vr-game-webxr-godot" +msgid "How to make a VR game for WebXR with Godot" +msgstr "" #: modules/webxr/doc_classes/WebXRInterface.xml msgid "" @@ -87954,6 +88399,14 @@ msgstr "" #: modules/webxr/doc_classes/WebXRInterface.xml msgid "" +"Returns the target ray mode for the given [code]controller_id[/code].\n" +"This can help interpret the input coming from that controller. See " +"[url=https://developer.mozilla.org/en-US/docs/Web/API/XRInputSource/" +"targetRayMode]XRInputSource.targetRayMode[/url] for more information." +msgstr "" + +#: modules/webxr/doc_classes/WebXRInterface.xml +msgid "" "Checks if the given [code]session_mode[/code] is supported by the user's " "browser.\n" "Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/" @@ -88116,8 +88569,8 @@ msgstr "" #: modules/webxr/doc_classes/WebXRInterface.xml msgid "" -"Emitted after one of the \"controllers\" has finished its \"primary action" -"\".\n" +"Emitted after one of the \"controllers\" has finished its \"primary " +"action\".\n" "Use [method get_controller] to get more information about the controller." msgstr "" "当一个“controller”控制器完成其“primary action”主要动作后触发。\n" @@ -88125,8 +88578,8 @@ msgstr "" #: modules/webxr/doc_classes/WebXRInterface.xml msgid "" -"Emitted when one of the \"controllers\" has finished its \"primary action" -"\".\n" +"Emitted when one of the \"controllers\" has finished its \"primary " +"action\".\n" "Use [method get_controller] to get more information about the controller." msgstr "" "当一个“controller”控制器完成其“primary action”主要动作时触发。\n" @@ -88214,6 +88667,24 @@ msgstr "" msgid "Emitted when [member visibility_state] has changed." msgstr "当[member visibility_state]已更改时触发。" +#: modules/webxr/doc_classes/WebXRInterface.xml +msgid "We don't know the the target ray mode." +msgstr "" + +#: modules/webxr/doc_classes/WebXRInterface.xml +msgid "" +"Target ray originates at the viewer's eyes and points in the direction they " +"are looking." +msgstr "" + +#: modules/webxr/doc_classes/WebXRInterface.xml +msgid "Target ray from a handheld pointer, most likely a VR touch controller." +msgstr "" + +#: modules/webxr/doc_classes/WebXRInterface.xml +msgid "Target ray from touch screen, mouse or other tactile input device." +msgstr "" + #: doc/classes/WindowDialog.xml msgid "Base class for window dialogs." msgstr "窗口对话框的基类。" @@ -88501,7 +88972,7 @@ msgstr "获取当前节点从文件或缓冲区开始处的字节偏移量。" #: doc/classes/XMLParser.xml msgid "" "Gets the type of the current node. Compare with [enum NodeType] constants." -msgstr "获取当前节点的类型。与[enum NodeType]常量比较。" +msgstr "获取当前节点的类型。与 [enum NodeType] 常量比较。" #: doc/classes/XMLParser.xml msgid "Check whether the current element has a certain attribute." @@ -88512,15 +88983,15 @@ msgid "" "Check whether the current element is empty (this only works for completely " "empty tags, e.g. [code]<element \\>[/code])." msgstr "" -"检查当前元素是否为空,这只适用于完全空的标签,例如[code]<element\\>[/code]。" +"检查当前元素是否为空(只适用于完全空的标签,例如 [code]<element\\>[/code])。" #: doc/classes/XMLParser.xml msgid "Opens an XML file for parsing. This returns an error code." -msgstr "打开一个XML文件进行解析。这将返回一个错误代码。" +msgstr "打开一个 XML 文件进行解析。这将返回一个错误代码。" #: doc/classes/XMLParser.xml msgid "Opens an XML raw buffer for parsing. This returns an error code." -msgstr "打开一个XML原始缓冲区进行解析。这将返回一个错误代码。" +msgstr "打开一个 XML 原始缓冲区进行解析。这将返回一个错误代码。" #: doc/classes/XMLParser.xml msgid "Reads the next node of the file. This returns an error code." @@ -88531,7 +89002,7 @@ msgid "" "Moves the buffer cursor to a certain offset (since the beginning) and read " "the next node there. This returns an error code." msgstr "" -"将缓冲区光标移动到某一偏移量,注,从开始位置,并在那里读取下一个节点。这将返" +"将缓冲区光标移动到某一偏移量(相对于开始位置)并在那里读取下一个节点。这将返" "回一个错误代码。" #: doc/classes/XMLParser.xml |