Blender
V3.3
|
#include <gl_drawlist.hh>
Public Member Functions | |
GLDrawList (int length) | |
~GLDrawList () | |
void | append (GPUBatch *batch, int i_first, int i_count) override |
void | submit () override |
![]() | |
virtual | ~DrawList () |
Implementation of Multi Draw Indirect using OpenGL.
Definition at line 29 of file gl_drawlist.hh.
GLDrawList::GLDrawList | ( | int | length | ) |
Definition at line 46 of file gl_drawlist.cc.
References BLI_assert, blender::math::length(), and blender::gpu::GLContext::multi_draw_indirect_support.
GLDrawList::~GLDrawList | ( | ) |
Definition at line 69 of file gl_drawlist.cc.
References blender::gpu::GLContext::buf_free().
Implements blender::gpu::DrawList.
Definition at line 102 of file gl_drawlist.cc.
References GLDrawCommandIndexed::base_index, batch, blender::gpu::GLBatch::elem_(), GPU_batch_draw_advanced(), GLDrawCommand::i_count, GLDrawCommandIndexed::i_count, GLDrawCommand::i_first, GLDrawCommandIndexed::i_first, blender::gpu::IndexBuf::index_base_, blender::gpu::IndexBuf::index_len_, blender::gpu::IndexBuf::index_start_, MDI_DISABLED, MDI_INDEXED, submit(), UINT_MAX, GLDrawCommand::v_count, GLDrawCommandIndexed::v_count, GLDrawCommand::v_first, and GLDrawCommandIndexed::v_first.
|
overridevirtual |
Implements blender::gpu::DrawList.
Definition at line 158 of file gl_drawlist.cc.
References blender::gpu::GLBatch::bind(), BLI_assert, blender::gpu::GLBatch::draw(), blender::gpu::GLBatch::elem_(), blender::gpu::GLContext::get(), GLDrawCommand::i_count, GLDrawCommandIndexed::i_count, GLDrawCommand::i_first, GLDrawCommandIndexed::i_first, blender::gpu::IndexBuf::index_type_, MDI_ENABLED, MDI_INDEXED, offset, blender::gpu::to_gl(), GLDrawCommand::v_count, GLDrawCommandIndexed::v_count, GLDrawCommand::v_first, and GLDrawCommandIndexed::v_first.
Referenced by append().