UE5 Splines to Cesium Cartographic Polygon Workflow?

I’m looking for a more efficient way to create Cartographic Polygons in Cesium.

Currently, I can copy splines from 3ds Max into UE5 without issue. However, I’m unclear on how to take those UE5 splines and use them to define a Cesium Cartographic Polygon.

The main challenge is with larger features, for example, a 2 km road where I need to cut a hole in the Cesium terrain. Manually placing polygon points using Alt-drag in UE5 is both time-consuming and lacks precision. In contrast, starting with a prebuilt spline is much faster and more accurate, but I haven’t found a way to transfer that spline data into a Cartographic Polygon.

Has anyone worked out a workflow to convert or reuse UE5 spline data for Cesium Cartographic Polygons?

Hi JojoAEC,

I don’t believe this is possible right now in an automated fashion. I think we’re working towards some capabilities to generate bounds from the data itself, streamlining this entirely.

In our build a flight tracker demo for Cesium for Unreal, there’s some nifty loading of items from a datatable. While the tutorial is c++ centric, this should be possible through blueprints. If you have a set of data that could be converted to a data table, or extracting point by point to feed into the cartographic polygon directly, that would be an approach.

You can set the points of a cartographic polygon, so given an array of shape points, those could be applied as inputs to the cartographic polygon. Heights could be gathered with query height most detailed, as needed.

For now a system that does those steps would be an automatic way to approach this.

Hope that helps!

Thanks! I actually ended up writing a python script to help this situtation.

At a high level, the script does the following:

  • Takes a selected SplineActor

  • Extracts each spline point in world space and stores them in a list

  • Spawns a CesiumCartographicPolygon

  • Rebuilds its internal spline using those same world-space positions

  • Forces the spline to be linear and closed

That’s great! For now that’s the best way to go.