summaryrefslogtreecommitdiff
path: root/src/mbgl/gl/render_pass.cpp
diff options
context:
space:
mode:
authorKonstantin Käfer <mail@kkaefer.com>2019-04-02 22:35:46 +0200
committerKonstantin Käfer <mail@kkaefer.com>2019-04-05 11:49:17 +0200
commitd7aaf83421261087a99d18d92eca9637c1bf72f8 (patch)
treedf938a5b6fe40c9e665e028285d28eb88e0dfea2 /src/mbgl/gl/render_pass.cpp
parentb1a2513b61761d09b3ae08904c03d28caedd09fe (diff)
downloadqtlocation-mapboxgl-d7aaf83421261087a99d18d92eca9637c1bf72f8.tar.gz
[core] introduce gfx::RenderPass
Diffstat (limited to 'src/mbgl/gl/render_pass.cpp')
-rw-r--r--src/mbgl/gl/render_pass.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/mbgl/gl/render_pass.cpp b/src/mbgl/gl/render_pass.cpp
new file mode 100644
index 0000000000..b327f7954f
--- /dev/null
+++ b/src/mbgl/gl/render_pass.cpp
@@ -0,0 +1,28 @@
+#include <mbgl/gl/render_pass.hpp>
+#include <mbgl/gl/command_encoder.hpp>
+#include <mbgl/gl/renderable_resource.hpp>
+#include <mbgl/gl/context.hpp>
+
+namespace mbgl {
+namespace gl {
+
+RenderPass::RenderPass(gl::CommandEncoder& commandEncoder_,
+ const char* name,
+ const gfx::RenderPassDescriptor& descriptor)
+ : commandEncoder(commandEncoder_), debugGroup(commandEncoder.createDebugGroup(name)) {
+ descriptor.renderable.getResource<gl::RenderableResource>().bind();
+ const auto clearDebugGroup(commandEncoder.createDebugGroup("clear"));
+ commandEncoder.context.clear(descriptor.clearColor, descriptor.clearDepth,
+ descriptor.clearStencil);
+}
+
+void RenderPass::pushDebugGroup(const char* name) {
+ commandEncoder.pushDebugGroup(name);
+}
+
+void RenderPass::popDebugGroup() {
+ commandEncoder.popDebugGroup();
+}
+
+} // namespace gl
+} // namespace mbgl