Hello,
Before loading the Gaussian splash model, I converted the. splat model file to a regular. b3dm file using GisBox. Then I used the Cesium3DTile set. from URL method to load it. When the positions of two Gaussian splash models overlap, simply drag the map and the models will flash continuously. What is this problem?
Hi @zhaobinJava,
Would you be able to reproduce this behavior in a minimal sandcastle example? I thought maybe I could reproduce it by just loading the same splat tileset twice, but I don’t see any flickering when panning the camera. (Does that scenario cause flickering for you?)
Best,
Matt S.
Just checking - what version of CesiumJS are you using when you encounter this issue? There have been issues like this that I think have been fixed pretty recently. I wonder if you can just upgrade to the latest version of CesiumJS, and that may solve your issues.
Hello,
Thank you very much for your reply. The Cesium version I used before was v1.133. After following your advice, I used Cesium version 1.134.0 and still encountered the same issue. I noticed that only two Gaussian splash models have slight deviations in position but overlap, and this issue occurs when dragging or zooming in or out of the map (when the coordinates of the two models are exactly the same, this situation does not occur). The following is an example I wrote on the sandcastle to reproduce this problem.
example url:
Ah I see, they have to be offset slightly. I see the issue now in your sandcastle… that’s pretty bad! I’ll go see if we have any open issues relating to that and, if not, open one. Thanks for bringing this to our attention.
Just to cross-link: When loading two Gaussian splash models with overlapping positions at the same time, the model will have a flashing bug · Issue #12967 · CesiumGS/cesium · GitHub
I asked around about this issue - it seems that there’s a subtle bug in the buildGSplatDrawCommand call: this scratch matrix is shared in the draw, and whoever modified it last each frame wins - causing a flicker.
Also from the discussion: "Also, I just noticed the command owner is “this”, but its a static call, now (used to not be). should be “primitive”
I’ll throw that in the linked github issue as well.
Hello,
Thank you so much for looking into this so quickly and for the thorough investigation! I really appreciate you taking the time to both explain the root cause and also open/follow up on the GitHub issue.Looking forward to any updates on the issue.
May I ask in which version this question will be updated? I’m looking forward to any updates regarding this issue.