Mapbox-gl-native: Shuffling causes fill-extrusion-color/property-function to fail

Created on 12 Sep 2017  ·  2Comments  ·  Source: mapbox/mapbox-gl-native

Reproduced via:

$ node platform/node/test/render.test.js \
    --recycle-map "fill-extrusion-pattern/missing" "fill-extrusion-color/property-function"
* ignore fill-extrusion-pattern missing (https://github.com/mapbox/mapbox-gl-js/issues/3327)
* failed fill-extrusion-color property-function
1 passed but were ignored (50.0%)
1 failed (50.0%)

| expected | actual | diff |
|--|--|--|
| expected | actual | diff |

It seems the previous _faulty_ fill-extrusion-pattern/missing run is messing with the layer z-ordering in fill-extrusion-color/property-function.

/cc @lbud

Core bug

Most helpful comment

I started digging into this and realized something extra weird was going on where only sometimes, and only (afaict) when using fill-extrusion-pattern layers, the extrusion texture was being bound without a depth buffer. This can happen with missing patterns (like in this case) or with valid patterns, with other layers or without — my best guess is that something in the ImageManager binding is interfering with the state. I haven't figured out exactly what it is yet, BUT since https://github.com/mapbox/mapbox-gl-native/pull/9931 majorly overhauls the way create/use offscreen textures for extrusions, I tested several cases/platforms where I was reproducing this bug on that branch and it seems to fix them. 🤷‍♀️

All 2 comments

I started digging into this and realized something extra weird was going on where only sometimes, and only (afaict) when using fill-extrusion-pattern layers, the extrusion texture was being bound without a depth buffer. This can happen with missing patterns (like in this case) or with valid patterns, with other layers or without — my best guess is that something in the ImageManager binding is interfering with the state. I haven't figured out exactly what it is yet, BUT since https://github.com/mapbox/mapbox-gl-native/pull/9931 majorly overhauls the way create/use offscreen textures for extrusions, I tested several cases/platforms where I was reproducing this bug on that branch and it seems to fix them. 🤷‍♀️

That's great news @lbud!

Was this page helpful?
0 / 5 - 0 ratings