In-Game UI-Container halten GuiObjects, die Sie in der 3D-Welt Ihres Spiels anzeigen möchten.
- Ein SurfaceGui ermöglicht das Rendern von UI-Objekten auf der Oberfläche eines Teils in der 3D-Welt und erlaubt gleichzeitig grundlegende Benutzerinteraktionen.
- Ein BillboardGui ist ein Container für UI-Objekte, die im 3D-Raum erscheinen, aber immer der Kamera zugewandt sind.
Surface UI
Ähnlich wie Decals und Textures zeigen UI-Objekte wie TextLabels und ImageLabels, die einem SurfaceGui untergeordnet sind, in die gleiche Richtung wie die Oberfläche, auf der sie sich befinden, was über die SurfaceGui.Face-Eigenschaft bearbeitet werden kann.

Um ein SurfaceGui auf einem In-Game BasePart anzuwenden, fügen Sie es einfach diesem Teil hinzu und setzen Sie die SurfaceGui.Face-Eigenschaft. Kind-UI-Objekte erscheinen dann auf dieser Fläche des übergeordneten Teils.


Alternativ können Sie das SurfaceGui in einen Container wie StarterGui einfügen und dann die Adornee-Eigenschaft auf ein beliebiges BasePart sowie die Ziel-Face setzen. Das Setzen von Adornee überschreibt die direkte Elternzuordnung und ermöglicht mehr Flexibilität bei der Platzierung, da es während der Laufzeit über ein Skript festgelegt werden kann.


Größe und Position
Die "Leinwand" eines SurfaceGui nimmt die gesamte Face des übergeordneten oder Adornee-Teils ein. Als beste Praxis wird empfohlen, Skalierungs-Werte für die Größe und Position von Kind-UI-Objekten wie ImageLabels zu verwenden. Sie können auch eine UIAspectRatioConstraint auf die Kinder des SurfaceGui anwenden, um das gewünschte Seitenverhältnis unabhängig von der Größe der Fläche beizubehalten.
Okklusionsmodus
Die AlwaysOnTop-Eigenschaft bestimmt, ob das SurfaceGui über 3D-Inhalten gerendert wird oder von diesen verdeckt wird. Wenn sie auf false (Standard) gesetzt ist, rendert das SurfaceGui wie andere 3D-Inhalte und wird von anderen 3D-Objekten verdeckt. Wenn sie auf true gesetzt ist, wird es immer über 3D-Inhalten gerendert und wird nicht von Helligkeit/Licht in der 3D-Umgebung beeinflusst.
Helligkeit und Lichtbeeinflussung
Brightness und LightInfluence arbeiten zusammen, um zu bestimmen, wie Umgebungslicht den UI-Inhalt des SurfaceGui beeinflusst.
Brightness bestimmt den Faktor, um den emittiertes Licht in einem Bereich von 0 bis 1000 skaliert wird, sodass Sie das SurfaceGui an seine Umgebung anpassen können. Zum Beispiel kann ein Video-Billboard in einem dunklen Raum durch Erhöhen von Brightness auf 10 aufgehellt werden.
LightInfluence steuert, wie stark das SurfaceGui von der Beleuchtung im Spiel beeinflusst wird, in einem Bereich von 0 bis 1. Wenn dies auf 1 gesetzt ist, hat die umgebende Beleuchtung die vollständige Kontrolle über das Erscheinungsbild, während das Setzen auf 0 bedeutet, dass die Beleuchtung keinen Einfluss hat.

Sichtbarkeit in der Entfernung
MaxDistance steuert, wie weit vom Kamera entfernt das SurfaceGui angezeigt wird, bevor es das Rendern stoppt. Ein Wert von 0 bedeutet, dass es keine Begrenzung gibt und es unendlich weit gerendert wird. Der Standardwert von 1000 funktioniert in den meisten Fällen gut.
Für SurfaceGuis, die im Freien erscheinen, wird empfohlen, dass MaxDistance hoch genug ist, um sicherzustellen, dass die UI des Containers auf dem Bildschirm ausreichend klein ist, wenn sie erscheint oder verschwindet, um den plötzlichen Pop-in/out-Effekt zu minimieren.
Anzeige-Reihenfolge
Wenn mehrere SurfaceGui-Container auf derselben Fläche existieren, können Sie sie durch den Z-Index über ihre ZOffset-Eigenschaft schichten (das Ändern dieser Eigenschaft hebt den Container visuell nicht von der Oberfläche ab oder senkt ihn).
Billboard UI
Der BillboardGui-Container zeigt UI-Objekte im 3D-Raum an, aber im Gegensatz zu SurfaceGui sind die Kinder eines BillboardGui immer der Kamera zugewandt. Dieser Container ist nützlich, um frontale Informationen über In-Game-Objekten wie Gesundheitsanzeigen oder Namen über Spielercharakteren, Markierungen zur Führung von Spielern zu einem Objekt in der 3D-Welt und mehr anzuzeigen.

Um ein BillboardGui mit einem In-Game BasePart oder Attachment zu verknüpfen, fügen Sie es einfach diesem Teil oder Anhang hinzu und passen Sie, falls gewünscht, seine Größe/Position an.


Alternativ können Sie das BillboardGui in einen Container wie StarterGui einfügen und dann die Adornee-Eigenschaft auf ein beliebiges BasePart oder Attachment setzen. Diese Methode bietet mehr Flexibilität bei der Platzierung, da Adornee während der Laufzeit über ein Skript festgelegt werden kann, um beispielsweise ein BillboardGui über dem Kopf von Spielercharakteren während der Laufzeit zu platzieren.
Größe und Position
Für die Größe von Billboards setzen die Skalierungs-Komponenten der Size-Eigenschaft die Größe des Billboards in 3D-Raum. Zum Beispiel bildet eine Einstellung von {10, 0},{2, 0} (UDim2.fromScale(10, 2)) ein Billboard mit einem 10:2-Seitenverhältnis, das größer oder kleiner wird, je nach Entfernung zur Kamera.
Für die Positionierung verschiebt die StudsOffset-Eigenschaft die Billboard-Leinwand auf der X-Achse (links/rechts), Y-Achse (hoch/runter) und Z-Achse (vorne/hinten) relativ zur Kamera.
Okklusionsmodus
Die AlwaysOnTop-Eigenschaft bestimmt, ob das BillboardGui über 3D-Inhalten gerendert wird oder von diesen verdeckt wird. Wenn sie auf false (Standard) gesetzt ist, rendert das BillboardGui wie andere 3D-Inhalte und wird von anderen 3D-Objekten verdeckt. Wenn sie auf true gesetzt ist, wird es immer über 3D-Inhalten gerendert und wird nicht von Helligkeit/Licht in der 3D-Umgebung beeinflusst.
Helligkeit und Lichtbeeinflussung
Brightness und LightInfluence arbeiten zusammen, um zu bestimmen, wie Umgebungslicht den UI-Inhalt des BillboardGui beeinflusst.
Brightness bestimmt den Faktor, um den emittiertes Licht in einem Bereich von 0 bis 1000 skaliert wird, sodass Sie das BillboardGui an seine Umgebung anpassen können. Zum Beispiel kann ein Video-Billboard in einem dunklen Raum durch Erhöhen von Brightness auf 10 aufgehellt werden.
LightInfluence steuert, wie stark das BillboardGui von der Beleuchtung im Spiel beeinflusst wird, in einem Bereich von 0 bis 1. Wenn dies auf 1 gesetzt ist, hat die umgebende Beleuchtung die vollständige Kontrolle über das Erscheinungsbild, während das Setzen auf 0 bedeutet, dass die Beleuchtung keinen Einfluss hat.

Sichtbarkeit in der Entfernung
MaxDistance steuert, wie weit von der Kamera das BillboardGui angezeigt wird, bevor es das Rendern stoppt. Ein Wert von 0 oder inf (Standard) bedeutet, dass es keine Begrenzung gibt und es unendlich weit gerendert wird.