实时数据更新与渲染技术

43 阅读2分钟

分布式流域的数据量极其庞大,这源于每个河流段落都需要进行详细的数值计算,以反映其独特的水文特性。在这样的背景下,数字孪生平台的构建面临着一个显著挑战:如何高效地存储和处理这些海量数据,并且准确无误地在平台上展示每一段河流的独特信息。考虑到地球表面的球形特性,如何精确表示每条河道的位置、形态及其随时间的变化情况,也是一个技术难点。(以下内容均来源于《数字孪生与智能算法白皮书2025》)

1.河道的几何数据

每段河道数据都有自己的点位信息,如何根据这些点位信息构建河道的几何模型并进行数据展示方案如下:

·河道展模型生成方案:

A. 根据点位,用 Niagara 等特效形式生成 Ribbon 形状;用 Spline 控制每条河的形状。

B. 根据点位,使用几何生成功能圆形/方形扫描出一个管道形状。

C. 根据点位,使用 SplineMesh 生成河道模型。

2.河道水文数值展示方案

分布式计算的结果中,每条河道都有自己的数值 Value 结果,可以根据 Value 值的高低,进行颜色映射,通常值由低到高颜色映射为蓝绿黄红渐变。

根据上述几何的展示方案,如何进行数值表达。

·方案1:

Niagara 等特效中,Ribbon 由多个 Particle 连接成,Ribbon 的颜色根据 Particle 的颜色确定,所以生成每组 particle 的时候将对应河道数据可以传入 Niagara 发射器,发射器再将颜色传入 Particle 的材质,再材质中进行颜色取色输出。

·方案2:

使用扫描的方案,那么就是直接给与一个多色材质。将河道数值传入材质的自定义数据通道中,材质进行取色输出。

·方案3:

使用 splineMesh 生成方案,取色方案同上。 不过以上方案中大家都要考虑 DrawCall 数,一个模型在无阴影的情况下,Mesh 一个 DrawCall、一个材质一个 DrawCall,所以模型数量越少越好,材质数量越少越好。 河道数据如何贴合地球表面要想河道贴合地球表面,肯定要转换成经纬度这样的地球坐标。再通过经纬度转换的方式,转换成数字孪生场景中的真实坐标位置,使用最后的场景坐标进行河道数据生成。

最终展示效果: