Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/draw/engines/overlay/overlay_instance.cc')
-rw-r--r--source/blender/draw/engines/overlay/overlay_instance.cc41
1 files changed, 41 insertions, 0 deletions
diff --git a/source/blender/draw/engines/overlay/overlay_instance.cc b/source/blender/draw/engines/overlay/overlay_instance.cc
new file mode 100644
index 00000000000..1d27c74e19a
--- /dev/null
+++ b/source/blender/draw/engines/overlay/overlay_instance.cc
@@ -0,0 +1,41 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+/** \file
+ * \ingroup overlay
+ */
+
+#include "overlay_instance.hh"
+
+namespace blender::draw::overlay {
+
+void Instance::init()
+{
+ GPUTexture *viewport_depth_tx = DRW_viewport_texture_list_get()->depth;
+ GPUTexture *viewport_color_tx = DRW_viewport_texture_list_get()->color_overlay;
+ overlay_fb.ensure(GPU_ATTACHMENT_NONE, GPU_ATTACHMENT_TEXTURE(viewport_color_tx));
+}
+
+void Instance::begin_sync()
+{
+ grid.begin_sync();
+}
+
+void Instance::object_sync(ObjectRef &ob_ref)
+{
+ UNUSED_VARS(ob_ref);
+}
+
+void Instance::end_sync()
+{
+}
+
+void Instance::draw(Manager &manager)
+{
+ const DRWView *view_old = DRW_view_default_get();
+ View view("OverlayView", view_old);
+
+ GPU_framebuffer_bind(overlay_fb);
+ grid.draw(manager, view);
+}
+
+} // namespace blender::draw::overlay