Armature: Draw envelope on non MSAA buffer.
Appart from the performance issue, the MSAA resolve pass is not compatible with additive passes.
This commit is contained in:
@@ -131,9 +131,10 @@ static void EDIT_ARMATURE_draw_scene(void *vedata)
|
||||
DefaultFramebufferList *dfbl = DRW_viewport_framebuffer_list_get();
|
||||
DefaultTextureList *dtxl = DRW_viewport_texture_list_get();
|
||||
|
||||
DRW_draw_pass(psl->bone_envelope);
|
||||
|
||||
MULTISAMPLE_SYNC_ENABLE(dfbl, dtxl)
|
||||
|
||||
DRW_draw_pass(psl->bone_envelope);
|
||||
DRW_draw_pass(psl->bone_outline);
|
||||
DRW_draw_pass(psl->bone_solid);
|
||||
DRW_draw_pass(psl->bone_wire);
|
||||
|
||||
@@ -2208,10 +2208,11 @@ static void OBJECT_draw_scene(void *vedata)
|
||||
|
||||
float clearcol[4] = {0.0f, 0.0f, 0.0f, 0.0f};
|
||||
|
||||
// DRW_draw_pass(psl->bone_envelope); /* Never drawn in Object mode currently. */
|
||||
|
||||
MULTISAMPLE_SYNC_ENABLE(dfbl, dtxl)
|
||||
|
||||
/* This needs to be drawn after the oultine */
|
||||
// DRW_draw_pass(psl->bone_envelope); /* Never drawn in Object mode currently. */
|
||||
DRW_draw_pass(psl->bone_solid);
|
||||
DRW_draw_pass(psl->bone_wire);
|
||||
DRW_draw_pass(psl->bone_outline);
|
||||
|
||||
@@ -169,9 +169,10 @@ static void POSE_draw_scene(void *vedata)
|
||||
DefaultFramebufferList *dfbl = DRW_viewport_framebuffer_list_get();
|
||||
DefaultTextureList *dtxl = DRW_viewport_texture_list_get();
|
||||
|
||||
DRW_draw_pass(psl->bone_envelope);
|
||||
|
||||
MULTISAMPLE_SYNC_ENABLE(dfbl, dtxl)
|
||||
|
||||
DRW_draw_pass(psl->bone_envelope);
|
||||
DRW_draw_pass(psl->bone_outline);
|
||||
DRW_draw_pass(psl->bone_wire);
|
||||
DRW_draw_pass(psl->bone_solid);
|
||||
|
||||
Reference in New Issue
Block a user