Cesium 2021 retrospective
Guillaume Beraudo
Year 2021 has been very active, on three main topics.
First, the Cesium team has released a new product called "Cesium for Unreal", aiming to bring GeoSpatial to the game and simulation industries. Then there has been the publication of a draft "3d-tiles next" standard, which will narrow the gap between glTF and 3d-tiles. And finally the CesiumJS web globe has been improved and is already capable of displaying this new "3d-tiles next" draft.
These topics are all related to the "Metaverse" which the Cesium team is trying to make a reality.
The 3d-tiles next draft
"3d-tiles next" is the next version of the 3d-tiles standard, featuring optimized capabilities.
The specification is currently in draft and open for comments, reviews and implementation feedback.
Compared to the current 3d tiles specification, the main points are:
- implicit tiling
- metadata in glTF
- partial updates
If you want to get more details on this part, have a look at this Cesium blog post.
Basically, these changes will allow for more performance, collaboration with the glTF community and easier (re-)generation of tilesets.
The CesiumJS web library
The CesiumJS web library is used to display 3d globes in the browsers. We use it to display 3d tracks with terrain in Schweizmobil, analyze underground data in Swissgeol, ...
It has been improved, notably by:
- adding experimental 3d-tiles next support
Developing the specification and its implementation in parallel allows to catch bugs early and converge to a robust specification.
It allows all the ecosystem to move quickly.
- end of support of Internet Explorer
Support for the legacy Internet Explorer has ended, unlocking the possibilities for code clean up and optimizations.
- dynamic terrain exaggeration
Until now the exaggeration had to be defined at start time and could not be changed afterwards. It is now possible to change this value dynamically, which makes it possible to have it controlled by users. However, keep in mind that using this feature increases memory consumption by 30%. A live demo is available.
- KTX2 texture compression support
This new format replaces the old KTX format. A migration tool is provided.
- Elevation band
It is now possible to color terrain based on the elevation. A live demo is available.
- Custom shaders for models and 3d-tiles
The shader can be parametrized with uniforms. See the examples here.
Cesium native
Cesium for Unreal
This new productis a plugin that allows to integrate Cesium in the popular Unreal game engine, from EpicGames. The plugin has an Apache licence.
With this plugin, the game/simulation environment will be made of real world assets streamed from Cesium Ion as 3d-tiles.
In practice, this makes 3D Geospatial, open-data and our pipelines available to game and simulation designers.
The announce and some details are available here.
An example is project Anywhere XR which makes use of Microsoft lenses to create an immersive environment featuring 3D Geospatial data.
Cesium native
The Apache licensed Cesium native is the C++ code that powers the Cesium for Unreal plugin.
The goal is to be able to plug it to other tools consuming 3d-tiles. Work is in progress to integrate it in the Apache licensed Amazon O3DE game engine.
The source code is available here.
Cesium and the Metaverse
The Metaverse is a virtual 3D world which is connected to the real world. It is envisioned to be part of our daily life.
Cesium is part of this movement together with big actors. A series of podcast is available on this topic at https://cesium.com/open-metaverse-podcast.
Notably there is a podcast with Nadine Alameh, CEO of the OGC.
And to get a a vision of the possible future for 3D on the web, I recommend to listen to the podcast with Vladimir Vukićević from Unity.
For more information,
do not hesitate to get in contact with us!
Career
Interested in working in an inspiring environment and joining our motivated and multicultural teams?