[Bf-blender-cvs] [a74041c96c7] master: Eevee/GPencil: Fix depth reading after render

Clément Foucault noreply at git.blender.org
Mon May 27 16:15:01 CEST 2019


Commit: a74041c96c71d675a8aa548dce3043438e5bd1ba
Author: Clément Foucault
Date:   Mon May 27 16:14:03 2019 +0200
Branches: master
https://developer.blender.org/rBa74041c96c71d675a8aa548dce3043438e5bd1ba

Eevee/GPencil: Fix depth reading after render

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

M	source/blender/draw/engines/eevee/eevee_render.c
M	source/blender/draw/engines/gpencil/gpencil_render.c

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

diff --git a/source/blender/draw/engines/eevee/eevee_render.c b/source/blender/draw/engines/eevee/eevee_render.c
index 1283fbb3ebb..2afd0b1d313 100644
--- a/source/blender/draw/engines/eevee/eevee_render.c
+++ b/source/blender/draw/engines/eevee/eevee_render.c
@@ -365,8 +365,8 @@ static void eevee_render_result_z(RenderLayer *rl,
 
     bool is_persp = DRW_view_is_persp_get(NULL);
 
-    float viewmat[4][4];
-    DRW_view_viewmat_get(NULL, viewmat, false);
+    float winmat[4][4];
+    DRW_view_winmat_get(NULL, winmat, false);
 
     /* Convert ogl depth [0..1] to view Z [near..far] */
     for (int i = 0; i < rp->rectx * rp->recty; ++i) {
@@ -376,7 +376,7 @@ static void eevee_render_result_z(RenderLayer *rl,
       else {
         if (is_persp) {
           rp->rect[i] = rp->rect[i] * 2.0f - 1.0f;
-          rp->rect[i] = -viewmat[3][2] / (rp->rect[i] + viewmat[2][2]);
+          rp->rect[i] = winmat[3][2] / (rp->rect[i] + winmat[2][2]);
         }
         else {
           rp->rect[i] = -common_data->view_vecs[0][2] +
diff --git a/source/blender/draw/engines/gpencil/gpencil_render.c b/source/blender/draw/engines/gpencil/gpencil_render.c
index 8f3382fc138..301c29af335 100644
--- a/source/blender/draw/engines/gpencil/gpencil_render.c
+++ b/source/blender/draw/engines/gpencil/gpencil_render.c
@@ -212,7 +212,7 @@ static void GPENCIL_render_result_z(struct RenderLayer *rl,
     GPENCIL_render_update_vecs(vedata);
 
     float winmat[4][4];
-    DRW_view_persmat_get(stl->storage->view, winmat, false);
+    DRW_view_winmat_get(stl->storage->view, winmat, false);
 
     /* Convert ogl depth [0..1] to view Z [near..far] */
     for (int i = 0; i < BLI_rcti_size_x(rect) * BLI_rcti_size_y(rect); i++) {



More information about the Bf-blender-cvs mailing list