diff options
Diffstat (limited to 'source/blender/draw/engines/overlay/overlay_instance.cc')
-rw-r--r-- | source/blender/draw/engines/overlay/overlay_instance.cc | 41 |
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 |