summaryrefslogtreecommitdiff
path: root/src/mbgl/renderer
diff options
context:
space:
mode:
authorMolly Lloyd <mollymerp@users.noreply.github.com>2016-11-16 17:34:33 -0800
committerGitHub <noreply@github.com>2016-11-16 17:34:33 -0800
commit3380f0803a62525a6884ee4d05e103e072c36117 (patch)
treedd9263d66d91eea1f41f21d3eaf5173d12b559a2 /src/mbgl/renderer
parenta5ac64316642cacb32466ea24ba2bf29b8d35da4 (diff)
downloadqtlocation-mapboxgl-3380f0803a62525a6884ee4d05e103e072c36117.tar.gz
[core] update native for line property function shaders changes (#6658)
* [core] update shaders for line property functions update deps, define device pixel ratio for all shaders [core] create ShaderParameter struct to store pixel ratio and overdraw param repair rebase errs update shaders to include pixel ratio make sure collision_box never overdraws update test suite, move shaders to Painter::render so the correct pixel ratio is applied move shader compiling back to the Painter constructor rebase from shader --> program refactor re-factor parameters for collisionBox and debug programs remove unused vars from line-program, move blur math to shader update core files remove unecessary files update shaders PR, remove comments bump test suite sha fix formatting, incorporate feedback refactor program.hpp * [core] remove line transformations that were moved to the shaders, bump shader sha * [core] shorten ProgramParameter instantiation * [core] bump shader+test suite shas
Diffstat (limited to 'src/mbgl/renderer')
-rw-r--r--src/mbgl/renderer/painter.cpp10
-rw-r--r--src/mbgl/renderer/painter.hpp3
-rw-r--r--src/mbgl/renderer/painter_circle.cpp3
-rw-r--r--src/mbgl/renderer/painter_line.cpp2
4 files changed, 10 insertions, 8 deletions
diff --git a/src/mbgl/renderer/painter.cpp b/src/mbgl/renderer/painter.cpp
index 9dee668874..6502845494 100644
--- a/src/mbgl/renderer/painter.cpp
+++ b/src/mbgl/renderer/painter.cpp
@@ -21,6 +21,7 @@
#include <mbgl/geometry/line_atlas.hpp>
#include <mbgl/text/glyph_atlas.hpp>
+#include <mbgl/programs/program_parameters.hpp>
#include <mbgl/programs/programs.hpp>
#include <mbgl/algorithm/generate_clip_ids.hpp>
@@ -73,7 +74,7 @@ static gl::VertexVector<RasterVertex, gl::TriangleStrip> rasterTriangleStrip() {
return result;
}
-Painter::Painter(gl::Context& context_, const TransformState& state_)
+Painter::Painter(gl::Context& context_, const TransformState& state_, float pixelRatio)
: context(context_),
state(state_),
tileTriangleVertexBuffer(context.createVertexBuffer(tileTriangles())),
@@ -86,9 +87,12 @@ Painter::Painter(gl::Context& context_, const TransformState& state_)
gl::debugging::enable();
#endif
- programs = std::make_unique<Programs>(context);
+ ProgramParameters programParameters{ pixelRatio, false };
+ programs = std::make_unique<Programs>(context, programParameters);
#ifndef NDEBUG
- overdrawPrograms = std::make_unique<Programs>(context, ProgramDefines::Overdraw);
+
+ ProgramParameters programParametersOverdraw{ pixelRatio, true };
+ overdrawPrograms = std::make_unique<Programs>(context, programParametersOverdraw);
#endif
}
diff --git a/src/mbgl/renderer/painter.hpp b/src/mbgl/renderer/painter.hpp
index 2aa317f95a..6d402b027b 100644
--- a/src/mbgl/renderer/painter.hpp
+++ b/src/mbgl/renderer/painter.hpp
@@ -10,6 +10,7 @@
#include <mbgl/gl/context.hpp>
#include <mbgl/programs/debug_program.hpp>
+#include <mbgl/programs/program_parameters.hpp>
#include <mbgl/programs/fill_program.hpp>
#include <mbgl/programs/raster_program.hpp>
@@ -67,7 +68,7 @@ struct FrameData {
class Painter : private util::noncopyable {
public:
- Painter(gl::Context&, const TransformState&);
+ Painter(gl::Context&, const TransformState&, float pixelRatio);
~Painter();
void render(const style::Style&,
diff --git a/src/mbgl/renderer/painter_circle.cpp b/src/mbgl/renderer/painter_circle.cpp
index e9c828bcd8..763181605f 100644
--- a/src/mbgl/renderer/painter_circle.cpp
+++ b/src/mbgl/renderer/painter_circle.cpp
@@ -45,8 +45,7 @@ void Painter::renderCircle(PaintParameters& parameters,
pixelsToGLUnits[0] * state.getAltitude(),
pixelsToGLUnits[1] * state.getAltitude()
}}
- : pixelsToGLUnits },
- uniforms::u_devicepixelratio::Value{ frame.pixelRatio },
+ : pixelsToGLUnits }
},
*bucket.vertexBuffer,
*bucket.indexBuffer,
diff --git a/src/mbgl/renderer/painter_line.cpp b/src/mbgl/renderer/painter_line.cpp
index a495edc428..151228ee95 100644
--- a/src/mbgl/renderer/painter_line.cpp
+++ b/src/mbgl/renderer/painter_line.cpp
@@ -70,7 +70,6 @@ void Painter::renderLine(PaintParameters& parameters,
draw(parameters.programs.linePattern,
LinePatternProgram::uniformValues(
properties,
- frame.pixelRatio,
tile,
state,
*posA,
@@ -80,7 +79,6 @@ void Painter::renderLine(PaintParameters& parameters,
draw(parameters.programs.line,
LineProgram::uniformValues(
properties,
- frame.pixelRatio,
tile,
state));
}