A スカイボックス は、エクスペリエンスで没入感のある空の背景を作成する 6つの個々の画像で構成されたキューブです。画像が完全に一致するように設計されているとき、スカイボックスは立方体の中に入っている印象がなく、パノラマのように見えます。これにより、エクスペリエンスが実際よりも大きく感じられ、深い空間や水中環境のシミュレーションなど、あなたの雰囲気に深みが加わります。
さらに、Sky オブジェクトには、TimeOfDay または ClockTime に基づいて動的に表示、上昇、設定される天体、例えば太陽、月、および星が含まれています。
最後に、Sky オブジェクトは、ViewportFrames での反射のためのキューブマップとして使用できます。詳細は、ビューポートフレーム を参照してください。
スカイボックスの構築
自分のスカイボックス画像を作成した場合、最初にインポートして Roblox に入れなければ、スカイボックスで使用できません。各画像は、 隣接する画像のすべての縁 に沿って無縫でなければならず、「キューブ」に折り込まれるときには、隣接する画像のすべての縁にわたって無縫でなければなりません。

スカイボックスを作成するには:
新しい Sky オブジェクトを選択し、 プロパティ ウィンドウで、次の天空プロパティのそれぞれにテクスチャを割り当てます:
- SkyboxBk — スカイボックスの 後ろ の正方形。
- SkyboxDn — スカイボックスの 下 の正方形。
- SkyboxFt — スカイボックスの 正面 スクエア。
- SkyboxLf — スカイボックスの 左 正方形。
- SkyboxRt — 空箱の 右 正方形。
- SkyboxUp — スカイボックスの 上 の正方形。
天体
デフォルトでは、Sky オブジェクトには、太陽、月、星などの天体が含まれています。これらのボディは動的に表示され、上昇し、TimeOfDay または ClockTime プロパティ値に基づいて設定されます。
次のプロパティを通じて天体をカスタマイズできます:
- SunTextureId — 太陽のテクスチャを設定します。
- SunAngularSize — 太陽の相対的なサイズを度で設定します。
- MoonTextureId — 月のテクスチャを設定します。
- MoonAngularSize — 月の相対的なサイズを度数で設定します。
- StarCount — スカイボックスにある星の量を設定します。
オリенテーション
SkyboxOrientation プロパティは、スカイボックスの表面の向きを変更します。プロパティは、典型的な Vector3 順序で度値の **** を取りますが、回転は XYZ 軸のまわりで最初に適用され、次に Y 、そして次に X 、そして予測可能な複雑な動作に対する制御を可能にするために Z です。
オリエンテーションアニメーションをスクリプトする簡単な方法は、 Y 軸を回転させて水平レベルを保ち、 X と Z を固定値に設定してこの軸を傾けることです。たとえば、次のスクリプトでは、 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)
スカイボックスの向きは、すべてのプラットフォームと視覚品質レベル間でスムーズに機能する低コストの機能であることに注意してください。結果として、一部の意図的な例外には以下が含まれます:
- 空が開いた窓を通じて鏡の表面のような室内の反射で見える場合、特定の反射されたビューは回転しません。これを達成するには、高価な再レンダリングとキューブマップの結合が必要で、パフォーマンスと広範な利用性に大きな影響を与えるでしょう。
- スカイボックスの表面だけが回転します;天体はこのプロパティに影響を受けません。
- 内で を使用すると、グローバルの 値が反映されます。角度を調整することはできません。
- ダイナミッククラウド 機能は、Terrain に影響を受けません。