diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-02-18 15:23:49 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-02-18 18:52:01 +0300 |
commit | 0e3a2acbfa6998b3a1ec967f3c25f7e12e0cf8fb (patch) | |
tree | dde289c6fbe219951ae5618866b33dfcfa3325e4 /source/blender/blenkernel/BKE_image.h | |
parent | 286c34b4abb0436fb370c8d49fd73738dabc0fcf (diff) |
Fix T57457: animated image sequences not working in Eevee.
The dependency graph now handles updating image users to point to the current
frame, and tags images to be refreshed on the GPU. The image editor user is
still updated outside of the dependency graph.
We still do not support multiple image users using a different current frame
in the same image, same as 2.7. This may require adding a GPU image texture
cache to keep memory usage under control. Things like rendering an animation
while the viewport stays fixed at the current frame works though.
Diffstat (limited to 'source/blender/blenkernel/BKE_image.h')
-rw-r--r-- | source/blender/blenkernel/BKE_image.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/source/blender/blenkernel/BKE_image.h b/source/blender/blenkernel/BKE_image.h index ed8dab7aa0d..a6a709c204b 100644 --- a/source/blender/blenkernel/BKE_image.h +++ b/source/blender/blenkernel/BKE_image.h @@ -207,10 +207,13 @@ void BKE_image_verify_viewer_views(const struct RenderData *rd, struct Image *im /* called on frame change or before render */ void BKE_image_user_frame_calc(struct ImageUser *iuser, int cfra); -void BKE_image_user_check_frame_calc(struct ImageUser *iuser, int cfra); int BKE_image_user_frame_get(const struct ImageUser *iuser, int cfra, bool *r_is_in_range); void BKE_image_user_file_path(struct ImageUser *iuser, struct Image *ima, char *path); -void BKE_image_update_frame(const struct Main *bmain, int cfra); +void BKE_image_editors_update_frame(const struct Main *bmain, int cfra); + +/* dependency graph update for image user users */ +bool BKE_image_user_id_has_animation(struct ID *id); +void BKE_image_user_id_eval_animation(struct Depsgraph *depsgrah, struct ID *id); /* sets index offset for multilayer files */ struct RenderPass *BKE_image_multilayer_index(struct RenderResult *rr, struct ImageUser *iuser); |