[Bf-blender-cvs] [de0d3ec4576] blender2.8: Allow new selection in eevee & blender draw modes

Campbell Barton noreply at git.blender.org
Wed Apr 26 08:48:46 CEST 2017


Commit: de0d3ec45764fadcf4c8f6452f0085805f4bea87
Author: Campbell Barton
Date:   Wed Apr 26 16:52:02 2017 +1000
Branches: blender2.8
https://developer.blender.org/rBde0d3ec45764fadcf4c8f6452f0085805f4bea87

Allow new selection in eevee & blender draw modes

===================================================================

M	source/blender/draw/intern/draw_manager.c

===================================================================

diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c
index 0531e94396b..007ef3ad625 100644
--- a/source/blender/draw/intern/draw_manager.c
+++ b/source/blender/draw/intern/draw_manager.c
@@ -1742,10 +1742,10 @@ static void DRW_engines_enable_from_engine(const Scene *scene)
 	/* TODO layers */
 	RenderEngineType *type = RE_engines_find(scene->r.engine);
 	use_drw_engine(type->draw_engine);
+}
 
-	/* TODO Refine the folowing logic based on objects states
-	 * not on global state.
-	 * Order is important */
+static void DRW_engines_enable_from_object_mode(void)
+{
 	use_drw_engine(&draw_engine_object_type);
 }
 
@@ -1799,11 +1799,18 @@ static void DRW_engines_enable_from_mode(int mode)
 	}
 }
 
+static void DRW_engines_enable_select(void)
+{
+	/* TODO, add select engine */
+	use_drw_engine(viewport_clay_type.draw_engine);
+}
+
 static void DRW_engines_enable(const bContext *C)
 {
 	Scene *scene = CTX_data_scene(C);
 	const int mode = CTX_data_mode_enum(C);
 	DRW_engines_enable_from_engine(scene);
+	DRW_engines_enable_from_object_mode();
 	DRW_engines_enable_from_mode(mode);
 }
 
@@ -2076,7 +2083,8 @@ void DRW_draw_select_loop(
 		DRW_engines_enable_from_mode(obedit_mode);
 	}
 	else {
-		DRW_engines_enable_from_engine(scene);
+		DRW_engines_enable_select();
+		DRW_engines_enable_from_object_mode();
 	}
 
 	/* Setup viewport */




More information about the Bf-blender-cvs mailing list