Skyboxy

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

Skybox to sześcian składający się z sześciu indywidualnych obrazów, które tworzą immersywne tło nieba w grze. Gdy obrazy są zaprojektowane, aby były idealnie dopasowane do siebie, skybox wydaje się panoramiczny, bez wrażenia przebywania wewnątrz sześcianu. To sprawia, że gry wydają się większe, niż są w rzeczywistości, i dodaje głębi do Twojej atmosfery, na przykład symulując głęboki kosmos lub podwodne środowiska.

Dodatkowo, obiekt Sky zawiera ciała niebieskie, takie jak słońce, księżyc i gwiazdy, które dynamicznie pojawiają się, wschodzą i zachodzą w zależności od wartości właściwości TimeOfDay lub ClockTime.

Na koniec obiekt Sky może być używany jako sześcian dla odbić w ViewportFrames. Po szczegóły zobacz ramki viewport.

Budowa skyboxu

Jeśli stworzyłeś własne obrazy skyboxu, musisz najpierw je zaimportować do Roblox, zanim będziesz mógł ich użyć w skyboxie. Każdy obraz musi być bezszwowy na wszystkich krawędziach sąsiednich obrazów, gdy jest "złożony" w sześcian.


Aby utworzyć skybox:

  1. W oknie Eksplorator wstaw obiekt Sky do usługi Lighting.

  2. Wybierz nowy obiekt Sky, a następnie w oknie Właściwości przypisz teksturę do każdej z poniższych właściwości nieba:

    • SkyboxBk — Kwadrat tylny skyboxu.
    • SkyboxDn — Kwadrat dolny skyboxu.
    • SkyboxFt — Kwadrat przedni skyboxu.
    • SkyboxLf — Kwadrat lewy skyboxu.
    • SkyboxRt — Kwadrat prawy skyboxu.
    • SkyboxUp — Kwadrat górny skyboxu.

Ciała niebieskie

Domyślnie obiekt Sky zawiera ciała niebieskie, takie jak słońce, księżyc i gwiazdy. Te ciała dynamicznie pojawiają się, wschodzą i zachodzą w zależności od wartości właściwości TimeOfDay lub ClockTime.

Możesz dostosować ciała niebieskie za pomocą następujących właściwości:

Orientacja

Właściwość SkyboxOrientation zmienia orientację powierzchni skyboxu. Właściwość ta przyjmuje Vector3 wartości kątów w typowym porządku XYZ, ale obrót jest stosowany najpierw wokół osi Y, następnie X, a na końcu Z, aby umożliwić przewidywalną kontrolę nad złożonymi ruchami.

Łatwym sposobem na zaprogramowanie animacji orientacji jest obrót wokół osi Y (utrzymując poziom horyzontu), a następnie przechylenie tej osi, ustawiając X i Z na stałą wartość. Następujący skrypt, na przykład, animuje oś Y dla obrotu, podczas gdy utrzymuje stałe nachylenie 30° na osi X.


local Lighting = game:GetService("Lighting")
local RunService = game:GetService("RunService")
local sky = Lighting:FindFirstChild("Sky")
local ROTATION_SPEED = 5 -- W stopniach na sekundę
RunService.Heartbeat:Connect(function(deltaTime)
sky.SkyboxOrientation = Vector3.new(
30,
(sky.SkyboxOrientation.Y + ROTATION_SPEED * deltaTime) % 360,
0
)
end)

Należy pamiętać, że orientacja skyboxu jest funkcją o niskim koszcie, która działa bezproblemowo na wszystkich platformach i poziomach jakości wizualnej. W rezultacie niektóre celowe wyjątki obejmują:

  • Jeśli niebo jest widoczne w odbiciach wewnętrznych, takich jak powierzchnia lustra przez otwarte okno, to konkretne odzwierciedlone widok nie będzie obracane. Osiągnięcie tego wymagałoby kosztownego ponownego renderowania i konwolucji sześcianów, co znacznie wpłynęłoby na wydajność i szeroką dostępność.
  • Tylko powierzchnie skyboxu się obracają; ciała niebieskie nie są dotknięte przez tę właściwość.
  • Jeśli używasz Sky w ViewportFrame, to odzwierciedli globalne wartości SkyboxOrientation. Nie możesz dostosować kąta dla ViewportFrame.
  • Funkcja dynamicznych chmur w ramach Terrain nie jest w nią zaangażowana.
©2026 Roblox Corporation. Nazwa Roblox, logo Roblox oraz hasło „Powering Imagination” należą do naszych zarejestrowanych i niezarejestrowanych znaków towarowych na terenie Stanów Zjednoczonych oraz w innych krajach.