Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
Nodes und Szenen
In Überblick über Godots Schlüsselkonzepte haben wir gesehen, dass ein Godot-Spiel ein Baum von Szenen ist und dass jede Szene ein Baum von Nodes ist. In dieser Lektion erklären wir ein wenig mehr über sie. Sie werden auch Ihre erste Szene erstellen.
Nodes
Nodes sind die grundlegenden Bausteine Ihres Spiels. Sie sind wie die Zutaten in einem Rezept. Es gibt Dutzende von Arten, die ein Bild anzeigen, einen Sound abspielen, eine Kamera darstellen und vieles mehr.
Alle Nodes weisen die folgenden Merkmale auf:
Ein Name.
Bearbeitbare Propertys.
Sie erhalten Callbacks, um sich in jedem Frame zu aktualisieren.
Sie können um neue Propertys und Funktionen erweitert werden.
Sie können einem anderen Node als Child hinzugefügt werden.
The last characteristic is important. Together, nodes form a tree, which is a powerful feature to organize projects. Since different nodes have different functions, combining them produces more complex behavior. As we saw before, you can build a playable character that the camera follows using a CharacterBody2D node, a Sprite2D node, a Camera2D node, and a CollisionShape2D node.
Szenen
Wenn Sie Nodes in einem Baum organisieren, wie unseren Charakter, nennen wir dieses Konstrukt eine Szene. Nach dem Speichern funktionieren Szenen wie neue Node-Typen im Editor, wo Sie sie als Child eines bestehenden Nodes hinzufügen können. In diesem Fall erscheint die Instanz der Szene als ein einzelner Node, dessen innerer Zustand ausgeblendet ist.
Mit Szenen können Sie den Code Ihres Spiels strukturieren, wie Sie wollen. Sie können Nodes zusammenstellen, um benutzerdefinierte und komplexe Node-Typen zu erstellen, wie z.B. eine Spielcharakter, der läuft und springt, einen Lebensbalken, eine Truhe, mit der Sie interagieren können, und vieles mehr.
Der Godot-Editor ist im Wesentlichen ein Szeneneditor. Er verfügt über eine Vielzahl von Tools zur Bearbeitung von 2D- und 3D-Szenen sowie von Benutzeroberflächen. Ein Godot-Projekt kann so viele dieser Szenen enthalten, wie Sie benötigen. Die Engine benötigt nur eine als Hauptszene Ihrer Anwendung. Dies ist die Szene, die Godot zuerst lädt, wenn Sie oder ein Spieler das Spiel starten.
Zusätzlich zu ihrer Funktion als Nodes haben Szenen die folgenden Eigenschaften:
Sie haben immer einen Root-Node, wie der „Spieler“ in unserem Beispiel.
Sie können auf Ihrem lokalen Laufwerk gespeichert und später geladen werden.
Es können so viele Instanzen einer Szene erstellt werden, wie Sie möchten. Sie könnten fünf oder zehn Charaktere in Ihrem Spiel haben, die aus Ihrer Charakter-Szene erstellt wurden.
Erstellen der ersten Szene
Lassen Sie uns unsere erste Szene mit einem einzelnen Node erstellen. Dazu müssen Sie zunächst ein neues Projekt erstellen. Nachdem Sie das Projekt geöffnet haben, sollten Sie einen leeren Editor sehen.
In an empty scene, the Scene dock on the left shows several options to add a root node quickly. adds a Node2D node, adds a Node3D node, and adds a Control node. These presets are here for convenience; they are not mandatory. lets you select any node to be the root node. In an empty scene, is equivalent to pressing the button at the top-left of the Scene dock, which usually adds a new node as a child of the currently selected node.
Wir werden ein einzelnes Label-Node zu unserer Szene hinzufügen. Seine Funktion ist es, Text auf dem Bildschirm zu zeichnen.
Press the button or to create a root node.
The Create New Node dialog opens, showing the long list of available nodes.
Wählen Sie den Label-Node. Sie können seinen Namen eingeben, um die Liste zu filtern.
Click on the Label node to select it and click the button at the bottom of the window.
Es passiert viel, wenn Sie den ersten Node einer Szene hinzufügen. Die Szene wechselt in den 2D-Viewport, da Label ein 2D-Nodetyp ist. Das Label erscheint, ausgewählt, in der oberen linken Ecke des Viewports. Der Node erscheint im Szenendock auf der linken Seite, und die Propertys des Nodes erscheinen im Inspektor-Dock auf der rechten Seite.
Ändern der Propertys eines Nodes
The next step is to change the Label's Text property. Let's change it to "Hello World".
Head to the Inspector dock on the right of the viewport. Click inside the field below the Text property and type "Hello World".
Sie sehen, wie der Text im Viewport gezeichnet wird, während Sie tippen.
Siehe auch
Sie können jede im Inspektor aufgeführte Property bearbeiten, wie wir es mit dem Text getan haben. Eine vollständige Referenz des Inspektor-Docks finden Sie unter Inspector Dock.
Sie können Ihr Label-Node im Viewport verschieben, indem Sie das Verschiebungs-Tool in der Toolbar auswählen.
Während das Label ausgewählt ist, ziehen Sie es per Drag&Drop an eine beliebige Stelle im Viewport, um es in die Mitte der durch das Rechteck begrenzten Ansicht zu verschieben.
Ausführen der Szene
Alles ist bereit, die Szene abzuspielen! Drücken Sie den -Button oben rechts auf dem Bildschirm oder drücken Sie F6 (Cmd + R unter macOS).
A popup invites you to save the scene, which is required to run it. Click the
button in the file browser to save it as label.tscn.
Bemerkung
The Save Scene As dialog, like other file dialogs in the editor, only
allows you to save files inside the project. The res:// path at
the top of the window represents the project's root directory and
stands for "resource path". For more information about file paths in
Godot, see Dateisystem.
Die Anwendung sollte sich in einem neuen Fenster öffnen und den Text "Hello World" anzeigen.
Schließen Sie das Fenster oder drücken Sie F8 (Cmd + . unter macOS), um die laufende Szene zu beenden.
Siehe auch
See Game embedding for more information about the Game window that appears when running the project.
Die Hauptszene festlegen
To run our test scene, we used the button. Another button next to it, , allows you to set and run the project's main scene. You can also press F5 (Cmd + B on macOS) to do so.
Bemerkung
Das Ausführen der Hauptszene eines Projekts ist etwas anderes, als die aktuelle Szene auszuführen. Falls Sie auf unerwartetes Verhalten stoßen, überprüfen Sie, ob Sie die korrekte Szene ausführen.
Ein Popup-Fenster erscheint und lädt Sie ein, die Hauptszene auszuwählen.
Click the button, and in the file dialog that appears, double
click on label.tscn.
Die Demo sollte wieder laufen. In Zukunft wird Godot jedes Mal, wenn Sie das Projekt ausführen, diese Szene als Startpunkt verwenden.
Bemerkung
The editor saves the main scene's path in a project.godot file in your project's directory. While you can edit this text file directly to change project settings, you can also use the window to do so. For more information, see Projekteinstellungen.
Im nächsten Teil werden wir ein weiteres Schlüsselkonzept in Spielen und in Godot besprechen: das Erstellen von Instanzen einer Szene.