From 62f6338d5bc0f0a2c515f45ba30bf5de506e9929 Mon Sep 17 00:00:00 2001 From: Aleksandar Stojiljkovic Date: Thu, 30 May 2019 09:45:02 +0300 Subject: [core] Fix: fill-extrusion-vertical-gradient was ignored. #14784 fill-extrusion-vertical-gradient "property-type": "data-constant" and it shouldn't be computed through property binders. Fixes: #14784 --- src/mbgl/programs/fill_extrusion_program.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/mbgl/programs/fill_extrusion_program.cpp') diff --git a/src/mbgl/programs/fill_extrusion_program.cpp b/src/mbgl/programs/fill_extrusion_program.cpp index d22e911589..7209072b02 100644 --- a/src/mbgl/programs/fill_extrusion_program.cpp +++ b/src/mbgl/programs/fill_extrusion_program.cpp @@ -32,13 +32,14 @@ float lightIntensity(const EvaluatedLight& light) { } FillExtrusionProgram::LayoutUniformValues FillExtrusionProgram::layoutUniformValues( - mat4 matrix, const TransformState& state, const float opacity, const EvaluatedLight& light) { + mat4 matrix, const TransformState& state, const float opacity, const EvaluatedLight& light, const float verticalGradient) { return { uniforms::matrix::Value( matrix ), uniforms::opacity::Value( opacity ), uniforms::lightcolor::Value( lightColor(light) ), uniforms::lightpos::Value( lightPosition(light, state) ), - uniforms::lightintensity::Value( lightIntensity(light) ) + uniforms::lightintensity::Value( lightIntensity(light) ), + uniforms::vertical_gradient::Value( verticalGradient ) }; } @@ -51,7 +52,8 @@ FillExtrusionPatternProgram::layoutUniformValues(mat4 matrix, const float opacity, const float heightFactor, const float pixelRatio, - const EvaluatedLight& light) { + const EvaluatedLight& light, + const float verticalGradient) { const auto tileRatio = 1 / tileID.pixelsToTileUnits(1, state.getIntegerZoom()); int32_t tileSizeAtNearestZoom = util::tileSize * state.zoomScale(state.getIntegerZoom() - tileID.canonical.z); int32_t pixelX = tileSizeAtNearestZoom * (tileID.canonical.x + tileID.wrap * state.zoomScale(tileID.canonical.z)); @@ -69,6 +71,7 @@ FillExtrusionPatternProgram::layoutUniformValues(mat4 matrix, uniforms::lightcolor::Value( lightColor(light) ), uniforms::lightpos::Value( lightPosition(light, state) ), uniforms::lightintensity::Value( lightIntensity(light) ), + uniforms::vertical_gradient::Value( verticalGradient ) }; } -- cgit v1.2.1