How to access GeoServer WMS

Hi everyone,

I do want to access various WMS layers served by geoserver. I looked at the examples that come with the Unity package. Unfortunately, there is no example using a WMS service. I found a post suggesting using the CesiumWebMapServiceRasterOverlay for it. I did add the script to the scene and configured it (tried multiple WMS URLs), but nothing was rendered, nor did I see any error or log messages.
Am I missing anything in the setup?

Thanks for your help!


Did you add the overlay to a GameObject that already has a Cesium3DTileset? Raster overlays are pictures only, no geometry. They have to be draped over a terrain model. Cesium World Terrain is a popular choice.

Thanks. Makes sense. It started working as soon as I added the Cesium3DTileset.

In an earlier post I read that WMS vector layers are not supported. Is this still the case?

To my knowledge, WMS always serves raster data (images). The server might generate those images from vector data, but by the time Cesium for Unity seems them they will be rasterized and should work just fine. If you have an unusual WMS that actually serves vector data (MVT or something maybe?) then it’s true that won’t work.

Hi Kevin,

thanks. I’m not too familiar with WMS and the other protocols. We do want to pull in various layers from a geoserver. I guess we do have some control on how we publish the vector layers.
Does the Unity Cesium plugin support any vector layer protocols?


No, not in the traditional GIS “points, lines, polygons” sense of vector data. If you squint, you can consider 3D Tiles a vector format, but I’m guessing that doesn’t help you here.

Thanks. Unfortunately, 3D tiles won’t help us.

I encountered a challenge while attempting to integrate multiple WMS layers into my Cesium project. Despite following the examples provided and trying different WMS URLs, I couldn’t get the layers to render correctly on the globe. There were no apparent error messages or warnings, which made it even more perplexing. I checked the camera position, ensured CORS was enabled on a server, and examined the CesiumWebMapServiceRasterOverlay component thoroughly, but the layers remained invisible.

@Micsgate please start a new thread with more details. Are the WMS layers working correctly individually, but you’re having trouble when you combine them? Or are you not able to get any WMS layers to work at all? If it’s the latter, what (preferably public) WMS servers have you tried, and how exactly have you configured the overlay component? Note that an overlay component by itself will do nothing. You also need a Cesium3DTileset component to load the terrain geometry to hang the overlay on.