summaryrefslogtreecommitdiff
path: root/doc/translations/de.po
diff options
context:
space:
mode:
Diffstat (limited to 'doc/translations/de.po')
-rw-r--r--doc/translations/de.po2391
1 files changed, 2015 insertions, 376 deletions
diff --git a/doc/translations/de.po b/doc/translations/de.po
index 0cf8d9ae17..0da2ce9bc1 100644
--- a/doc/translations/de.po
+++ b/doc/translations/de.po
@@ -48,12 +48,17 @@
# Christian Packenius <christian@packenius.com>, 2022.
# Hannes Petersen <01zustrom.baklava@icloud.com>, 2022.
# Hans Peter <figefi6308@runqx.com>, 2022.
+# Tim <sakul8826@gmail.com>, 2022.
+# Anonynonymouse <tom.spaine60388@gmail.com>, 2022.
+# Felix Bitsch <felix.a.bitsch@gmail.com>, 2022.
+# Coxcopi <master.vogel2015@gmail.com>, 2022.
+# Harusakii <spieleok@gmail.com>, 2022.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
-"PO-Revision-Date: 2022-07-23 03:56+0000\n"
-"Last-Translator: Hans Peter <figefi6308@runqx.com>\n"
+"PO-Revision-Date: 2022-09-12 01:18+0000\n"
+"Last-Translator: Harusakii <spieleok@gmail.com>\n"
"Language-Team: German <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/de/>\n"
"Language: de\n"
@@ -61,7 +66,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.14-dev\n"
+"X-Generator: Weblate 4.14.1-dev\n"
#: doc/tools/make_rst.py
msgid "Description"
@@ -89,7 +94,7 @@ msgstr "Signale"
#: doc/tools/make_rst.py
msgid "Enumerations"
-msgstr "Aufzählungstypen"
+msgstr "Aufzählungen"
#: doc/tools/make_rst.py
msgid "Constants"
@@ -105,7 +110,7 @@ msgstr "Methoden-Beschreibung"
#: doc/tools/make_rst.py
msgid "Theme Property Descriptions"
-msgstr "Beschreibung der Theme-Eigenschaften"
+msgstr "Theme-Eigenschaften Beschreibungen"
#: doc/tools/make_rst.py
msgid "Inherits:"
@@ -239,8 +244,8 @@ msgid ""
"a = abs(-1) # a is 1\n"
"[/codeblock]"
msgstr ""
-"Gibt den absoluten Wert des Parameters [code]s[/code] zurück (d.h. "
-"vorzeichenloser Wert).\n"
+"Gibt den absoluten Wert des Parameters [code]s[/code] zurück (positiver "
+"Wert).\n"
"[codeblock]\n"
"a = abs(-1) # a ist 1\n"
"[/codeblock]"
@@ -563,11 +568,11 @@ msgstr ""
"- Für [code]Dictionary[/code]s, prüft [code]==[/code] nur, ob es dasselbe "
"Objekt ist .\n"
"- Für [code]Array[/code]s, [code]==[/code] werden die Arrays elementweise "
-"mit [code]==[/code] verglichen. Der Elemente-Vergleich ist also wieder "
+"mit [code]==[/code] verglichen. Der Elemente-Vergleich ist also wieder "
"einfach, nicht tief.\n"
-"Zusammengefasst, immer wenn möglicherweise ein [code]Dictionary[/code] "
-"involviert ist und du einen echten Inhaltsvergleich brauchst, verwende "
-"[code]deep_equal[/code]."
+"Zusammengefasst, immer wenn ein [code]Dictionary[/code] potentiell "
+"involviert ist, und du einen wahren Inhaltsvergleich brauchst, musst du "
+"[code]deep_equal[/code] verwenden."
#: modules/gdscript/doc_classes/@GDScript.xml
msgid ""
@@ -587,7 +592,7 @@ msgid ""
"Converts a dictionary (previously created with [method inst2dict]) back to "
"an instance. Useful for deserializing."
msgstr ""
-"Konvertiert ein Wörterbuch (das zuvor mit [method inst2dict] erstellt wurde) "
+"Konvertiert ein Dictionary (das zuvor mit [method inst2dict] erstellt wurde) "
"zurück in eine Instanz. Nützlich für die Deserialisierung."
#: modules/gdscript/doc_classes/@GDScript.xml
@@ -859,6 +864,7 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml
+#, fuzzy
msgid ""
"Returns an interpolation or extrapolation factor considering the range "
"specified in [code]from[/code] and [code]to[/code], and the interpolated "
@@ -866,8 +872,9 @@ msgid ""
"[code]0.0[/code] and [code]1.0[/code] if [code]weight[/code] is between "
"[code]from[/code] and [code]to[/code] (inclusive). If [code]weight[/code] is "
"located outside this range, then an extrapolation factor will be returned "
-"(return value lower than [code]0.0[/code] or greater than [code]1.0[/"
-"code]).\n"
+"(return value lower than [code]0.0[/code] or greater than [code]1.0[/code]). "
+"Use [method clamp] on the result of [method inverse_lerp] if this is not "
+"desired.\n"
"[codeblock]\n"
"# The interpolation ratio in the `lerp()` call below is 0.75.\n"
"var middle = lerp(20, 30, 0.75)\n"
@@ -877,7 +884,8 @@ msgid ""
"var ratio = inverse_lerp(20, 30, 27.5)\n"
"# `ratio` is now 0.75.\n"
"[/codeblock]\n"
-"See also [method lerp] which performs the reverse of this operation."
+"See also [method lerp] which performs the reverse of this operation, and "
+"[method range_lerp] to map a continuous series of values to another."
msgstr ""
"Gibt zurück einen Inter- bzw. Extrapolationsfaktor unter Berücksichtigung "
"des Zahlenraums von [code]from[/code] bis [code]to[/code], und dem "
@@ -968,12 +976,14 @@ msgstr ""
"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml
+#, fuzzy
msgid ""
"Linearly interpolates between two values by the factor defined in "
"[code]weight[/code]. To perform interpolation, [code]weight[/code] should be "
"between [code]0.0[/code] and [code]1.0[/code] (inclusive). However, values "
"outside this range are allowed and can be used to perform [i]extrapolation[/"
-"i].\n"
+"i]. Use [method clamp] on the result of [method lerp] if this is not "
+"desired.\n"
"If the [code]from[/code] and [code]to[/code] arguments are of type [int] or "
"[float], the return value is a [float].\n"
"If both are of the same vector type ([Vector2], [Vector3] or [Color]), the "
@@ -985,7 +995,8 @@ msgid ""
"[/codeblock]\n"
"See also [method inverse_lerp] which performs the reverse of this operation. "
"To perform eased interpolation with [method lerp], combine it with [method "
-"ease] or [method smoothstep]."
+"ease] or [method smoothstep]. See also [method range_lerp] to map a "
+"continuous series of values to another."
msgstr ""
"Interpoliert linear zwischen zwei Werten mit dem in [code]weight[/code] "
"definierten Faktor. Um eine Interpolation durchzuführen, sollte "
@@ -1721,16 +1732,16 @@ msgstr ""
#: modules/gdscript/doc_classes/@GDScript.xml
msgid ""
"Maps a [code]value[/code] from range [code][istart, istop][/code] to [code]"
-"[ostart, ostop][/code].\n"
+"[ostart, ostop][/code]. See also [method lerp] and [method inverse_lerp]. If "
+"[code]value[/code] is outside [code][istart, istop][/code], then the "
+"resulting value will also be outside [code][ostart, ostop][/code]. Use "
+"[method clamp] on the result of [method range_lerp] if this is not desired.\n"
"[codeblock]\n"
"range_lerp(75, 0, 100, -1, 1) # Returns 0.5\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"For complex use cases where you need multiple ranges, consider using [Curve] "
+"or [Gradient] instead."
msgstr ""
-"Bildet den Wert [code]value[/code] von einem Zahlenbereich [code]istart, "
-"istop[/code] auf einen anderen [code]ostart, ostop[/code] ab.\n"
-"[codeblock]\n"
-"range_lerp(75, 0, 100, -1, 1) # Ergibt 0.5\n"
-"[/codeblock]"
#: modules/gdscript/doc_classes/@GDScript.xml
msgid ""
@@ -2864,7 +2875,7 @@ msgstr "Rechte Richtungs-Taste."
msgid ""
"Media back key. Not to be confused with the Back button on an Android device."
msgstr ""
-"Medien-Zurück-Taste. Nicht zu verwechseln mit dem Zurück-Knopf bei einem "
+"Media back Taste. Nicht zu verwechseln mit der Zurück-Taste auf einem "
"Android-Gerät."
#: doc/classes/@GlobalScope.xml
@@ -3930,7 +3941,7 @@ msgstr "Gamecontroller linke Triggerachse."
#: doc/classes/@GlobalScope.xml
msgid "Gamepad left stick click."
-msgstr "Klick auf dem linken Stick des Gamepads."
+msgstr "Klick auf den linken Analog-Stick auf einem Gamepad."
#: doc/classes/@GlobalScope.xml
#, fuzzy
@@ -3943,7 +3954,7 @@ msgstr "Gamecontroller rechte Trigger-Achse."
#: doc/classes/@GlobalScope.xml
msgid "Gamepad right stick click."
-msgstr "Klick des rechten Stick des Gamepads."
+msgstr "Klick auf den rechten Analog Stick eines Gamepads."
#: doc/classes/@GlobalScope.xml
msgid "Gamepad left stick horizontal axis."
@@ -4091,18 +4102,27 @@ msgid ""
"MIDI system exclusive message. This has behavior exclusive to the device "
"you're receiving input from. Getting this data is not implemented in Godot."
msgstr ""
+"MIDI-System-exklusive Nachricht. Dieses Verhalten gilt nur für das Gerät, "
+"von dem Sie Eingaben empfangen. Das Abrufen dieser Daten ist in Godot nicht "
+"implementiert."
#: doc/classes/@GlobalScope.xml
msgid ""
"MIDI quarter frame message. Contains timing information that is used to "
"synchronize MIDI devices. Getting this data is not implemented in Godot."
msgstr ""
+"MIDI-Viertel-Frame-Meldung. Enthält Zeitinformationen, die zur "
+"Synchronisierung von MIDI-Geräten verwendet werden. Das Abrufen dieser Daten "
+"ist in Godot nicht implementiert."
#: doc/classes/@GlobalScope.xml
msgid ""
"MIDI song position pointer message. Gives the number of 16th notes since the "
"start of the song. Getting this data is not implemented in Godot."
msgstr ""
+"MIDI-Songpositionszeiger-Meldung. Gibt die Anzahl der 16tel-Noten seit "
+"Beginn des Liedes an. Das Abrufen dieser Daten ist in Godot nicht "
+"implementiert."
#: doc/classes/@GlobalScope.xml
msgid ""
@@ -4118,6 +4138,8 @@ msgid ""
"MIDI tune request message. Upon receiving a tune request, all analog "
"synthesizers should tune their oscillators."
msgstr ""
+"MIDI Tune Request Nachricht. Beim Empfang einer Tune-Anforderung sollten "
+"alle analogen Synthesizer ihre Oszillatoren stimmen."
#: doc/classes/@GlobalScope.xml
msgid ""
@@ -4150,6 +4172,8 @@ msgid ""
"MIDI active sensing message. This message is intended to be sent repeatedly "
"to tell the receiver that a connection is alive."
msgstr ""
+"MIDI active sensing message. Diese Meldung soll wiederholt gesendet werden, "
+"um dem Empfänger mitzuteilen, dass eine Verbindung besteht."
#: doc/classes/@GlobalScope.xml
msgid ""
@@ -4436,6 +4460,15 @@ msgid ""
"specified by appending [code]:integer[/code] to the name, e.g. [code]\"Zero,"
"One,Three:3,Four,Six:6\"[/code]."
msgstr ""
+"Weist darauf hin, dass eine Integer-, Float- oder String-Eigenschaft ein "
+"Aufzählungswert ist, der in einer über eine Hinweiszeichenfolge angegebenen "
+"Liste auszuwählen ist.\n"
+"Die Hinweiszeichenkette ist eine durch Kommata getrennte Liste von Namen wie "
+"z. B. [code]\"Hallo,Etwas,Sonst\"[/code]. Bei Integer- und Float-"
+"Eigenschaften hat der erste Name in der Liste den Wert 0, der nächste den "
+"Wert 1 und so weiter. Explizite Werte können auch durch Anhängen von [code]:"
+"integer[/code] an den Namen angegeben werden, z. B. [code]\"Null,Eins,Drei:3,"
+"Vier,Sechs:6\"[/code]."
#: doc/classes/@GlobalScope.xml
msgid ""
@@ -4445,6 +4478,12 @@ msgid ""
"arbitrary values and can be empty. The list of values serves to suggest "
"possible values."
msgstr ""
+"weist darauf hin, dass eine Zeichenketteneigenschaft ein Aufzählungswert "
+"sein kann, der aus einer Liste ausgewählt werden kann, die über eine "
+"Hinweiszeichenfolge wie [code]\"Hallo,Etwas,Sonst\"[/code]\n"
+"m Gegensatz zu [constant PROPERTY_HINT_ENUM] akzeptiert eine Eigenschaft mit "
+"diesem Hinweis weiterhin beliebige Werte und kann leer sein. Die Liste der "
+"Werte dient dazu, mögliche Werte vorzuschlagen."
#: doc/classes/@GlobalScope.xml
msgid ""
@@ -4998,6 +5037,16 @@ msgid ""
"var box2 = box.expand(Vector3(0, -1, 2))\n"
"[/codeblock]"
msgstr ""
+"Gibt eine Kopie dieses [AABB] zurück, erweitert um einen bestimmten Punkt "
+"einzuschließen.\n"
+"[b]Beispiel:[/b]\n"
+"[codeblock]\n"
+"# Position (-3, 2, 0), Größe (1, 1, 1)\n"
+"var box = AABB(Vector3(-3, 2, 0), Vector3(1, 1, 1))\n"
+"# Position (-3, -1, 0), Größe (3, 4, 2), so dass wir sowohl das "
+"ursprüngliche AABB als auch Vector3(0, -1, 2) unterbringen\n"
+"var box2 = box.expand(Vector3(0, -1, 2))\n"
+"[/codeblock]"
#: doc/classes/AABB.xml
msgid "Returns the volume of the [AABB]."
@@ -5193,6 +5242,11 @@ msgid ""
"may cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
+"Gibt die für den eingebauten Text verwendete Bezeichnung zurück.\n"
+"[b]Warnung:[/b] Dies ist ein erforderlicher interner Knoten; das Entfernen "
+"und Freigeben dieses Knotens kann zu einem Absturz führen. Wenn Sie ihn oder "
+"eines seiner Kinder ausblenden möchten, verwenden Sie deren Eigenschaft "
+"[member CanvasItem.visible]."
#: doc/classes/AcceptDialog.xml
msgid ""
@@ -5201,6 +5255,11 @@ msgid ""
"may cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
+"Gibt die OK [Button]-Instanz zurück.\n"
+"[b]Warnung:[/b] Dies ist ein erforderlicher interner Knoten; das Entfernen "
+"und Freigeben dieses Knotens kann zu einem Absturz führen. Wenn Sie ihn oder "
+"eines seiner Kinder ausblenden möchten, verwenden Sie deren Eigenschaft "
+"[member CanvasItem.visible]."
#: doc/classes/AcceptDialog.xml
msgid ""
@@ -5218,6 +5277,12 @@ msgid ""
"the [code]button[/code] will no longer emit this dialog's [signal "
"custom_action] signal or cancel this dialog."
msgstr ""
+"Entfernt den [code]button[/code] aus dem Dialog. Gibt den [code]button[/"
+"code] NICHT frei. Der [code]button[/code] muss ein [Button] sein, der mit "
+"der [method add_button] oder [method add_cancel] Methode hinzugefügt wurde. "
+"Nach dem Entfernen wird das Drücken des [code]button[/code] nicht mehr das "
+"[signal custom_action]-Signal dieses Dialogs auslösen oder diesen Dialog "
+"abbrechen."
#: doc/classes/AcceptDialog.xml
msgid "Sets autowrapping for the text in the dialog."
@@ -5433,6 +5498,18 @@ msgid ""
"code] will make it so the [code]run[/code] animation uses normal and "
"specular maps."
msgstr ""
+"[AnimatedSprite] ähnelt dem [Sprite]-Knoten, außer dass er mehrere Texturen "
+"als Animationsrahmen enthält. Animationen werden mit einer [SpriteFrames]-"
+"Ressource erstellt, die es Ihnen ermöglicht, Bilddateien (oder einen Ordner "
+"mit diesen Dateien) zu importieren, um die Animationsrahmen für das Sprite "
+"bereitzustellen. Die [SpriteFrames]-Ressource kann im Editor über die untere "
+"Leiste SpriteFrames konfiguriert werden.\n"
+"[b]Hinweis:[/b] Du kannst eine Reihe von Normal- oder Specular-Maps "
+"zuordnen, indem du zusätzliche [SpriteFrames]-Ressourcen mit einem "
+"[code]_normal[/code] oder [code]_specular[/code] Suffix erstellst. Wenn du "
+"zum Beispiel 3 [SpriteFrames]-Ressourcen [code]run[/code], [code]run_normal[/"
+"code] und [code]run_specular[/code] hast, wird die [code]run[/code]-"
+"Animation normale und spekulare Maps verwenden."
#: doc/classes/AnimatedSprite.xml doc/classes/AnimationPlayer.xml
msgid "2D Sprite animation"
@@ -5498,6 +5575,9 @@ msgid ""
"option to load, edit, clear, make unique and save the states of the "
"[SpriteFrames] resource."
msgstr ""
+"Die [SpriteFrames]-Ressource, die die Animation(en) enthält. Ermöglicht es "
+"Ihnen, die Zustände der [SpriteFrames]-Ressource zu laden, zu bearbeiten, zu "
+"löschen, eindeutig zu machen und zu speichern."
#: doc/classes/AnimatedSprite.xml doc/classes/Sprite.xml
#: doc/classes/SpriteBase3D.xml
@@ -6398,26 +6478,22 @@ msgstr ""
"Knoten nicht zur Addition anzeigen."
#: doc/classes/AnimationNode.xml
-msgid "Gets the text caption for this node (used by some editors)."
+msgid ""
+"When inheriting from [AnimationRootNode], implement this virtual method to "
+"override the text caption for this node."
msgstr ""
-"Ruft die Textbeschriftung für diesen Knoten ab (wird von einigen Editoren "
-"verwendet)."
#: doc/classes/AnimationNode.xml
msgid ""
-"Gets a child node by index (used by editors inheriting from "
-"[AnimationRootNode])."
+"When inheriting from [AnimationRootNode], implement this virtual method to "
+"return a child node by its [code]name[/code]."
msgstr ""
-"Ruft einen untergeordneten Knoten nach Index ab (wird von Editoren "
-"verwendet, die von [AnimationRootNode] erben)."
#: doc/classes/AnimationNode.xml
msgid ""
-"Gets all children nodes in order as a [code]name: node[/code] dictionary. "
-"Only useful when inheriting [AnimationRootNode]."
+"When inheriting from [AnimationRootNode], implement this virtual method to "
+"return all children nodes in order as a [code]name: node[/code] dictionary."
msgstr ""
-"Ruft alle Kindknoten in der Reihenfolge als [code]Name: Knoten[/code]-"
-"Wörterbuch ab. Nur nützlich beim Erben von [AnimationRootNode]."
#: doc/classes/AnimationNode.xml
msgid ""
@@ -6441,17 +6517,22 @@ msgstr ""
"Bäumen wiederverwendet werden kann."
#: doc/classes/AnimationNode.xml
+#, fuzzy
msgid ""
-"Gets the default value of a parameter. Parameters are custom local memory "
-"used for your nodes, given a resource can be reused in multiple trees."
+"When inheriting from [AnimationRootNode], implement this virtual method to "
+"return the default value of parameter \"[code]name[/code]\". Parameters are "
+"custom local memory used for your nodes, given a resource can be reused in "
+"multiple trees."
msgstr ""
"Ruft den Standardwert eines Parameters ab. Parameter sind benutzerdefinierte "
"lokale Speicher, die für Ihre Knoten verwendet werden, da eine Ressource in "
"mehreren Bäumen wiederverwendet werden kann."
#: doc/classes/AnimationNode.xml
+#, fuzzy
msgid ""
-"Gets the property information for parameter. Parameters are custom local "
+"When inheriting from [AnimationRootNode], implement this virtual method to "
+"return a list of the properties on this node. Parameters are custom local "
"memory used for your nodes, given a resource can be reused in multiple "
"trees. Format is similar to [method Object.get_property_list]."
msgstr ""
@@ -6461,9 +6542,11 @@ msgstr ""
"ist ähnlich wie bei [method Object.get_property_list]."
#: doc/classes/AnimationNode.xml
+#, fuzzy
msgid ""
-"Returns [code]true[/code] whether you want the blend tree editor to display "
-"filter editing on this node."
+"When inheriting from [AnimationRootNode], implement this virtual method to "
+"return whether the blend tree editor should display filter editing on this "
+"node."
msgstr ""
"Gibt [code]true[/code] zurück, ob der Mischbaum-Editor die Filterbearbeitung "
"an diesem Node anzeigen soll."
@@ -6474,10 +6557,12 @@ msgid "Returns whether the given path is filtered."
msgstr "Gibt [code]true[/code] zurück, ob ein gegebener Pfad gefiltert ist."
#: doc/classes/AnimationNode.xml
+#, fuzzy
msgid ""
-"User-defined callback called when a custom node is processed. The "
-"[code]time[/code] parameter is a relative delta, unless [code]seek[/code] is "
-"[code]true[/code], in which case it is absolute.\n"
+"When inheriting from [AnimationRootNode], implement this virtual method to "
+"run some code when this node is processed. The [code]time[/code] parameter "
+"is a relative delta, unless [code]seek[/code] is [code]true[/code], in which "
+"case it is absolute.\n"
"Here, call the [method blend_input], [method blend_node] or [method "
"blend_animation] functions. You can also use [method get_parameter] and "
"[method set_parameter] to modify local memory.\n"
@@ -6633,7 +6718,7 @@ msgstr "AnimationTree"
#: doc/classes/Quat.xml doc/classes/Skeleton.xml doc/classes/SpotLight.xml
#: doc/classes/StaticBody.xml doc/classes/WorldEnvironment.xml
msgid "Third Person Shooter Demo"
-msgstr ""
+msgstr "Third Person Shooter Demo"
#: doc/classes/AnimationNodeAnimation.xml
msgid "Input animation to use in an [AnimationNodeBlendTree]."
@@ -6659,7 +6744,7 @@ msgstr ""
#: doc/classes/MeshInstance.xml doc/classes/MeshLibrary.xml
#: doc/classes/ProjectSettings.xml doc/classes/Transform.xml
msgid "3D Platformer Demo"
-msgstr ""
+msgstr "3D Platformer Demo"
#: doc/classes/AnimationNodeAnimation.xml
msgid ""
@@ -7332,9 +7417,9 @@ msgid ""
"Turn on auto advance when this condition is set. The provided name will "
"become a boolean parameter on the [AnimationTree] that can be controlled "
"from code (see [url=$DOCS_URL/tutorials/animation/animation_tree."
-"html#controlling-from-code][/url]). For example, if [member AnimationTree."
-"tree_root] is an [AnimationNodeStateMachine] and [member advance_condition] "
-"is set to [code]\"idle\"[/code]:\n"
+"html#controlling-from-code]Using AnimationTree[/url]). For example, if "
+"[member AnimationTree.tree_root] is an [AnimationNodeStateMachine] and "
+"[member advance_condition] is set to [code]\"idle\"[/code]:\n"
"[codeblock]\n"
"$animation_tree[\"parameters/conditions/idle\"] = is_on_floor and "
"(linear_velocity.x == 0)\n"
@@ -7454,6 +7539,24 @@ msgid ""
"animation_tree[\"parameters/Seek/seek_position\"] = 12.0\n"
"[/codeblock]"
msgstr ""
+"Dieser Knoten kann verwendet werden, um einen Suchbefehl für alle "
+"Unterkinder des Animationsgraphen auszuführen. Verwenden Sie diesen "
+"Knotentyp, um eine [Animation] ab dem Start oder einer bestimmten "
+"Abspielposition innerhalb des [AnimationNodeBlendTree] abzuspielen. Nach dem "
+"Einstellen der Zeit und dem Ändern der Animationswiedergabe geht der "
+"Suchknoten beim nächsten Prozessbild automatisch in den Schlafmodus, indem "
+"er seinen Wert [code]seek_position[/code] auf [code]-1.0[/code] setzt.\n"
+"[codeblock]\n"
+"# Kind-Animation von Anfang an abspielen.\n"
+"animation_tree.set(\"parameters/Seek/seek_position\", 0.0)\n"
+"# Alternativer Syntax (gleiches Ergebnis wie oben).\n"
+"animation_tree[\"parameters/Seek/seek_position\"] = 0.0\n"
+"\n"
+"# Kind-Animation ab dem 12 Sekunden Zeitstempel abspielen.\n"
+"animation_tree.set(\"parameters/Seek/seek_position\", 12.0)\n"
+"# Alternativer Syntax (gleiches Ergebnis wie oben).\n"
+"animation_tree[\"parameters/Seek/seek_position\"] = 12.0\n"
+"[/codeblock]"
#: doc/classes/AnimationNodeTransition.xml
msgid "A generic animation transition node for [AnimationTree]."
@@ -7570,9 +7673,10 @@ msgstr ""
"Zeichenkette, wenn nicht gefunden."
#: doc/classes/AnimationPlayer.xml
+#, fuzzy
msgid ""
-"Returns the [Animation] with key [code]name[/code] or [code]null[/code] if "
-"not found."
+"Returns the [Animation] with the key [code]name[/code]. If the animation "
+"does not exist, [code]null[/code] is returned and an error is logged."
msgstr ""
"Liefert die [Animation] mit dem Schlüssel [code]name[/code] oder [code]null[/"
"code], wenn nicht gefunden."
@@ -7761,6 +7865,15 @@ msgid ""
"get the currently playing animation, and internally for animation playback "
"tracks. For more information, see [Animation]."
msgstr ""
+"Der Name der aktuell abgespielten Animation. Wenn keine Animation abgespielt "
+"wird, ist der Wert der Eigenschaft eine leere Zeichenkette. Eine Änderung "
+"dieses Wertes führt nicht zum Neustart der Animation. Weitere Informationen "
+"über das Abspielen von Animationen finden Sie unter [method play].\n"
+"[b]Hinweis:[/b] Diese Eigenschaft wird zwar im Inspektor angezeigt, ist aber "
+"nicht zum Bearbeiten gedacht und wird nicht in der Szene gespeichert. Diese "
+"Eigenschaft wird hauptsächlich verwendet, um die aktuell abgespielte "
+"Animation zu erhalten, und intern für Animationswiedergabespuren. Für "
+"weitere Informationen, siehe [Animation]."
#: doc/classes/AnimationPlayer.xml
msgid "The length (in seconds) of the currently being played animation."
@@ -7814,6 +7927,13 @@ msgid ""
"defined by the reset animation, if any, with the editor keeping the values "
"that the nodes had before saving."
msgstr ""
+"Dies wird vom Editor verwendet. Wenn es auf [code]true[/code] gesetzt wird, "
+"wird die Szene mit den Effekten der Reset-Animation gespeichert (als ob sie "
+"auf Zeit 0 gesucht worden wäre), und nach dem Speichern wieder "
+"zurückgesetzt.\n"
+"Mit anderen Worten, die gespeicherte Szenendatei enthält die \"Standard-"
+"Pose\", wie sie durch die Rücksetz-Animation definiert ist, und der Editor "
+"behält die Werte bei, die die Knoten vor dem Speichern hatten."
#: doc/classes/AnimationPlayer.xml
msgid "The node from which node path references will travel."
@@ -8073,6 +8193,8 @@ msgid ""
"Binds a new [Animation] from the [member master_player] to the "
"[AnimationTreePlayer]'s animation node with name [code]id[/code]."
msgstr ""
+"Bindet eine neue [Animation] aus dem [member master_player] an den "
+"Animationsknoten des [AnimationTreePlayer] mit dem Namen [code]id[/code]."
#: doc/classes/AnimationTreePlayer.xml
msgid ""
@@ -8080,12 +8202,18 @@ msgid ""
"[code]id[/code] turns off the track modifying the property at [code]path[/"
"code]. The modified node's children continue to animate."
msgstr ""
+"Wenn [code]enable[/code] [code]true[/code] ist, schaltet der "
+"Animationsknoten mit der ID [code]id[/code] die Spur aus, die die "
+"Eigenschaft bei [code]path[/code] ändert. Die Kinder des geänderten Knotens "
+"werden weiterhin animiert."
#: doc/classes/AnimationTreePlayer.xml
msgid ""
"Binds the [Animation] named [code]source[/code] from [member master_player] "
"to the animation node [code]id[/code]. Recalculates caches."
msgstr ""
+"Bindet die [Animation] namens [code]source[/code] vom [member master_player] "
+"an den Animationsknoten [code]id[/code]. Berechnet die Caches neu."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8109,6 +8237,12 @@ msgid ""
"At 0, output is input A. Towards 1, the influence of A gets lessened, the "
"influence of B gets raised. At 1, output is input B."
msgstr ""
+"Legt den Überblendungswert eines Blend2-Knotens mit seinem Namen und Wert "
+"fest.\n"
+"Ein Blend2-Knoten überblendet zwei Animationen (A und B) mit einem Wert "
+"zwischen 0 und 1.\n"
+"Bei 0 ist die Ausgabe die Eingabe A. In Richtung 1 wird der Einfluss von A "
+"verringert, der Einfluss von B erhöht. Bei 1 ist die Ausgabe die Eingabe B."
#: doc/classes/AnimationTreePlayer.xml
msgid ""
@@ -8116,6 +8250,10 @@ msgid ""
"[code]id[/code] turns off the track modifying the property at [code]path[/"
"code]. The modified node's children continue to animate."
msgstr ""
+"Wenn [code]enable[/code] [code]true[/code] ist, schaltet der Blend2-Knoten "
+"mit dem Namen [code]id[/code] die Spur aus, die die Eigenschaft bei "
+"[code]path[/code] ändert. Die Kinder des geänderten Knotens werden weiterhin "
+"animiert."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8132,6 +8270,15 @@ msgid ""
"input A. From 0 to 1, the influence of A gets lessened, the influence of B+ "
"gets raised and the influence of B+ is 0. At 1, output is input B+."
msgstr ""
+"Legt den Überblendungsgrad eines Blend3-Knotens mit seinem Namen und Wert "
+"fest.\n"
+"Ein Blend3-Knoten überblendet drei Animationen (A, B-, B+) mit einem Wert "
+"zwischen -1 und 1.\n"
+"Bei -1 ist die Ausgabe die Eingabe B-. Von -1 bis 0 wird der Einfluss von B- "
+"verringert, der Einfluss von A wird erhöht und der Einfluss von B+ ist 0. "
+"Bei 0 ist die Ausgabe die Eingabe A. Von 0 bis 1 wird der Einfluss von A "
+"verringert, der Einfluss von B+ wird erhöht und der Einfluss von B+ ist 0. "
+"Bei 1 ist die Ausgabe die Eingabe B+."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8144,6 +8291,10 @@ msgid ""
"A Blend4 Node blends two pairs of animations.\n"
"The two pairs are blended like Blend2 and then added together."
msgstr ""
+"Legt den Überblendungsgrad eines Blend4-Knotens mit seinem Namen und Wert "
+"fest.\n"
+"Ein Blend4-Knoten blendet zwei Paare von Animationen.\n"
+"Die beiden Paare werden wie Blend2 überblendet und dann addiert."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8160,7 +8311,7 @@ msgstr "Trennt das Node, der mit dem angegebenen Eingang verbunden ist."
#: doc/classes/AnimationTreePlayer.xml
msgid "Returns a [PoolStringArray] containing the name of all nodes."
-msgstr ""
+msgstr "Gibt ein [PoolStringArray] zurück, das die Namen aller Knoten enthält."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8172,16 +8323,22 @@ msgid ""
"Sets the mix amount of a Mix node given its name and value.\n"
"A Mix node adds input b to input a by the amount given by ratio."
msgstr ""
+"Legt die Mischmenge eines Mix-Knotens fest, dessen Name und Wert angegeben "
+"ist.\n"
+"Ein Mix-Knoten fügt Eingang B zu Eingang A um den durch ratio angegebenen "
+"Betrag hinzu."
#: doc/classes/AnimationTreePlayer.xml
msgid "Check if a node exists (by name)."
-msgstr ""
+msgstr "Prüfen, ob ein Knoten existiert (nach Name)."
#: doc/classes/AnimationTreePlayer.xml
msgid ""
"Returns the input count for a given node. Different types of nodes have "
"different amount of inputs."
msgstr ""
+"Gibt die Anzahl der Eingaben für einen bestimmten Knoten zurück. "
+"Verschiedene Knotentypen haben eine unterschiedliche Anzahl von Eingängen."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8196,6 +8353,7 @@ msgstr "Gibt das AnimationNode mit dem gegebenen Namen zurück."
#: doc/classes/AnimationTreePlayer.xml
msgid "Gets the node type, will return from [enum NodeType] enum."
msgstr ""
+"Ruft den Knotentyp ab, wird von der Aufzählung [enum NodeType] zurückgegeben."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8243,28 +8401,38 @@ msgstr "Gibt das AnimationNode mit dem gegebenen Namen zurück."
msgid ""
"Sets the autorestart property of a OneShot node given its name and value."
msgstr ""
+"Legt die Autorestart-Eigenschaft eines OneShot-Knotens mit dessen Namen und "
+"Wert fest."
#: doc/classes/AnimationTreePlayer.xml
msgid ""
"Sets the autorestart delay of a OneShot node given its name and value in "
"seconds."
msgstr ""
+"Legt die Autostart-Verzögerung eines OneShot-Knotens fest, wobei der Name "
+"und der Wert in Sekunden angegeben werden."
#: doc/classes/AnimationTreePlayer.xml
msgid ""
"Sets the autorestart random delay of a OneShot node given its name and value "
"in seconds."
msgstr ""
+"Legt die Zufallsverzögerung für den Autorestart eines OneShot-Knotens fest, "
+"wobei der Name und der Wert in Sekunden angegeben werden."
#: doc/classes/AnimationTreePlayer.xml
msgid ""
"Sets the fade in time of a OneShot node given its name and value in seconds."
msgstr ""
+"Legt die Einblendzeit eines OneShot-Knotens mit seinem Namen und einem Wert "
+"in Sekunden fest."
#: doc/classes/AnimationTreePlayer.xml
msgid ""
"Sets the fade out time of a OneShot node given its name and value in seconds."
msgstr ""
+"Legt die Ausblendzeit eines OneShot-Knotens fest, wobei der Name und der "
+"Wert in Sekunden angegeben werden."
#: doc/classes/AnimationTreePlayer.xml
msgid ""
@@ -8272,6 +8440,9 @@ msgid ""
"[code]id[/code] turns off the track modifying the property at [code]path[/"
"code]. The modified node's children continue to animate."
msgstr ""
+"Wenn [code]enable[/code] [code]true[/code] ist, schaltet der OneShot-Knoten "
+"mit der ID [code]id[/code] die Spur aus, die die Eigenschaft bei [code]path[/"
+"code] ändert. Die Kinder des geänderten Knotens werden weiterhin animiert"
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8289,6 +8460,9 @@ msgid ""
"animation nodes. Needed when external sources modify the animation nodes' "
"state."
msgstr ""
+"Berechnet den Cache der von Animationsknoten erzeugten Spurinformationen "
+"manuell neu. Wird benötigt, wenn externe Quellen den Zustand der "
+"Animationsknoten ändern."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8297,7 +8471,7 @@ msgstr "Entfernt die Animation mit dem key [code]name[/code]."
#: doc/classes/AnimationTreePlayer.xml
msgid "Resets this [AnimationTreePlayer]."
-msgstr ""
+msgstr "Setzt diesen [AnimationTreePlayer] zurück."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8314,6 +8488,12 @@ msgid ""
"If applied after a blend or mix, affects all input animations to that blend "
"or mix."
msgstr ""
+"Setzt die Zeitskala des TimeScale-Knotens mit dem Namen [code]id[/code] auf "
+"[code]scale[/code].\n"
+"Der TimeScale-Knoten wird verwendet, um [Animationen] zu beschleunigen, wenn "
+"die Skala über 1 liegt, oder sie zu verlangsamen, wenn sie unter 1 liegt.\n"
+"Wenn er nach einer Überblendung oder Mischung angewendet wird, wirkt er sich "
+"auf alle Eingangsanimationen für diese Überblendung oder Mischung aus."
#: doc/classes/AnimationTreePlayer.xml
msgid ""
@@ -8322,6 +8502,10 @@ msgid ""
"This functions as a seek in the [Animation] or the blend or mix of "
"[Animation]s input in it."
msgstr ""
+"Setzt den Zeitsuchwert des TimeSeek-Knotens mit dem Namen [code]id[/code] "
+"auf [code]seconds[/code].\n"
+"Dies funktioniert wie ein Suchlauf in der [Animation] oder der Mischung oder "
+"dem Mix von [Animation]en, die darin eingegeben werden."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8346,6 +8530,9 @@ msgid ""
"Returns the number of inputs for the transition node with name [code]id[/"
"code]. You can add inputs by right-clicking on the transition node."
msgstr ""
+"Gibt die Anzahl der Eingänge für den Übergangsknoten mit dem Namen [code]id[/"
+"code] zurück. Sie können Eingaben hinzufügen, indem Sie mit der rechten "
+"Maustaste auf den Übergangsknoten klicken."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8360,6 +8547,9 @@ msgid ""
"transition node with name [code]id[/code] is set to automatically advance to "
"the next input upon completion."
msgstr ""
+"Gibt [code]true[/code] zurück, wenn die Eingabe an [code]input_idx[/code] "
+"auf dem Übergangsknoten mit dem Namen [code]id[/code] so eingestellt ist, "
+"dass sie nach Abschluss automatisch zur nächsten Eingabe übergeht."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8375,12 +8565,17 @@ msgid ""
"The transition node with name [code]id[/code] advances to its next input "
"automatically when the input at [code]input_idx[/code] completes."
msgstr ""
+"Der Übergangsknoten mit dem Namen [code]id[/code] geht automatisch zu seiner "
+"nächsten Eingabe über, wenn die Eingabe an [code]input_idx[/code] "
+"abgeschlossen ist."
#: doc/classes/AnimationTreePlayer.xml
msgid ""
"Resizes the number of inputs available for the transition node with name "
"[code]id[/code]."
msgstr ""
+"Verändert die Anzahl der verfügbaren Eingänge für den Übergangsknoten mit "
+"dem Namen [code]id[/code]."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8403,6 +8598,9 @@ msgid ""
"It accesses the bones, so it should point to the same node the "
"[AnimationPlayer] would point its Root Node at."
msgstr ""
+"Der Knoten, von dem aus relativ auf andere Knoten zugegriffen werden kann.\n"
+"Er greift auf die Bones zu, sollte also auf denselben Knoten zeigen, auf den "
+"der [AnimationPlayer] seinen Root Knoten zeigen würde."
#: doc/classes/AnimationTreePlayer.xml
msgid ""
@@ -8410,6 +8608,10 @@ msgid ""
"binds animations to animation nodes.\n"
"Once set, [Animation] nodes can be added to the [AnimationTreePlayer]."
msgstr ""
+"Der Pfad zum [AnimationPlayer], von dem dieser [AnimationTreePlayer] "
+"Animationen an Animationsknoten bindet.\n"
+"Einmal festgelegt, können [Animation]-Knoten zum [AnimationTreePlayer] "
+"hinzugefügt werden."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8418,7 +8620,7 @@ msgstr "Die Prozessmeldung, in der die Animationen aktualisiert werden sollen."
#: doc/classes/AnimationTreePlayer.xml
msgid "Output node."
-msgstr ""
+msgstr "Ausgangsknoten."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8432,27 +8634,27 @@ msgstr "Einmaliger Timer."
#: doc/classes/AnimationTreePlayer.xml
msgid "Mix node."
-msgstr ""
+msgstr "Mischknoten."
#: doc/classes/AnimationTreePlayer.xml
msgid "Blend2 node."
-msgstr ""
+msgstr "Blend2 Knoten."
#: doc/classes/AnimationTreePlayer.xml
msgid "Blend3 node."
-msgstr ""
+msgstr "Blend3 Knoten."
#: doc/classes/AnimationTreePlayer.xml
msgid "Blend4 node."
-msgstr ""
+msgstr "Blend4 Knoten."
#: doc/classes/AnimationTreePlayer.xml
msgid "TimeScale node."
-msgstr ""
+msgstr "TimeScale Knoten."
#: doc/classes/AnimationTreePlayer.xml
msgid "TimeSeek node."
-msgstr ""
+msgstr "TimeSeek Knoten."
#: doc/classes/AnimationTreePlayer.xml
#, fuzzy
@@ -8465,20 +8667,21 @@ msgid "3D area for detection and physics and audio influence."
msgstr "2D-Bereich zur Erkennung und 2D-Physik-Einfluss."
#: doc/classes/Area.xml
-#, fuzzy
msgid ""
"3D area that detects [CollisionObject] nodes overlapping, entering, or "
"exiting. Can also alter or override local physics parameters (gravity, "
-"damping) and route audio to custom audio buses."
+"damping) and route audio to a custom audio bus.\n"
+"To give the area its shape, add a [CollisionShape] or a [CollisionPolygon] "
+"node as a [i]direct[/i] child (or add multiple such nodes as direct "
+"children) of the area.\n"
+"[b]Warning:[/b] See [ConcavePolygonShape] (also called \"trimesh\") for a "
+"warning about possibly unexpected behavior when using that shape for an area."
msgstr ""
-"2D-Bereich, der [CollisionObject2D]-Knoten erkennt, die sich überlappen, "
-"eintreten oder austreten. Kann auch lokale Physikparameter (Schwerkraft, "
-"Dämpfung) ändern oder außer Kraft setzen."
#: doc/classes/Area.xml doc/classes/QuadMesh.xml doc/classes/Viewport.xml
#: doc/classes/ViewportTexture.xml
msgid "GUI in 3D Demo"
-msgstr ""
+msgstr "Benutzeroberfläche in 3D-Demo"
#: doc/classes/Area.xml
msgid ""
@@ -8645,10 +8848,15 @@ msgid ""
"The degree to which this area applies reverb to its associated audio. Ranges "
"from [code]0[/code] to [code]1[/code] with [code]0.1[/code] precision."
msgstr ""
+"Der Grad, in dem dieser Bereich Hall auf das zugehörige Audiomaterial "
+"anwendet. Der Bereich reicht von [code]0[/code] bis [code]1[/code] mit einer "
+"Genauigkeit von [code]0.1[/code]."
#: doc/classes/Area.xml
msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
+"Wenn [code]true[/code], wendet der Bereich Hall auf das zugehörige "
+"Audiomaterial an."
#: doc/classes/Area.xml
msgid "The reverb bus name to use for this area's associated audio."
@@ -8677,6 +8885,9 @@ msgid ""
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
+"Wird ausgesendet, wenn ein anderer Bereich diesen Bereich betritt. "
+"Erfordert, dass [member monitoring] auf [code]true[/code] gesetzt ist.\n"
+"[code]area[/code] der andere Bereich."
#: doc/classes/Area.xml
msgid ""
@@ -8684,6 +8895,9 @@ msgid ""
"be set to [code]true[/code].\n"
"[code]area[/code] the other Area."
msgstr ""
+"Wird ausgesendet, wenn ein anderer Bereich diesen Bereich verlässt. "
+"Erfordert, dass [member monitoring] auf [code]true[/code] gesetzt ist.\n"
+"[code]area[/code] der andere Bereich."
#: doc/classes/Area.xml
msgid ""
@@ -8699,6 +8913,18 @@ msgid ""
"the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
+"Wird ausgesendet, wenn [Shape]s eines anderen Bereichs in [Shape]s dieses "
+"Bereichs eintreten. Erfordert, dass [member monitoring] auf [code]true[/"
+"code] gesetzt ist.\n"
+"[code]area_rid[/code] die [RID] des vom [PhysicsServer] verwendeten "
+"[CollisionObject] des anderen Bereichs.\n"
+"[code]area[/code] die andere Area.\n"
+"[code]area_shape_index[/code] der Index des [Shape] des anderen Bereichs, "
+"der vom [PhysicsServer] verwendet wird. Holen Sie den [CollisionShape] "
+"Knoten mit [code]area.shape_owner_get_owner(area_shape_index)[/code].\n"
+"[code]local_shape_index[/code] der Index des [Shape] dieses Bereichs, der "
+"vom [PhysicsServer] verwendet wird. Holen Sie den [CollisionShape] Knoten "
+"mit [code]self.shape_owner_get_owner(local_shape_index)[/code]."
#: doc/classes/Area.xml
msgid ""
@@ -8708,6 +8934,12 @@ msgid ""
"[code]body[/code] the [Node], if it exists in the tree, of the other "
"[PhysicsBody] or [GridMap]."
msgstr ""
+"Wird ausgesendet, wenn ein [PhysicsBody] oder eine [GridMap] diesen Bereich "
+"betritt. Erfordert, dass [member monitoring] auf [code]true[/code] gesetzt "
+"ist. [GridMap]s werden erkannt, wenn die [MeshLibrary] Kollisions-[Shape]s "
+"hat.\n"
+"[code]body[/code] die [Node] des anderen [PhysicsBody] oder der [GridMap], "
+"wenn er im Baum existiert."
#: doc/classes/Area.xml
msgid ""
@@ -8717,6 +8949,12 @@ msgid ""
"[code]body[/code] the [Node], if it exists in the tree, of the other "
"[PhysicsBody] or [GridMap]."
msgstr ""
+"Wird ausgesendet, wenn ein [PhysicsBody] oder eine [GridMap] diesen Bereich "
+"verlässt. Erfordert, dass [member monitoring] auf [code]true[/code] gesetzt "
+"ist. [GridMap]s werden erkannt, wenn die [MeshLibrary] Kollisions-[Shape]s "
+"hat.\n"
+"[code]body[/code] der [Node], falls im Baum vorhanden, des anderen "
+"[PhysicsBody] oder der [GridMap]."
#: doc/classes/Area.xml
msgid ""
@@ -8734,6 +8972,21 @@ msgid ""
"the [PhysicsServer]. Get the [CollisionShape] node with [code]self."
"shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
+"Wird ausgesendet, wenn eine [Shape] eines [PhysicsBody] oder einer [GridMap] "
+"in eine [Shape] dieses Bereichs eintritt. Erfordert, dass [member "
+"monitoring] auf [code]true[/code] gesetzt ist. [GridMap]s werden erkannt, "
+"wenn die [MeshLibrary] Kollisions-[Shape]s hat.\n"
+"[code]body_rid[/code] die [RID] des [PhysicsBody]s oder [MeshLibrary]s "
+"[CollisionObject], das vom [PhysicsServer] verwendet wird.\n"
+"[code]body[/code] der [Node] des [PhysicsBody] oder der [GridMap], wenn er "
+"im Baum existiert.\n"
+"[code]body_shape_index[/code] der Index des [Shape]s des [PhysicsBody] oder "
+"der [GridMap], der vom [PhysicsServer] verwendet wird. Holen Sie den "
+"[CollisionShape] Knoten mit [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] der Index des [Shape]s dieses Bereichs, der "
+"vom [PhysicsServer] verwendet wird. Holen Sie den [CollisionShape] Knoten "
+"mit [code]self.shape_owner_get_owner(local_shape_index)[/code]."
#: doc/classes/Area.xml doc/classes/Area2D.xml
msgid "This area does not affect gravity/damping."
@@ -8744,24 +8997,34 @@ msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
+"Dieser Bereich addiert seine Schwerkraft-/Dämpfungswerte zu den bisher "
+"berechneten Werten (in der Reihenfolge der [member priority])."
#: doc/classes/Area.xml doc/classes/Area2D.xml
msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order), ignoring any lower priority areas."
msgstr ""
+"Dieser Bereich addiert seine Schwere-/Dämpfungswerte zu den bisher "
+"berechneten Werten (in der Reihenfolge der [member priority]) und ignoriert "
+"alle Bereiche mit niedrigerer Priorität."
#: doc/classes/Area.xml doc/classes/Area2D.xml
msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any "
"lower priority areas."
msgstr ""
+"Dieser Bereich ersetzt jede Schwerkraft/Dämpfung, auch die Standardwerte, "
+"und ignoriert alle Bereiche mit niedrigerer Priorität."
#: doc/classes/Area.xml doc/classes/Area2D.xml
msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
msgstr ""
+"Dieser Bereich ersetzt alle bisher berechneten Schwerkraft-/Dämpfungswerte "
+"(in der Reihenfolge der [member priority]), berechnet aber weiterhin die "
+"übrigen Bereiche."
#: doc/classes/Area2D.xml
#, fuzzy
@@ -8769,15 +9032,16 @@ msgid "2D area for detection and physics and audio influence."
msgstr "2D-Bereich zur Erkennung und 2D-Physik-Einfluss."
#: doc/classes/Area2D.xml
-#, fuzzy
msgid ""
"2D area that detects [CollisionObject2D] nodes overlapping, entering, or "
"exiting. Can also alter or override local physics parameters (gravity, "
-"damping) and route audio to a custom audio bus."
+"damping) and route audio to a custom audio bus.\n"
+"To give the area its shape, add a [CollisionShape2D] or a "
+"[CollisionPolygon2D] node as a [i]direct[/i] child (or add multiple such "
+"nodes as direct children) of the area.\n"
+"[b]Warning:[/b] See [ConcavePolygonShape2D] for a warning about possibly "
+"unexpected behavior when using that shape for an area."
msgstr ""
-"2D-Bereich, der [CollisionObject2D]-Knoten erkennt, die sich überlappen, "
-"eintreten oder austreten. Kann auch lokale Physikparameter (Schwerkraft, "
-"Dämpfung) ändern oder außer Kraft setzen."
#: doc/classes/Area2D.xml
msgid "Using Area2D"
@@ -8786,13 +9050,13 @@ msgstr "Verwendung von Area2D"
#: doc/classes/Area2D.xml doc/classes/CollisionShape2D.xml
#: doc/classes/RectangleShape2D.xml
msgid "2D Pong Demo"
-msgstr ""
+msgstr "2D Pong Demo"
#: doc/classes/Area2D.xml doc/classes/Camera2D.xml
#: doc/classes/KinematicBody2D.xml doc/classes/TileMap.xml
#: doc/classes/TileSet.xml
msgid "2D Platformer Demo"
-msgstr ""
+msgstr "2D Platformer Demo"
#: doc/classes/Area2D.xml
msgid ""
@@ -8905,6 +9169,9 @@ msgid ""
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
+"Wird ausgesendet, wenn ein anderes Area2D dieses Area2D betritt. Erfordert, "
+"dass [member monitoring] auf [code]true[/code] gesetzt ist.\n"
+"[code]area[/code] die andere Area2D."
#: doc/classes/Area2D.xml
msgid ""
@@ -8912,6 +9179,9 @@ msgid ""
"to be set to [code]true[/code].\n"
"[code]area[/code] the other Area2D."
msgstr ""
+"Wird ausgesendet, wenn ein anderes Area2D dieses Area2D verlässt. Erfordert, "
+"dass [member monitoring] auf [code]true[/code] gesetzt ist.\n"
+"[code]area[/code] die andere Area2D."
#: doc/classes/Area2D.xml
msgid ""
@@ -8927,6 +9197,18 @@ msgid ""
"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
+"Wird ausgesendet, wenn [Shape2D]s eines anderen Area2Ds in [Shape2D]s dieses "
+"Area2Ds verlassen. Erfordert, dass [member monitoring] auf [code]true[/code] "
+"gesetzt ist.\n"
+"[code]area_rid[/code] die [RID] des anderen Area2D's [CollisionObject2D], "
+"das vom [Physics2DServer] verwendet wird.\n"
+"[code]area[/code] die andere Area2D.\n"
+"[code]area_shape_index[/code] der Index des [Shape2D]s des anderen Area2Ds, "
+"das vom [Physics2DServer] verwendet wird. Holen Sie den [CollisionShape2D] "
+"Knoten mit [code]area.shape_owner_get_owner(area_shape_index)[/code].\n"
+"[code]local_shape_index[/code] der Index des [Shape2D]s dieses Area2Ds, der "
+"vom [Physics2DServer] verwendet wird. Holen Sie den [CollisionShape2D] "
+"Knoten mit [code]self.shape_owner_get_owner(local_shape_index)[/code]."
#: doc/classes/Area2D.xml
msgid ""
@@ -8942,6 +9224,18 @@ msgid ""
"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
+"Wird ausgesendet, wenn [Shape2D]s eines anderen Area2Ds [Shape2D]s dieses "
+"Area2D verlassen. Erfordert, dass [member monitoring] auf [code]true[/code] "
+"gesetzt ist.\n"
+"[code]area_rid[/code] die [RID] des anderen Area2D's [CollisionObject2D], "
+"das vom [Physics2DServer] verwendet wird.\n"
+"[code]area[/code] die andere Area2D.\n"
+"[code]area_shape_index[/code] der Index des [Shape2D]s des anderen Area2Ds, "
+"das vom [Physics2DServer] verwendet wird. Holen Sie den [CollisionShape2D] "
+"Knoten mit [code]area.shape_owner_get_owner(area_shape_index)[/code].\n"
+"[code]local_shape_index[/code] der Index des [Shape2D]s dieses Area2Ds, der "
+"vom [Physics2DServer] verwendet wird. Holen Sie den [CollisionShape2D] "
+"Knoten mit [code]self.shape_owner_get_owner(local_shape_index)[/code]."
#: doc/classes/Area2D.xml
msgid ""
@@ -8951,6 +9245,12 @@ msgid ""
"[code]body[/code] the [Node], if it exists in the tree, of the other "
"[PhysicsBody2D] or [TileMap]."
msgstr ""
+"Wird ausgesendet, wenn ein [PhysicsBody2D] oder eine [TileMap] diesen Area2D "
+"betritt. Erfordert, dass [member monitoring] auf [code]true[/code] gesetzt "
+"ist. [TileMap]s werden erkannt, wenn das [TileSet] Kollisions-[Shape2D]s "
+"hat.\n"
+"[code]body[/code] der [Node], falls im Baum vorhanden, des anderen "
+"[PhysicsBody2D] oder [TileMap]."
#: doc/classes/Area2D.xml
msgid ""
@@ -8960,6 +9260,12 @@ msgid ""
"[code]body[/code] the [Node], if it exists in the tree, of the other "
"[PhysicsBody2D] or [TileMap]."
msgstr ""
+"Wird ausgesendet, wenn ein [PhysicsBody2D] oder eine [TileMap] diesen Area2D "
+"verlässt. Erfordert, dass [member monitoring] auf [code]true[/code] gesetzt "
+"ist. [TileMap]s werden erkannt, wenn das [TileSet] Kollisions-[Shape2D]s "
+"hat.\n"
+"[code]body[/code] der [Node], falls im Baum vorhanden, des anderen "
+"[PhysicsBody2D] oder [TileMap]."
#: doc/classes/Area2D.xml
msgid ""
@@ -8979,6 +9285,21 @@ msgid ""
"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
+"Wird ausgesendet, wenn eine der [Shape2D]s eines [PhysicsBody2D] oder einer "
+"[TileMap] in eine der [Shape2D]s dieser Area2D eintritt. Erfordert, dass "
+"[member monitoring] auf [code]true[/code] gesetzt ist. [TileMap]s werden "
+"erkannt, wenn das [TileSet] Kollisions-[Shape2D]s hat.\n"
+"[code]body_rid[/code] die [RID] des [PhysicsBody2D] oder [TileSet]'s "
+"[CollisionObject2D], das vom [Physics2DServer] verwendet wird.\n"
+"[code]body[/code] der [Node] des [PhysicsBody2D] oder der [TileMap], wenn er "
+"im Baum existiert.\n"
+"[code]body_shape_index[/code] der Index des [Shape2D]s des [PhysicsBody2D]s "
+"oder der [TileMap], der vom [Physics2DServer] verwendet wird. Holen Sie sich "
+"den [CollisionShape2D] Knoten mit [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] der Index des [Shape2D]s dieses Area2Ds, der "
+"vom [Physics2DServer] verwendet wird. Holen Sie den [CollisionShape2D] "
+"Knoten mit [code]self.shape_owner_get_owner(local_shape_index)[/code]."
#: doc/classes/Area2D.xml
msgid ""
@@ -8998,10 +9319,25 @@ msgid ""
"used by the [Physics2DServer]. Get the [CollisionShape2D] node with "
"[code]self.shape_owner_get_owner(local_shape_index)[/code]."
msgstr ""
+"Wird ausgesendet, wenn eine der [Shape2D]s eines [PhysicsBody2D] oder einer "
+"[TileMap] eine der [Shape2D]s dieser Area2D verlässt. Erfordert, dass "
+"[member monitoring] auf [code]true[/code] gesetzt ist. [TileMap]s werden "
+"erkannt, wenn das [TileSet] Kollisions-[Shape2D]s hat.\n"
+"[code]body_rid[/code] die [RID] des [PhysicsBody2D] oder [TileSet]'s "
+"[CollisionObject2D], das vom [Physics2DServer] verwendet wird.\n"
+"[code]body[/code] der [Node] des [PhysicsBody2D] oder der [TileMap], wenn er "
+"im Baum existiert.\n"
+"[code]body_shape_index[/code] der Index des [Shape2D]s des [PhysicsBody2D]s "
+"oder der [TileMap], der vom [Physics2DServer] verwendet wird. Holen Sie sich "
+"den [CollisionShape2D] Knoten mit [code]body."
+"shape_owner_get_owner(body_shape_index)[/code].\n"
+"[code]local_shape_index[/code] der Index des [Shape2D]s dieses Area2Ds, der "
+"vom [Physics2DServer] verwendet wird. Holen Sie den [CollisionShape2D] "
+"Knoten mit [code]self.shape_owner_get_owner(local_shape_index)[/code]."
#: doc/classes/Array.xml
msgid "A generic array datatype."
-msgstr ""
+msgstr "Ein generischer Array Datentyp."
#: doc/classes/Array.xml
msgid ""
@@ -9035,6 +9371,37 @@ msgid ""
"pushing/removing elements. Using [code]const[/code] will only prevent "
"assigning the constant with another value after it was initialized."
msgstr ""
+"Ein generisches Array, das mehrere Elemente beliebiger Typen enthalten kann, "
+"die über einen numerischen Index ab 0 zugänglich sind. Negative Indizes "
+"können verwendet werden, um von hinten zu zählen, wie in Python (-1 ist das "
+"letzte Element, -2 das vorletzte usw.).\n"
+"[b]Zum Beispiel:[/b]\n"
+"[codeblock]\n"
+"var array = [\"Eins\", 2, 3, \"Vier\"]\n"
+"print(array[0]) # Eins.\n"
+"print(array[2]) # 3.\n"
+"print(array[-1]) # Vier.\n"
+"array[2] = \"Drei\"\n"
+"print(array[-2]) # Drei.\n"
+"[/codeblock]\n"
+"Arrays können mit dem Operator [code]+[/code] verbunden werden:\n"
+"[codeblock]\n"
+"var array1 = [\"Eins\", 2]\n"
+"var array2 = [3, \"Vier\"]\n"
+"print(array1 + array2) # [\"Eins\", 2, 3, \"Vier\"]\n"
+"[/codeblock]\n"
+"[b]Hinweis:[/b] Die Verkettung mit dem Operator [code]+=[/code] erzeugt ein "
+"neues Array, was mit Kosten verbunden ist. Wenn Sie ein weiteres Array an "
+"ein bestehendes Array anhängen wollen, ist die [method append_array] "
+"effizienter.\n"
+"[b]Hinweis:[/b] Arrays werden immer per Referenz übergeben. Um eine Kopie "
+"eines Arrays zu erhalten, die unabhängig vom ursprünglichen Array verändert "
+"werden kann, verwenden Sie [method duplicate].\n"
+"[b]Hinweis:[/b] Wenn ein Array mit [code]const[/code] deklariert wird, kann "
+"das Array selbst immer noch verändert werden, indem die Werte an einzelnen "
+"Indizes definiert oder Elemente verschoben/entfernt werden. Die Verwendung "
+"von [code]const[/code] verhindert nur, dass der Konstante ein anderer Wert "
+"zugewiesen wird, nachdem sie initialisiert wurde."
#: doc/classes/Array.xml
#, fuzzy
@@ -9090,6 +9457,13 @@ msgid ""
"print(array1) # Prints [1, 2, 3, 4, 5, 6].\n"
"[/codeblock]"
msgstr ""
+"Hängt ein weiteres Array an das Ende dieses Array an.\n"
+"[codeblock]\n"
+"var array1 = [1, 2, 3]\n"
+"var array2 = [4, 5, 6]\n"
+"array1.append_array(array2)\n"
+"print(array1) # Prints [1, 2, 3, 4, 5, 6].\n"
+"[/codeblock]"
#: doc/classes/Array.xml
msgid ""
@@ -9099,6 +9473,12 @@ msgid ""
"[/code]. If the array is empty, accessing by index will pause project "
"execution when running from the editor."
msgstr ""
+"Gibt das letzte Element des Arrays zurück. Gibt einen Fehler aus und liefert "
+"[code]null[/code], wenn das Array leer ist.\n"
+"[b]Hinweis:[/b] Der Aufruf dieser Funktion ist nicht dasselbe wie das "
+"Schreiben von [code]array[-1][/code]. Wenn das Array leer ist, führt der "
+"Zugriff über den Index zu einer Unterbrechung der Projektausführung, wenn es "
+"vom Editor aus ausgeführt wird."
#: doc/classes/Array.xml
msgid ""
@@ -9110,6 +9490,13 @@ msgid ""
"[b]Note:[/b] Calling [method bsearch] on an unsorted array results in "
"unexpected behavior."
msgstr ""
+"Findet den Index eines vorhandenen Wertes (oder den Einfügeindex, der die "
+"Sortierreihenfolge beibehält, wenn der Wert noch nicht im Array vorhanden "
+"ist) mithilfe der binären Suche. Optional kann ein [code]before[/code]-"
+"Spezifizierer übergeben werden. Falls [code]false[/code], kommt der "
+"zurückgegebene Index nach allen vorhandenen Einträgen des Wertes im Array.\n"
+"[b]Hinweis:[/b] Der Aufruf der [method bsearch] auf einem unsortierten Array "
+"führt zu unerwartetem Verhalten."
#: doc/classes/Array.xml
msgid ""
@@ -9149,19 +9536,57 @@ msgid ""
"[b]Note:[/b] Calling [method bsearch_custom] on an unsorted array results in "
"unexpected behavior."
msgstr ""
+"Findet den Index eines vorhandenen Wertes (oder den Einfügeindex, der die "
+"Sortierreihenfolge beibehält, wenn der Wert noch nicht im Array vorhanden "
+"ist) mithilfe der binären Suche und eine benutzerdefinierte "
+"Vergleichsmethode, die im [code]obj[/code] deklariert ist. Optional kann ein "
+"[code]before[/code]-Spezifizierer übergeben werden. Wenn [code]false[/code], "
+"kommt der zurückgegebene Index nach allen vorhandenen Einträgen des Wertes "
+"im Array. Die benutzerdefinierte Methode erhält zwei Argumente (ein Element "
+"aus dem Array und den gesuchten Wert) und muss [code]true[/code] "
+"zurückgeben, wenn das erste Argument kleiner als das zweite ist, und "
+"ansonsten [code]false[/code].\n"
+"[codeblock]\n"
+"func cardinal_to_algebraic(a):\n"
+" match a:\n"
+" \"eins\":\n"
+" return 1\n"
+" \"zwei\":\n"
+" return 2\n"
+" \"drei\":\n"
+" return 3\n"
+" \"vier\":\n"
+" return 4\n"
+" _:\n"
+" return 0\n"
+"\n"
+"func compare(a, b):\n"
+" return cardinal_to_algebraic(a) < cardinal_to_algebraic(b)\n"
+"\n"
+"func _ready():\n"
+" var a = [\"one\", \"two\", \"three\", \"four\"]\n"
+" # `compare`ist in diesem Objekt definiert, also benutzen wir `self` als "
+"den `obj` Parameter.\n"
+" print(a.bsearch_custom(\"three\", self, \"compare\", true)) # Expected "
+"value is 2.\n"
+"[/codeblock]\n"
+"[b]Hinweis:[/b] Der Aufruf der [method bsearch_custom] auf einem "
+"unsortierten Array führt zu unerwartetem Verhalten."
#: doc/classes/Array.xml
msgid ""
"Clears the array. This is equivalent to using [method resize] with a size of "
"[code]0[/code]."
msgstr ""
+"Löscht das Array. Dies entspricht der Verwendung von [method resize] mit "
+"einer Größe von [code]0[/code]."
#: doc/classes/Array.xml doc/classes/PoolByteArray.xml
#: doc/classes/PoolColorArray.xml doc/classes/PoolIntArray.xml
#: doc/classes/PoolRealArray.xml doc/classes/PoolStringArray.xml
#: doc/classes/PoolVector2Array.xml doc/classes/PoolVector3Array.xml
msgid "Returns the number of times an element is in the array."
-msgstr ""
+msgstr "Gibt die Anzahl der Vorkommen eines Elements im Array zurück."
#: doc/classes/Array.xml
msgid ""
@@ -9173,6 +9598,14 @@ msgid ""
"modifying a sub-array or dictionary in the copy will also impact those "
"referenced in the source array."
msgstr ""
+"Gibt eine Kopie des Arrays zurück.\n"
+"Wenn [code]deep[/code] [code]true[/code] ist, wird eine tiefe Kopie "
+"erstellt: alle verschachtelten Arrays und Dictionaries werden dupliziert und "
+"nicht mit dem ursprünglichen Array geteilt. Wenn es [code]false[/code] ist, "
+"wird eine flache Kopie erstellt und Verweise auf die ursprünglichen "
+"verschachtelten Arrays und Dictionaries werden beibehalten, so dass die "
+"Änderung eines Sub-Arrays oder Dictionaries in der Kopie auch Auswirkungen "
+"auf die im Quell-Array referenzierten hat."
#: doc/classes/Array.xml doc/classes/PoolByteArray.xml
#: doc/classes/PoolColorArray.xml doc/classes/PoolIntArray.xml
@@ -9191,6 +9624,15 @@ msgid ""
"element is close to the beginning of the array (index 0). This is because "
"all elements placed after the removed element have to be reindexed."
msgstr ""
+"Entfernt das erste Vorkommen eines Wertes aus dem Array. Wenn der Wert nicht "
+"im Array vorhanden ist, passiert nichts. Um ein Element nach Index zu "
+"entfernen, verwenden Sie stattdessen [method remove].\n"
+"[b]Hinweis:[/b] Diese Methode arbeitet in-place und gibt keinen Wert "
+"zurück.\n"
+"[b]Hinweis:[/b] Bei großen Arrays ist diese Methode langsamer, wenn das "
+"entfernte Element nahe am Anfang des Arrays liegt (Index 0). Das liegt "
+"daran, dass alle Elemente, die nach dem entfernten Element platziert sind, "
+"neu indiziert werden müssen."
#: doc/classes/Array.xml
msgid ""
@@ -9203,6 +9645,14 @@ msgid ""
"array.fill(0) # Initialize the 10 elements to 0.\n"
"[/codeblock]"
msgstr ""
+"Weist allen Elementen des Arrays den angegebenen Wert zu. Dies kann "
+"normalerweise zusammen mit [method resize] verwendet werden, um ein Array "
+"mit einer bestimmten Größe und initialisierten Elementen zu erstellen:\n"
+"[codeblock]\n"
+"var array = []\n"
+"array.resize(10)\n"
+"array.fill(0) # Initialisieren Sie die 10 Elemente auf 0.\n"
+"[/codeblock]"
#: doc/classes/Array.xml doc/classes/PoolByteArray.xml
#: doc/classes/PoolColorArray.xml doc/classes/PoolIntArray.xml
@@ -9213,12 +9663,18 @@ msgid ""
"not found. Optionally, the initial search index can be passed. Returns "
"[code]-1[/code] if [code]from[/code] is out of bounds."
msgstr ""
+"Durchsucht das Array nach einem Wert und gibt dessen Index oder [code]-1[/"
+"code] zurück, wenn er nicht gefunden wurde. Optional kann auch der "
+"anfängliche Suchindex übergeben werden. Gibt [code]-1[/code] zurück, wenn "
+"[code]from[/code] außerhalb der Grenzen liegt."
#: doc/classes/Array.xml
msgid ""
"Searches the array in reverse order for a value and returns its index or "
"[code]-1[/code] if not found."
msgstr ""
+"Durchsucht das Array in umgekehrter Reihenfolge nach einem Wert und gibt "
+"dessen Index oder [code]-1[/code] zurück, wenn er nicht gefunden wird."
#: doc/classes/Array.xml
msgid ""
@@ -9228,6 +9684,12 @@ msgid ""
"[/code]. If the array is empty, accessing by index will pause project "
"execution when running from the editor."
msgstr ""
+"Gibt das erste Element des Arrays zurück. Gibt einen Fehler aus und liefert "
+"[code]null[/code], wenn das Array leer ist.\n"
+"[b]Hinweis:[/b] Der Aufruf dieser Funktion ist nicht dasselbe wie das "
+"Schreiben von [code]array[0][/code]. Wenn das Array leer ist, führt der "
+"Zugriff über den Index zu einer Unterbrechung der Projektausführung, wenn es "
+"vom Editor aus ausgeführt wird."
#: doc/classes/Array.xml
msgid ""
@@ -9246,6 +9708,20 @@ msgid ""
" pass\n"
"[/codeblock]"
msgstr ""
+"Gibt [code]true[/code] zurück, wenn das Array den angegebenen Wert enthält.\n"
+"[codeblock]\n"
+"[\"innerhalb\", 7].has(\"innerhalb\") # True\n"
+"[\"innerhalb\", 7].has(\"außerhalb\") # False\n"
+"[\"innerhalb\", 7].has(7) # True\n"
+"[\"innerhalb\", 7].has(\"7\") # False\n"
+"[/codeblock]\n"
+"[b]Hinweis:[/b] Dies entspricht der Verwendung des Operators [code]in[/code] "
+"wie folgt:\n"
+"[codeblock]\n"
+"# Wird als `true` ausgewertet.\n"
+"if 2 in [2, 4, 6, 8]:\n"
+" pass\n"
+"[/codeblock]"
#: doc/classes/Array.xml
msgid ""
@@ -9256,6 +9732,13 @@ msgid ""
"does [i]not[/i] imply the arrays are equal, because different arrays can "
"have identical hash values due to hash collisions."
msgstr ""
+"Gibt einen gehashten 32-Bit-Ganzzahlwert zurück, der das Array und seinen "
+"Inhalt darstellt.\n"
+"[b]Hinweis:[/b] [Array]s mit gleichem Inhalt erzeugen immer identische "
+"Hashwerte. Das Gegenteil ist jedoch nicht der Fall. Die Rückgabe von "
+"identischen Hash-Werten bedeutet [i]nicht[/i], dass die Arrays gleich sind, "
+"da verschiedene Arrays aufgrund von Hash-Kollisionen identische Hash-Werte "
+"haben können."
#: doc/classes/Array.xml
msgid ""
@@ -9266,6 +9749,15 @@ msgid ""
"element is close to the beginning of the array (index 0). This is because "
"all elements placed after the newly inserted element have to be reindexed."
msgstr ""
+"Fügt ein neues Element an einer bestimmten Position in das Array ein. Die "
+"Position muss gültig sein oder am Ende des Arrays liegen ([code]pos == size()"
+"[/code]).\n"
+"[b]Hinweis:[/b] Diese Methode arbeitet in-place und gibt keinen Wert "
+"zurück.\n"
+"[b]Hinweis:[/b] Bei großen Arrays wird diese Methode langsamer sein, wenn "
+"das eingefügte Element nahe am Anfang des Arrays (Index 0) liegt. Dies liegt "
+"daran, dass alle Elemente, die nach dem neu eingefügten Element platziert "
+"sind, neu indiziert werden müssen."
#: doc/classes/Array.xml doc/classes/PoolByteArray.xml
#: doc/classes/PoolColorArray.xml doc/classes/PoolIntArray.xml
@@ -9280,6 +9772,9 @@ msgid ""
"comparable types. If the elements can't be compared, [code]null[/code] is "
"returned."
msgstr ""
+"Gibt den größten im Array enthaltenen Wert zurück, wenn alle Elemente von "
+"vergleichbarem Typ sind. Wenn die Elemente nicht verglichen werden können, "
+"wird [code]null[/code] zurückgegeben."
#: doc/classes/Array.xml
msgid ""
@@ -9287,6 +9782,9 @@ msgid ""
"comparable types. If the elements can't be compared, [code]null[/code] is "
"returned."
msgstr ""
+"Gibt den kleinsten im Array enthaltenen Wert zurück, wenn alle Elemente von "
+"vergleichbarem Typ sind. Wenn die Elemente nicht verglichen werden können, "
+"wird [code]null[/code] zurückgegeben."
#: doc/classes/Array.xml
msgid ""
@@ -9300,6 +9798,17 @@ msgid ""
"removed element. The larger the array and the lower the index of the removed "
"element, the slower [method pop_at] will be."
msgstr ""
+"Entfernt das Element des Arrays am Index [code]position[/code] und gibt es "
+"zurück. Falls negativ, wird [code]position[/code] relativ zum Ende des "
+"Arrays betrachtet. Lässt das Array unangetastet und gibt [code]null[/code] "
+"zurück, wenn das Array leer ist oder wenn der Zugriff außerhalb der Grenzen "
+"erfolgt. Es wird eine Fehlermeldung ausgegeben, wenn der Zugriff auf das "
+"Array außerhalb der Grenzen erfolgt, aber nicht, wenn das Array leer ist.\n"
+"[b]Hinweis:[/b] Bei großen Arrays kann diese Methode langsamer sein als "
+"[method pop_back], da sie die Elemente des Arrays, die sich nach dem "
+"entfernten Element befinden, neu indiziert werden müssen. Je größer das "
+"Array und je niedriger der Index des entfernten Elements ist, desto "
+"langsamer wird die [method pop_at] sein."
#: doc/classes/Array.xml
msgid ""
@@ -9307,6 +9816,9 @@ msgid ""
"if the array is empty, without printing an error message. See also [method "
"pop_front]."
msgstr ""
+"Entfernt und gibt das letzte Element des Arrays zurück. Gibt [code]null[/"
+"code] zurück, wenn das Array leer ist, ohne eine Fehlermeldung auszugeben. "
+"Siehe auch [Methode pop_front]."
#: doc/classes/Array.xml
msgid ""
@@ -9317,6 +9829,12 @@ msgid ""
"pop_back] as it will reindex all the array's elements every time it's "
"called. The larger the array, the slower [method pop_front] will be."
msgstr ""
+"Entfernt und gibt das erste Element des Arrays zurück. Gibt [code]null[/"
+"code] zurück, wenn das Array leer ist, ohne eine Fehlermeldung auszugeben. "
+"Siehe auch [Methode pop_back].\n"
+"[b]Hinweis:[/b] Bei großen Arrays ist diese Methode viel langsamer als "
+"[method pop_back], da sie bei jedem Aufruf alle Elemente des Arrays neu "
+"indiziert. Je größer das Array, desto langsamer ist [method pop_front]."
#: doc/classes/Array.xml
#, fuzzy
@@ -9332,6 +9850,11 @@ msgid ""
"push_back] as it will reindex all the array's elements every time it's "
"called. The larger the array, the slower [method push_front] will be."
msgstr ""
+"Fügt ein Element am Anfang des Arrays hinzu. Siehe auch [Methode "
+"push_back].\n"
+"[b]Hinweis:[/b] Bei großen Arrays ist diese Methode viel langsamer als "
+"[method push_back], da sie bei jedem Aufruf alle Elemente des Arrays neu "
+"indiziert. Je größer das Array, desto langsamer ist [method push_front]."
#: doc/classes/Array.xml
msgid ""
@@ -9343,6 +9866,15 @@ msgid ""
"element is close to the beginning of the array (index 0). This is because "
"all elements placed after the removed element have to be reindexed."
msgstr ""
+"Entfernt ein Element aus dem Array nach Index. Wenn der Index im Array nicht "
+"vorhanden ist, passiert nichts. Um ein Element durch die Suche nach seinem "
+"Wert zu entfernen, verwenden Sie stattdessen [method erase].\n"
+"[b]Hinweis:[/b] Diese Methode arbeitet in-place und gibt keinen Wert "
+"zurück.\n"
+"[b]Hinweis:[/b] Bei großen Arrays ist diese Methode langsamer, wenn das "
+"entfernte Element nahe am Anfang des Arrays liegt (Index 0). Dies liegt "
+"daran, dass alle Elemente, die nach dem entfernten Element platziert sind, "
+"neu indiziert werden müssen."
#: doc/classes/Array.xml
msgid ""
@@ -9350,6 +9882,9 @@ msgid ""
"size is smaller, elements are cleared, if bigger, new elements are "
"[code]null[/code]."
msgstr ""
+"Ändert die Größe des Arrays, damit es eine andere Anzahl von Elementen "
+"enthält. Ist die Größe des Arrays kleiner, werden die Elemente gelöscht, ist "
+"sie größer, sind die neuen Elemente [code]null[/code]."
#: doc/classes/Array.xml doc/classes/PoolByteArray.xml
#: doc/classes/PoolColorArray.xml doc/classes/PoolIntArray.xml
@@ -9361,6 +9896,10 @@ msgid ""
"the array. If the adjusted start index is out of bounds, this method "
"searches from the end of the array."
msgstr ""
+"Durchsucht das Array in umgekehrter Reihenfolge. Optional kann ein Start-"
+"Suchindex übergeben werden. Ist dieser negativ, wird der Startindex relativ "
+"zum Ende des Arrays betrachtet. Liegt der eingestellte Startindex außerhalb "
+"der Grenzen, sucht diese Methode ab dem Ende des Arrays."
#: doc/classes/Array.xml
msgid ""
@@ -9369,6 +9908,11 @@ msgid ""
"@GDScript.randi]. Call [method @GDScript.randomize] to ensure that a new "
"seed will be used each time if you want non-reproducible shuffling."
msgstr ""
+"Mischt das Array so, dass die Elemente eine zufällige Reihenfolge haben. "
+"Diese Methode verwendet den globalen Zufallszahlengenerator, der auch für "
+"Methoden wie [method @GDScript.randi] verwendet wird. Rufen Sie [method "
+"@GDScript.randomize] auf, um sicherzustellen, dass jedes Mal ein neuer Seed "
+"verwendet wird, wenn Sie ein nicht reproduzierbares Mischen wünschen."
#: doc/classes/Array.xml doc/classes/PoolByteArray.xml
#: doc/classes/PoolColorArray.xml doc/classes/PoolIntArray.xml
@@ -9384,6 +9928,11 @@ msgid ""
"and upper index are inclusive, with the [code]step[/code] describing the "
"change between indices while slicing."
msgstr ""
+"Dupliziert die in der Funktion beschriebene Teilmenge und gibt sie in einem "
+"Array zurück, wobei das Array tief kopiert wird, wenn [code]deep[/code] "
+"[code]true[/code] ist. Unterer und oberer Index sind inklusive, wobei "
+"[code]step[/code] den Wechsel zwischen den Indizes während des Slicings "
+"beschreibt."
#: doc/classes/Array.xml
msgid ""
@@ -9397,6 +9946,16 @@ msgid ""
"print(strings) # Prints [string1, string10, string11, string2]\n"
"[/codeblock]"
msgstr ""
+"Sortiert das Array.\n"
+"[b]Hinweis:[/b] Strings werden in alphabetischer Reihenfolge sortiert (im "
+"Gegensatz zur natürlichen Reihenfolge). Dies kann zu unerwartetem Verhalten "
+"führen, wenn ein Array mit Strings sortiert wird, die mit einer Zahlenfolge "
+"enden. Betrachten Sie das folgende Beispiel:\n"
+"[codeblock]\n"
+"var strings = [\"string1\", \"string2\", \"string10\", \"string11\"]\n"
+"strings.sort()\n"
+"print(strings) # Prints [string1, string10, string11, string2]\n"
+"[/codeblock]"
#: doc/classes/Array.xml
msgid ""
@@ -9422,11 +9981,33 @@ msgid ""
"print(my_items) # Prints [[4, Tomato], [5, Potato], [9, Rice]].\n"
"[/codeblock]"
msgstr ""
+"Sortiert das Array mit einer eigenen Methode. Die Argumente sind ein Objekt, "
+"das die Methode enthält, und der Name dieser Methode. Die benutzerdefinierte "
+"Methode erhält zwei Argumente (ein Paar von Elementen aus dem Array) und "
+"muss entweder [code]true[/code] oder [code]false[/code] zurückgeben.\n"
+"Für zwei Elemente [code]a[/code] und [code]b[/code], wenn die angegebene "
+"Methode [code]true[/code] zurückgibt, wird Element [code]b[/code] nach "
+"Element [code]a[/code] im Array stehen.\n"
+"[b]Hinweis:[/b] Sie können den Rückgabewert nicht zufällig bestimmen, da der "
+"Heapsort-Algorithmus ein deterministisches Ergebnis erwartet. Dies würde zu "
+"einem unerwarteten Verhalten führen.\n"
+"[codeblock]\n"
+"class MyCustomSorter:\n"
+" static func sort_ascending(a, b):\n"
+" if a[0] < b[0]:\n"
+" return true\n"
+" return false\n"
+"\n"
+"var my_items = [[5, \"Kartoffel\"], [9, \"Reis\"], [4, \"Tomate\"]]\n"
+"my_items.sort_custom(MyCustomSorter, \"sort_ascending\")\n"
+"print(my_items) # Prints [[4, Tomate], [5, Kartoffel], [9, Reis]].\n"
+"[/codeblock]"
#: doc/classes/ArrayMesh.xml
msgid ""
"[Mesh] type that provides utility for constructing a surface from arrays."
msgstr ""
+"[Mesh]-Typ, der das Konstruieren einer Oberfläche aus Arrays ermöglicht."
#: doc/classes/ArrayMesh.xml
msgid ""
@@ -9455,14 +10036,43 @@ msgid ""
"OpenGL/Face-culling]winding order[/url] for front faces of triangle "
"primitive modes."
msgstr ""
+"Das [ArrayMesh] wird verwendet, um ein [Mesh] zu konstruieren, indem die "
+"Attribute als Arrays angegeben werden.\n"
+"Das einfachste Beispiel ist die Erstellung eines einzelnen Dreiecks:\n"
+"[codeblock]\n"
+"var vertices = PoolVector3Array()\n"
+"vertices.push_back(Vector3(0, 1, 0))\n"
+"vertices.push_back(Vector3(1, 0, 0))\n"
+"vertices.push_back(Vector3(0, 0, 1))\n"
+"# Initialisiere das ArrayMesh.\n"
+"var arr_mesh = ArrayMesh.new()\n"
+"var arrays = []\n"
+"arrays.resize(ArrayMesh.ARRAY_MAX)\n"
+"arrays[ArrayMesh.ARRAY_VERTEX] = vertices\n"
+"# Erstelle das Mesh.\n"
+"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, arrays)\n"
+"var m = MeshInstance.new()\n"
+"m.mesh = arr_mesh\n"
+"[/codeblock]\n"
+"Die [MeshInstance] ist bereit, dem darzustellenden [SceneTree] hinzugefügt "
+"zu werden.\n"
+"Siehe auch [ImmediateGeometry], [MeshDataTool] und [SurfaceTool] für "
+"prozedurale Geometrieerzeugung.\n"
+"[b]Hinweis:[/b] Godot verwendet die [url=https://learnopengl.com/Advanced-"
+"OpenGL/Face-culling]Wickelreihenfolge[/url] im Uhrzeigersinn für "
+"Vorderseiten von Dreiecks-Primitivmodi."
#: doc/classes/ArrayMesh.xml
msgid ""
"Adds name for a blend shape that will be added with [method "
"add_surface_from_arrays]. Must be called before surface is added."
msgstr ""
+"Fügt einen Namen für eine Mischform hinzu, die mit der [method "
+"add_surface_from_arrays] hinzugefügt wird. Muss aufgerufen werden, bevor die "
+"Oberfläche hinzugefügt wird."
#: doc/classes/ArrayMesh.xml
+#, fuzzy
msgid ""
"Creates a new surface.\n"
"Surfaces are created to be rendered using a [code]primitive[/code], which "
@@ -9477,78 +10087,115 @@ msgid ""
"mode\" where the vertex and other arrays become the sources of data and the "
"index array defines the vertex order. All sub-arrays must have the same "
"length as the vertex array or be empty, except for [constant ARRAY_INDEX] if "
-"it is used."
-msgstr ""
+"it is used.\n"
+"[code]compress_flags[/code] is a bitfield made of [enum Mesh.ArrayFormat] "
+"values. It defaults to [constant Mesh.ARRAY_COMPRESS_DEFAULT].\n"
+"[b]Note:[/b] The default [code]compress_flags[/code] enable [constant Mesh."
+"ARRAY_COMPRESS_COLOR], which makes vertex colors stored as 8-bit unsigned "
+"integers. This will clamp overbright vertex colors to [code]Color(1, 1, 1, 1)"
+"[/code] and reduce their precision. To store HDR vertex colors, remove the "
+"vertex color compression flag by passing [code]Mesh.ARRAY_COMPRESS_DEFAULT ^ "
+"Mesh.ARRAY_COMPRESS_COLOR[/code] as the value of [code]compress_flags[/code]."
+msgstr ""
+"Erzeugt eine neue Oberfläche.\n"
+"Flächen werden erstellt, um mit einem [code]primitive[/code] gerendert zu "
+"werden, das einer der in [enum Mesh.PrimitiveType] definierten Typen sein "
+"kann. (Es wird empfohlen, bei der Verwendung von Indizes nur Punkte, Linien "
+"oder Dreiecke zu verwenden). Die [method Mesh.get_surface_count] wird zur "
+"[code]surf_idx[/code] für diese neue Oberfläche.\n"
+"Das Argument [code]arrays[/code] ist ein Array von Arrays. Siehe [enum "
+"ArrayType] für die in diesem Array verwendeten Werte. Zum Beispiel ist "
+"[code]arrays[0][/code] das Array der Vertices. Das erste Vertex-Sub-Array "
+"ist immer erforderlich; die anderen sind optional. Das Hinzufügen eines "
+"Index-Arrays versetzt diese Funktion in den \"Index-Modus\", in dem die "
+"Vertex- und anderen Arrays zu Datenquellen werden und das Index-Array die "
+"Reihenfolge der Vertexe definiert. Alle Sub-Arrays müssen die gleiche Länge "
+"wie das Vertex-Array haben oder leer sein, mit Ausnahme der [constant "
+"ARRAY_INDEX], falls sie verwendet wird."
#: doc/classes/ArrayMesh.xml
msgid "Removes all blend shapes from this [ArrayMesh]."
-msgstr ""
+msgstr "Entfernt alle Mischformen aus diesem [ArrayMesh]."
#: doc/classes/ArrayMesh.xml
msgid "Removes all surfaces from this [ArrayMesh]."
-msgstr ""
+msgstr "Entfernt alle Flächen aus diesem [ArrayMesh]."
#: doc/classes/ArrayMesh.xml
msgid "Returns the number of blend shapes that the [ArrayMesh] holds."
-msgstr ""
+msgstr "Gibt die Anzahl der Blendformen zurück, die das [ArrayMesh] enthält."
#: doc/classes/ArrayMesh.xml
msgid "Returns the name of the blend shape at this index."
-msgstr ""
+msgstr "Gibt den Namen der Blendform an diesem Index zurück."
#: doc/classes/ArrayMesh.xml
msgid ""
"Will perform a UV unwrap on the [ArrayMesh] to prepare the mesh for "
"lightmapping."
msgstr ""
+"Führt ein UV Unwrap auf dem [ArrayMesh] durch, um das Mesh für das "
+"Lightmapping vorzubereiten."
#: doc/classes/ArrayMesh.xml
msgid "Will regenerate normal maps for the [ArrayMesh]."
-msgstr ""
+msgstr "Regeneriert Normal Maps für das [ArrayMesh]."
#: doc/classes/ArrayMesh.xml
msgid ""
"Returns the index of the first surface with this name held within this "
"[ArrayMesh]. If none are found, -1 is returned."
msgstr ""
+"Gibt den Index der ersten Fläche mit diesem Namen in diesem [ArrayMesh] "
+"zurück. Wenn keine gefunden wird, wird -1 zurückgegeben."
#: doc/classes/ArrayMesh.xml
msgid ""
"Returns the length in indices of the index array in the requested surface "
"(see [method add_surface_from_arrays])."
msgstr ""
+"Gibt die Länge des Index-Arrays in der angeforderten Oberfläche in Indizes "
+"zurück (siehe [method add_surface_from_arrays])."
#: doc/classes/ArrayMesh.xml
msgid ""
"Returns the length in vertices of the vertex array in the requested surface "
"(see [method add_surface_from_arrays])."
msgstr ""
+"Gibt die Länge des Vertex-Arrays in der angeforderten Oberfläche in Vertices "
+"zurück (siehe [method add_surface_from_arrays])."
#: doc/classes/ArrayMesh.xml
msgid ""
"Returns the format mask of the requested surface (see [method "
"add_surface_from_arrays])."
msgstr ""
+"Gibt die Formatmaske der angeforderten Oberfläche zurück (siehe [method "
+"add_surface_from_arrays])."
#: doc/classes/ArrayMesh.xml
msgid "Gets the name assigned to this surface."
-msgstr ""
+msgstr "Ruft den dieser Fläche zugewiesenen Namen ab."
#: doc/classes/ArrayMesh.xml
msgid ""
"Returns the primitive type of the requested surface (see [method "
"add_surface_from_arrays])."
msgstr ""
+"Gibt den primitiven Typ der angeforderten Fläche zurück (siehe [method "
+"add_surface_from_arrays])."
#: doc/classes/ArrayMesh.xml
msgid ""
"Removes a surface at position [code]surf_idx[/code], shifting greater "
"surfaces one [code]surf_idx[/code] slot down."
msgstr ""
+"Entfernt eine Fläche an der Position [code]surf_idx[/code] und verschiebt "
+"größere Flächen um einen [code]surf_idx[/code] Slot nach unten."
#: doc/classes/ArrayMesh.xml
msgid "Sets a name for a given surface."
-msgstr ""
+msgstr "Legt einen Namen für eine bestimmte Oberfläche fest."
#: doc/classes/ArrayMesh.xml
msgid ""
@@ -9556,10 +10203,14 @@ msgid ""
"[b]Warning:[/b] Only use if you know what you are doing. You can easily "
"cause crashes by calling this function with improper arguments."
msgstr ""
+"Aktualisiert einen bestimmten Bereich von Mesh-Arrays auf der GPU.\n"
+"[b]Warnung:[/b] Nur verwenden, wenn Sie wissen, was Sie tun. Sie können "
+"leicht Abstürze verursachen, wenn Sie diese Funktion mit falschen Argumenten "
+"aufrufen."
#: doc/classes/ArrayMesh.xml
msgid "Sets the blend shape mode to one of [enum Mesh.BlendShapeMode]."
-msgstr ""
+msgstr "Setzt den Blendform-Modus auf einen der [enum Mesh.BlendShapeMode]."
#: doc/classes/ArrayMesh.xml doc/classes/PrimitiveMesh.xml
msgid ""
@@ -9567,22 +10218,26 @@ msgid ""
"Especially useful to avoid unexpected culling when using a shader to offset "
"vertices."
msgstr ""
+"Überschreibt den [AABB] mit einem vom Benutzer definierten Wert für die "
+"Verwendung mit Frustum Culling. Besonders nützlich, um unerwartetes Culling "
+"zu vermeiden, wenn ein Shader zum Versetzen von Vertices verwendet wird."
#: doc/classes/ArrayMesh.xml
msgid "Value used internally when no indices are present."
-msgstr ""
+msgstr "Wert wird intern benutzt, wenn keine Indizes vorhanden sind."
#: doc/classes/ArrayMesh.xml
msgid "Amount of weights/bone indices per vertex (always 4)."
-msgstr ""
+msgstr "Anzahl der Gewichte/Knochenindizes pro Vertex (immer 4)."
#: doc/classes/ArrayMesh.xml
msgid "[PoolVector3Array], [PoolVector2Array], or [Array] of vertex positions."
msgstr ""
+"[PoolVector3Array], [PoolVector2Array] oder [Array] von Vertex-Positionen."
#: doc/classes/ArrayMesh.xml
msgid "[PoolVector3Array] of vertex normals."
-msgstr ""
+msgstr "[PoolVector3Array] von Vertex-Normalen."
#: doc/classes/ArrayMesh.xml
msgid ""
@@ -9590,28 +10245,34 @@ msgid ""
"first 3 floats determine the tangent, and the last the binormal direction as "
"-1 or 1."
msgstr ""
+"[PoolRealArray] von Vertex-Tangenten. Jedes Element in Gruppen von 4 Floats, "
+"die ersten 3 Floats bestimmen die Tangente, und das letzte die binormale "
+"Richtung als -1 oder 1."
#: doc/classes/ArrayMesh.xml
msgid "[PoolColorArray] of vertex colors."
-msgstr ""
+msgstr "[PoolColorArray] von Vertex-Farben."
#: doc/classes/ArrayMesh.xml
msgid "[PoolVector2Array] for UV coordinates."
-msgstr ""
+msgstr "[PoolVector2Array] für UV-Koordinaten."
#: doc/classes/ArrayMesh.xml
msgid "[PoolVector2Array] for second UV coordinates."
-msgstr ""
+msgstr "[PoolVector2Array] für zweite UV-Koordinaten."
#: doc/classes/ArrayMesh.xml
msgid ""
"[PoolRealArray] or [PoolIntArray] of bone indices. Each element in groups of "
"4 floats."
msgstr ""
+"[PoolRealArray] oder [PoolIntArray] von Knochenindizes. Jedes Element in "
+"Gruppen von 4 Floats."
#: doc/classes/ArrayMesh.xml
msgid "[PoolRealArray] of bone weights. Each element in groups of 4 floats."
msgstr ""
+"[PoolRealArray] von Knochengewichten. Jedes Element in Gruppen von 4 Floats."
#: doc/classes/ArrayMesh.xml
msgid ""
@@ -9626,50 +10287,61 @@ msgid ""
"vertices of each triangle. For lines, the index array is in pairs indicating "
"the start and end of each line."
msgstr ""
+"[PoolIntArray] von Ganzzahlen, die als Indizes verwendet werden und auf "
+"Vertices, Farben, Normalen, Tangenten und Texturen verweisen. Alle diese "
+"Arrays müssen die gleiche Anzahl von Elementen haben wie das Vertex-Array. "
+"Kein Index kann über die Größe des Vertex-Arrays hinausgehen. Wenn dieses "
+"Index-Array vorhanden ist, versetzt es die Funktion in den \"Index-Modus\", "
+"in dem der Index den *i*-ten Vertex, die Normale, die Tangente, die Farbe, "
+"die UV, usw. auswählt. Das bedeutet, wenn man verschiedene Normalen oder "
+"Farben entlang einer Kante haben will, muss man die Vertices duplizieren.\n"
+"Bei Dreiecken wird das Index-Array als Tripel interpretiert, das sich auf "
+"die Vertices der einzelnen Dreiecke bezieht. Bei Linien besteht das Index-"
+"Array aus Paaren, die den Anfang und das Ende jeder Linie angeben."
#: doc/classes/ArrayMesh.xml doc/classes/Mesh.xml doc/classes/VisualServer.xml
msgid "Represents the size of the [enum ArrayType] enum."
-msgstr ""
+msgstr "Stellt die Größe der Aufzählung [enum ArrayType] dar."
#: doc/classes/ArrayMesh.xml
msgid "Array format will include vertices (mandatory)."
-msgstr ""
+msgstr "Das Array-Format enthält Vertices (obligatorisch)."
#: doc/classes/ArrayMesh.xml
msgid "Array format will include normals."
-msgstr ""
+msgstr "Das Array-Format enthält Normalen."
#: doc/classes/ArrayMesh.xml
msgid "Array format will include tangents."
-msgstr ""
+msgstr "Das Array-Format enthält Tangenten."
#: doc/classes/ArrayMesh.xml
msgid "Array format will include a color array."
-msgstr ""
+msgstr "Das Array-Format enthält ein Farbarray."
#: doc/classes/ArrayMesh.xml
msgid "Array format will include UVs."
-msgstr ""
+msgstr "Das Array-Format enthält UVs."
#: doc/classes/ArrayMesh.xml
msgid "Array format will include another set of UVs."
-msgstr ""
+msgstr "Das Array-Format enthält einen weiteren Satz von UVs."
#: doc/classes/ArrayMesh.xml
msgid "Array format will include bone indices."
-msgstr ""
+msgstr "Das Array-Format enthält Knochenindizes."
#: doc/classes/ArrayMesh.xml
msgid "Array format will include bone weights."
-msgstr ""
+msgstr "Das Array-Format enthält Knochengewichte."
#: doc/classes/ArrayMesh.xml
msgid "Index array will be used."
-msgstr ""
+msgstr "Das Index-Array wird verwendet."
#: doc/classes/ARVRAnchor.xml
msgid "An anchor point in AR space."
-msgstr ""
+msgstr "Ein Ankerpunkt im AR-Raum."
#: doc/classes/ARVRAnchor.xml
msgid ""
@@ -9687,16 +10359,32 @@ msgid ""
"more about the real world out there especially if only part of the surface "
"is in view."
msgstr ""
+"Der [ARVRAnchor]-Punkt ist ein räumlicher Knoten, der einen von der AR-"
+"Plattform identifizierten Standort in der realen Welt auf eine Position "
+"innerhalb der Spielwelt abbildet. Solange z. B. die Ebenenerkennung in ARKit "
+"aktiviert ist, identifiziert und aktualisiert ARKit die Position von Ebenen "
+"(Tische, Böden usw.) und erstellt Anker für sie.\n"
+"Dieser Knoten wird durch seine eindeutige ID auf einen der Anker abgebildet. "
+"Wenn Sie ein Signal erhalten, dass ein neuer Anker verfügbar ist, sollten "
+"Sie diesen Knoten zu Ihrer Szene für diesen Anker hinzufügen. Sie können "
+"Knoten vordefinieren und die ID festlegen; die Knoten bleiben dann einfach "
+"auf 0,0,0, bis eine Ebene erkannt wird.\n"
+"Denken Sie daran, dass, solange die Ebenenerkennung aktiviert ist, die "
+"Größe, Platzierung und Ausrichtung eines Ankers aktualisiert wird, da die "
+"Erkennungslogik mehr über die reale Welt da draußen erfährt, insbesondere "
+"wenn nur ein Teil der Oberfläche im Blickfeld ist."
#: doc/classes/ARVRAnchor.xml
msgid "Returns the name given to this anchor."
-msgstr ""
+msgstr "Gibt den Namen zurück, der diesem Anker gegeben wurde."
#: doc/classes/ARVRAnchor.xml
msgid ""
"Returns [code]true[/code] if the anchor is being tracked and [code]false[/"
"code] if no anchor with this ID is currently known."
msgstr ""
+"Gibt [code]true[/code] zurück, wenn der Anker verfolgt wird, und "
+"[code]false[/code], wenn derzeit kein Anker mit dieser ID bekannt ist."
#: doc/classes/ARVRAnchor.xml
msgid ""
@@ -9706,11 +10394,18 @@ msgid ""
"can be used to create shadows/reflections on surfaces or for generating "
"collision shapes."
msgstr ""
+"Falls vom [ARVRInterface] bereitgestellt, wird ein Mesh-Objekt für den Anker "
+"zurückgegeben. Bei einem Anker kann es sich um eine Form handeln, die sich "
+"auf das verfolgte Objekt bezieht, oder um ein Mesh, das eine Topologie in "
+"Bezug auf den Anker bietet und zur Erstellung von Schatten/Reflexionen auf "
+"Oberflächen oder zur Erzeugung von Kollisionsformen verwendet werden kann."
#: doc/classes/ARVRAnchor.xml
msgid ""
"Returns a plane aligned with our anchor; handy for intersection testing."
msgstr ""
+"Gibt eine Ebene zurück, die an unserem Anker ausgerichtet ist; praktisch für "
+"Schnittpunkttests."
#: doc/classes/ARVRAnchor.xml
msgid ""
@@ -9718,6 +10413,9 @@ msgid ""
"anchor relates to a table in the real world, this is the estimated size of "
"the surface of that table."
msgstr ""
+"Gibt die geschätzte Größe der erkannten Fläche zurück. Wenn sich der Anker "
+"beispielsweise auf einen Tisch in der realen Welt bezieht, ist dies die "
+"geschätzte Größe der Oberfläche dieses Tisches."
#: doc/classes/ARVRAnchor.xml
msgid ""
@@ -9728,6 +10426,12 @@ msgid ""
"when the AR server identifies that two anchors represent different parts of "
"the same plane and merges them."
msgstr ""
+"Die ID des Ankers. Sie können diese festlegen, bevor der Anker selbst "
+"existiert. Der erste Anker erhält eine ID von [code]1[/code], der zweite "
+"eine ID von [code]2[/code] usw. Wenn Anker entfernt werden, kann die Engine "
+"dann die entsprechende ID neuen Ankern zuweisen. Die häufigste Situation, in "
+"der Anker \"verschwinden\", ist, wenn der AR-Server feststellt, dass zwei "
+"Anker verschiedene Teile derselben Ebene darstellen, und sie zusammenführt."
#: doc/classes/ARVRAnchor.xml
msgid ""
@@ -9735,12 +10439,17 @@ msgid ""
"available. This is especially important for topology that is constantly "
"being [code]mesh_updated[/code]."
msgstr ""
+"Wird ausgesendet, wenn sich das mit dem Anker verbundene Netz ändert oder "
+"eines verfügbar wird. Dies ist besonders wichtig für eine Topologie, die "
+"ständig [code]mesh_updated[/code] wird."
#: doc/classes/ARVRCamera.xml
msgid ""
"A camera node with a few overrules for AR/VR applied, such as location "
"tracking."
msgstr ""
+"Ein Kameraknoten, der einige Grundregeln für AR/VR anwendet, z. B. die "
+"Standortverfolgung."
#: doc/classes/ARVRCamera.xml
msgid ""
@@ -9755,10 +10464,23 @@ msgid ""
"tracking data of the HMD and the location of the ARVRCamera can lag a few "
"milliseconds behind what is used for rendering as a result."
msgstr ""
+"Dies ist ein räumlicher Hilfsknoten für unsere Kamera; beachten Sie, dass "
+"bei stereoskopischem Rendering (VR-HMD) die meisten Kameraeigenschaften "
+"ignoriert werden, da die HMD-Informationen sie außer Kraft setzen. Die "
+"einzigen Eigenschaften, auf die man sich verlassen kann, sind die Nah- und "
+"Fern-Ebene.\n"
+"Die Position und Ausrichtung dieses Knotens wird vom ARVR-Server automatisch "
+"aktualisiert, um die Position des HMD darzustellen, wenn eine solche "
+"Verfolgung verfügbar ist, und kann somit von der Spiellogik verwendet "
+"werden. Beachten Sie, dass der Render-Thread im Gegensatz zum ARVR "
+"Controller Zugriff auf die aktuellsten Tracking-Daten des HMD hat und die "
+"Position der ARVRCamera daher einige Millisekunden hinter dem zurückbleiben "
+"kann, was für das Rendering verwendet wird."
#: doc/classes/ARVRController.xml
msgid "A spatial node representing a spatially-tracked controller."
msgstr ""
+"Ein räumlicher Knoten, der einen räumlich verfolgten Controller darstellt."
#: doc/classes/ARVRController.xml
msgid ""
@@ -9775,18 +10497,35 @@ msgid ""
"[ARVRServer]. This makes this node ideal to add child nodes to visualize the "
"controller."
msgstr ""
+"Dies ist ein räumlicher Hilfsknoten, der mit der Verfolgung von Controllern "
+"verbunden ist. Er bietet auch mehrere praktische Durchreichungen für den "
+"Zustand von Schaltflächen und dergleichen auf den Controllern.\n"
+"Controller sind durch ihre ID verknüpft. Sie können Controller-Knoten "
+"erstellen, bevor die Controller verfügbar sind. Wenn Ihr Spiel immer zwei "
+"Controller verwendet (einen für jede Hand), können Sie die Controller mit "
+"der ID 1 und 2 vordefinieren; sie werden aktiv, sobald die Controller "
+"erkannt werden. Wenn Sie erwarten, dass zusätzliche Controller verwendet "
+"werden, sollten Sie auf die Signale reagieren und ARVRController-Knoten zu "
+"Ihrer Szene hinzufügen.\n"
+"Die Position des Controllerknotens wird automatisch durch den [ARVRServer] "
+"aktualisiert. Dies macht diesen Knoten ideal, um Kindknoten zur "
+"Visualisierung des Controllers hinzuzufügen."
#: doc/classes/ARVRController.xml
msgid ""
"If active, returns the name of the associated controller if provided by the "
"AR/VR SDK used."
msgstr ""
+"Wenn aktiv, wird der Name des zugehörigen Controllers zurückgegeben, sofern "
+"er vom verwendeten AR/VR-SDK bereitgestellt wird."
#: doc/classes/ARVRController.xml
msgid ""
"Returns the hand holding this controller, if known. See [enum "
"ARVRPositionalTracker.TrackerHand]."
msgstr ""
+"Gibt die Hand zurück, die diesen Controller hält, falls bekannt. Siehe [enum "
+"ARVRPositionalTracker.TrackerHand]."
#: doc/classes/ARVRController.xml
#, fuzzy
@@ -9802,6 +10541,8 @@ msgid ""
"Returns the value of the given axis for things like triggers, touchpads, "
"etc. that are embedded into the controller."
msgstr ""
+"Gibt den Wert der angegebenen Achse für Dinge wie Trigger, Touchpads usw. "
+"zurück, die in den Controller eingebettet sind."
#: doc/classes/ARVRController.xml
msgid ""
@@ -9812,12 +10553,22 @@ msgid ""
"the AR/VR controllers. This ID is purely offered as information so you can "
"link up the controller with its joystick entry."
msgstr ""
+"Gibt die ID des Joystick-Objekts zurück, das mit diesem verbunden ist. Jeder "
+"vom [ARVRServer] verfolgte Controller, der Tasten und Achsen hat, wird auch "
+"als Joystick in Godot registriert. Das bedeutet, dass alle normalen Joystick-"
+"Verfolgungen und Eingabe-Zuordnungen für Tasten und Achsen auf den AR/VR-"
+"Controllern funktionieren werden. Diese ID wird lediglich als Information "
+"angeboten, damit Sie den Controller mit seinem Joystick-Eintrag verknüpfen "
+"können."
#: doc/classes/ARVRController.xml
msgid ""
"If provided by the [ARVRInterface], this returns a mesh associated with the "
"controller. This can be used to visualize the controller."
msgstr ""
+"Falls von der [ARVRInterface] bereitgestellt, wird ein mit dem Controller "
+"verbundenes Netz zurückgegeben. Dieses kann zur Visualisierung des "
+"Controllers verwendet werden."
#: doc/classes/ARVRController.xml
msgid ""
@@ -9825,6 +10576,9 @@ msgid ""
"pressed. See [enum JoystickList], in particular the [code]JOY_VR_*[/code] "
"constants."
msgstr ""
+"Gibt [code]true[/code] zurück, wenn die Taste bei Index [code]button[/code] "
+"gedrückt ist. Siehe [enum JoystickList], insbesondere die [code]JOY_VR_*[/"
+"code] Konstanten."
#: doc/classes/ARVRController.xml
msgid ""
@@ -9838,6 +10592,16 @@ msgid ""
"When a controller is turned off, its slot is freed. This ensures controllers "
"will keep the same ID even when controllers with lower IDs are turned off."
msgstr ""
+"Die ID des Controllers.\n"
+"Eine Controller-ID von 0 ist ungebunden und führt immer zu einem inaktiven "
+"Knoten. Die Controller-ID 1 ist für den ersten Controller reserviert, der "
+"sich als linker Controller identifiziert, und die ID 2 ist für den ersten "
+"Controller reserviert, der sich als rechter Controller identifiziert.\n"
+"Für jeden weiteren Controller, den der [ARVRServer] erkennt, wird mit der "
+"Controller-ID 3 fortgefahren.\n"
+"Wenn ein Controller ausgeschaltet wird, wird sein Steckplatz freigegeben. "
+"Dadurch wird sichergestellt, dass die Controller dieselbe ID behalten, auch "
+"wenn Controller mit niedrigeren IDs ausgeschaltet werden."
#: doc/classes/ARVRController.xml
msgid ""
@@ -9847,14 +10611,21 @@ msgid ""
"This is a useful property to animate if you want the controller to vibrate "
"for a limited duration."
msgstr ""
+"Der Grad, in dem die Steuerung vibriert. Der Bereich reicht von [code]0.0[/"
+"code] bis [code]1.0[/code]. Wenn er geändert wird, wird [member "
+"ARVRPositionalTracker.rumble] entsprechend aktualisiert.\n"
+"Dies ist eine nützliche Eigenschaft zum Animieren, wenn der Controller für "
+"eine begrenzte Dauer vibrieren soll."
#: doc/classes/ARVRController.xml
msgid "Emitted when a button on this controller is pressed."
msgstr ""
+"Wird ausgesendet, wenn eine Taste auf diesem Steuergerät gedrückt wird."
#: doc/classes/ARVRController.xml
msgid "Emitted when a button on this controller is released."
msgstr ""
+"Wird ausgesendet, wenn eine Taste an diesem Controller losgelassen wird."
#: doc/classes/ARVRController.xml
msgid ""
@@ -9862,10 +10633,13 @@ msgid ""
"becomes available. Generally speaking this will be a static mesh after "
"becoming available."
msgstr ""
+"Wird ausgesendet, wenn sich das mit dem Controller verknüpfte Netz ändert "
+"oder wenn eines verfügbar wird. Im Allgemeinen wird dies ein statisches Mesh "
+"sein, nachdem es verfügbar geworden ist."
#: doc/classes/ARVRInterface.xml
msgid "Base class for an AR/VR interface implementation."
-msgstr ""
+msgstr "Basisklasse für die Implementierung einer AR/VR-Schnittstelle."
#: doc/classes/ARVRInterface.xml
msgid ""
@@ -9878,6 +10652,15 @@ msgid ""
"give us a working setup. You can query the available interfaces through "
"[ARVRServer]."
msgstr ""
+"Diese Klasse muss implementiert werden, um eine AR- oder VR-Plattform für "
+"Godot verfügbar zu machen. Diese sollten als C++-Module oder GDNative-Module "
+"implementiert werden (beachten Sie, dass für GDNative die Unterklasse "
+"ARVRScriptInterface verwendet werden sollte). Ein Teil der Schnittstelle ist "
+"für GDScript offengelegt, so dass Sie eine AR- oder VR-Plattform erkennen, "
+"aktivieren und konfigurieren können.\n"
+"Die Schnittstellen sollten so geschrieben sein, dass man durch einfaches "
+"Aktivieren ein funktionierendes Setup erhält. Sie können die verfügbaren "
+"Schnittstellen über [ARVRServer] abfragen."
#: doc/classes/ARVRInterface.xml
msgid ""
@@ -9885,22 +10668,31 @@ msgid ""
"background, this method returns the feed ID in the [CameraServer] for this "
"interface."
msgstr ""
+"Wenn es sich um eine AR-Schnittstelle handelt, die die Anzeige eines "
+"Kamerafeeds als Hintergrund erfordert, gibt diese Methode die Feed-ID im "
+"[CameraServer] für diese Schnittstelle zurück."
#: doc/classes/ARVRInterface.xml
msgid ""
"Returns a combination of [enum Capabilities] flags providing information "
"about the capabilities of this interface."
msgstr ""
+"Gibt eine Kombination von [enum Capabilities]-Flags zurück, die "
+"Informationen über die Fähigkeiten dieser Schnittstelle liefern."
#: doc/classes/ARVRInterface.xml
msgid "Returns the name of this interface (OpenVR, OpenHMD, ARKit, etc)."
msgstr ""
+"Gibt den Namen dieser Schnittstelle zurück (OpenVR, OpenHMD, ARKit, etc.)."
#: doc/classes/ARVRInterface.xml
msgid ""
"Returns the resolution at which we should render our intermediate results "
"before things like lens distortion are applied by the VR platform."
msgstr ""
+"Gibt die Auflösung zurück, mit der wir unsere Zwischenergebnisse rendern "
+"sollten, bevor Dinge wie Linsenverzerrungen von der VR-Plattform angewendet "
+"werden."
#: doc/classes/ARVRInterface.xml
msgid ""
@@ -9908,6 +10700,9 @@ msgid ""
"provide feedback to the user whether there are issues with positional "
"tracking."
msgstr ""
+"Gibt, falls unterstützt, den Status unserer Positionsbestimmung zurück. So "
+"können Sie dem Benutzer eine Rückmeldung geben, ob es Probleme mit der "
+"Positionsbestimmung gibt."
#: doc/classes/ARVRInterface.xml
msgid ""
@@ -9928,45 +10723,72 @@ msgid ""
"wish to do this if you want to track controllers from other platforms. "
"However, at this point in time only one interface can render to an HMD."
msgstr ""
+"Rufen Sie dies auf, um diese Schnittstelle zu initialisieren. Die erste "
+"Schnittstelle, die initialisiert wird, wird als primäre Schnittstelle "
+"identifiziert und wird für die Rendering-Ausgabe verwendet.\n"
+"Nach der Initialisierung der Schnittstelle, die Sie verwenden möchten, "
+"müssen Sie den AR/VR-Modus eines Ansichtsfensters aktivieren und das "
+"Rendering sollte beginnen.\n"
+"[b]Hinweis:[/b] Sie müssen den AR/VR-Modus im Haupt-Viewport für jedes Gerät "
+"aktivieren, das die Hauptausgabe von Godot verwendet, z. B. für mobile VR.\n"
+"Wenn Sie dies für eine Plattform tun, die ihre eigene Ausgabe verarbeitet "
+"(wie OpenVR), zeigt Godot nur ein Auge ohne Verzerrung auf dem Bildschirm "
+"an. Alternativ können Sie einen separaten Viewport-Knoten zu Ihrer Szene "
+"hinzufügen und AR/VR in diesem Viewport aktivieren. Es wird für die Ausgabe "
+"an das HMD verwendet, so dass Sie im Hauptfenster alles tun können, was Sie "
+"möchten, z. B. eine separate Kamera als Zuschauerkamera verwenden oder etwas "
+"völlig anderes rendern.\n"
+"Sie können zusätzliche Schnittstellen aktivieren, die derzeit nicht "
+"verwendet werden. Dies kann sinnvoll sein, wenn Sie Controller von anderen "
+"Plattformen verfolgen wollen. Zum jetzigen Zeitpunkt kann jedoch nur eine "
+"Schnittstelle auf ein HMD gerendert werden."
#: doc/classes/ARVRInterface.xml
msgid ""
"Returns [code]true[/code] if the current output of this interface is in "
"stereo."
msgstr ""
+"Gibt [code]true[/code] zurück, wenn die aktuelle Ausgabe dieser "
+"Schnittstelle in Stereo ist."
#: doc/classes/ARVRInterface.xml
msgid "Turns the interface off."
-msgstr ""
+msgstr "Schaltet die Schnittstelle aus."
#: doc/classes/ARVRInterface.xml
msgid "On an AR interface, [code]true[/code] if anchor detection is enabled."
msgstr ""
+"Auf einer AR-Schnittstelle: [code]true[/code], wenn die Ankererkennung "
+"aktiviert ist."
#: doc/classes/ARVRInterface.xml
msgid "[code]true[/code] if this interface been initialized."
-msgstr ""
+msgstr "[code]true[/code] wenn diese Schnittstelle initialisiert wurde."
#: doc/classes/ARVRInterface.xml
msgid "[code]true[/code] if this is the primary interface."
-msgstr ""
+msgstr "[code]true[/code], wenn dies die primäre Schnittstelle ist."
#: doc/classes/ARVRInterface.xml
msgid "No ARVR capabilities."
-msgstr ""
+msgstr "Keine ARVR-Fähigkeiten."
#: doc/classes/ARVRInterface.xml
msgid ""
"This interface can work with normal rendering output (non-HMD based AR)."
msgstr ""
+"Diese Schnittstelle kann mit normaler Rendering-Ausgabe arbeiten (nicht-HMD-"
+"basierte AR)."
#: doc/classes/ARVRInterface.xml
msgid "This interface supports stereoscopic rendering."
-msgstr ""
+msgstr "Diese Schnittstelle unterstützt das stereoskopische Rendering."
#: doc/classes/ARVRInterface.xml
msgid "This interface supports AR (video background and real world tracking)."
msgstr ""
+"Diese Schnittstelle unterstützt AR (Video-Hintergrund und Real-World-"
+"Tracking)."
#: doc/classes/ARVRInterface.xml
msgid ""
@@ -9976,6 +10798,12 @@ msgid ""
"[method get_render_targetsize]). Using a separate viewport node frees up the "
"main viewport for other purposes."
msgstr ""
+"Diese Schnittstelle gibt die Daten an ein externes Gerät aus. Wird das "
+"Hauptansichtsfenster verwendet, ist die Bildschirmausgabe ein unveränderter "
+"Puffer entweder des linken oder des rechten Auges (gestreckt, wenn die Größe "
+"des Ansichtsfensters nicht auf das gleiche Seitenverhältnis von [method "
+"get_render_targetsize] geändert wird). Die Verwendung eines separaten "
+"Ansichtsfenster-Knotens macht das Hauptansichtfenster für andere Zwecke frei."
#: doc/classes/ARVRInterface.xml
msgid ""
@@ -9983,50 +10811,67 @@ msgid ""
"information for our camera node or when stereo scopic rendering is not "
"supported."
msgstr ""
+"Mono-Ausgabe, diese wird meist intern verwendet, wenn "
+"Positionierungsinformationen für unseren Kameraknoten abgerufen werden oder "
+"wenn das stereoskopische Rendering nicht unterstützt wird."
#: doc/classes/ARVRInterface.xml
msgid ""
"Left eye output, this is mostly used internally when rendering the image for "
"the left eye and obtaining positioning and projection information."
msgstr ""
+"Die Ausgabe für das linke Auge wird hauptsächlich intern verwendet, um das "
+"Bild für das linke Auge zu rendern und Informationen zur Positionierung und "
+"Projektion zu erhalten."
#: doc/classes/ARVRInterface.xml
msgid ""
"Right eye output, this is mostly used internally when rendering the image "
"for the right eye and obtaining positioning and projection information."
msgstr ""
+"Die Ausgabe für das rechte Auge wird hauptsächlich intern verwendet, um das "
+"Bild für das rechte Auge zu rendern und Informationen zur Positionierung und "
+"Projektion zu erhalten."
#: doc/classes/ARVRInterface.xml
msgid "Tracking is behaving as expected."
-msgstr ""
+msgstr "Das Tracking verhält sich wie erwartet."
#: doc/classes/ARVRInterface.xml
msgid ""
"Tracking is hindered by excessive motion (the player is moving faster than "
"tracking can keep up)."
msgstr ""
+"Das Tracking wird durch übermäßige Bewegung behindert (der Spieler bewegt "
+"sich schneller, als die Verfolgung mithalten kann)."
#: doc/classes/ARVRInterface.xml
msgid ""
"Tracking is hindered by insufficient features, it's too dark (for camera-"
"based tracking), player is blocked, etc."
msgstr ""
+"Das Tracking wird durch unzureichende Fähigkeiten behindert, es ist zu "
+"dunkel (für kamerabasiertes Tracking), der Spieler ist blockiert, usw."
#: doc/classes/ARVRInterface.xml
msgid ""
"We don't know the status of the tracking or this interface does not provide "
"feedback."
msgstr ""
+"Wir kennen den Status der Nachverfolgung nicht, oder diese Schnittstelle "
+"gibt keine Rückmeldung."
#: doc/classes/ARVRInterface.xml
msgid ""
"Tracking is not functional (camera not plugged in or obscured, lighthouses "
"turned off, etc.)."
msgstr ""
+"Das Tracking funktioniert nicht (Kamera nicht eingesteckt oder verdeckt, "
+"Lighthouses ausgeschaltet usw.)."
#: modules/gdnative/doc_classes/ARVRInterfaceGDNative.xml
msgid "GDNative wrapper for an ARVR interface."
-msgstr ""
+msgstr "GDNative-Wrapper für eine ARVR-Schnittstelle."
#: modules/gdnative/doc_classes/ARVRInterfaceGDNative.xml
msgid ""
@@ -10034,10 +10879,14 @@ msgid ""
"To use a GDNative ARVR interface, simply instantiate this object and set "
"your GDNative library containing the ARVR interface implementation."
msgstr ""
+"Dies ist eine Wrapper-Klasse für GDNative-Implementierungen der ARVR-"
+"Schnittstelle. Um eine GDNative-ARVR-Schnittstelle zu verwenden, "
+"instanziieren Sie einfach dieses Objekt und definieren Sie Ihre GDNative-"
+"Bibliothek, die die ARVR-Schnittstellenimplementierung enthält."
#: doc/classes/ARVROrigin.xml
msgid "The origin point in AR/VR."
-msgstr ""
+msgstr "Der Ursprungspunkt in AR/VR."
#: doc/classes/ARVROrigin.xml
msgid ""
@@ -10054,6 +10903,21 @@ msgid ""
"be a child node of this car. Or, if you're implementing a teleport system to "
"move your character, you should change the position of this node."
msgstr ""
+"Dies ist ein spezieller Knoten innerhalb des AR/VR-Systems, der die "
+"physische Position des Zentrums unseres Tracking-Raums der virtuellen "
+"Position innerhalb unserer Spielwelt zuordnet.\n"
+"Es sollte nur einen dieser Knoten in Ihrer Szene geben und Sie müssen einen "
+"haben. Alle ARVRCamera-, ARVRController- und ARVRAnchor-Knoten sollten "
+"direkte Kinder dieses Knotens sein, damit das räumliche Tracking korrekt "
+"funktioniert.\n"
+"Es ist die Position dieses Knotens, die du aktualisierst, wenn dein "
+"Charakter sich durch deine Spielwelt bewegen muss, während wir uns in der "
+"realen Welt nicht bewegen. Die Bewegung in der realen Welt erfolgt immer in "
+"Bezug auf diesen Ursprungspunkt.\n"
+"Wenn deine Figur zum Beispiel ein Auto fährt, sollte der ARVROrigin-Knoten "
+"ein untergeordneter Knoten dieses Autos sein. Oder wenn du ein Teleport-"
+"System implementierst, um deinen Charakter zu bewegen, solltest du die "
+"Position dieses Knotens ändern."
#: doc/classes/ARVROrigin.xml
msgid ""
@@ -10061,10 +10925,14 @@ msgid ""
"assume a scale of 1 game world unit = 1 real world meter.\n"
"[b]Note:[/b] This method is a passthrough to the [ARVRServer] itself."
msgstr ""
+"Ermöglicht es Ihnen, den Maßstab an die Einheiten Ihres Spiels anzupassen. "
+"Die meisten AR/VR-Plattformen gehen von einem Maßstab von 1 Einheit der "
+"Spielwelt = 1 Meter der realen Welt aus.\n"
+"[b]Hinweis:[/b] Diese Methode ist ein Passthrough zum [ARVRServer] selbst."
#: doc/classes/ARVRPositionalTracker.xml
msgid "A tracked object."
-msgstr ""
+msgstr "Ein getracktes Objekt."
#: doc/classes/ARVRPositionalTracker.xml
msgid ""
@@ -10079,35 +10947,53 @@ msgid ""
"hood objects that make this all work. These are mostly exposed so that "
"GDNative-based interfaces can interact with them."
msgstr ""
+"Eine Instanz dieses Objekts stellt ein Gerät dar, das verfolgt wird, z. B. "
+"einen Controller oder Ankerpunkt. HMDs werden hier nicht dargestellt, da sie "
+"intern gehandhabt werden.\n"
+"Wenn Controller eingeschaltet werden und die AR/VR-Schnittstelle sie "
+"erkennt, werden Instanzen dieses Objekts automatisch zur Liste der aktiven "
+"Tracking-Objekte hinzugefügt, die über den [ARVRServer] zugänglich sind.\n"
+"Der [ARVRController] und der [ARVRAnchor] verbrauchen beide Objekte dieses "
+"Typs und sollten in Ihrem Projekt verwendet werden. Die Positions-Tracker "
+"sind nur Objekte, die unter der Haube liegen und dafür sorgen, dass das "
+"alles funktioniert. Sie sind meist offengelegt, damit GDNative-basierte "
+"Schnittstellen mit ihnen interagieren können."
#: doc/classes/ARVRPositionalTracker.xml
msgid ""
"Returns the hand holding this tracker, if known. See [enum TrackerHand] "
"constants."
msgstr ""
+"Gibt die Hand zurück, die diesen Tracker hält, falls bekannt. Siehe [enum "
+"TrackerHand] Konstanten."
#: doc/classes/ARVRPositionalTracker.xml
msgid ""
"If this is a controller that is being tracked, the controller will also be "
"represented by a joystick entry with this ID."
msgstr ""
+"Wenn es sich um einen Controller handelt, der verfolgt wird, wird der "
+"Controller auch durch einen Joystick-Eintrag mit dieser ID dargestellt."
#: doc/classes/ARVRPositionalTracker.xml
msgid ""
"Returns the mesh related to a controller or anchor point if one is available."
msgstr ""
+"Gibt das Netz zurück, das mit einem Controller oder Ankerpunkt verbunden "
+"ist, falls ein solcher vorhanden ist."
#: doc/classes/ARVRPositionalTracker.xml
msgid "Returns the controller or anchor point's name if available."
msgstr ""
+"Gibt den Namen des Controllers oder des Ankerpunkts zurück, falls vorhanden."
#: doc/classes/ARVRPositionalTracker.xml
msgid "Returns the controller's orientation matrix."
-msgstr ""
+msgstr "Gibt die Orientierungsmatrix des Controllers zurück."
#: doc/classes/ARVRPositionalTracker.xml
msgid "Returns the world-space controller position."
-msgstr ""
+msgstr "Gibt die Position des Controllers im Raum zurück."
#: doc/classes/ARVRPositionalTracker.xml
msgid ""
@@ -10115,60 +11001,75 @@ msgid ""
"tracker type and matches the ID you need to specify for nodes such as the "
"[ARVRController] and [ARVRAnchor] nodes."
msgstr ""
+"Gibt die interne Tracker-ID zurück. Diese identifiziert den Tracker "
+"eindeutig pro Tracker-Typ und entspricht der ID, die Sie für Knoten wie die "
+"[ARVRController]- und [ARVRAnchor]-Knoten angeben müssen."
#: doc/classes/ARVRPositionalTracker.xml
msgid "Returns [code]true[/code] if this device tracks orientation."
msgstr ""
+"Gibt [code]true[/code] zurück, wenn dieses Gerät die Ausrichtung verfolgt."
#: doc/classes/ARVRPositionalTracker.xml
msgid "Returns [code]true[/code] if this device tracks position."
msgstr ""
+"Gibt [code]true[/code] zurück, wenn dieses Gerät die Position verfolgt."
#: doc/classes/ARVRPositionalTracker.xml
msgid "Returns the transform combining this device's orientation and position."
msgstr ""
+"Gibt die Transformation zurück, die die Ausrichtung und Position dieses "
+"Geräts kombiniert."
#: doc/classes/ARVRPositionalTracker.xml
msgid "Returns the tracker's type."
-msgstr ""
+msgstr "Gibt den Typ des Tracker zurück."
#: doc/classes/ARVRPositionalTracker.xml
msgid ""
"The degree to which the tracker rumbles. Ranges from [code]0.0[/code] to "
"[code]1.0[/code] with precision [code].01[/code]."
msgstr ""
+"Der Grad, wie stark der Tracker wackelt. Der Bereich reicht von [code]0.0[/"
+"code] bis [code]1.0[/code] mit einer Genauigkeit von [code].01[/code]."
#: doc/classes/ARVRPositionalTracker.xml
msgid "The hand this tracker is held in is unknown or not applicable."
msgstr ""
+"Die Hand, in der dieser Tracker gehalten wird, ist unbekannt oder nicht "
+"anwendbar."
#: doc/classes/ARVRPositionalTracker.xml
msgid "This tracker is the left hand controller."
-msgstr ""
+msgstr "Dieser Tracker ist der Controller für die linke Hand."
#: doc/classes/ARVRPositionalTracker.xml
msgid "This tracker is the right hand controller."
-msgstr ""
+msgstr "Dieser Tracker ist der Controller für die rechte Hand."
#: doc/classes/ARVRServer.xml
msgid "Server for AR and VR features."
-msgstr ""
+msgstr "Server für AR- und VR-Funktionen."
#: doc/classes/ARVRServer.xml
msgid ""
"The AR/VR server is the heart of our Advanced and Virtual Reality solution "
"and handles all the processing."
msgstr ""
+"Der AR/VR-Server ist das Herzstück unserer Advanced and Virtual Reality-"
+"Lösung und übernimmt die gesamte Verarbeitung."
#: doc/classes/ARVRServer.xml
msgid "Registers an [ARVRInterface] object."
-msgstr ""
+msgstr "Registriert ein [ARVRInterface]-Objekt."
#: doc/classes/ARVRServer.xml
msgid ""
"Registers a new [ARVRPositionalTracker] that tracks a spatial location in "
"real space."
msgstr ""
+"Registriert einen neuen [ARVRPositionalTracker], der eine räumliche Position "
+"im realen Raum verfolgt."
#: doc/classes/ARVRServer.xml
msgid ""
@@ -10192,11 +11093,34 @@ msgid ""
"button on a controller for a short period of time, or when implementing a "
"teleport mechanism."
msgstr ""
+"Das ist eine wichtige Funktion, die man richtig verstehen muss. AR- und VR-"
+"Plattformen gehen alle etwas anders mit der Positionierung um.\n"
+"Bei Plattformen, die kein räumliches Tracking bieten, ist unser "
+"Ursprungspunkt (0,0,0) die Position unseres HMD, aber Sie haben wenig "
+"Kontrolle über die Richtung, in die der Spieler in der realen Welt blickt.\n"
+"Bei Plattformen, die räumliches Tracking bieten, hängt unser Ausgangspunkt "
+"sehr stark vom System ab. Bei OpenVR ist unser Ausgangspunkt in der Regel "
+"das Zentrum des Tracking-Raums, also auf dem Boden. Bei anderen Plattformen "
+"ist es oft die Position der Tracking-Kamera.\n"
+"Mit dieser Methode können Sie Ihren Tracker auf die Position des HMD "
+"zentrieren. Dabei wird die aktuelle Position des HMD verwendet, um alle "
+"Tracking-Daten anzupassen; im Wesentlichen wird die reale Welt an die "
+"aktuelle Position des Spielers in der Spielwelt angepasst.\n"
+"Damit diese Methode brauchbare Ergebnisse liefert, müssen Tracking-"
+"Informationen verfügbar sein. Dies dauert oft ein paar Frames nach dem Start "
+"des Spiels.\n"
+"Sie sollten diese Methode aufrufen, nachdem ein paar Sekunden vergangen "
+"sind. Zum Beispiel, wenn der Benutzer eine Neuausrichtung der Anzeige "
+"anfordert, indem er eine bestimmte Taste auf einem Controller für eine kurze "
+"Zeitspanne gedrückt hält, oder wenn er einen Teleportmechanismus "
+"implementiert."
#: doc/classes/ARVRServer.xml
msgid ""
"Clears our current primary interface if it is set to the provided interface."
msgstr ""
+"Löscht unsere aktuelle primäre Schnittstelle, wenn sie auf die angegebene "
+"Schnittstelle eingestellt ist."
#: doc/classes/ARVRServer.xml
msgid ""
@@ -10204,15 +11128,20 @@ msgid ""
"capabilities of an AR/VR platform, you can find the interface for that "
"platform by name and initialize it."
msgstr ""
+"Findet eine Schnittstelle anhand ihres Namens. Wenn Ihr Projekt z. B. die "
+"Funktionen einer AR/VR-Plattform nutzt, können Sie die Schnittstelle für "
+"diese Plattform anhand ihres Namens finden und sie initialisieren."
#: doc/classes/ARVRServer.xml
msgid "Returns the primary interface's transformation."
-msgstr ""
+msgstr "Gibt die Transformation der primären Schnittstelle zurück."
#: doc/classes/ARVRServer.xml
msgid ""
"Returns the interface registered at a given index in our list of interfaces."
msgstr ""
+"Gibt die Schnittstelle zurück, die unter einem bestimmten Index in unserer "
+"Liste der Schnittstellen registriert ist."
#: doc/classes/ARVRServer.xml
msgid ""
@@ -10222,11 +11151,18 @@ msgid ""
"try to initialize each interface and use the first one that returns "
"[code]true[/code]."
msgstr ""
+"Gibt die Anzahl der derzeit beim AR/VR-Server registrierten Schnittstellen "
+"zurück. Wenn Ihr Projekt mehrere AR/VR-Plattformen unterstützt, können Sie "
+"die verfügbaren Schnittstellen durchsehen und dem Benutzer entweder eine "
+"Auswahl präsentieren oder einfach versuchen, jede Schnittstelle zu "
+"initialisieren und die erste zu verwenden, die [code]true[/code] zurückgibt."
#: doc/classes/ARVRServer.xml
msgid ""
"Returns a list of available interfaces the ID and name of each interface."
msgstr ""
+"Liefert eine Liste der verfügbaren Schnittstellen, die ID und den Namen "
+"jeder Schnittstelle."
#: doc/classes/ARVRServer.xml
msgid ""
@@ -10234,6 +11170,9 @@ msgid ""
"the AR/VR eyes to [VisualServer]. The value comes from an internal call to "
"[method OS.get_ticks_usec]."
msgstr ""
+"Gibt den absoluten Zeitstempel (in μs) der letzten [ARVRServer]-Übertragung "
+"der AR/VR-Augen an [VisualServer] zurück. Der Wert stammt aus einem internen "
+"Aufruf der [Methode OS.get_ticks_usec]."
#: doc/classes/ARVRServer.xml
msgid ""
@@ -10241,6 +11180,9 @@ msgid ""
"difference between [method get_last_commit_usec] and [method "
"get_last_process_usec] when committing."
msgstr ""
+"Gibt die Dauer (in μs) des letzten Frames zurück. Dies wird als Differenz "
+"zwischen [method get_last_commit_usec] und [method get_last_process_usec] "
+"beim Commit berechnet."
#: doc/classes/ARVRServer.xml
msgid ""
@@ -10248,46 +11190,55 @@ msgid ""
"callback. The value comes from an internal call to [method OS."
"get_ticks_usec]."
msgstr ""
+"Gibt den absoluten Zeitstempel (in μs) des letzten [ARVRServer]-Prozess-"
+"Callbacks zurück. Der Wert stammt aus einem internen Aufruf der [Methode OS."
+"get_ticks_usec]."
#: doc/classes/ARVRServer.xml
msgid ""
"Returns the reference frame transform. Mostly used internally and exposed "
"for GDNative build interfaces."
msgstr ""
+"Gibt die Transformation des Referenzrahmens zurück. Wird meist intern "
+"verwendet und für GDNative-Build-Schnittstellen bereitgestellt."
#: doc/classes/ARVRServer.xml
msgid "Returns the positional tracker at the given ID."
-msgstr ""
+msgstr "Gibt den Positionstracker an der angegebenen ID zurück."
#: doc/classes/ARVRServer.xml
msgid "Returns the number of trackers currently registered."
-msgstr ""
+msgstr "Gibt die Anzahl der derzeit registrierten Tracker zurück."
#: doc/classes/ARVRServer.xml
msgid "Removes this interface."
-msgstr ""
+msgstr "Entfernt diese Schnittstelle."
#: doc/classes/ARVRServer.xml
msgid "Removes this positional tracker."
-msgstr ""
+msgstr "Entfernt diesen Positionstracker."
#: doc/classes/ARVRServer.xml
msgid "The primary [ARVRInterface] currently bound to the [ARVRServer]."
msgstr ""
+"Das primäre [ARVRInterface], das derzeit an den [ARVRServer] gebunden ist."
#: doc/classes/ARVRServer.xml
msgid ""
"Allows you to adjust the scale to your game's units. Most AR/VR platforms "
"assume a scale of 1 game world unit = 1 real world meter."
msgstr ""
+"Ermöglicht es Ihnen, den Maßstab an die Einheiten Ihres Spiels anzupassen. "
+"Die meisten AR/VR-Plattformen gehen von einem Maßstab von 1 Einheit der "
+"Spielwelt = 1 Meter der realen Welt aus."
#: doc/classes/ARVRServer.xml
msgid "Emitted when a new interface has been added."
-msgstr ""
+msgstr "Wird ausgesendet, wenn eine neue Schnittstelle hinzugefügt wurde."
#: doc/classes/ARVRServer.xml
msgid "Emitted when an interface is removed."
-msgstr ""
+msgstr "Wird ausgesendet, wenn eine Schnittstelle entfernt wird."
#: doc/classes/ARVRServer.xml
msgid ""
@@ -10296,6 +11247,11 @@ msgid ""
"important to react to this signal to add the appropriate [ARVRController] or "
"[ARVRAnchor] nodes related to this new tracker."
msgstr ""
+"Wird ausgesendet, wenn ein neuer Tracker hinzugefügt wurde. Wenn Sie keine "
+"feste Anzahl von Controllern verwenden oder wenn Sie [ARVRAnchor]s für eine "
+"AR-Lösung verwenden, ist es wichtig, auf dieses Signal zu reagieren, um die "
+"entsprechenden [ARVRController]- oder [ARVRAnchor]-Knoten für diesen neuen "
+"Tracker hinzuzufügen."
#: doc/classes/ARVRServer.xml
msgid ""
@@ -10305,30 +11261,36 @@ msgid ""
"available (i.e. a new controller is switched on that takes the place of the "
"previous one)."
msgstr ""
+"Wird ausgesendet, wenn ein Tracker entfernt wird. Sie sollten alle "
+"[ARVRController]- oder [ARVRAnchor]-Punkte entfernen, falls zutreffend. Dies "
+"ist nicht zwingend erforderlich, die Knoten werden einfach inaktiv und "
+"werden wieder aktiv, wenn ein neuer Tracker verfügbar wird (d. h. ein neuer "
+"Controller wird eingeschaltet, der den vorherigen ersetzt)."
#: doc/classes/ARVRServer.xml
msgid "The tracker tracks the location of a controller."
-msgstr ""
+msgstr "Der Tracker tracktden Standort eines Controllers."
#: doc/classes/ARVRServer.xml
msgid "The tracker tracks the location of a base station."
-msgstr ""
+msgstr "Der Tracker trackt den Standort einer Basisstation."
#: doc/classes/ARVRServer.xml
msgid "The tracker tracks the location and size of an AR anchor."
-msgstr ""
+msgstr "Der Tracker trackt die Position und Größe eines AR-Ankers."
#: doc/classes/ARVRServer.xml
msgid "Used internally to filter trackers of any known type."
-msgstr ""
+msgstr "Wird intern verwendet, um Tracker jedes bekannten Typs zu filtern."
#: doc/classes/ARVRServer.xml
msgid "Used internally if we haven't set the tracker type yet."
msgstr ""
+"Wird intern verwendet, wenn wir den Tracker-Typ noch nicht festgelegt haben."
#: doc/classes/ARVRServer.xml
msgid "Used internally to select all trackers."
-msgstr ""
+msgstr "Wird intern verwendet, um alle Tracker auszuwählen."
#: doc/classes/ARVRServer.xml
msgid ""
@@ -10336,22 +11298,32 @@ msgid ""
"user is looking to in the real world. The user will look dead ahead in the "
"virtual world."
msgstr ""
+"Vollständige Rückstellung der Ausrichtung des HMD. Es spielt keine Rolle, in "
+"welche Richtung der Benutzer in der realen Welt schaut. Der Benutzer blickt "
+"in der virtuellen Welt genau nach vorne."
#: doc/classes/ARVRServer.xml
msgid ""
"Resets the orientation but keeps the tilt of the device. So if we're looking "
"down, we keep looking down but heading will be reset."
msgstr ""
+"Setzt die Ausrichtung zurück, behält aber die Neigung des Geräts bei. Wenn "
+"wir also nach unten schauen, schauen wir weiterhin nach unten, aber die "
+"Ausrichtung wird zurückgesetzt."
#: doc/classes/ARVRServer.xml
msgid ""
"Does not reset the orientation of the HMD, only the position of the player "
"gets centered."
msgstr ""
+"Die Ausrichtung des HMD wird nicht zurückgesetzt, nur die Position des "
+"Spielers wird zentriert."
#: doc/classes/AspectRatioContainer.xml
msgid "Container that preserves its child controls' aspect ratio."
msgstr ""
+"Container, der das Seitenverhältnis seiner untergeordneten Steuerelemente "
+"beibehält."
#: doc/classes/AspectRatioContainer.xml
msgid ""
@@ -10360,6 +11332,11 @@ msgid ""
"the container size is dynamic and the contents' size needs to adjust "
"accordingly without losing proportions."
msgstr ""
+"Ordnet untergeordnete Steuerelemente so an, dass ihr Seitenverhältnis "
+"automatisch erhalten bleibt, wenn die Größe des Containers geändert wird. "
+"Löst das Problem, dass die Größe des Containers dynamisch ist und die Größe "
+"des Inhalts entsprechend angepasst werden muss, ohne dass die Proportionen "
+"verloren gehen."
#: doc/classes/AspectRatioContainer.xml doc/classes/BoxContainer.xml
#: doc/classes/CenterContainer.xml doc/classes/Container.xml
@@ -10375,16 +11352,21 @@ msgstr "Tabulierter Container."
#: doc/classes/AspectRatioContainer.xml
msgid "Specifies the horizontal relative position of child controls."
msgstr ""
+"Gibt die horizontale relative Position der untergeordneten Steuerelemente an."
#: doc/classes/AspectRatioContainer.xml
msgid "Specifies the vertical relative position of child controls."
msgstr ""
+"Gibt die vertikale relative Position der untergeordneten Steuerelemente an."
#: doc/classes/AspectRatioContainer.xml
msgid ""
"The aspect ratio to enforce on child controls. This is the width divided by "
"the height. The ratio depends on the [member stretch_mode]."
msgstr ""
+"Das Seitenverhältnis, das für untergeordnete Steuerelemente erzwungen werden "
+"soll. Dies ist die Breite geteilt durch die Höhe. Das Verhältnis hängt von "
+"dem [member stretch_mode] ab."
#: doc/classes/AspectRatioContainer.xml
#, fuzzy
@@ -10396,18 +11378,25 @@ msgid ""
"The height of child controls is automatically adjusted based on the width of "
"the container."
msgstr ""
+"Die Höhe der untergeordneten Steuerelemente wird automatisch an die Breite "
+"des Containers angepasst."
#: doc/classes/AspectRatioContainer.xml
msgid ""
"The width of child controls is automatically adjusted based on the height of "
"the container."
msgstr ""
+"Die Breite der untergeordneten Steuerelemente wird automatisch an die Höhe "
+"des Containers angepasst."
#: doc/classes/AspectRatioContainer.xml
msgid ""
"The bounding rectangle of child controls is automatically adjusted to fit "
"inside the container while keeping the aspect ratio."
msgstr ""
+"Das Begrenzungsrechteck der untergeordneten Steuerelemente wird automatisch "
+"so angepasst, dass es in den Container passt, wobei das Seitenverhältnis "
+"beibehalten wird."
#: doc/classes/AspectRatioContainer.xml
msgid ""
@@ -10418,25 +11407,38 @@ msgid ""
"and [member Control.rect_clip_content] is enabled, this allows to show only "
"the container's area restricted by its own bounding rectangle."
msgstr ""
+"Die Breite und Höhe der untergeordneten Steuerelemente wird automatisch so "
+"angepasst, dass ihr Begrenzungsrechteck den gesamten Bereich des Containers "
+"abdeckt und das Seitenverhältnis beibehalten wird.\n"
+"Wenn das Begrenzungsrechteck der untergeordneten Steuerelemente die Größe "
+"des Containers überschreitet und [member Control.rect_clip_content] "
+"aktiviert ist, ermöglicht dies die Anzeige nur des Bereichs des Containers, "
+"der durch sein eigenes Begrenzungsrechteck begrenzt ist."
#: doc/classes/AspectRatioContainer.xml
msgid ""
"Aligns child controls with the beginning (left or top) of the container."
msgstr ""
+"Richtet untergeordnete Steuerelemente am Anfang (links oder oben) des "
+"Containers aus."
#: doc/classes/AspectRatioContainer.xml
msgid "Aligns child controls with the center of the container."
-msgstr ""
+msgstr "Richtet untergeordnete Steuerelemente an der Mitte des Containers aus."
#: doc/classes/AspectRatioContainer.xml
msgid "Aligns child controls with the end (right or bottom) of the container."
msgstr ""
+"Richtet untergeordnete Steuerelemente am Ende (rechts oder unten) des "
+"Containers aus."
#: doc/classes/AStar.xml
msgid ""
"An implementation of A* to find the shortest paths among connected points in "
"space."
msgstr ""
+"Eine Implementierung von A*, um die kürzesten Wege zwischen verbundenen "
+"Punkten im Raum zu finden."
#: doc/classes/AStar.xml
msgid ""
@@ -10481,12 +11483,59 @@ msgid ""
"[code]1.0[/code], then this equals the sum of Euclidean distances of all "
"segments in the path."
msgstr ""
+"A* ( A Star) ist ein Computeralgorithmus, der häufig bei der Pfadfindung und "
+"der Durchquerung von Graphen eingesetzt wird. Dabei werden kurze Pfade "
+"zwischen Vertices (Punkten) über eine bestimmte Menge von Kanten (Segmenten) "
+"gezeichnet. Aufgrund seiner Leistungsfähigkeit und Genauigkeit ist er weit "
+"verbreitet. Die A*-Implementierung von Godot verwendet standardmäßig Punkte "
+"im dreidimensionalen Raum und euklidische Abstände.\n"
+"Sie müssen Punkte manuell mit [method add_point] hinzufügen und Segmente "
+"manuell mit [method connect_points] erstellen. Anschließend können Sie mit "
+"der Funktion [method are_points_connected] prüfen, ob es einen Pfad zwischen "
+"zwei Punkten gibt, mit [method get_id_path] einen Pfad mit Indizes oder mit "
+"[method get_point_path] einen Pfad mit tatsächlichen Koordinaten erhalten.\n"
+"Es ist auch möglich, nicht-euklidische Distanzen zu verwenden. Erstellen Sie "
+"dazu eine Klasse, die [code]AStar[/code] erweitert und überschreiben Sie die "
+"Methoden [method _compute_cost] und [method _estimate_cost]. Beide nehmen "
+"zwei Indizes und geben eine Länge zurück, wie im folgenden Beispiel gezeigt "
+"wird.\n"
+"[codeblock]\n"
+"class MyAStar:\n"
+" extends AStar\n"
+"\n"
+" func _compute_cost(u, v):\n"
+" return abs(u - v)\n"
+"\n"
+" func _estimate_cost(u, v):\n"
+" return min(0, abs(u - v) - 1)\n"
+"[/codeblock]\n"
+"Die [method_estimate_cost] sollte eine Untergrenze des Abstands zurückgeben, "
+"d.h. [code]_estimate_cost(u, v) <= _compute_cost(u, v)[/code]. Dies dient "
+"als Hinweis für den Algorithmus, da die benutzerdefinierten "
+"[code]_compute_cost[/code] möglicherweise sehr rechenintensiv sind. Wenn "
+"dies nicht der Fall ist, sollte [method _estimate_cost] denselben Wert wie "
+"[method _compute_cost] zurückgeben, um dem Algorithmus die genauesten "
+"Informationen zu liefern.\n"
+"Wenn die Standardmethoden [method _estimate_cost] und [method _compute_cost] "
+"verwendet werden oder wenn die mitgelieferte Methode [method _estimate_cost] "
+"eine untere Grenze der Kosten zurückgibt, dann sind die von A* "
+"zurückgegebenen Pfade die Pfade mit den niedrigsten Kosten. Dabei sind die "
+"Kosten eines Pfades gleich der Summe der [method _compute_cost]-Ergebnisse "
+"aller Segmente des Pfades multipliziert mit den [code]weight_scale[/code]s "
+"der Endpunkte der jeweiligen Segmente. Wenn die Standardmethoden verwendet "
+"werden und die [code]weight_scale[/code]s aller Punkte auf [code]1.0[/code] "
+"gesetzt werden, dann entspricht dies der Summe der euklidischen Abstände "
+"aller Segmente im Pfad."
#: doc/classes/AStar.xml
msgid ""
"Called when computing the cost between two connected points.\n"
"Note that this function is hidden in the default [code]AStar[/code] class."
msgstr ""
+"Wird aufgerufen, wenn die Kosten zwischen zwei verbundenen Punkten berechnet "
+"werden.\n"
+"Beachten Sie, dass diese Funktion in der Standardklasse [code]AStar[/code] "
+"verborgen ist."
#: doc/classes/AStar.xml
msgid ""
@@ -10494,6 +11543,10 @@ msgid ""
"point.\n"
"Note that this function is hidden in the default [code]AStar[/code] class."
msgstr ""
+"Wird aufgerufen, wenn die Kosten zwischen einem Punkt und dem Endpunkt des "
+"Pfades geschätzt werden.\n"
+"Beachten Sie, dass diese Funktion in der Standardklasse [code]AStar[/code] "
+"verborgen ist."
#: doc/classes/AStar.xml
msgid ""
@@ -10513,6 +11566,21 @@ msgid ""
"If there already exists a point for the given [code]id[/code], its position "
"and weight scale are updated to the given values."
msgstr ""
+"Fügt einen neuen Punkt an der angegebenen Position mit dem angegebenen "
+"Bezeichner hinzu. Die [code]id[/code] muss 0 oder größer sein, und die "
+"[code]weight_scale[/code] muss 0,0 oder größer sein.\n"
+"Der [code]weight_scale[/code] wird mit dem Ergebnis von [method "
+"_compute_cost] multipliziert, um die Gesamtkosten der Reise über ein Segment "
+"von einem benachbarten Punkt zu diesem Punkt zu ermitteln. Unter sonst "
+"gleichen Bedingungen bevorzugt der Algorithmus also Punkte mit niedrigeren "
+"[code]weight_scale[/code]s, um einen Pfad zu bilden.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(1, 0, 0), 4) # Fügt den Punkt (1, 0, 0) mit "
+"weight_scale 4 und id 1 hinzu\n"
+"[/codeblock]\n"
+"Wenn es bereits einen Punkt für die angegebene [code]id[/code] gibt, werden "
+"seine Position und Gewichtung auf die angegebenen Werte aktualisiert"
#: doc/classes/AStar.xml
msgid ""
@@ -10520,10 +11588,14 @@ msgid ""
"[code]bidirectional[/code] is [code]false[/code], returns whether movement "
"from [code]id[/code] to [code]to_id[/code] is possible through this segment."
msgstr ""
+"Gibt zurück, ob die beiden angegebenen Punkte direkt durch ein Segment "
+"verbunden sind. Wenn [code]bidirectional[/code] [code]false[/code] ist, wird "
+"zurückgegeben, ob eine Bewegung von [code]id[/code] nach [code]to_id[/code] "
+"durch dieses Segment möglich ist."
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid "Clears all the points and segments."
-msgstr ""
+msgstr "Löscht alle Punkte und Segmente."
#: doc/classes/AStar.xml
msgid ""
@@ -10537,6 +11609,16 @@ msgid ""
"astar.connect_points(1, 2, false)\n"
"[/codeblock]"
msgstr ""
+"Erzeugt ein Segment zwischen den angegebenen Punkten. Wenn "
+"[code]bidirectional[/code] [code]false[/code] ist, ist nur die Bewegung von "
+"[code]id[/code] nach [code]to_id[/code] erlaubt, nicht die umgekehrte "
+"Richtung.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(1, 1, 0))\n"
+"astar.add_point(2, Vector3(0, 5, 0))\n"
+"astar.connect_points(1, 2, false)\n"
+"[/codeblock]"
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid ""
@@ -10544,10 +11626,15 @@ msgid ""
"is [code]false[/code], only movement from [code]id[/code] to [code]to_id[/"
"code] is prevented, and a unidirectional segment possibly remains."
msgstr ""
+"Löscht das Segment zwischen den angegebenen Punkten. Wenn "
+"[code]bidirectional[/code] [code]false[/code] ist, wird nur die Bewegung von "
+"[code]id[/code] nach [code]to_id[/code] verhindert, und es bleibt "
+"möglicherweise ein unidirektionales Segment übrig."
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid "Returns the next available point ID with no point associated to it."
msgstr ""
+"Gibt die nächste verfügbare Punkte-ID zurück, der kein Punkt zugeordnet ist."
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid ""
@@ -10558,6 +11645,12 @@ msgid ""
"the one with the smallest ID will be returned, ensuring a deterministic "
"result."
msgstr ""
+"Gibt die ID des Punktes zurück, der [code]to_position[/code] am nächsten "
+"liegt, optional unter Berücksichtigung deaktivierter Punkte. Gibt [code]-1[/"
+"code] zurück, wenn es keine Punkte im Punktepool gibt.\n"
+"[b]Hinweis:[/b] Wenn mehrere Punkte der [code]to_position[/code] am nächsten "
+"liegen, wird der Punkt mit der kleinsten ID zurückgegeben, um ein "
+"deterministisches Ergebnis zu gewährleisten."
#: doc/classes/AStar.xml
msgid ""
@@ -10574,6 +11667,19 @@ msgid ""
"The result is in the segment that goes from [code]y = 0[/code] to [code]y = "
"5[/code]. It's the closest position in the segment to the given point."
msgstr ""
+"Gibt die nächstgelegene Position zu [code]to_position[/code] zurück, die "
+"sich innerhalb eines Segments zwischen zwei verbundenen Punkten befindet.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(0, 0, 0))\n"
+"astar.add_point(2, Vector3(0, 5, 0))\n"
+"astar.connect_points(1, 2)\n"
+"var res = astar.get_closest_position_in_segment(Vector3(3, 3, 0)) # Gibt (0, "
+"3, 0) zurück\n"
+"[/codeblock]\n"
+"Das Ergebnis liegt in dem Segment, das von [code]y = 0[/code] bis [code]y = "
+"5[/code] reicht. Es ist die Position im Segment, die dem angegebenen Punkt "
+"am nächsten liegt."
#: doc/classes/AStar.xml
msgid ""
@@ -10598,12 +11704,34 @@ msgid ""
"4, 3][/code] instead, because now even though the distance is longer, it's "
"\"easier\" to get through point 4 than through point 2."
msgstr ""
+"Gibt ein Array mit den IDs der Punkte zurück, die den von AStar gefundenen "
+"Pfad zwischen den angegebenen Punkten bilden. Das Array ist vom Startpunkt "
+"bis zum Endpunkt des Pfades geordnet.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(0, 0, 0))\n"
+"astar.add_point(2, Vector3(0, 1, 0), 1) # Standartgewichtung ist 1\n"
+"astar.add_point(3, Vector3(1, 1, 0))\n"
+"astar.add_point(4, Vector3(2, 0, 0))\n"
+"\n"
+"astar.connect_points(1, 2, false)\n"
+"astar.connect_points(2, 3, false)\n"
+"astar.connect_points(4, 3, false)\n"
+"astar.connect_points(1, 4, false)\n"
+"\n"
+"var res = astar.get_id_path(1, 3) # Gibt [1, 2, 3] zurück\n"
+"[/codeblock]\n"
+"Wenn du die Gewichtung des 2. Punktes auf 3 änderst, wird das Ergebnis "
+"stattdessen [code][1, 4, 3][/code] sein, weil es jetzt, obwohl die Strecke "
+"länger ist, \"einfacher\" ist, durch Punkt 4 zu kommen als durch Punkt 2."
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid ""
"Returns the capacity of the structure backing the points, useful in "
"conjunction with [code]reserve_space[/code]."
msgstr ""
+"Gibt die Kapazität der Struktur zurück, in der die Punkte gespeichert sind, "
+"nützlich in Verbindung mit [code]reserve_space[/code]."
#: doc/classes/AStar.xml
msgid ""
@@ -10622,10 +11750,25 @@ msgid ""
"var neighbors = astar.get_point_connections(1) # Returns [2, 3]\n"
"[/codeblock]"
msgstr ""
+"Gibt ein Array mit den IDs der Punkte zurück, die die Verbindung mit dem "
+"angegebenen Punkt bilden.\n"
+"[codeblock]\n"
+"var astar = AStar.new()\n"
+"astar.add_point(1, Vector3(0, 0, 0))\n"
+"astar.add_point(2, Vector3(0, 1, 0))\n"
+"astar.add_point(3, Vector3(1, 1, 0))\n"
+"astar.add_point(4, Vector3(2, 0, 0))\n"
+"\n"
+"astar.connect_points(1, 2, true)\n"
+"astar.connect_points(1, 3, true)\n"
+"\n"
+"var neighbors = astar.get_point_connections(1) # Gibt [2, 3] zurück\n"
+"[/codeblock]"
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid "Returns the number of points currently in the points pool."
msgstr ""
+"Gibt die Anzahl der Punkte zurück, die sich derzeit im Punktepool befinden."
#: doc/classes/AStar.xml
msgid ""
@@ -10635,38 +11778,53 @@ msgid ""
"[b]Note:[/b] This method is not thread-safe. If called from a [Thread], it "
"will return an empty [PoolVector3Array] and will print an error message."
msgstr ""
+"Gibt ein Array mit den Punkten zurück, die sich auf dem von AStar gefundenen "
+"Pfad zwischen den angegebenen Punkten befinden. Das Array ist vom Startpunkt "
+"bis zum Endpunkt des Pfades geordnet.\n"
+"[b]Hinweis:[/b] Diese Methode ist nicht thread-sicher. Wenn sie von einem "
+"[Thread] aufgerufen wird, gibt sie ein leeres [PoolVector3Array] zurück und "
+"gibt eine Fehlermeldung aus."
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid ""
"Returns the position of the point associated with the given [code]id[/code]."
msgstr ""
+"Gibt die Position des Punktes zurück, der mit der angegebenen [code]id[/"
+"code] verbunden ist."
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid ""
"Returns the weight scale of the point associated with the given [code]id[/"
"code]."
msgstr ""
+"Gibt die Gewichtungsskala des Punktes zurück, der mit der angegebenen "
+"[code]id[/code] verbunden ist."
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid "Returns an array of all points."
-msgstr ""
+msgstr "Gibt ein Array mit allen Punkten zurück."
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid ""
"Returns whether a point associated with the given [code]id[/code] exists."
msgstr ""
+"Gibt zurück, ob ein Punkt mit der angegebenen [code]id[/code] existiert."
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid ""
"Returns whether a point is disabled or not for pathfinding. By default, all "
"points are enabled."
msgstr ""
+"Gibt zurück, ob ein Punkt für die Pfadfindung deaktiviert ist oder nicht. "
+"Standardmäßig sind alle Punkte aktiviert."
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid ""
"Removes the point associated with the given [code]id[/code] from the points "
"pool."
msgstr ""
+"Entfernt den mit der angegebenen [code]id[/code] verbundenen Punkt aus dem "
+"Punktepool."
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid ""
@@ -10674,17 +11832,25 @@ msgid ""
"you're adding a known large number of points at once, for a grid for "
"instance. New capacity must be greater or equals to old capacity."
msgstr ""
+"Reserviert intern Platz für [code]num_nodes[/code] Punkte, was nützlich ist, "
+"wenn Sie eine bekannt große Anzahl von Punkten auf einmal hinzufügen, z. B. "
+"für ein Gitter. Die neue Kapazität muss größer oder gleich der alten "
+"Kapazität sein."
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid ""
"Disables or enables the specified point for pathfinding. Useful for making a "
"temporary obstacle."
msgstr ""
+"Deaktiviert oder aktiviert den angegebenen Punkt für die Pfadfindung. "
+"Nützlich für die Erstellung eines temporären Hindernisses."
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid ""
"Sets the [code]position[/code] for the point with the given [code]id[/code]."
msgstr ""
+"Setzt die [code]Position[/code] für den Punkt mit der angegebenen [code]id[/"
+"code]."
#: doc/classes/AStar.xml doc/classes/AStar2D.xml
msgid ""
@@ -10693,22 +11859,33 @@ msgid ""
"_compute_cost] when determining the overall cost of traveling across a "
"segment from a neighboring point to this point."
msgstr ""
+"Setzt den [code]weight_scale[/code] für den Punkt mit der angegebenen "
+"[code]id[/code]. Der [code]weight_scale[/code] wird mit dem Ergebnis von "
+"[method _compute_cost] multipliziert, wenn die Gesamtkosten für die Reise "
+"über ein Segment von einem benachbarten Punkt zu diesem Punkt bestimmt "
+"werden."
#: doc/classes/AStar2D.xml
msgid "AStar class representation that uses 2D vectors as edges."
-msgstr ""
+msgstr "AStar-Klassendarstellung, die 2D-Vektoren als Kanten verwendet."
#: doc/classes/AStar2D.xml
msgid ""
"This is a wrapper for the [AStar] class which uses 2D vectors instead of 3D "
"vectors."
msgstr ""
+"Dies ist ein Wrapper für die Klasse [AStar], die 2D-Vektoren anstelle von 3D-"
+"Vektoren verwendet."
#: doc/classes/AStar2D.xml
msgid ""
"Called when computing the cost between two connected points.\n"
"Note that this function is hidden in the default [code]AStar2D[/code] class."
msgstr ""
+"Wird aufgerufen, wenn die Kosten zwischen zwei verbundenen Punkten berechnet "
+"werden.\n"
+"Beachten Sie, dass diese Funktion in der Standardklasse [code]AStar2D[/code] "
+"verborgen ist."
#: doc/classes/AStar2D.xml
msgid ""
@@ -10716,6 +11893,10 @@ msgid ""
"point.\n"
"Note that this function is hidden in the default [code]AStar2D[/code] class."
msgstr ""
+"Wird aufgerufen, wenn die Kosten zwischen einem Punkt und dem Endpunkt des "
+"Pfades geschätzt werden.\n"
+"Beachten Sie, dass diese Funktion in der Standardklasse [code]AStar2D[/code] "
+"verborgen ist."
#: doc/classes/AStar2D.xml
msgid ""
@@ -10735,6 +11916,21 @@ msgid ""
"If there already exists a point for the given [code]id[/code], its position "
"and weight scale are updated to the given values."
msgstr ""
+"Fügt einen neuen Punkt an der angegebenen Position mit dem angegebenen "
+"Bezeichner hinzu. Die [code]id[/code] muss 0 oder größer sein, und die "
+"[code]weight_scale[/code] muss 0,0 oder größer sein.\n"
+"Der [code]weight_scale[/code] wird mit dem Ergebnis von [method "
+"_compute_cost] multipliziert, um die Gesamtkosten der Reise über ein Segment "
+"von einem benachbarten Punkt zu diesem Punkt zu ermitteln. Unter sonst "
+"gleichen Bedingungen bevorzugt der Algorithmus also Punkte mit niedrigeren "
+"[code]weight_scale[/code]s, um einen Pfad zu bilden.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(1, 0), 4) # Fügt den Punkt (1, 0) mit "
+"weight_scale 4 und id 1 hinzu\n"
+"[/codeblock]\n"
+"Wenn für die angegebene [code]id[/code] bereits ein Punkt existiert, werden "
+"dessen Position und Gewichtungsskala auf die angegebenen Werte aktualisiert."
#: doc/classes/AStar2D.xml
msgid ""
@@ -10742,6 +11938,10 @@ msgid ""
"[code]bidirectional[/code] is [code]false[/code], returns whether movement "
"from [code]id[/code] to [code]to_id[/code] is possible through this segment."
msgstr ""
+"Gibt zurück, ob es eine Verbindung/ein Segment zwischen den angegebenen "
+"Punkten gibt. Wenn [code]bidirectional[/code] [code]false[/code] ist, wird "
+"zurückgegeben, ob eine Bewegung von [code]id[/code] nach [code]to_id[/code] "
+"durch dieses Segment möglich ist."
#: doc/classes/AStar2D.xml
msgid ""
@@ -10755,6 +11955,16 @@ msgid ""
"astar.connect_points(1, 2, false)\n"
"[/codeblock]"
msgstr ""
+"Erzeugt ein Segment zwischen den angegebenen Punkten. Wenn "
+"[code]bidirectional[/code] [code]false[/code] ist, ist nur die Bewegung von "
+"[code]id[/code] nach [code]to_id[/code] erlaubt, nicht die umgekehrte "
+"Richtung.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(1, 1))\n"
+"astar.add_point(2, Vector2(0, 5))\n"
+"astar.connect_points(1, 2, false)\n"
+"[/codeblock]"
#: doc/classes/AStar2D.xml
msgid ""
@@ -10771,6 +11981,19 @@ msgid ""
"The result is in the segment that goes from [code]y = 0[/code] to [code]y = "
"5[/code]. It's the closest position in the segment to the given point."
msgstr ""
+"Gibt die nächstgelegene Position zu [code]to_position[/code] zurück, die "
+"sich innerhalb eines Segments zwischen zwei verbundenen Punkten befindet.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(0, 0))\n"
+"astar.add_point(2, Vector2(0, 5))\n"
+"astar.connect_points(1, 2)\n"
+"var res = astar.get_closest_position_in_segment(Vector2(3, 3)) # Gibt (0, 3) "
+"zurück\n"
+"[/codeblock]\n"
+"Das Ergebnis liegt in dem Segment, das von [code]y = 0[/code] bis [code]y = "
+"5[/code] reicht. Es ist die Position im Segment, die dem angegebenen Punkt "
+"am nächsten liegt."
#: doc/classes/AStar2D.xml
msgid ""
@@ -10795,6 +12018,26 @@ msgid ""
"4, 3][/code] instead, because now even though the distance is longer, it's "
"\"easier\" to get through point 4 than through point 2."
msgstr ""
+"Gibt ein Array mit den IDs der Punkte zurück, die den von AStar2D gefundenen "
+"Pfad zwischen den angegebenen Punkten bilden. Das Array ist vom Startpunkt "
+"bis zum Endpunkt des Pfades geordnet.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(0, 0))\n"
+"astar.add_point(2, Vector2(0, 1), 1) # Standartgewichtung ist 1\n"
+"astar.add_point(3, Vector2(1, 1))\n"
+"astar.add_point(4, Vector2(2, 0))\n"
+"\n"
+"astar.connect_points(1, 2, false)\n"
+"astar.connect_points(2, 3, false)\n"
+"astar.connect_points(4, 3, false)\n"
+"astar.connect_points(1, 4, false)\n"
+"\n"
+"var res = astar.get_id_path(1, 3) # Gibt [1, 2, 3] zurück\n"
+"[/codeblock]\n"
+"Wenn du die Gewichtung des 2. Punktes auf 3 änderst, wird das Ergebnis "
+"stattdessen [code][1, 4, 3][/code] sein, weil es jetzt, obwohl die Strecke "
+"länger ist, \"einfacher\" ist, durch Punkt 4 zu kommen als durch Punkt 2."
#: doc/classes/AStar2D.xml
msgid ""
@@ -10813,6 +12056,20 @@ msgid ""
"var neighbors = astar.get_point_connections(1) # Returns [2, 3]\n"
"[/codeblock]"
msgstr ""
+"Gibt ein Array mit den IDs der Punkte zurück, die die Verbindung mit dem "
+"angegebenen Punkt bilden.\n"
+"[codeblock]\n"
+"var astar = AStar2D.new()\n"
+"astar.add_point(1, Vector2(0, 0))\n"
+"astar.add_point(2, Vector2(0, 1))\n"
+"astar.add_point(3, Vector2(1, 1))\n"
+"astar.add_point(4, Vector2(2, 0))\n"
+"\n"
+"astar.connect_points(1, 2, true)\n"
+"astar.connect_points(1, 3, true)\n"
+"\n"
+"var neighbors = astar.get_point_connections(1) # Gibt [2, 3] zurück\n"
+"[/codeblock]"
#: doc/classes/AStar2D.xml
msgid ""
@@ -10822,11 +12079,19 @@ msgid ""
"[b]Note:[/b] This method is not thread-safe. If called from a [Thread], it "
"will return an empty [PoolVector2Array] and will print an error message."
msgstr ""
+"Gibt ein Array mit den Punkten zurück, die sich auf dem von AStar2D "
+"gefundenen Pfad zwischen den angegebenen Punkten befinden. Das Array ist vom "
+"Startpunkt bis zum Endpunkt des Pfades geordnet.\n"
+"[b]Hinweis:[/b] Diese Methode ist nicht thread-sicher. Wenn sie von einem "
+"[Thread] aufgerufen wird, gibt sie ein leeres [PoolVector2Array] zurück und "
+"gibt eine Fehlermeldung aus."
#: doc/classes/AtlasTexture.xml
msgid ""
"Crops out one part of a texture, such as a texture from a texture atlas."
msgstr ""
+"Schneidet einen Teil einer Textur aus, z. B. eine Textur aus einem "
+"Texturatlas."
#: doc/classes/AtlasTexture.xml
msgid ""
@@ -10846,16 +12111,36 @@ msgid ""
"FLAG_REPEAT] and [constant Texture.FLAG_MIRRORED_REPEAT] flags are ignored "
"when using an AtlasTexture."
msgstr ""
+"Ressource [Texture], die einen Teil der Textur [member atlas], definiert "
+"durch [member region], ausschneidet. Der Hauptanwendungsfall ist das "
+"Ausschneiden von Texturen aus einem Textur-Atlas, der eine große Texturdatei "
+"ist, die mehrere kleinere Texturen enthält. Besteht aus einer [Texture] für "
+"den [member atlas], einer [member region], die den zu verwendenden Bereich "
+"des [member atlas] definiert, und einem [member margin], der die Randbreite "
+"definiert.\n"
+"[AtlasTexture] kann nicht in einer [AnimatedTexture] verwendet werden, kann "
+"nicht in Knoten wie [TextureRect] gekachelt werden und funktioniert nicht "
+"ordnungsgemäß, wenn sie innerhalb von anderen [AtlasTexture]-Ressourcen "
+"verwendet wird. Mehrere [AtlasTexture]-Ressourcen können verwendet werden, "
+"um mehrere Texturen aus dem Atlas zu schneiden. Die Verwendung eines "
+"Texturatlasses hilft, die Videospeicherkosten und Renderaufrufe im Vergleich "
+"zur Verwendung mehrerer kleiner Dateien zu optimieren.\n"
+"[b]Hinweis:[/b] AtlasTexturen unterstützen keine Wiederholungen. Die Flags "
+"[constant Texture.FLAG_REPEAT] und [constant Texture.FLAG_MIRRORED_REPEAT] "
+"werden bei der Verwendung einer AtlasTextur ignoriert."
#: doc/classes/AtlasTexture.xml
msgid "The texture that contains the atlas. Can be any [Texture] subtype."
msgstr ""
+"Die Textur, die den Atlas enthält. Kann ein beliebiger [Texture]-Subtyp sein."
#: doc/classes/AtlasTexture.xml
msgid ""
"If [code]true[/code], clips the area outside of the region to avoid bleeding "
"of the surrounding texture pixels."
msgstr ""
+"Wenn [code]true[/code], wird der Bereich außerhalb der Region abgeschnitten, "
+"um ein Ausbluten der umliegenden Texturpixel zu vermeiden."
#: doc/classes/AtlasTexture.xml
msgid ""
@@ -10863,87 +12148,124 @@ msgid ""
"(\"w\" and \"h\" in the editor) resizes the texture so it fits within the "
"margin."
msgstr ""
+"Der Rand um die Region. Der Parameter [member Rect2.size] von [Rect2] (\"w\" "
+"und \"h\" im Editor) ändert die Größe der Textur so, dass sie in den Rand "
+"passt."
#: doc/classes/AtlasTexture.xml
msgid "The AtlasTexture's used region."
-msgstr ""
+msgstr "Die verwendete Region der AtlasTextur."
#: doc/classes/AudioBusLayout.xml
msgid "Stores information about the audio buses."
-msgstr ""
+msgstr "Speichert Informationen über die Audiobusse."
#: doc/classes/AudioBusLayout.xml
msgid ""
"Stores position, muting, solo, bypass, effects, effect position, volume, and "
"the connections between buses. See [AudioServer] for usage."
msgstr ""
+"Speichert Position, Stummschaltung, Solo, Bypass, Effekte, Effektposition, "
+"Lautstärke und die Verbindungen zwischen Bussen. Siehe [AudioServer] für die "
+"Verwendung."
#: doc/classes/AudioEffect.xml
msgid "Audio effect for audio."
-msgstr ""
+msgstr "Audioeffekt für Audio."
#: doc/classes/AudioEffect.xml
msgid ""
"Base resource for audio bus. Applies an audio effect on the bus that the "
"resource is applied on."
msgstr ""
+"Basisressource für Audiobus. Wendet einen Audioeffekt auf den Bus an, auf "
+"den die Ressource angewendet wird."
-#: doc/classes/AudioEffect.xml doc/classes/AudioEffectRecord.xml
-#: doc/classes/AudioServer.xml doc/classes/AudioStream.xml
+#: doc/classes/AudioEffect.xml doc/classes/AudioEffectCapture.xml
+#: doc/classes/AudioEffectRecord.xml doc/classes/AudioServer.xml
+#: doc/classes/AudioStream.xml doc/classes/AudioStreamMicrophone.xml
#: doc/classes/AudioStreamPlayer.xml
msgid "Audio Mic Record Demo"
-msgstr ""
+msgstr "Audio Mic Record Demo"
#: doc/classes/AudioEffectAmplify.xml
msgid ""
"Adds an amplifying audio effect to an audio bus.\n"
"Increases or decreases the volume of the selected audio bus."
msgstr ""
+"Fügt einen verstärkenden Audioeffekt zu einem Audiobus hinzu.\n"
+"Erhöht oder verringert die Lautstärke des ausgewählten Audiobusses."
#: doc/classes/AudioEffectAmplify.xml
msgid "Increases or decreases the volume being routed through the audio bus."
-msgstr ""
+msgstr "Erhöht oder verringert die über den Audiobus geleitete Lautstärke."
#: doc/classes/AudioEffectAmplify.xml
msgid ""
"Amount of amplification in decibels. Positive values make the sound louder, "
"negative values make it quieter. Value can range from -80 to 24."
msgstr ""
+"Betrag der Verstärkung in Dezibel. Positive Werte machen den Ton lauter, "
+"negative Werte machen ihn leiser. Der Wert kann von -80 bis 24 reichen."
#: doc/classes/AudioEffectBandLimitFilter.xml
msgid "Adds a band limit filter to the audio bus."
-msgstr ""
+msgstr "Fügt dem Audiobus einen Bandbegrenzungsfilter hinzu."
#: doc/classes/AudioEffectBandLimitFilter.xml
msgid ""
"Limits the frequencies in a range around the [member AudioEffectFilter."
"cutoff_hz] and allows frequencies outside of this range to pass."
msgstr ""
+"Begrenzt die Frequenzen in einem Bereich um den [member AudioEffectFilter."
+"cutoff_hz] und lässt Frequenzen außerhalb dieses Bereichs passieren."
#: doc/classes/AudioEffectBandPassFilter.xml
msgid "Adds a band pass filter to the audio bus."
-msgstr ""
+msgstr "Fügt dem Audiobus einen Bandpassfilter hinzu."
#: doc/classes/AudioEffectBandPassFilter.xml
msgid ""
"Attenuates the frequencies inside of a range around the [member "
"AudioEffectFilter.cutoff_hz] and cuts frequencies outside of this band."
msgstr ""
+"Dämpft die Frequenzen innerhalb eines Bereichs um den [member "
+"AudioEffectFilter.cutoff_hz] und schneidet Frequenzen außerhalb dieses "
+"Bereichs ab."
#: doc/classes/AudioEffectCapture.xml
msgid "Captures audio from an audio bus in real-time."
-msgstr ""
+msgstr "Nimmt Audio von einem Audiobus in Echtzeit auf."
#: doc/classes/AudioEffectCapture.xml
+#, fuzzy
msgid ""
"AudioEffectCapture is an AudioEffect which copies all audio frames from the "
"attached audio effect bus into its internal ring buffer.\n"
"Application code should consume these audio frames from this ring buffer "
"using [method get_buffer] and process it as needed, for example to capture "
-"data from a microphone, implement application defined effects, or to "
-"transmit audio over the network. When capturing audio data from a "
+"data from an [AudioStreamMicrophone], implement application-defined effects, "
+"or to transmit audio over the network. When capturing audio data from a "
"microphone, the format of the samples will be stereo 32-bit floating point "
-"PCM."
+"PCM.\n"
+"[b]Note:[/b] [member ProjectSettings.audio/enable_audio_input] must be "
+"[code]true[/code] for audio input to work. See also that setting's "
+"description for caveats related to permissions and operating system privacy "
+"settings."
+msgstr ""
+"AudioEffectCapture ist ein AudioEffect, der alle Audio-Frames vom "
+"angeschlossenen Audio-Effekt-Bus in seinen internen Ringpuffer kopiert.\n"
+"Der Anwendungscode sollte diese Audioframes aus diesem Ringpuffer mit der "
+"[method get_buffer] abrufen und nach Bedarf verarbeiten, z.B. um Daten von "
+"einem Mikrofon zu erfassen, anwendungsdefinierte Effekte zu implementieren "
+"oder um Audio über das Netzwerk zu übertragen. Wenn Audiodaten von einem "
+"Mikrofon aufgenommen werden, ist das Format der Samples Stereo 32-Bit "
+"Floating Point PCM."
+
+#: doc/classes/AudioEffectCapture.xml doc/classes/AudioEffectDistortion.xml
+#: doc/classes/AudioEffectFilter.xml doc/classes/AudioEffectHighShelfFilter.xml
+#: doc/classes/AudioEffectLowShelfFilter.xml doc/classes/AudioServer.xml
+msgid "Audio buses"
msgstr ""
#: doc/classes/AudioEffectCapture.xml
@@ -10957,7 +12279,7 @@ msgstr ""
#: doc/classes/AudioEffectCapture.xml
msgid "Clears the internal ring buffer."
-msgstr ""
+msgstr "Löscht den internen Ringspeicher."
#: doc/classes/AudioEffectCapture.xml
msgid ""
@@ -10967,6 +12289,11 @@ msgid ""
"samples if available, or an empty [PoolVector2Array] if insufficient data "
"was available."
msgstr ""
+"Ruft die nächsten [code]frames[/code] Audio-Samples aus dem internen "
+"Ringpuffer ab.\n"
+"Gibt ein [PoolVector2Array] zurück, das genau [code]frames[/code] Audio-"
+"Samples enthält, falls verfügbar, oder ein leeres [PoolVector2Array], falls "
+"nicht genügend Daten verfügbar waren."
#: doc/classes/AudioEffectCapture.xml
#, fuzzy
@@ -10978,11 +12305,15 @@ msgid ""
"Returns the number of audio frames discarded from the audio bus due to full "
"buffer."
msgstr ""
+"Gibt die Anzahl der Audioframes zurück, die aufgrund eines vollen Puffers "
+"vom Audiobus verworfen wurden."
#: doc/classes/AudioEffectCapture.xml
msgid ""
"Returns the number of frames available to read using [method get_buffer]."
msgstr ""
+"Gibt die Anzahl der Bilder zurück, die mit der [methodget_buffer] gelesen "
+"werden können."
#: doc/classes/AudioEffectCapture.xml
#, fuzzy
@@ -10994,6 +12325,8 @@ msgid ""
"Length of the internal ring buffer, in seconds. Setting the buffer length "
"will have no effect if already initialized."
msgstr ""
+"Länge des internen Ringpuffers, in Sekunden. Die Einstellung der Pufferlänge "
+"hat keine Auswirkungen, wenn sie bereits initialisiert ist."
#: doc/classes/AudioEffectChorus.xml
msgid "Adds a chorus audio effect."
@@ -11073,7 +12406,7 @@ msgstr ""
#: doc/classes/AudioEffectCompressor.xml
msgid "Gain applied to the output signal."
-msgstr ""
+msgstr "Auf das Ausgangssignal angewendete Verstärkung."
#: doc/classes/AudioEffectCompressor.xml
msgid ""
@@ -11190,12 +12523,6 @@ msgid ""
"coming from some saturated device or speaker very efficiently."
msgstr ""
-#: doc/classes/AudioEffectDistortion.xml doc/classes/AudioEffectFilter.xml
-#: doc/classes/AudioEffectHighShelfFilter.xml
-#: doc/classes/AudioEffectLowShelfFilter.xml doc/classes/AudioServer.xml
-msgid "Audio buses"
-msgstr ""
-
#: doc/classes/AudioEffectDistortion.xml
msgid "Distortion power. Value can range from 0 to 1."
msgstr ""
@@ -11741,7 +13068,12 @@ msgid ""
msgstr ""
#: doc/classes/AudioServer.xml
-msgid "Returns the names of all audio input devices detected on the system."
+msgid ""
+"Returns the names of all audio input devices detected on the system.\n"
+"[b]Note:[/b] [member ProjectSettings.audio/enable_audio_input] must be "
+"[code]true[/code] for audio input to work. See also that setting's "
+"description for caveats related to permissions and operating system privacy "
+"settings."
msgstr ""
#: doc/classes/AudioServer.xml
@@ -11902,12 +13234,16 @@ msgstr ""
#: doc/classes/AudioServer.xml
msgid ""
-"Name of the current device for audio input (see [method get_device_list]). "
-"On systems with multiple audio inputs (such as analog, USB and HDMI audio), "
-"this can be used to select the audio input device. The value "
-"[code]\"Default\"[/code] will record audio on the system-wide default audio "
-"input. If an invalid device name is set, the value will be reverted back to "
-"[code]\"Default\"[/code]."
+"Name of the current device for audio input (see [method "
+"capture_get_device_list]). On systems with multiple audio inputs (such as "
+"analog, USB and HDMI audio), this can be used to select the audio input "
+"device. The value [code]\"Default\"[/code] will record audio on the system-"
+"wide default audio input. If an invalid device name is set, the value will "
+"be reverted back to [code]\"Default\"[/code].\n"
+"[b]Note:[/b] [member ProjectSettings.audio/enable_audio_input] must be "
+"[code]true[/code] for audio input to work. See also that setting's "
+"description for caveats related to permissions and operating system privacy "
+"settings."
msgstr ""
#: doc/classes/AudioServer.xml
@@ -12059,6 +13395,21 @@ msgid ""
"GDNative, but [method push_frame] may be [i]more[/i] efficient in GDScript."
msgstr ""
+#: doc/classes/AudioStreamMicrophone.xml
+msgid "Plays real-time audio input data."
+msgstr ""
+
+#: doc/classes/AudioStreamMicrophone.xml
+msgid ""
+"When used directly in an [AudioStreamPlayer] node, [AudioStreamMicrophone] "
+"plays back microphone input in real-time. This can be used in conjunction "
+"with [AudioEffectCapture] to process the data or save it.\n"
+"[b]Note:[/b] [member ProjectSettings.audio/enable_audio_input] must be "
+"[code]true[/code] for audio input to work. See also that setting's "
+"description for caveats related to permissions and operating system privacy "
+"settings."
+msgstr ""
+
#: modules/minimp3/doc_classes/AudioStreamMP3.xml
#, fuzzy
msgid "MP3 audio stream driver."
@@ -12203,7 +13554,10 @@ msgstr "Spielt Audio in 2D."
#: doc/classes/AudioStreamPlayer2D.xml
msgid ""
-"Plays audio that dampens with distance from screen center.\n"
+"Plays audio that dampens with distance from a given position.\n"
+"By default, audio is heard from the screen center. This can be changed by "
+"adding a [Listener2D] node to the scene and enabling it by calling [method "
+"Listener2D.make_current] on it.\n"
"See also [AudioStreamPlayer] to play a sound non-positionally.\n"
"[b]Note:[/b] Hiding an [AudioStreamPlayer2D] node does not disable its audio "
"output. To temporarily disable an [AudioStreamPlayer2D]'s audio output, set "
@@ -13899,7 +15253,7 @@ msgid ""
"Sets the camera projection to frustum mode (see [constant "
"PROJECTION_FRUSTUM]), by specifying a [code]size[/code], an [code]offset[/"
"code], and the [code]z_near[/code] and [code]z_far[/code] clip planes in "
-"world space units."
+"world space units. See also [member frustum_offset]."
msgstr ""
#: doc/classes/Camera.xml
@@ -13992,7 +15346,9 @@ msgstr ""
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-"
-"shearing[/url]."
+"shearing[/url].\n"
+"[b]Note:[/b] Only effective if [member projection] is [constant "
+"PROJECTION_FRUSTUM]."
msgstr ""
#: doc/classes/Camera.xml
@@ -14020,9 +15376,9 @@ msgstr ""
#: doc/classes/Camera.xml
msgid ""
-"The camera's size measured as 1/2 the width or height. Only applicable in "
-"orthogonal and frustum modes. Since [member keep_aspect] locks on axis, "
-"[code]size[/code] sets the other axis' size length."
+"The camera's size in meters measured as the diameter of the width or height, "
+"depending on [member keep_aspect]. Only applicable in orthogonal and frustum "
+"modes."
msgstr ""
#: doc/classes/Camera.xml
@@ -14529,13 +15885,14 @@ msgid ""
"inherit and extend their parent's transform. [CanvasItem] is extended by "
"[Control] for anything GUI-related, and by [Node2D] for anything related to "
"the 2D engine.\n"
-"Any [CanvasItem] can draw. For this, [method update] must be called, then "
-"[constant NOTIFICATION_DRAW] will be received on idle time to request "
-"redraw. Because of this, canvas items don't need to be redrawn on every "
-"frame, improving the performance significantly. Several functions for "
+"Any [CanvasItem] can draw. For this, [method update] is called by the "
+"engine, then [constant NOTIFICATION_DRAW] will be received on idle time to "
+"request redraw. Because of this, canvas items don't need to be redrawn on "
+"every frame, improving the performance significantly. Several functions for "
"drawing on the [CanvasItem] are provided (see [code]draw_*[/code] "
-"functions). However, they can only be used inside the [method Object."
-"_notification], signal or [method _draw] virtual functions.\n"
+"functions). However, they can only be used inside [method _draw], its "
+"corresponding [method Object._notification] or methods connected to the "
+"[signal draw] signal.\n"
"Canvas items are drawn in tree order. By default, children are on top of "
"their parents so a root [CanvasItem] will be drawn behind everything. This "
"behavior can be changed on a per-item basis.\n"
@@ -14561,8 +15918,10 @@ msgstr ""
#: doc/classes/CanvasItem.xml
msgid ""
-"Overridable function called by the engine (if defined) to draw the canvas "
-"item."
+"Called when [CanvasItem] has been requested to redraw (when [method update] "
+"is called, either manually or by the engine).\n"
+"Corresponds to the [constant NOTIFICATION_DRAW] notification in [method "
+"Object._notification]."
msgstr ""
#: doc/classes/CanvasItem.xml
@@ -14875,12 +16234,12 @@ msgid ""
"to children."
msgstr ""
-#: doc/classes/CanvasItem.xml doc/classes/Spatial.xml
+#: doc/classes/CanvasItem.xml
msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
"[member visible] property is [code]true[/code] and all its antecedents are "
"also visible. If any antecedent is hidden, this node will not be visible in "
-"the scene tree."
+"the scene tree, and is consequently not drawn (see [method _draw])."
msgstr ""
#: doc/classes/CanvasItem.xml
@@ -14925,8 +16284,10 @@ msgstr ""
#: doc/classes/CanvasItem.xml
msgid ""
-"Queue the [CanvasItem] for update. [constant NOTIFICATION_DRAW] will be "
-"called on idle time to request redraw."
+"Queues the [CanvasItem] to redraw. During idle time, if [CanvasItem] is "
+"visible, [constant NOTIFICATION_DRAW] is sent and [method _draw] is called. "
+"This only occurs [b]once[/b] per frame, even if this method has been called "
+"multiple times."
msgstr ""
#: doc/classes/CanvasItem.xml
@@ -14976,8 +16337,11 @@ msgstr ""
#: doc/classes/CanvasItem.xml
msgid ""
-"Emitted when the [CanvasItem] must redraw. This can only be connected "
-"realtime, as deferred will not allow drawing."
+"Emitted when the [CanvasItem] must redraw, [i]after[/i] the related "
+"[constant NOTIFICATION_DRAW] notification, and [i]before[/i] [method _draw] "
+"is called.\n"
+"[b]Note:[/b] Deferred connections do not allow drawing through the "
+"[code]draw_*[/code] methods."
msgstr ""
#: doc/classes/CanvasItem.xml
@@ -15039,7 +16403,8 @@ msgid ""
msgstr ""
#: doc/classes/CanvasItem.xml
-msgid "The [CanvasItem] is requested to draw."
+#, fuzzy
+msgid "The [CanvasItem] is requested to draw (see [method _draw])."
msgstr "[CanvasItem] wird aufgefordert zu zeichnen."
#: doc/classes/CanvasItem.xml
@@ -15174,7 +16539,10 @@ msgstr ""
#: doc/classes/CanvasLayer.xml
msgid ""
-"Sets the layer to follow the viewport in order to simulate a pseudo 3D "
+"If enabled, the [CanvasLayer] will use the viewport's transform, so it will "
+"move when camera moves instead of being anchored in a fixed position on the "
+"screen.\n"
+"Together with [member follow_viewport_scale] it can be used for a pseudo 3D "
"effect."
msgstr ""
@@ -15904,17 +17272,17 @@ msgstr ""
#: doc/classes/CollisionObject.xml doc/classes/CollisionObject2D.xml
msgid ""
"If [code]value[/code] is [code]true[/code], sets the specified [code]bit[/"
-"code] in the the [member collision_layer].\n"
+"code] in the [member collision_layer].\n"
"If [code]value[/code] is [code]false[/code], clears the specified [code]bit[/"
-"code] in the the [member collision_layer]."
+"code] in the [member collision_layer]."
msgstr ""
#: doc/classes/CollisionObject.xml doc/classes/CollisionObject2D.xml
msgid ""
"If [code]value[/code] is [code]true[/code], sets the specified [code]bit[/"
-"code] in the the [member collision_mask].\n"
+"code] in the [member collision_mask].\n"
"If [code]value[/code] is [code]false[/code], clears the specified [code]bit[/"
-"code] in the the [member collision_mask]."
+"code] in the [member collision_mask]."
msgstr ""
#: doc/classes/CollisionObject.xml doc/classes/CollisionObject2D.xml
@@ -16247,12 +17615,13 @@ msgstr ""
#: doc/classes/CollisionShape.xml
msgid ""
-"Editor facility for creating and editing collision shapes in 3D space. You "
-"can use this node to represent all sorts of collision shapes, for example, "
-"add this to an [Area] to give it a detection shape, or add it to a "
-"[PhysicsBody] to create a solid object. [b]IMPORTANT[/b]: this is an Editor-"
-"only helper to create shapes, use [method CollisionObject."
-"shape_owner_get_shape] to get the actual shape."
+"Editor facility for creating and editing collision shapes in 3D space. Set "
+"the [member shape] property to configure the shape. [b]IMPORTANT[/b]: this "
+"is an Editor-only helper to create shapes, use [method CollisionObject."
+"shape_owner_get_shape] to get the actual shape.\n"
+"You can use this node to represent all sorts of collision shapes, for "
+"example, add this to an [Area] to give it a detection shape, or add it to a "
+"[PhysicsBody] to create a solid object."
msgstr ""
#: doc/classes/CollisionShape.xml doc/classes/CollisionShape2D.xml
@@ -16290,12 +17659,13 @@ msgstr ""
#: doc/classes/CollisionShape2D.xml
msgid ""
-"Editor facility for creating and editing collision shapes in 2D space. You "
-"can use this node to represent all sorts of collision shapes, for example, "
-"add this to an [Area2D] to give it a detection shape, or add it to a "
-"[PhysicsBody2D] to create a solid object. [b]IMPORTANT[/b]: this is an "
-"Editor-only helper to create shapes, use [method CollisionObject2D."
-"shape_owner_get_shape] to get the actual shape."
+"Editor facility for creating and editing collision shapes in 2D space. Set "
+"the [member shape] property to configure the shape. [b]IMPORTANT[/b]: this "
+"is an Editor-only helper to create shapes, use [method CollisionObject2D."
+"shape_owner_get_shape] to get the actual shape.\n"
+"You can use this node to represent all sorts of collision shapes, for "
+"example, add this to an [Area2D] to give it a detection shape, or add it to "
+"a [PhysicsBody2D] to create a solid object."
msgstr ""
#: doc/classes/CollisionShape2D.xml doc/classes/KinematicBody2D.xml
@@ -17522,7 +18892,15 @@ msgid ""
"area. This shape is created by feeding a list of triangles.\n"
"[b]Note:[/b] When used for collision, [ConcavePolygonShape] is intended to "
"work with static [PhysicsBody] nodes like [StaticBody] and will not work "
-"with [KinematicBody] or [RigidBody] with a mode other than Static."
+"with [KinematicBody] or [RigidBody] with a mode other than Static.\n"
+"[b]Warning:[/b] Using this shape for an [Area] (via a [CollisionShape] node, "
+"created e.g. by using the [i]Create Trimesh Collision Sibling[/i] option in "
+"the [i]Mesh[/i] menu that appears when selecting a [MeshInstance] node) may "
+"give unexpected results: when using Godot Physics, the area will only detect "
+"collisions with the triangle faces in the [ConcavePolygonShape] (and not "
+"with any \"inside\" of the shape, for example), and when using Bullet "
+"Physics the area will not detect any collisions with the concave shape at "
+"all (this is a known bug)."
msgstr ""
#: doc/classes/ConcavePolygonShape.xml
@@ -17548,7 +18926,11 @@ msgid ""
"The main difference between a [ConvexPolygonShape2D] and a "
"[ConcavePolygonShape2D] is that a concave polygon assumes it is concave and "
"uses a more complex method of collision detection, and a convex one forces "
-"itself to be convex in order to speed up collision detection."
+"itself to be convex in order to speed up collision detection.\n"
+"[b]Warning:[/b] Using this shape for an [Area2D] (via a [CollisionShape2D] "
+"node) may give unexpected results: the area will only detect collisions with "
+"the segments in the [ConcavePolygonShape2D] (and not with any \"inside\" of "
+"the shape, for example)."
msgstr ""
#: doc/classes/ConcavePolygonShape2D.xml
@@ -18297,7 +19679,9 @@ msgstr ""
#: doc/classes/Control.xml
msgid ""
"Steal the focus from another control and become the focused control (see "
-"[member focus_mode])."
+"[member focus_mode]).\n"
+"[b]Note[/b]: Using this method together with [method Object.call_deferred] "
+"makes it more reliable, especially when called inside [method Node._ready]."
msgstr ""
#: doc/classes/Control.xml
@@ -21065,7 +22449,9 @@ msgstr ""
msgid ""
"A curve that can be saved and re-used for other objects. By default, it "
"ranges between [code]0[/code] and [code]1[/code] on the Y axis and positions "
-"points relative to the [code]0.5[/code] Y position."
+"points relative to the [code]0.5[/code] Y position.\n"
+"See also [Gradient] which is designed for color interpolation. See also "
+"[Curve2D] and [Curve3D]."
msgstr ""
#: doc/classes/Curve.xml
@@ -21214,16 +22600,17 @@ msgid ""
"further calculations."
msgstr ""
-#: doc/classes/Curve2D.xml
+#: doc/classes/Curve2D.xml doc/classes/Curve3D.xml
msgid ""
-"Adds a point to a curve at [code]position[/code] relative to the [Curve2D]'s "
-"position, with control points [code]in[/code] and [code]out[/code].\n"
-"If [code]at_position[/code] is given, the point is inserted before the point "
-"number [code]at_position[/code], moving that point (and every point after) "
-"after the inserted point. If [code]at_position[/code] is not given, or is an "
-"illegal value ([code]at_position <0[/code] or [code]at_position >= [method "
-"get_point_count][/code]), the point will be appended at the end of the point "
-"list."
+"Adds a point with the specified [code]position[/code] relative to the "
+"curve's own position, with control points [code]in[/code] and [code]out[/"
+"code]. Appends the new point at the end of the point list.\n"
+"If [code]index[/code] is given, the new point is inserted before the "
+"existing point identified by index [code]index[/code]. Every existing point "
+"starting from [code]index[/code] is shifted further down the list of points. "
+"The index must be greater than or equal to [code]0[/code] and must not "
+"exceed the number of existing points in the line. See [method "
+"get_point_count]."
msgstr ""
#: doc/classes/Curve2D.xml doc/classes/Curve3D.xml
@@ -21369,18 +22756,6 @@ msgid ""
msgstr ""
#: doc/classes/Curve3D.xml
-msgid ""
-"Adds a point to a curve at [code]position[/code] relative to the [Curve3D]'s "
-"position, with control points [code]in[/code] and [code]out[/code].\n"
-"If [code]at_position[/code] is given, the point is inserted before the point "
-"number [code]at_position[/code], moving that point (and every point after) "
-"after the inserted point. If [code]at_position[/code] is not given, or is an "
-"illegal value ([code]at_position <0[/code] or [code]at_position >= [method "
-"get_point_count][/code]), the point will be appended at the end of the point "
-"list."
-msgstr ""
-
-#: doc/classes/Curve3D.xml
#, fuzzy
msgid "Returns the cache of points as a [PoolVector3Array]."
msgstr "Liefert die Fläche des [Rect2i]."
@@ -26323,8 +27698,12 @@ msgstr ""
#: doc/classes/File.xml
msgid ""
-"Returns the whole file as a [String].\n"
-"Text is interpreted as being UTF-8 encoded."
+"Returns the whole file as a [String]. Text is interpreted as being UTF-8 "
+"encoded.\n"
+"If [code]skip_cr[/code] is [code]true[/code], carriage return characters "
+"([code]\\r[/code], CR) will be ignored when parsing the UTF-8, so that only "
+"line feed characters ([code]\\n[/code], LF) represent a new line (Unix "
+"convention)."
msgstr ""
#: doc/classes/File.xml
@@ -26949,7 +28328,9 @@ msgid ""
"[code]next[/code] is passed. clipping the width. [code]position[/code] "
"specifies the baseline, not the top. To draw from the top, [i]ascent[/i] "
"must be added to the Y axis. The width used by the character is returned, "
-"making this function useful for drawing strings character by character."
+"making this function useful for drawing strings character by character.\n"
+"If [code]outline[/code] is [code]true[/code], the outline of the character "
+"is drawn instead of the character itself."
msgstr ""
#: doc/classes/Font.xml
@@ -28549,10 +29930,13 @@ msgstr ""
#: doc/classes/Gradient.xml
msgid ""
"Given a set of colors, this resource will interpolate them in order. This "
-"means that if you have color 1, color 2 and color 3, the ramp will "
-"interpolate from color 1 to color 2 and from color 2 to color 3. The ramp "
-"will initially have 2 colors (black and white), one (black) at ramp lower "
-"offset 0 and the other (white) at the ramp higher offset 1."
+"means that if you have color 1, color 2 and color 3, the gradient will "
+"interpolate from color 1 to color 2 and from color 2 to color 3. The "
+"gradient will initially have 2 colors (black and white), one (black) at "
+"gradient lower offset 0 and the other (white) at the gradient higher offset "
+"1.\n"
+"See also [Curve] which supports more complex easing methods, but does not "
+"support colors."
msgstr ""
#: doc/classes/Gradient.xml
@@ -29994,8 +31378,8 @@ msgstr ""
msgid ""
"Hyper-text transfer protocol client (sometimes called \"User Agent\"). Used "
"to make HTTP requests to download web content, upload files and other data "
-"or to communicate with various services, among other use cases. [b]See the "
-"[HTTPRequest] node for a higher-level alternative.[/b]\n"
+"or to communicate with various services, among other use cases.\n"
+"See the [HTTPRequest] node for a higher-level alternative.\n"
"[b]Note:[/b] This client only needs to connect to a host once (see [method "
"connect_to_host]) to send multiple requests. Because of this, methods that "
"take URLs usually take just the part after the host instead of the full URL, "
@@ -32325,11 +33709,14 @@ msgstr ""
#: doc/classes/Input.xml
msgid ""
-"Vibrate Android and iOS devices.\n"
+"Vibrate handheld devices.\n"
+"[b]Note:[/b] This method is implemented on Android, iOS, and HTML5.\n"
"[b]Note:[/b] For Android, it requires enabling the [code]VIBRATE[/code] "
"permission in the export preset.\n"
"[b]Note:[/b] For iOS, specifying the duration is supported in iOS 13 and "
-"later."
+"later.\n"
+"[b]Note:[/b] Some web browsers such as Safari and Firefox for Android do not "
+"support this method."
msgstr ""
#: doc/classes/Input.xml
@@ -33178,7 +34565,11 @@ msgstr ""
#: doc/classes/InstancePlaceholder.xml
msgid ""
-"Not thread-safe. Use [method Object.call_deferred] if calling from a thread."
+"Call this method to actually load in the node. The created node will be "
+"placed as a sibling [i]above[/i] the [InstancePlaceholder] in the scene "
+"tree. The [Node]'s reference is also returned for convenience.\n"
+"[b]Note:[/b] [method create_instance] is not thread-safe. Use [method Object."
+"call_deferred] if calling from a thread."
msgstr ""
#: doc/classes/InstancePlaceholder.xml
@@ -33190,6 +34581,16 @@ msgstr ""
#: doc/classes/InstancePlaceholder.xml
msgid ""
+"Returns the list of properties that will be applied to the node when [method "
+"create_instance] is called.\n"
+"If [code]with_order[/code] is [code]true[/code], a key named [code].order[/"
+"code] (note the leading period) is added to the dictionary. This [code]."
+"order[/code] key is an [Array] of [String] property names specifying the "
+"order in which properties will be applied (with index 0 being the first)."
+msgstr ""
+
+#: doc/classes/InstancePlaceholder.xml
+msgid ""
"Replaces this placeholder by the scene handed as an argument, or the "
"original scene if no argument is given. As for all resources, the scene is "
"loaded only if it's not loaded already. By manually loading the scene "
@@ -35609,14 +37010,14 @@ msgstr ""
#: doc/classes/Line2D.xml
msgid ""
-"Adds a point at the [code]position[/code]. Appends the point at the end of "
-"the line.\n"
-"If [code]at_position[/code] is given, the point is inserted before the point "
-"number [code]at_position[/code], moving that point (and every point after) "
-"after the inserted point. If [code]at_position[/code] is not given, or is an "
-"illegal value ([code]at_position < 0[/code] or [code]at_position >= [method "
-"get_point_count][/code]), the point will be appended at the end of the point "
-"list."
+"Adds a point with the specified [code]position[/code] relative to the line's "
+"own position. Appends the new point at the end of the point list.\n"
+"If [code]index[/code] is given, the new point is inserted before the "
+"existing point identified by index [code]index[/code]. Every existing point "
+"starting from [code]index[/code] is shifted further down the list of points. "
+"The index must be greater than or equal to [code]0[/code] and must not "
+"exceed the number of existing points in the line. See [method "
+"get_point_count]."
msgstr ""
#: doc/classes/Line2D.xml
@@ -35624,22 +37025,29 @@ msgid "Removes all points from the line."
msgstr ""
#: doc/classes/Line2D.xml
-msgid "Returns the Line2D's amount of points."
-msgstr ""
+#, fuzzy
+msgid "Returns the amount of points in the line."
+msgstr "Gibt die Anzahl der Spuren in der Animation zurück."
#: doc/classes/Line2D.xml
-msgid "Returns point [code]i[/code]'s position."
-msgstr ""
+#, fuzzy
+msgid "Returns the position of the point at index [code]index[/code]."
+msgstr "Liefert die Position des Punktes bei Index [code]Punkt[/code]."
#: doc/classes/Line2D.xml
-msgid "Removes the point at index [code]i[/code] from the line."
+#, fuzzy
+msgid "Removes the point at index [code]index[/code] from the line."
msgstr ""
+"Entfernt den Punkt bei Index [code]Punkt[/code] aus dem Überblendungsbereich."
#: doc/classes/Line2D.xml
+#, fuzzy
msgid ""
-"Overwrites the position in point [code]i[/code] with the supplied "
-"[code]position[/code]."
+"Overwrites the position of the point at index [code]index[/code] with the "
+"supplied [code]position[/code]."
msgstr ""
+"Liefert die Position des Punktes bei Index [code]Punkt[/code] im Dreieck von "
+"Index [code]Dreieck[/code]."
#: doc/classes/Line2D.xml
msgid ""
@@ -36918,8 +38326,12 @@ msgstr ""
msgid "Flag used to mark a compressed (half float) tangent array."
msgstr ""
-#: doc/classes/Mesh.xml doc/classes/VisualServer.xml
-msgid "Flag used to mark a compressed (half float) color array."
+#: doc/classes/Mesh.xml
+msgid ""
+"Flag used to mark a compressed (half float) color array.\n"
+"[b]Note:[/b] If this flag is enabled, vertex colors will be stored as 8-bit "
+"unsigned integers. This will clamp overbright colors to [code]Color(1, 1, 1, "
+"1)[/code] and reduce colors' precision."
msgstr ""
#: doc/classes/Mesh.xml doc/classes/VisualServer.xml
@@ -36964,7 +38376,10 @@ msgid ""
"ARRAY_COMPRESS_NORMAL], [constant ARRAY_COMPRESS_TANGENT], [constant "
"ARRAY_COMPRESS_COLOR], [constant ARRAY_COMPRESS_TEX_UV], [constant "
"ARRAY_COMPRESS_TEX_UV2], [constant ARRAY_COMPRESS_WEIGHTS], and [constant "
-"ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION] quickly."
+"ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION] quickly.\n"
+"[b]Note:[/b] Since this flag enables [constant ARRAY_COMPRESS_COLOR], vertex "
+"colors will be stored as 8-bit unsigned integers. This will clamp overbright "
+"colors to [code]Color(1, 1, 1, 1)[/code] and reduce colors' precision."
msgstr ""
#: doc/classes/Mesh.xml
@@ -37219,9 +38634,9 @@ msgid ""
"MeshInstance is a node that takes a [Mesh] resource and adds it to the "
"current scenario by creating an instance of it. This is the class most often "
"used to get 3D geometry rendered and can be used to instance a single [Mesh] "
-"in many places. This allows to reuse geometry and save on resources. When a "
-"[Mesh] has to be instanced more than thousands of times at close proximity, "
-"consider using a [MultiMesh] in a [MultiMeshInstance] instead."
+"in many places. This allows reusing geometry, which can save on resources. "
+"When a [Mesh] has to be instanced more than thousands of times at close "
+"proximity, consider using a [MultiMesh] in a [MultiMeshInstance] instead."
msgstr ""
#: doc/classes/MeshInstance.xml
@@ -37682,7 +39097,9 @@ msgid ""
"existing vertex colors.\n"
"For the color to take effect, ensure that [member color_format] is non-"
"[code]null[/code] on the [MultiMesh] and [member SpatialMaterial."
-"vertex_color_use_as_albedo] is [code]true[/code] on the material."
+"vertex_color_use_as_albedo] is [code]true[/code] on the material. If the "
+"color doesn't look as expected, make sure the material's albedo color is set "
+"to pure white ([code]Color(1, 1, 1)[/code])."
msgstr ""
#: doc/classes/MultiMesh.xml
@@ -38846,7 +40263,7 @@ msgstr ""
#: doc/classes/NavigationAgent.xml doc/classes/NavigationAgent2D.xml
msgid ""
"Notifies when the collision avoidance velocity is calculated after a call to "
-"[method set_velocity]."
+"[method set_velocity]. Only emitted when [member avoidance_enabled] is true."
msgstr ""
#: doc/classes/NavigationAgent2D.xml
@@ -39688,13 +41105,25 @@ msgstr ""
#: doc/classes/NetworkedMultiplayerCustom.xml
msgid ""
"Initialize the peer with the given [code]peer_id[/code] (must be between 1 "
-"and 2147483647)."
+"and 2147483647).\n"
+"Can only be called if the connection status is [constant "
+"NetworkedMultiplayerPeer.CONNECTION_CONNECTING]. See [method "
+"set_connection_status]."
msgstr ""
#: doc/classes/NetworkedMultiplayerCustom.xml
msgid ""
"Set the state of the connection. See [enum NetworkedMultiplayerPeer."
-"ConnectionStatus]."
+"ConnectionStatus].\n"
+"This will emit the [signal NetworkedMultiplayerPeer.connection_succeeded], "
+"[signal NetworkedMultiplayerPeer.connection_failed] or [signal "
+"NetworkedMultiplayerPeer.server_disconnected] signals depending on the "
+"status and if the peer has the unique network id of [code]1[/code].\n"
+"You can only change to [constant NetworkedMultiplayerPeer."
+"CONNECTION_CONNECTING] from [constant NetworkedMultiplayerPeer."
+"CONNECTION_DISCONNECTED] and to [constant NetworkedMultiplayerPeer."
+"CONNECTION_CONNECTED] from [constant NetworkedMultiplayerPeer."
+"CONNECTION_CONNECTING]."
msgstr ""
#: doc/classes/NetworkedMultiplayerCustom.xml
@@ -41461,11 +42890,11 @@ msgstr "Gobale Position."
#: doc/classes/Node2D.xml
msgid "Global rotation in radians."
-msgstr ""
+msgstr "Globale Rotation im Bogenmaß."
#: doc/classes/Node2D.xml
msgid "Global rotation in degrees."
-msgstr ""
+msgstr "Globale Rotation in Grad."
#: doc/classes/Node2D.xml
msgid "Global scale."
@@ -41515,6 +42944,10 @@ msgid ""
"VisualServer.CANVAS_ITEM_Z_MIN] and [constant VisualServer."
"CANVAS_ITEM_Z_MAX] (inclusive)."
msgstr ""
+"Z-Index. Legt fest, in welcher Reihenfolge die Nodes gerendert werde . Eine "
+"Node mit höherem Z-Index wird über anderen angezeigt. Wert muss zwischen "
+"[constant VisualServer.CANVAS_ITEM_Z_MIN] und [constant VisualServer."
+"CANVAS_ITEM_Z_MAX] liegen (einschließlich)."
#: doc/classes/NodePath.xml
msgid "Pre-parsed scene tree path."
@@ -43378,7 +44811,9 @@ msgid ""
"are also subject to automatic adjustments by the operating system. [b]Always "
"use[/b] [method get_ticks_usec] or [method get_ticks_msec] for precise time "
"calculation instead, since they are guaranteed to be monotonic (i.e. never "
-"decrease)."
+"decrease).\n"
+"[b]Note:[/b] To get a floating point timestamp with sub-second precision, "
+"use [method Time.get_unix_time_from_system]."
msgstr ""
#: doc/classes/OS.xml
@@ -47933,7 +49368,7 @@ msgstr ""
#: doc/classes/Polygon2D.xml
msgid "The texture's rotation in degrees."
-msgstr ""
+msgstr "Die Rotation (Drehung) der Textur in Grad."
#: doc/classes/Polygon2D.xml
msgid ""
@@ -48857,7 +50292,9 @@ msgstr ""
#: doc/classes/PopupMenu.xml
#, fuzzy
-msgid "Sets the currently focused item as the given [code]index[/code]."
+msgid ""
+"Sets the currently focused item as the given [code]index[/code].\n"
+"Passing [code]-1[/code] as the index makes so that no item is focused."
msgstr "Liefert die Position des Punktes bei Index [code]Punkt[/code]."
#: doc/classes/PopupMenu.xml
@@ -49099,7 +50536,9 @@ msgstr ""
msgid ""
"Class for displaying popups with a panel background. In some cases it might "
"be simpler to use than [Popup], since it provides a configurable background. "
-"If you are making windows, better check [WindowDialog]."
+"If you are making windows, better check [WindowDialog].\n"
+"If any [Control] node is added as a child of this [PopupPanel], it will be "
+"stretched to fit the panel's size (similar to how [PanelContainer] works)."
msgstr ""
#: doc/classes/PopupPanel.xml
@@ -49832,7 +51271,11 @@ msgstr ""
#: doc/classes/ProjectSettings.xml
msgid ""
"If [code]true[/code], microphone input will be allowed. This requires "
-"appropriate permissions to be set when exporting to Android or iOS."
+"appropriate permissions to be set when exporting to Android or iOS.\n"
+"[b]Note:[/b] If the operating system blocks access to audio input devices "
+"(due to the user's privacy settings), audio capture will only return "
+"silence. On Windows 10 and later, make sure that apps are allowed to access "
+"the microphone in the OS' privacy settings."
msgstr ""
#: doc/classes/ProjectSettings.xml
@@ -52520,8 +53963,19 @@ msgstr ""
msgid ""
"Maximum anisotropic filter level used for textures with anisotropy enabled. "
"Higher values will result in sharper textures when viewed from oblique "
-"angles, at the cost of performance. Only power-of-two values are valid (2, "
-"4, 8, 16)."
+"angles, at the cost of performance. With the exception of [code]1[/code], "
+"only power-of-two values are valid ([code]2[/code], [code]4[/code], [code]8[/"
+"code], [code]16[/code]). A value of [code]1[/code] forcibly disables "
+"anisotropic filtering, even on textures where it is enabled.\n"
+"[b]Note:[/b] For performance reasons, anisotropic filtering [i]is not "
+"enabled by default[/i] on textures. For this setting to have an effect, "
+"anisotropic texture filtering can be enabled by selecting a texture in the "
+"FileSystem dock, going to the Import dock, checking the [b]Anisotropic[/b] "
+"checkbox then clicking [b]Reimport[/b]. However, anisotropic filtering is "
+"rarely useful in 2D, so only enable it for textures in 2D if it makes a "
+"meaningful visual difference.\n"
+"[b]Note:[/b] This property is only read when the project starts. There is "
+"currently no way to change this setting at run-time."
msgstr ""
#: doc/classes/ProjectSettings.xml
@@ -56156,11 +57610,15 @@ msgstr ""
msgid ""
"Switches the portal culling system on and off.\n"
"It is important to note that when portal culling is active, it is "
-"responsible for [b]all[/b] the 3d culling. Some editor functionality may be "
-"more difficult to use, so switching the active flag is intended to be used "
-"to make sure your [Room] / [Portal] layout works within the editor.\n"
+"responsible for [b]all[/b] the 3d culling. Some editor visual debugging "
+"helpers may not be available when active, so switching the active flag is "
+"intended to be used to ensure your [Room] / [Portal] layout works within the "
+"editor.\n"
"Switching to [code]active[/code] will have no effect when the [code]room "
-"graph[/code] is unloaded (the rooms have not yet been converted)."
+"graph[/code] is unloaded (the rooms have not yet been converted).\n"
+"[b]Note:[/b] For efficiency, the portal system is designed to work with only "
+"the core visual object types. In particular, only nodes derived from "
+"[VisualInstance] are expected to show when the system is active."
msgstr ""
#: doc/classes/RoomManager.xml
@@ -56598,7 +58056,9 @@ msgid ""
"cannot be instantiated.\n"
"[b]Note:[/b] The scene change is deferred, which means that the new scene "
"node is added on the next idle frame. You won't be able to access it "
-"immediately after the [method change_scene_to] call."
+"immediately after the [method change_scene_to] call.\n"
+"[b]Note:[/b] Passing a value of [code]null[/code] into the method will "
+"unload the current scene without loading a new one."
msgstr ""
#: doc/classes/SceneTree.xml
@@ -56745,13 +58205,19 @@ msgstr ""
#: doc/classes/SceneTree.xml
msgid ""
"If [code]true[/code], collision shapes will be visible when running the game "
-"from the editor for debugging purposes."
+"from the editor for debugging purposes.\n"
+"[b]Note:[/b] This property is not designed to be changed at run-time. "
+"Changing the value of [member debug_collisions_hint] while the project is "
+"running will not have the desired effect."
msgstr ""
#: doc/classes/SceneTree.xml
msgid ""
"If [code]true[/code], navigation polygons will be visible when running the "
-"game from the editor for debugging purposes."
+"game from the editor for debugging purposes.\n"
+"[b]Note:[/b] This property is not designed to be changed at run-time. "
+"Changing the value of [member debug_navigation_hint] while the project is "
+"running will not have the desired effect."
msgstr ""
#: doc/classes/SceneTree.xml
@@ -57076,6 +58542,18 @@ msgid ""
"[/codeblock]\n"
"In the example above, all children of a node are moved one after another to "
"position (0, 0).\n"
+"You should avoid using more than one [SceneTreeTween] per object's property. "
+"If two or more tweens animate one property at the same time, the last one "
+"created will take priority and assign the final value. If you want to "
+"interrupt and restart an animation, consider assigning the [SceneTreeTween] "
+"to a variable:\n"
+"[codeblock]\n"
+"var tween\n"
+"func animate():\n"
+" if tween:\n"
+" tween.kill() # Abort the previous animation.\n"
+" tween = create_tween()\n"
+"[/codeblock]\n"
"Some [Tweener]s use transitions and eases. The first accepts a [enum Tween."
"TransitionType] constant, and refers to the way the timing of the animation "
"is handled (see [url=https://easings.net/]easings.net[/url] for some "
@@ -57088,7 +58566,10 @@ msgid ""
"tween_cheatsheet.png]Tween easing and transition types cheatsheet[/url]\n"
"[b]Note:[/b] All [SceneTreeTween]s will automatically start by default. To "
"prevent a [SceneTreeTween] from autostarting, you can call [method stop] "
-"immediately after it is created."
+"immediately after it is created.\n"
+"[b]Note:[/b] [SceneTreeTween]s are processing after all of nodes in the "
+"current frame, i.e. after [method Node._process] or [method Node."
+"_physics_process] (depending on [enum Tween.TweenProcessMode])."
msgstr ""
#: doc/classes/SceneTreeTween.xml
@@ -57943,7 +59424,10 @@ msgid ""
msgstr ""
#: doc/classes/Shape2D.xml
-msgid "The shape's custom solver bias."
+msgid ""
+"The shape's custom solver bias. Defines how much bodies react to enforce "
+"contact separation when this shape is involved.\n"
+"When set to [code]0.0[/code], the default value of [code]0.3[/code] is used."
msgstr ""
#: doc/classes/ShortCut.xml
@@ -58574,6 +60058,14 @@ msgstr ""
#: doc/classes/Spatial.xml
msgid ""
+"Returns [code]true[/code] if the node is present in the [SceneTree], its "
+"[member visible] property is [code]true[/code] and all its antecedents are "
+"also visible. If any antecedent is hidden, this node will not be visible in "
+"the scene tree."
+msgstr ""
+
+#: doc/classes/Spatial.xml
+msgid ""
"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 "
@@ -58910,7 +60402,9 @@ msgid ""
"[b]Note:[/b] Material anisotropy should not to be confused with anisotropic "
"texture filtering. Anisotropic texture filtering can be enabled by selecting "
"a texture in the FileSystem dock, going to the Import dock, checking the "
-"[b]Anisotropic[/b] checkbox then clicking [b]Reimport[/b]."
+"[b]Anisotropic[/b] checkbox then clicking [b]Reimport[/b]. The anisotropic "
+"filtering level can be changed by adjusting [member ProjectSettings."
+"rendering/quality/filters/anisotropic_filter_level]."
msgstr ""
#: doc/classes/SpatialMaterial.xml
@@ -60362,7 +61856,7 @@ msgstr ""
#: doc/classes/Sprite3D.xml
msgid ""
"[Texture] object to draw. If [member GeometryInstance.material_override] is "
-"used, this will be overridden."
+"used, this will be overridden. The size information is still used."
msgstr ""
#: doc/classes/SpriteBase3D.xml
@@ -61656,6 +63150,9 @@ msgid ""
"the substrings, starting from right.\n"
"The splits in the returned array are sorted in the same order as the "
"original string, from left to right.\n"
+"If [code]allow_empty[/code] is [code]true[/code], and there are two adjacent "
+"delimiters in the string, it will add an empty string to the array of "
+"substrings at this position.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
"from the right up to [code]maxsplit[/code]. The default value of 0 means "
"that all items are split, thus giving the same result as [method split].\n"
@@ -61717,6 +63214,9 @@ msgstr ""
msgid ""
"Splits the string by a [code]delimiter[/code] string and returns an array of "
"the substrings. The [code]delimiter[/code] can be of any length.\n"
+"If [code]allow_empty[/code] is [code]true[/code], and there are two adjacent "
+"delimiters in the string, it will add an empty string to the array of "
+"substrings at this position.\n"
"If [code]maxsplit[/code] is specified, it defines the number of splits to do "
"from the left up to [code]maxsplit[/code]. The default value of [code]0[/"
"code] means that all items are split.\n"
@@ -61739,7 +63239,10 @@ msgid ""
"Splits the string in floats by using a delimiter string and returns an array "
"of the substrings.\n"
"For example, [code]\"1,2.5,3\"[/code] will return [code][1,2.5,3][/code] if "
-"split by [code]\",\"[/code]."
+"split by [code]\",\"[/code].\n"
+"If [code]allow_empty[/code] is [code]true[/code], and there are two adjacent "
+"delimiters in the string, it will add an empty string to the array of "
+"substrings at this position."
msgstr ""
#: doc/classes/String.xml
@@ -62892,6 +64395,11 @@ msgid "Returns [code]true[/code] if select with right mouse button is enabled."
msgstr ""
#: doc/classes/Tabs.xml
+#, fuzzy
+msgid "Returns the button icon from the tab at index [code]tab_idx[/code]."
+msgstr "Liefert die Position des Punktes bei Index [code]Punkt[/code]."
+
+#: doc/classes/Tabs.xml
msgid "Returns the number of hidden tabs offsetted to the left."
msgstr ""
@@ -62922,6 +64430,11 @@ msgid ""
msgstr ""
#: doc/classes/Tabs.xml
+#, fuzzy
+msgid "Sets the button icon from the tab at index [code]tab_idx[/code]."
+msgstr "Liefert die Position des Punktes bei Index [code]Punkt[/code]."
+
+#: doc/classes/Tabs.xml
msgid "Sets an [code]icon[/code] for the tab at index [code]tab_idx[/code]."
msgstr ""
@@ -62963,8 +64476,13 @@ msgid ""
msgstr ""
#: doc/classes/Tabs.xml
-msgid "Emitted when a tab is right-clicked."
+#, fuzzy
+msgid ""
+"Emitted when a tab's right button is pressed. See [method "
+"set_tab_button_icon]."
msgstr ""
+"Wird ausgegeben, wenn eine benutzerdefinierte Taste gedrückt wird. Siehe "
+"[method add_button]."
#: doc/classes/Tabs.xml
msgid "Emitted when a tab is clicked, even if it is the current tab."
@@ -64342,7 +65860,7 @@ msgstr ""
#: doc/classes/Theme.xml
#, fuzzy
msgid ""
-"Clears the [Color] at [code]name[/code] if the theme has [code]node_type[/"
+"Clears the [Color] at [code]name[/code] if the theme has [code]theme_type[/"
"code]."
msgstr ""
"Bewegt den Vektor Richtung [code]to[/code] für den festen Betrag "
@@ -64351,7 +65869,7 @@ msgstr ""
#: doc/classes/Theme.xml
#, fuzzy
msgid ""
-"Clears the constant at [code]name[/code] if the theme has [code]node_type[/"
+"Clears the constant at [code]name[/code] if the theme has [code]theme_type[/"
"code]."
msgstr ""
"Bewegt den Vektor Richtung [code]to[/code] für den festen Betrag "
@@ -64360,7 +65878,7 @@ msgstr ""
#: doc/classes/Theme.xml
#, fuzzy
msgid ""
-"Clears the [Font] at [code]name[/code] if the theme has [code]node_type[/"
+"Clears the [Font] at [code]name[/code] if the theme has [code]theme_type[/"
"code]."
msgstr ""
"Bewegt den Vektor Richtung [code]to[/code] für den festen Betrag "
@@ -64369,7 +65887,8 @@ msgstr ""
#: doc/classes/Theme.xml
#, fuzzy
msgid ""
-"Clears the icon at [code]name[/code] if the theme has [code]node_type[/code]."
+"Clears the icon at [code]name[/code] if the theme has [code]theme_type[/"
+"code]."
msgstr ""
"Bewegt den Vektor Richtung [code]to[/code] für den festen Betrag "
"[code]delta[/code]."
@@ -64377,16 +65896,19 @@ msgstr ""
#: doc/classes/Theme.xml
#, fuzzy
msgid ""
-"Clears [StyleBox] at [code]name[/code] if the theme has [code]node_type[/"
+"Clears [StyleBox] at [code]name[/code] if the theme has [code]theme_type[/"
"code]."
msgstr ""
"Gibt [code]true[/code] zurück, wenn das Array [code]value[/code] enthält."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Clears the theme item of [code]data_type[/code] at [code]name[/code] if the "
-"theme has [code]node_type[/code]."
+"theme has [code]theme_type[/code]."
msgstr ""
+"Bewegt den Vektor Richtung [code]to[/code] für den festen Betrag "
+"[code]delta[/code]."
#: doc/classes/Theme.xml
msgid ""
@@ -64405,16 +65927,19 @@ msgstr ""
#: doc/classes/Theme.xml
#, fuzzy
msgid ""
-"Returns the [Color] at [code]name[/code] if the theme has [code]node_type[/"
+"Returns the [Color] at [code]name[/code] if the theme has [code]theme_type[/"
"code]."
msgstr ""
"Gibt [code]true[/code] zurück, wenn das Array [code]value[/code] enthält."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Returns all the [Color]s as a [PoolStringArray] filled with each [Color]'s "
-"name, for use in [method get_color], if the theme has [code]node_type[/code]."
+"name, for use in [method get_color], if the theme has [code]theme_type[/"
+"code]."
msgstr ""
+"Gibt [code]true[/code] zurück, wenn das Array [code]value[/code] enthält."
#: doc/classes/Theme.xml
msgid ""
@@ -64425,17 +65950,19 @@ msgstr ""
#: doc/classes/Theme.xml
#, fuzzy
msgid ""
-"Returns the constant at [code]name[/code] if the theme has [code]node_type[/"
+"Returns the constant at [code]name[/code] if the theme has [code]theme_type[/"
"code]."
msgstr ""
"Gibt [code]true[/code] zurück, wenn das Array [code]value[/code] enthält."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Returns all the constants as a [PoolStringArray] filled with each constant's "
-"name, for use in [method get_constant], if the theme has [code]node_type[/"
+"name, for use in [method get_constant], if the theme has [code]theme_type[/"
"code]."
msgstr ""
+"Gibt [code]true[/code] zurück, wenn das Array [code]value[/code] enthält."
#: doc/classes/Theme.xml
msgid ""
@@ -64446,16 +65973,18 @@ msgstr ""
#: doc/classes/Theme.xml
msgid ""
-"Returns the [Font] at [code]name[/code] if the theme has [code]node_type[/"
+"Returns the [Font] at [code]name[/code] if the theme has [code]theme_type[/"
"code]. If such item does not exist and [member default_font] is set on the "
"theme, the default font will be returned."
msgstr ""
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Returns all the [Font]s as a [PoolStringArray] filled with each [Font]'s "
-"name, for use in [method get_font], if the theme has [code]node_type[/code]."
+"name, for use in [method get_font], if the theme has [code]theme_type[/code]."
msgstr ""
+"Gibt [code]true[/code] zurück, wenn das Array [code]value[/code] enthält."
#: doc/classes/Theme.xml
msgid ""
@@ -64467,16 +65996,19 @@ msgstr ""
#, fuzzy
msgid ""
"Returns the icon [Texture] at [code]name[/code] if the theme has "
-"[code]node_type[/code]."
+"[code]theme_type[/code]."
msgstr ""
"Liefert die Position des Punktes bei Index [code]Punkt[/code] im Dreieck von "
"Index [code]Dreieck[/code]."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Returns all the icons as a [PoolStringArray] filled with each [Texture]'s "
-"name, for use in [method get_icon], if the theme has [code]node_type[/code]."
+"name, for use in [method get_icon], if the theme has [code]theme_type[/code]."
msgstr ""
+"Liefert die Position des Punktes bei Index [code]Punkt[/code] im Dreieck von "
+"Index [code]Dreieck[/code]."
#: doc/classes/Theme.xml
msgid ""
@@ -64487,17 +66019,19 @@ msgstr ""
#: doc/classes/Theme.xml
msgid ""
"Returns the [StyleBox] at [code]name[/code] if the theme has "
-"[code]node_type[/code].\n"
+"[code]theme_type[/code].\n"
"Valid [code]name[/code]s may be found using [method get_stylebox_list]. "
-"Valid [code]node_type[/code]s may be found using [method get_stylebox_types]."
+"Valid [code]theme_type[/code]s may be found using [method "
+"get_stylebox_types]."
msgstr ""
#: doc/classes/Theme.xml
msgid ""
"Returns all the [StyleBox]s as a [PoolStringArray] filled with each "
"[StyleBox]'s name, for use in [method get_stylebox], if the theme has "
-"[code]node_type[/code].\n"
-"Valid [code]node_type[/code]s may be found using [method get_stylebox_types]."
+"[code]theme_type[/code].\n"
+"Valid [code]theme_type[/code]s may be found using [method "
+"get_stylebox_types]."
msgstr ""
#: doc/classes/Theme.xml
@@ -64510,9 +66044,9 @@ msgstr ""
#: doc/classes/Theme.xml
msgid ""
"Returns the theme item of [code]data_type[/code] at [code]name[/code] if the "
-"theme has [code]node_type[/code].\n"
+"theme has [code]theme_type[/code].\n"
"Valid [code]name[/code]s may be found using [method get_theme_item_list] or "
-"a data type specific method. Valid [code]node_type[/code]s may be found "
+"a data type specific method. Valid [code]theme_type[/code]s may be found "
"using [method get_theme_item_types] or a data type specific method."
msgstr ""
@@ -64520,8 +66054,8 @@ msgstr ""
msgid ""
"Returns all the theme items of [code]data_type[/code] as a [PoolStringArray] "
"filled with each theme items's name, for use in [method get_theme_item] or a "
-"data type specific method, if the theme has [code]node_type[/code].\n"
-"Valid [code]node_type[/code]s may be found using [method "
+"data type specific method, if the theme has [code]theme_type[/code].\n"
+"Valid [code]theme_type[/code]s may be found using [method "
"get_theme_item_types] or a data type specific method."
msgstr ""
@@ -64536,7 +66070,7 @@ msgstr ""
msgid ""
"Returns all the theme types as a [PoolStringArray] filled with unique type "
"names, for use in other [code]get_*[/code] functions of this theme.\n"
-"[b]Note:[/b] [code]node_type[/code] has no effect and will be removed in "
+"[b]Note:[/b] [code]theme_type[/code] has no effect and will be removed in "
"future version."
msgstr ""
@@ -64558,18 +66092,23 @@ msgstr ""
#, fuzzy
msgid ""
"Returns [code]true[/code] if [Color] with [code]name[/code] is in "
-"[code]node_type[/code].\n"
-"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+"[code]theme_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]theme_type[/"
+"code]."
msgstr ""
"Gibt [code]true[/code] zurück wenn Einstellung welche durch [code]name[/"
"code]angegeben ist, existiert, ansonsten [code]false[/code]."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Returns [code]true[/code] if constant with [code]name[/code] is in "
-"[code]node_type[/code].\n"
-"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+"[code]theme_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]theme_type[/"
+"code]."
msgstr ""
+"Gibt [code]true[/code] zurück wenn Einstellung welche durch [code]name[/"
+"code]angegeben ist, existiert, ansonsten [code]false[/code]."
#: doc/classes/Theme.xml
#, fuzzy
@@ -64583,32 +66122,45 @@ msgstr ""
#, fuzzy
msgid ""
"Returns [code]true[/code] if [Font] with [code]name[/code] is in "
-"[code]node_type[/code].\n"
-"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+"[code]theme_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]theme_type[/"
+"code]."
msgstr ""
"Gibt [code]true[/code] zurück wenn Einstellung welche durch [code]name[/"
"code]angegeben ist, existiert, ansonsten [code]false[/code]."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Returns [code]true[/code] if icon [Texture] with [code]name[/code] is in "
-"[code]node_type[/code].\n"
-"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+"[code]theme_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]theme_type[/"
+"code]."
msgstr ""
+"Gibt [code]true[/code] zurück wenn Einstellung welche durch [code]name[/"
+"code]angegeben ist, existiert, ansonsten [code]false[/code]."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Returns [code]true[/code] if [StyleBox] with [code]name[/code] is in "
-"[code]node_type[/code].\n"
-"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+"[code]theme_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]theme_type[/"
+"code]."
msgstr ""
+"Gibt [code]true[/code] zurück wenn Einstellung welche durch [code]name[/"
+"code]angegeben ist, existiert, ansonsten [code]false[/code]."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Returns [code]true[/code] if a theme item of [code]data_type[/code] with "
-"[code]name[/code] is in [code]node_type[/code].\n"
-"Returns [code]false[/code] if the theme does not have [code]node_type[/code]."
+"[code]name[/code] is in [code]theme_type[/code].\n"
+"Returns [code]false[/code] if the theme does not have [code]theme_type[/"
+"code]."
msgstr ""
+"Gibt [code]true[/code] zurück wenn Einstellung welche durch [code]name[/"
+"code]angegeben ist, existiert, ansonsten [code]false[/code]."
#: doc/classes/Theme.xml
#, fuzzy
@@ -64636,90 +66188,120 @@ msgid ""
msgstr ""
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Renames the [Color] at [code]old_name[/code] to [code]name[/code] if the "
-"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"theme has [code]theme_type[/code]. If [code]name[/code] is already taken, "
"this method fails."
msgstr ""
+"Gibt [code]true[/code] zurück, wenn das Array [code]value[/code] enthält."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Renames the constant at [code]old_name[/code] to [code]name[/code] if the "
-"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"theme has [code]theme_type[/code]. If [code]name[/code] is already taken, "
"this method fails."
msgstr ""
+"Gibt [code]true[/code] zurück, wenn das Array [code]value[/code] enthält."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Renames the [Font] at [code]old_name[/code] to [code]name[/code] if the "
-"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"theme has [code]theme_type[/code]. If [code]name[/code] is already taken, "
"this method fails."
msgstr ""
+"Bewegt den Vektor Richtung [code]to[/code] für den festen Betrag "
+"[code]delta[/code]."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Renames the icon at [code]old_name[/code] to [code]name[/code] if the theme "
-"has [code]node_type[/code]. If [code]name[/code] is already taken, this "
+"has [code]theme_type[/code]. If [code]name[/code] is already taken, this "
"method fails."
msgstr ""
+"Liefert die Position des Punktes bei Index [code]Punkt[/code] im Dreieck von "
+"Index [code]Dreieck[/code]."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Renames [StyleBox] at [code]old_name[/code] to [code]name[/code] if the "
-"theme has [code]node_type[/code]. If [code]name[/code] is already taken, "
+"theme has [code]theme_type[/code]. If [code]name[/code] is already taken, "
"this method fails."
msgstr ""
+"Gibt [code]true[/code] zurück, wenn das Array [code]value[/code] enthält."
#: doc/classes/Theme.xml
msgid ""
"Renames the theme item of [code]data_type[/code] at [code]old_name[/code] to "
-"[code]name[/code] if the theme has [code]node_type[/code]. If [code]name[/"
+"[code]name[/code] if the theme has [code]theme_type[/code]. If [code]name[/"
"code] is already taken, this method fails."
msgstr ""
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Sets the theme's [Color] to [code]color[/code] at [code]name[/code] in "
-"[code]node_type[/code].\n"
-"Creates [code]node_type[/code] if the theme does not have it."
+"[code]theme_type[/code].\n"
+"Creates [code]theme_type[/code] if the theme does not have it."
msgstr ""
+"Gibt [code]true[/code] zurück wenn Einstellung welche durch [code]name[/"
+"code]angegeben ist, existiert, ansonsten [code]false[/code]."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Sets the theme's constant to [code]constant[/code] at [code]name[/code] in "
-"[code]node_type[/code].\n"
-"Creates [code]node_type[/code] if the theme does not have it."
+"[code]theme_type[/code].\n"
+"Creates [code]theme_type[/code] if the theme does not have it."
msgstr ""
+"Gibt [code]true[/code] zurück wenn Einstellung welche durch [code]name[/"
+"code]angegeben ist, existiert, ansonsten [code]false[/code]."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Sets the theme's [Font] to [code]font[/code] at [code]name[/code] in "
-"[code]node_type[/code].\n"
-"Creates [code]node_type[/code] if the theme does not have it."
+"[code]theme_type[/code].\n"
+"Creates [code]theme_type[/code] if the theme does not have it."
msgstr ""
+"Gibt [code]true[/code] zurück wenn Einstellung welche durch [code]name[/"
+"code]angegeben ist, existiert, ansonsten [code]false[/code]."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Sets the theme's icon [Texture] to [code]texture[/code] at [code]name[/code] "
-"in [code]node_type[/code].\n"
-"Creates [code]node_type[/code] if the theme does not have it."
+"in [code]theme_type[/code].\n"
+"Creates [code]theme_type[/code] if the theme does not have it."
msgstr ""
+"Gibt [code]true[/code] zurück wenn Einstellung welche durch [code]name[/"
+"code]angegeben ist, existiert, ansonsten [code]false[/code]."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Sets theme's [StyleBox] to [code]stylebox[/code] at [code]name[/code] in "
-"[code]node_type[/code].\n"
-"Creates [code]node_type[/code] if the theme does not have it."
+"[code]theme_type[/code].\n"
+"Creates [code]theme_type[/code] if the theme does not have it."
msgstr ""
+"Gibt [code]true[/code] zurück wenn Einstellung welche durch [code]name[/"
+"code]angegeben ist, existiert, ansonsten [code]false[/code]."
#: doc/classes/Theme.xml
+#, fuzzy
msgid ""
"Sets the theme item of [code]data_type[/code] to [code]value[/code] at "
-"[code]name[/code] in [code]node_type[/code].\n"
+"[code]name[/code] in [code]theme_type[/code].\n"
"Does nothing if the [code]value[/code] type does not match [code]data_type[/"
"code].\n"
-"Creates [code]node_type[/code] if the theme does not have it."
+"Creates [code]theme_type[/code] if the theme does not have it."
msgstr ""
+"Gibt [code]true[/code] zurück wenn Einstellung welche durch [code]name[/"
+"code]angegeben ist, existiert, ansonsten [code]false[/code]."
#: doc/classes/Theme.xml
msgid ""
@@ -67975,21 +69557,25 @@ msgid "Makes subsequent actions with the same name be merged into one."
msgstr ""
#: modules/upnp/doc_classes/UPNP.xml
-msgid "UPNP network functions."
+msgid ""
+"Universal Plug and Play (UPnP) functions for network device discovery, "
+"querying and port forwarding."
msgstr ""
#: modules/upnp/doc_classes/UPNP.xml
msgid ""
-"Provides UPNP functionality to discover [UPNPDevice]s on the local network "
-"and execute commands on them, like managing port mappings (port forwarding) "
-"and querying the local and remote network IP address. Note that methods on "
-"this class are synchronous and block the calling thread.\n"
-"To forward a specific port:\n"
+"This class can be used to discover compatible [UPNPDevice]s on the local "
+"network and execute commands on them, like managing port mappings (for port "
+"forwarding/NAT traversal) and querying the local and remote network IP "
+"address. Note that methods on this class are synchronous and block the "
+"calling thread.\n"
+"To forward a specific port (here [code]7777[/code], note both [method "
+"discover] and [method add_port_mapping] can return errors that should be "
+"checked):\n"
"[codeblock]\n"
-"const PORT = 7777\n"
"var upnp = UPNP.new()\n"
-"upnp.discover(2000, 2, \"InternetGatewayDevice\")\n"
-"upnp.add_port_mapping(port)\n"
+"upnp.discover()\n"
+"upnp.add_port_mapping(7777)\n"
"[/codeblock]\n"
"To close a specific port (e.g. after you have finished using it):\n"
"[codeblock]\n"
@@ -68002,7 +69588,7 @@ msgid ""
"or failure).\n"
"signal upnp_completed(error)\n"
"\n"
-"# Replace this with your own server port number between 1025 and 65535.\n"
+"# Replace this with your own server port number between 1024 and 65535.\n"
"const SERVER_PORT = 3928\n"
"var thread = null\n"
"\n"
@@ -68031,7 +69617,39 @@ msgid ""
" # Wait for thread finish here to handle game exit while the thread is "
"running.\n"
" thread.wait_to_finish()\n"
-"[/codeblock]"
+"[/codeblock]\n"
+"[b]Terminology:[/b] In the context of UPnP networking, \"gateway\" (or "
+"\"internet gateway device\", short IGD) refers to network devices that allow "
+"computers in the local network to access the internet (\"wide area "
+"network\", WAN). These gateways are often also called \"routers\".\n"
+"[b]Pitfalls:[/b]\n"
+"- As explained above, these calls are blocking and shouldn't be run on the "
+"main thread, especially as they can block for multiple seconds at a time. "
+"Use threading!\n"
+"- Networking is physical and messy. Packets get lost in transit or get "
+"filtered, addresses, free ports and assigned mappings change, and devices "
+"may leave or join the network at any time. Be mindful of this, be diligent "
+"when checking and handling errors, and handle these gracefully if you can: "
+"add clear error UI, timeouts and re-try handling.\n"
+"- Port mappings may change (and be removed) at any time, and the remote/"
+"external IP address of the gateway can change likewise. You should consider "
+"re-querying the external IP and try to update/refresh the port mapping "
+"periodically (for example, every 5 minutes and on networking failures).\n"
+"- Not all devices support UPnP, and some users disable UPnP support. You "
+"need to handle this (e.g. documenting and requiring the user to manually "
+"forward ports, or adding alternative methods of NAT traversal, like a relay/"
+"mirror server, or NAT hole punching, STUN/TURN, etc.).\n"
+"- Consider what happens on mapping conflicts. Maybe multiple users on the "
+"same network would like to play your game at the same time, or maybe another "
+"application uses the same port. Make the port configurable, and optimally "
+"choose a port automatically (re-trying with a different port on failure).\n"
+"[b]Further reading:[/b] If you want to know more about UPnP (and the "
+"Internet Gateway Device (IGD) and Port Control Protocol (PCP) specifically), "
+"[url=https://en.wikipedia.org/wiki/Universal_Plug_and_Play]Wikipedia[/url] "
+"is a good first stop, the specification can be found at the [url=https://"
+"openconnectivity.org/developer/specifications/upnp-resources/upnp/]Open "
+"Connectivity Foundation[/url] and Godot's implementation is based on the "
+"[url=https://github.com/miniupnp/miniupnp]MiniUPnP client[/url]."
msgstr ""
#: modules/upnp/doc_classes/UPNP.xml
@@ -68041,22 +69659,35 @@ msgstr ""
#: modules/upnp/doc_classes/UPNP.xml
msgid ""
"Adds a mapping to forward the external [code]port[/code] (between 1 and "
-"65535) on the default gateway (see [method get_gateway]) to the "
-"[code]internal_port[/code] on the local machine for the given protocol "
-"[code]proto[/code] (either [code]TCP[/code] or [code]UDP[/code], with UDP "
-"being the default). If a port mapping for the given port and protocol "
-"combination already exists on that gateway device, this method tries to "
-"overwrite it. If that is not desired, you can retrieve the gateway manually "
-"with [method get_gateway] and call [method add_port_mapping] on it, if any.\n"
+"65535, although recommended to use port 1024 or above) on the default "
+"gateway (see [method get_gateway]) to the [code]internal_port[/code] on the "
+"local machine for the given protocol [code]proto[/code] (either [code]TCP[/"
+"code] or [code]UDP[/code], with UDP being the default). If a port mapping "
+"for the given port and protocol combination already exists on that gateway "
+"device, this method tries to overwrite it. If that is not desired, you can "
+"retrieve the gateway manually with [method get_gateway] and call [method "
+"add_port_mapping] on it, if any. Note that forwarding a well-known port "
+"(below 1024) with UPnP may fail depending on the device.\n"
+"Depending on the gateway device, if a mapping for that port already exists, "
+"it will either be updated or it will refuse this command due to that "
+"conflict, especially if the existing mapping for that port wasn't created "
+"via UPnP or points to a different network address (or device) than this "
+"one.\n"
"If [code]internal_port[/code] is [code]0[/code] (the default), the same port "
"number is used for both the external and the internal port (the [code]port[/"
"code] value).\n"
-"The description ([code]desc[/code]) is shown in some router UIs and can be "
-"used to point out which application added the mapping. The mapping's lease "
-"duration can be limited by specifying a [code]duration[/code] (in seconds). "
-"However, some routers are incompatible with one or both of these, so use "
-"with caution and add fallback logic in case of errors to retry without them "
-"if in doubt.\n"
+"The description ([code]desc[/code]) is shown in some routers management UIs "
+"and can be used to point out which application added the mapping.\n"
+"The mapping's lease [code]duration[/code] can be limited by specifying a "
+"duration in seconds. The default of [code]0[/code] means no duration, i.e. a "
+"permanent lease and notably some devices only support these permanent "
+"leases. Note that whether permanent or not, this is only a request and the "
+"gateway may still decide at any point to remove the mapping (which usually "
+"happens on a reboot of the gateway, when its external IP address changes, or "
+"on some models when it detects a port mapping has become inactive, i.e. had "
+"no traffic for multiple minutes). If not [code]0[/code] (permanent), the "
+"allowed range according to spec is between [code]120[/code] (2 minutes) and "
+"[code]86400[/code] seconds (24 hours).\n"
"See [enum UPNPResult] for possible return values."
msgstr ""
@@ -68069,8 +69700,10 @@ msgid ""
"Deletes the port mapping for the given port and protocol combination on the "
"default gateway (see [method get_gateway]) if one exists. [code]port[/code] "
"must be a valid port between 1 and 65535, [code]proto[/code] can be either "
-"[code]TCP[/code] or [code]UDP[/code]. See [enum UPNPResult] for possible "
-"return values."
+"[code]TCP[/code] or [code]UDP[/code]. May be refused for mappings pointing "
+"to addresses other than this one, for well-known ports (below 1024), or for "
+"mappings not added via UPnP. See [enum UPNPResult] for possible return "
+"values."
msgstr ""
#: modules/upnp/doc_classes/UPNP.xml
@@ -68268,16 +69901,16 @@ msgid "Unknown error."
msgstr "unbekannter Fehler."
#: modules/upnp/doc_classes/UPNPDevice.xml
-msgid "UPNP device."
-msgstr "UPNP Gerät."
+msgid "Universal Plug and Play (UPnP) device."
+msgstr ""
#: modules/upnp/doc_classes/UPNPDevice.xml
msgid ""
-"UPNP device. See [UPNP] for UPNP discovery and utility functions. Provides "
-"low-level access to UPNP control commands. Allows to manage port mappings "
-"(port forwarding) and to query network information of the device (like local "
-"and external IP address and status). Note that methods on this class are "
-"synchronous and block the calling thread."
+"Universal Plug and Play (UPnP) device. See [UPNP] for UPnP discovery and "
+"utility functions. Provides low-level access to UPNP control commands. "
+"Allows to manage port mappings (port forwarding) and to query network "
+"information of the device (like local and external IP address and status). "
+"Note that methods on this class are synchronous and block the calling thread."
msgstr ""
#: modules/upnp/doc_classes/UPNPDevice.xml
@@ -74582,6 +76215,10 @@ msgid "Flag used to mark an index array."
msgstr ""
#: doc/classes/VisualServer.xml
+msgid "Flag used to mark a compressed (half float) color array."
+msgstr ""
+
+#: doc/classes/VisualServer.xml
msgid ""
"Used to set flags [constant ARRAY_COMPRESS_NORMAL], [constant "
"ARRAY_COMPRESS_TANGENT], [constant ARRAY_COMPRESS_COLOR], [constant "
@@ -77135,7 +78772,9 @@ msgid ""
msgstr ""
#: doc/classes/WeakRef.xml
-msgid "Returns the [Object] this weakref is referring to."
+msgid ""
+"Returns the [Object] this weakref is referring to. Returns [code]null[/code] "
+"if that object no longer exists."
msgstr ""
#: modules/webrtc/doc_classes/WebRTCDataChannel.xml