[Bf-blender-cvs] [bf5ba496989] blender2.8: Partial fix to T56865: X-ray modes does not work for the weight paint overlay.

mano-wii noreply at git.blender.org
Tue Oct 30 19:21:16 CET 2018


Commit: bf5ba496989ebb825b030f1583bfd8dc9b9a85ca
Author: mano-wii
Date:   Tue Oct 30 14:51:26 2018 -0300
Branches: blender2.8
https://developer.blender.org/rBbf5ba496989ebb825b030f1583bfd8dc9b9a85ca

Partial fix to T56865: X-ray modes does not work for the weight paint overlay.

Part of the D3828 review.

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

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 366e0b0f03e..cbd2c7719b0 100644
--- a/source/blender/draw/intern/draw_manager.c
+++ b/source/blender/draw/intern/draw_manager.c
@@ -1202,7 +1202,6 @@ static void drw_engines_enable_from_paint_mode(int mode)
 			use_drw_engine(&draw_engine_sculpt_type);
 			break;
 		case CTX_MODE_PAINT_WEIGHT:
-			use_drw_engine(&draw_engine_pose_type);
 			use_drw_engine(&draw_engine_paint_weight_type);
 			break;
 		case CTX_MODE_PAINT_VERTEX:
@@ -1238,20 +1237,21 @@ static void drw_engines_enable_from_mode(int mode)
 		case CTX_MODE_EDIT_LATTICE:
 			use_drw_engine(&draw_engine_edit_lattice_type);
 			break;
-		case CTX_MODE_POSE:
-			use_drw_engine(&draw_engine_pose_type);
-			break;
 		case CTX_MODE_PARTICLE:
 			use_drw_engine(&draw_engine_particle_type);
 			break;
-		case CTX_MODE_SCULPT:
+		case CTX_MODE_POSE:
 		case CTX_MODE_PAINT_WEIGHT:
+			/* The pose engine clears the depth of the default framebuffer
+			 * to draw an object with `OB_DRAWXRAY`.
+			 * (different of workbench that has its own framebuffer).
+			 * So make sure you call its `draw_scene` after all the other engines. */
+			use_drw_engine(&draw_engine_pose_type);
+			break;
+		case CTX_MODE_SCULPT:
 		case CTX_MODE_PAINT_VERTEX:
 		case CTX_MODE_PAINT_TEXTURE:
-			/* Should have already been enabled */
-			break;
 		case CTX_MODE_OBJECT:
-			break;
 		case CTX_MODE_GPENCIL_PAINT:
 		case CTX_MODE_GPENCIL_EDIT:
 		case CTX_MODE_GPENCIL_SCULPT:



More information about the Bf-blender-cvs mailing list