Overlay: Fix Line antialiasing broken for some objects
Fix regression introduced in rBe12767a0352a9e113892b4a07c6c8446d3ff361f The volumes are not a line type and should not be render into the line framebuffer nor it should change the framebuffer.
This commit is contained in:
@@ -547,6 +547,7 @@ static void OVERLAY_draw_scene(void *vedata)
|
||||
OVERLAY_fade_draw(vedata);
|
||||
OVERLAY_facing_draw(vedata);
|
||||
OVERLAY_extra_blend_draw(vedata);
|
||||
OVERLAY_volume_draw(vedata);
|
||||
|
||||
if (DRW_state_is_fbo()) {
|
||||
GPU_framebuffer_bind(fbl->overlay_line_fb);
|
||||
@@ -557,7 +558,6 @@ static void OVERLAY_draw_scene(void *vedata)
|
||||
OVERLAY_particle_draw(vedata);
|
||||
OVERLAY_metaball_draw(vedata);
|
||||
OVERLAY_gpencil_draw(vedata);
|
||||
OVERLAY_volume_draw(vedata);
|
||||
OVERLAY_extra_draw(vedata);
|
||||
|
||||
if (DRW_state_is_fbo()) {
|
||||
|
||||
@@ -39,6 +39,10 @@ void OVERLAY_volume_cache_init(OVERLAY_Data *vedata)
|
||||
pd->volume_selection_surface_grp = grp;
|
||||
DRW_shgroup_uniform_block(grp, "globalsBlock", G_draw.block_ubo);
|
||||
}
|
||||
else {
|
||||
psl->volume_ps = NULL;
|
||||
pd->volume_selection_surface_grp = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
void OVERLAY_volume_cache_populate(OVERLAY_Data *vedata, Object *ob)
|
||||
@@ -57,11 +61,8 @@ void OVERLAY_volume_cache_populate(OVERLAY_Data *vedata, Object *ob)
|
||||
void OVERLAY_volume_draw(OVERLAY_Data *vedata)
|
||||
{
|
||||
OVERLAY_PassList *psl = vedata->psl;
|
||||
OVERLAY_FramebufferList *fbl = vedata->fbl;
|
||||
|
||||
if (DRW_state_is_fbo()) {
|
||||
GPU_framebuffer_bind(fbl->overlay_default_fb);
|
||||
if (psl->volume_ps) {
|
||||
DRW_draw_pass(psl->volume_ps);
|
||||
}
|
||||
|
||||
DRW_draw_pass(psl->volume_ps);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user