Eine Texture ist ein Bild, das Sie auf jede Fläche eines Teils oder Union platzieren können und das wiederholt wird, sowohl horizontal als auch vertikal, in der Größe der Oberfläche. Im Gegensatz dazu ist ein Decal ein Bild, das sich dehnt, um die Fläche eines Teils oder der Oberfläche einer Union anzupassen. Nachdem Sie ein Texture oder Decal-Objekt zu einem Teil oder einer Union hinzugefügt haben, können Sie:
Die Textur- oder Dekal-Eigenschaft Color3 ändern, um einen Farbton mit RGB-Farbcodes festzulegen.
Die Textur- oder Dekal-Eigenschaft Transparency auf einen Wert zwischen den Standardwerten von 0 (voll sichtbar) und 1 (unsichtbar) einstellen.
Für eine Textur die Skalierung und Versatz festlegen.




Texturen oder Decals erstellen
Um eine Textur oder ein Dekal zu erstellen, müssen Sie entweder ein Texture oder ein Decal-Objekt zu einem Teil oder einer Union hinzufügen. Sie können Bilder für Texturen und Decals in Studio importieren für die Verwendung zwischen Spielen und sie im Creator Store verteilen. Nachdem Sie das Bild importiert haben, weist Studio ihm eine eindeutige Asset-ID zu.
Um eine Textur oder ein Dekal zu einem Teil oder einer Union hinzuzufügen:
Navigieren Sie im Fenster Eigenschaften zur Eigenschaft Face und wählen Sie eine Fläche (Top, Bottom, Front, Back, Left oder Right).
- OPTIONALUm bei der Auswahl der richtigen Fläche zu helfen, klicken Sie mit der rechten Maustaste auf das Teil/Union und wählen Sie Orientierungsanzeige anzeigen. Dies zeigt einen Kreis 🅕, eine blaue Linie, die an der Vorderseite des Objekts befestigt ist, und einen grünen Pfeil, der in die Richtung der Oberseite des Objekts zeigt.

Wählen Sie die Eigenschaft ColorMapContent aus und fügen Sie ein Bild über eine der folgenden Methoden hinzu:
- Wählen Sie eine beliebige Textur oder ein Dekal aus, die/ das Sie zuvor hochgeladen haben.
- Geben Sie eine Asset-ID in das Feld ein.
- OPTIONALSetzen Sie die Transparency-Eigenschaft auf einen beliebigen Wert zwischen dem Standardwert von 0 (voll sichtbar) und 1 (unsichtbar).

Transparency: 0 
Transparency: 0.6
Texturen anpassen
Anders als Decals bieten Texturen zusätzliche Funktionalitäten zum Skalieren, Versetzen und Animieren des Quellbildes.
Texturen skalieren
Die Größe des Teils beeinflusst die Textur nicht. Stattdessen erhöht oder verringert das Skalieren eines Teils nur die Anzahl der Wiederholungen der Textur.
Die Eigenschaften StudsPerTileU und StudsPerTileV bestimmen die Größe jeder "Fliese" in Studs. StudsPerTileU bestimmt die horizontale Größe der Textur, während StudsPerTileV die vertikale Größe der Textur bestimmt.

Texturen versetzen
Wenn Sie mehr Kontrolle über die Position einer Textur wünschen, versetzen Sie die Textur, indem Sie die Eigenschaften OffsetStudsU (horizontal) und OffsetStudsV (vertikal) anpassen. Dies ist auch hilfreich für Animation.

Texturen animieren
Mit TweenService können Sie die Textur-Eigenschaften wie OffsetStudsU und StudsPerTileV tweaken, um animierte Oberflächen zu erreichen. Wenn Sie beispielsweise zwei Nebeltexturen auf einen Container anwenden und sie mit dem folgenden Skript animieren, können Sie das Aussehen von geschichtetem, sich bewegendem Nebel erreichen.
local TweenService = game:GetService("TweenService")local texture1 = script.Parent.Texture1local texture2 = script.Parent.Texture2local tweenInfo1 = TweenInfo.new(8, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut, -1)local tween1 = TweenService:Create(texture1, tweenInfo1, {OffsetStudsV=50})local tweenInfo2 = TweenInfo.new(7, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut, -1, true)local tween2 = TweenService:Create(texture2, tweenInfo2, {OffsetStudsU=50, StudsPerTileU=55, StudsPerTileV=45})tween1:Play()tween2:Play()
Texture Streaming
Texture Streaming lädt dynamisch Texturen basierend auf Abstand und Kamerablick, sodass Sie Texturen freier verwenden können, ohne sich um die Skalierung auf verschiedenen Geräten kümmern zu müssen. Die Engine lädt zunächst Texturen in Basiskqualität, in Reihenfolge der Wichtigkeit, und erhöht dann schrittweise die Qualität jeder Textur bis zur verfügbaren Speicherkapazität des Geräts. Texture Streaming ist automatisch aktiviert, sodass Sie keine Maßnahmen ergreifen müssen, um davon zu profitieren.

Vorteile
- Schnellere wahrgenommene Ladezeiten und kleinere Downloads: Texturen erscheinen fast sofort in einer Basiskualität, und die Engine lädt nur die Details, die sie benötigt, indem sie sie sowohl während der Übertragung als auch im lokalen Festplattencache komprimiert.
- Höhere Qualität, wo es zählt: Die Engine schätzt kontinuierlich, wie wichtig jedes Objekt ist, z. B. danach, wie viel Bildschirmfläche es einnimmt, und verwendet das Speicherbudget für diese Texturen, damit die markantesten Objekte die höchste Detailgenauigkeit erhalten.
- Weniger Speicherüberlaufabstürze: Da die Engine innerhalb eines Speicherbudgets bleibt und die Texturqualität senken kann, wenn der Speicher niedrig ist, ist es für Spieler viel weniger wahrscheinlich, dass sie aufgrund von Texturspeicherspitzen abstürzen.
Texture Streaming funktioniert mit MeshPart (skinned und unskinned), SurfaceAppearance, Texture, Decal, MaterialVariant, Beam, ParticleEmitter und den Basismaterialien, die auf PartOperation und BasePart-Instanzen angewendet werden.
Best Practices
- Bevorzugen Sie einzigartige, individuelle Texturen gegenüber Texturatlanten, es sei denn, der Atlas wird auf batchbare Teile angewendet; das Anfordern einer hohen Auflösung für eine Textur in einem Atlas streamt den gesamten Atlas in dieser Auflösung.
- Verwenden Sie nahezu einheitliche Texeldichte in Ihren UV-gemappten Meshes, sodass die Engine die beste Auflösung für jede Textur auswählen kann.
- Verwalten Sie den Texturspeicher weiterhin sorgfältig für Instanztypen, die Texture Streaming noch nicht unterstützen.


