Hi all!
We are in the process of making improvements to the atmosphere rendering in CesiumJS. Our goal is to improve the accuracy and visual quality of all parts of the atmosphere: in the sky, on the ground and in the fog. In addition to making improvements to the core atmospheric scattering algorithm, we’re also expanding the public API to allow you to change key parameters in the algorithm to achieve the look that best suits your needs. To help with this, we’re also adding a new Sandcastle.
While this system offers a lot of flexibility and customization, we want to make sure that we’re offering the best defaults. Following are a few comparison GIFs (hosted on Gfycat, click on them to play) between the current implementation and the proposed implementation.
Globe Lighting
Old
New
Sunset
Old
New
The atmosphere has an important role to play in the look of any CesiumJS application, so we welcome any feedback you may have! If you’re interested in playing around with the new API, I highly recommend taking a look at the pull request and running the new Atmosphere Sandcastle.
It is important to note that our implementation for atmospheric scattering only accounts for single scattering, so there are limitations to what can be achieved without accounting for multiple scattering.