From 2f34a35722141aaee6c226c08fcd224ec3c1d04d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Verschelde?= Date: Wed, 1 Mar 2023 00:11:39 +0100 Subject: i18n: Sync translations with Weblate --- doc/translations/es.po | 6 - doc/translations/fr.po | 129 +- doc/translations/zh_CN.po | 4096 ++++++++++++++++++++++++++++++++++++++++++++- 3 files changed, 4138 insertions(+), 93 deletions(-) (limited to 'doc') diff --git a/doc/translations/es.po b/doc/translations/es.po index ad5cfe0ce7..69fe1e2aa2 100644 --- a/doc/translations/es.po +++ b/doc/translations/es.po @@ -8345,9 +8345,6 @@ msgstr "" "Si ha definido las variables de entrada en [method parse], puede especificar " "sus valores en el array de entradas, en el mismo orden." -msgid "Returns the error text if [method parse] has failed." -msgstr "Devuelve el texto de error si el [method parse] ha fallado." - msgid "Returns [code]true[/code] if [method execute] has failed." msgstr "Devuelve [code]true[/code] si [method execute] ha fallado." @@ -13022,9 +13019,6 @@ msgstr "Nodo que instancia mallas en un escenario." msgid "The [Mesh] resource for the instance." msgstr "El recurso [Mesh] para la instancia." -msgid "Sets the skin to be used by this instance." -msgstr "Establece la piel que se utilizará en esta instancia." - msgid "Library of meshes." msgstr "Biblioteca de mallas." diff --git a/doc/translations/fr.po b/doc/translations/fr.po index b7839a4c43..d4f1b5dbd7 100644 --- a/doc/translations/fr.po +++ b/doc/translations/fr.po @@ -62,13 +62,15 @@ # Alexis Coudert , 2022. # Callim Ethee , 2023. # Thalya Gauvrit , 2023. +# Hipolyte Ponthieu <7hip.po6@orange.fr>, 2023. +# Dricom Dragon , 2023. msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" "POT-Creation-Date: \n" -"PO-Revision-Date: 2023-02-13 23:42+0000\n" -"Last-Translator: Thalya Gauvrit \n" +"PO-Revision-Date: 2023-02-28 17:36+0000\n" +"Last-Translator: Dricom Dragon \n" "Language-Team: French \n" "Language: fr\n" @@ -76,7 +78,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 4.16-dev\n" +"X-Generator: Weblate 4.16-rc\n" msgid "Description" msgstr "Description" @@ -87,6 +89,9 @@ msgstr "Tutoriels" msgid "Properties" msgstr "Propriétés" +msgid "Constructors" +msgstr "Constructeurs" + msgid "Methods" msgstr "Méthodes" @@ -108,9 +113,15 @@ msgstr "Constantes" msgid "Property Descriptions" msgstr "Description des propriétés" +msgid "Constructor Descriptions" +msgstr "Détails des constructeurs" + msgid "Method Descriptions" msgstr "Descriptions des méthodes" +msgid "Operator Descriptions" +msgstr "Détails des opérateurs" + msgid "Theme Property Descriptions" msgstr "Description des propriétés de thème" @@ -174,6 +185,109 @@ msgstr "" msgid "Built-in GDScript functions." msgstr "Fonctions intégrées à GDScript." +msgid "" +"A list of GDScript-specific utility functions and annotations accessible " +"from any script.\n" +"For the list of the global functions and constants see [@GlobalScope]." +msgstr "" +"Une liste de fonctions utilitaires et d'annotations, utilisables depuis " +"n'importe quel script.\n" +"Cette liste est spécifique à GDScript, pour voir la liste des fonctions et " +"constantes globales voir [@GlobalScope]." + +msgid "GDScript exports" +msgstr "Exports GDScript" + +msgid "" +"Returns a [Color] constructed from red ([param r8]), green ([param g8]), " +"blue ([param b8]), and optionally alpha ([param a8]) integer channels, each " +"divided by [code]255.0[/code] for their final value.\n" +"[codeblock]\n" +"var red = Color8(255, 0, 0) # Same as Color(1, 0, 0).\n" +"var dark_blue = Color8(0, 0, 51) # Same as Color(0, 0, 0.2).\n" +"var my_color = Color8(306, 255, 0, 102) # Same as Color(1.2, 1, 0, 0.4).\n" +"[/codeblock]" +msgstr "" +"Retourne une [Color] construite à partir des niveaux de rouge ([param r8]), " +"de vert ([param g8]), de bleu ([param b8]) et éventuellement de transparence " +"(ou alpha : [param a8]). Chaque niveau est représenté par un entier qui sera " +"divisé par [code]255.0[/code] pour obtenir la valeur de l'attribut associé.\n" +"[codeblock]\n" +"var red = Color8(255, 0, 0) # Meme effet que Color(1, 0, 0).\n" +"var dark_blue = Color8(0, 0, 51) # Meme effet que Color(0, 0, 0.2).\n" +"var my_color = Color8(306, 255, 0, 102) # Meme effet que Color(1.2, 1, 0, " +"0.4).\n" +"[/codeblock]" + +msgid "" +"Asserts that the [param condition] is [code]true[/code]. If the [param " +"condition] is [code]false[/code], an error is generated. When running from " +"the editor, the running project will also be paused until you resume it. " +"This can be used as a stronger form of [method @GlobalScope.push_error] for " +"reporting errors to project developers or add-on users.\n" +"An optional [param message] can be shown in addition to the generic " +"\"Assertion failed\" message. You can use this to provide additional details " +"about why the assertion failed.\n" +"[b]Warning:[/b] For performance reasons, the code inside [method assert] is " +"only executed in debug builds or when running the project from the editor. " +"Don't include code that has side effects in an [method assert] call. " +"Otherwise, the project will behave differently when exported in release " +"mode.\n" +"[codeblock]\n" +"# Imagine we always want speed to be between 0 and 20.\n" +"var speed = -10\n" +"assert(speed < 20) # True, the program will continue.\n" +"assert(speed >= 0) # False, the program will stop.\n" +"assert(speed >= 0 and speed < 20) # You can also combine the two conditional " +"statements in one check.\n" +"assert(speed < 20, \"the speed limit is 20\") # Show a message.\n" +"[/codeblock]" +msgstr "" +"Vérifie que la [code]condition[/code] est vraie ([code]true[/code]). Si la " +"[code]condition[/code] est fausse ([code]false[/code]), une erreur est " +"générée. Si le programme est lancé via l'éditeur, son exécution sera aussi " +"interrompue jusqu'à ce que vous le redémarriez. Cela peut être utilisé comme " +"une alternative plus radicale à [method @GlobalScope.push_error] pour " +"signaler des erreurs aux développeurs de projets ou utilisateurs de " +"plugins.\n" +"[b]Note :[/b] Par souci de performance, le code inclus dans [method assert] " +"n'est seulement exécuté dans les builds de débogage, ou quand vous lancez " +"votre jeu depuis l'éditeur. N'incluez pas de code qui modifie l'état du " +"script dans un appel à [method assert]. Sinon, votre projet aura un " +"fonctionnement différent une fois exporté pour la production (release " +"build).\n" +"L'argument facultatif [param message], s'il est donné, est affiché en plus " +"du message générique \"Assertion failed\" (Échec de l'assertion). Vous " +"pouvez l'utiliser pour fournir des détails supplémentaires sur la raison de " +"l'échec de l'assertion.\n" +"[codeblock]\n" +"# Imaginez que nous voulons une vitesse toujours comprise entre 0 et 20.\n" +"speed = -10\n" +"assert(speed < 20) # Vrai, le programme continue\n" +"assert(speed >= 0) # Faux, le programme s'interrompt\n" +"assert(speed >= 0 and speed < 20) # Vous pouvez aussi combiner les deux " +"conditions en une seule vérification\n" +"assert(speed < 20, \"speed = %f, mais la limite de vitesse est 20\" % speed) " +"# Affiche un message avec de plus amples détails\n" +"[/codeblock]" + +msgid "" +"Returns a single character (as a [String]) of the given Unicode code point " +"(which is compatible with ASCII code).\n" +"[codeblock]\n" +"a = char(65) # a is \"A\"\n" +"a = char(65 + 32) # a is \"a\"\n" +"a = char(8364) # a is \"€\"\n" +"[/codeblock]" +msgstr "" +"Renvoie un caractère au format chaîne de caractère ([String]) correspondant " +"à la valeur Unicode donnée (compatible avec le code ASCII).\n" +"[codeblock]\n" +"a = char(65) # a vaut « A »\n" +"a = char(65 + 32) # a vaut « a »\n" +"a = char(8364) # a vaut « € »\n" +"[/codeblock]" + msgid "" "Returns an array of dictionaries representing the current call stack. See " "also [method print_stack].\n" @@ -9425,9 +9539,6 @@ msgstr "Représente la taille de l'énumération [enum BGMode]." msgid "A class that stores an expression you can execute." msgstr "Une classe qui enregistre une expression que vous pouvez exécuter." -msgid "Returns the error text if [method parse] has failed." -msgstr "Retourne la description de l'erreur si [method parse] a échoué." - msgid "Returns [code]true[/code] if [method execute] has failed." msgstr "Retourne [code]true[/code] si [method execute] a échoué." @@ -12783,9 +12894,6 @@ msgstr "Nœud qui instancie des meshes dans un scénario." msgid "The [Mesh] resource for the instance." msgstr "La ressource du [Mesh] pour cette instance." -msgid "Sets the skin to be used by this instance." -msgstr "Définit la peau à utiliser pour cette instance." - msgid "Library of meshes." msgstr "Bibliothèque de maillages." @@ -14371,6 +14479,9 @@ msgstr "" "Les ombres sont rendues dans une texture dual-paraboloïde. Plus rapide que " "[constant SHADOW_CUBE], mais de qualité inférieure." +msgid "Add an action set." +msgstr "Ajouter un ensemble d'actions." + msgid "Optimized translation." msgstr "Traduction optimisée." diff --git a/doc/translations/zh_CN.po b/doc/translations/zh_CN.po index 36178274ca..339697f02c 100644 --- a/doc/translations/zh_CN.po +++ b/doc/translations/zh_CN.po @@ -72,8 +72,8 @@ msgid "" msgstr "" "Project-Id-Version: Godot Engine class reference\n" "Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n" -"PO-Revision-Date: 2023-02-24 13:35+0000\n" -"Last-Translator: suplife <2634557184@qq.com>\n" +"PO-Revision-Date: 2023-02-28 17:36+0000\n" +"Last-Translator: Haoyu Qiu \n" "Language-Team: Chinese (Simplified) \n" "Language: zh_CN\n" @@ -81,7 +81,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.16-dev\n" +"X-Generator: Weblate 4.16-rc\n" msgid "Description" msgstr "描述" @@ -376,6 +376,51 @@ msgstr "" "[, res://test.gd, bar]\n" "[/codeblock]" +msgid "" +"Returns [code]true[/code] if [param value] is an instance of [param type]. " +"The [param type] value must be one of the following:\n" +"- A constant from the [enum Variant.Type] enumeration, for example [constant " +"TYPE_INT].\n" +"- An [Object]-derived class which exists in [ClassDB], for example [Node].\n" +"- A [Script] (you can use any class, including inner one).\n" +"Unlike the right operand of the [code]is[/code] operator, [param type] can " +"be a non-constant value. The [code]is[/code] operator supports more features " +"(such as typed arrays) and is more performant. Use the operator instead of " +"this method if you do not need dynamic type checking.\n" +"Examples:\n" +"[codeblock]\n" +"print(is_instance_of(a, TYPE_INT))\n" +"print(is_instance_of(a, Node))\n" +"print(is_instance_of(a, MyClass))\n" +"print(is_instance_of(a, MyClass.InnerClass))\n" +"[/codeblock]\n" +"[b]Note:[/b] If [param value] and/or [param type] are freed objects (see " +"[method @GlobalScope.is_instance_valid]), or [param type] is not one of the " +"above options, this method will raise an runtime error.\n" +"See also [method @GlobalScope.typeof], [method type_exists], [method Array." +"is_same_typed] (and other [Array] methods)." +msgstr "" +"如果 [param value] 为 [param type] 类型的实例,则返回 [code]true[/code]。" +"[param type] 的值必须为下列值之一:\n" +"- [enum Variant.Type] 枚举常量,例如 [constant TYPE_INT]。\n" +"- [ClassDB] 中存在的派生自 [Object] 的类,例如 [Node]。\n" +"- [Script](可以用任何类,包括内部类)。\n" +"[param type] 可以不是常量,这一点与 [code]is[/code] 的右操作数不同。" +"[code]is[/code] 运算符支持的功能更多(例如类型化数组),性能也更高。如果你不" +"需要动态类型检查,请使用该运算符,不要使用此方法。\n" +"示例:\n" +"[codeblock]\n" +"print(is_instance_of(a, TYPE_INT))\n" +"print(is_instance_of(a, Node))\n" +"print(is_instance_of(a, MyClass))\n" +"print(is_instance_of(a, MyClass.InnerClass))\n" +"[/codeblock]\n" +"[b]注意:[/b]如果 [param value] 和/或 [param type] 为已释放的对象(见 " +"[method @GlobalScope.is_instance_valid]),或者 [param type] 不是以上选项之" +"一,则此方法会报运行时错误。\n" +"另见 [method @GlobalScope.typeof]、[method type_exists]、[method Array." +"is_same_typed](以及其他 [Array] 方法)。" + msgid "" "Returns the length of the given Variant [param var]. The length can be the " "character count of a [String], the element count of any array type or the " @@ -2305,18 +2350,6 @@ msgstr "" "[b]注意:[/b][code]0[/code] 的对数返回 [code]-inf[/code],负值返回 [code]-" "nan[/code]。" -msgid "" -"Returns the maximum of the given values. This function can take any number " -"of arguments.\n" -"[codeblock]\n" -"max(1, 7, 3, -6, 5) # Returns 7\n" -"[/codeblock]" -msgstr "" -"返回给定值的最大值。这个函数可以接受任意数量的参数。\n" -"[codeblock]\n" -"max(1, 7, 3, -6, 5) # 返回 7\n" -"[/codeblock]" - msgid "" "Returns the maximum of two [float] values.\n" "[codeblock]\n" @@ -2343,18 +2376,6 @@ msgstr "" "maxi(-3, -4) # 返回 -3\n" "[/codeblock]" -msgid "" -"Returns the minimum of the given values. This function can take any number " -"of arguments.\n" -"[codeblock]\n" -"min(1, 7, 3, -6, 5) # Returns -6\n" -"[/codeblock]" -msgstr "" -"返回给定值的最小值。这个函数可以接受任意数量的参数。\n" -"[codeblock]\n" -"min(1, 7, 3, -6, 5) # 返回 -6\n" -"[/codeblock]" - msgid "" "Returns the minimum of two [float] values.\n" "[codeblock]\n" @@ -9957,6 +9978,16 @@ msgstr "" "[b]注意:[/b]调用这个函数和写 [code]array[0][/code] 是不一样的,如果数组为" "空,从编辑器运行时按索引访问将暂停项目执行。" +msgid "" +"Returns the [enum Variant.Type] constant for a typed array. If the [Array] " +"is not typed, returns [constant TYPE_NIL]." +msgstr "" +"返回类型化数组的 [enum Variant.Type] 常量。如果该 [Array] 不是类型化的,则返" +"回 [constant TYPE_NIL]。" + +msgid "Returns a class name of a typed [Array] of type [constant TYPE_OBJECT]." +msgstr "返回类型为 [constant TYPE_OBJECT] 的 类型化 [Array] 的类名。" + msgid "" "Returns a hashed 32-bit integer value representing the array and its " "contents.\n" @@ -9987,6 +10018,10 @@ msgstr "" msgid "Returns [code]true[/code] if the array is empty." msgstr "该数组为空时,返回 [code]true[/code]。" +msgid "" +"Returns [code]true[/code] if the array is typed the same as [param array]." +msgstr "如果该数组的类型与 [param array] 相同,则返回 [code]true[/code]。" + msgid "" "Calls the provided [Callable] for each element in the array and returns a " "new array filled with values returned by the method.\n" @@ -13242,6 +13277,25 @@ msgstr "" "定义清漆效果的强度和清漆的光泽度的纹理。强度在红色通道中指定,光泽度在绿色通" "道中指定。" +msgid "" +"Determines when depth rendering takes place. See [enum DepthDrawMode]. See " +"also [member transparency]." +msgstr "" +"确定深度渲染发生的时间。参见 [enum DepthDrawMode]。另见 [member " +"transparency]。" + +msgid "" +"Texture that specifies the color of the detail overlay. [member " +"detail_albedo]'s alpha channel is used as a mask, even when the material is " +"opaque. To use a dedicated texture as a mask, see [member detail_mask].\n" +"[b]Note:[/b] [member detail_albedo] is [i]not[/i] modulated by [member " +"albedo_color]." +msgstr "" +"用于指定细节覆盖层颜色的纹理。[member detail_albedo] 的 alpha 通道会被用作遮" +"罩,即使该材质不透明。要将专用纹理用作遮罩,请参阅 [member detail_mask]。\n" +"[b]注意:[/b][member detail_albedo] [i]不会[/i]被 [member albedo_color] 调" +"制。" + msgid "" "Specifies how the [member detail_albedo] should blend with the current " "[code]ALBEDO[/code]. See [enum BlendMode] for options." @@ -13249,6 +13303,24 @@ msgstr "" "指定 [member detail_albedo] 应如何与当前 [code]ALBEDO[/code] 混合。参阅 " "[enum BlendMode] 选项。" +msgid "" +"Texture that specifies the per-pixel normal of the detail overlay. The " +"[member detail_normal] texture only uses the red and green channels; the " +"blue and alpha channels are ignored. The normal read from [member " +"detail_normal] is oriented around the surface normal provided by the " +"[Mesh].\n" +"[b]Note:[/b] Godot expects the normal map to use X+, Y+, and Z+ coordinates. " +"See [url=http://wiki.polycount.com/wiki/" +"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for " +"a comparison of normal map coordinates expected by popular engines." +msgstr "" +"用于指定细节覆盖层逐像素法线的纹理。[member detail_normal] 纹理只使用红色和绿" +"色通道;会忽略蓝色和 alpha 通道。从 [member detail_normal] 读取的法线是围绕 " +"[Mesh] 所提供的表面法线的进行朝向的。\n" +"[b]注意:[/b]Godot 期望法线贴图使用 X+、Y+、Z+ 坐标系。比较流行的引擎所期望的" +"法线贴图坐标系见[url=http://wiki.polycount.com/wiki/" +"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]这个页面[/url]。" + msgid "" "Specifies whether to use [code]UV[/code] or [code]UV2[/code] for the detail " "layer. See [enum DetailUV] for options." @@ -13386,6 +13458,41 @@ msgstr "如果为 [code]true[/code],深度测试被禁用,对象将按渲染 msgid "The strength of the normal map's effect." msgstr "法线贴图的效果强度。" +msgid "" +"Texture used to specify the normal at a given pixel. The [member " +"normal_texture] only uses the red and green channels; the blue and alpha " +"channels are ignored. The normal read from [member normal_texture] is " +"oriented around the surface normal provided by the [Mesh].\n" +"[b]Note:[/b] The mesh must have both normals and tangents defined in its " +"vertex data. Otherwise, the normal map won't render correctly and will only " +"appear to darken the whole surface. If creating geometry with [SurfaceTool], " +"you can use [method SurfaceTool.generate_normals] and [method SurfaceTool." +"generate_tangents] to automatically generate normals and tangents " +"respectively.\n" +"[b]Note:[/b] Godot expects the normal map to use X+, Y+, and Z+ coordinates. " +"See [url=http://wiki.polycount.com/wiki/" +"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for " +"a comparison of normal map coordinates expected by popular engines.\n" +"[b]Note:[/b] If [member detail_enabled] is [code]true[/code], the [member " +"detail_albedo] texture is drawn [i]below[/i] the [member normal_texture]. To " +"display a normal map [i]above[/i] the [member detail_albedo] texture, use " +"[member detail_normal] instead." +msgstr "" +"用于指定给定像素的法线的纹理。[member normal_texture] 只使用红色和绿色通道;" +"会忽略蓝色和 alpha 通道。从 [member normal_texture] 读取的法线是围绕 [Mesh] " +"所提供的表面法线的进行朝向的。\n" +"[b]注意:[/b]该网格必须在其顶点数据中同时定义法线和切线。否则法线贴图将无法正" +"确渲染,只会使整个表面变暗。如果使用 [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]。\n" +"[b]注意:[/b]如果 [member detail_enabled] 为 [code]true[/code],则 [member " +"detail_albedo] 纹理将在 [member normal_texture] [i]下方[/i]绘制。要在 " +"[member detail_albedo] 纹理[i]之上[/i]显示法线贴图,请改用 [member " +"detail_normal]。" + msgid "" "The number of horizontal frames in the particle sprite sheet. Only enabled " "when using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]." @@ -14200,6 +14307,20 @@ msgid "" "synchronized with it." msgstr "映射目标的 [SkeletonProfile]。[BoneMap] 中的键名与此同步。" +msgid "" +"This signal is emitted when change the key value in the [BoneMap]. This is " +"used to validate mapping and to update [BoneMap] editor." +msgstr "" +"[BoneMap] 中的键值发生改变时发出此信号。用于验证映射和更新 [BoneMap] 编辑器。" + +msgid "" +"This signal is emitted when change the value in profile or change the " +"reference of profile. This is used to update key names in the [BoneMap] and " +"to redraw the [BoneMap] editor." +msgstr "" +"配置中的值发生改变或配置的引用发生改变时发出此信号。用于更新 [BoneMap] 中的键" +"名、重绘 [BoneMap] 编辑器。" + msgid "Boolean built-in type." msgstr "布尔型内置型。" @@ -14398,6 +14519,9 @@ msgstr "" "[/csharp]\n" "[/codeblocks]" +msgid "Constructs a default-initialized [bool] set to [code]false[/code]." +msgstr "构造默认初始化为 [code]false[/code] 的 [bool]。" + msgid "Constructs a [bool] as a copy of the given [bool]." msgstr "构造给定 [bool] 的副本。" @@ -14668,7 +14792,7 @@ msgid "Text [Color] used when the [Button] is being hovered and pressed." msgstr "该 [Button] 处于悬停并按下状态时,使用的文本 [Color]。" msgid "The tint of text outline of the [Button]." -msgstr "该 [Button] 的文本轮廓的着色。" +msgstr "该 [Button] 的文本轮廓的色调。" msgid "Text [Color] used when the [Button] is being pressed." msgstr "该 [Button] 处于按下状态时,使用的文本 [Color] 。" @@ -15252,6 +15376,14 @@ msgstr "" "拖动相机所需的上边距。值为 [code]1[/code] 时,相机仅在到达屏幕顶部边缘时移" "动。" +msgid "" +"If [code]true[/code], the camera only moves when reaching the vertical (top " +"and bottom) drag margins. If [code]false[/code], the camera moves vertically " +"regardless of the drag margins." +msgstr "" +"如果为 [code]true[/code],相机仅在达到垂直(顶部及底部)拖动边距时才移动。如" +"果为 [code]false[/code],相机会垂直移动而不管边距。" + msgid "" "If [code]true[/code], draws the camera's drag margin rectangle in the editor." msgstr "如果为 [code]true[/code],在编辑器中绘制相机的拖动边距矩形。" @@ -15264,6 +15396,13 @@ msgid "" "If [code]true[/code], draws the camera's screen rectangle in the editor." msgstr "如果为 [code]true[/code],在编辑器中绘制相机的画面矩形。" +msgid "" +"If [code]true[/code], the camera's rendered view is not affected by its " +"[member Node2D.rotation] and [member Node2D.global_rotation]." +msgstr "" +"如果为 [code]true[/code] ,相机的渲染视图不会受到其 [member Node2D.rotation] " +"和 [member Node2D.global_rotation] 的影响。" + msgid "" "Bottom scroll limit in pixels. The camera stops moving when reaching this " "value, but [member offset] can push the view past the limit." @@ -15387,6 +15526,30 @@ msgid "" "camera." msgstr "描述此相机渲染哪些 3D 渲染层的剔除掩码。" +msgid "" +"If [code]true[/code], the ancestor [Viewport] is currently using this " +"camera.\n" +"If multiple cameras are in the scene, one will always be made current. For " +"example, if two [Camera3D] nodes are present in the scene and only one is " +"current, setting one camera's [member current] to [code]false[/code] will " +"cause the other camera to be made current." +msgstr "" +"如果为 [code]true[/code],则祖级 [Viewport] 正在使用这个相机。\n" +"如果场景中有多个相机,总会有一个被设为当前相机。例如,假设场景中存在两个 " +"[Camera3D] 节点并且只有一个为当前相机,那么如果把某一个相机的 [member " +"current] 设为 [code]false[/code] 就会导致另一个相机被设为当前相机。" + +msgid "" +"If not [constant DOPPLER_TRACKING_DISABLED], this camera will simulate the " +"[url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/url] for " +"objects changed in particular [code]_process[/code] methods. See [enum " +"DopplerTracking] for possible values." +msgstr "" +"如果不是 [constant DOPPLER_TRACKING_DISABLED],此相机将为在 [code]_process[/" +"code] 中变化的对象模拟[url=https://zh.wikipedia.org/wiki/" +"%E5%A4%9A%E6%99%AE%E5%8B%92%E6%95%88%E5%BA%94]多普勒效应[/url]。可能的值见 " +"[enum DopplerTracking]。" + msgid "The [Environment] to use for this camera." msgstr "此相机要使用的 [Environment]。" @@ -15395,6 +15558,25 @@ msgid "" "local Z axis." msgstr "该相机相对于其本地Z轴的远裁边界的距离。" +msgid "" +"The camera's field of view angle (in degrees). Only applicable in " +"perspective mode. Since [member keep_aspect] locks one axis, [code]fov[/" +"code] sets the other axis' field of view angle.\n" +"For reference, the default vertical field of view value ([code]75.0[/code]) " +"is equivalent to a horizontal FOV of:\n" +"- ~91.31 degrees in a 4:3 viewport\n" +"- ~101.67 degrees in a 16:10 viewport\n" +"- ~107.51 degrees in a 16:9 viewport\n" +"- ~121.63 degrees in a 21:9 viewport" +msgstr "" +"相机的视野角度(单位为度)。仅适用于透视模式。由于 [member keep_aspect] 锁定" +"一个轴,因此 [code]fov[/code] 设置另一个轴的视角。\n" +"作为参考,默认的垂直视野值([code]70.0[/code])相当于以下水平 FOV:\n" +"- 在 4:3 视口中约 91.31 度\n" +"- 在 16:10 视口中约 101.67 度\n" +"- 在 16:9 视口中约 107.51 度\n" +"- 在 21:9 视口中约 121.63 度" + msgid "" "The camera's frustum offset. This can be changed from the default to create " "\"tilted frustum\" effects such as [url=https://zdoom.org/wiki/Y-shearing]Y-" @@ -15530,6 +15712,65 @@ msgstr "自动曝光效果的速度。影响相机执行自动曝光所需的时 msgid "Physically-based camera settings." msgstr "基于物理的相机设置。" +msgid "" +"[CameraAttributesPhysical] is used to set rendering settings based on a " +"physically-based camera's settings. It is responsible for exposure, auto-" +"exposure, and depth of field.\n" +"When used in a [WorldEnvironment] it provides default settings for exposure, " +"auto-exposure, and depth of field that will be used by all cameras without " +"their own [CameraAttributes], including the editor camera. When used in a " +"[Camera3D] it will override any [CameraAttributes] set in the " +"[WorldEnvironment] and will override the [Camera3D]s [member Camera3D.far], " +"[member Camera3D.near], [member Camera3D.fov], and [member Camera3D." +"keep_aspect] properties. When used in [VoxelGI] or [LightmapGI], only the " +"exposure settings will be used.\n" +"The default settings are intended for use in an outdoor environment, tips " +"for settings for use in an indoor environment can be found in each setting's " +"documentation.\n" +"[b]Note:[/b] Depth of field blur is only supported in the Forward+ and " +"Mobile rendering methods, not Compatibility." +msgstr "" +"[CameraAttributesPhysical] 用于根据基于物理的相机的设置来设置渲染设置。它负责" +"曝光、自动曝光和景深。\n" +"当在 [WorldEnvironment] 中使用时,它提供了曝光、自动曝光和景深的默认设置,这" +"些设置将由所有没有自己的 [CameraAttributes] 的相机使用,包括编辑器相机。当在 " +"[Camera3D] 中使用时,它将覆盖 [WorldEnvironment] 中设置的任何 " +"[CameraAttributes],并将覆盖 [Camera3D] 的 [member Camera3D.far]、[member " +"Camera3D.near]、[member Camera3D.fov] 和 [member Camera3D.keep_aspect] 属性。" +"在 [VoxelGI] 或 [LightmapGI] 中使用时,将只会使用曝光设置。\n" +"默认设置适用于室外环境,可在每个设置的文档中找到有关在室内环境中使用的设置的" +"提示。\n" +"[b]注意:[/b]景深模糊只支持 Forward+ 和 Mobile 渲染方式,不支持 " +"Compatibility。" + +msgid "Camera settings in an easy to use format." +msgstr "相机设置,格式比较易用。" + +msgid "" +"Enables depth of field blur for objects further than [member " +"dof_blur_far_distance]. Strength of blur is controlled by [member " +"dof_blur_amount] and modulated by [member dof_blur_far_transition].\n" +"[b]Note:[/b] Depth of field blur is only supported in the Forward+ and " +"Mobile rendering methods, not Compatibility." +msgstr "" +"为比 [member dof_blur_far_distance] 更远的对象启用景深模糊。模糊强度由 " +"[member dof_blur_amount] 控制,并由 [member dof_blur_far_transition] 调制。\n" +"[b]注意:[/b]景深模糊只支持 Forward+ 和 Mobile 渲染方式,不支持 " +"Compatibility。" + +msgid "" +"Enables depth of field blur for objects closer than [member " +"dof_blur_near_distance]. Strength of blur is controlled by [member " +"dof_blur_amount] and modulated by [member dof_blur_near_transition].\n" +"[b]Note:[/b] Depth of field blur is only supported in the Forward+ and " +"Mobile rendering methods, not Compatibility." +msgstr "" +"为比 [member dof_blur_near_distance] 更近的物体启用景深模糊。模糊强度由 " +"[member dof_blur_amount] 控制,并由 [member dof_blur_near_transition] 调" +"制。\n" +"[b]注意:[/b]景深模糊只支持 Forward+ 和 Mobile 渲染方式,不支持 " +"Compatibility。" + msgid "" "A camera feed gives you access to a single physical camera attached to your " "device." @@ -15612,6 +15853,11 @@ msgstr "将相机源 [param feed] 添加到相机服务器中。" msgid "Returns an array of [CameraFeed]s." msgstr "返回一个 [CameraFeed] 数组。" +msgid "" +"Returns the [CameraFeed] corresponding to the camera with the given [param " +"index]." +msgstr "返回与给定索引 [param index] 的相机对应的 [CameraFeed]。" + msgid "Returns the number of [CameraFeed]s registered." msgstr "返回注册的 [CameraFeed] 的数量。" @@ -16080,6 +16326,69 @@ msgstr "该 [CanvasItem] 已退出画布。" msgid "The [CanvasItem] will inherit the filter from its parent." msgstr "该 [CanvasItem] 将从其父级继承过滤器。" +msgid "" +"The texture filter reads from the nearest pixel only. The simplest and " +"fastest method of filtering. Useful for pixel art." +msgstr "纹理过滤器仅读取最邻近的像素。最简单、最快的过滤方法。可用于像素画。" + +msgid "" +"The texture filter blends between the nearest four pixels. Use this for most " +"cases where you want to avoid a pixelated style." +msgstr "" +"纹理过滤器在最邻近的四个像素之间混合。如果想要避免像素化样式,大多数情况下请" +"使用此选项。" + +msgid "" +"The texture filter reads from the nearest pixel in the nearest mipmap. This " +"is the fastest way to read from textures with mipmaps." +msgstr "" +"纹理过滤器读取最邻近的 mipmap 中的最邻近像素。这是使用 mipmap 从纹理中读取的" +"最快方法。" + +msgid "" +"The texture filter blends between the nearest 4 pixels and between the " +"nearest 2 mipmaps. Use this for non-pixel art textures that may be viewed at " +"a low scale (e.g. due to [Camera2D] zoom), as mipmaps are important to " +"smooth out pixels that are smaller than on-screen pixels." +msgstr "" +"纹理过滤器在最邻近的 4 个像素和最邻近的 2 个 mipmap 之间混合。请用于可能以低" +"缩放率查看的非像素画纹理(例如由 [Camera2D] 缩放造成),因为 mipmap 对于平滑" +"小于屏幕像素的像素很重要。" + +msgid "" +"The texture filter reads from the nearest pixel, but selects a mipmap based " +"on the angle between the surface and the camera view. This reduces artifacts " +"on surfaces that are almost in line with the camera. The anisotropic " +"filtering level can be changed by adjusting [member ProjectSettings." +"rendering/textures/default_filters/anisotropic_filtering_level].\n" +"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant " +"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate." +msgstr "" +"纹理过滤器读取最邻近的像素,但会根据表面和相机视图之间的角度选择 mipmap。可以" +"减少几乎与相机成一直线的表面的伪影。各向异性过滤级别可以通过调整 [member " +"ProjectSettings.rendering/textures/default_filters/" +"anisotropic_filtering_level] 来改变。\n" +"[b]注意:[/b]这个纹理过滤器很少用于 2D 项目。[constant " +"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] 通常更合适。" + +msgid "" +"The texture filter blends between the nearest 4 pixels and selects a mipmap " +"based on the angle between the surface and the camera view. This reduces " +"artifacts on surfaces that are almost in line with the camera. This is the " +"slowest of the filtering options, but results in the highest quality " +"texturing. The anisotropic filtering level can be changed by adjusting " +"[member ProjectSettings.rendering/textures/default_filters/" +"anisotropic_filtering_level].\n" +"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant " +"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate." +msgstr "" +"纹理过滤器在最邻近的 4 个像素之间进行混合,并会根据表面和相机视图之间的角度选" +"择 mipmap。可以减少几乎与相机成一直线的表面的伪影。这是最慢的过滤选项,但可以" +"得到最高质量的纹理。各向异性过滤级别可以通过调整 [member ProjectSettings." +"rendering/textures/default_filters/anisotropic_filtering_level] 来改变。\n" +"[b]注意:[/b]这个纹理过滤器很少用于 2D 项目。[constant " +"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] 通常更合适。" + msgid "Texture will not repeat." msgstr "纹理不会重复。" @@ -16094,6 +16403,9 @@ msgstr "纹理将以 2x2 平铺模式重复,其中偶数位置的元素会被 msgid "Represents the size of the [enum TextureRepeat] enum." msgstr "代表 [enum TextureRepeat] 枚举的大小。" +msgid "Child draws over parent and is not clipped." +msgstr "子级绘制在父级之上,不会被裁剪。" + msgid "" "Parent is used for the purposes of clipping only. Child is clipped to the " "parent's visible area, parent is not drawn." @@ -16233,6 +16545,11 @@ msgstr "画布层" msgid "Returns the RID of the canvas used by this layer." msgstr "返回此层使用的画布的 RID。" +msgid "" +"Returns the transform from the [CanvasLayer]s coordinate system to the " +"[Viewport]s coordinate system." +msgstr "返回从 [CanvasLayer] 坐标系到 [Viewport] 坐标系的变换。" + msgid "" "Hides any [CanvasItem] under this [CanvasLayer]. This is equivalent to " "setting [member visible] to [code]false[/code]." @@ -16265,6 +16582,10 @@ msgstr "" "幕上的某个固定位置。\n" "与 [member follow_viewport_scale] 配合可以实现伪 3D 效果。" +msgid "" +"Layer index for draw order. Lower values are drawn behind higher values." +msgstr "绘制顺序的图层索引。较低值绘制在较高值之后。" + msgid "The layer's base offset." msgstr "图层的基本偏移量。" @@ -16296,11 +16617,54 @@ msgstr "给整个画布上色。" msgid "" "[CanvasModulate] tints the canvas elements using its assigned [member color]." -msgstr "[CanvasModulate]使用其分配的[member color]对画布元素进行着色。" +msgstr "[CanvasModulate] 使用其分配的 [member color] 对画布元素着色。" msgid "The tint color to apply." msgstr "要应用的色调颜色。" +msgid "Texture with optional normal and specular maps for use in 2D rendering." +msgstr "用于 2D 渲染的纹理,带有可选的法线和镜面贴图。" + +msgid "" +"[CanvasTexture] is an alternative to [ImageTexture] for 2D rendering. It " +"allows using normal maps and specular maps in any node that inherits from " +"[CanvasItem]. [CanvasTexture] also allows overriding the texture's filter " +"and repeat mode independently of the node's properties (or the project " +"settings).\n" +"[b]Note:[/b] [CanvasTexture] cannot be used in 3D rendering. For physically-" +"based materials in 3D, use [BaseMaterial3D] instead." +msgstr "" +"[CanvasTexture] 是用于 2D 渲染的 [ImageTexture] 的替代品。它允许在任何继承自 " +"[CanvasItem] 的节点中使用法线贴图和镜面贴图。[CanvasTexture] 还允许独立于节点" +"的属性(或项目设置)覆盖纹理的过滤模式和重复模式。\n" +"[b]注意:[/b][CanvasTexture] 不能用于 3D 渲染。对于 3D 中基于物理的材质,请使" +"用 [BaseMaterial3D] 来代替。" + +msgid "" +"The diffuse (color) texture to use. This is the main texture you want to set " +"in most cases." +msgstr "要使用的漫反射(颜色)纹理。这是你在大多数情况下要设置的主要纹理。" + +msgid "" +"The normal map texture to use. Only has a visible effect if [Light2D]s are " +"affecting this [CanvasTexture].\n" +"[b]Note:[/b] Godot expects the normal map to use X+, Y+, and Z+ coordinates. " +"See [url=http://wiki.polycount.com/wiki/" +"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for " +"a comparison of normal map coordinates expected by popular engines." +msgstr "" +"要使用的法线贴图纹理。仅在有 [Light2D] 影响该 [CanvasTexture] 时才有可见的效" +"果。\n" +"[b]注意:[/b]Godot 期望法线贴图使用 X+、Y+、Z+ 坐标系。比较流行的引擎所期望的" +"法线贴图坐标系见[url=http://wiki.polycount.com/wiki/" +"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]这个页面[/url]。" + +msgid "The texture filtering mode to use when drawing this [CanvasTexture]." +msgstr "绘制该 [CanvasTexture] 时所使用的纹理过滤模式。" + +msgid "The texture repeat mode to use when drawing this [CanvasTexture]." +msgstr "绘制该 [CanvasTexture] 时所使用的纹理重复模式。" + msgid "Class representing a capsule-shaped [PrimitiveMesh]." msgstr "表示胶囊状 [PrimitiveMesh] 的类。" @@ -16313,12 +16677,18 @@ msgstr "胶囊网格的半径。" msgid "Number of rings along the height of the capsule." msgstr "沿胶囊高度的环数。" +msgid "Capsule shape resource for 2D physics." +msgstr "用于 2D 物理的胶囊形状资源。" + msgid "The capsule's height." msgstr "胶囊体的高度。" msgid "The capsule's radius." msgstr "胶囊体的半径。" +msgid "Capsule shape resource for 3D collisions." +msgstr "用于 3D 物理的胶囊形状资源。" + msgid "Keeps children controls centered." msgstr "使子级控件居中。" @@ -17002,7 +17372,7 @@ msgid "Binary choice user interface widget. See also [CheckButton]." msgstr "二项选择用户界面小部件。另请参阅 [CheckButton]。" msgid "The [CheckBox] text's font color." -msgstr "该 [CheckBox] 的文本字体颜色。" +msgstr "该 [CheckBox] 文本的字体颜色。" msgid "The [CheckBox] text's font color when it's disabled." msgstr "该 [CheckBox] 被禁用时的文本字体颜色。" @@ -17021,46 +17391,56 @@ msgstr "该 [CheckBox] 被悬停时的文本字体颜色。" msgid "The [CheckBox] text's font color when it's hovered and pressed." msgstr "该 [CheckBox] 被悬停且被按下时的文本字体颜色。" +msgid "The tint of text outline of the [CheckBox]." +msgstr "该 [CheckBox] 文本轮廓的色调。" + msgid "The [CheckBox] text's font color when it's pressed." msgstr "该 [CheckBox] 被按下时的文本字体颜色。" msgid "The vertical offset used when rendering the check icons (in pixels)." msgstr "渲染复选图标时使用的垂直偏移量(单位为像素)。" +msgid "" +"The separation between the check icon and the text (in pixels). Negative " +"values will be treated as [code]0[/code] when used." +msgstr "" +"复选图标与文本之间的间隔(单位为像素)。使用时负值会被视为 [code]0[/code]。" + msgid "The [Font] to use for the [CheckBox] text." -msgstr "该 [CheckBox] 的文本所使用的 [Font]。" +msgstr "该 [CheckBox] 文本所使用的 [Font]。" msgid "Font size of the [CheckBox]'s text." -msgstr "该 [CheckBox] 的文本字体大小。" +msgstr "该 [CheckBox] 文本的字体大小。" msgid "The check icon to display when the [CheckBox] is checked." -msgstr "选中图标,该 [CheckBox] 处于选中状态时使用。" +msgstr "选中时显示的图标,该 [CheckBox] 处于选中状态时使用。" msgid "" "The check icon to display when the [CheckBox] is checked and is disabled." -msgstr "选中图标,该 [CheckBox] 处于选中且禁用状态时使用。" +msgstr "选中时显示的图标,该 [CheckBox] 处于选中且禁用状态时使用。" msgid "" "The check icon to display when the [CheckBox] is configured as a radio " "button and is checked." -msgstr "选中图标,该 [CheckBox] 被配置为单选按钮并处于选中状态时使用。" +msgstr "选中时显示的图标,该 [CheckBox] 被配置为单选按钮并处于选中状态时使用。" msgid "" "The check icon to display when the [CheckBox] is configured as a radio " "button, is disabled, and is unchecked." -msgstr "选中图标,该 [CheckBox] 被配置为单选按钮并处于未选且禁用状态时使用。" +msgstr "" +"选中时显示的图标,该 [CheckBox] 被配置为单选按钮并处于未选且禁用状态时使用。" msgid "" "The check icon to display when the [CheckBox] is configured as a radio " "button and is unchecked." -msgstr "选中图标,该 [CheckBox] 被配置为单选按钮并处于未选状态时使用。" +msgstr "选中时显示的图标,该 [CheckBox] 被配置为单选按钮并处于未选状态时使用。" msgid "The check icon to display when the [CheckBox] is unchecked." -msgstr "选中图标,该 [CheckBox] 处于未选状态时使用。" +msgstr "选中时显示的图标,该 [CheckBox] 处于未选状态时使用。" msgid "" "The check icon to display when the [CheckBox] is unchecked and is disabled." -msgstr "选中图标,该 [CheckBox] 处于未选状态时使用。" +msgstr "选中时显示的图标,该 [CheckBox] 处于未选状态时使用。" msgid "" "The [StyleBox] to display as a background when the [CheckBox] is disabled." @@ -17102,6 +17482,22 @@ msgstr "作为背景显示的 [StyleBox],该 [CheckBox] 处于按下状态时 msgid "Checkable button. See also [CheckBox]." msgstr "可复选的按钮。另请参阅 [CheckBox]。" +msgid "" +"CheckButton is a toggle button displayed as a check field. It's similar to " +"[CheckBox] in functionality, but it has a different appearance. To follow " +"established UX patterns, it's recommended to use CheckButton when toggling " +"it has an [b]immediate[/b] effect on something. For example, it could be " +"used if toggling it enables/disables a setting without requiring the user to " +"press a confirmation button.\n" +"See also [BaseButton] which contains common properties and methods " +"associated with this node." +msgstr "" +"CheckButton 是一种开关按钮,以开关字段的形式显示。功能上类似于 [CheckBox],但" +"外观不同。为了实现一致的用户体验模式,建议在开关会[b]立即[/b]产生效果时使用 " +"CheckButton。例如,开关后无需用户按下确认按钮,会立即启用/禁用某个设置时就可" +"以使用。\n" +"另见 [BaseButton],包含该按钮的通用属性和方法。" + msgid "The [CheckButton] text's font color." msgstr "该 [CheckButton] 的文本字体颜色。" @@ -17122,12 +17518,21 @@ msgstr "该 [CheckButton] 被悬停时的文本字体颜色。" msgid "The [CheckButton] text's font color when it's hovered and pressed." msgstr "该 [CheckButton] 被悬停且被按下时的文本字体颜色。" +msgid "The tint of text outline of the [CheckButton]." +msgstr "该 [CheckButton] 文本轮廓的色调。" + msgid "The [CheckButton] text's font color when it's pressed." msgstr "该 [CheckButton] 被按下时的文本字体颜色。" msgid "The vertical offset used when rendering the toggle icons (in pixels)." msgstr "渲染切换图标时使用的垂直偏移量(单位为像素)。" +msgid "" +"The separation between the toggle icon and the text (in pixels). Negative " +"values will be treated as [code]0[/code] when used." +msgstr "" +"切换图标与文本之间的间隔(单位为像素)。使用时负值会被视为 [code]0[/code]。" + msgid "The [Font] to use for the [CheckButton] text." msgstr "该 [CheckButton] 文本所使用的 [Font]。" @@ -17212,6 +17617,9 @@ msgid "" "The [StyleBox] to display as a background when the [CheckButton] is pressed." msgstr "作为背景显示的 [StyleBox],用于该 [CheckButton] 的按下状态。" +msgid "Circular shape resource for 2D physics." +msgstr "用于 2D 物理的圆形资源。" + msgid "The circle's radius." msgstr "圆的半径。" @@ -17431,6 +17839,12 @@ msgid "" "Returns the full text with char [code]0xFFFF[/code] at the cursor location." msgstr "返回在光标位置处带有 [code]0xFFFF[/code] 字符的全文。" +msgid "Returns [code]true[/code] if close key [param close_key] exists." +msgstr "如果关闭键 [param close_key] 存在,则返回 [code]true[/code]。" + +msgid "Returns [code]true[/code] if open key [param open_key] exists." +msgstr "如果打开键 [param open_key] 存在,则返回 [code]true[/code]。" + msgid "Returns [code]true[/code] if comment [param start_key] exists." msgstr "如果注释的 [param start_key] 存在,返回 [code]true[/code] 。" @@ -17538,6 +17952,21 @@ msgid "" "Sets the string delimiters. All existing string delimiters will be removed." msgstr "设置字符串分隔符。将删除所有的现有字符串分隔符。" +msgid "" +"Sets if bookmarked should be drawn in the gutter. This gutter is shared with " +"breakpoints and executing lines." +msgstr "设置是否应在边栏中绘制书签。该边栏与断点和执行行共享。" + +msgid "" +"Sets if breakpoints should be drawn in the gutter. This gutter is shared " +"with bookmarks and executing lines." +msgstr "设置是否应在边栏中绘制断点。该边栏与书签和执行行共享。" + +msgid "" +"Sets if executing lines should be marked in the gutter. This gutter is " +"shared with breakpoints and bookmarks lines." +msgstr "设置是否应在边栏中绘制执行行。该边栏与断点和书签共享。" + msgid "Sets if foldable lines icons should be drawn in the gutter." msgstr "设置是否应在装订线中绘制可折叠行图标。" @@ -17555,6 +17984,12 @@ msgstr "设置是否启用自动缩进,如果找到前缀或括号,这将添 msgid "Prefixes to trigger an automatic indent." msgstr "触发自动缩进的前缀。" +msgid "" +"Size of tabs, if [code]indent_use_spaces[/code] is enabled the number of " +"spaces to use." +msgstr "" +"制表符的大小,如果启用 [code]indent_use_spaces[/code],则代表使用的空格数。" + msgid "Use spaces instead of tabs for indentation." msgstr "使用空格代替制表符进行缩进。" @@ -17571,6 +18006,16 @@ msgstr "" msgid "Emitted when the user requests code completion." msgstr "当用户请求代码补全时触发。" +msgid "Emitted when the user has clicked on a valid symbol." +msgstr "用户点击有效符号时发出。" + +msgid "" +"Emitted when the user hovers over a symbol. The symbol should be validated " +"and responded to, by calling [method set_symbol_lookup_word_as_valid]." +msgstr "" +"用户将鼠标悬停在符号上时发出。应该通过调用 [method " +"set_symbol_lookup_word_as_valid] 对该符号进行验证和响应。" + msgid "Marks the option as a class." msgstr "将该选项标记为类。" @@ -17602,20 +18047,44 @@ msgid "Marks the option as unclassified or plain text." msgstr "将该选项标记为未分类或纯文本。" msgid "Sets the background [Color]." -msgstr "设置背景 [Color]。" +msgstr "设置背景的 [Color]。" msgid "[Color] of the bookmark icon for bookmarked lines." -msgstr "书签图标的颜色 [Color],用于标记了书签的行。" +msgstr "书签图标的 [Color],用于标记了书签的行。" + +msgid "[Color] of the text to highlight mismatched braces." +msgstr "用于高亮不匹配括号文本的 [Color]。" + +msgid "[Color] of the breakpoint icon for bookmarked lines." +msgstr "书签行的断点图标的 [Color]。" msgid "[Color] of the text behind the caret when block caret is enabled." msgstr "启用块光标时在光标后面的文本的 [Color]。" msgid "[Color] of the caret." -msgstr "光标的颜色 [Color]。" +msgstr "光标的 [Color]。" + +msgid "[Color] for all icons related to line folding." +msgstr "所有与折叠行相关的图标的 [Color]。" + +msgid "Font [Color] for the code completion popup." +msgstr "代码补全弹出窗口字体的 [Color]。" + +msgid "[Color] of the scrollbar in the code completion popup." +msgstr "代码补全弹出窗口中滚动条的 [Color]。" + +msgid "Background [Color] of the line containing the caret." +msgstr "光标所在行的背景 [Color]。" + +msgid "[Color] of the executing icon for executing lines." +msgstr "执行行执行图标的 [Color]。" msgid "Sets the font [Color]." msgstr "设置字体颜色 [Color]。" +msgid "The tint of text outline of the [CodeEdit]." +msgstr "该 [CodeEdit] 文本轮廓的色调。" + msgid "Font color for [member TextEdit.placeholder_text]." msgstr "[member TextEdit.placeholder_text] 的字体颜色。" @@ -17625,6 +18094,14 @@ msgstr "设置行号的颜色 [Color]。" msgid "Sets the highlight [Color] of text selections." msgstr "设置文本选择的高亮 [Color] 颜色。" +msgid "" +"Max width of options in the code completion popup. Options longer then this " +"will be cut off." +msgstr "代码补全弹出窗口中选项的最大宽度。更长的选项将被切断。" + +msgid "Width of the scrollbar in the code completion popup." +msgstr "代码补全弹出窗口中滚动条的宽度。" + msgid "Sets the spacing between the lines." msgstr "设置行间距。" @@ -17634,6 +18111,24 @@ msgstr "设置默认的字体 [Font]。" msgid "Sets default font size." msgstr "设置默认的字体大小。" +msgid "" +"Sets a custom [Texture2D] to draw in the bookmark gutter for bookmarked " +"lines." +msgstr "设置书签行的自定义 [Texture2D],会在书签栏中绘制。" + +msgid "" +"Sets a custom [Texture2D] to draw in the breakpoint gutter for breakpointed " +"lines." +msgstr "设置断点行的自定义 [Texture2D],会在断点栏中绘制。" + +msgid "" +"Sets a custom [Texture2D] to draw in the line folding gutter when a line can " +"be folded." +msgstr "设置可折叠行的自定义 [Texture2D],会在折叠行栏中绘制。" + +msgid "Icon to draw in the executing gutter for executing lines." +msgstr "执行行的图标,会在执行栏中绘制。" + msgid "" "Sets a custom [Texture2D] to draw in the line folding gutter when a line is " "folded and can be unfolded." @@ -17671,6 +18166,9 @@ msgstr "" msgid "Sets the [StyleBox]." msgstr "设置该 [StyleBox]。" +msgid "Sets the [StyleBox] when [member TextEdit.editable] is disabled." +msgstr "设置 [member TextEdit.editable] 处于禁用状态时的 [StyleBox]。" + msgid "A syntax highlighter for code." msgstr "代码语法高亮器。" @@ -17687,6 +18185,16 @@ msgstr "" "[param line_only] 表示该区域应该持续到该行的末尾,还是延续到下一行。如果结束" "键为空,则自动设置为[code]true[/code]。" +msgid "" +"Sets the color for a keyword.\n" +"The keyword cannot contain any symbols except '_'." +msgstr "" +"设置关键字的颜色。\n" +"关键字不能包含除“_”之外的任何符号。" + +msgid "Removes all color regions." +msgstr "移除所有颜色区域。" + msgid "Removes all keywords." msgstr "移除所有关键字。" @@ -17699,6 +18207,20 @@ msgstr "返回某个关键字的颜色。" msgid "Returns the color for a member keyword." msgstr "返回某个成员关键字的颜色。" +msgid "" +"Returns [code]true[/code] if the start key exists, else [code]false[/code]." +msgstr "如果开始键存在则返回 [code]true[/code],否则返回 [code]false[/code]。" + +msgid "" +"Returns [code]true[/code] if the keyword exists, else [code]false[/code]." +msgstr "如果关键字存在则返回 [code]true[/code],否则返回 [code]false[/code]。" + +msgid "" +"Returns [code]true[/code] if the member keyword exists, else [code]false[/" +"code]." +msgstr "" +"如果成员关键字存在则返回 [code]true[/code],否则返回 [code]false[/code]。" + msgid "Removes the keyword." msgstr "移除关键字。" @@ -17891,6 +18413,9 @@ msgstr "碰撞将包括多边形及其包含的区域。" msgid "Collisions will only include the polygon edges." msgstr "碰撞将仅包括多边形边缘。" +msgid "Editor-only node for defining a collision polygon in 3D space." +msgstr "编辑器专用的节点,用于在 3D 空间中定义碰撞多边形。" + msgid "" "Allows editing a concave or convex collision polygon's vertices on a " "selected plane. Can also set a depth perpendicular to that plane. This class " @@ -18104,6 +18629,21 @@ msgstr "" msgid "Constructs a [Color] as a copy of the given [Color]." msgstr "构造给定 [Color] 的副本。" +msgid "" +"Constructs a [Color] either from an HTML color code or from a standardized " +"color name. The supported color names are the same as the constants." +msgstr "" +"从 HTML 颜色代码或标准化的颜色名称中构建 [Color]。支持的颜色名称与常量名相" +"同。" + +msgid "" +"Constructs a [Color] either from an HTML color code or from a standardized " +"color name, with [param alpha] on the range of 0.0 to 1.0. The supported " +"color names are the same as the constants." +msgstr "" +"从 HTML 颜色代码或标准化的颜色名称中构建 [Color],[param alpha] 的范围为 0.0 " +"到 1.0。支持的颜色名称与常量名相同。" + msgid "" "Constructs a [Color] from RGB values, typically between 0.0 and 1.0. [member " "a] is set to 1.0.\n" @@ -18212,6 +18752,12 @@ msgstr "" "[/csharp]\n" "[/codeblocks]" +msgid "" +"Decodes a [Color] from a RGBE9995 format integer. See [constant Image." +"FORMAT_RGBE9995]." +msgstr "" +"从 RGBE9995 格式的整数解码 [Color]。见 [constant Image.FORMAT_RGBE9995]。" + msgid "" "Creates a [Color] from the given string, which can be either an HTML color " "code or a named color (case-insensitive). Returns [param default] if the " @@ -18608,6 +19154,9 @@ msgstr "橘黄色。" msgid "Black color. In GDScript, this is the default value of any color." msgstr "黑色。在 GDScript 中,这是所有颜色的默认值。" +msgid "Blanched almond color." +msgstr "杏仁白色。" + msgid "Blue color." msgstr "蓝色。" @@ -18617,6 +19166,9 @@ msgstr "蓝紫色的颜色。" msgid "Brown color." msgstr "棕色。" +msgid "Burlywood color." +msgstr "硬木色。" + msgid "Cadet blue color." msgstr "军服蓝。" @@ -18629,6 +19181,12 @@ msgstr "巧克力色。" msgid "Coral color." msgstr "珊瑚色。" +msgid "Cornflower blue color." +msgstr "矢车菊蓝色。" + +msgid "Cornsilk color." +msgstr "玉米须色。" + msgid "Crimson color." msgstr "绯红的颜色。" @@ -19049,6 +19607,24 @@ msgstr "将该 [Color] 的每个分量除以给定的 [float]。" msgid "Divides each component of the [Color] by the given [int]." msgstr "将该 [Color] 的每个分量除以给定的 [int]。" +msgid "" +"Returns [code]true[/code] if the colors are exactly equal.\n" +"[b]Note:[/b] Due to floating-point precision errors, consider using [method " +"is_equal_approx] instead, which is more reliable." +msgstr "" +"如果颜色完全相同,则返回 [code]true[/code]。\n" +"[b]注意:[/b]由于浮点精度误差,请考虑改用更可靠的 [method is_equal_approx]。" + +msgid "" +"Access color components using their index. [code][0][/code] is equivalent to " +"[member r], [code][1][/code] is equivalent to [member g], [code][2][/code] " +"is equivalent to [member b], and [code][3][/code] is equivalent to [member " +"a]." +msgstr "" +"使用索引访问颜色分量。[code][0][/code] 相当于 [member r],[code][1][/code] 相" +"当于 [member g],[code][2][/code] 相当于 [member b],[code][3][/code] 相当于 " +"[member a]." + msgid "Color picker control." msgstr "取色器控件。" @@ -19152,9 +19728,15 @@ msgstr "饱和度选择框的宽度。" msgid "The icon for the \"Add Preset\" button." msgstr "“添加预设”按钮的图标。" +msgid "The texture for the arrow grabber." +msgstr "箭头抓取器的纹理。" + msgid "Custom texture for the hue selection slider on the right." msgstr "右侧的色相选择滑块的自定义纹理。" +msgid "Custom texture for the H slider in the OKHSL color mode." +msgstr "OKHSL 颜色模式的 H 滑块的自定义纹理。" + msgid "The icon for color preset drop down menu when expanded." msgstr "颜色预设下拉菜单展开时使用的图标。" @@ -19225,6 +19807,9 @@ msgstr "" msgid "Text [Color] used when the [ColorPickerButton] is being hovered." msgstr "悬停 [ColorPickerButton] 时使用的文本 [Color]。" +msgid "The tint of text outline of the [ColorPickerButton]." +msgstr "[ColorPickerButton] 文本轮廓的色调。" + msgid "Text [Color] used when the [ColorPickerButton] is being pressed." msgstr "按下 [ColorPickerButton] 时使用的文本颜色 [Color]。" @@ -20462,6 +21047,96 @@ msgstr "" "移除名为指定 [param name] 的主题 [StyleBox] 本地覆盖项,该覆盖项由 [method " "add_theme_stylebox_override] 或检查器面板添加的。" +msgid "" +"Works the same as [method set_anchor], but instead of [code]keep_offset[/" +"code] argument and automatic update of offset, it allows to set the offset " +"yourself (see [method set_offset])." +msgstr "" +"工作原理与 [method set_anchor] 相同,但取代 [code]keep_offset[/code] 参数和自" +"动更新的偏移,它允许您自己设置偏移量(参见 [method set_offset])。" + +msgid "" +"Sets both anchor preset and offset preset. See [method set_anchors_preset] " +"and [method set_offsets_preset]." +msgstr "" +"设置锚点预设和偏移预设。参见 [method set_anchors_preset] 和 [method " +"set_offsets_preset]。" + +msgid "" +"Sets [member offset_left] and [member offset_top] at the same time. " +"Equivalent of changing [member position]." +msgstr "" +"同时设置 [member offset_left] 和 [member offset_top]。相当于改变 [member " +"position]。" + +msgid "" +"Shows the given control at the mouse pointer. A good time to call this " +"method is in [method _get_drag_data]. The control must not be in the scene " +"tree. You should not free the control, and you should not keep a reference " +"to the control beyond the duration of the drag. It will be deleted " +"automatically after the drag has ended.\n" +"[codeblocks]\n" +"[gdscript]\n" +"@export var color = Color(1, 0, 0, 1)\n" +"\n" +"func _get_drag_data(position):\n" +" # Use a control that is not in the tree\n" +" var cpb = ColorPickerButton.new()\n" +" cpb.color = color\n" +" cpb.size = Vector2(50, 50)\n" +" set_drag_preview(cpb)\n" +" return color\n" +"[/gdscript]\n" +"[csharp]\n" +"[Export]\n" +"private Color _color = new Color(1, 0, 0, 1);\n" +"\n" +"public override Variant _GetDragData(Vector2 atPosition)\n" +"{\n" +" // Use a control that is not in the tree\n" +" var cpb = new ColorPickerButton();\n" +" cpb.Color = _color;\n" +" cpb.Size = new Vector2(50, 50);\n" +" SetDragPreview(cpb);\n" +" return _color;\n" +"}\n" +"[/csharp]\n" +"[/codeblocks]" +msgstr "" +"在鼠标指针处显示给定的控件。调用此方法的好时机是在 [method _get_drag_data] " +"中。控件不得位于场景树中。您不应释放控件,也不应在拖动持续时间之外保留对控件" +"的引用。拖拽结束后它会自动删除。\n" +"[codeblocks]\n" +"[gdscript]\n" +"@export var color = Color(1, 0, 0, 1)\n" +"\n" +"func _get_drag_data(position):\n" +" #使用不在树中的控件\n" +" var cpb = ColorPickerButton.new()\n" +" cpb.color = color\n" +" cpb.size = Vector2(50, 50)\n" +" set_drag_preview(cpb)\n" +" return color\n" +"[/gdscript]\n" +"[csharp]\n" +"[Export]\n" +"private Color _color = new Color(1, 0, 0, 1);\n" +"\n" +"public override Variant _GetDragData(Vector2 atPosition)\n" +"{\n" +" // 使用不在树中的控件\n" +" var cpb = new ColorPickerButton();\n" +" cpb.Color = _color;\n" +" cpb.Size = new Vector2(50, 50);\n" +" SetDragPreview(cpb);\n" +" return _color;\n" +"}\n" +"[/csharp]\n" +"[/codeblocks]" + +msgid "Sets [member offset_right] and [member offset_bottom] at the same time." +msgstr "同时设置 [member offset_right] 和 [member offset_bottom]。" + msgid "" "Moves the mouse cursor to [param position], relative to [member position] of " "this [Control].\n" @@ -20702,10 +21377,64 @@ msgstr "" "该节点的位置,相对于父节点。对应的是矩形的左上角。该属性不受 [member " "pivot_offset] 的影响。" +msgid "" +"The node's rotation around its pivot, in radians. See [member pivot_offset] " +"to change the pivot's position.\n" +"[b]Note:[/b] This property is edited in the inspector in degrees. If you " +"want to use degrees in a script, use [member rotation_degrees]." +msgstr "" +"该节点围绕其轴心的旋转,单位为弧度。要更改轴心的位置,请参阅 [member " +"pivot_offset]。\n" +"[b]注意:[/b]该属性在检查器中以度为单位进行编辑。如果要在脚本中使用度数,请使" +"用 [member rotation_degrees]。" + msgid "" "Helper property to access [member rotation] in degrees instead of radians." msgstr "辅助属性,用于按度数访问 [member rotation] 而不是弧度数。" +msgid "" +"The node's scale, relative to its [member size]. Change this property to " +"scale the node around its [member pivot_offset]. The Control's [member " +"tooltip_text] will also scale according to this value.\n" +"[b]Note:[/b] This property is mainly intended to be used for animation " +"purposes. To support multiple resolutions in your project, use an " +"appropriate viewport stretch mode as described in the [url=$DOCS_URL/" +"tutorials/rendering/multiple_resolutions.html]documentation[/url] instead of " +"scaling Controls individually.\n" +"[b]Note:[/b] [member FontFile.oversampling] does [i]not[/i] take [Control] " +"[member scale] into account. This means that scaling up/down will cause " +"bitmap fonts and rasterized (non-MSDF) dynamic fonts to appear blurry or " +"pixelated. To ensure text remains crisp regardless of scale, you can enable " +"MSDF font rendering by enabling [member ProjectSettings.gui/theme/" +"default_font_multichannel_signed_distance_field] (applies to the default " +"project font only), or enabling [b]Multichannel Signed Distance Field[/b] in " +"the import options of a DynamicFont for custom fonts. On system fonts, " +"[member SystemFont.multichannel_signed_distance_field] can be enabled in the " +"inspector.\n" +"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale " +"will be reset to [code]Vector2(1, 1)[/code] when the scene is instantiated. " +"To set the Control's scale when it's instantiated, wait for one frame using " +"[code]await get_tree().process_frame[/code] then set its [member scale] " +"property." +msgstr "" +"节点的缩放,相对于它的 [member size]。更改该属性以围绕其 [member " +"pivot_offset] 缩放节点。该 Control 的 [member tooltip_text] 也将根据该值进行" +"缩放。\n" +"[b]注意:[/b]该属性主要用于动画用途。要在项目中支持多种分辨率,请使用 " +"[url=$DOCS_URL/tutorials/rendering/multiple_resolutions.html]文档[/url] 中所" +"述的合适的视口拉伸模式,而不是单独缩放控件。\n" +"[b]注意:[/b][member FontFile.oversampling] [i]不[/i]考虑 [Control] [member " +"scale]。这意味着放大/缩小会导致位图字体和光栅化(非 MSDF)动态字体显得模糊或" +"像素化。为确保无论缩放比例如何,文本都保持清晰,您可以通过启用 [member " +"ProjectSettings.gui/theme/default_font_multichannel_signed_distance_field]" +"(仅适用于默认项目字体);或在自定义字体的 DynamicFont 的导入选项中,启用[b]" +"多通道有符号距离场[/b]来启用 MSDF 字体渲染。对于系统字体,可以在检查器中启用 " +"[member SystemFont.multichannel_signed_distance_field]。\n" +"[b]注意:[/b]如果该 Control 节点是 [Container] 节点的子节点,则场景实例化时," +"缩放将重置为 [code]Vector2(1, 1)[/code]。要在实例化时设置控件的缩放,请使用 " +"[code]await get_tree().process_frame[/code] 等待一帧,然后再设置其 [member " +"scale] 属性。" + msgid "" "The size of the node's bounding rectangle, in the node's coordinate system. " "[Container] nodes update this property automatically." @@ -21099,6 +21828,22 @@ msgstr "" "到 [signal mouse_entered] 和 [signal mouse_exited] 信号。这些事件将自动被标记" "为已处理,不会进一步传播到其他控件,因此相关的信号也不会在其他控件中触发。" +msgid "" +"The control will receive mouse button input events through [method " +"_gui_input] if clicked on. And the control will receive the [signal " +"mouse_entered] and [signal mouse_exited] signals. If this control does not " +"handle the event, the parent control (if any) will be considered, and so on " +"until there is no more parent control to potentially handle it. This also " +"allows signals to fire in other controls. If no control handled it, the " +"event will be passed to [method Node._unhandled_input] for further " +"processing." +msgstr "" +"控件被点击时,将通过 [method _gui_input] 收到鼠标按钮输入事件。并且控件能够接" +"收到 [signal mouse_entered] 和 [signal mouse_exited] 信号。如果此控件未处理事" +"件,则将考虑其父控件(如果有的话),并依此类推,直到不再有可能处理它的父控件" +"为止。相关的信号可以在其他控件中触发。如果没有控件处理它,事件将被传递到 " +"[method Node._unhandled_input] 进一步处理。" + msgid "" "The control will not receive mouse button input events through [method " "_gui_input]. The control will also not receive the [signal mouse_entered] " @@ -21151,6 +21896,14 @@ msgstr "" "[code]anchor_*[/code] 成员变量中使用,例如 [member anchor_left]。要一次更改全" "部 4 个锚点,请使用 [method set_anchors_preset]。" +msgid "" +"Automatic layout direction, determined from the parent control layout " +"direction." +msgstr "自动布局方向,由父控件布局方向决定。" + +msgid "Automatic layout direction, determined from the current locale." +msgstr "自动布局方向,根据当前语言环境确定。" + msgid "Left-to-right layout direction." msgstr "从左至右的布局方向。" @@ -21619,6 +22372,14 @@ msgstr "" "如果 [enum EmissionShape] 设置为 [constant EMISSION_SHAPE_SPHERE],则球体的半" "径。" +msgid "" +"The particle system's frame rate is fixed to a value. For example, changing " +"the value to 2 will make the particles render at 2 frames per second. Note " +"this does not slow down the particle system itself." +msgstr "" +"固定粒子系统的帧速率为一个值。例如,把该值改为2将使粒子以每秒2帧的速度渲染。" +"请注意,这并不会降低粒子系统本身的速度。" + msgid "" "Amount of [member spread] in Y/Z plane. A value of [code]1[/code] restricts " "particles to X/Z plane." @@ -21644,6 +22405,19 @@ msgstr "最大线性加速度。" msgid "Minimum linear acceleration." msgstr "最小线性加速度。" +msgid "" +"If [code]true[/code], particles use the parent node's coordinate space " +"(known as local coordinates). This will cause particles to move and rotate " +"along the [CPUParticles3D] node (and its parents) when it is moved or " +"rotated. If [code]false[/code], particles use global coordinates; they will " +"not move or rotate along the [CPUParticles3D] node (and its parents) when it " +"is moved or rotated." +msgstr "" +"如果为 [code]true[/code],粒子使用父节点的坐标空间(称为局部坐标)。这将导致" +"粒子在移动或旋转时,沿着 [CPUParticles3D] 节点(及其父节点)移动和旋转。如果" +"为 [code]false[/code],则粒子使用全局坐标;当移动或旋转时,它们不会沿着 " +"[CPUParticles3D] 节点(及其父节点)移动或旋转。" + msgid "" "The [Mesh] used for each particle. If [code]null[/code], particles will be " "spheres." @@ -21658,6 +22432,10 @@ msgstr "最小轨道速度。" msgid "If [code]true[/code], particles will not move on the Z axis." msgstr "如果为 [code]true[/code],则粒子将不会在 Z 轴上移动。" +msgid "" +"If [code]true[/code], particles rotate around Y axis by [member angle_min]." +msgstr "如果为 [code]true[/code],则粒子绕 Y 轴旋转 [member angle_min]。" + msgid "Maximum radial acceleration." msgstr "最大径向加速度。" @@ -21679,6 +22457,11 @@ msgstr "生命周期内,沿 Y 轴的缩放曲线。" msgid "Curve for the scale over life, along the z axis." msgstr "生命周期内,沿 Z 轴的缩放曲线。" +msgid "" +"If set to true, three different scale curves can be specified, one per scale " +"axis." +msgstr "如果设置为 true,则可以指定三条不同的缩放曲线,每个缩放轴一条。" + msgid "" "Each particle's initial direction range from [code]+spread[/code] to [code]-" "spread[/code] degrees. Applied to X/Z plane and Y/Z planes." @@ -22053,6 +22836,19 @@ msgstr "" msgid "A CSG Box shape." 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 " +"[MeshInstance3D] 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 系统一起使用的盒子。\n" +"[b]注意:[/b] CSG 节点旨在用于关卡原型设计。与使用 [PrimitiveMesh] 创建 " +"[MeshInstance3D] 相比,创建 CSG 节点具有显着的 CPU 成本。在另一个 CSG 节点" +"中,移动一个 CSG 节点,也会大量消耗 CPU,因此在游戏过程中,应该避免这种情况。" + msgid "Prototyping levels with CSG" msgstr "使用 CSG 设计关卡原型" @@ -22065,6 +22861,20 @@ msgstr "允许您组合其他 CSG 修改器的 CSG 节点。" msgid "A CSG Cylinder shape." msgstr "CSG 圆柱形状。" +msgid "" +"This node allows you to create a cylinder (or cone) 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 " +"[MeshInstance3D] 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 系统一起使用的圆柱体(或圆锥体)。\n" +"[b]注意:[/b] CSG 节点旨在用于关卡原型设计。与使用 [PrimitiveMesh] 创建 " +"[MeshInstance3D] 相比,创建 CSG 节点具有显着的 CPU 成本。在另一个 CSG 节点" +"中,移动一个 CSG 节点,也会大量消耗 CPU,因此在游戏过程中,应该避免这种情况。" + msgid "" "If [code]true[/code] a cone is created, the [member radius] will only apply " "to one side." @@ -22095,6 +22905,24 @@ msgstr "" msgid "A CSG Mesh shape that uses a mesh resource." 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 than two faces. See also [CSGPolygon3D] " +"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 " +"[MeshInstance3D] 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 形状,前提是它是闭合的、不自相交、不" +"包含内部面并且没有连接到两个面以上的边。 另请参阅 [CSGPolygon3D],以绘制 2D " +"挤出多边形以用作 CSG 节点。\n" +"[b]注意:[/b] CSG 节点旨在用于关卡原型设计。与使用 [PrimitiveMesh] 创建 " +"[MeshInstance3D] 相比,创建 CSG 节点具有显着的 CPU 成本。在另一个 CSG 节点" +"中,移动一个 CSG 节点,也会大量消耗 CPU,因此在游戏过程中,应该避免这种情况。" + msgid "The [Material] used in drawing the CSG shape." msgstr "用于绘制 CSG 形状的 [Material]。" @@ -22422,9 +23250,34 @@ msgstr "返回索引为 [param index] 的点的右侧切线夹角(单位为度 msgid "Removes the point at [code]index[/code] from the curve." msgstr "从曲线中移除 [code]index[/code] 处的点。" +msgid "" +"Sets the left [enum TangentMode] for the point at [param index] to [param " +"mode]." +msgstr "" +"将索引为 [param index] 的点的左侧 [enum TangentMode] 设置为 [param mode]。" + +msgid "" +"Sets the left tangent angle for the point at [param index] to [param " +"tangent]." +msgstr "将索引为 [param index] 的点的左侧切线角度设置为 [param tangent]。" + msgid "Sets the offset from [code]0.5[/code]." msgstr "设置相对于 [code]0.5[/code] 的偏移量。" +msgid "" +"Sets the right [enum TangentMode] for the point at [param index] to [param " +"mode]." +msgstr "" +"将索引为 [param index] 的点的右侧 [enum TangentMode] 设置为 [param mode]。" + +msgid "" +"Sets the right tangent angle for the point at [param index] to [param " +"tangent]." +msgstr "将索引为 [param index] 的点的右侧切线角度设置为 [param tangent]。" + +msgid "Assigns the vertical position [param y] to the point at [param index]." +msgstr "将索引为 [param index] 的点的垂直位置设置为 [param y]。" + msgid "The number of points to include in the baked (i.e. cached) curve data." msgstr "烘焙(即缓存)曲线数据中包含的点的数量。" @@ -22642,6 +23495,59 @@ msgstr "" msgid "Node that projects a texture onto a [MeshInstance3D]." msgstr "将纹理投影到 [MeshInstance3D] 上的节点。" +msgid "" +"[Decal]s are used to project a texture onto a [Mesh] in the scene. Use " +"Decals to add detail to a scene without affecting the underlying [Mesh]. " +"They are often used to add weathering to building, add dirt or mud to the " +"ground, or add variety to props. Decals can be moved at any time, making " +"them suitable for things like blob shadows or laser sight dots.\n" +"They are made of an [AABB] and a group of [Texture2D]s specifying [Color], " +"normal, ORM (ambient occlusion, roughness, metallic), and emission. Decals " +"are projected within their [AABB] so altering the orientation of the Decal " +"affects the direction in which they are projected. By default, Decals are " +"projected down (i.e. from positive Y to negative Y).\n" +"The [Texture2D]s associated with the Decal are automatically stored in a " +"texture atlas which is used for drawing the decals so all decals can be " +"drawn at once. Godot uses clustered decals, meaning they are stored in " +"cluster data and drawn when the mesh is drawn, they are not drawn as a post-" +"processing effect after.\n" +"[b]Note:[/b] Decals cannot affect an underlying material's transparency, " +"regardless of its transparency mode (alpha blend, alpha scissor, alpha hash, " +"opaque pre-pass). This means translucent or transparent areas of a material " +"will remain translucent or transparent even if an opaque decal is applied on " +"them.\n" +"[b]Note:[/b] Decals are only supported in the Forward+ and Mobile rendering " +"methods, not Compatibility. When using the Mobile rendering method, only 8 " +"decals can be displayed on each mesh resource. Attempting to display more " +"than 8 decals on a single mesh resource will result in decals flickering in " +"and out as the camera moves.\n" +"[b]Note:[/b] When using the Mobile rendering method, decals will only " +"correctly affect meshes whose visibility AABB intersects with the decal's " +"AABB. If using a shader to deform the mesh in a way that makes it go outside " +"its AABB, [member GeometryInstance3D.extra_cull_margin] must be increased on " +"the mesh. Otherwise, the decal may not be visible on the mesh." +msgstr "" +"[Decal] 用于将纹理投射到场景中的 [Mesh] 上。使用贴花可在不影响底层 [Mesh] 的" +"情况下向场景中添加细节。它们通常用于为建筑物添加风化效果,为地面添加污垢或泥" +"土,或为道具添加多样性。贴花可以随时移动,使其适用于斑点阴影或激光瞄准点之类" +"的东西。\n" +"贴花由一个 [AABB] 和一组用于指定 [Color]、法线、ORM(环境光遮蔽、粗糙度、金属" +"度)和自发光的 [Texture2D] 组成。贴花在其 [AABB] 内投影,因此改变贴花的朝向会" +"影响它们投影的方向。默认情况下,贴花向下投影(即从正 Y 到负 Y)。\n" +"与贴花关联的 [Texture2D] 会自动存储在用于绘制贴花的纹理图集中,因此可以一次绘" +"制所有贴花。Godot 使用集群贴花,这意味着贴花是存储在集群数据中的,会在绘制网" +"格时绘制,而不是作为后期处理效果在此之后进行绘制。\n" +"[b]注意:[/b]贴花不会影响底层材质的透明度,无论其透明度模式如何(Alpha 混合、" +"Alpha 剪切、Alpha 哈希、不透明预通)。这意味着材质的半透明或透明区域将保持半" +"透明或透明,即使在其上应用不透明贴花也是如此。\n" +"[b]注意:[/b]贴花仅在支持 Forward+ 和 Mobile 渲染方式,不支持 Compatibility。" +"使用 Mobile 渲染方式时,每个网格资源上最多只能显示 8 个贴花。尝试在单个网格资" +"源上显示超过 8 个贴花,将导致贴花随着相机移动而闪烁。\n" +"[b]注意:[/b]当使用 Mobile 渲染方式时,贴花只会正确影响其可视 AABB 与该贴花" +"的 AABB 相交的网格。如果使用着色器变形网格,使其超出网格自身的 AABB,则必须增" +"大网格上的 [member GeometryInstance3D.extra_cull_margin]。否则,贴花可能在该" +"网格上不可见。" + msgid "" "Returns the [Texture2D] associated with the specified [enum DecalTexture]. " "This is a convenience method, in most cases you should access the texture " @@ -23732,6 +24638,20 @@ msgstr "静态版本的 [method rename]。仅支持绝对路径。" msgid "Directional 2D light from a distance." msgstr "来自远处的 2D 平行光。" +msgid "" +"A directional light is a type of [Light2D] node that models an infinite " +"number of parallel rays covering the entire scene. It is used for lights " +"with strong intensity that are located far away from the scene (for example: " +"to model sunlight or moonlight).\n" +"[b]Note:[/b] [DirectionalLight2D] does not support light cull masks (but it " +"supports shadow cull masks). It will always light up 2D nodes, regardless of " +"the 2D node's [member CanvasItem.light_mask]." +msgstr "" +"定向光是一种 [Light2D] 节点,它模拟覆盖整个场景的无限数量的平行光线。它用于远" +"离场景的强光(例如:模拟日光或月光)。\n" +"[b]注意:[/b][DirectionalLight2D] 不支持灯光剔除遮罩(但支持阴影剔除遮罩)。" +"它将忽略 2D 节点的 [member CanvasItem.light_mask],始终点亮 2D 节点。" + msgid "2D lights and shadows" msgstr "2D 灯光和阴影" @@ -23844,6 +24764,136 @@ msgstr "返回可用的显示器数量。" msgid "Returns index of the screen which contains specified rectangle." msgstr "返回包含指定矩形的屏幕的索引。" +msgid "" +"Adds a new radio-checkable item with text [param label] and icon [param " +"icon] to the global menu with ID [param menu_root].\n" +"Returns index of the inserted item, it's not guaranteed to be the same as " +"[param index] value.\n" +"An [param accelerator] can optionally be defined, which is a keyboard " +"shortcut that can be pressed to trigger the menu button even if it's not " +"currently open. The [param accelerator] is generally a combination of [enum " +"KeyModifierMask]s and [enum Key]s using boolean OR such as " +"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n" +"[b]Note:[/b] Radio-checkable items just display a checkmark, but don't have " +"any built-in checking behavior and must be checked/unchecked manually. See " +"[method global_menu_set_item_checked] for more info on how to control it.\n" +"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to " +"accept exactly one Variant parameter, the parameter passed to the Callables " +"will be the value passed to [param tag].\n" +"[b]Note:[/b] This method is implemented on macOS.\n" +"[b]Supported system menu IDs:[/b]\n" +"[codeblock]\n" +"\"_main\" - Main menu (macOS).\n" +"\"_dock\" - Dock popup menu (macOS).\n" +"[/codeblock]" +msgstr "" +"将带有文本 [param label] 和图标 [param icon] 的新单选项,添加到 ID 为 [param " +"menu_root] 的全局菜单中。\n" +"返回插入项的索引,不保证与 [param index] 值相同。\n" +"可以选择定义一个 [param accelerator],这是一个键盘快捷键,可以按下它来触发菜" +"单按钮,即使该菜单按钮当前没有打开。[param accelerator] 通常是 [enum " +"KeyModifierMask] 和 [enum Key] 使用布尔 OR 的组合,例如 [code]KEY_MASK_CTRL " +"| KEY_A[/code]([kbd]Ctrl + A[/kbd])。\n" +"[b]注意:[/b]单选可勾选项只显示一个复选标记,但没有任何内置的勾选行为,必须手" +"动勾选/取消勾选。有关如何控制它的更多信息,请参阅 [method " +"global_menu_set_item_checked]。\n" +"[b]注意:[/b][param callback] 和 [param key_callback] Callable 只需要接受一" +"个 Variant 参数,传递给 Callable 的参数将是传递给 [param tag] 的值。\n" +"[b]注意:[/b]这个方法是在 macOS 上实现的。\n" +"[b]支持的系统菜单 ID:[/b]\n" +"[codeblock]\n" +"\"_main\" - 主菜单(macOS)。\n" +"\"_dock\" - Dock 弹出菜单(macOS)。\n" +"[/codeblock]" + +msgid "" +"Adds a new item with text [param label] to the global menu with ID [param " +"menu_root].\n" +"Contrarily to normal binary items, multistate items can have more than two " +"states, as defined by [param max_states]. Each press or activate of the item " +"will increase the state by one. The default value is defined by [param " +"default_state].\n" +"Returns index of the inserted item, it's not guaranteed to be the same as " +"[param index] value.\n" +"An [param accelerator] can optionally be defined, which is a keyboard " +"shortcut that can be pressed to trigger the menu button even if it's not " +"currently open. The [param accelerator] is generally a combination of [enum " +"KeyModifierMask]s and [enum Key]s using boolean OR such as " +"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n" +"[b]Note:[/b] By default, there's no indication of the current item state, it " +"should be changed manually.\n" +"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to " +"accept exactly one Variant parameter, the parameter passed to the Callables " +"will be the value passed to [param tag].\n" +"[b]Note:[/b] This method is implemented on macOS.\n" +"[b]Supported system menu IDs:[/b]\n" +"[codeblock]\n" +"\"_main\" - Main menu (macOS).\n" +"\"_dock\" - Dock popup menu (macOS).\n" +"[/codeblock]" +msgstr "" +"将带有文本 [param label] 的新项,添加到 ID 为 [param menu_root] 的全局菜" +"单。\n" +"与正常的二进制项目相反,多状态项目可以有两个以上的状态,如 [param " +"max_states] 所定义。每次按下或激活该项都会将状态增加一个。默认值由 [param " +"default_state] 定义。\n" +"返回插入项的索引,不保证与 [param index] 值相同。\n" +"可以选择定义一个 [param accelerator],这是一个键盘快捷键,可以按下它来触发菜" +"单按钮,即使该菜单按钮当前没有打开。[param accelerator] 通常是 [enum " +"KeyModifierMask] 和 [enum Key] 使用布尔 OR 的组合,例如 [code]KEY_MASK_CTRL " +"| KEY_A[/code]([kbd]Ctrl + A[/kbd])。\n" +"[b]注意:[/b]默认情况下,没有当前项状态的指示,应手动更改。\n" +"[b]注意:[/b][param callback] 和 [param key_callback] Callable 只需要接受一" +"个 Variant 参数,传递给 Callable 的参数将是传递给 [param tag] 的值。\n" +"[b]注意:[/b]该方法在 macOS 上实现。\n" +"[b]支持的系统菜单 ID:[/b]\n" +"[codeblock]\n" +"\"_main\" - 主菜单(macOS)。\n" +"\"_dock\" - Dock 弹出菜单(macOS)。\n" +"[/codeblock]" + +msgid "" +"Adds a new radio-checkable item with text [param label] to the global menu " +"with ID [param menu_root].\n" +"Returns index of the inserted item, it's not guaranteed to be the same as " +"[param index] value.\n" +"An [param accelerator] can optionally be defined, which is a keyboard " +"shortcut that can be pressed to trigger the menu button even if it's not " +"currently open. The [param accelerator] is generally a combination of [enum " +"KeyModifierMask]s and [enum Key]s using boolean OR such as " +"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n" +"[b]Note:[/b] Radio-checkable items just display a checkmark, but don't have " +"any built-in checking behavior and must be checked/unchecked manually. See " +"[method global_menu_set_item_checked] for more info on how to control it.\n" +"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to " +"accept exactly one Variant parameter, the parameter passed to the Callables " +"will be the value passed to [param tag].\n" +"[b]Note:[/b] This method is implemented on macOS.\n" +"[b]Supported system menu IDs:[/b]\n" +"[codeblock]\n" +"\"_main\" - Main menu (macOS).\n" +"\"_dock\" - Dock popup menu (macOS).\n" +"[/codeblock]" +msgstr "" +"将带有文本 [param label] 的新单选可勾选项,添加到 ID 为 [param menu_root] 的" +"全局菜单中。\n" +"返回插入项的索引,不保证与 [param index] 值相同。\n" +"可以选择定义一个 [param accelerator],这是一个键盘快捷键,可以按下它来触发菜" +"单按钮,即使该菜单按钮当前没有打开。[param accelerator] 通常是 [enum " +"KeyModifierMask] 和 [enum Key] 使用布尔 OR 的组合,例如 [code]KEY_MASK_CTRL " +"| KEY_A[/code]([kbd]Ctrl + A[/kbd])。\n" +"[b]注意:[/b]单选勾选项只显示一个复选标记,但没有任何内置的勾选行为,必须手动" +"勾选/取消勾选。有关如何控制它的更多信息,请参阅 [method " +"global_menu_set_item_checked]。\n" +"[b]注意:[/b][param callback] 和 [param key_callback] Callable 只需要接受一" +"个 Variant 参数,传递给 Callable 的参数将是传递给 [param tag] 的值。\n" +"[b]注意:[/b] 该方法是在 macOS 上实现的。\n" +"[b]支持的系统菜单 ID:[/b]\n" +"[codeblock]\n" +"\"_main\" - 主菜单(macOS)。\n" +"\"_dock\" - Dock 弹出菜单(macOS)。\n" +"[/codeblock]" + msgid "" "Returns the accelerator of the item at index [param idx]. Accelerators are " "special combinations of keys that activate the item, no matter which control " @@ -24046,6 +25096,38 @@ msgstr "" "返回给定索引的数位板驱动程序名称。\n" "[b]注意:[/b]该方法在 Windows 上实现。" +msgid "" +"Returns an [Array] of voice information dictionaries.\n" +"Each [Dictionary] contains two [String] entries:\n" +"- [code]name[/code] is voice name.\n" +"- [code]id[/code] is voice identifier.\n" +"- [code]language[/code] is language code in [code]lang_Variant[/code] " +"format. [code]lang[/code] part is a 2 or 3-letter code based on the ISO-639 " +"standard, in lowercase. And [code]Variant[/code] part is an engine dependent " +"string describing country, region or/and dialect.\n" +"Note that Godot depends on system libraries for text-to-speech " +"functionality. These libraries are installed by default on Windows and " +"MacOS, but not on all Linux distributions. If they are not present, this " +"method will return an empty list. This applies to both Godot users on Linux, " +"as well as end-users on Linux running Godot games that use text-to-speech.\n" +"[b]Note:[/b] This method is implemented on Android, iOS, Web, Linux (X11), " +"macOS, and Windows." +msgstr "" +"返回一个语音信息字典的 [Array]。\n" +"每个 [Dictionary] 包含两个 [String] 条目:\n" +"- [code]name[/code] 是语音名称。\n" +"- [code]id[/code] 是语音标识符。\n" +"- [code]language[/code] 是语言代码,格式为 [code]lang_Variant[/code] 。" +"[code]lang[/code] 部分是小写的基于 ISO-639 标准的 2 或 3 字母代码。而 " +"[code]Variant[/code] 部分是一个依赖于引擎的字符串,描述国家、地区或/和方" +"言。\n" +"请注意,Godot 依赖于系统库来实现文本到语音的功能。这些库默认安装在 Windows " +"和 MacOS 上,但并非安装在所有 Linux 发行版上。如果它们不存在,此方法将返回一" +"个空列表。这适用于 Linux 上的 Godot 用户,以及在 Linux 上运行使用文本到语音" +"的 Godot 游戏的最终用户。\n" +"[b]注意:[/b]该方法在 Android、iOS、Web、Linux(X11)、macOS 和 Windows 上实" +"现。" + msgid "" "Returns the on-screen keyboard's height in pixels. Returns 0 if there is no " "keyboard or if it is currently hidden." @@ -24095,6 +25177,11 @@ msgstr "" "[b]注意:[/b][method warp_mouse] 仅在 Windows、macOS 和 Linux 上受支持。它在 " "Android、iOS 和 Web 上无效。" +msgid "" +"Returns ID of the active popup window, or [constant INVALID_WINDOW_ID] if " +"there is none." +msgstr "返回活动弹出窗口的 ID,如果没有则返回 [constant INVALID_WINDOW_ID]。" + msgid "Returns the current value of the given window's [param flag]." msgstr "返回给定窗口当前的 [param flag] 值。" @@ -24306,6 +25393,25 @@ msgstr "" "[b]注意:[/b]建议改用 [member Window.transient] 更改此值。\n" "[b]注意:[/b]行为可能因平台而异。" +msgid "" +"Sets the V-Sync mode of the given window. See also [member ProjectSettings." +"display/window/vsync/vsync_mode].\n" +"See [enum DisplayServer.VSyncMode] for possible values and how they affect " +"the behavior of your application.\n" +"Depending on the platform and used renderer, the engine will fall back to " +"[constant VSYNC_ENABLED] if the desired mode is not supported.\n" +"[b]Note:[/b] V-Sync modes other than [constant VSYNC_ENABLED] are only " +"supported in the Forward+ and Mobile rendering methods, not Compatibility." +msgstr "" +"设置给定窗口的垂直同步模式。另见 [member ProjectSettings.display/window/" +"vsync/vsync_mode]。\n" +"参阅 [enum DisplayServer.VSyncMode] 了解可能的值,以及它们如何影响应用程序的" +"行为。\n" +"根据平台和使用的渲染器,如果不支持所需的模式,引擎将回退到 [constant " +"VSYNC_ENABLED]。\n" +"[b]注意:[/b]除 [constant VSYNC_ENABLED] 以外的垂直同步模式,仅支持 Forward+ " +"和 Mobile 渲染方式,不支持 Compatibility。" + msgid "" "Display server supports global menu. This allows the application to display " "its menu items in the operating system's top bar. [b]macOS[/b]" @@ -24362,6 +25468,21 @@ msgstr "" "显示服务器支持将鼠标光标形状设置为自定义图像。[b]Windows、macOS、Linux" "(X11)、Web[/b]" +msgid "" +"Display server supports spawning dialogs using the operating system's native " +"look-and-feel. [b]macOS[/b]" +msgstr "显示服务器支持使用操作系统的本地界面外观来生成对话框。[b]macOS[/b]" + +msgid "" +"Display server supports [url=https://en.wikipedia.org/wiki/" +"Input_method]Input Method Editor[/url], which is commonly used for inputting " +"Chinese/Japanese/Korean text. This is handled by the operating system, " +"rather than by Godot. [b]Windows, macOS, Linux (X11)[/b]" +msgstr "" +"显示服务器支持 [url=https://en.wikipedia.org/wiki/Input_method]输入法[/url]," +"它通常用于输入中文、日文和韩文文本。这由操作系统处理,而不是由 Godot 处理。" +"[b]Windows, macOS, Linux (X11)[/b]" + msgid "" "Display server supports changing the window icon (usually displayed in the " "top-left corner). [b]Windows, macOS, Linux (X11)[/b]" @@ -25010,6 +26131,14 @@ msgid "" "Returns [code]true[/code] if the attached remote instance can be debugged." msgstr "如果附加的远程实例可以调试,则返回 [code]true[/code]。" +msgid "Emitted when the attached remote instance exits a break state." +msgstr "当连接的远程实例退出中断状态时触发。" + +msgid "" +"Emitted when a remote instance is attached to this session (i.e. the session " +"becomes active)." +msgstr "当一个远程实例连接到该会话时触发(即该会话成为活动状态)。" + msgid "A script that is executed when exporting the project." msgstr "在导出项目时执行的脚本。" @@ -25983,12 +27112,38 @@ msgstr "" "的控件。\n" "[b]警告:[/b]删除和释放这个节点将使编辑器失效,并可能导致崩溃。" +msgid "" +"Returns the editor's [EditorCommandPalette] instance.\n" +"[b]Warning:[/b] Removing and freeing this node will render a part of the " +"editor useless and may cause a crash." +msgstr "" +"返回编辑器的 [EditorCommandPalette] 实例。\n" +"[b]警告:[/b] 删除和释放此节点,将使编辑器的一部分失去作用,并可能导致崩溃。" + +msgid "" +"Returns the current directory being viewed in the [FileSystemDock]. If a " +"file is selected, its base directory will be returned using [method String." +"get_base_dir] instead." +msgstr "" +"返回 [FileSystemDock] 中当前正在查看的目录。如果选择了一个文件,则将使用 " +"[method String.get_base_dir] 返回其基本目录。" + msgid "Returns the current path being viewed in the [FileSystemDock]." msgstr "返回在 [FileSystemDock] 中查看的当前路径。" msgid "Returns the edited (current) scene's root [Node]." msgstr "返回正在编辑的(当前)场景的根 [Node]。" +msgid "" +"Returns the editor control responsible for main screen plugins and tools. " +"Use it with plugins that implement [method EditorPlugin._has_main_screen].\n" +"[b]Warning:[/b] Removing and freeing this node will render a part of the " +"editor useless and may cause a crash." +msgstr "" +"返回负责主屏幕插件和工具的编辑器控件。将其与实现了 [method EditorPlugin." +"_has_main_screen] 的插件一起使用。\n" +"[b]警告:[/b] 移除和释放这个节点将使编辑器的一部分失去作用,并可能导致崩溃。" + msgid "Returns the [EditorPaths] singleton." msgstr "返回 [EditorPaths] 单例。" @@ -26047,9 +27202,22 @@ msgstr "" "返回编辑器的脚本编辑器 [ScriptEditor] 实例。\n" "[b]警告:[/b]删除和释放这个节点将使编辑器的一部分失去作用,并可能导致崩溃。" +msgid "" +"Returns an array containing the paths of the currently selected files (and " +"directories) in the [FileSystemDock]." +msgstr "返回一个包含了 [FileSystemDock] 中当前所选文件(和目录)路径的数组。" + msgid "Returns the editor's [EditorSelection] instance." msgstr "返回编辑器的 [EditorSelection] 实例。" +msgid "" +"Shows the given property on the given [param object] in the editor's " +"Inspector dock. If [param inspector_only] is [code]true[/code], plugins will " +"not attempt to edit [param object]." +msgstr "" +"在编辑器的检查器面板中显示给定 [param object] 的属性。如果 [param " +"inspector_only] 为 [code]true[/code] ,插件将不会试图编辑 [param object]。" + msgid "" "Returns [code]true[/code] if a scene is currently being played, [code]false[/" "code] otherwise. Paused scenes are considered as being played." @@ -26767,6 +27935,15 @@ msgstr "" "add_scene_format_importer_plugin]。\n" "有关如何注册插件的示例,请参见 [method add_inspector_plugin]。" +msgid "" +"Registers a new [EditorNode3DGizmoPlugin]. Gizmo plugins are used to add " +"custom gizmos to the 3D preview viewport for a [Node3D].\n" +"See [method add_inspector_plugin] for an example of how to register a plugin." +msgstr "" +"注册一个新的 [EditorNode3DGizmoPlugin]。小工具插件用于将自定义小工具添加到 " +"[Node3D] 的 3D 预览视图。\n" +"有关如何注册插件的示例,请参阅 [method add_inspector_plugin]。" + msgid "" "Returns the [EditorInterface] object that gives you control over Godot " "editor's window and its functionalities." @@ -27667,6 +28844,13 @@ msgstr "界面元素的圆角半径(单位为像素)。[code]0[/code] 则为 msgid "The editor theme preset to use." msgstr "要使用的编辑器主题预设。" +msgid "" +"If [code]true[/code], long press on touchscreen is treated as right click.\n" +"[b]Note:[/b] Defaults to [code]true[/code] on touchscreen devices." +msgstr "" +"如果为 [code]true[/code],长按触摸屏被视为右键单击。\n" +"[b]注意:[/b]在触摸屏设备上默认为 [code]true[/code]。" + msgid "" "The TLS certificate bundle to use for HTTP requests made within the editor " "(e.g. from the AssetLib tab). If left empty, the [url=https://github.com/" @@ -27850,6 +29034,251 @@ msgid "" "names." msgstr "虚函数,可以在覆盖后返回所支持的语言名称。" +msgid "" +"[EditorTranslationParserPlugin] is invoked when a file is being parsed to " +"extract strings that require translation. To define the parsing and string " +"extraction logic, override the [method _parse_file] method in script.\n" +"Add the extracted strings to argument [code]msgids[/code] or " +"[code]msgids_context_plural[/code] if context or plural is used.\n" +"When adding to [code]msgids_context_plural[/code], you must add the data " +"using the format [code][\"A\", \"B\", \"C\"][/code], where [code]A[/code] " +"represents the extracted string, [code]B[/code] represents the context, and " +"[code]C[/code] represents the plural version of the extracted string. If you " +"want to add only context but not plural, put [code]\"\"[/code] for the " +"plural slot. The idea is the same if you only want to add plural but not " +"context. See the code below for concrete examples.\n" +"The extracted strings will be written into a POT file selected by user under " +"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n" +"Below shows an example of a custom parser that extracts strings from a CSV " +"file to write into a POT.\n" +"[codeblocks]\n" +"[gdscript]\n" +"@tool\n" +"extends EditorTranslationParserPlugin\n" +"\n" +"func _parse_file(path, msgids, msgids_context_plural):\n" +" var file = FileAccess.open(path, FileAccess.READ)\n" +" var text = file.get_as_text()\n" +" var split_strs = text.split(\",\", false)\n" +" for s in split_strs:\n" +" msgids.append(s)\n" +" #print(\"Extracted string: \" + s)\n" +"\n" +"func _get_recognized_extensions():\n" +" return [\"csv\"]\n" +"[/gdscript]\n" +"[csharp]\n" +"using Godot;\n" +"\n" +"[Tool]\n" +"public partial class CustomParser : EditorTranslationParserPlugin\n" +"{\n" +" public override void _ParseFile(string path, Godot.Collections." +"Array msgids, Godot.Collections.Array " +"msgidsContextPlural)\n" +" {\n" +" using var file = FileAccess.Open(path, FileAccess.ModeFlags.Read);\n" +" string text = file.GetAsText();\n" +" string[] splitStrs = text.Split(\",\", allowEmpty: false);\n" +" foreach (string s in splitStrs)\n" +" {\n" +" msgids.Add(s);\n" +" //GD.Print($\"Extracted string: {s}\");\n" +" }\n" +" }\n" +"\n" +" public override string[] _GetRecognizedExtensions()\n" +" {\n" +" return new string[] { \"csv\" };\n" +" }\n" +"}\n" +"[/csharp]\n" +"[/codeblocks]\n" +"To add a translatable string associated with context or plural, add it to " +"[code]msgids_context_plural[/code]:\n" +"[codeblocks]\n" +"[gdscript]\n" +"# This will add a message with msgid \"Test 1\", msgctxt \"context\", and " +"msgid_plural \"test 1 plurals\".\n" +"msgids_context_plural.append([\"Test 1\", \"context\", \"test 1 plurals\"])\n" +"# This will add a message with msgid \"A test without context\" and " +"msgid_plural \"plurals\".\n" +"msgids_context_plural.append([\"A test without context\", \"\", " +"\"plurals\"])\n" +"# This will add a message with msgid \"Only with context\" and msgctxt \"a " +"friendly context\".\n" +"msgids_context_plural.append([\"Only with context\", \"a friendly context\", " +"\"\"])\n" +"[/gdscript]\n" +"[csharp]\n" +"// This will add a message with msgid \"Test 1\", msgctxt \"context\", and " +"msgid_plural \"test 1 plurals\".\n" +"msgidsContextPlural.Add(new Godot.Collections.Array{\"Test 1\", \"context\", " +"\"test 1 Plurals\"});\n" +"// This will add a message with msgid \"A test without context\" and " +"msgid_plural \"plurals\".\n" +"msgidsContextPlural.Add(new Godot.Collections.Array{\"A test without " +"context\", \"\", \"plurals\"});\n" +"// This will add a message with msgid \"Only with context\" and msgctxt \"a " +"friendly context\".\n" +"msgidsContextPlural.Add(new Godot.Collections.Array{\"Only with context\", " +"\"a friendly context\", \"\"});\n" +"[/csharp]\n" +"[/codeblocks]\n" +"[b]Note:[/b] If you override parsing logic for standard script types " +"(GDScript, C#, etc.), it would be better to load the [code]path[/code] " +"argument using [method ResourceLoader.load]. This is because built-in " +"scripts are loaded as [Resource] type, not [FileAccess] type.\n" +"For example:\n" +"[codeblocks]\n" +"[gdscript]\n" +"func _parse_file(path, msgids, msgids_context_plural):\n" +" var res = ResourceLoader.load(path, \"Script\")\n" +" var text = res.source_code\n" +" # Parsing logic.\n" +"\n" +"func _get_recognized_extensions():\n" +" return [\"gd\"]\n" +"[/gdscript]\n" +"[csharp]\n" +"public override void _ParseFile(string path, Godot.Collections.Array " +"msgids, Godot.Collections.Array " +"msgidsContextPlural)\n" +"{\n" +" var res = ResourceLoader.Load