天空盒

*此內容是使用 AI(Beta 測試版)翻譯,可能含有錯誤。若要以英文檢視此頁面,請按一下這裡

一個 天空盒 是由六個獨立的圖片組成的立方體,在遊戲中創造出身臨其境的天空背景。當這些圖片被設計得完美對齊時,天空盒看起來像全景,沒有置身立方體內的印象。這使得遊戲感覺比實際上更大,並且增添了氛圍的深度,例如模擬深空或水下環境。

此外,Sky 物件包括如太陽、月亮和星星等天體,這些天體根據 TimeOfDayClockTime 動態出現、上升和落下。

最後,Sky 物件可以用作 ViewportFrames 中的立方體貼圖以反射。詳情請參見 視口框架

天空盒構建

如果您已經創建了自己的天空盒圖片,您必須先將它們 導入 到 Roblox,然後才能在天空盒中使用它們。每個圖片在折疊成立方體時,必須在所有相鄰圖片的邊緣上無縫連接。


要創建天空盒:

  1. Explorer 窗口中,將 Sky 物件插入到 Lighting 服務中。

  2. 選擇新的 Sky 物件,然後在 Properties 窗口中,為以下每個天空屬性分配紋理:

    • SkyboxBk — 天空盒的 方。
    • SkyboxDn — 天空盒的 方。
    • SkyboxFt — 天空盒的 方。
    • SkyboxLf — 天空盒的 方。
    • SkyboxRt — 天空盒的 方。
    • SkyboxUp — 天空盒的 方。

天體

根據預設,Sky 物件包括如太陽、月亮和星星等天體。這些天體根據 TimeOfDayClockTime 屬性值動態出現、上升和落下。

您可以通過以下屬性自定義天體:

方向

SkyboxOrientation 屬性改變天空盒表面的方向。該屬性接受一個 Vector3 的度數值,按照典型的 XYZ 順序,但旋轉是首先沿著 Y 軸應用,然後是 X,最後是 Z,以便對複雜的運動進行可預測的控制。

編寫方向動畫的一個簡單方法是圍繞 Y 軸旋轉(保持地平線水平),然後通過將 XZ 設置為固定值來傾斜這個軸。以下腳本示例動畫化了 Y 軸的旋轉,同時保持 X 軸的30°傾斜。


local Lighting = game:GetService("Lighting")
local RunService = game:GetService("RunService")
local sky = Lighting:FindFirstChild("Sky")
local ROTATION_SPEED = 5 -- 每秒度數
RunService.Heartbeat:Connect(function(deltaTime)
sky.SkyboxOrientation = Vector3.new(
30,
(sky.SkyboxOrientation.Y + ROTATION_SPEED * deltaTime) % 360,
0
)
end)

請注意,天空盒方向是一個低成本的特性,它在所有平台和視覺質量級別上都能無縫運作。結果,一些有意的例外包括:

  • 如果天空在室內反射中可見,例如通過開放窗戶的鏡面,該特定反射視圖將不會旋轉。要實現這一點需要昂貴的重新渲染和卷積立方體貼圖,這將顯著影響性能和廣泛的可用性。
  • 只有天空盒表面會旋轉;天體 不受此屬性影響。
  • 如果您在 ViewportFrame 中使用 Sky,它將反映全局的 SkyboxOrientation 值。您不能每個 ViewportFrame 調整角度。
  • Terrain 下的 動態雲 特性不受影響。
©2026 Roblox Corporation、Roblox、Roblox 標誌及 Powering Imagination 是我們在美國及其他國家地區的部分註冊與未註冊商標。