Es gibt ein paar Geräte, die Widgets zur Anzeige einer benutzerdefinierten Benutzeroberfläche unterstützen. Die in der Vorlage vorgestellten Geräte zeigen die Benutzeroberfläche auf unterschiedliche und spezifische Arten an. Jeder Raum in der Vorlage hat Informationen über die dort vorgestellten Geräte und wie sie eine benutzerdefinierte Benutzeroberfläche anzeigen.
Teste die Vorlage, um die UI-Beispiele anzuzeigen.
Im Folgenden findest du eine Tabelle mit den in der Vorlage angezeigten Geräten, Links zu ihren Geräteseiten und die Nummern der Räume, in denen ein Gerät zu finden ist:
| Gerät | Raumnummer | Gerätebild |
|---|---|---|
1 | ||
1 | ||
10 | ||
HUD-Kontrollgerät (Schnellleiste) | 10 | |
3 | ||
3 | ||
3 | ||
Gesprächsgerät | 44 |
Nutzer-Widget-Typen
Fast alle Geräte in der Funktionsvorlage verwenden Benutzer-Widgets, um das HUD zu steuern und eine benutzerdefinierte Benutzeroberfläche anzuzeigen.
Während des Gameplays zeigen Nutzer-Widgets eine benutzerdefinierte Spieler-UI im HUD an, wenn ein Gerät ausgelöst wird. Geräte sind an UMG-Widgets gebunden. Das bedeutet, dass die Benutzeroberfläche aktualisiert wird und die aktualisierten Spielerinformationen anzeigt, wenn ein Spieler mit einem Gerät interagiert.
Es gibt zwei verschiedene Typen von Nutzer-Widgets, Nutzer-Widget und Modale Dialogvariante. Beide Widget-Typen können jedes der UMG-Widgets verwenden, um eine benutzerdefinierte Benutzeroberfläche zu erstellen.
Ein Nutzer-Widget ist das Standard-Widget, das bei der Erstellung einer benutzerdefinierten Benutzeroberfläche verwendet wird.
Die Modale Dialogvariante kann nur mit dem Popup-Dialog-Gerät verwendet werden.
Beispielsweise verwendet das Konversationsgerät eine Konversationsdatenbank, um die Konversations-Benutzeroberfläche zu erstellen, aber du kannst ein benutzerdefiniertes Aussehen für deine Konversations-Benutzeroberfläche mit einer Modalen Dialogvariante erstellen.
Verse UI-Dienstprogramme
Verse UI-Dienstprogramme sind eine Sammlung von Verse-gesteuerten Benutzeroberflächen-Dienstprogrammen. Diese Dienstprogramme steuern und erstellen eine Reihe verschiedener UMG-Widgets in Verse und verwenden ein Verse-Gerät, um die Benutzeroberfläche im HUD anzuzeigen.
In Verse erstellst du ein Layout mit Containern wie Overlays oder Stapelboxen, ähnlich wie du es im UMG Editor tun würdest. In diesen Containern werden Widgets wie text_block, material_block und image_block verwendet, um Text, Materialien oder Bilder einzufügen. Diese Verse-Widgets können auf Events im Spiel reagieren, und du kannst sie mit anderen Verse-Widgets verwenden.
Die Verse-Widgets werden im hinteren Bereich der zweiten Halle, im zweiten Raum zusammen mit Beispielen für jedes Widget vorgestellt. Das material_block-Widget steuert die Benutzeroberflächen-Materialien, das text_size-Widget steuert die Benutzeroberflächen-Textgröße im text_block im HUD,
und das player_input-Widget ordnet benutzerdefinierte Benutzeroberflächen-Elemente dem HUD basierend auf Tastenkombinationen zu.
Weitere Informationen zur Verwendung von Verse zur Steuerung von Widgets findest du unter Widget-Typen und in den Dokumenten unter Erstellen einer Benutzeroberfläche mit Verse.
Alle Verse-Scripts sind im Projekt Benutzeroberflächenvorlage verfügbar. Im Verse-Explorer findest du die folgenden mit Verse erstellten UI-Dateien:
materialblock_basic_device.verse
materialblock_gameplay_device.verse
textsize_device.verse
hud_keybind_demo_device.verse
Materialblock
Ein material_block wird als einer der Slots in einem benutzerdefinierten Widget verwendet, das mit Verse-Code erstellt wurde. Während des Gameplays bietet dir der material_block eine Möglichkeit, die Material-Parameter über Verse zu verändern. Damit kannst du ändern, wie das UI-Material/die Material-Instanz im HUD aussieht und sich verhält. Auf diese Weise kannst du ähnlich wie mit einem image_block eine Textur in Verse verwenden.
Ein material_block wird im Verse-Code auf verschiedene Arten verwendet:
Es bietet eine Möglichkeit, Materialparameter zu verwenden, um die Größe, das Verhalten und das Aussehen des Materials zu bestimmen und eine dynamischere Benutzeroberfläche zu erstellen.
Es kann Werte von Verse an Materialparameter übergeben, sodass deine Materialien dynamisch basierend auf dem Gameplay aktualisiert werden können.
Weitere Informationen zur Verwendung von material_block in deinen Projekten findest du im Dokument Material Block.
Textgröße
Die Eigenschaft text_size ist Teil des Widgets text_block und bietet dir die Möglichkeit, die Größe des Textes, der auf der Benutzeroberfläche eines Spielers gerendert wird, mit einem Widget text_block anzupassen.
In Verse ist text_block ein Widget-Typ, der in ein mit Verse erstelltes Widget eingefügt wird und einen Textstring rendert.
Die benutzerdefinierte text_size-Eigenschaft verwendet Verse-Code, um die folgenden Textattribute zu steuern:
Größe
Platzierung
Farbe
Spieler-Input
Spieler-Input wird verwendet, um auf Spielerdaten zu hören, die den Code darüber informieren, wo und wann Benutzeroberflächen-Steuerelemente dem HUD zugeordnet werden, basierend auf den gedrückten Schaltflächen. In UMG (Unreal Motion Graphics) funktioniert dies, wenn ein Action-Widget in einem Nutzer-Widget verwendet wird und das Erweiterte Input-Action-Feld über eine Tastenkombination mit einer Input-Action verknüpft ist.
Im Widget sind die Tastenbelegungen auf Nachladen, Schießen, Ducken und Stehen gemappt.
Wenn das Widget zum Spieler hinzugefügt wird, wird in der Vorlage das Input-Mapping in Verse hinzugefügt. Dadurch werden die Input-Actions automatisch mit diesem Spieler verknüpft, sodass das UMG-Widget (Unreal Motion Graphics) mit den richtigen Tastenbelegungen für diese Input-Action aktualisiert wird.
Um die Benutzeroberflächen-Elemente zu den Spielern zu mappen, werden die Spieler zuerst vom Verse-Code erkannt, dann wird PlayerInput verwendet, um die benutzerdefinierte Benutzeroberfläche dem HUD zuzuordnen, basierend auf den gemappten Tastenbelegungen:
Durchlauf-Mapping
Fernkampfwaffen-Mapping
Als Nächstes wird PlayerInput.AddInputMapping verwendet, um die Benutzeroberfläche des UMG-Widgets (Unreal Motion Graphics) zu den Tastenkombinationen des Spielers für das Ducken und Stehen zu mappen. Die Benutzeroberfläche wird zu dem Spieler über das abonnierte Event OnPlayerAdded gemappt. Ähnlich wird das Mapping durch das abonnierte Event OnPlayerRemoved entfernt.
UI-Beispiele
Jedes Gerät hat drei Kategorien von UI-Beispielen:
Erstellt mit Materialien.
Erstellt mit Texturen.
Erstellt mit Materialien und Texturen.
Das Betreten der Volumes neben dem Geräte-Stand löst die Anzeige der benutzerdefinierten Benutzeroberfläche aus. Die drei Beispiele zeigen nicht nur, was mit UMG möglich ist, sondern auch den Detaillierungsgrad und das Design, das du in deine eigene Benutzeroberfläche einbauen kannst. Einige Volumes verursachen Schaden und geben Kondition-Powerups. Auf diese Weise kannst du die Änderungen an der Benutzeroberfläche in Echtzeit sehen.
Alle UI-Beispiele können mit den Tutorials im Abschnitt In-Game-Benutzeroberflächen nachgebildet werden. Im Folgenden findest du eine Liste der Beispiel-UI-Designs, den Typ des Nutzer-Widgets, der zur Erstellung der Benutzeroberfläche verwendet wird, und die Tutorials, die zeigen, wie man eine ähnliche Benutzeroberfläche erstellt.
| UI-Beispiel | Widget-Typ | Tutorial |
|---|---|---|
HUD-Nachricht | ||
Nutzer-Widget | ||
Nutzer-Widget | ||
Nutzer-Widget | ||
Pop-up-Dialog | ||
Modale Dialogvariante | ||
Modale Dialogvariante | ||
Modale Dialogvariante | ||
HUD-Kontrollgerät | ||
Nutzer-Widget | ||
Nutzer-Widget | ||
Nutzer-Widget | ||
Nutzer-Widget | ||
Nutzer-Widget | ||
Nutzer-Widget | ||
Nutzer-Widget | ||
HUD-Kontrollgerät – Schnellleiste | ||
Nutzer-Widget | ||
Nutzer-Widget | ||
Nutzer-Widget | ||
Nutzer-Widget | ||
Wertersteller | ||
Nutzer-Widget | ||
Nutzer-Widget | ||
Nutzer-Widget | ||
Geschicklichkeitsinteraktion | ||
Nutzer-Widget | Erstellen von benutzerdefinierten Geschicklichkeitsinteraktionen | |
Nutzer-Widget | Erstellen von benutzerdefinierten Geschicklichkeitsinteraktionen | |
Nutzer-Widget | Erstellen von benutzerdefinierten Geschicklichkeitsinteraktionen | |
Konversationsgerät | ||
Gesprächsdatenbank | ||
Timer-Gerät | ||
Nutzer-Widget | ||
Nutzer-Widget | ||
Nutzer-Widget |