|
Blender V4.3
|
#include "DRW_engine.hh"#include "DRW_render.hh"#include "BLI_assert.h"#include "BLI_linklist.h"#include "BLI_memblock.h"#include "BLI_task.h"#include "BLI_threads.h"#include "GPU_batch.hh"#include "GPU_context.hh"#include "GPU_drawlist.hh"#include "GPU_framebuffer.hh"#include "GPU_shader.hh"#include "GPU_uniform_buffer.hh"#include "GPU_viewport.hh"#include "draw_instance_data.hh"#include "draw_shader_shared.hh"#include "BLI_time.h"Go to the source code of this file.
Classes | |
| struct | DRWRegisteredDrawEngine |
| struct | DRWCullingState |
| struct | DRWObjectMatrix |
| struct | DRWObjectInfos |
| struct | DRWCommandDraw |
| struct | DRWCommandDrawRange |
| struct | DRWCommandDrawInstance |
| struct | DRWCommandDrawInstanceRange |
| struct | DRWCommandDrawIndirect |
| struct | DRWCommandCompute |
| struct | DRWCommandComputeRef |
| struct | DRWCommandComputeIndirect |
| struct | DRWCommandBarrier |
| struct | DRWCommandDrawProcedural |
| struct | DRWCommandSetMutableState |
| struct | DRWCommandSetStencil |
| struct | DRWCommandSetSelectID |
| struct | DRWCommandClear |
| union | DRWCommand |
| struct | DRWCallBuffer |
| struct | DRWUniform |
| struct | DRWShadingGroup |
| struct | DRWPass |
| struct | DRWView |
| struct | DRWUniformChunk |
| struct | DRWCommandChunk |
| struct | DRWCommandSmallChunk |
| struct | DRWData |
| struct | DupliKey |
| struct | DRWManager |
Namespaces | |
| namespace | blender |
| namespace | blender::draw |
Macros | |
| #define | USE_GPU_SELECT |
| #define | USE_BATCHING 1 |
| #define | DRW_DEBUG_USE_UNIFORM_NAME 0 |
| #define | DRW_UNIFORM_BUFFER_NAME 64 |
Profiling | |
| #define | USE_PROFILE |
| #define | PROFILE_TIMER_FALLOFF 0.04 |
| #define | PROFILE_START(time_start) |
| #define | PROFILE_END_ACCUM(time_accum, time_start) |
| #define | PROFILE_END_UPDATE(time_update, time_start) |
Draw Manager | |
| #define | DST_MAX_SLOTS 64 /* Cannot be changed without modifying RST.bound_tex_slots */ |
| #define | MAX_CLIP_PLANES 6 /* GL_MAX_CLIP_PLANES is at least 6 */ |
| #define | STENCIL_UNDEFINED 256 |
| #define | DRW_DRAWLIST_LEN 256 |
| DRWManager | DST |
| #define DRW_DEBUG_USE_UNIFORM_NAME 0 |
Definition at line 52 of file draw_manager_c.hh.
| #define DRW_DRAWLIST_LEN 256 |
Definition at line 594 of file draw_manager_c.hh.
Referenced by drw_manager_init().
| #define DRW_MAX_DRAW_CMD_TYPE DRW_CMD_DRAW_INDIRECT |
Definition at line 219 of file draw_manager_c.hh.
Referenced by DRW_shgroup_is_empty().
| #define DRW_RESOURCE_CHUNK_LEN 512 |
Definition at line 128 of file draw_manager_c.hh.
Referenced by drw_ensure_layer_attribute_buffer(), drw_resource_buffer_finish(), drw_uniform_attrs_pool_ensure(), and DRW_viewport_data_create().
| #define DRW_UNIFORM_BUFFER_NAME 64 |
Definition at line 53 of file draw_manager_c.hh.
| #define DST_MAX_SLOTS 64 /* Cannot be changed without modifying RST.bound_tex_slots */ |
Definition at line 591 of file draw_manager_c.hh.
| #define MAX_CLIP_PLANES 6 /* GL_MAX_CLIP_PLANES is at least 6 */ |
Definition at line 592 of file draw_manager_c.hh.
Referenced by DRW_view_clip_planes_set().
| #define MAX_CULLED_VIEWS 32 |
Definition at line 451 of file draw_manager_c.hh.
Referenced by DRW_view_create(), and DRW_view_update().
| #define MAX_PASS_NAME 32 |
Definition at line 430 of file draw_manager_c.hh.
| #define PROFILE_END_ACCUM | ( | time_accum, | |
| time_start ) |
Definition at line 70 of file draw_manager_c.hh.
| #define PROFILE_END_UPDATE | ( | time_update, | |
| time_start ) |
Definition at line 77 of file draw_manager_c.hh.
Referenced by DRW_draw_render_loop_2d_ex(), DRW_draw_render_loop_ex(), drw_engines_draw_scene(), drw_engines_draw_text(), and drw_engines_init().
| #define PROFILE_START | ( | time_start | ) |
Definition at line 66 of file draw_manager_c.hh.
Referenced by DRW_draw_render_loop_2d_ex(), DRW_draw_render_loop_ex(), drw_engines_draw_scene(), drw_engines_draw_text(), and drw_engines_init().
| #define PROFILE_TIMER_FALLOFF 0.04 |
Definition at line 64 of file draw_manager_c.hh.
| #define STENCIL_UNDEFINED 256 |
Definition at line 593 of file draw_manager_c.hh.
| #define USE_BATCHING 1 |
Use draw-call batching using instanced rendering.
Definition at line 49 of file draw_manager_c.hh.
Referenced by draw_shgroup().
| #define USE_GPU_SELECT |
Use draw manager to call GPU_select, see: DRW_draw_select_loop
Definition at line 46 of file draw_manager_c.hh.
| #define USE_PROFILE |
Definition at line 59 of file draw_manager_c.hh.
| typedef struct DRWRegisteredDrawEngine DRWRegisteredDrawEngine |
| typedef uint32_t DRWResourceHandle |
Identifier used to sort similar drawcalls together. Also used to reference elements inside memory blocks.
From MSB to LSB 1 bit for negative scale. 22 bits for chunk id. 9 bits for resource id inside the chunk. (can go up to 511) |-|-------------------—|------—|
Use manual bit-shift and mask instead of bit-fields to avoid compiler dependent behavior that would mess the ordering of the members thus changing the sorting order.
Definition at line 144 of file draw_manager_c.hh.
| enum DRWUniformType |
Used by DRWUniform.type
Definition at line 328 of file draw_manager_c.hh.
| enum eDRWCommandType |
Definition at line 196 of file draw_manager_c.hh.
| BLI_STATIC_ASSERT_ALIGN | ( | DRWView | , |
| 16 | ) |
| eDRWCommandType command_type_get | ( | const uint64_t * | command_type_bits, |
| int | index ) |
Definition at line 845 of file draw_manager_data.cc.
Referenced by draw_command_iter_step(), DRW_pass_sort_shgroup_z(), and DRW_shgroup_is_empty().
| void drw_batch_cache_generate_requested | ( | Object * | ob | ) |
Definition at line 3351 of file draw_cache.cc.
References CTX_data_mode_enum_ex(), CTX_MODE_EDIT_MESH, CTX_MODE_PAINT_TEXTURE, CTX_MODE_PAINT_VERTEX, CTX_MODE_PAINT_WEIGHT, CTX_MODE_SCULPT, Object::data, DRW_context_state_get(), DRW_object_is_in_edit_mode(), DRW_object_use_hide_faces(), DST, ELEM, OB_CURVES, OB_CURVES_LEGACY, OB_FONT, OB_MESH, OB_POINTCLOUD, OB_SURF, DRWContextState::obact, DRWContextState::object_edit, DRWContextState::object_mode, DRWContextState::scene, DRWManager::task_graph, and Object::type.
Referenced by drw_engines_cache_populate(), DRW_render_object_iter(), and duplidata_key_free().
| void drw_batch_cache_generate_requested_delayed | ( | Object * | ob | ) |
Definition at line 3419 of file draw_cache.cc.
References BLI_gset_add(), DRWManager::delayed_extraction, and DST.
Referenced by drw_shgroup_bone_custom_mesh_wire(), drw_shgroup_bone_custom_solid_mesh(), drw_shgroup_custom_bone_curve(), and blender::draw::overlay::MeshUVs::edit_object_sync().
| void drw_batch_cache_generate_requested_evaluated_mesh_or_curve | ( | Object * | ob | ) |
Definition at line 3388 of file draw_cache.cc.
References BKE_object_get_evaluated_mesh_no_subsurf_unchecked(), CTX_data_mode_enum_ex(), CTX_MODE_EDIT_MESH, CTX_MODE_PAINT_TEXTURE, CTX_MODE_PAINT_VERTEX, CTX_MODE_PAINT_WEIGHT, CTX_MODE_SCULPT, DRW_context_state_get(), DRW_object_is_in_edit_mode(), DRW_object_use_hide_faces(), DST, ELEM, OB_CURVES_LEGACY, OB_FONT, OB_MESH, OB_SURF, DRWContextState::obact, DRWContextState::object_edit, DRWContextState::object_mode, DRWContextState::scene, DRWManager::task_graph, and Object::type.
Referenced by drw_task_graph_deinit().
| void drw_batch_cache_validate | ( | Object * | ob | ) |
Definition at line 3320 of file draw_cache.cc.
References Object::data, OB_CURVES, OB_CURVES_LEGACY, OB_FONT, OB_GREASE_PENCIL, OB_LATTICE, OB_MESH, OB_POINTCLOUD, OB_SURF, OB_VOLUME, and Object::type.
Referenced by DRW_draw_depth_object(), drw_duplidata_load(), drw_engines_cache_populate(), and DRW_render_object_iter().
| blender::gpu::Batch * drw_cache_procedural_lines_get | ( | ) |
Definition at line 201 of file draw_cache.cc.
References DRWShapeCache::drw_procedural_lines, GPU_batch_create_ex(), GPU_BATCH_OWNS_VBO, GPU_COMP_F32, GPU_FETCH_FLOAT, GPU_PRIM_LINES, GPU_vertbuf_create_with_format, GPU_vertbuf_data_alloc(), GPU_vertformat_attr_add(), and SHC.
Referenced by DRW_shgroup_call_procedural_indirect(), DRW_shgroup_call_procedural_lines(), blender::draw::command::procedural_batch_get(), and blender::draw::detail::PassBase< DrawCommandBufType >::procedural_batch_get().
| blender::gpu::Batch * drw_cache_procedural_points_get | ( | ) |
Definition at line 186 of file draw_cache.cc.
References DRWShapeCache::drw_procedural_verts, GPU_batch_create_ex(), GPU_BATCH_OWNS_VBO, GPU_COMP_F32, GPU_FETCH_FLOAT, GPU_PRIM_POINTS, GPU_vertbuf_create_with_format, GPU_vertbuf_data_alloc(), GPU_vertformat_attr_add(), and SHC.
Referenced by DRW_shgroup_call_procedural_indirect(), DRW_shgroup_call_procedural_points(), blender::draw::command::procedural_batch_get(), and blender::draw::detail::PassBase< DrawCommandBufType >::procedural_batch_get().
| blender::gpu::Batch * drw_cache_procedural_triangle_strips_get | ( | ) |
Definition at line 230 of file draw_cache.cc.
References DRWShapeCache::drw_procedural_tri_strips, GPU_batch_create_ex(), GPU_BATCH_OWNS_VBO, GPU_COMP_F32, GPU_FETCH_FLOAT, GPU_PRIM_TRI_STRIP, GPU_vertbuf_create_with_format, GPU_vertbuf_data_alloc(), GPU_vertformat_attr_add(), and SHC.
Referenced by DRW_shgroup_call_procedural_indirect(), blender::draw::command::procedural_batch_get(), and blender::draw::detail::PassBase< DrawCommandBufType >::procedural_batch_get().
| blender::gpu::Batch * drw_cache_procedural_triangles_get | ( | ) |
Definition at line 216 of file draw_cache.cc.
References DRWShapeCache::drw_procedural_tris, GPU_batch_create_ex(), GPU_BATCH_OWNS_VBO, GPU_COMP_F32, GPU_FETCH_FLOAT, GPU_PRIM_TRIS, GPU_vertbuf_create_with_format, GPU_vertbuf_data_alloc(), GPU_vertformat_attr_add(), and SHC.
Referenced by DRW_shgroup_call_procedural_indirect(), DRW_shgroup_call_procedural_triangles(), blender::draw::command::procedural_batch_get(), and blender::draw::detail::PassBase< DrawCommandBufType >::procedural_batch_get().
| void drw_debug_draw | ( | ) |
Definition at line 612 of file draw_debug.cc.
References DRWManager::debug, and DST.
Referenced by DRW_draw_callbacks_post_scene().
| GPUStorageBuf * drw_debug_gpu_draw_buf_get | ( | ) |
Definition at line 645 of file draw_debug.cc.
References DRWManager::debug, and DST.
Referenced by blender::draw::Manager::debug_bind().
| GPUStorageBuf * drw_debug_gpu_print_buf_get | ( | ) |
Definition at line 650 of file draw_debug.cc.
References DRWManager::debug, and DST.
Referenced by blender::draw::Manager::debug_bind().
| void drw_debug_init | ( | ) |
Definition at line 623 of file draw_debug.cc.
References DRWManager::debug, DST, and init().
Referenced by DRW_draw_render_loop_2d_ex(), and DRW_draw_render_loop_ex().
| void drw_debug_module_free | ( | DRWDebugModule * | module | ) |
| void drw_engine_data_cache_release | ( | GPUViewport * | viewport | ) |
| double * drw_engine_data_cache_time_get | ( | GPUViewport * | viewport | ) |
| void * drw_engine_data_engine_data_create | ( | GPUViewport * | viewport, |
| void * | engine_type ) |
| void * drw_engine_data_engine_data_get | ( | GPUViewport * | viewport, |
| void * | engine_handle ) |
| bool drw_engine_data_engines_data_validate | ( | GPUViewport * | viewport, |
| void ** | engine_handle_array ) |
| void drw_engine_data_free | ( | GPUViewport * | viewport | ) |
| GPUUniformBuf * drw_ensure_layer_attribute_buffer | ( | ) |
Definition at line 640 of file draw_instance_data.cc.
References BKE_view_layer_find_rgba_attribute(), LayerAttribute::buffer_length, count, LayerAttribute::data, DRWManager::draw_ctx, DRW_RESOURCE_CHUNK_LEN, DST, GPU_uniformbuf_create_ex(), GPU_uniformbuf_update(), LayerAttribute::hash_code, LISTBASE_FOREACH, MEM_calloc_arrayN, ViewLayer::name, DRWContextState::scene, DRWContextState::view_layer, DRWData::vlattrs_ubo, and DRWManager::vmempool.
Referenced by draw_update_uniforms().
| BLI_INLINE uint32_t DRW_handle_chunk_get | ( | const DRWResourceHandle * | handle | ) |
Definition at line 151 of file draw_manager_c.hh.
Referenced by draw_call_batching_do(), draw_call_resource_bind(), DRW_memblock_elem_from_handle(), drw_resource_buffer_finish(), and drw_uniform_attrs_pool_update().
| BLI_INLINE uint32_t DRW_handle_id_get | ( | const DRWResourceHandle * | handle | ) |
Definition at line 156 of file draw_manager_c.hh.
Referenced by draw_call_batching_do(), draw_call_resource_bind(), draw_call_single_do(), draw_select_buffer(), DRW_memblock_elem_from_handle(), drw_resource_buffer_finish(), and drw_uniform_attrs_pool_update().
| BLI_INLINE void DRW_handle_increment | ( | DRWResourceHandle * | handle | ) |
Definition at line 161 of file draw_manager_c.hh.
Referenced by draw_unit_state_create(), DRW_pass_create(), and drw_resource_handle_new().
| BLI_INLINE void DRW_handle_negative_scale_enable | ( | DRWResourceHandle * | handle | ) |
Definition at line 166 of file draw_manager_c.hh.
Referenced by drw_resource_handle_new().
| BLI_INLINE uint32_t DRW_handle_negative_scale_get | ( | const DRWResourceHandle * | handle | ) |
Definition at line 146 of file draw_manager_c.hh.
Referenced by draw_call_batching_do(), and draw_call_resource_bind().
| void DRW_manager_begin_sync | ( | ) |
Definition at line 292 of file draw_view_data.cc.
References DST, DRWViewData::manager, and DRWManager::view_data_active.
Referenced by drw_engines_cache_init().
| void DRW_manager_end_sync | ( | ) |
Definition at line 300 of file draw_view_data.cc.
References DST, DRWViewData::manager, and DRWManager::view_data_active.
Referenced by drw_engines_cache_finish().
| BLI_INLINE void * DRW_memblock_elem_from_handle | ( | BLI_memblock * | memblock, |
| const DRWResourceHandle * | handle ) |
Definition at line 171 of file draw_manager_c.hh.
References BLI_memblock_elem_get(), DRW_handle_chunk_get(), and DRW_handle_id_get().
Referenced by draw_call_is_culled(), draw_legacy_matrix_update(), DRW_pass_sort_shgroup_z(), drw_resource_handle(), DRW_shgroup_call_ex(), and DRW_shgroup_create_sub().
| void drw_resource_buffer_finish | ( | DRWData * | vmempool | ) |
Definition at line 95 of file draw_manager_data.cc.
References ARRAY_SIZE, BLI_memblock_elem_get(), BLI_memblock_iternew(), BLI_memblock_iterstep(), DRWCommandChunk::command_type, DRWCommandChunk::command_used, DRWCommandChunk::commands, DRWData::commands, draw_call_sort(), DRW_handle_chunk_get(), DRW_handle_id_get(), DRW_RESOURCE_CHUNK_LEN, DRW_uniform_attrs_pool_flush_all(), DST, GPU_uniformbuf_create, GPU_uniformbuf_free(), GPU_uniformbuf_update(), DRWData::matrices_ubo, MEM_callocN, MEM_freeN(), MEM_mallocN_aligned(), MEM_recallocN, DRWData::obattrs_ubo_pool, DRWData::obinfos, DRWData::obinfos_ubo, DRWData::obmats, DRWManager::resource_handle, and DRWData::ubo_len.
Referenced by DRW_draw_select_id(), and DRW_render_instance_buffer_finish().
| void drw_state_set | ( | DRWState | state | ) |
Definition at line 68 of file draw_manager_exec.cc.
References blend, DRWView::clip_planes_len, DRW_STATE_BLEND_ADD, DRW_STATE_BLEND_ADD_FULL, DRW_STATE_BLEND_ALPHA, DRW_STATE_BLEND_ALPHA_PREMUL, DRW_STATE_BLEND_ALPHA_UNDER_PREMUL, DRW_STATE_BLEND_BACKGROUND, DRW_STATE_BLEND_CUSTOM, DRW_STATE_BLEND_ENABLED, DRW_STATE_BLEND_MUL, DRW_STATE_BLEND_OIT, DRW_STATE_BLEND_SUB, DRW_STATE_CLIP_PLANES, DRW_STATE_CULL_BACK, DRW_STATE_CULL_FRONT, DRW_STATE_DEPTH_ALWAYS, DRW_STATE_DEPTH_EQUAL, DRW_STATE_DEPTH_GREATER, DRW_STATE_DEPTH_GREATER_EQUAL, DRW_STATE_DEPTH_LESS, DRW_STATE_DEPTH_LESS_EQUAL, DRW_STATE_DEPTH_TEST_ENABLED, DRW_STATE_FIRST_VERTEX_CONVENTION, DRW_STATE_IN_FRONT_SELECT, DRW_STATE_LOGIC_INVERT, DRW_STATE_PROGRAM_POINT_SIZE, DRW_STATE_SHADOW_OFFSET, DRW_STATE_STENCIL_ALWAYS, DRW_STATE_STENCIL_EQUAL, DRW_STATE_STENCIL_NEQUAL, DRW_STATE_STENCIL_TEST_ENABLED, DRW_STATE_WRITE_COLOR, DRW_STATE_WRITE_DEPTH, DRW_STATE_WRITE_STENCIL, DRW_STATE_WRITE_STENCIL_ENABLED, DRW_STATE_WRITE_STENCIL_SHADOW_FAIL, DRW_STATE_WRITE_STENCIL_SHADOW_PASS, DST, GPU_BLEND_ADDITIVE, GPU_BLEND_ADDITIVE_PREMULT, GPU_BLEND_ALPHA, GPU_BLEND_ALPHA_PREMULT, GPU_BLEND_ALPHA_UNDER_PREMUL, GPU_BLEND_BACKGROUND, GPU_BLEND_CUSTOM, GPU_BLEND_INVERT, GPU_BLEND_MULTIPLY, GPU_BLEND_NONE, GPU_BLEND_OIT, GPU_BLEND_SUBTRACT, GPU_clip_distances(), GPU_CULL_BACK, GPU_CULL_FRONT, GPU_CULL_NONE, GPU_DEPTH_ALWAYS, GPU_DEPTH_EQUAL, GPU_DEPTH_GREATER, GPU_DEPTH_GREATER_EQUAL, GPU_DEPTH_LESS, GPU_DEPTH_LESS_EQUAL, GPU_DEPTH_NONE, GPU_depth_range(), GPU_program_point_size(), GPU_provoking_vertex(), GPU_shadow_offset(), GPU_state_set(), GPU_STENCIL_ALWAYS, GPU_STENCIL_EQUAL, GPU_STENCIL_NEQUAL, GPU_STENCIL_NONE, GPU_STENCIL_OP_COUNT_DEPTH_FAIL, GPU_STENCIL_OP_COUNT_DEPTH_PASS, GPU_STENCIL_OP_NONE, GPU_STENCIL_OP_REPLACE, GPU_stencil_write_mask_set(), GPU_VERTEX_FIRST, GPU_VERTEX_LAST, GPU_WRITE_COLOR, GPU_WRITE_DEPTH, GPU_WRITE_STENCIL, DRWManager::state, state, DRWManager::state_lock, and DRWManager::view_active.
Referenced by draw_shgroup(), drw_draw_pass_ex(), DRW_state_reset_ex(), and DRW_transform_none().
| void drw_texture_set_parameters | ( | GPUTexture * | tex, |
| DRWTextureFlag | flags ) |
Definition at line 50 of file draw_manager_texture.cc.
References DRW_TEX_COMPARE, DRW_TEX_FILTER, DRW_TEX_MIPMAP, DRW_TEX_WRAP, GPU_SAMPLER_EXTEND_MODE_EXTEND, GPU_SAMPLER_EXTEND_MODE_REPEAT, GPU_texture_anisotropic_filter(), GPU_texture_compare_mode(), GPU_texture_extend_mode(), GPU_texture_filter_mode(), GPU_texture_mipmap_mode(), GPU_texture_update_mipmap_chain(), and tex.
Referenced by DRW_texture_create_1d_ex(), DRW_texture_create_2d_array_ex(), DRW_texture_create_2d_ex(), DRW_texture_create_3d_ex(), DRW_texture_create_cube_array_ex(), and DRW_texture_create_cube_ex().
| void drw_uniform_attrs_pool_update | ( | GHash * | table, |
| const GPUUniformAttrList * | key, | ||
| DRWResourceHandle * | handle, | ||
| const Object * | ob, | ||
| const Object * | dupli_parent, | ||
| const DupliObject * | dupli_source ) |
Definition at line 617 of file draw_instance_data.cc.
References DRW_handle_chunk_get(), DRW_handle_id_get(), DRW_sparse_uniform_buffer_ensure_item(), drw_uniform_attribute_lookup(), drw_uniform_attrs_pool_ensure(), float, DRWUniformAttrBuf::key, DRWUniformAttrBuf::last_handle, GPUUniformAttrList::list, LISTBASE_FOREACH, and DRWUniformAttrBuf::ubos.
Referenced by drw_resource_handle().
| void * drw_viewport_engine_data_ensure | ( | void * | engine_type | ) |
|
extern |
Render State: No persistent data between draw calls.
Definition at line 111 of file draw_manager_c.cc.
Referenced by blender::draw::TextureFromPool::acquire(), blender::draw::Manager::begin_sync(), blender::draw::curves_sub_pass_setup_implementation(), blender::draw::Manager::debug_bind(), draw_call_batching_finish(), draw_call_batching_flush(), draw_call_is_culled(), draw_call_resource_bind(), draw_compute_culling(), draw_geometry_bind(), draw_geometry_execute(), draw_indirect_call(), draw_legacy_matrix_update(), draw_shgroup(), draw_unit_state_create(), draw_update_uniforms(), drw_batch_cache_generate_requested(), drw_batch_cache_generate_requested_delayed(), drw_batch_cache_generate_requested_evaluated_mesh_or_curve(), DRW_buffer_add_entry_array(), DRW_buffer_add_entry_struct(), DRW_cache_restart(), drw_call_obinfos_init(), drw_command_create(), DRW_context_state_get(), drw_context_state_init(), DRW_culling_box_test(), DRW_culling_frustum_corners_get(), DRW_culling_frustum_planes_get(), DRW_culling_min_max_test(), DRW_culling_plane_test(), DRW_culling_sphere_test(), DRW_custom_pipeline(), DRW_custom_pipeline_begin(), DRW_custom_pipeline_end(), DRW_debug_bbox(), drw_debug_draw(), DRW_debug_get(), drw_debug_gpu_draw_buf_get(), drw_debug_gpu_print_buf_get(), drw_debug_init(), DRW_debug_line_v3v3(), DRW_debug_m4(), DRW_debug_m4_as_bbox(), DRW_debug_modelmat(), DRW_debug_modelmat_reset(), DRW_debug_polygon_v3(), DRW_debug_sphere(), DRW_draw_callbacks_post_scene(), DRW_draw_callbacks_pre_scene(), DRW_draw_depth_loop(), DRW_draw_in_progress(), drw_draw_pass_ex(), DRW_draw_region_engine_info(), DRW_draw_render_loop(), DRW_draw_render_loop_2d_ex(), DRW_draw_render_loop_ex(), DRW_draw_render_loop_offscreen(), DRW_draw_select_id(), DRW_draw_select_loop(), drw_draw_show_annotation(), DRW_draw_view(), DRW_drawdata_ensure(), drw_duplidata_free(), DRW_duplidata_get(), drw_duplidata_load(), drw_engines_cache_finish(), drw_engines_cache_init(), drw_engines_cache_populate(), drw_engines_data_validate(), drw_engines_disable(), drw_engines_draw_scene(), drw_engines_draw_text(), drw_engines_enable(), drw_engines_enable_editors(), DRW_engines_free(), drw_engines_init(), drw_engines_world_update(), drw_ensure_layer_attribute_buffer(), DRW_fluid_ensure_flags(), DRW_fluid_ensure_range_field(), DRW_gpu_context_activate(), DRW_gpu_context_create(), DRW_gpu_context_destroy(), DRW_gpu_context_disable_ex(), DRW_gpu_context_enable(), DRW_gpu_context_enable_ex(), DRW_gpu_context_release(), DRW_is_viewport_compositor_enabled(), DRW_manager_begin_sync(), DRW_manager_end_sync(), DRW_manager_get(), DRW_notify_view_update(), drw_notify_view_update_offscreen(), DRW_object_get_dupli(), DRW_object_get_dupli_parent(), DRW_object_is_renderable(), DRW_object_ref_get(), DRW_object_resource_id_get(), DRW_pass_create(), DRW_pass_sort_shgroup_z(), drw_register_shader_vlattrs(), DRW_render_context_enable(), DRW_render_gpencil(), DRW_render_gpencil_to_image(), DRW_render_instance_buffer_finish(), DRW_render_object_iter(), DRW_render_set_time(), DRW_render_to_image(), DRW_render_viewport_size_set(), drw_resource_buffer_finish(), drw_resource_handle(), drw_resource_handle_new(), DRW_select_load_id(), DRW_shader_from_material(), DRW_shader_from_world(), DRW_shader_init(), DRW_shgroup_call_buffer(), DRW_shgroup_call_buffer_instance(), DRW_shgroup_call_ex(), DRW_shgroup_call_instance_range(), DRW_shgroup_call_instances(), DRW_shgroup_call_instances_with_attrs(), drw_shgroup_call_procedural_add_ex(), DRW_shgroup_call_procedural_indirect(), DRW_shgroup_call_range(), drw_shgroup_create_ex(), DRW_shgroup_create_sub(), blender::draw::DRW_shgroup_curves_create_sub(), drw_shgroup_material_texture(), drw_shgroup_uniform_create_ex(), DRW_smoke_ensure(), DRW_smoke_ensure_coba_field(), DRW_smoke_ensure_velocity(), DRW_state_draw_background(), DRW_state_draw_support(), DRW_state_is_depth(), DRW_state_is_fbo(), DRW_state_is_image_render(), DRW_state_is_material_select(), DRW_state_is_navigating(), DRW_state_is_painting(), DRW_state_is_playback(), DRW_state_is_scene_render(), DRW_state_is_select(), DRW_state_is_viewport_image_render(), DRW_state_lock(), DRW_state_reset_ex(), drw_state_set(), DRW_state_show_text(), drw_state_validate(), DRW_stats_draw(), DRW_system_gpu_render_context_disable(), DRW_system_gpu_render_context_enable(), drw_task_graph_deinit(), drw_task_graph_init(), DRW_text_cache_ensure(), DRW_texture_pool_query_2d_ex(), drw_update_view(), DRW_view_create(), DRW_view_create_sub(), DRW_view_default_get(), DRW_view_default_set(), DRW_view_far_distance_get(), DRW_view_get_active(), DRW_view_is_persp_get(), DRW_view_layer_engine_data_ensure(), DRW_view_layer_engine_data_get(), DRW_view_near_distance_get(), DRW_view_persmat_get(), DRW_view_reset(), DRW_view_set_active(), DRW_view_update(), DRW_view_viewmat_get(), DRW_view_winmat_get(), DRW_viewport_framebuffer_list_get(), DRW_viewport_invert_size_get(), DRW_viewport_pass_texture_get(), DRW_viewport_pixelsize_get(), DRW_viewport_request_redraw(), DRW_viewport_size_get(), DRW_viewport_texture_list_get(), drw_volume_object_grids_init(), blender::draw::drw_volume_object_mesh_init(), drw_volume_object_mesh_init(), blender::draw::command::StateSet::execute(), blender::draw::TextureFromPool::release(), blender::draw::Manager::submit(), blender::draw::TextureFromPool::swap(), use_drw_engine(), and blender::draw::volume_object_grids_init().