Sandcastle to reproduce:
Result:
Generally Cesium seems to fail with sub 1 centimeter primitives and this is a showstopper for our application.
This is even more evident on iOS mobile: it occurs badly already with 1 meter radius:
I would really appreciate some advice on this from Cesium team. I think it is could be related to highp or lowp settings in glsl shaders but could not really find a fix after some searching…
This is significantly worse on iOS, so somehow the GPU precision plays a role here I think?
Here you see the same 1m sphere on PC:
@v12424124_34
Thank you for bringing this to my attention. I just submitted an issue on GitHub.
opened 04:25PM - 30 Aug 21 UTC
This issue stems from the following community forum thread: https://community.ce… sium.com/t/bug-bad-precision-on-0-01-meter-sphere/15050
CesiumJS struggles to render very small primitives. While this behavior can be seen on laptops and desktops, it appears to be more prominent on iOS mobile devices. On an iOS device, we begin to see issues when viewing spheres that have a radius of one meter. I have not tested to see if this issue occurs on android smartphones or tablets of any kind.

Here is a video demo that I put together.
https://youtu.be/UZBvFOZwQ-4
This issue could potentially be related to highp or lowp settings in the glsl shaders. GPU precision could also play a role here. I understand that sandcastle was created as a development tool. Regardless, the sandcastle experience on mobile devices is not great.
Sandcastle example: https://sandcastle.cesium.com/#c=bZBNb8IwDIb/itVTkbqUauzSFTTBuCHtsI9TLqE1LFoSV0laBBP/fWk7BmIokhXb7/NadisstBJ3aGEKBnewQCcbzT76Wsyjss8XZLyQBi2PRo/ccNMGbq0aXCola0eyCvjgw9B46SU6Jqoq/uYGwAiNOfBoHgDAE8GjpGvW5IKcTH4avRDWh58w92xjST/j1iK6+C7LJmycwGTcxYcQRz3/55dDPwzAikrK/HKbs2WcJeENJIAWHq0U6jybFFk2X70ve8UxxOPvwsNyByL9RvHVqoMkSqLC+b3C2eAO8CR1TdZDY1XMWOpR1yqMdOm6Kb/Qs9L1aCct0ku0qGQLspreuD+USjgXOptGqVd5QB7NijTo/6GKwiHM9qVFq8S+k31ms9VQZIwVaUhvk55IrYW9cv4B
Browser: Chrome, Safari
Operating System: iOS, Windows, Linux
@ebogo1
The rest of the CesiumJS development team should take a look at it shortly. In the meantime, please update the GitHub issue with additional information as you see fit.
-Sam
1 Like
Thanks! Thats a very good issue report, great that you were able to reproduce it to a video.
By the way, once piece of extra info:
If we create this kind of sphere as a GLTF model and add it to scene => it works flawlessly and there is no jitter in geometry or positioning.
@v12424124_34
Thank you for the update - just added it to the GitHub issue.
-Sam