|
Blender V4.3
|
#include <mtl_drawlist.hh>
Inherits blender::gpu::DrawList.
Public Member Functions | |
| MTLDrawList (int length) | |
| ~MTLDrawList () | |
| void | append (Batch *batch, int i_first, int i_count) override |
| void | submit () override |
Public Member Functions inherited from blender::gpu::DrawList | |
| virtual | ~DrawList () |
Implementation of Multi Draw Indirect using OpenGL.
Definition at line 27 of file mtl_drawlist.hh.
| blender::gpu::MTLDrawList::MTLDrawList | ( | int | length | ) |
Definition at line 49 of file mtl_drawlist.mm.
References BLI_assert, and MEM_mallocN.
| blender::gpu::MTLDrawList::~MTLDrawList | ( | ) |
Definition at line 61 of file mtl_drawlist.mm.
References MEM_freeN().
Implements blender::gpu::DrawList.
Definition at line 84 of file mtl_drawlist.mm.
References BLI_assert, blender::gpu::MTLBatch::elem_(), GPU_batch_draw_advanced(), blender::gpu::IndexBuf::index_base_, blender::gpu::IndexBuf::index_len_, blender::gpu::IndexBuf::index_start_, MDI_DISABLED, MDI_INDEXED, blender::gpu::mtl_needs_topology_emulation(), submit(), UINT_MAX, blender::gpu::unwrap(), blender::gpu::VertBuf::vertex_len, and blender::gpu::MTLBatch::verts_().
|
overridevirtual |
Implements blender::gpu::DrawList.
Definition at line 154 of file mtl_drawlist.mm.
References blender::gpu::MTLBatch::bind(), BLI_assert, BLI_assert_msg, blender::gpu::MTLContext::ensure_depth_stencil_state(), blender::gpu::MTLContext::get(), blender::gpu::MTLIndexBuf::get_index_buffer(), blender::gpu::MTLIndexBuf::gpu_index_type_to_metal(), blender::gpu::GPU_INDEX_U16, blender::gpu::gpu_prim_type_to_metal(), blender::gpu::IndexBuf::index_start_, blender::gpu::IndexBuf::index_type_, blender::gpu::MTLContext::main_command_buffer, MDI_ENABLED, MDI_INDEXED, blender::gpu::mtl_needs_topology_emulation(), blender::gpu::MTLCommandBufferManager::register_draw_counters(), blender::gpu::MTLBatch::unbind(), and blender::gpu::unwrap().
Referenced by append().