Changeset View
Changeset View
Standalone View
Standalone View
source/blender/draw/intern/draw_manager.c
| Show First 20 Lines • Show All 1,177 Lines • ▼ Show 20 Lines | |||||
| /* Gather all draw engines needed and store them in DST.view_data_active | /* Gather all draw engines needed and store them in DST.view_data_active | ||||
| * That also define the rendering order of engines */ | * That also define the rendering order of engines */ | ||||
| static void drw_engines_enable_from_engine(const RenderEngineType *engine_type, eDrawType drawtype) | static void drw_engines_enable_from_engine(const RenderEngineType *engine_type, eDrawType drawtype) | ||||
| { | { | ||||
| switch (drawtype) { | switch (drawtype) { | ||||
| case OB_WIRE: | case OB_WIRE: | ||||
| case OB_SOLID: | case OB_SOLID: | ||||
| if (U.experimental.enable_workbench_next && | |||||
| strcmp(engine_type->idname, "BLENDER_WORKBENCH_NEXT") == 0) { | |||||
| use_drw_engine(DRW_engine_viewport_workbench_next_type.draw_engine); | |||||
| break; | |||||
| } | |||||
| use_drw_engine(DRW_engine_viewport_workbench_type.draw_engine); | use_drw_engine(DRW_engine_viewport_workbench_type.draw_engine); | ||||
| break; | break; | ||||
| case OB_MATERIAL: | case OB_MATERIAL: | ||||
| case OB_RENDER: | case OB_RENDER: | ||||
| default: | default: | ||||
| if (engine_type->draw_engine != NULL) { | if (engine_type->draw_engine != NULL) { | ||||
| use_drw_engine(engine_type->draw_engine); | use_drw_engine(engine_type->draw_engine); | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 1,791 Lines • ▼ Show 20 Lines | void DRW_engine_register(DrawEngineType *draw_engine_type) | ||||
| g_registered_engines.len = BLI_listbase_count(&g_registered_engines.engines); | g_registered_engines.len = BLI_listbase_count(&g_registered_engines.engines); | ||||
| } | } | ||||
| void DRW_engines_register_experimental(void) | void DRW_engines_register_experimental(void) | ||||
| { | { | ||||
| if (U.experimental.enable_eevee_next) { | if (U.experimental.enable_eevee_next) { | ||||
| RE_engines_register(&DRW_engine_viewport_eevee_next_type); | RE_engines_register(&DRW_engine_viewport_eevee_next_type); | ||||
| } | } | ||||
| if (U.experimental.enable_workbench_next) { | |||||
| RE_engines_register(&DRW_engine_viewport_workbench_next_type); | |||||
| } | |||||
| } | } | ||||
| void DRW_engines_register(void) | void DRW_engines_register(void) | ||||
| { | { | ||||
| RE_engines_register(&DRW_engine_viewport_eevee_type); | RE_engines_register(&DRW_engine_viewport_eevee_type); | ||||
| RE_engines_register(&DRW_engine_viewport_workbench_type); | RE_engines_register(&DRW_engine_viewport_workbench_type); | ||||
| DRW_engine_register(&draw_engine_gpencil_type); | DRW_engine_register(&draw_engine_gpencil_type); | ||||
| ▲ Show 20 Lines • Show All 388 Lines • Show Last 20 Lines | |||||