14#define GPU_INFO_SIZE 512
110 const char *pass_name);
133#define DRW_ENABLED_ENGINE_ITER(view_data_, engine_, data_) \
134 DRWEngineIterator iterator; \
135 ViewportEngineData *data_; \
136 DrawEngineType *engine_; \
137 DRW_view_data_enabled_engine_iter_begin(&iterator, view_data_); \
139 while ((data_ = DRW_view_data_enabled_engine_iter_step(&iterator), \
140 engine_ = (data_ != nullptr) ? (DrawEngineType *)data_->engine_type->draw_engine : \
void DRW_view_data_use_engine(DRWViewData *view_data, DrawEngineType *engine_type)
void DRW_view_data_free(DRWViewData *view_data)
void DRW_view_data_default_lists_from_viewport(DRWViewData *view_data, GPUViewport *viewport)
DefaultFramebufferList * DRW_view_data_default_framebuffer_list_get(DRWViewData *view_data)
DefaultTextureList * DRW_view_data_default_texture_list_get(DRWViewData *view_data)
void DRW_view_data_enabled_engine_iter_begin(DRWEngineIterator *iterator, DRWViewData *view_data)
void DRW_view_data_engines_view_update(DRWViewData *view_data)
blender::draw::TextureFromPool & DRW_view_data_pass_texture_get(DRWViewData *view_data, const char *pass_name)
ViewportEngineData * DRW_view_data_enabled_engine_iter_step(DRWEngineIterator *iterator)
double * DRW_view_data_cache_time_get(DRWViewData *view_data)
DRWViewData * DRW_view_data_create(ListBase *engine_types)
void DRW_view_data_texture_list_size_validate(DRWViewData *view_data, const int size[2])
void DRW_view_data_reset(DRWViewData *view_data)
ViewportEngineData * DRW_view_data_engine_data_get_ensure(DRWViewData *view_data, DrawEngineType *engine_type)
void DRW_view_data_free_unused(DRWViewData *view_data)
ViewportEngineData ** engines
GPUFrameBuffer * depth_only_fb
GPUFrameBuffer * overlay_fb
GPUFrameBuffer * color_only_fb
GPUFrameBuffer * in_front_fb
GPUFrameBuffer * overlay_only_fb
GPUFrameBuffer * default_fb
GPUTexture * depth_in_front
GPUTexture * color_overlay
GPUFrameBuffer * framebuffers[1]
DRWTextStore * text_draw_cache
DRWRegisteredDrawEngine * engine_type
void * instance_data
Memory block that can be freely used by the draw engine. When used the draw engine must implement Dra...