Cesium for Unreal brings the 3D geospatial ecosystem to Unreal Engine. By combining a high-accuracy full-scale WGS84 globe, open APIs and open standards for spatial indexing such as 3D Tiles, and cloud-based real-world content from Cesium ion with Unreal Engine, this project enables a new era of 3D geospatial software.
🚀 Get Started
Download Cesium for Unreal from Unreal Engine Marketplace
Have questions? Ask them on the community forum.
👏 Featured Demos
🏡 Cesium for Unreal and the 3D Geospatial Ecosystem
Cesium for Unreal can stream real-world 3D content such as high-resolution photogrammetry, terrain, imagery, and 3D buildings from Cesium ion and other sources, available as optional commercial subscriptions. The plugin includes Cesium ion integration for instant access to global high-resolution 3D content ready for runtime streaming. Cesium ion users can also leverage cloud-based 3D tiling pipelines to create end-to-end workflows to transform massive heterogenous content into semantically-rich 3D Tiles, ready for streaming to Unreal Engine.
Cesium for Unreal supports cloud and private network content and services based on open standards and APIs. You are free to use any combination of supported content sources, standards, APIs with Cesium for Unreal.
Using Cesium ion helps support Cesium for Unreal development. ❤️
⛓️ Unreal Engine Integration
Cesium for Unreal is tightly integrated with Unreal Engine making it possible to visualize and interact with real-world content in editor and at runtime. The plugin also has support for Unreal Engine physics, collisions, character interaction, and landscaping tools. Leverage decades worth of cutting-edge advancements in Unreal Engine and geospatial to create cohesive, interactive, and realistic simulations and applications with Cesium for Unreal.
📗 License
Apache 2.0. Cesium for Unreal is free for both commercial and non-commercial use.
💻 Developing with Unreal Engine
🛠️ Compiling Cesium for Unreal
The following steps detail how to build the plugin and use it as part of your projects. You can also compile Cesium for Unreal as part of the cesium-unreal-samples
.
Cesium for Unreal depends on Cesium's high-precision geospatial C++ library - Cesium Native, which is included as a submodule.
-
Clone the repository using
git clone --recursive git@github.com:CesiumGS/cesium-unreal.git
. -
From the
cesium-unreal/extern
directory, run the following commands to buildcesium-native
.- CMake configuration and build on Windows platform:
cmake -B build -S . -G "Visual Studio 15 2017 Win64" # Optionally use "Visual Studio 16 2019" cmake --build build --config Release --target install # Can optionally compile with --config RelWithDebInfo or MinSizeRel. cmake --build build --config Debug --target install # Optional, recommended for debugging
- CMake configuration and build on Linux platform:
export UNREAL_ENGINE_DIR=<path_to_unreal_engine> export UNREAL_ENGINE_COMPILER_DIR=$UNREAL_ENGINE_DIR/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v17_clang-10.0.1-centos7/x86_64-unknown-linux-gnu export UNREAL_ENGINE_LIBCXX_DIR=$UNREAL_ENGINE_DIR/Engine/Source/ThirdParty/Linux/LibCxx # Release build cmake -B build -S . -DCMAKE_TOOLCHAIN_FILE="unreal-linux-toolchain.cmake" -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release cmake --build build --target install # Debug build cmake -B build -S . -DCMAKE_TOOLCHAIN_FILE="unreal-linux-toolchain.cmake" -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Debug cmake --build build --target install
-
Point your Unreal Engine Project to the
CesiumForUnreal.uplugin
file to load the plugin into Unreal Engine.
📦 Accessing Packaged Plugin
The easiest way to access Cesium for Unreal is by downloading it from the Unreal Engine Marketplace.
If you would like to access development versions of the plugin, Cesium for Unreal has Travis CI integration that prepares packages with each CI build. To access these packages, click the ✔️ icon on the GitHub branch or commit and click the Details
next to plugin-package
. You can extract the downloaded plugin package into your Unreal project's Plugins
directory.