Sebuah skybox adalah kubus yang terdiri dari enam gambar individual yang menciptakan latar belakang langit yang imersif dalam sebuah game. Ketika gambar-gambar dirancang agar saling sejajar dengan sempurna, skybox tampak panoramik tanpa kesan berada di dalam kubus. Ini membuat permainan terasa lebih besar daripada yang sebenarnya, dan menambah kedalaman pada atmosfer Anda, seperti mensimulasikan ruang angkasa yang dalam atau lingkungan bawah air.
Selain itu, objek Sky menyertakan benda-benda langit seperti matahari, bulan, dan bintang yang muncul, terbit, dan terbenam secara dinamis berdasarkan TimeOfDay atau ClockTime.
Akhirnya, objek Sky dapat digunakan sebagai cubemap untuk refleksi dalam ViewportFrames. Untuk detail lebih lanjut, lihat viewport frames.
Konstruksi Skybox
Jika Anda telah membuat gambar skybox Anda sendiri, Anda harus terlebih dahulu mengimpor gambar tersebut ke Roblox sebelum Anda dapat menggunakannya dalam skybox. Setiap gambar harus seamless di semua tepi gambar tetangga saat "dilipat" menjadi kubus.

Untuk membuat skybox:
Pilih objek Sky yang baru, lalu di jendela Properties, tetapkan tekstur untuk setiap salah satu properti langit berikut:
- SkyboxBk — Kotak belakang dari skybox.
- SkyboxDn — Kotak bawah dari skybox.
- SkyboxFt — Kotak depan dari skybox.
- SkyboxLf — Kotak kiri dari skybox.
- SkyboxRt — Kotak kanan dari skybox.
- SkyboxUp — Kotak atas dari skybox.

Benda-benda Langit
Secara default, objek Sky mencakup benda-benda langit seperti matahari, bulan, dan bintang. Benda-benda ini muncul, terbit, dan terbenam secara dinamis berdasarkan nilai properti TimeOfDay atau ClockTime.
Anda dapat menyesuaikan benda-benda langit melalui properti berikut:
- SunTextureId — Mengatur tekstur matahari.
- SunAngularSize — Mengatur ukuran relatif matahari dalam derajat.
- MoonTextureId — Mengatur tekstur bulan.
- MoonAngularSize — Mengatur ukuran relatif bulan dalam derajat.
- StarCount — Mengatur jumlah bintang dalam skybox.
Orientasi
Properti SkyboxOrientation mengubah orientasi permukaan skybox. Properti ini mengambil Vector3 dari nilai derajat dalam urutan XYZ yang biasa, tetapi rotasi diterapkan terlebih dahulu di sekitar sumbu Y, kemudian X, dan kemudian Z untuk memungkinkan kontrol yang dapat diprediksi atas gerakan yang kompleks.
Cara yang mudah untuk membuat animasi orientasi adalah dengan memutar di sekitar sumbu Y (menjaga horizon tetap level), lalu miringkan sumbu ini dengan mengatur X dan Z ke nilai tetap. Skrip berikut, misalnya, menganimasikan sumbu Y untuk berputar sambil menjaga kemiringan 30° yang konsisten pada sumbu X.
local Lighting = game:GetService("Lighting")
local RunService = game:GetService("RunService")
local sky = Lighting:FindFirstChild("Sky")
local ROTATION_SPEED = 5 -- Dalam derajat per detik
RunService.Heartbeat:Connect(function(deltaTime)
sky.SkyboxOrientation = Vector3.new(
30,
(sky.SkyboxOrientation.Y + ROTATION_SPEED * deltaTime) % 360,
0
)
end)
Perhatikan bahwa orientasi skybox adalah fitur biaya rendah yang bekerja dengan mulus di semua platform dan tingkat kualitas visual. Sebagai hasilnya, beberapa pengecualian yang disengaja termasuk:
- Jika langit terlihat dalam refleksi dalam ruangan seperti permukaan cermin melalui jendela terbuka, tampilan yang dipantulkan tersebut tidak akan diputar. Mencapai ini akan memerlukan re-rendering dan konvolusi cubemap yang mahal yang akan berdampak signifikan pada kinerja dan ketersediaan yang luas.
- Hanya permukaan skybox yang berputar; benda langit tidak terpengaruh oleh properti ini.
- Jika Anda menggunakan Sky dalam sebuah ViewportFrame, itu akan mencerminkan nilai SkyboxOrientation global. Anda tidak dapat menyesuaikan sudut per ViewportFrame.
- Fitur awan dinamis di bawah Terrain tidak terpengaruh.
