diff options
author | Aleksandar Stojiljkovic <aleksandar.stojiljkovic@mapbox.com> | 2019-07-07 13:40:22 +0300 |
---|---|---|
committer | Aleksandar Stojiljkovic <aleksandar.stojiljkovic@mapbox.com> | 2019-07-09 15:13:38 +0200 |
commit | 2c5528e691b502673b16723205c83add62317734 (patch) | |
tree | d4e27fecc8b867a5472e5392f52953f38c9327d7 /src/mbgl/renderer/paint_parameters.hpp | |
parent | 929824ecc3176c01a5f3e74d80e2ae2ba2cf1e51 (diff) | |
download | qtlocation-mapboxgl-2c5528e691b502673b16723205c83add62317734.tar.gz |
Fix layers rendering after fill-extrusion
This fixes following issues:
* Fix some false passing combinations/fill-extrusion-translucent--XXXX tests
* Fix and enable other, failing but ignored, combinations/fill-extrusion-translucent--XXXX tests
* Fix rendering of layers that are on top of fill-extrusion layers
state.getProjMatrix(nearClippedProjMatrix, 100) caused that tests with size 64x64 were not
rendering fill extrusions: far plane calculated as 96.9 and near plane set to 100 was the cause.
near plane is changed from hardcoded 100 to depend on state.getCameraToCenterDistance() - producing
similar value but one that follows max zoom.
This caused that e.g. combinations/fill-extrusion-translucent--fill-opaque was falsely passing as
only fill-opaque layer got rendered.
combinations/fill-extrusion-translucent--XXXX tests expose regression https://github.com/mapbox/mapbox-gl-native/issues/14844#issuecomment-503600034 in #14844, #14779.
Fix (opaquePassCutoff, is3D) is ported from https://github.com/mapbox/mapbox-gl-js/pull/7821
Fixes: #14844, #14779, #15039
Diffstat (limited to 'src/mbgl/renderer/paint_parameters.hpp')
-rw-r--r-- | src/mbgl/renderer/paint_parameters.hpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/mbgl/renderer/paint_parameters.hpp b/src/mbgl/renderer/paint_parameters.hpp index a0d26df7c5..a043ad5578 100644 --- a/src/mbgl/renderer/paint_parameters.hpp +++ b/src/mbgl/renderer/paint_parameters.hpp @@ -104,8 +104,7 @@ public: uint32_t currentLayer; float depthRangeSize; const float depthEpsilon = 1.0f / (1 << 16); - - + uint32_t opaquePassCutoff = 0; float symbolFadeChange; }; |