Cesium for Unreal - Unlocking 3D Geospatial in Unreal Engine

Hello Unreal Community,

We’re excited to announce the public release of Cesium for Unreal, an open source plugin for Unreal Engine that bridges the gap between the 3D geospatial ecosystem and Unreal Engine. Cesium for Unreal brings together decades of advancements in 3D geospatial and Unreal Engine to allow our users to create amazing real-world based applications, simulations, and experiences.

See Cesium for Unreal in Action


Cesium for Unreal is:

  • A highly-accurate global-scale WGS84 globe gleaned from our deep experience working alongside rocket scientists in aerospace analysis and visualization.
  • A runtime 3D Tiles engine, complete with level-of-detail selection and caching, to stream massive 3D geospatial datasets, such as terrain, imagery, 3D cities, and photogrammetry, from the cloud, a private network, or the local machine.
  • Integrated with Unreal Engine Editor, Actors and Components, Blueprints, Landscaping and Foliage, Sublevels, and Sequencer to enable, for example, character and vehicle physics and collisions with photogrammetry models; atmosphere, shadows, and volumetric clouds to add a wow factor to terrain and imagery; Unreal’s water engine to add realism to real-world coastal scans; and using Unreal’s landscaping tool to add foliage to real-world terrain.
  • Integrated with Cesium ion cloud services for instant access to curated 3D geospatial content such as global terrain, imagery, and buildings, as well as 3D tiling pipelines to optimize real-world 3D content for streaming.

Cesium for Unreal is licensed under the liberal open source Apache 2.0 license, allowing developers, game designers, and creators to build amazing apps, simulations, and experiences for both commercial and non-commercial use.

Cesium for Unreal development is supported by Cesium ion, an optional subscription-based cloud service for streaming 3D geospatial content. Signing in with your Cesium ion account in Unreal Engine will give you one-click access to global data ready for streaming and building apps. As a celebration of the Cesium for Unreal launch, users evaluating Cesium for Unreal will get unrestricted data streaming as part of your free Cesium ion Community Account until May 31.

We Want To Hear From You

We cannot overstate how excited we are to release this publicly, and can’t wait to see what you build with this. Please sure to share any videos, screenshots, or apps that you build on Twitter using @CesiumJS](

We also want to hear from you about your questions, comments, feature requests, and feedback, as we just start this journey in unlocking the full potential of 3D geospatial for Unreal Engine.

Getting Started

The Cesium Team

Hi there, thanks for such an amazing plugin - have had a lot of fun so far in the few hours I’ve played with it - attached a couple of editor pics…

Quick question though - is it possible to texture the landscape using Unreals painting tools? Also, can one turn the output into a terrain to deform it?

Really looking forward to interesting this in future projects.

My best, Johnny

The screenshots look awesome!

Since Cesium’s 3D tiles are a unique format being loaded in dynamically at runtime, it is not yet possible to modify them directly. This is something we are very interested in working on and have been actively discussing. Keep up with our active development and contribute with ideas, suggestions, or code at our GitHub page.

In the meanwhile, you may want to experiment with the “Convert to Static Mesh” option in the menu that pops up when you right-click on a tileset in the world-outliner. Doing this basically captures only the currently loaded tiles, each frozen at their current LOD. You may need to bake the textures, fix the normals, and make other adjustments to get the static mesh to look correct. From there, it may be possible to export the resulting static mesh into other applications like Blender to modify the geometry, paint textures, and if wanted, convert to heightmap. You can bring it back into Unreal either as a heightmap (for landscape) or as a regular static mesh. Note you may still have issues aligning and georeferencing the mesh and it may now conflict with the original tileset. In some use cases though, a process similar to this may be a good workaround until we can implement a more thorough and more direct way to edit and stylize 3D Tiles.

Thanks for your interest in our plugin!

The UE Forum migration seems to have broken the images in the opening comment. I’ve attached them here for reference.