How to do sea level submergence simulation?

Hello everyone, I want to use Cesium for Unreal to do sea level submergence simulation. But I found that the sea level in Unreal is fixed. I wonder if there are any parameters that can control the sea level? Or is there any other way to achieve flooding simulation?

Hi @Xiaoguang,

The sea level on Cesium World Terrain is fixed, but if you wanted to simulate a rising sea level in a relatively small area of the map, you could use a mesh like a plane, apply a water shader, and raise it. Here’s an example I created in the San Francisco bay area.

This is a standard Unreal plane static mesh scaled up to 100000 in every direction, using the default material for visualization. You can translate it on the Y axis to change the simulated sea level height.


If you wanted to create a parameter to control this, you could do it fairly easily with a Blueprint or C++ by setting the Y location with SetActorLocation.

Here’s how it looks with a slightly modified version of Water_Material_Custom from the Water plugin. I’d recommend disabling the watermask on Cesium World Terrain if you’re doing this, otherwise you’ll get weird double reflections in the water.

The drawback to this is that since the plane is totally flat, it won’t account for the curvature of the earth, and will get less accurate the farther you get from the georeference. It should be fairly accurate for a few km around the georeference origin, though. If you want to simulate flooding in multiple locations around the world, I’d recommend using sublevels and having one water plane for each sublevel.

-Alex

1 Like

thank you for your reply. Your solution has solved some of my problems, but I still want to get a larger area of simulation, preferably on a global scale. Hope there are more solutions.