diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2018-02-03 03:49:29 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2018-02-03 04:19:10 +0300 |
commit | e530d0ccaa5afaa04153d602d13b98ddb4913627 (patch) | |
tree | 1e29a708301b9aabab2f1e8909652c572452add3 /source/blender/draw/engines/eevee/eevee_engine.c | |
parent | 36b259fa889afebce390f98862ea243e617aa989 (diff) |
Eevee: Perf: Put transparent sorting before the render loop.
Diffstat (limited to 'source/blender/draw/engines/eevee/eevee_engine.c')
-rw-r--r-- | source/blender/draw/engines/eevee/eevee_engine.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/source/blender/draw/engines/eevee/eevee_engine.c b/source/blender/draw/engines/eevee/eevee_engine.c index 152c4a595d0..e73c170fecf 100644 --- a/source/blender/draw/engines/eevee/eevee_engine.c +++ b/source/blender/draw/engines/eevee/eevee_engine.c @@ -177,6 +177,9 @@ static void eevee_draw_background(void *vedata) DefaultTextureList *dtxl = DRW_viewport_texture_list_get(); DefaultFramebufferList *dfbl = DRW_viewport_framebuffer_list_get(); + /* Sort transparents before the loop. */ + DRW_pass_sort_shgroup_z(psl->transparent_pass); + /* Number of iteration: needed for all temporal effect (SSR, TAA) * when using opengl render. */ int loop_ct = DRW_state_is_image_render() ? 4 : 1; @@ -273,7 +276,6 @@ static void eevee_draw_background(void *vedata) EEVEE_volumes_resolve(sldata, vedata); /* Transparent */ - DRW_pass_sort_shgroup_z(psl->transparent_pass); DRW_draw_pass(psl->transparent_pass); /* Post Process */ |