|
Blender V4.3
|
#include <draw_command.hh>
Public Member Functions | |
| void | clear () |
| void | append_draw (Vector< Header, 0 > &headers, Vector< Undetermined, 0 > &commands, gpu::Batch *batch, uint instance_len, uint vertex_len, uint vertex_first, ResourceHandle handle, uint custom_id, GPUPrimType expanded_prim_type, uint16_t expanded_prim_len) |
Commands buffers binding / command / resource ID generation | |
| void | bind (RecordingState &state, Vector< Header, 0 > &headers, Vector< Undetermined, 0 > &commands, VisibilityBuf &visibility_buf, int visibility_word_per_draw, int view_len, bool use_custom_ids) |
Definition at line 620 of file draw_command.hh.
|
inline |
Definition at line 666 of file draw_command.hh.
References blender::Vector< T, InlineBufferCapacity, Allocator >::append(), blender::Vector< T, InlineBufferCapacity, Allocator >::append_and_get_index(), batch, BLI_assert, BLI_assert_msg, blender::draw::command::DrawPrototype::custom_id, blender::draw::command::DrawMulti, blender::draw::StorageArrayBuffer< T, len, device_only >::get_or_resize(), blender::draw::command::DrawMulti::group_first, blender::draw::command::DrawPrototype::group_id, blender::draw::command::DrawPrototype::instance_len, blender::Vector< T, InlineBufferCapacity, Allocator >::is_empty(), blender::Vector< T, InlineBufferCapacity, Allocator >::last(), blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::lookup_or_add(), blender::draw::command::DrawGroup::next, blender::draw::command::DrawPrototype::resource_handle, and blender::draw::command::DrawMulti::uuid.
| void blender::draw::command::DrawMultiBuf::bind | ( | RecordingState & | state, |
| Vector< Header, 0 > & | headers, | ||
| Vector< Undetermined, 0 > & | commands, | ||
| VisibilityBuf & | visibility_buf, | ||
| int | visibility_word_per_draw, | ||
| int | view_len, | ||
| bool | use_custom_ids ) |
Definition at line 766 of file draw_command.cc.
References BLI_assert, blender::draw::detail::DataBuffer< T, len, device_only >::data(), divide_ceil_u(), DRW_COMMAND_GROUP_SIZE, DRW_RESOURCE_ID_SLOT, DRW_shader_draw_command_generate_get(), blender::draw::StorageArrayBuffer< T, len, device_only >::get_or_resize(), GPU_BARRIER_SHADER_STORAGE, GPU_BARRIER_VERTEX_ATTRIB_ARRAY, GPU_batch_draw_expanded_parameter_get(), GPU_batch_draw_parameter_get(), GPU_compute_dispatch(), GPU_debug_group_begin(), GPU_debug_group_end(), gpu_get_prim_count_from_type(), GPU_memory_barrier(), GPU_PRIM_NONE, GPU_shader_bind(), GPU_shader_draw_parameters_support(), GPU_shader_get_ssbo_binding(), GPU_shader_get_ssbo_vertex_fetch_num_verts_per_prim(), GPU_shader_uniform_1b(), GPU_shader_uniform_1i(), GPU_storagebuf_bind(), GPU_storagebuf_sync_as_indirect_buffer(), log2_ceil_u(), blender::draw::detail::StorageCommon< T, len, device_only >::push_update(), blender::IndexRange::size(), blender::IndexRange::start(), state, and UNUSED_VARS_NDEBUG.
|
inline |