Fix T71909: Any keyframed GPLayer property is not updated when render animation

By error, the original datablock was used while rendering. Actually, only while the user is drawing the original data must be used because when we tested, the time the system uses to copy the datablock created a very bad "lag" feeling while drawing. Maybe the lag was half second only, but it ruined the pencil feeling.

I talked some time ago with Sergey about that and we decided use this approach.

Now, only the original datablock is used while the user is "moving" the pen, but not in any other situation.

Thanks @sergey for help me with this bug and sorry for thinking it was a depsgraph issue.
This commit is contained in:
Antonio Vazquez 2019-11-26 14:05:00 +01:00
parent 14da2b18fc
commit 9ecc30250a
Notes: blender-bot 2023-02-14 11:21:40 +01:00
Referenced by issue #71909, GPencil: Any keyframed GPLayer property is not updated when render animation.
1 changed files with 1 additions and 3 deletions

View File

@ -2077,9 +2077,7 @@ void gpencil_populate_datablock(GPENCIL_e_data *e_data,
BKE_gpencil_modifiers_calc(draw_ctx->depsgraph, draw_ctx->scene, ob);
}
/* Use original data to shared in edit/transform operators */
bGPdata *gpd_eval = (bGPdata *)ob->data;
bGPdata *gpd = (bGPdata *)DEG_get_original_id(&gpd_eval->id);
bGPdata *gpd = (bGPdata *)ob->data;
const bool main_onion = stl->storage->is_main_onion;
const bool playing = stl->storage->is_playing;