summaryrefslogtreecommitdiff
path: root/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp
diff options
context:
space:
mode:
authorGali Nelle <galinelle.mapbox@gmail.com>2020-02-09 17:09:01 +0200
committerGali Nelle <galinelle.mapbox@gmail.com>2020-02-17 13:35:41 +0200
commit6f33547d757fb1394d1e643cdc226ae30b2edbc6 (patch)
tree02e76ddcb9e26381a9152e55287aa4d4d2d87fa5 /src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp
parent97cab6365bd083d162544eb4bcae4ebd47a7ecae (diff)
downloadqtlocation-mapboxgl-6f33547d757fb1394d1e643cdc226ae30b2edbc6.tar.gz
Add tracing entry points in the rendering pipelineupstream/galinelle_mbgl_tracing
This also includes a default tracing implementation that does not require hooking into a platform instrumentation, but simply stores timestamps into an array that can be dumped into a json file. Among possible use cases, dumping such metrics to file in CI to detect regressions of specific stages of the pipeline.
Diffstat (limited to 'src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp')
-rw-r--r--src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp b/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp
index af0bc788d0..df3bab4d92 100644
--- a/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp
+++ b/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp
@@ -16,6 +16,7 @@
#include <mbgl/tile/tile.hpp>
#include <mbgl/util/intersection_tests.hpp>
#include <mbgl/util/math.hpp>
+#include <mbgl/perf/runtime_metrics.hpp>
namespace mbgl {
@@ -71,7 +72,7 @@ void RenderFillExtrusionLayer::render(PaintParameters& parameters) {
if (parameters.pass != RenderPass::Translucent) {
return;
}
-
+ MBGL_TRACE_RENDERER_BEGIN(extrusion_layer);
const auto& evaluated = static_cast<const FillExtrusionLayerProperties&>(*evaluatedProperties).evaluated;
const auto& crossfade = static_cast<const FillExtrusionLayerProperties&>(*evaluatedProperties).crossfade;
if (evaluatedProperties->renderPasses == mbgl::underlying_type(RenderPass::None)) {
@@ -224,6 +225,7 @@ void RenderFillExtrusionLayer::render(PaintParameters& parameters) {
// to prevent the second draw in cases where we have coincident polygons.
drawTiles(parameters.stencilModeFor3D(), parameters.colorModeForRenderPass(), "color");
}
+ MBGL_TRACE_RENDERER_END(extrusion_layer);
}
bool RenderFillExtrusionLayer::queryIntersectsFeature(const GeometryCoordinates& queryGeometry,