Terrain Exaggeration & Vertex Normals

1. A concise explanation of the problem you’re experiencing.

The lighting for the quantised mesh when using terrain exaggeration is incorrect. The effect of this bug is that the lighting is more “washed out” as you zoom into a terrain feature. This affects custom terrain as well as Cesium Ion terrain.

2. A minimal code example. If you’ve found a bug, this helps us reproduce and repair it.

Compare the lighting with and without terrainExaggeration set in the Sandcastle link below. The lighting is not consistent with the terrain increasing in height and providing a steeper slope for the reflection/shadowing of light. The effect is slightly different depending on where in the world one looks at the terrain, perhaps indicating something incorrect in the transformation of the normal to/from ENU space.

3. Context. Why do you need to do this? We might know a better way to accomplish your goal.

At this moment in time, I can work around the issue by generating the quantised terrain mesh files at the required exaggeration level and taking that into account in any JavaScript retrieving height values from the terrain in Cesium. However, it is something that Cesium might want to look into for others without the freedom to manipulate their source terrain files (such as those using Cesium Ion terrain)

4. The Cesium version you’re using, your operating system and browser.

I am using Cesium 1.54, it is however present in at least Cesium 1.53 (as I have been working to identify the issue since then). It is consistent across Chrome and Safari.

Thanks for reporting this! I opened a GitHub issue for it: