🌅 天空
与内置的天空与天气系统交互。

nanos world 原生集成了 Ultra Dynamic Sky,这是虚幻商城中最出色的资产包之一,它为游戏提供了动态的天空和天气解决方案!
通过 Sky 类,我们公开了它的方法,以便允许实时自定义其参数!
🎒 示例
Client/Index.lua
-- 生成一个新的 Ultra Dynamic Sky Actor
Sky.Spawn()
-- 将时间设为 16:30
Sky.SetTimeOfDay(16, 30)
🗿 静态函数
| Returns | Name | Description | |
|---|---|---|---|
ChangeWeather | 改变天气 | ||
DestroyAllSky | 从关卡中销毁所有的定向光源、天空光源、指数高度雾、体积云、天空大气、超动态天空 Actor 以及所有带有 Sun 标签的 Actor | ||
| integer, integer, integer | GetTimeOfDay | 获取当前时间 | |
| WeatherType | GetWeather | 获取当前天气 | |
| boolean | IsSpawned | 返回超动态天空是否已生成 | |
Reconstruct | 重新构建超动态天空 Actor,强制应用大部分更改 | ||
SetAnimateTimeOfDay | 设置是否为时刻开启动画 | ||
SetCloudCoverage | 云层的覆盖量,从晴空到阴天 | ||
SetContrast | 对天空材质的简单对比度提升。无法影响体积云 | ||
SetFog | 场景的雾度。此设置对雾气密度的影响会根据“雾气密度”类别的数值进行缩放 | ||
SetMoonAngle | 设置月亮角度 | ||
SetMoonGlowIntensity | 设置月亮光晕强度 | ||
SetMoonLightIntensity | 设置月亮光照强度 | ||
SetMoonPhase | 设置月相 | ||
SetMoonScale | 设置月亮大小缩放 | ||
SetMoonTexture | 设置月亮纹理 | ||
SetMoonTextureRotation | 设置月亮纹理旋转 | ||
SetMoonVerticalOffset | 设置月亮垂直偏移 | ||
SetNightBrightness | 可用于缩放夜间天空和照明的亮度 | ||
SetOverallIntensity | 着色器的整体亮度 | ||
SetSkyMode | 设置天空模式 | ||
SetSunAngle | 设置太阳角度 | ||
SetSunLightIntensity | 设置太阳光照强度 | ||
SetSunScale | 设置太阳大小缩放 | ||
SetTimeOfDay | 设置当前时间 | ||
SetVolumetricCloudColor | 设置体积云颜色 | ||
| boolean | Spawn | 将所有天空/太阳 Actor 替换为超动态天空 Actor,以便能够使用此页面中的函数 |
Moderate

ChangeWeather
改变天气
Sky.ChangeWeather(weather, transition_time)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| WeatherType | weather | Required parameter | 要改变到的天气类型 |
| float | transition_time | Required parameter | 完全渐变到新天气所需的时间 |
Moderate

DestroyAllSky
从关卡中销毁所有的定向光源、天空光源、指数高度雾、体积云、天空大气、超动态天空 Actor 以及所有带有 Sun 标签的 ActorSky.DestroyAllSky()
Moderate

GetTimeOfDay
获取当前时间
local hours, minutes, seconds = Sky.GetTimeOfDay()
See also SetTimeOfDay.
Moderate

GetWeather
获取当前天气
local ret = Sky.GetWeather()
Returns
| Type | Description |
|---|---|
| WeatherType | No description provided |
Optimal

IsSpawned
返回超动态天空是否已生成
local ret = Sky.IsSpawned(including_weather)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| boolean | including_weather | Required parameter | 是否同时检查天气 Actor |
Returns
| Type | Description |
|---|---|
| boolean | No description provided |
Slow

Reconstruct
重新构建超动态天空 Actor,强制应用大部分更改
Sky.Reconstruct()
Moderate

SetAnimateTimeOfDay
设置是否为时刻开启动画
Sky.SetAnimateTimeOfDay(animate, day_length?, night_length?)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| boolean | animate | Required parameter | 是否为时刻开启动画 |
| float or nil | day_length? | 30.0 | 从日出到日落的时间(分钟) |
| float or nil | night_length? | 15.0 | 从日落到日出的时间(分钟) |
Moderate

SetCloudCoverage
云层的覆盖量,从晴空到阴天
Sky.SetCloudCoverage(cloud_coverage)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | cloud_coverage | Required parameter | No description provided |
Moderate

SetContrast
对天空材质的简单对比度提升。无法影响体积云
Sky.SetContrast(contrast)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | contrast | Required parameter | No description provided |
Moderate

SetFog
场景的雾度。此设置对雾气密度的影响会根据“雾气密度”类别的数值进行缩放
Sky.SetFog(fog_percentage)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | fog_percentage | Required parameter | No description provided |
Moderate

SetMoonAngle
设置月亮角度
Sky.SetMoonAngle(yaw, pitch)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | yaw | Required parameter | No description provided |
| float | pitch | Required parameter | No description provided |
Moderate

SetMoonGlowIntensity
设置月亮光晕强度
Sky.SetMoonGlowIntensity(glow_intensity)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | glow_intensity | Required parameter | No description provided |
Moderate

SetMoonLightIntensity
设置月亮光照强度
Sky.SetMoonLightIntensity(intensity)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | intensity | Required parameter | No description provided |
Moderate

SetMoonPhase
设置月相
Sky.SetMoonPhase(phase)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | phase | Required parameter | 范围为 0-30 |
Moderate

SetMoonScale
设置月亮大小缩放
Sky.SetMoonScale(scale)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | scale | Required parameter | No description provided |
Slow

SetMoonTexture
设置月亮纹理
设为空可恢复默认值。设置后,必须调用Sky.Reconstruct()才能正确应用
Sky.SetMoonTexture(texture)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| Image Path | texture | Required parameter | No description provided |
Moderate

SetMoonTextureRotation
设置月亮纹理旋转
Sky.SetMoonTextureRotation(rotation)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | rotation | Required parameter | No description provided |
Moderate

SetMoonVerticalOffset
设置月亮垂直偏移
Sky.SetMoonVerticalOffset(offset)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | offset | Required parameter | No description provided |
Moderate

SetNightBrightness
可用于缩放夜间天空和照明的亮度
Sky.SetNightBrightness(brightness)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | brightness | Required parameter | No description provided |
Moderate

SetOverallIntensity
着色器的整体亮度
Sky.SetOverallIntensity(intensity)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | intensity | Required parameter | No description provided |
Moderate

SetSkyMode
设置天空模式
设置后,必须调用Sky.Reconstruct()才能正确应用
Sky.SetSkyMode(sky_mode)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| SkyMode | sky_mode | Required parameter | No description provided |
Moderate

SetSunAngle
设置太阳角度
Sky.SetSunAngle(yaw, pitch)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | yaw | Required parameter | No description provided |
| float | pitch | Required parameter | No description provided |
Moderate

SetSunLightIntensity
设置太阳光照强度
Sky.SetSunLightIntensity(intensity)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | intensity | Required parameter | No description provided |
Moderate

SetSunScale
设置太阳大小缩放
Sky.SetSunScale(radius)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| float | radius | Required parameter | No description provided |
Moderate

SetTimeOfDay
设置当前时间
Sky.SetTimeOfDay(hours, minutes, transition_time?)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| integer | hours | Required parameter | No description provided |
| integer | minutes | Required parameter | No description provided |
| float or nil | transition_time? | 0.0 | No description provided |
See also GetTimeOfDay.
Moderate

SetVolumetricCloudColor
设置体积云颜色
这仅在设置了SetSkyMode(SkyMode.VolumetricClouds)时才会应用
Sky.SetVolumetricCloudColor(color)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| Color | color | Required parameter | No description provided |
Slow

Spawn
将所有天空/太阳 Actor 替换为超动态天空 Actor,以便能够使用此页面中的函数。在内部,这会自动调用 Sky.DestroyAllSky()local ret = Sky.Spawn(spawn_weather?, find_existing?)
Parameters
| Type | Parameter | Default | Description |
|---|---|---|---|
| boolean | spawn_weather? | false | 是否生成天气 Actor(以便能够使用与天气相关的方法) |
| boolean | find_existing? | true | 是否尝试寻找地图中已生成的现有天空与天气 Actor,并改用它们的引用 |
Returns
| Type | Description |
|---|---|
| boolean | 如果地图中找到了现有的超动态天空 Actor 并使用了其引用,则返回 true;如果生成了一个新的,则返回 false |
🚀 事件
This class doesn't have own events.


