Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Foucault <foucault.clem@gmail.com>2022-10-12 18:34:28 +0300
committerClément Foucault <foucault.clem@gmail.com>2022-10-12 18:34:28 +0300
commitcd93f790c7a02f57d57a851e5aff82108b3f12a7 (patch)
treea13193b2ed0e734fb136ce8dfa0eafb36493cc1c
parent482fee9bbe1e3bdd7e87cfffb8ed08d0dc071c85 (diff)
Overlay: Add experimental option to enable overlay-next
-rw-r--r--release/scripts/startup/bl_ui/space_userpref.py1
-rw-r--r--source/blender/draw/intern/draw_manager.c10
-rw-r--r--source/blender/makesdna/DNA_userdef_types.h3
-rw-r--r--source/blender/makesrna/intern/rna_userdef.c5
4 files changed, 15 insertions, 4 deletions
diff --git a/release/scripts/startup/bl_ui/space_userpref.py b/release/scripts/startup/bl_ui/space_userpref.py
index a9736feb057..cbe6579a449 100644
--- a/release/scripts/startup/bl_ui/space_userpref.py
+++ b/release/scripts/startup/bl_ui/space_userpref.py
@@ -2316,6 +2316,7 @@ class USERPREF_PT_experimental_prototypes(ExperimentalPanel, Panel):
({"property": "use_sculpt_texture_paint"}, "T96225"),
({"property": "use_full_frame_compositor"}, "T88150"),
({"property": "enable_eevee_next"}, "T93220"),
+ ({"property": "enable_overlay_next"}, ""),
({"property": "use_draw_manager_acquire_lock"}, "T98016"),
),
)
diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c
index da77845feb4..d722d8ccc47 100644
--- a/source/blender/draw/intern/draw_manager.c
+++ b/source/blender/draw/intern/draw_manager.c
@@ -1199,7 +1199,8 @@ static void drw_engines_enable_from_engine(const RenderEngineType *engine_type,
static void drw_engines_enable_overlays(void)
{
- use_drw_engine(&draw_engine_overlay_type);
+ use_drw_engine((U.experimental.enable_overlay_next) ? &draw_engine_overlay_next_type :
+ &draw_engine_overlay_type);
}
/**
* Use for select and depth-drawing.
@@ -1218,7 +1219,8 @@ static void drw_engine_enable_image_editor(void)
use_drw_engine(&draw_engine_image_type);
}
- use_drw_engine(&draw_engine_overlay_type);
+ use_drw_engine((U.experimental.enable_overlay_next) ? &draw_engine_overlay_next_type :
+ &draw_engine_overlay_type);
}
static void drw_engines_enable_editors(void)
@@ -1236,7 +1238,8 @@ static void drw_engines_enable_editors(void)
SpaceNode *snode = (SpaceNode *)space_data;
if ((snode->flag & SNODE_BACKDRAW) != 0) {
use_drw_engine(&draw_engine_image_type);
- use_drw_engine(&draw_engine_overlay_type);
+ use_drw_engine((U.experimental.enable_overlay_next) ? &draw_engine_overlay_next_type :
+ &draw_engine_overlay_type);
}
}
}
@@ -3012,6 +3015,7 @@ void DRW_engines_register(void)
DRW_engine_register(&draw_engine_gpencil_type);
DRW_engine_register(&draw_engine_overlay_type);
+ DRW_engine_register(&draw_engine_overlay_next_type);
DRW_engine_register(&draw_engine_select_type);
DRW_engine_register(&draw_engine_basic_type);
DRW_engine_register(&draw_engine_compositor_type);
diff --git a/source/blender/makesdna/DNA_userdef_types.h b/source/blender/makesdna/DNA_userdef_types.h
index 9d8b75450ca..885e6d48724 100644
--- a/source/blender/makesdna/DNA_userdef_types.h
+++ b/source/blender/makesdna/DNA_userdef_types.h
@@ -653,7 +653,8 @@ typedef struct UserDef_Experimental {
char use_sculpt_texture_paint;
char use_draw_manager_acquire_lock;
char use_realtime_compositor;
- char _pad[7];
+ char enable_overlay_next;
+ char _pad[6];
/** `makesdna` does not allow empty structs. */
} UserDef_Experimental;
diff --git a/source/blender/makesrna/intern/rna_userdef.c b/source/blender/makesrna/intern/rna_userdef.c
index 5d50a671f4a..f2715bb3555 100644
--- a/source/blender/makesrna/intern/rna_userdef.c
+++ b/source/blender/makesrna/intern/rna_userdef.c
@@ -6388,6 +6388,11 @@ static void rna_def_userdef_experimental(BlenderRNA *brna)
"Enable viewport debugging options for developers in the overlays "
"pop-over");
RNA_def_property_update(prop, 0, "rna_userdef_ui_update");
+
+ prop = RNA_def_property(srna, "enable_overlay_next", PROP_BOOLEAN, PROP_NONE);
+ RNA_def_property_boolean_sdna(prop, NULL, "enable_overlay_next", 1);
+ RNA_def_property_ui_text(
+ prop, "Overlay Next", "Enable the new Overlay codebase, requires restart");
}
static void rna_def_userdef_addon_collection(BlenderRNA *brna, PropertyRNA *cprop)