summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/mbgl/map/map.hpp2
-rw-r--r--include/mbgl/renderer/painter.hpp4
-rw-r--r--src/map/map.cpp12
-rw-r--r--src/renderer/painter.cpp8
-rw-r--r--src/renderer/painter_fill.cpp6
-rw-r--r--src/renderer/painter_line.cpp2
-rw-r--r--src/renderer/painter_raster.cpp6
-rw-r--r--src/renderer/painter_symbol.cpp2
8 files changed, 21 insertions, 21 deletions
diff --git a/include/mbgl/map/map.hpp b/include/mbgl/map/map.hpp
index b837f79282..14f8f40916 100644
--- a/include/mbgl/map/map.hpp
+++ b/include/mbgl/map/map.hpp
@@ -45,8 +45,6 @@ public:
// Triggers a lazy rerender: only performs a render when the map is not clean.
void rerender();
- enum RenderPass { Opaque, Translucent };
-
void renderLayer(std::shared_ptr<StyleLayer> layer_desc, RenderPass pass, const Tile::ID* id = nullptr, const mat4* matrix = nullptr);
// Forces a map update: always triggers a rerender.
diff --git a/include/mbgl/renderer/painter.hpp b/include/mbgl/renderer/painter.hpp
index 710e6134b7..385e8bdd0e 100644
--- a/include/mbgl/renderer/painter.hpp
+++ b/include/mbgl/renderer/painter.hpp
@@ -29,6 +29,8 @@
namespace mbgl {
+enum class RenderPass : bool { Opaque, Translucent };
+
class Transform;
class Style;
class Tile;
@@ -154,7 +156,7 @@ private:
bool gl_depthMask = true;
std::array<uint16_t, 2> gl_viewport = {{ 0, 0 }};
float strata = 0;
- enum { Opaque, Translucent } pass = Opaque;
+ RenderPass pass = RenderPass::Opaque;
const float strata_epsilon = 1.0f / (1 << 16);
public:
diff --git a/src/map/map.cpp b/src/map/map.cpp
index 3a46be466c..60ddaa5976 100644
--- a/src/map/map.cpp
+++ b/src/map/map.cpp
@@ -611,7 +611,7 @@ void Map::renderLayers(std::shared_ptr<StyleLayerGroup> group) {
for (auto it = group->layers.rbegin(), end = group->layers.rend(); it != end; ++it, ++i) {
painter.setOpaque();
painter.setStrata(i * strata_thickness);
- renderLayer(*it, Opaque);
+ renderLayer(*it, RenderPass::Opaque);
}
if (debug::renderTree) {
std::cout << std::string(--indent * 4, ' ') << "}" << std::endl;
@@ -627,7 +627,7 @@ void Map::renderLayers(std::shared_ptr<StyleLayerGroup> group) {
for (auto it = group->layers.begin(), end = group->layers.end(); it != end; ++it, --i) {
painter.setTranslucent();
painter.setStrata(i * strata_thickness);
- renderLayer(*it, Translucent);
+ renderLayer(*it, RenderPass::Translucent);
}
if (debug::renderTree) {
std::cout << std::string(--indent * 4, ' ') << "}" << std::endl;
@@ -637,7 +637,7 @@ void Map::renderLayers(std::shared_ptr<StyleLayerGroup> group) {
void Map::renderLayer(std::shared_ptr<StyleLayer> layer_desc, RenderPass pass, const Tile::ID* id, const mat4* matrix) {
if (layer_desc->layers && layer_desc->type != StyleLayerType::Raster) {
// This is a layer group. We render them during our translucent render pass.
- if (pass == Translucent) {
+ if (pass == RenderPass::Translucent) {
const CompositeProperties &properties = layer_desc->getProperties<CompositeProperties>();
if (properties.isVisible()) {
gl::group group(std::string("group: ") + layer_desc->id);
@@ -698,15 +698,15 @@ void Map::renderLayer(std::shared_ptr<StyleLayer> layer_desc, RenderPass pass, c
if (!layer_desc->getProperties<FillProperties>().isVisible()) return;
break;
case StyleLayerType::Line:
- if (pass == Opaque) return;
+ if (pass == RenderPass::Opaque) return;
if (!layer_desc->getProperties<LineProperties>().isVisible()) return;
break;
case StyleLayerType::Symbol:
- if (pass == Opaque) return;
+ if (pass == RenderPass::Opaque) return;
if (!layer_desc->getProperties<SymbolProperties>().isVisible()) return;
break;
case StyleLayerType::Raster:
- if (pass == Opaque) return;
+ if (pass == RenderPass::Opaque) return;
if (!layer_desc->getProperties<RasterProperties>().isVisible()) return;
break;
default:
diff --git a/src/renderer/painter.cpp b/src/renderer/painter.cpp
index e2da2d0e56..956543d26b 100644
--- a/src/renderer/painter.cpp
+++ b/src/renderer/painter.cpp
@@ -144,16 +144,16 @@ void Painter::clear() {
}
void Painter::setOpaque() {
- if (pass != Opaque) {
- pass = Opaque;
+ if (pass != RenderPass::Opaque) {
+ pass = RenderPass::Opaque;
glDisable(GL_BLEND);
depthMask(true);
}
}
void Painter::setTranslucent() {
- if (pass != Translucent) {
- pass = Translucent;
+ if (pass != RenderPass::Translucent) {
+ pass = RenderPass::Translucent;
glEnable(GL_BLEND);
depthMask(false);
}
diff --git a/src/renderer/painter_fill.cpp b/src/renderer/painter_fill.cpp
index 1717639338..8306dd0a2e 100644
--- a/src/renderer/painter_fill.cpp
+++ b/src/renderer/painter_fill.cpp
@@ -38,7 +38,7 @@ void Painter::renderFill(FillBucket& bucket, const FillProperties& properties, c
// Because we're drawing top-to-bottom, and we update the stencil mask
// below, we have to draw the outline first (!)
- if (outline && pass == Translucent) {
+ if (outline && pass == RenderPass::Translucent) {
useProgram(outlineShader->program);
outlineShader->setMatrix(vtxMatrix);
lineWidth(2.0f); // This is always fixed and does not depend on the pixelRatio!
@@ -70,7 +70,7 @@ void Painter::renderFill(FillBucket& bucket, const FillProperties& properties, c
// glStencilOp(GL_KEEP, GL_KEEP, GL_INCR_WRAP);
}
- if ((fill_color[3] >= 1.0f) == (pass == Opaque)) {
+ if ((fill_color[3] >= 1.0f) == (pass == RenderPass::Opaque)) {
Sprite &sprite = *map.getSprite();
if (properties.image.size() && sprite) {
SpriteAtlas &spriteAtlas = *map.getSpriteAtlas();
@@ -128,7 +128,7 @@ void Painter::renderFill(FillBucket& bucket, const FillProperties& properties, c
// Because we're drawing top-to-bottom, and we update the stencil mask
// below, we have to draw the outline first (!)
- if (fringeline && pass == Translucent) {
+ if (fringeline && pass == RenderPass::Translucent) {
useProgram(outlineShader->program);
outlineShader->setMatrix(vtxMatrix);
lineWidth(2.0f); // This is always fixed and does not depend on the pixelRatio!
diff --git a/src/renderer/painter_line.cpp b/src/renderer/painter_line.cpp
index 20c6491fcc..375b99297d 100644
--- a/src/renderer/painter_line.cpp
+++ b/src/renderer/painter_line.cpp
@@ -7,7 +7,7 @@ using namespace mbgl;
void Painter::renderLine(LineBucket& bucket, std::shared_ptr<StyleLayer> layer_desc, const Tile::ID& id, const mat4 &matrix) {
// Abort early.
- if (pass == Opaque) return;
+ if (pass == RenderPass::Opaque) return;
if (!bucket.hasData()) return;
const LineProperties &properties = layer_desc->getProperties<LineProperties>();
diff --git a/src/renderer/painter_raster.cpp b/src/renderer/painter_raster.cpp
index b5f09a3e19..3f2de8591d 100644
--- a/src/renderer/painter_raster.cpp
+++ b/src/renderer/painter_raster.cpp
@@ -10,7 +10,7 @@
using namespace mbgl;
void Painter::renderRaster(RasterBucket& bucket, std::shared_ptr<StyleLayer> layer_desc, const Tile::ID& id, const mat4 &matrix) {
- if (pass != Translucent) return;
+ if (pass != RenderPass::Translucent) return;
const RasterProperties &properties = layer_desc->getProperties<RasterProperties>();
@@ -37,9 +37,9 @@ void Painter::renderRaster(RasterBucket& bucket, std::shared_ptr<StyleLayer> lay
int i = 0;
for (auto it = layer_desc->layers->layers.begin(), end = layer_desc->layers->layers.end(); it != end; ++it, --i) {
setOpaque();
- map.renderLayer(*it, Map::RenderPass::Opaque, &id, &preMatrix);
+ map.renderLayer(*it, RenderPass::Opaque, &id, &preMatrix);
setTranslucent();
- map.renderLayer(*it, Map::RenderPass::Translucent, &id, &preMatrix);
+ map.renderLayer(*it, RenderPass::Translucent, &id, &preMatrix);
}
if (bucket.properties.blur > 0) {
diff --git a/src/renderer/painter_symbol.cpp b/src/renderer/painter_symbol.cpp
index 497051f772..720f84d24e 100644
--- a/src/renderer/painter_symbol.cpp
+++ b/src/renderer/painter_symbol.cpp
@@ -12,7 +12,7 @@ namespace mbgl {
void Painter::renderSymbol(SymbolBucket &bucket, std::shared_ptr<StyleLayer> layer_desc,
const Tile::ID &/*id*/, const mat4 &matrix) {
// Abort early.
- if (pass == Opaque) {
+ if (pass == RenderPass::Opaque) {
return;
}