diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2018-04-29 20:28:43 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2018-05-02 21:49:38 +0300 |
commit | 18071f4e0eee407f9a05a0e56f3f46b715d82b09 (patch) | |
tree | 5073aefc237a7b990c5e3322c312ed761706d10e | |
parent | d0d282bf2f8f7cf08d34778bffd628cca615445b (diff) |
Armature: Draw envelope on non MSAA buffer.
Appart from the performance issue, the MSAA resolve pass is not compatible
with additive passes.
-rw-r--r-- | source/blender/draw/modes/edit_armature_mode.c | 3 | ||||
-rw-r--r-- | source/blender/draw/modes/object_mode.c | 3 | ||||
-rw-r--r-- | source/blender/draw/modes/pose_mode.c | 3 |
3 files changed, 6 insertions, 3 deletions
diff --git a/source/blender/draw/modes/edit_armature_mode.c b/source/blender/draw/modes/edit_armature_mode.c index 35072afbb31..292e62f090c 100644 --- a/source/blender/draw/modes/edit_armature_mode.c +++ b/source/blender/draw/modes/edit_armature_mode.c @@ -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); diff --git a/source/blender/draw/modes/object_mode.c b/source/blender/draw/modes/object_mode.c index cae40c411a9..d48c1bbc0ba 100644 --- a/source/blender/draw/modes/object_mode.c +++ b/source/blender/draw/modes/object_mode.c @@ -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); diff --git a/source/blender/draw/modes/pose_mode.c b/source/blender/draw/modes/pose_mode.c index d764ce93bae..5a3ed791b84 100644 --- a/source/blender/draw/modes/pose_mode.c +++ b/source/blender/draw/modes/pose_mode.c @@ -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); |