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:
authorAntonio Vazquez <blendergit@gmail.com>2022-03-14 18:10:03 +0300
committerAntonio Vazquez <blendergit@gmail.com>2022-03-14 18:13:59 +0300
commitcff6eb65804da3a06bde3c9152bec26e01a24992 (patch)
treeb3d49cf7281568000695116fe990828660ed48c0 /source/blender/gpencil_modifiers/intern/MOD_gpencilarmature.c
parent8c4ddd5dde3a5f5ae0375c71e379e0fac287e3e6 (diff)
Cleanup: Remove duplicate Bake modifier code
This patch remove all duplicate code for the same Bake modifier logic. Still some modifiers need custom bake functions and cannot use this generic bake.
Diffstat (limited to 'source/blender/gpencil_modifiers/intern/MOD_gpencilarmature.c')
-rw-r--r--source/blender/gpencil_modifiers/intern/MOD_gpencilarmature.c24
1 files changed, 2 insertions, 22 deletions
diff --git a/source/blender/gpencil_modifiers/intern/MOD_gpencilarmature.c b/source/blender/gpencil_modifiers/intern/MOD_gpencilarmature.c
index 4ef48680029..f5ecce69129 100644
--- a/source/blender/gpencil_modifiers/intern/MOD_gpencilarmature.c
+++ b/source/blender/gpencil_modifiers/intern/MOD_gpencilarmature.c
@@ -42,6 +42,7 @@
#include "MOD_gpencil_modifiertypes.h"
#include "MOD_gpencil_ui_common.h"
+#include "MOD_gpencil_util.h"
#include "DEG_depsgraph.h"
#include "DEG_depsgraph_build.h"
@@ -118,35 +119,14 @@ static void bakeModifier(Main *UNUSED(bmain),
GpencilModifierData *md,
Object *ob)
{
- Scene *scene = DEG_get_evaluated_scene(depsgraph);
Object *object_eval = DEG_get_evaluated_object(depsgraph, ob);
ArmatureGpencilModifierData *mmd = (ArmatureGpencilModifierData *)md;
GpencilModifierData *md_eval = BKE_gpencil_modifiers_findby_name(object_eval, md->name);
- bGPdata *gpd = (bGPdata *)ob->data;
- int oldframe = (int)DEG_get_ctime(depsgraph);
if (mmd->object == NULL) {
return;
}
-
- LISTBASE_FOREACH (bGPDlayer *, gpl, &gpd->layers) {
- LISTBASE_FOREACH (bGPDframe *, gpf, &gpl->frames) {
- /* apply armature effects on this frame
- * NOTE: this assumes that we don't want armature animation on non-keyframed frames
- */
- CFRA = gpf->framenum;
- BKE_scene_graph_update_for_newframe(depsgraph);
-
- /* compute armature effects on this frame */
- LISTBASE_FOREACH (bGPDstroke *, gps, &gpf->strokes) {
- deformStroke(md_eval, depsgraph, object_eval, gpl, gpf, gps);
- }
- }
- }
-
- /* return frame state and DB to original state */
- CFRA = oldframe;
- BKE_scene_graph_update_for_newframe(depsgraph);
+ generic_bake_deform_stroke(depsgraph, md_eval, object_eval, true, deformStroke);
}
static bool isDisabled(GpencilModifierData *md, int UNUSED(userRenderParams))