Cesium for Unreal Now Available

Hello Everyone

We’re thrilled to share with you Cesium for Unreal, an open source plugin for Unreal Engine that unlocks 3D geospatial ecosystem in Unreal and bridges the gap between 3D geospatial and game engine technologies.

See Cesium for Unreal in action!

Cesium for Unreal is:

  • A highly-accurate global-scale WGS84 globe, built from our years of deep experience in geospatial with CesiumJS.
  • 3D Tiles runtime 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 and clouds to add photorealism 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 for instant access to your 3D content and curated 3D geospatial data.

The success of Cesium lies in the success of the community, and we believe that sustained and significant contributions to the ecosystem create a lasting impact that advances the entire industry forward. That is why we have found it imperative to open source Cesium for Unreal under the Apache 2.0 license, that lets you build amazing applications and experiences using the Cesium platform for both commercial and non-commercial use.

The Cesium Platform

Cesium for Unreal is a complement to CesiumJS, our open source purpose-built 3D engine for the web. We are advancing both engines in parallel and cross-leveraging our efforts; for example, by advancing 3D Tiles and glTF specifications, by utilizing Cesium ion services, and by simply applying lessons learned on topics such as high-precision rendering and 3D Tiles streaming optimizations.

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 with us on this forum or 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 with Cesium for Unreal

Shehzan, on behalf of the Cesium Team


Hello @Shehzan_Mohammed!

This is like a dream come true. I have been trying to get this to work for the past two years now - and the Cesium team has done it - incredible work!

I had a quick question. How would I go about adding foliage and textures to ground-level renders as seen in the example image? Is there a way to transition to procedural textures when you get close and the satellite imagery is too blurry? Thanks!

1 Like

Hello Francis!

I copied over these answers from the same question asked earlier in the Unreal Marketplace page for Cesium for Unreal:

Check out our placing objects tutorial and if needed, check out our georeferenced sublevels tutorial as well. If you are missing context, please complete the prerequisite tutorials. For the most part, placing assets should be as easy as you are used to in Unreal. These tutorials will explain how to properly geo-contextualize your assets for use in a global-scale game. Although foliage isn’t mentioned explicitly, the lessons learned in these tutorials apply to foliage just the same.

For the procedural texturing part of your question, I started this issue to brainstorm how we might enable this. For now, your best bet might be to add landscape meshes in areas you are interested in that conform to the world terrain, but sit above it just enough not to overlap. Then, procedurally texturing the landscape mesh itself might be easier than trying to retexture the streamed world terrain.

Thank you so much, @Nithin_Pranesh! I will look at the links you provided and keep an eye out for further insight! :slight_smile:

As I understand only Windows platform supported?

Hi @11160

At launch we are officially supporting Windows, but have tested both Linux and OSX, but not extensively enough to put a seal of quality on it.

As an open source project, you are able to check out these changes and try to build them yourself. We would love to get your feedback, and you are of course welcome to open a pull request with fixes.

Here are the links that may interest you:
OSX Pull Request: Add support for Macos by baothientran · Pull Request #280 · CesiumGS/cesium-unreal · GitHub
Linux Branch: GitHub - CesiumGS/cesium-unreal at unreal-on-linux

Shehzan Mohammed

How to use local date with ‘cesium for ue4’ ? such as osgb

Thank you, Shehzan!
But the link to https://github.com/CesiumGS/cesium-unreal-demo on Linux Branch is dead :frowning:

Our apologies there https://github.com/CesiumGS/cesium-unreal-demo was the old link. You can use GitHub - CesiumGS/cesium-unreal-samples: Getting Started Sample Project for Cesium for Unreal.

I’ve fixed this in the repo.