From f1f3ff023799bb41295689b8e5a1489c1afbe323 Mon Sep 17 00:00:00 2001 From: Antonio Vazquez Date: Tue, 21 Feb 2023 10:03:54 +0100 Subject: [PATCH] Fix #104979: GPencil Dot-hash only affects first frame with Time mod The active frame must be recovered using `BKE_gpencil_frame_retime_get` --- source/blender/gpencil_modifiers/intern/MOD_gpencildash.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/source/blender/gpencil_modifiers/intern/MOD_gpencildash.c b/source/blender/gpencil_modifiers/intern/MOD_gpencildash.c index 2ff2a0eb1fa..dfb859542f5 100644 --- a/source/blender/gpencil_modifiers/intern/MOD_gpencildash.c +++ b/source/blender/gpencil_modifiers/intern/MOD_gpencildash.c @@ -17,6 +17,7 @@ #include "DNA_gpencil_types.h" #include "DNA_meshdata_types.h" #include "DNA_object_types.h" +#include "DNA_scene_types.h" #include "DNA_screen_types.h" #include "BKE_gpencil.h" @@ -42,6 +43,7 @@ #include "MOD_gpencil_util.h" #include "DEG_depsgraph.h" +#include "DEG_depsgraph_query.h" #include "WM_api.h" @@ -254,11 +256,11 @@ static bool isDisabled(GpencilModifierData *md, int UNUSED(userRenderParams)) /* Generic "generateStrokes" callback */ static void generateStrokes(GpencilModifierData *md, Depsgraph *depsgraph, Object *ob) { + Scene *scene = DEG_get_evaluated_scene(depsgraph); bGPdata *gpd = ob->data; LISTBASE_FOREACH (bGPDlayer *, gpl, &gpd->layers) { - BKE_gpencil_frame_active_set(depsgraph, gpd); - bGPDframe *gpf = gpl->actframe; + bGPDframe *gpf = BKE_gpencil_frame_retime_get(depsgraph, scene, ob, gpl); if (gpf == NULL) { continue; }