How to use GeoServer hosted maps within Cesium for Unreal

I have a local GeoServer serving the map imagery that I need to use in Unreal. How do I tell Cesium for Unreal that I want to use GeoServer instead of Cesium Ion? I get the sense that I need a CesiumTileMapServiceRasterOverlay component on a Cesium3DTileset actor. But what URL do I use and how exactly do I configure it?

With Geoserver, CesiumWebMapServiceRasterOverlay is the best component to use. You just need to set the URL to the base WMS service URL (it often ends in /ows or /wms) and set the Layers parameter to the WMS layer of interest.

@Kevin_Ring is there an example GeoServer, Cesium, Unreal. Host data on GeoServer and render on Unreal?

If I only use tileset.json, should I add this component? Or just set the url of blank 3DTileset ?

is there an example GeoServer, Cesium, Unreal. Host data on GeoServer and render on Unreal?

First, just to be clear, Cesium for Unreal can only render raster maps from Geoserver on top of a 3D Tiles or quantized-mesh terrain tileset, such as Cesium World Terrain. WMS layers can’t be rendered on their own, they have to be draped over some globe geometry.

But as long as that’s what you want, adding a raster map from Geoserver should be pretty easy. Just add the WebMapServiceRasterOverlay component to the Cesium3DTileset with the geometry and set its base URL and layers properties.

If I only use tileset.json, should I add this component? Or just set the url of blank 3DTileset ?

If you only use 3D Tiles / tileset.json, then no, you don’t need a WebMapServiceRasterOverlay component at all. You only need that component to drape a WMS over the 3D Tiles. I’m not sure what you mean by “Or just set the url of blank 3DTileset ?” though. As mentioned above, a valid 3D Tiles tileset is required for WMS draping. You can’t just set a blank URL on the Cesium3DTileset and expect it to work.