diff options
Diffstat (limited to 'source/blender/draw/engines/eevee/eevee_render.c')
-rw-r--r-- | source/blender/draw/engines/eevee/eevee_render.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/source/blender/draw/engines/eevee/eevee_render.c b/source/blender/draw/engines/eevee/eevee_render.c index eedc64f32e6..c8357b56b18 100644 --- a/source/blender/draw/engines/eevee/eevee_render.c +++ b/source/blender/draw/engines/eevee/eevee_render.c @@ -177,7 +177,7 @@ bool EEVEE_render_init(EEVEE_Data *ved, RenderEngine *engine, struct Depsgraph * void EEVEE_render_cache(void *vedata, struct Object *ob, struct RenderEngine *engine, - struct Depsgraph *UNUSED(depsgraph)) + struct Depsgraph *depsgraph) { EEVEE_ViewLayerData *sldata = EEVEE_view_layer_data_ensure(); EEVEE_LightProbesInfo *pinfo = sldata->probes; @@ -211,6 +211,13 @@ void EEVEE_render_cache(void *vedata, if (ELEM(ob->type, OB_MESH, OB_CURVE, OB_SURF, OB_FONT, OB_MBALL)) { EEVEE_materials_cache_populate(vedata, sldata, ob, &cast_shadow); } + else if (ob->type == OB_HAIR) { + EEVEE_object_hair_cache_populate(vedata, sldata, ob, &cast_shadow); + } + else if (ob->type == OB_VOLUME) { + Scene *scene = DEG_get_evaluated_scene(depsgraph); + EEVEE_volumes_cache_object_add(sldata, vedata, scene, ob); + } else if (ob->type == OB_LIGHTPROBE) { EEVEE_lightprobes_cache_add(sldata, vedata, ob); } |