Skip to content

QuadGradientSky

概览

字段
KindUnit · 单位 Unit
Realmcommon

继承关系

  • Unit(4 属性 / 25 函数 / 6 事件)
    • BaseSky(1 属性)
      • [QuadGradientSky](12 属性)

继承成员

2 个来源 / 5 属性 / 25 函数 / 6 事件

四色渐变天空是一种通过天顶、偏上、偏下、天底四层颜色和高度定义天空渐变效果的组件。它允许调整各层颜色、高度位置以及层间过渡柔度,并支持整体旋转。常用于营造丰富的天空氛围,替代单一颜色或简单渐变。

适用场景

在需要自定义天空渐变效果的场景中,通过创建 QuadGradientSky 实例并设置其四层颜色与高度,可以快速实现从头顶到地平线的多色过渡。例如在测试环境中动态修改颜色和柔度来验证渲染效果。

使用要点

使用 game:CreateUnit("QuadGradientSky", {}) 创建实例,并将其 Parent 设置为 LightingService。然后依次设置 ZenithColor、UpperColor、LowerColor、NadirColor 等颜色属性,以及 ZenithHeight、UpperHeight、LowerHeight、NadirHeight 等高度属性,最后可调整 UpperToZenithSoftness、LowerToUpperSoftness、NadirToLowerSoftness 控制过渡柔度。

注意事项

实例必须通过 game:CreateUnit 或 World:CreateUnit 创建,不能使用 New 方法。高度值通常在 0 到 1 之间,0 代表天顶,1 代表天底。颜色属性接受 Color,可使用 Color.New(...) 或等价的 Color(...) 构造。

代码示例

创建并配置四色渐变天空

lua
-- @runtime client
local Lighting = game:GetService("LightingService")
local sky = game:CreateUnit("QuadGradientSky", {
    ZenithColor = Color.New(24, 64, 180, 255),
    UpperColor = Color.New(80, 140, 255, 255),
    LowerColor = Color.New(255, 170, 120, 255),
    NadirColor = Color.New(32, 38, 60, 255),
    ZenithHeight = 0.2,
    UpperHeight = 0.4,
    LowerHeight = 0.7,
    NadirHeight = 1.0,
})
sky.Parent = Lighting

属性 (12)

Name类型默认值说明
ZenithColorColorColor.New(0, 55, 255, 255)设置四色渐变天空天顶区域的颜色。
UpperColorColorColor.New(30, 97, 255, 255)设置四色渐变天空偏上区域的颜色。
LowerColorColorColor.New(255, 184, 162, 255)设置四色渐变天空偏下区域的颜色。
NadirColorColorColor.New(243, 255, 245, 255)设置四色渐变天空天底区域的颜色。
ZenithHeightFloat0.0天空渐变中天顶层的高度位置,通常为 0.0 表示天顶。
UpperHeightFloat0.33天空渐变中偏上层的高度位置,取值范围通常在天顶(0)到天底(1)之间。
LowerHeightFloat0.66天空渐变中偏下层的高度位置,取值范围通常在天顶(0)到天底(1)之间。
NadirHeightFloat1.0天空渐变中天底层的高度位置,通常为 1.0 表示天底。
OrientationVector3[0.0, 0.0, 0.0]设置四色渐变天空的旋转角度。
UpperToZenithSoftnessFloat0.5控制偏上层与天顶层之间颜色过渡的柔和程度。
LowerToUpperSoftnessFloat0.5控制偏下层与偏上层之间颜色过渡的柔和程度。
NadirToLowerSoftnessFloat0.5控制天底层与偏下层之间颜色过渡的柔和程度。

关联类型