项目开发计划书:UE5 动态天气与风场系统 (V1.0)

UE5 动态天气系统示意图
XMIND

项目名称 UE5 动态天气与风场系统开发
当前版本 V1.0
预计工期 10周~~~~

1. 项目背景与目标 (Executive Summary)

基于前期会议讨论及 Xmind 需求梳理,本项目旨在为游戏构建一套完整的24小时天气系统
V1.0 版本的核心目标是在 UE5 引擎中实现可配置的时间流转、沉浸式的天气变化以及高拟真的风场交互。该系统将作为基础底层,支持后续美术氛围的迭代与玩法逻辑的拓展。

2. 开发范围与交付标准 (Scope of Work)

本项目 V1.0 版本包含以下五大核心模块:

  1. 多时段光照系统 (Time of Day):
    • 实现 早、中、傍晚、夜 四个标准时段的高质量光照预设。
    • 基于 Lumen 和 Env Light Mixer 的实时光影方案。
    • 移动端全局光照适配。
    • 灯光变化,昼夜灯光关联。
  2. 动态天气表现 (Weather Types):
    • 实现 晴、阴天、雨)(大中小)、雪 四种基础天气。
    • 特殊:雷、电、冰雹。
    • 包含体积云 (Volumetric Clouds)、体积雾、指数雾 (Height Fog)、局部雾(Local Fog) 及 Niagara 粒子系统的综合表现。
  3. 全局风场系统 (Global Wind System):
    • 构建全局风力驱动机制 (MPC),实现植物、布料的动态风力响应。统一植被风场运动,GPU植被相关。
    • 实现雨雪粒子随风向倾斜的物理视觉效果。
    • 大风-沙暴
  4. 环境材质交互 (Dynamic Materials):
    • 积雪系统: 基于法线方向 (World Aligned Normal) 实现全场景积雪覆盖。
    • 干湿系统: 基于粗糙度 (Roughness) 与高光 (Specular) 动态控制地表湿润度与积水。影响角色表面材质湿润度和滴水等。
    • 遮挡剔除: 解决室内、屋檐下的雨雪遮挡 (Masking) 问题,避免视觉穿帮。
  5. 逻辑控制框架 (System Logic):
    • 搭建基于配置表 (Data Table) 的数据驱动框架。
    • 实现天气/时间切换时的参数平滑过渡 (Smooth Transition)。

3. 开发进度规划 (Development Schedule)

根据技术复杂度评估,本项目总开发周期初始预估为 8周,分为四个阶段进行:

📅 第一阶段:基础环境搭建与视觉定调 (Week 1 - Week 2)

阶段目标: 完成基础管线搭建,确立各天气/时间段的美术标杆 (UDS)。

  • Week 1: 光照管线与数据结构
    • 搭建 Environment Light Mixer 基础环境。
    • 调试并固化 4 套核心光照预设(早/中/晚/夜)。
    • 设计天气系统底层数据结构 (Struct) 及配置表 (Data Table)。
  • Week 2: 气象氛围与粒子表现
    • 需要特效TA地编配合,调节细节效果和参数。
    • 调试体积云材质,实现从晴空到阴云的动态变化。
    • 基于 Niagara 制作高保真雨、雪粒子及地面飞溅效果。
    • 制作屏幕空间 (Post Process) 的水滴与雾效材质。

📅 第二阶段:风场与材质交互系统开发 (Week 3 - Week 6)

阶段目标: 攻克技术难点,实现环境与天气的深度交互(此阶段涉及大量资产适配工作)。

  • Week 3: 全局风场系统 (Wind Implementation)
    • [风场功能开发] 全局风场和局部风场,融合远距离风与近处交互风,例如技能对风场的影响。
    • 构建全局风力材质参数集 (MPC_Wind)。
    • [资产适配] 修改场景植被与布料 Shader,植入 WPO (顶点偏移) 节点以响应风力。
    • 实现粒子系统与风场参数的实时联动(雨雪倾斜)。
  • Week 4: 动态材质函数库 (Material Functions)
    • 开发通用天气材质函数 MF_Weather
    • 编写积雪算法:包含法线判定、厚度控制、边缘虚化。
    • 编写湿润算法:包含颜色变暗、粗糙度降低、法线涟漪效果。
    • ......
  • Week 5 6: 场景整合与遮挡技术攻坚
    • [核心攻坚] 将天气函数分发至地形、建筑、道具等主材质 (Master Material)。
    • [防穿帮处理] 制定并实施室内/遮挡区域的 Mask 方案(如顶点色遮罩或 AO 遮罩),确保逻辑正确性。

📅 第三阶段:逻辑串联与功能闭环 (Week 7)

阶段目标: 完成蓝图开发,实现系统的自动化运行。

  • Week 7: 系统逻辑整合
    • 编写天气控制器蓝图 BP_WeatherController或者CPP子系统。
    • 强化天气之间的过渡效果。
    • 开发调试工具 (Debugt),支持运行时实时切换天气。

📅 第四阶段:性能优化与质量验收 (Week 8 - Week 9)

阶段目标: 解决性能瓶颈,修复边界 Bug,确保 V1.0 版本稳定交付。

  • Week 8: 渲染性能深度优化
    • Shader Complexity 优化: 精简全场景天气材质的指令数,降低 BasePass 开销。
    • Overdraw 优化: 针对 Niagara 粒子半透明重叠率进行裁剪与优化。
    • Lumen 调优: 优化动态光照更新频率,解决时间快速变化时的画面噪点 (Ghosting)。
  • Week 9: 系统测试与交付 (QA & Delivery)
    • 压力测试: 快速切换天气/时间,检测逻辑稳定性。
    • 视觉验收: 修复材质接缝、LOD 跳变、室内漏雨等视觉 Bug。
    • 交付: 输出 V1.0 版本工程文件及操作说明文档。

📅 第五阶段:细节效果迭代加移动端适配 (Week 10 ~~~~)

阶段目标: 优化表现细节以及给移动端适配效果。

  • Week 10~~~同步迭代: 移动端适配 (QA & Delivery)
    • 移动端效果替代: 移动端没有体积云和体积雾,移动端材质相比PC简化,效果和性能都需要做一步减法,而在本身就没有的地方需要做加法。
  • Week 10~~~同步迭代: 角色与环境交互系统 (QA & Delivery)
    • 环境交互: 角色和水坑,积雪等交互,包括声音和形状等。

4. 风险评估 (Risk Assessment)

为确保项目按期高质量交付,以下风险点已纳入排期考量:

  1. 资产管线适配风险 (高):

    • 说明: 现有场景资产未预留动态天气与风场接口,需对项目主材质进行大规模重构与分发。
    • 对策: 预留充足的资产修改与遮挡处理时间,避免后期因穿帮问题返工。
  2. 渲染性能压力 (中):

    • 说明: 全场景积雪材质与动态粒子叠加 Lumen 光照,对 GPU 算力要求较高。
    • 对策: 专用于性能 Profiling 与优化,确保在目标硬件上帧率达标。

5. 资源需求 (Resources Required)

  1. TA/程序支持: 需TA进行效果细节开发。
  2. 美术协作: 需要地编和特效进行支持。