summaryrefslogtreecommitdiff
path: root/src/mbgl/renderer/sources
diff options
context:
space:
mode:
Diffstat (limited to 'src/mbgl/renderer/sources')
-rw-r--r--src/mbgl/renderer/sources/render_custom_geometry_source.cpp8
-rw-r--r--src/mbgl/renderer/sources/render_custom_geometry_source.hpp3
-rw-r--r--src/mbgl/renderer/sources/render_geojson_source.cpp8
-rw-r--r--src/mbgl/renderer/sources/render_geojson_source.hpp3
-rw-r--r--src/mbgl/renderer/sources/render_image_source.cpp16
-rw-r--r--src/mbgl/renderer/sources/render_image_source.hpp3
-rw-r--r--src/mbgl/renderer/sources/render_raster_dem_source.cpp8
-rw-r--r--src/mbgl/renderer/sources/render_raster_dem_source.hpp3
-rw-r--r--src/mbgl/renderer/sources/render_raster_source.cpp8
-rw-r--r--src/mbgl/renderer/sources/render_raster_source.hpp3
-rw-r--r--src/mbgl/renderer/sources/render_vector_source.cpp8
-rw-r--r--src/mbgl/renderer/sources/render_vector_source.hpp3
12 files changed, 51 insertions, 23 deletions
diff --git a/src/mbgl/renderer/sources/render_custom_geometry_source.cpp b/src/mbgl/renderer/sources/render_custom_geometry_source.cpp
index 8de79d8016..45d49ffa5b 100644
--- a/src/mbgl/renderer/sources/render_custom_geometry_source.cpp
+++ b/src/mbgl/renderer/sources/render_custom_geometry_source.cpp
@@ -47,8 +47,12 @@ void RenderCustomGeometrySource::update(Immutable<style::Source::Impl> baseImpl_
});
}
-void RenderCustomGeometrySource::startRender(PaintParameters& parameters) {
- tilePyramid.startRender(parameters);
+void RenderCustomGeometrySource::upload(gfx::UploadPass& uploadPass) {
+ tilePyramid.upload(uploadPass);
+}
+
+void RenderCustomGeometrySource::prepare(PaintParameters& parameters) {
+ tilePyramid.prepare(parameters);
}
void RenderCustomGeometrySource::finishRender(PaintParameters& parameters) {
diff --git a/src/mbgl/renderer/sources/render_custom_geometry_source.hpp b/src/mbgl/renderer/sources/render_custom_geometry_source.hpp
index be9e022eb9..485979bee9 100644
--- a/src/mbgl/renderer/sources/render_custom_geometry_source.hpp
+++ b/src/mbgl/renderer/sources/render_custom_geometry_source.hpp
@@ -18,7 +18,8 @@ public:
bool needsRelayout,
const TileParameters&) final;
- void startRender(PaintParameters&) final;
+ void upload(gfx::UploadPass&) final;
+ void prepare(PaintParameters&) final;
void finishRender(PaintParameters&) final;
std::vector<std::reference_wrapper<RenderTile>> getRenderTiles() final;
diff --git a/src/mbgl/renderer/sources/render_geojson_source.cpp b/src/mbgl/renderer/sources/render_geojson_source.cpp
index 0234b97eca..7ff371620a 100644
--- a/src/mbgl/renderer/sources/render_geojson_source.cpp
+++ b/src/mbgl/renderer/sources/render_geojson_source.cpp
@@ -123,8 +123,12 @@ void RenderGeoJSONSource::update(Immutable<style::Source::Impl> baseImpl_,
});
}
-void RenderGeoJSONSource::startRender(PaintParameters& parameters) {
- tilePyramid.startRender(parameters);
+void RenderGeoJSONSource::upload(gfx::UploadPass& parameters) {
+ tilePyramid.upload(parameters);
+}
+
+void RenderGeoJSONSource::prepare(PaintParameters& parameters) {
+ tilePyramid.prepare(parameters);
}
void RenderGeoJSONSource::finishRender(PaintParameters& parameters) {
diff --git a/src/mbgl/renderer/sources/render_geojson_source.hpp b/src/mbgl/renderer/sources/render_geojson_source.hpp
index c8e98f96ee..1a2ff55427 100644
--- a/src/mbgl/renderer/sources/render_geojson_source.hpp
+++ b/src/mbgl/renderer/sources/render_geojson_source.hpp
@@ -23,7 +23,8 @@ public:
bool needsRelayout,
const TileParameters&) final;
- void startRender(PaintParameters&) final;
+ void upload(gfx::UploadPass&) final;
+ void prepare(PaintParameters&) final;
void finishRender(PaintParameters&) final;
std::vector<std::reference_wrapper<RenderTile>> getRenderTiles() final;
diff --git a/src/mbgl/renderer/sources/render_image_source.cpp b/src/mbgl/renderer/sources/render_image_source.cpp
index b6a75acacc..e63c9ad15c 100644
--- a/src/mbgl/renderer/sources/render_image_source.cpp
+++ b/src/mbgl/renderer/sources/render_image_source.cpp
@@ -31,7 +31,13 @@ bool RenderImageSource::isLoaded() const {
return !!bucket;
}
-void RenderImageSource::startRender(PaintParameters& parameters) {
+void RenderImageSource::upload(gfx::UploadPass& uploadPass) {
+ if (bucket->needsUpload()) {
+ bucket->upload(uploadPass);
+ }
+}
+
+void RenderImageSource::prepare(PaintParameters& parameters) {
if (!isLoaded()) {
return;
}
@@ -45,10 +51,6 @@ void RenderImageSource::startRender(PaintParameters& parameters) {
matrix::multiply(matrix, parameters.alignedProjMatrix, matrix);
matrices.push_back(matrix);
}
-
- if (bucket->needsUpload()) {
- bucket->upload(parameters.context);
- }
}
void RenderImageSource::finishRender(PaintParameters& parameters) {
@@ -70,7 +72,7 @@ void RenderImageSource::finishRender(PaintParameters& parameters) {
gfx::StencilMode::disabled(),
gfx::ColorMode::unblended(),
gfx::CullFaceMode::disabled(),
- parameters.staticData.tileBorderIndexBuffer,
+ *parameters.staticData.tileBorderIndexBuffer,
parameters.staticData.tileBorderSegments,
programInstance.computeAllUniformValues(
DebugProgram::LayoutUniformValues {
@@ -82,7 +84,7 @@ void RenderImageSource::finishRender(PaintParameters& parameters) {
parameters.state.getZoom()
),
programInstance.computeAllAttributeBindings(
- parameters.staticData.tileVertexBuffer,
+ *parameters.staticData.tileVertexBuffer,
paintAttributeData,
properties
),
diff --git a/src/mbgl/renderer/sources/render_image_source.hpp b/src/mbgl/renderer/sources/render_image_source.hpp
index e5cdcd4d81..c07fd467cb 100644
--- a/src/mbgl/renderer/sources/render_image_source.hpp
+++ b/src/mbgl/renderer/sources/render_image_source.hpp
@@ -15,7 +15,8 @@ public:
bool isLoaded() const final;
- void startRender(PaintParameters&) final;
+ void upload(gfx::UploadPass&) final;
+ void prepare(PaintParameters&) final;
void finishRender(PaintParameters&) final;
void update(Immutable<style::Source::Impl>,
diff --git a/src/mbgl/renderer/sources/render_raster_dem_source.cpp b/src/mbgl/renderer/sources/render_raster_dem_source.cpp
index c942432e64..c9f17f38c4 100644
--- a/src/mbgl/renderer/sources/render_raster_dem_source.cpp
+++ b/src/mbgl/renderer/sources/render_raster_dem_source.cpp
@@ -126,9 +126,13 @@ void RenderRasterDEMSource::onTileChanged(Tile& tile){
RenderSource::onTileChanged(tile);
}
-void RenderRasterDEMSource::startRender(PaintParameters& parameters) {
+void RenderRasterDEMSource::upload(gfx::UploadPass& parameters) {
+ tilePyramid.upload(parameters);
+}
+
+void RenderRasterDEMSource::prepare(PaintParameters& parameters) {
algorithm::updateTileMasks(tilePyramid.getRenderTiles());
- tilePyramid.startRender(parameters);
+ tilePyramid.prepare(parameters);
}
void RenderRasterDEMSource::finishRender(PaintParameters& parameters) {
diff --git a/src/mbgl/renderer/sources/render_raster_dem_source.hpp b/src/mbgl/renderer/sources/render_raster_dem_source.hpp
index af76e22da7..57180bb4e2 100644
--- a/src/mbgl/renderer/sources/render_raster_dem_source.hpp
+++ b/src/mbgl/renderer/sources/render_raster_dem_source.hpp
@@ -18,7 +18,8 @@ public:
bool needsRelayout,
const TileParameters&) final;
- void startRender(PaintParameters&) final;
+ void upload(gfx::UploadPass&) final;
+ void prepare(PaintParameters&) final;
void finishRender(PaintParameters&) final;
std::vector<std::reference_wrapper<RenderTile>> getRenderTiles() final;
diff --git a/src/mbgl/renderer/sources/render_raster_source.cpp b/src/mbgl/renderer/sources/render_raster_source.cpp
index 96e793f9b2..39cccd47e6 100644
--- a/src/mbgl/renderer/sources/render_raster_source.cpp
+++ b/src/mbgl/renderer/sources/render_raster_source.cpp
@@ -57,9 +57,13 @@ void RenderRasterSource::update(Immutable<style::Source::Impl> baseImpl_,
});
}
-void RenderRasterSource::startRender(PaintParameters& parameters) {
+void RenderRasterSource::upload(gfx::UploadPass& parameters) {
+ tilePyramid.upload(parameters);
+}
+
+void RenderRasterSource::prepare(PaintParameters& parameters) {
algorithm::updateTileMasks(tilePyramid.getRenderTiles());
- tilePyramid.startRender(parameters);
+ tilePyramid.prepare(parameters);
}
void RenderRasterSource::finishRender(PaintParameters& parameters) {
diff --git a/src/mbgl/renderer/sources/render_raster_source.hpp b/src/mbgl/renderer/sources/render_raster_source.hpp
index 24242949bb..e399893cb9 100644
--- a/src/mbgl/renderer/sources/render_raster_source.hpp
+++ b/src/mbgl/renderer/sources/render_raster_source.hpp
@@ -18,7 +18,8 @@ public:
bool needsRelayout,
const TileParameters&) final;
- void startRender(PaintParameters&) final;
+ void upload(gfx::UploadPass&) final;
+ void prepare(PaintParameters&) final;
void finishRender(PaintParameters&) final;
std::vector<std::reference_wrapper<RenderTile>> getRenderTiles() final;
diff --git a/src/mbgl/renderer/sources/render_vector_source.cpp b/src/mbgl/renderer/sources/render_vector_source.cpp
index 518692fc77..21b728e266 100644
--- a/src/mbgl/renderer/sources/render_vector_source.cpp
+++ b/src/mbgl/renderer/sources/render_vector_source.cpp
@@ -57,8 +57,12 @@ void RenderVectorSource::update(Immutable<style::Source::Impl> baseImpl_,
});
}
-void RenderVectorSource::startRender(PaintParameters& parameters) {
- tilePyramid.startRender(parameters);
+void RenderVectorSource::upload(gfx::UploadPass& parameters) {
+ tilePyramid.upload(parameters);
+}
+
+void RenderVectorSource::prepare(PaintParameters& parameters) {
+ tilePyramid.prepare(parameters);
}
void RenderVectorSource::finishRender(PaintParameters& parameters) {
diff --git a/src/mbgl/renderer/sources/render_vector_source.hpp b/src/mbgl/renderer/sources/render_vector_source.hpp
index fe7147fc25..bea9bad20e 100644
--- a/src/mbgl/renderer/sources/render_vector_source.hpp
+++ b/src/mbgl/renderer/sources/render_vector_source.hpp
@@ -18,7 +18,8 @@ public:
bool needsRelayout,
const TileParameters&) final;
- void startRender(PaintParameters&) final;
+ void upload(gfx::UploadPass&) final;
+ void prepare(PaintParameters&) final;
void finishRender(PaintParameters&) final;
std::vector<std::reference_wrapper<RenderTile>> getRenderTiles() final;