Cesium not respecting depth on entities

I have a problem where there z-index or depth isn’t respected in cesium as can be seen in the image above.
The labels and the coloured icons where the tails are attached are both Billboards with a position that has a higher Z (Cartesian3(x,y,Z)) value than the tail which is a path. This happens in both Columbus and 3D views. Using Cesium 1.25.
The Z value ranges from -1 to 3. The billboards are closer to 3 while the path has something around 2.

If I set the Z value of the path to something much lower like -500 its still above the billboards. Same if I use the eyeOffset and set the value to something extreme its still not respected.

What can I do to fix this? Or is this part of the very famous transparency issue: https://github.com/AnalyticalGraphicsInc/cesium/issues/2130 ?


Unfortunately, Cesium does not have great support for z ordering. It is something we’d like to address soon, but there are a few other things we need to work on first. We have an issue written up here: https://github.com/AnalyticalGraphicsInc/cesium/issues/4108

You can try using an eyeOffset for your billboards: http://cesiumjs.org/Cesium/Build/Documentation/Billboard.html#eyeOffset

A negative Z value should make it layer as if it’s closer to the camera.



Thanks Hannah,

this seems to work on some zoom levels but is quite inconsistent. :frowning:

Other ideas?


we realised we didn’t have this problem with version 1.24. So we have downgraded from version 1.25 as it seems to be a Cesium bug.


Oh really? Would you be able to throw together a short Sandcastle example to reproduce the problem? That would be really helpful for us to track down what has changed between those two versions.