Blender
V3.3
|
Go to the source code of this file.
Classes | |
struct | DRWUpdateContext |
Typedefs | |
typedef struct DRWUpdateContext | DRWUpdateContext |
typedef enum eDRWSelectStage | eDRWSelectStage |
typedef bool(* | DRW_SelectPassFn) (eDRWSelectStage stage, void *user_data) |
typedef bool(* | DRW_ObjectFilterFn) (struct Object *ob, void *user_data) |
Enumerations | |
enum | eDRWSelectStage { DRW_SELECT_PASS_PRE = 1 , DRW_SELECT_PASS_POST } |
Definition at line 65 of file DRW_engine.h.
typedef bool(* DRW_SelectPassFn) (eDRWSelectStage stage, void *user_data) |
Definition at line 64 of file DRW_engine.h.
typedef struct DRWUpdateContext DRWUpdateContext |
typedef enum eDRWSelectStage eDRWSelectStage |
enum eDRWSelectStage |
Enumerator | |
---|---|
DRW_SELECT_PASS_PRE | |
DRW_SELECT_PASS_POST |
Definition at line 60 of file DRW_engine.h.
Definition at line 948 of file draw_manager.c.
References BKE_scene_get_depsgraph(), DEG_OBJECT_ITER_FOR_RENDER_ENGINE_BEGIN, DEG_OBJECT_ITER_FOR_RENDER_ENGINE_END, depsgraph, DRW_batch_cache_free_old(), ListBase::first, Scene::id, ID::next, ViewLayer::next, NULL, PIL_check_seconds_timer(), scene, Main::scenes, and Scene::view_layers.
Referenced by view3d_main_region_draw().
Definition at line 2281 of file draw_cache_impl_subdivision.cc.
References BKE_subdiv_free(), BLI_linklist_pop(), BLI_mutex_lock(), BLI_mutex_unlock(), Subdiv::evaluator, gpu_subdiv_free_queue, gpu_subdiv_queue_mutex, OPENSUBDIV_EVALUATOR_CPU, and OpenSubdiv_Evaluator::type.
Referenced by DRW_render_to_image(), DRW_subdiv_free(), ED_view3d_draw_offscreen(), and view3d_main_region_draw().
void DRW_cdlayer_attr_aliases_add | ( | struct GPUVertFormat * | format, |
const char * | base_name, | ||
const struct CustomData * | data, | ||
const struct CustomDataLayer * | cl, | ||
bool | is_active_render, | ||
bool | is_active_layer | ||
) |
Referenced by GPU_pbvh_attribute_names_update().
void DRW_deferred_shader_remove | ( | struct GPUMaterial * | mat | ) |
Definition at line 238 of file draw_manager_shader.c.
References BLI_findptr(), BLI_remlink(), BLI_spin_lock(), BLI_spin_unlock(), data, LinkData::data, G_MAIN, GPU_MAT_CREATED, GPU_material_status_set(), DRWShaderCompiler::list_lock, LISTBASE_FOREACH, MEM_SAFE_FREE, NULL, DRWShaderCompiler::queue, WM_JOB_TYPE_SHADER_COMPILATION, and WM_jobs_customdata_from_type().
Referenced by drw_deferred_shader_add().
We may want to move this into a more general location.
Referenced by sequencer_preview_region_draw().
void DRW_draw_depth_loop | ( | struct Depsgraph * | depsgraph, |
ARegion * | region, | ||
View3D * | v3d, | ||
GPUViewport * | viewport, | ||
const bool | use_gpencil, | ||
const bool | use_basic, | ||
const bool | use_overlay | ||
) |
object mode select-loop, see: ED_view3d_draw_depth_loop (legacy drawing).
object mode select-loop, see: ED_view3d_draw_depth_loop (legacy drawing).
Definition at line 2538 of file draw_manager.c.
References BKE_object_is_visible_in_viewport(), data_, DEG_get_evaluated_scene(), DEG_get_evaluated_view_layer(), DEG_OBJECT_ITER_FOR_RENDER_ENGINE_BEGIN, DEG_OBJECT_ITER_FOR_RENDER_ENGINE_END, depsgraph, DRWContextState::depsgraph, DRWManager::draw_ctx, draw_engine_gpencil_type, drw_context_state_init(), DRW_curves_init(), DRW_curves_update(), drw_duplidata_free(), drw_duplidata_load(), drw_engines_cache_finish(), drw_engines_cache_init(), drw_engines_cache_populate(), drw_engines_disable(), drw_engines_draw_scene(), drw_engines_enable_basic(), drw_engines_enable_overlays(), drw_engines_init(), drw_engines_world_update(), DRW_globals_update(), drw_manager_exit(), drw_manager_init(), DRW_render_instance_buffer_finish(), DRW_smoke_exit(), DRW_smoke_init(), drw_state_prepare_clean_for_draw(), DRW_state_reset(), drw_task_graph_deinit(), drw_task_graph_init(), DRW_volume_init(), DST, DRWManager::dupli_origin, DRWManager::dupli_origin_data, DRWManager::dupli_parent, DRWManager::dupli_source, ED_view3d_engine_type(), GPU_framebuffer_bind(), GPU_framebuffer_free(), GPU_framebuffer_restore(), GPU_viewport_depth_texture(), DRWManager::is_depth, NULL, OBACT, View3D::object_type_exclude_viewport, DRWManager::options, DRWContextState::region, ARegion::regiondata, scene, DRWContextState::scene, View3D::shading, View3DShading::type, use_drw_engine(), and DRWManager::vmempool.
Referenced by ED_view3d_depth_override().
void DRW_draw_depth_object | ( | struct Scene * | scene, |
struct ARegion * | region, | ||
struct View3D * | v3d, | ||
struct GPUViewport * | viewport, | ||
struct Object * | object | ||
) |
Clears the Depth Buffer and draws only the specified object.
Definition at line 2727 of file draw_manager.c.
References batch, BLI_task_graph_create(), BLI_task_graph_free(), BLI_task_graph_work_and_wait(), RegionView3D::clip_local, copy_m4_m4(), copy_v4_v4(), drw_batch_cache_validate(), DRW_mesh_batch_cache_create_requested(), DRW_mesh_batch_cache_get_edit_triangles(), DRW_mesh_batch_cache_get_surface(), ED_view3d_clipping_local(), GPU_batch_draw(), GPU_batch_program_set_builtin_with_config(), GPU_batch_uniformbuf_bind, GPU_clip_distances(), GPU_DEPTH_LESS_EQUAL, GPU_DEPTH_NONE, GPU_depth_test(), GPU_framebuffer_bind(), GPU_framebuffer_free(), GPU_framebuffer_restore(), GPU_matrix_mul, GPU_matrix_projection_set, GPU_matrix_set, GPU_SHADER_3D_DEPTH_ONLY, GPU_SHADER_CFG_CLIPPED, GPU_SHADER_CFG_DEFAULT, GPU_uniformbuf_create_ex(), GPU_uniformbuf_free(), GPU_viewport_depth_texture(), GPUBatch, Object::mode, GPUClipPlanes::ModelMatrix, NULL, OB_CURVES_LEGACY, OB_MESH, OB_MODE_EDIT, OB_SURF, Object::obmat, ARegion::regiondata, RV3D_CLIPPING_ENABLED, scene, Object::type, RegionView3D::viewmat, RegionView3D::winmat, and GPUClipPlanes::world.
Referenced by ED_view3d_depth_override().
void DRW_draw_region_engine_info | ( | int | xoffset, |
int * | yoffset, | ||
int | line_height | ||
) |
Draw render engine info.
Definition at line 1107 of file draw_manager.c.
References BLF_default(), BLF_disable(), BLF_draw_default(), BLF_enable(), BLF_shadow(), BLF_SHADOW, BLF_shadow_offset(), BLI_strncpy(), data, DRW_ENABLED_ENGINE_ITER, DST, GPU_INFO_SIZE, TH_TEXT_HI, UI_FontThemeColor(), and DRWManager::view_data_active.
Referenced by view3d_draw_region_info().
void DRW_draw_render_loop | ( | struct Depsgraph * | depsgraph, |
struct ARegion * | region, | ||
struct View3D * | v3d, | ||
struct GPUViewport * | viewport | ||
) |
Definition at line 1731 of file draw_manager.c.
References DEG_get_evaluated_scene(), depsgraph, DRW_draw_render_loop_ex(), drw_state_prepare_clean_for_draw(), DST, ED_view3d_engine_type(), NULL, scene, View3D::shading, and View3DShading::type.
void DRW_draw_render_loop_2d_ex | ( | struct Depsgraph * | depsgraph, |
struct ARegion * | region, | ||
struct GPUViewport * | viewport, | ||
const struct bContext * | evil_C | ||
) |
void DRW_draw_render_loop_ex | ( | struct Depsgraph * | depsgraph, |
struct RenderEngineType * | engine_type, | ||
struct ARegion * | region, | ||
struct View3D * | v3d, | ||
struct GPUViewport * | viewport, | ||
const struct bContext * | evil_C | ||
) |
Used for both regular and off-screen drawing. Need to reset DST before calling this function
void DRW_draw_render_loop_offscreen | ( | struct Depsgraph * | depsgraph, |
struct RenderEngineType * | engine_type, | ||
struct ARegion * | region, | ||
struct View3D * | v3d, | ||
bool | is_image_render, | ||
bool | draw_background, | ||
bool | do_color_management, | ||
struct GPUOffScreen * | ofs, | ||
struct GPUViewport * | viewport | ||
) |
viewport | can be NULL, in this case we create one. |
Definition at line 1745 of file draw_manager.c.
References depsgraph, DRWManager::draw_background, draw_background(), DRW_draw_render_loop_ex(), drw_notify_view_update_offscreen(), drw_state_prepare_clean_for_draw(), DST, ELEM, View3DShading::flag, View3D::flag, View3D::flag2, GPU_blend(), GPU_BLEND_ALPHA_PREMULT, GPU_BLEND_NONE, GPU_clear_color(), GPU_framebuffer_restore(), GPU_matrix_identity_projection_set(), GPU_matrix_identity_set(), GPU_offscreen_bind(), GPU_viewport_bind_from_offscreen(), GPU_viewport_create(), GPU_viewport_free(), GPU_viewport_unbind_from_offscreen(), DRWManager::is_image_render, NULL, OB_MATERIAL, OB_RENDER, OB_SOLID, OB_WIRE, DRWManager::options, View3D::shading, View3DShading::type, V3D_HIDE_OVERLAYS, V3D_SHADING_SCENE_WORLD, V3D_SHADING_SCENE_WORLD_RENDER, and V3D_XR_SESSION_SURFACE.
Referenced by ED_view3d_draw_offscreen().
void DRW_draw_select_id | ( | struct Depsgraph * | depsgraph, |
struct ARegion * | region, | ||
struct View3D * | v3d, | ||
const struct rcti * | rect | ||
) |
Referenced by DRW_select_buffer_read().
void DRW_draw_select_loop | ( | struct Depsgraph * | depsgraph, |
struct ARegion * | region, | ||
struct View3D * | v3d, | ||
bool | use_obedit_skip, | ||
bool | draw_surface, | ||
bool | use_nearest, | ||
bool | do_material_sub_selection, | ||
const struct rcti * | rect, | ||
DRW_SelectPassFn | select_pass_fn, | ||
void * | select_pass_user_data, | ||
DRW_ObjectFilterFn | object_filter_fn, | ||
void * | object_filter_user_data | ||
) |
object mode select-loop, see: ED_view3d_draw_select_loop (legacy drawing).
Referenced by view3d_opengl_select_ex().
Everything starts here. This function takes care of calling all cache and rendering functions for each relevant engine / mode engine.
Referenced by blender::ed::space_node::draw_nodespace_back_pix(), image_main_region_draw(), and view3d_draw_view().
Definition at line 911 of file draw_manager.c.
References BLI_freelistN(), DRW_drawdatalist_from_id(), LISTBASE_FOREACH, and NULL.
Referenced by object_free_data(), and world_free_data().
struct DrawDataList* DRW_drawdatalist_from_id | ( | struct ID * | id | ) |
Get DrawData from the given ID-block. In order for this to work, we assume that the DrawData pointer is stored in the struct in the same fashion as in IdDdtTemplate.
Definition at line 836 of file draw_manager.c.
References IdDdtTemplate::drawdata, id_can_have_drawdata(), and NULL.
Referenced by direct_link_id_common(), DRW_drawdata_ensure(), DRW_drawdata_free(), DRW_drawdata_get(), drw_drawdata_unlink_dupli(), and blender::deg::RuntimeBackup::init_from_id().
void DRW_engine_register | ( | struct DrawEngineType * | draw_engine_type | ) |
Definition at line 2908 of file draw_manager.c.
References BLI_addtail(), BLI_listbase_count(), DRWRegisteredDrawEngine::draw_engine, g_registered_engines, DRWRegisteredDrawEngine::index, and MEM_mallocN.
Referenced by DRW_engines_register(), and RE_engines_register().
bool DRW_engine_render_support | ( | struct DrawEngineType * | draw_engine_type | ) |
Definition at line 2903 of file draw_manager.c.
References DrawEngineType::render_to_image.
Referenced by RE_engine_is_opengl().
Definition at line 2992 of file draw_manager.c.
References DRW_Global::block_ubo, DRWManager::draw_list, DRW_curves_free(), DRW_globals_free(), DRW_opengl_context_disable(), DRW_opengl_context_enable(), drw_registered_engines_free(), DRW_shaders_free(), DRW_shape_cache_free(), DRW_stats_free(), DRW_TEXTURE_FREE_SAFE, DRW_UBO_FREE_SAFE, DRW_volume_free(), DST, DRWSelectBuffer::framebuffer_depth_only, G_draw, g_select_buffer, DRWManager::gl_context, GPU_draw_list_discard(), NULL, DRW_Global::ramp, DRWSelectBuffer::texture_depth, DRW_Global::view_ubo, and DRW_Global::weight_ramp.
Referenced by RE_engines_exit().
Definition at line 2925 of file draw_manager.c.
References BKE_curve_batch_cache_dirty_tag_cb, BKE_curve_batch_cache_free_cb, BKE_curves_batch_cache_dirty_tag_cb, BKE_curves_batch_cache_free_cb, BKE_gpencil_batch_cache_dirty_tag_cb, BKE_gpencil_batch_cache_free_cb, BKE_lattice_batch_cache_dirty_tag_cb, BKE_lattice_batch_cache_free_cb, BKE_mball_batch_cache_dirty_tag_cb, BKE_mball_batch_cache_free_cb, BKE_mesh_batch_cache_dirty_tag_cb, BKE_mesh_batch_cache_free_cb, BKE_particle_batch_cache_dirty_tag_cb, BKE_particle_batch_cache_free_cb, BKE_pointcloud_batch_cache_dirty_tag_cb, BKE_pointcloud_batch_cache_free_cb, BKE_subsurf_modifier_free_gpu_cache_cb, BKE_volume_batch_cache_dirty_tag_cb, BKE_volume_batch_cache_free_cb, RenderEngineType::draw_engine, draw_engine_basic_type, draw_engine_debug_select_type, draw_engine_gpencil_type, draw_engine_image_type, draw_engine_overlay_type, draw_engine_select_type, DRW_curve_batch_cache_dirty_tag(), DRW_curve_batch_cache_free(), DRW_curves_batch_cache_dirty_tag(), DRW_curves_batch_cache_free(), DRW_engine_register(), DRW_engine_viewport_eevee_type, DRW_engine_viewport_external_type, DRW_engine_viewport_workbench_type, DRW_gpencil_batch_cache_dirty_tag(), DRW_gpencil_batch_cache_free(), DRW_lattice_batch_cache_dirty_tag(), DRW_lattice_batch_cache_free(), DRW_mball_batch_cache_dirty_tag(), DRW_mball_batch_cache_free(), DRW_mesh_batch_cache_dirty_tag(), DRW_mesh_batch_cache_free(), DRW_particle_batch_cache_dirty_tag(), DRW_particle_batch_cache_free(), DRW_pointcloud_batch_cache_dirty_tag(), DRW_pointcloud_batch_cache_free(), DRW_subdiv_cache_free(), DRW_volume_batch_cache_dirty_tag(), DRW_volume_batch_cache_free(), and RE_engines_register().
Referenced by RE_engines_init().
Definition at line 2918 of file draw_manager.c.
References DRW_engine_viewport_eevee_next_type, and RE_engines_register().
Referenced by RE_engines_init_experimental().
Needs to be called BEFORE DRW_opengl_render_context_disable().
Needs to be called AFTER DRW_opengl_render_context_enable().
Definition at line 3179 of file draw_manager.c.
References BLI_assert, BLI_thread_is_main(), and GPU_context_active_set().
struct DRWInstanceDataList* DRW_instance_data_list_create | ( | void | ) |
This is here because GPUViewport needs it.
Definition at line 307 of file draw_instance_data.c.
References BLI_addtail(), BLI_memblock_create, g_idatalists, GPUBatch, MEM_callocN, DRWInstanceDataList::pool_batching, DRWInstanceDataList::pool_buffers, and DRWInstanceDataList::pool_instancing.
Referenced by DRW_viewport_data_create().
void DRW_instance_data_list_free | ( | struct DRWInstanceDataList * | idatalist | ) |
Definition at line 320 of file draw_instance_data.c.
References BLI_memblock_destroy(), BLI_remlink(), DRW_instance_data_free(), g_idatalists, DRWInstanceDataList::idata_head, DRWInstanceDataList::idata_tail, MAX_INSTANCE_DATA_SIZE, MEM_freeN, DRWInstanceData::next, NULL, DRWInstanceDataList::pool_batching, DRWInstanceDataList::pool_buffers, DRWInstanceDataList::pool_instancing, temp_batch_free(), temp_buffer_handle_free(), and temp_instancing_handle_free().
Referenced by DRW_viewport_data_free().
void DRW_notify_view_update | ( | const DRWUpdateContext * | update_ctx | ) |
Definition at line 1262 of file draw_manager.c.
References BLI_ticket_mutex_lock(), BLI_ticket_mutex_unlock(), data, depsgraph, DRWUpdateContext::depsgraph, DRWManager::draw_ctx, DRW_ENABLED_ENGINE_ITER, drw_engines_data_validate(), drw_engines_disable(), drw_engines_enable(), drw_gpencil_engine_needed(), drw_manager_exit(), drw_state_prepare_clean_for_draw(), drw_viewport_data_ensure(), DST, DRWUpdateContext::engine_type, G, DRWManager::gl_context_mutex, GPU_viewport_is_stereo_get(), OB_MODE_OBJECT, OBACT, DRWUpdateContext::region, DRWContextState::region, ARegion::regiondata, scene, DRWUpdateContext::scene, DRWUpdateContext::v3d, view, DRWData::view_data, DRWManager::view_data_active, DRWUpdateContext::view_layer, DRWManager::viewport, DRWManager::vmempool, and WM_draw_region_get_viewport().
Referenced by ED_render_view3d_update(), and view3d_do_msg_notify_workbench_view_update().
Definition at line 3294 of file draw_manager.c.
References BLI_thread_is_main(), DST, DRWManager::gl_context, DRWManager::gpu_context, GPU_context_active_set(), WM_opengl_context_activate(), and wm_window_reset_drawable().
Definition at line 3081 of file draw_manager.c.
References BLI_assert, BLI_ticket_mutex_alloc(), DST, DRWManager::gl_context, DRWManager::gl_context_mutex, DRWManager::gpu_context, GPU_context_create(), NULL, WM_opengl_context_activate(), WM_opengl_context_create(), and wm_window_reset_drawable().
Referenced by WM_init_opengl().
Definition at line 3095 of file draw_manager.c.
References BLI_assert, BLI_thread_is_main(), BLI_ticket_mutex_free(), DST, DRWManager::gl_context, DRWManager::gl_context_mutex, DRWManager::gpu_context, GPU_context_active_set(), GPU_context_discard(), NULL, WM_opengl_context_activate(), and WM_opengl_context_dispose().
Referenced by WM_exit_ex().
Definition at line 3157 of file draw_manager.c.
References DRW_opengl_context_disable_ex().
Referenced by DRW_select_buffer_read(), ED_view3d_draw_offscreen_imbuf(), GPU_viewport_unbind(), screen_opengl_render_doit(), screen_opengl_render_end(), screen_opengl_render_init(), and view3d_opengl_select_ex().
Definition at line 3120 of file draw_manager.c.
References BLI_thread_is_main(), BLI_ticket_mutex_unlock(), DST, DRWManager::gl_context, DRWManager::gl_context_mutex, GPU_BACKEND_OPENGL, GPU_context_active_set(), GPU_DEVICE_ANY, GPU_DRIVER_ANY, GPU_flush(), GPU_OS_MAC, GPU_render_end(), GPU_type_matches_ex(), NULL, WM_opengl_context_release(), and wm_window_reset_drawable().
Referenced by DRW_opengl_context_disable(), and WM_exit_ex().
Definition at line 3147 of file draw_manager.c.
References DRW_opengl_context_enable_ex(), DST, G, DRWManager::gl_context, NULL, and WM_init_opengl().
Referenced by DRW_select_buffer_read(), ED_view3d_draw_offscreen_imbuf(), GPU_viewport_bind(), screen_opengl_render_doit(), screen_opengl_render_end(), screen_opengl_render_init(), and view3d_opengl_select_ex().
Referenced by WM_exit_ex().
Definition at line 3276 of file draw_manager.c.
References BLI_thread_is_main(), DST, DRWManager::gl_context, DRWManager::gpu_context, GPU_context_active_get(), GPU_context_active_set(), NULL, and WM_opengl_context_release().
Definition at line 3172 of file draw_manager.c.
References BLI_ticket_mutex_unlock(), DST, DRWManager::gl_context_mutex, and WM_opengl_context_release().
Definition at line 3162 of file draw_manager.c.
References BLI_assert, BLI_thread_is_main(), BLI_ticket_mutex_lock(), DST, DRWManager::gl_context_mutex, and WM_opengl_context_activate().
Helper to check if exit object type to render.
Definition at line 1808 of file draw_manager.c.
References DEG_OBJECT_ITER_FOR_RENDER_ENGINE_BEGIN, DEG_OBJECT_ITER_FOR_RENDER_ENGINE_END, depsgraph, drw_gpencil_engine_needed(), DRW_object_visibility_in_active_context(), NULL, OB_GPENCIL, and OB_VISIBLE_SELF.
Referenced by DRW_render_gpencil(), and engine_depsgraph_init().
Definition at line 3054 of file draw_manager.c.
References DRW_gpu_render_context_disable(), DRW_opengl_context_disable(), DRW_opengl_render_context_disable(), GPU_context_main_unlock(), GPU_use_main_context_workaround(), NULL, RE_gl_context_get(), and RE_gpu_context_get().
Referenced by DRW_render_gpencil(), engine_depsgraph_free(), engine_depsgraph_init(), engine_render_view_layer(), and RE_engine_render_context_disable().
Definition at line 3027 of file draw_manager.c.
References DRW_gpu_render_context_enable(), DRW_opengl_context_enable(), DRW_opengl_render_context_enable(), DST, G, DRWManager::gl_context, GPU_context_main_lock(), GPU_use_main_context_workaround(), NULL, RE_gl_context_get(), RE_gpu_context_get(), and WM_init_opengl().
Referenced by DRW_render_gpencil(), engine_depsgraph_free(), engine_depsgraph_init(), engine_render_view_layer(), and RE_engine_render_context_enable().
void DRW_render_gpencil | ( | struct RenderEngine * | engine, |
struct Depsgraph * | depsgraph | ||
) |
Definition at line 1837 of file draw_manager.c.
References RenderData::alphamode, BLI_assert, BLI_rcti_init(), BLI_rcti_is_empty(), DRWManager::buffer_finish_called, DEG_get_evaluated_scene(), DEG_get_evaluated_view_layer(), depsgraph, DRWManager::draw_background, DRWManager::draw_ctx, drw_context_state_init(), drw_manager_exit(), drw_manager_init(), DRW_render_check_grease_pencil(), DRW_render_context_disable(), DRW_render_context_enable(), DRW_render_gpencil_to_image(), drw_state_prepare_clean_for_draw(), DRW_state_reset(), DRW_view_reset(), DST, ListBase::first, GPU_DEPTH_NONE, GPU_depth_test(), GPU_framebuffer_restore(), DRWManager::is_image_render, DRWManager::is_scene_render, ViewLayer::name, Render::name, NULL, OB_MODE_OBJECT, DRWManager::options, Scene::r, R_ADDSKY, RenderEngine::re, RE_engine_get_result(), RE_GetRenderLayer(), RE_GetViewPlane(), RE_SetActiveRenderView(), RenderEngine::resolution_x, RenderEngine::resolution_y, scene, DRWContextState::scene, size(), RenderEngine::type, and RenderResult::views.
Referenced by engine_render_view_layer().
Definition at line 2257 of file draw_cache_impl_subdivision.cc.
References DRW_cache_free_old_subdiv(), g_evaluator_cache, g_subdiv_shaders, GPU_shader_free(), NUM_SHADERS, and openSubdiv_deleteEvaluatorCache().
Referenced by WM_exit_ex().
Definition at line 750 of file draw_instance_data.c.
References BLI_ghash_free(), drw_uniform_attrs_pool_free_cb(), and NULL.
Referenced by DRW_viewport_data_free().
Definition at line 367 of file draw_manager.c.
References BLI_memblock_create, BLI_memblock_create_ex(), DRWData::callbuffers, DRWData::commands, DRWData::commands_small, DRWData::cullstates, DRW_instance_data_list_create(), DRW_RESOURCE_CHUNK_LEN, DRW_texture_pool_create(), DRW_uniform_attrs_pool_new(), DRW_view_data_create(), g_registered_engines, DRWData::idatalist, DRWData::images, MEM_callocN, DRWData::obattrs_ubo_pool, DRWData::obinfos, DRWData::obmats, DRWData::passes, DRWData::shgroups, DRWData::texture_pool, DRWData::uniforms, DRWData::view_data, and DRWData::views.
Referenced by drw_manager_init(), and drw_viewport_data_ensure().
Definition at line 440 of file draw_manager.c.
References BLI_memblock_destroy(), DRWData::callbuffers, DRWData::commands, DRWData::commands_small, DRWData::cullstates, DRWData::curves_ubos, draw_texture_release(), DRW_curves_ubos_pool_free(), DRW_instance_data_list_free(), DRW_texture_pool_free(), DRW_uniform_attrs_pool_free(), DRW_view_data_free(), DRW_volume_ubos_pool_free(), GPU_uniformbuf_free(), DRWData::idatalist, DRWData::images, DRWData::matrices_ubo, MEM_freeN, NULL, DRWData::obattrs_ubo_pool, DRWData::obinfos, DRWData::obinfos_ubo, DRWData::obmats, DRWData::passes, DRWData::shgroups, DRWData::texture_pool, DRWData::ubo_len, DRWData::uniforms, DRWData::view_data, DRWData::views, and DRWData::volume_grids_ubos.
Referenced by drw_manager_exit(), and GPU_viewport_free().