Obiekt Texture to obraz, który można umieścić na dowolnej stronie części lub unii, który powtarza się zarówno w poziomie, jak i w pionie na powierzchni. W przeciwieństwie do tego, obiekt Decal to obraz, który rozciąga się w celu dopasowania do obszaru powierzchni części lub unii. Po dodaniu obiektu Texture lub Decal do części lub unii, możesz:
Zmienić właściwość Color3 tekstury lub naklejki, aby ustawić odcień koloru używając kodów kolorów RGB.
Zmienić właściwość Transparency tekstury lub naklejki na wartość pomiędzy domyślną 0 (całkowicie widoczna) a 1 (niewidoczna).
W przypadku tekstury, ustawić jej skalę i przesunięcie.




Tworzenie tekstur lub naklejek
Aby stworzyć teksturę lub naklejkę, musisz dodać obiekt Texture lub Decal do części lub unii. Możesz importować obrazy jako tekstury i naklejki do Studio do użycia między doświadczeniami oraz dystrybuować je do Sklepu Twórcy. Po zaimportowaniu obrazu, Studio przypisuje mu unikalny identyfikator zasobu.
Aby dodać teksturę lub naklejkę do części lub unii:
W oknie Eksploratora dodaj obiekt Texture lub Decal do części lub unii. Pusty obiekt tekstury lub naklejki wyświetli się na części lub unii z pomarańczowym obrysowaniem.
W oknie Właściwości przejdź do właściwości Face i wybierz stronę (Top, Bottom, Front, Back, Left, lub Right).
- OPCJONALNEAby pomóc w wyborze odpowiedniej strony, kliknij prawym przyciskiem myszy na część/unię i wybierz Pokaż wskaźnik orientacji. Wyświetli to okrąg 🅕, niebieską linię przymocowaną do przedniej strony obiektu oraz zieloną strzałkę wskazującą kierunek górnej strony obiektu.

Wybierz właściwość ColorMapContent i zastosuj obraz poprzez dowolną z poniższych metod:
- Wybierz dowolną teksturę lub naklejkę, które przesłałeś wcześniej.
- Wprowadź identyfikator zasobu w polu.
- OPCJONALNEUstaw właściwość Transparency na dowolną wartość między domyślną 0 (całkowicie widoczna) a 1 (niewidoczna).

Transparency: 0 
Transparency: 0.6
Dostosowywanie tekstur
W przeciwieństwie do naklejek, tekstury oferują dodatkową funkcjonalność do skalowania, przesuwania i animowania obrazu źródłowego.
Skala tekstur
Rozmiar części nie wpływa na teksturę. Zamiast tego skalowanie części jedynie zwiększa lub zmniejsza liczbę powtórzeń tekstury.
Właściwości StudsPerTileU oraz StudsPerTileV określają rozmiar każdego "kafelka" w studach. StudsPerTileU określa poziomy rozmiar tekstury, podczas gdy StudsPerTileV określa pionowy rozmiar tekstury.

Przesunięcie tekstur
Jeśli chcesz mieć większą kontrolę nad pozycją tekstury, przesuń teksturę, dostosowując właściwości OffsetStudsU (poziomo) oraz OffsetStudsV (pionowo). To również pomocne dla animacji.

Animowanie tekstur
Korzystając z TweenService, możesz animować właściwości tekstur, takie jak OffsetStudsU oraz StudsPerTileV, aby uzyskać animowane powierzchnie. Na przykład, jeśli zastosujesz dwie tekstury mgły do jednego pojemnika i animujesz je za pomocą następującego skryptu, możesz uzyskać efekt warstwowej ruchomej mgły.
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()
Streamowanie tekstur
Streamowanie tekstur dynamicznie ładuje tekstury na podstawie odległości i widoku kamery, co pozwala na swobodne używanie tekstur bez obaw o skalowanie na różnych urządzeniach. Silnik najpierw ładuje tekstury o podstawowej jakości, w kolejności według ich ważności, a następnie stopniowo zwiększa jakość każdej tekstury w zależności od dostępnej pamięci na urządzeniu. Streamowanie tekstur jest włączone automatycznie, więc nie musisz podejmować żadnych działań, aby z tego skorzystać.

Korzyści
- Szybsze postrzegane czasy ładowania i mniejsze pobierania: Tekstury pojawiają się prawie natychmiast w podstawowej jakości, a silnik ściąga tylko potrzebne detale, kompresując je zarówno w trakcie przesyłania, jak i w lokalnej pamięci podręcznej.
- Wyższa jakość tam, gdzie to ma znaczenie: Silnik nieprzerwanie ocenia, jak ważny jest każdy obiekt, na przykład według tego, ile miejsca zajmuje na ekranie, i wykorzystuje budżet pamięci na te tekstury, aby najważniejsze obiekty miały najwyższy detal.
- Mniej awarii z powodu braku pamięci: Ponieważ silnik pozostaje w ramach budżetu pamięci i może obniżyć jakość tekstur w przypadku niskiej pamięci, gracze są znacznie mniej narażeni na awarie z powodu skoków pamięci tekstur.
Streamowanie tekstur działa z MeshPart (z kośćmi i bez kości), SurfaceAppearance, Texture, Decal, MaterialVariant, Beam, ParticleEmitter oraz podstawowymi materiałami stosowanymi w instancjach PartOperation i BasePart.
Najlepsze praktyki
- Preferuj unikalne, indywidualne tekstury zamiast atlasów tekstur, chyba że atlas jest stosowany do łączonych części; żądanie wysokiej rozdzielczości dla jednej tekstury w atlasie ściąga cały atlas w tej rozdzielczości.
- Utrzymuj prawie jednorodną gęstość tekselową w swoich siatkach z mapowaniem UV, aby silnik mógł wybrać najlepszą rozdzielczość dla każdej tekstury.
- Kontynuuj staranne zarządzanie pamięcią tekstur dla typów instancji, którym streamowanie tekstur jeszcze nie obsługuje.


