Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Foucault <foucault.clem@gmail.com>2018-03-08 01:25:49 +0300
committerClément Foucault <foucault.clem@gmail.com>2018-03-08 02:09:04 +0300
commit70fa15d1b84b1ee93f4dd200bbb4bb5f8d02371b (patch)
tree17070c0af5ce8497d23fb2f04950eef1af5f100a /source/blender/draw/engines/eevee/eevee_lights.c
parent45ec962f68f834bb662e4e25e770f8aa61891e6b (diff)
Eevee: Save and reset matrixstate for probe rendering.
Diffstat (limited to 'source/blender/draw/engines/eevee/eevee_lights.c')
-rw-r--r--source/blender/draw/engines/eevee/eevee_lights.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/source/blender/draw/engines/eevee/eevee_lights.c b/source/blender/draw/engines/eevee/eevee_lights.c
index 1f4aba5466c..b4afb8bb555 100644
--- a/source/blender/draw/engines/eevee/eevee_lights.c
+++ b/source/blender/draw/engines/eevee/eevee_lights.c
@@ -722,10 +722,10 @@ static void eevee_shadow_cascade_setup(Object *ob, EEVEE_LampsInfo *linfo, EEVEE
/* obmat = Object Space > World Space */
/* viewmat = World Space > View Space */
- invert_m4_m4(sh_data->clipmat[DRW_MAT_VIEW], ob->obmat);
- viewmat = sh_data->clipmat[DRW_MAT_VIEW];
+ invert_m4_m4(sh_data->clipmat.mat[DRW_MAT_VIEW], ob->obmat);
+ viewmat = sh_data->clipmat.mat[DRW_MAT_VIEW];
normalize_m4(viewmat);
- invert_m4_m4(sh_data->clipmat[DRW_MAT_VIEWINV], viewmat);
+ invert_m4_m4(sh_data->clipmat.mat[DRW_MAT_VIEWINV], viewmat);
/* The technique consists into splitting
* the view frustum into several sub-frustum
@@ -887,13 +887,13 @@ static void eevee_shadow_cascade_setup(Object *ob, EEVEE_LampsInfo *linfo, EEVEE
}
/* Clipping mats */
- orthographic_m4(sh_data->clipmat[DRW_MAT_WIN],
+ orthographic_m4(sh_data->clipmat.mat[DRW_MAT_WIN],
rect_clip.xmin, rect_clip.xmax,
rect_clip.ymin, rect_clip.ymax,
la->clipsta, la->clipend);
- mul_m4_m4m4(sh_data->clipmat[DRW_MAT_PERS], sh_data->clipmat[DRW_MAT_WIN], viewmat);
- invert_m4_m4(sh_data->clipmat[DRW_MAT_WININV], sh_data->clipmat[DRW_MAT_WIN]);
- invert_m4_m4(sh_data->clipmat[DRW_MAT_PERSINV], sh_data->clipmat[DRW_MAT_PERS]);
+ mul_m4_m4m4(sh_data->clipmat.mat[DRW_MAT_PERS], sh_data->clipmat.mat[DRW_MAT_WIN], viewmat);
+ invert_m4_m4(sh_data->clipmat.mat[DRW_MAT_WININV], sh_data->clipmat.mat[DRW_MAT_WIN]);
+ invert_m4_m4(sh_data->clipmat.mat[DRW_MAT_PERSINV], sh_data->clipmat.mat[DRW_MAT_PERS]);
ubo_data->bias = 0.05f * la->bias;
ubo_data->near = la->clipsta;
@@ -1024,7 +1024,7 @@ static void eevee_shadows_cube_culling_frustum(EEVEE_ShadowRender *srd)
static void eevee_shadows_cascade_culling_frustum(EEVEE_ShadowCascadeData *evscd)
{
- DRW_viewport_matrix_override_set_all((DRWMatrixState *)evscd->clipmat);
+ DRW_viewport_matrix_override_set_all(&evscd->clipmat);
}
/* this refresh lamps shadow buffers */