作品集
渲染
返回首页
渲染Gameplay / 渲染系统

渲染 - 喷射战士喷涂方案

前向渲染下的喷涂写入、覆盖记录与体素算分

UEForwardUV2Render TargetNiagaraVoxel Score

核心演示

TECHNICAL FLOW

从子弹命中到占地统计共用一条喷涂数据链路

传统射击游戏中基于射线检测的方式不能满足带有物理弹道效果的液体子弹需求;同时为了多人实时比拼喷涂分数,我们放弃了比较绘制结果像素数量的传统计分方式,改为给画布模型生成离线点云并进一步转成体素数据来加速统计。团队重新设计了基于 Niagara 的液体子弹,加入代理碰撞体触发绘制逻辑,把命中信息传递给全局绘制器实时写入,最终通过体素标记完成分数计算,在多人实时喷射环境下也能兼顾性能与视觉表现。

资产预处理

可喷涂场景先在内容侧完成合批,并统一整理第二套 UV 作为喷涂写入空间,让显示、覆盖统计和调试围绕同一套坐标展开。

点云与体素

合批后的模型在 Blender 中进一步转换为点云,再生成体素数据,用离线预处理替代运行时高成本采样。

子弹表现

液体子弹由单发材质、Niagara 批量发射和命中瞬间的 VAT Splash 组成,把飞行、命中反馈和喷涂写入串成完整体验。

命中解算

命中后识别可喷涂物体,并把目标模型、落点位置和入射方向传给绘制器,计算喷涂图案朝向与覆盖范围。

Render Target 写入

每个可喷涂物体维护独立 Render Target,材质显示与后续统计直接读取同一份覆盖数据。

体素算分

最终计分直接基于预处理后的体素单元读取 RT 覆盖结果,统一显示与算分数据来源,控制多人持续喷涂时的成本。

辅助演示

喷涂射击演示
Geometry Nodes 点云与体素预处理
单发液体子弹材质
Niagara 批量子弹
VAT 命中 Splash