From 4d3d3e4452223bbd27a5f8e971e8ce60c4091d03 Mon Sep 17 00:00:00 2001 From: Juha Alanen Date: Thu, 23 May 2019 15:27:08 +0300 Subject: [core] Fix symbol rendering under opaque fill layers --- platform/node/test/ignores.json | 1 - src/mbgl/renderer/layers/render_symbol_layer.cpp | 14 ++------------ src/mbgl/renderer/paint_parameters.cpp | 5 ++--- 3 files changed, 4 insertions(+), 16 deletions(-) diff --git a/platform/node/test/ignores.json b/platform/node/test/ignores.json index 26378b6571..fdbd566133 100644 --- a/platform/node/test/ignores.json +++ b/platform/node/test/ignores.json @@ -105,7 +105,6 @@ "render-tests/feature-state/composite-expression": "https://github.com/mapbox/mapbox-gl-native/issues/12613", "render-tests/feature-state/data-expression": "https://github.com/mapbox/mapbox-gl-native/issues/12613", "render-tests/feature-state/vector-source": "https://github.com/mapbox/mapbox-gl-native/issues/12613", - "render-tests/fill-opacity/opaque-fill-over-symbol-layer": "skip - port https://github.com/mapbox/mapbox-gl-js/pull/7612", "render-tests/text-variable-anchor/pitched-rotated-debug": "https://github.com/mapbox/mapbox-gl-native/issues/14211", "render-tests/text-variable-anchor/rotated-offset": "https://github.com/mapbox/mapbox-gl-native/issues/14211", "render-tests/text-variable-anchor/remember-last-placement": "skip - fails on gl-native, as symbol index is not functional at static map mode - needs issue", diff --git a/src/mbgl/renderer/layers/render_symbol_layer.cpp b/src/mbgl/renderer/layers/render_symbol_layer.cpp index a77f26088a..7c0eab699a 100644 --- a/src/mbgl/renderer/layers/render_symbol_layer.cpp +++ b/src/mbgl/renderer/layers/render_symbol_layer.cpp @@ -139,7 +139,6 @@ void drawIcon(const DrawFn& draw, bucket.icon, iconSegments, bucket.iconSizeBinder, - values, bucketPaintProperties.iconBinders, paintPropertyValues, SymbolSDFIconProgram::TextureBindings{ @@ -154,7 +153,6 @@ void drawIcon(const DrawFn& draw, bucket.icon, iconSegments, bucket.iconSizeBinder, - values, bucketPaintProperties.iconBinders, paintPropertyValues, SymbolSDFIconProgram::TextureBindings{ @@ -168,7 +166,6 @@ void drawIcon(const DrawFn& draw, bucket.icon, iconSegments, bucket.iconSizeBinder, - values, bucketPaintProperties.iconBinders, paintPropertyValues, SymbolIconProgram::TextureBindings{ @@ -206,7 +203,6 @@ void drawText(const DrawFn& draw, bucket.text, textSegments, bucket.textSizeBinder, - values, bucketPaintProperties.textBinders, paintPropertyValues, SymbolSDFTextProgram::TextureBindings{ @@ -221,7 +217,6 @@ void drawText(const DrawFn& draw, bucket.text, textSegments, bucket.textSizeBinder, - values, bucketPaintProperties.textBinders, paintPropertyValues, SymbolSDFTextProgram::TextureBindings{ @@ -293,7 +288,6 @@ void RenderSymbolLayer::render(PaintParameters& parameters) { const auto& buffers, auto& segments, const auto& symbolSizeBinder, - const SymbolPropertyValues& values_, const auto& binders, const auto& paintProperties, const auto& textureBindings, @@ -322,9 +316,7 @@ void RenderSymbolLayer::render(PaintParameters& parameters) { parameters.context, *parameters.renderPass, gfx::Triangles(), - values_.pitchAlignment == AlignmentType::Map - ? parameters.depthModeForSublayer(0, gfx::DepthMaskType::ReadOnly) - : gfx::DepthMode::disabled(), + parameters.depthModeForSublayer(0, gfx::DepthMaskType::ReadOnly), gfx::StencilMode::disabled(), parameters.colorModeForRenderPass(), gfx::CullFaceMode::disabled(), @@ -341,9 +333,7 @@ void RenderSymbolLayer::render(PaintParameters& parameters) { parameters.context, *parameters.renderPass, gfx::Triangles(), - values_.pitchAlignment == AlignmentType::Map - ? parameters.depthModeForSublayer(0, gfx::DepthMaskType::ReadOnly) - : gfx::DepthMode::disabled(), + parameters.depthModeForSublayer(0, gfx::DepthMaskType::ReadOnly), gfx::StencilMode::disabled(), parameters.colorModeForRenderPass(), gfx::CullFaceMode::disabled(), diff --git a/src/mbgl/renderer/paint_parameters.cpp b/src/mbgl/renderer/paint_parameters.cpp index 2e7cae4d3a..63062e7a8a 100644 --- a/src/mbgl/renderer/paint_parameters.cpp +++ b/src/mbgl/renderer/paint_parameters.cpp @@ -70,9 +70,8 @@ mat4 PaintParameters::matrixForTile(const UnwrappedTileID& tileID, bool aligned) } gfx::DepthMode PaintParameters::depthModeForSublayer(uint8_t n, gfx::DepthMaskType mask) const { - float nearDepth = ((1 + currentLayer) * numSublayers + n) * depthEpsilon; - float farDepth = nearDepth + depthRangeSize; - return gfx::DepthMode { gfx::DepthFunctionType::LessEqual, mask, { nearDepth, farDepth } }; + float depth = depthRangeSize + ((1 + currentLayer) * numSublayers + n) * depthEpsilon; + return gfx::DepthMode { gfx::DepthFunctionType::LessEqual, mask, { depth, depth } }; } gfx::DepthMode PaintParameters::depthModeFor3D() const { -- cgit v1.2.1