summaryrefslogtreecommitdiff
path: root/src/mbgl/renderer
diff options
context:
space:
mode:
authorKonstantin Käfer <mail@kkaefer.com>2017-03-15 18:43:58 +0100
committerKonstantin Käfer <mail@kkaefer.com>2017-03-22 15:59:10 +0100
commit3c91b6b7de487993e75de552ba44249740644e42 (patch)
tree69b8b2642b3d8496657db92459b0a23e130b501d /src/mbgl/renderer
parentd20327844cac88b6bf42b201eac35e816a189a8a (diff)
downloadqtlocation-mapboxgl-3c91b6b7de487993e75de552ba44249740644e42.tar.gz
[core] cache binary shaders on Android
Diffstat (limited to 'src/mbgl/renderer')
-rw-r--r--src/mbgl/renderer/painter.cpp16
-rw-r--r--src/mbgl/renderer/painter.hpp2
2 files changed, 11 insertions, 7 deletions
diff --git a/src/mbgl/renderer/painter.cpp b/src/mbgl/renderer/painter.cpp
index 27d24d14a9..754959438b 100644
--- a/src/mbgl/renderer/painter.cpp
+++ b/src/mbgl/renderer/painter.cpp
@@ -33,6 +33,8 @@
#include <mbgl/util/offscreen_texture.hpp>
+#include <mbgl/util/stopwatch.hpp>
+
#include <cassert>
#include <algorithm>
#include <iostream>
@@ -77,7 +79,10 @@ static gl::VertexVector<RasterLayoutVertex> rasterVertices() {
return result;
}
-Painter::Painter(gl::Context& context_, const TransformState& state_, float pixelRatio)
+Painter::Painter(gl::Context& context_,
+ const TransformState& state_,
+ float pixelRatio,
+ const std::string& programCacheDir)
: context(context_),
state(state_),
tileVertexBuffer(context.createVertexBuffer(tileVertices())),
@@ -91,12 +96,11 @@ Painter::Painter(gl::Context& context_, const TransformState& state_, float pixe
gl::debugging::enable();
- ProgramParameters programParameters{ pixelRatio, false };
- programs = std::make_unique<Programs>(context, programParameters);
+ programs = std::make_unique<Programs>(context,
+ ProgramParameters{ pixelRatio, false, programCacheDir });
#ifndef NDEBUG
-
- ProgramParameters programParametersOverdraw{ pixelRatio, true };
- overdrawPrograms = std::make_unique<Programs>(context, programParametersOverdraw);
+ overdrawPrograms =
+ std::make_unique<Programs>(context, ProgramParameters{ pixelRatio, true, programCacheDir });
#endif
}
diff --git a/src/mbgl/renderer/painter.hpp b/src/mbgl/renderer/painter.hpp
index 91f329a6eb..3dcc1d5d46 100644
--- a/src/mbgl/renderer/painter.hpp
+++ b/src/mbgl/renderer/painter.hpp
@@ -68,7 +68,7 @@ struct FrameData {
class Painter : private util::noncopyable {
public:
- Painter(gl::Context&, const TransformState&, float pixelRatio);
+ Painter(gl::Context&, const TransformState&, float pixelRatio, const std::string& programCacheDir);
~Painter();
void render(const style::Style&,