This translation is community contributed and may not be up to date. We only maintain the English version of the documentation. Read this manual in English
Defold ermöglicht dir zwar, viele Spielinhalte mit visuellen Werkzeugen wie den Editoren für Kachelkarten (tile maps) und Partikeleffekte zu erstellen, deine Spiellogik schreibst du jedoch weiterhin in einem Code-Editor. Die Spiellogik wird in der Programmiersprache Lua geschrieben, während Erweiterungen der Engine selbst in den nativen Programmiersprachen der Zielplattform geschrieben werden.
Defold verwendet Lua 5.1 und LuaJIT (je nach Zielplattform). Beim Schreiben deiner Spiellogik musst du die Sprachspezifikation dieser jeweiligen Lua-Versionen einhalten. Weitere Einzelheiten zur Arbeit mit Lua in Defold findest du in unserem Handbuch zu Lua in Defold.
Defold unterstützt Transpiler, die Lua-Code erzeugen. Wenn eine Transpiler-Erweiterung installiert ist, kannst du alternative Sprachen wie Teal verwenden, um statisch geprüften Lua-Code zu schreiben. Diese Vorschaufunktion hat Einschränkungen: Die derzeitige Transpiler-Unterstützung stellt keine Informationen über Module und Funktionen bereit, die in der Lua-Laufzeitumgebung von Defold definiert sind. Wenn du Defold-APIs wie go.animate verwenden möchtest, musst du die externen Definitionen dafür daher selbst schreiben.
Defold ermöglicht dir, die Game-Engine mit nativem Code zu erweitern, um auf plattformspezifische Funktionen zuzugreifen, die die Engine selbst nicht bereitstellt. Du kannst nativen Code auch verwenden, wenn die Leistung von Lua nicht ausreicht (ressourcenintensive Berechnungen, Bildverarbeitung usw.). Weitere Informationen findest du in unseren Handbüchern zu nativen Erweiterungen (native extensions).
Defold verfügt über einen integrierten Code-Editor, mit dem du Lua-Dateien (.lua), Defold-Skriptdateien (.script, .gui_script und .render_script) sowie alle anderen Dateien öffnen und bearbeiten kannst, deren Dateierweiterung der Editor nicht von Haus aus verarbeitet. Außerdem bietet der Editor Syntaxhervorhebung für Lua- und Skriptdateien.

Der integrierte Code-Editor zeigt beim Schreiben von Code Vorschläge zur Vervollständigung von Funktionen an:

Wenn du CTRL + Space drückst, werden zusätzliche Informationen zu Funktionen, Argumenten und Rückgabewerten angezeigt:

Der mitgelieferte Lua-Sprachserver enthält Typannotationen für die Defold-APIs. Die Vervollständigung, Informationen beim Überfahren mit dem Mauszeiger und die Diagnosefunktionen berücksichtigen Defold-Typen wie Hashwerte, URLs, Vektoren und Quaternionen sowie Funktionsargumente und Rückgabewerte. Der Editor stellt Annotationen für Spielskripte und für die editor.*-APIs bereit, die in .editor_script-Dateien verwendet werden. Wenn du den Code-Editor von Defold verwendest, benötigst du für die integrierten APIs keine separate Annotationsbibliothek.
APIs von Erweiterungen Dritter benötigen möglicherweise eigene Annotationen.
Wähle Edit ▸ Format Document/Selection oder drücke Alt + Shift + F, um den Formatierer des Sprachservers auszuführen. Wenn eine Auswahl vorhanden ist, formatiert der Editor die ausgewählten Zeilen; andernfalls formatiert er das Dokument. Dafür ist ein Sprachserver erforderlich, der den jeweiligen Formatierungsvorgang unterstützt.
Um geänderte geöffnete Dateien beim Speichern zu formatieren, aktiviere Format on save unter Preferences ▸ Code. Diese Einstellung ist standardmäßig deaktiviert und erfordert einen Sprachserver, der die Formatierung von Dokumenten unterstützt. Siehe Einstellungen für Code.
Der integrierte Code-Editor kann eine durchsuchbare Liste der Symbole in der aktuellen Codedatei anzeigen, beispielsweise Funktionen, Objekte und Variablen. Wähle View ▸ Jump to Symbol… oder drücke unter Windows und Linux Ctrl + Shift + O beziehungsweise unter macOS ⌘ Cmd + Shift + O.
Beginne zu tippen, um die Symbole mit einer unscharfen Suche zu durchsuchen. Verwende die Pfeiltasten, um durch die Ergebnisse zu navigieren und ihre Positionen im Editor in der Vorschau zu sehen. Drücke anschließend Enter, um zum ausgewählten Symbol zu springen. Drücke Esc, um das Dialogfeld zu schließen und zur vorherigen Cursor- und Scrollposition zurückzukehren.

Der integrierte Code-Editor führt mit Luacheck und dem Lua-Sprachserver eine statische Codeprüfung durch. Um Luacheck zu konfigurieren, erstelle eine Datei namens .luacheckrc im Stammverzeichnis des Projekts. Eine Liste der verfügbaren Optionen findest du auf der Seite zur Konfiguration von Luacheck. Defold verwendet die folgenden Standardeinstellungen für die Luacheck-Konfiguration:
unused_args = false -- don't warn on unused arguments (common for .script files)
max_line_length = false -- don't warn on long lines
ignore = {
"611", -- line contains only whitespace
"612", -- line contains trailing whitespace
"614" -- trailing whitespace in a comment
},
Der Code-Editor in Defold bietet die grundlegenden Funktionen, die du zum Schreiben von Code benötigst. Für anspruchsvollere Anwendungsfälle oder wenn du als erfahrener Nutzer einen bevorzugten Code-Editor hast, kannst du Defold Dateien in einem externen Editor öffnen lassen. Im Fenster Preferences auf der Registerkarte Code kannst du einen externen Editor festlegen, der zum Bearbeiten von Code verwendet werden soll.
Defold Kit ist ein Plugin für Visual Studio Code mit den folgenden Funktionen:
Weitere Informationen und die Möglichkeit, Defold Kit zu installieren, findest du im Visual Studio Marketplace.
Von der Community erstellte API-Referenzpakete sind für Dash und Zeal verfügbar.