diff options
author | Karim Naaji <karim.naaji@gmail.com> | 2020-06-01 15:34:22 -0700 |
---|---|---|
committer | Karim Naaji <karim.naaji@gmail.com> | 2020-06-01 15:34:22 -0700 |
commit | 2dfd8ba452ce1528965ea6bef3355e0f970142ec (patch) | |
tree | 0721825d2eedf76ce27445d5b3caefb4423acc8f | |
parent | b675454edf4c2005dd6da3207ab4431135fb9f5e (diff) | |
download | qtlocation-mapboxgl-2dfd8ba452ce1528965ea6bef3355e0f970142ec.tar.gz |
Start adding new attributes and uniforms
-rw-r--r-- | src/mbgl/programs/attributes.hpp | 2 | ||||
-rw-r--r-- | src/mbgl/programs/fill_extrusion_program.cpp | 3 | ||||
-rw-r--r-- | src/mbgl/programs/fill_extrusion_program.hpp | 1 | ||||
-rw-r--r-- | src/mbgl/programs/fill_program.cpp | 5 | ||||
-rw-r--r-- | src/mbgl/programs/fill_program.hpp | 3 | ||||
-rw-r--r-- | src/mbgl/programs/line_program.cpp | 2 | ||||
-rw-r--r-- | src/mbgl/programs/uniforms.hpp | 4 | ||||
-rw-r--r-- | src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp | 1 | ||||
-rw-r--r-- | src/mbgl/renderer/layers/render_fill_layer.cpp | 3 |
9 files changed, 11 insertions, 13 deletions
diff --git a/src/mbgl/programs/attributes.hpp b/src/mbgl/programs/attributes.hpp index 09d5eca809..adf30255fa 100644 --- a/src/mbgl/programs/attributes.hpp +++ b/src/mbgl/programs/attributes.hpp @@ -53,6 +53,8 @@ MBGL_DEFINE_ATTRIBUTE(float, 1, halo_blur); MBGL_DEFINE_ATTRIBUTE(float, 1, weight); MBGL_DEFINE_ATTRIBUTE(uint16_t, 4, pattern_to); MBGL_DEFINE_ATTRIBUTE(uint16_t, 4, pattern_from); +MBGL_DEFINE_ATTRIBUTE(float, 1, pixel_ratio_to); +MBGL_DEFINE_ATTRIBUTE(float, 1, pixel_ratio_from); } // namespace attributes diff --git a/src/mbgl/programs/fill_extrusion_program.cpp b/src/mbgl/programs/fill_extrusion_program.cpp index 7209072b02..bfb859da84 100644 --- a/src/mbgl/programs/fill_extrusion_program.cpp +++ b/src/mbgl/programs/fill_extrusion_program.cpp @@ -51,7 +51,6 @@ FillExtrusionPatternProgram::layoutUniformValues(mat4 matrix, const TransformState& state, const float opacity, const float heightFactor, - const float pixelRatio, const EvaluatedLight& light, const float verticalGradient) { const auto tileRatio = 1 / tileID.pixelsToTileUnits(1, state.getIntegerZoom()); @@ -62,7 +61,7 @@ FillExtrusionPatternProgram::layoutUniformValues(mat4 matrix, return { uniforms::matrix::Value( matrix ), uniforms::opacity::Value( opacity ), - uniforms::scale::Value( {{pixelRatio, tileRatio, crossfade.fromScale, crossfade.toScale}} ), + uniforms::scale::Value( {{tileRatio, crossfade.fromScale, crossfade.toScale}} ), uniforms::texsize::Value( atlasSize ), uniforms::fade::Value( crossfade.t ), uniforms::pixel_coord_upper::Value( std::array<float, 2>{{ float(pixelX >> 16), float(pixelY >> 16) }} ), diff --git a/src/mbgl/programs/fill_extrusion_program.hpp b/src/mbgl/programs/fill_extrusion_program.hpp index f92bd7c968..4020e5d111 100644 --- a/src/mbgl/programs/fill_extrusion_program.hpp +++ b/src/mbgl/programs/fill_extrusion_program.hpp @@ -108,7 +108,6 @@ public: const TransformState&, float opacity, float heightFactor, - float pixelRatio, const EvaluatedLight&, float verticalGradient); }; diff --git a/src/mbgl/programs/fill_program.cpp b/src/mbgl/programs/fill_program.cpp index f314fcc597..744a1dd80b 100644 --- a/src/mbgl/programs/fill_program.cpp +++ b/src/mbgl/programs/fill_program.cpp @@ -16,8 +16,7 @@ FillPatternProgram::layoutUniformValues(mat4 matrix, Size atlasSize, const CrossfadeParameters& crossfade, const UnwrappedTileID& tileID, - const TransformState& state, - const float pixelRatio) { + const TransformState& state) { 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)); @@ -27,7 +26,7 @@ FillPatternProgram::layoutUniformValues(mat4 matrix, uniforms::matrix::Value( matrix ), uniforms::world::Value( framebufferSize ), uniforms::texsize::Value( atlasSize ), - uniforms::scale::Value({ {pixelRatio, tileRatio, crossfade.fromScale, crossfade.toScale} } ), + uniforms::scale::Value({ {tileRatio, crossfade.fromScale, crossfade.toScale} } ), uniforms::fade::Value( crossfade.t ), uniforms::pixel_coord_upper::Value( std::array<float, 2> {{ float(pixelX >> 16), float(pixelY >> 16) }}), uniforms::pixel_coord_lower::Value( std::array<float, 2> {{ float(pixelX & 0xFFFF), float(pixelY & 0xFFFF) }} ) diff --git a/src/mbgl/programs/fill_program.hpp b/src/mbgl/programs/fill_program.hpp index da39fe40b7..09ec6c778a 100644 --- a/src/mbgl/programs/fill_program.hpp +++ b/src/mbgl/programs/fill_program.hpp @@ -71,8 +71,7 @@ public: Size atlasSize, const CrossfadeParameters& crossfade, const UnwrappedTileID&, - const TransformState&, - float pixelRatio); + const TransformState&); }; class FillOutlineProgram : public Program< diff --git a/src/mbgl/programs/line_program.cpp b/src/mbgl/programs/line_program.cpp index c808a95c0d..0a4315ccb1 100644 --- a/src/mbgl/programs/line_program.cpp +++ b/src/mbgl/programs/line_program.cpp @@ -103,7 +103,7 @@ LinePatternProgram::LayoutUniformValues LinePatternProgram::layoutUniformValues( state, pixelsToGLUnits, pixelRatio, - uniforms::scale::Value ({ {pixelRatio, tileRatio, crossfade.fromScale, crossfade.toScale} }), + uniforms::scale::Value ({ {tileRatio, crossfade.fromScale, crossfade.toScale} }), uniforms::texsize::Value( atlasSize ), uniforms::fade::Value( crossfade.t ) ); diff --git a/src/mbgl/programs/uniforms.hpp b/src/mbgl/programs/uniforms.hpp index bf928cde5e..bb9b6f45be 100644 --- a/src/mbgl/programs/uniforms.hpp +++ b/src/mbgl/programs/uniforms.hpp @@ -51,7 +51,7 @@ MBGL_DEFINE_UNIFORM_SCALAR(float, extrude_scale); MBGL_DEFINE_UNIFORM_VECTOR(uint16_t, 4, pattern_from); MBGL_DEFINE_UNIFORM_VECTOR(uint16_t, 4, pattern_to); -MBGL_DEFINE_UNIFORM_VECTOR(float, 4, scale); +MBGL_DEFINE_UNIFORM_VECTOR(float, 3, scale); MBGL_DEFINE_UNIFORM_VECTOR(uint16_t, 2, pattern_tl_a); MBGL_DEFINE_UNIFORM_VECTOR(uint16_t, 2, pattern_br_a); MBGL_DEFINE_UNIFORM_VECTOR(uint16_t, 2, pattern_tl_b); @@ -66,6 +66,8 @@ MBGL_DEFINE_UNIFORM_SCALAR(float, scale_a); MBGL_DEFINE_UNIFORM_SCALAR(float, scale_b); MBGL_DEFINE_UNIFORM_SCALAR(float, tile_units_to_pixels); MBGL_DEFINE_UNIFORM_SCALAR(float, overscale_factor); +MBGL_DEFINE_UNIFORM_SCALAR(float, pixel_ratio_from); +MBGL_DEFINE_UNIFORM_SCALAR(float, pixel_ratio_to); } // namespace uniforms } // namespace mbgl diff --git a/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp b/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp index 4eaec6e55f..1344ecee24 100644 --- a/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp +++ b/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp @@ -200,7 +200,6 @@ void RenderFillExtrusionLayer::render(PaintParameters& parameters) { parameters.state, evaluated.get<FillExtrusionOpacity>(), -std::pow(2, tile.id.canonical.z) / util::tileSize / 8.0f, - parameters.pixelRatio, parameters.evaluatedLight, evaluated.get<FillExtrusionVerticalGradient>() ), diff --git a/src/mbgl/renderer/layers/render_fill_layer.cpp b/src/mbgl/renderer/layers/render_fill_layer.cpp index 2fb982143e..004ebb5093 100644 --- a/src/mbgl/renderer/layers/render_fill_layer.cpp +++ b/src/mbgl/renderer/layers/render_fill_layer.cpp @@ -191,8 +191,7 @@ void RenderFillLayer::render(PaintParameters& parameters) { tile.getIconAtlasTexture().size, crossfade, tile.id, - parameters.state, - parameters.pixelRatio + parameters.state ), paintPropertyBinders, evaluated, |