Weird light effects on 3dtile, causing them to disappear

Hello everyone,

I’ve been tinkering with cesiumjs for the past month, working on a 3D GIS add-on for our current solution.
Last week I tried everything I could to display the solar capacity of building roofs. I got some somewhat decent results from draping the solar data over my buildings, but I ran into a strange problem with my freshly generated 3dtile elements.
You can see it in the screenshots just below:

  • In the one on the left, the timeline is set to noon, and the tiles are colored with an alpha of 0.99.
  • On the middle one, the timeline is at midnight, and the tiles are colored with an alpha of 0.99.
  • On the right one, the timeline is set to 6 AM (any time will give the same result), and the tiles are colored with an alpha of 1.

I don’t understand what’s going on, it almost looks like my polygons are facing down (you can see on the third screen that the only visible part is the bottom of the polygons). Is this possible, and what could cause this?

I forgot to add the code I use to integrate those tiles. I’m not sure there’s anything in there that could help, but we never know.

var RoofSolar = viewer.scene.primitives.add(new Cesium.Cesium3DTileset({
    url: "resources/solar/tileset.json",
}));

//0 = highlight, 1 = replace, 2 = mix
RoofSolar.colorBlendMode = 1;
RoofSolar.style = new Cesium.Cesium3DTileStyle({
    color: {
        conditions: [
            ["${KLASSE} === 1", "color('#00C5FF', 0.99)"],
            ["${KLASSE} === 2", "color('#FFFF00', 0.99)"],
            ["${KLASSE} === 3", "color('#FFAA00', 0.99)"],
            ["${KLASSE} === 4", "color('#FF5500', 0.99)"],
            ["${KLASSE} === 5", "color('#A80000', 0.99)"],
            ["true", "true"]
        ]
    },
});

Hello there,

Could you try disabling order independent translucency and let us know the result?

const viewer = new Cesium.Viewer("cesiumContainer", {
  orderIndependentTranslucency: false
});

It may also help if you could provide the tileset for testing.

Thanks!

1 Like

Hello,

Unfortunately I don’t have the problematic dataset anymore.
I had to change my dataset and my strategy to drape the layer.
I think that while transforming my 2D set into 3D, I altered the geometry way too much, and a big part of my polygons were indeed upside down.
I went the other way around and applied the attributes of my 2D set on the 3D roofs, keeping the geometry intact, since those were working on my project.

Thanks for you help anyway !

1 Like