diff options
author | Thomas Mönicke <thomas.moenicke@mapbox.com> | 2020-02-03 16:06:45 +0200 |
---|---|---|
committer | Thomas Mönicke <thomas.moenicke@mapbox.com> | 2020-02-03 16:07:44 +0200 |
commit | 2e1bda2ad8ba06a812f767f32b76c5b46d412f5a (patch) | |
tree | a80de946c32b1adeb6fdaec066e06be9eaaf988c | |
parent | 7e59c4207ddc205f0be2d69365784f2bb74aaf95 (diff) | |
download | qtlocation-mapboxgl-upstream/tmoenicke-gl-build-flag.tar.gz |
[build] Moving custom layer to mbgl/glupstream/tmoenicke-gl-build-flag
-rw-r--r-- | include/mbgl/gl/custom_layer_factory.hpp (renamed from include/mbgl/layermanager/custom_layer_factory.hpp) | 0 | ||||
-rw-r--r-- | next/CMakeLists.txt | 12 | ||||
-rw-r--r-- | platform/default/src/mbgl/layermanager/layer_manager.cpp | 6 | ||||
-rw-r--r-- | src/mbgl/gl/custom_layer_factory.cpp (renamed from src/mbgl/layermanager/custom_layer_factory.cpp) | 5 | ||||
-rw-r--r-- | src/mbgl/gl/render_custom_layer.cpp (renamed from src/mbgl/renderer/layers/render_custom_layer.cpp) | 26 | ||||
-rw-r--r-- | src/mbgl/gl/render_custom_layer.hpp (renamed from src/mbgl/renderer/layers/render_custom_layer.hpp) | 0 | ||||
-rw-r--r-- | src/mbgl/style/layers/custom_layer.cpp | 4 | ||||
-rw-r--r-- | src/mbgl/tile/geometry_tile.cpp | 2 |
8 files changed, 26 insertions, 29 deletions
diff --git a/include/mbgl/layermanager/custom_layer_factory.hpp b/include/mbgl/gl/custom_layer_factory.hpp index 963a3dc2fd..963a3dc2fd 100644 --- a/include/mbgl/layermanager/custom_layer_factory.hpp +++ b/include/mbgl/gl/custom_layer_factory.hpp diff --git a/next/CMakeLists.txt b/next/CMakeLists.txt index 9b57650d22..36001bc6eb 100644 --- a/next/CMakeLists.txt +++ b/next/CMakeLists.txt @@ -100,7 +100,6 @@ add_library( ${MBGL_ROOT}/include/mbgl/gfx/rendering_stats.hpp ${MBGL_ROOT}/include/mbgl/layermanager/background_layer_factory.hpp ${MBGL_ROOT}/include/mbgl/layermanager/circle_layer_factory.hpp - ${MBGL_ROOT}/include/mbgl/layermanager/custom_layer_factory.hpp ${MBGL_ROOT}/include/mbgl/layermanager/fill_extrusion_layer_factory.hpp ${MBGL_ROOT}/include/mbgl/layermanager/fill_layer_factory.hpp ${MBGL_ROOT}/include/mbgl/layermanager/heatmap_layer_factory.hpp @@ -323,7 +322,6 @@ add_library( ${MBGL_ROOT}/src/mbgl/gfx/vertex_vector.hpp ${MBGL_ROOT}/src/mbgl/layermanager/background_layer_factory.cpp ${MBGL_ROOT}/src/mbgl/layermanager/circle_layer_factory.cpp - ${MBGL_ROOT}/src/mbgl/layermanager/custom_layer_factory.cpp ${MBGL_ROOT}/src/mbgl/layermanager/fill_extrusion_layer_factory.cpp ${MBGL_ROOT}/src/mbgl/layermanager/fill_layer_factory.cpp ${MBGL_ROOT}/src/mbgl/layermanager/heatmap_layer_factory.cpp @@ -442,8 +440,6 @@ add_library( ${MBGL_ROOT}/src/mbgl/renderer/layers/render_background_layer.hpp ${MBGL_ROOT}/src/mbgl/renderer/layers/render_circle_layer.cpp ${MBGL_ROOT}/src/mbgl/renderer/layers/render_circle_layer.hpp - ${MBGL_ROOT}/src/mbgl/renderer/layers/render_custom_layer.cpp - ${MBGL_ROOT}/src/mbgl/renderer/layers/render_custom_layer.hpp ${MBGL_ROOT}/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp ${MBGL_ROOT}/src/mbgl/renderer/layers/render_fill_extrusion_layer.hpp ${MBGL_ROOT}/src/mbgl/renderer/layers/render_fill_layer.cpp @@ -806,8 +802,6 @@ add_library( ${MBGL_ROOT}/src/mbgl/util/work_request.cpp ${MBGL_ROOT}/src/parsedate/parsedate.cpp ${MBGL_ROOT}/src/parsedate/parsedate.hpp - ${MBGL_ROOT}/src/mbgl/platform/gl_functions.cpp - ${MBGL_ROOT}/include/mbgl/platform/gl_functions.hpp ) if(MBGL_WITH_OPENGL) @@ -820,14 +814,17 @@ if(MBGL_WITH_OPENGL) mbgl-core PRIVATE ${MBGL_ROOT}/include/mbgl/gfx/backend.hpp + ${MBGL_ROOT}/include/mbgl/gl/custom_layer_factory.hpp ${MBGL_ROOT}/include/mbgl/gl/renderable_resource.hpp ${MBGL_ROOT}/include/mbgl/gl/renderer_backend.hpp + ${MBGL_ROOT}/include/mbgl/platform/gl_functions.hpp ${MBGL_ROOT}/src/mbgl/gl/attribute.cpp ${MBGL_ROOT}/src/mbgl/gl/attribute.hpp ${MBGL_ROOT}/src/mbgl/gl/command_encoder.cpp ${MBGL_ROOT}/src/mbgl/gl/command_encoder.hpp ${MBGL_ROOT}/src/mbgl/gl/context.cpp ${MBGL_ROOT}/src/mbgl/gl/context.hpp + ${MBGL_ROOT}/src/mbgl/gl/custom_layer_factory.cpp ${MBGL_ROOT}/src/mbgl/gl/debugging_extension.cpp ${MBGL_ROOT}/src/mbgl/gl/debugging_extension.hpp ${MBGL_ROOT}/src/mbgl/gl/defines.hpp @@ -847,6 +844,8 @@ if(MBGL_WITH_OPENGL) ${MBGL_ROOT}/src/mbgl/gl/render_pass.hpp ${MBGL_ROOT}/src/mbgl/gl/renderbuffer_resource.hpp ${MBGL_ROOT}/src/mbgl/gl/renderer_backend.cpp + ${MBGL_ROOT}/src/mbgl/gl/render_custom_layer.cpp + ${MBGL_ROOT}/src/mbgl/gl/render_custom_layer.hpp ${MBGL_ROOT}/src/mbgl/gl/state.hpp ${MBGL_ROOT}/src/mbgl/gl/texture.cpp ${MBGL_ROOT}/src/mbgl/gl/texture.hpp @@ -864,6 +863,7 @@ if(MBGL_WITH_OPENGL) ${MBGL_ROOT}/src/mbgl/gl/vertex_array_extension.hpp ${MBGL_ROOT}/src/mbgl/gl/vertex_buffer_resource.cpp ${MBGL_ROOT}/src/mbgl/gl/vertex_buffer_resource.hpp + ${MBGL_ROOT}/src/mbgl/platform/gl_functions.cpp ${MBGL_ROOT}/src/mbgl/programs/gl/background.cpp ${MBGL_ROOT}/src/mbgl/programs/gl/background_pattern.cpp ${MBGL_ROOT}/src/mbgl/programs/gl/circle.cpp diff --git a/platform/default/src/mbgl/layermanager/layer_manager.cpp b/platform/default/src/mbgl/layermanager/layer_manager.cpp index b8abf794fc..f9e46d78ab 100644 --- a/platform/default/src/mbgl/layermanager/layer_manager.cpp +++ b/platform/default/src/mbgl/layermanager/layer_manager.cpp @@ -2,7 +2,9 @@ #include <mbgl/layermanager/background_layer_factory.hpp> #include <mbgl/layermanager/circle_layer_factory.hpp> -#include <mbgl/layermanager/custom_layer_factory.hpp> +#ifdef MBGL_RENDER_BACKEND_OPENGL +#include <mbgl/gl/custom_layer_factory.hpp> +#endif #include <mbgl/layermanager/fill_extrusion_layer_factory.hpp> #include <mbgl/layermanager/fill_layer_factory.hpp> #include <mbgl/layermanager/heatmap_layer_factory.hpp> @@ -59,9 +61,11 @@ LayerManagerDefault::LayerManagerDefault() { #if !defined(MBGL_LAYER_HEATMAP_DISABLE_ALL) addLayerType(std::make_unique<HeatmapLayerFactory>()); #endif +#ifdef MBGL_RENDER_BACKEND_OPENGL #if !defined(MBGL_LAYER_CUSTOM_DISABLE_ALL) addLayerType(std::make_unique<CustomLayerFactory>()); #endif +#endif } void LayerManagerDefault::addLayerType(std::unique_ptr<LayerFactory> factory) { diff --git a/src/mbgl/layermanager/custom_layer_factory.cpp b/src/mbgl/gl/custom_layer_factory.cpp index f84f261e79..b70bb41c92 100644 --- a/src/mbgl/layermanager/custom_layer_factory.cpp +++ b/src/mbgl/gl/custom_layer_factory.cpp @@ -1,6 +1,5 @@ -#include <mbgl/layermanager/custom_layer_factory.hpp> - -#include <mbgl/renderer/layers/render_custom_layer.hpp> +#include <mbgl/gl/custom_layer_factory.hpp> +#include <mbgl/gl/render_custom_layer.hpp> #include <mbgl/style/layers/custom_layer.hpp> #include <mbgl/style/layers/custom_layer_impl.hpp> diff --git a/src/mbgl/renderer/layers/render_custom_layer.cpp b/src/mbgl/gl/render_custom_layer.cpp index b891869353..85c060c740 100644 --- a/src/mbgl/renderer/layers/render_custom_layer.cpp +++ b/src/mbgl/gl/render_custom_layer.cpp @@ -3,13 +3,11 @@ #include <mbgl/map/transform_state.hpp> #include <mbgl/platform/gl_functions.hpp> #include <mbgl/renderer/bucket.hpp> -#include <mbgl/renderer/layers/render_custom_layer.hpp> #include <mbgl/renderer/paint_parameters.hpp> #include <mbgl/style/layers/custom_layer_impl.hpp> -#ifdef MBGL_RENDER_BACKEND_OPENGL #include <mbgl/gl/context.hpp> +#include <mbgl/gl/render_custom_layer.hpp> #include <mbgl/gl/renderable_resource.hpp> -#endif #include <mbgl/util/mat4.hpp> namespace mbgl { @@ -71,18 +69,16 @@ void RenderCustomLayer::render(PaintParameters& paintParameters) { } const TransformState& state = paintParameters.state; -#ifdef MBGL_RENDER_BACKEND_OPENGL + // TODO: remove cast auto& glContext = static_cast<gl::Context&>(paintParameters.context); - if (gfx::Backend::GetType() == gfx::Backend::Type::OpenGL) { - // Reset GL state to a known state so the CustomLayer always has a clean slate. - glContext.bindVertexArray = 0; - glContext.setDepthMode(paintParameters.depthModeForSublayer(0, gfx::DepthMaskType::ReadOnly)); - glContext.setStencilMode(gfx::StencilMode::disabled()); - glContext.setColorMode(paintParameters.colorModeForRenderPass()); - glContext.setCullFaceMode(gfx::CullFaceMode::disabled()); - } -#endif + // Reset GL state to a known state so the CustomLayer always has a clean slate. + glContext.bindVertexArray = 0; + glContext.setDepthMode(paintParameters.depthModeForSublayer(0, gfx::DepthMaskType::ReadOnly)); + glContext.setStencilMode(gfx::StencilMode::disabled()); + glContext.setColorMode(paintParameters.colorModeForRenderPass()); + glContext.setCullFaceMode(gfx::CullFaceMode::disabled()); + CustomLayerRenderParameters parameters; parameters.width = state.getSize().width; @@ -98,16 +94,12 @@ void RenderCustomLayer::render(PaintParameters& paintParameters) { parameters.projectionMatrix = projMatrix; MBGL_CHECK_ERROR(host->render(parameters)); -#ifdef MBGL_RENDER_BACKEND_OPENGL if (gfx::Backend::GetType() == gfx::Backend::Type::OpenGL) { // Reset the view back to our original one, just in case the CustomLayer changed // the viewport or Framebuffer. paintParameters.backend.getDefaultRenderable().getResource<gl::RenderableResource>().bind(); glContext.setDirtyState(); } -#else - (void)&paintParameters; -#endif } } // namespace mbgl diff --git a/src/mbgl/renderer/layers/render_custom_layer.hpp b/src/mbgl/gl/render_custom_layer.hpp index 698621eae6..698621eae6 100644 --- a/src/mbgl/renderer/layers/render_custom_layer.hpp +++ b/src/mbgl/gl/render_custom_layer.hpp diff --git a/src/mbgl/style/layers/custom_layer.cpp b/src/mbgl/style/layers/custom_layer.cpp index 30bb2d220e..44fb982167 100644 --- a/src/mbgl/style/layers/custom_layer.cpp +++ b/src/mbgl/style/layers/custom_layer.cpp @@ -2,7 +2,9 @@ #include <mbgl/style/layers/custom_layer_impl.hpp> #include <mbgl/style/layer_observer.hpp> -#include <mbgl/renderer/layers/render_custom_layer.hpp> +#ifdef MBGL_RENDER_BACKEND_OPENGL +#include <mbgl/gl/render_custom_layer.hpp> +#endif namespace mbgl { namespace style { diff --git a/src/mbgl/tile/geometry_tile.cpp b/src/mbgl/tile/geometry_tile.cpp index 04ee5f9df7..b92b4485b1 100644 --- a/src/mbgl/tile/geometry_tile.cpp +++ b/src/mbgl/tile/geometry_tile.cpp @@ -9,7 +9,7 @@ #include <mbgl/renderer/render_source.hpp> #include <mbgl/renderer/tile_parameters.hpp> #include <mbgl/renderer/layers/render_background_layer.hpp> -#include <mbgl/renderer/layers/render_custom_layer.hpp> +#include <mbgl/gl/render_custom_layer.hpp> #include <mbgl/renderer/layers/render_symbol_layer.hpp> #include <mbgl/renderer/buckets/symbol_bucket.hpp> #include <mbgl/renderer/query.hpp> |