Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

Übersetzungen importieren

Spiele und Internationalisierung

Die Gaming-Community ist weder einsprachig noch monokulturell. Sie setzt sich aus vielen verschiedenen Sprachen und Kulturen zusammen - genau wie die Godot-Community! Wenn Sie den Spielern die Möglichkeit geben wollen, Ihr Spiel in ihrer Sprache zu erleben, müssen Sie unter anderem Textübersetzungen bereitstellen, die Godot durch internationalisierten Text unterstützt.

In normalen Desktop- oder Mobile-Anwendungen befindet sich internationalisierter Text normalerweise in Ressourcendateien (oder .po Dateien für GNU-Inhalte). Spiele können jedoch immens mehr Text als Anwendungen verwenden, daher müssen sie effiziente Methoden für den Umgang mit viel mehrsprachigem Text unterstützen.

Es gibt zwei Ansätze, um mehrsprachige Spiele und Anwendungen zu generieren. Beide basieren auf einem Key-Value-System. Die erste besteht darin, eine der Sprachen als Key zu verwenden (normalerweise Englisch), die zweite darin, eine bestimmte Kennung zu verwenden. Der erste Ansatz ist wahrscheinlich einfacher für die Entwicklung, wenn ein Spiel zuerst auf Englisch, später in anderen Sprachen veröffentlicht wird, aber ein Albtraum, wenn mit vielen Sprachen gleichzeitig gearbeitet wird.

Im Allgemeinen verwenden Spiele den zweiten Ansatz und für jede Zeichenfolge wird eine eindeutige ID verwendet. Auf diese Weise können Sie den Text überarbeiten, während er in andere Sprachen übersetzt wird. Die eindeutige ID kann eine Zahl, eine Zeichenfolge oder eine Zeichenfolge mit einer Nummer sein (es ist sowieso nur ein eindeutiger String).

Bemerkung

Wenn Sie ein leistungsfähigeres Dateiformat benötigen, unterstützt Godot auch das Laden von Übersetzungen im gettext .po-Format. Siehe Lokalisierung mittels gettext für Details.

Übersetzungsformat

Um das Bild zu vervollständigen und eine effiziente Unterstützung für Übersetzungen zu ermöglichen, verfügt Godot über einen speziellen Importer, der CSV-Dateien lesen kann. Die meisten Tabellenkalkulationseditoren können in dieses Format exportieren. Die einzige Voraussetzung ist, dass die Dateien eine spezielle Anordnung haben. Die CSV-Dateien müssen mit UTF-8-Codierung ohne byte order mark gespeichert werden.

CSV-Dateien müssen wie folgt aufgebaut sein:

keys

<Sprache_1>

<Sprache_2>

<Sprache_N>

KEY1

String

String

String

KEY2

String

String

String

KEYN

String

String

String

Die "lang"-Tags müssen eine Sprache repräsentieren, die eine der von der Engine unterstützten gültigen Locales sein muss. Die "KEY"-Tags müssen eindeutig sein und eine Zeichenkette universell repräsentieren (sie sind normalerweise in Großbuchstaben, um sie von anderen Zeichenketten zu unterscheiden). Diese Keys werden zur Laufzeit durch den passenden übersetzte String ersetzt. Beachten Sie, dass die Groß-/Kleinschreibung wichtig ist, "KEY1" und "Key1" sind unterschiedliche Keys. Die oberste linke Zelle wird ignoriert und kann leer bleiben oder einen beliebigen Inhalt haben. Hier ist ein Beispiel:

keys

en

es

ja

GREET

Hello, friend!

Hola, amigo!

こんにちは

ASK

How are you?

Cómo está?

元気ですか

BYE

Goodbye

Adiós

さようなら

QUOTE

"Hello" said the man.

"Hola" dijo el hombre.

「こんにちは」男は言いました

Das gleiche Beispiel wird unten als kommaseparierte reine Text-Datei gezeigt, die das Ergebnis der Bearbeitung des obigen Beispiels in einer Tabelle sein sollte. Stellen Sie beim Bearbeiten der reinen Text-Version sicher, dass alle Nachrichten, die Kommas, Zeilenumbrüche oder doppelte Anführungszeichen enthalten, in doppelte Anführungszeichen gesetzt werden, damit Kommas nicht als Trennzeichen analysiert werden, Zeilenumbrüche keine neuen Einträge erstellen und doppelte Anführungszeichen nicht als eingeschlossene Zeichen analysiert werden. Vermeiden Sie doppelte Anführungszeichen in einer Nachricht, indem Sie ihnen ein weiteres doppeltes Anführungszeichen voranstellen. Alternativ können Sie in den Import-Optionen ein anderes Trennzeichen als Komma auswählen.

keys,en,es,ja
GREET,"Hello, friend!","Hola, amigo!",こんにちは
ASK,How are you?,Cómo está?,元気ですか
BYE,Goodbye,Adiós,さようなら
QUOTE,"""Hello"" said the man.","""Hola"" dijo el hombre.",「こんにちは」男は言いました

CSV-Importer

Godot behandelt CSV-Dateien standardmäßig als Übersetzungen. Es importiert sie und erzeugt daneben eine oder mehrere komprimierte Übersetzungs-Ressourcendateien.

Beim Importieren wird die Übersetzung auch zur Liste der Übersetzungen hinzugefügt, die beim Ausführen des Spiels geladen werden sollen. Dies wird in project.godot (oder in den Projekteinstellungen) angegeben. Mit Godot können Übersetzungen auch zur Laufzeit geladen und entfernt werden.

Wählen Sie die Datei .csv und greifen Sie auf das Import-Dock zu, um Importoptionen zu definieren. Sie können die Komprimierung der importierten Übersetzungen ein- und ausschalten und das Trennzeichen wählen, das beim Parsen der CSV-Datei verwendet werden soll.

../../_images/import_csv.png

Achten Sie darauf, nach jeder Änderung dieser Optionen auf Neuimport zu klicken.