Sky · 01

安装与基础设置

把 UDS 放进关卡要做哪些清理、Basic Controls 里的设置各管什么,以及 Sky Mode / Color Mode / Project Mode / Feature Level 四个模式开关的区别。

所有项目的第一步四个模式开关

把 UDS 加入关卡

先把关卡里原有的天空与光照清理干净。需要删除以下 Actor:

  • Directional Light(平行光)
  • Sky Light(天光)
  • Exponential Height Fog(高度雾)
  • Sky Atmosphere(天空大气)
  • Volumetric Cloud(体积云)

删完之后如果场景里仍有环境光,说明关卡的 Lightmap 里还残留静态光照。从主工具栏的 Build 下拉菜单执行一次光照构建(Build Lighting)即可清除。

然后从 Blueprints 文件夹把 Ultra Dynamic Sky 拖进场景。默认配置就是白天的光照加体积云, 拖进去应该立刻能看到天空。

B 站 · 点击播放BV1LpdpBwELx

如果关卡里已经有一套用标准光源搭好的基础光照、并且你想保留它,可以不删除这些光源直接放入 UDS, 它会提示你执行一次转换(conversion),把那套光照参数读进自己的配置里。

UDS 通常放在地面高度即可。想调整云的高度不要移动 Actor,而是改 Volumetric Clouds 分类下的 Bottom Altitude,否则整个天空的相对位置都会跟着变。

注意

首次放入 UDS 后,编辑器可能需要编译着色器,期间部分效果不会显示。编译时间取决于机器配置,属正常现象。

基础控制(Basic Controls)

选中关卡里的 UDS,细节面板最上方就是 Basic Controls 分类。常用的几组设置:

设置作用
Time of Day 时间的主控参数,默认情况下决定太阳与月亮的位置。取值是 0–24 的小时数。
Sky Mode / Color Mode / Project Mode / Feature Level 四个模式开关,决定 UDS 用哪套云、怎么算颜色、按什么目标优化、以及面向哪个渲染级别。见下文。
Cloud Coverage、Fog 云量与雾浓度。如果关卡里同时放了 UDW(天气系统),这两项会改由天气状态控制。
Saturation、Contrast、Overall Intensity、Night Brightness 整体观感的快速微调,不影响物理计算。
Day / Dawn-Dusk / Night Lighting Brightness 分别控制白天、晨昏、夜晚的光照强度,用来在“天空颜色亮度”和“场景受光”之间做美术取舍。
Dusk Time、Dawn Time 太阳越过地平线的时间点。若太阳启用了 Simulate Real Sun,这两项不生效。

Sky Mode:用哪种云

这个开关主要决定云(或体积极光)的表现形式,共有七个选项:

模式说明开销
Volumetric Clouds默认选项。完整的 3D 体积云,观感最真实。最高,部分平台可能吃不消
Static Clouds用静态云纹理模拟体积云的观感。很低
2D Dynamic Clouds用平移的 2D 纹理绘制动态云。低
No Clouds完全不使用动态云。最低
Volumetric Aurora放弃云层,改为渲染完整 3D 极光,参数在 Aurora 分类里。较高
Space外太空场景:取消云、大气与天空着色,只保留日月与星星,且没有地面。低
Voxel Clouds把云层渲染成立方体素,用于体素美术风格的项目,本质是体积云的另一套渲染方式。与体积云接近

Color Mode:颜色从哪来

模式说明
Sky Atmosphere 使用虚幻自带的天空大气系统,模拟真实的散射效果。相关参数在 Sky Atmosphere 分类里继续调。
Simplified Color 通过采样大气散射 LUT 体积纹理,加上可调的颜色值来决定天空颜色。材质开销更低,也更好直接控制;参数在 Simplified Color 分类里。

Project Mode:按什么目标优化

这个开关决定 UDS 在运行时的行为方式。

模式行为适用
Game / Real-time (Non VR) 开启运行时优化,把一部分计算分摊到多帧完成。 游戏与需要实时性能的项目(VR 除外)
Cinematic / Offline 关闭上述优化,天空的所有动态项每帧完整更新,同时自动提高多项画质设置。 渲染影片、静帧,或不需要实时的项目
Virtual Reality 与实时模式类似,额外针对立体渲染做了若干调整以避免画面问题。 VR 游戏或仿真

Feature Level:面向哪个渲染级别

把 Feature Level 设成你项目的目标渲染级别——例如打包到移动端渲染器时,必须改成 Mobile。UDS 会用这个值来规避当前级别不支持的写法:选了 Mobile 之后, Volumetric Clouds、Volumetric Aurora 这类不兼容的 Sky Mode 会被替换成兼容模式, 替换成什么可以在 Mobile 分类里指定。

如果项目要发布到多个不同渲染级别的平台,可以打开 Mobile 分类里的选项,让 UDS 在启动时根据 Platform Name 自动设置 Feature Level。