Blender V4.5
blender::draw::edit_select::Instance Struct Reference

Inherits DrawEngine.

Classes

struct  StaticData
 

Public Member Functions

blender::StringRefNull name_get () final
 
void init () final
 
void begin_sync () final
 
ElemIndexRanges edit_mesh_sync (Object *ob, BMEditMesh *em, ResourceHandle res_handle, short select_mode, bool draw_facedot, const uint initial_index)
 
ElemIndexRanges mesh_sync (Object *ob, ResourceHandle res_handle, short select_mode, const uint initial_index)
 
ElemIndexRanges object_sync (View3D *v3d, Object *ob, ResourceHandle res_handle, short select_mode, uint index_start)
 
void object_sync (ObjectRef &ob_ref, Manager &manager) final
 
void end_sync () final
 
void draw (Manager &manager) final
 
- Public Member Functions inherited from DrawEngine
virtual ~DrawEngine ()=default
 

Additional Inherited Members

- Public Attributes inherited from DrawEngine
char info [GPU_INFO_SIZE] = {'\0'}
 
DRWTextStoretext_draw_cache = nullptr
 
bool used = false
 
- Static Public Attributes inherited from DrawEngine
static constexpr int GPU_INFO_SIZE = 512
 

Detailed Description

Definition at line 41 of file select_engine.cc.

Member Function Documentation

◆ begin_sync()

void blender::draw::edit_select::Instance::begin_sync ( )
inlinefinalvirtual

Scene synchronization. Command buffers building.

Implements DrawEngine.

Definition at line 111 of file select_engine.cc.

References blender::draw::detail::PassBase< DrawCommandBufType >::bind_ubo(), BLI_assert, blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::clear(), RegionView3D::clip, blender::draw::edit_select::Instance::StaticData::context, DRW_CLIPPING_UBO_SLOT, DRW_STATE_CLIP_PLANES, DRW_STATE_DEFAULT, DRW_STATE_FIRST_VERTEX_CONVENTION, SELECTID_Context::elem_ranges, blender::draw::edit_select::Instance::StaticData::framebuffer_select_id, blender::draw::edit_select::Instance::StaticData::get(), GPU_framebuffer_bind(), GPU_framebuffer_clear_color_depth(), GPU_SHADER_CFG_CLIPPED, GPU_SHADER_CFG_DEFAULT, blender::draw::detail::Pass< DrawCommandBufType >::init(), SELECTID_Context::max_index_drawn_len, min, DRWContext::obact, RegionView3D::persmat, SELECTID_Context::persmat, blender::draw::detail::UniformCommon< T, len, device_only >::push_update(), RETOPOLOGY_ENABLED, RETOPOLOGY_OFFSET, DRWContext::rv3d, RV3D_BOXCLIP, RV3D_CLIPPING_ENABLED, RV3D_LOCK_FLAGS, SCE_SELECT_EDGE, SCE_SELECT_FACE, SCE_SELECT_VERTEX, DRWContext::scene, blender::draw::edit_select::Instance::StaticData::Shaders::select_id_flat, blender::draw::edit_select::Instance::StaticData::Shaders::select_id_uniform, SELECTID_Context::select_mode, blender::draw::edit_select::Instance::StaticData::sh_data, blender::draw::detail::PassBase< DrawCommandBufType >::shader_set(), state, blender::draw::detail::PassBase< DrawCommandBufType >::state_set(), blender::draw::detail::PassBase< DrawCommandBufType >::sub(), DRWContext::v3d, blender::draw::overlay::Resources::vertex_size_get(), and XRAY_ENABLED.

◆ draw()

◆ edit_mesh_sync()

◆ end_sync()

void blender::draw::edit_select::Instance::end_sync ( )
inlinefinalvirtual

Implements DrawEngine.

Definition at line 387 of file select_engine.cc.

◆ init()

◆ mesh_sync()

◆ name_get()

blender::StringRefNull blender::draw::edit_select::Instance::name_get ( )
inlinefinalvirtual

Implements DrawEngine.

Definition at line 85 of file select_engine.cc.

◆ object_sync() [1/2]

◆ object_sync() [2/2]

ElemIndexRanges blender::draw::edit_select::Instance::object_sync ( View3D * v3d,
Object * ob,
ResourceHandle res_handle,
short select_mode,
uint index_start )
inline

The documentation for this struct was generated from the following file: