I have something like a slideshow I'm working on (essentially a shadow box that flips through images), and I can't find an easy way to change the image on a plane.

The two solutions I can think of are:

  1. Copy paste the image plane for every image, create a new material for every image, and show/hide each plane throughout the animation. Seems like a lot of redundancy.

  2. Copy paste the image shader for ever image and create a vast network of mix shaders to move from one to the next. This seems also like a lot of redundancy and huge ugly node graph.

What I wish I could do is change the image chosen for my Image Texture as a keyframe, but unfortunately insert keyframe does not work for the image path option.

So how can I do this? Is there any way to do it that doesn't include a ton of redundancy?

Image for clarity: enter image description here


You name all the images you want as a sequence, for example: image0001.png, image0002.png and so on. You can do this by importing them in Blender VSE and exporting all of them as pngs or you can do this using imagemagick.

enter image description here enter image description here

Then in the shader, you import the first image.

enter image description here

You change the value from single image to image sequence and set the number of frames to your total number of images.

enter image description here

Now the image sequencer will play all the frames from frame 1 automatically. If you want total control, set the start frame so that the last image of the sequence is the first image in the sequencer.

enter image description here

Now you can keyframe the offset value and change it however you want. You can hold on a frame or let it run as a sequence.

  • $\begingroup$ Please add images directly into your post, not as external links. See: meta.stackexchange.com/questions/75491/… $\endgroup$ – Ray Mairlot Sep 17 '17 at 9:25
  • 1
    $\begingroup$ I can't add more than 5 images as my account is new. $\endgroup$ – jugaadanimation Sep 17 '17 at 9:40
  • 2
    $\begingroup$ Add in as many as you can, put a link to the rest and I'll add them in. $\endgroup$ – Ray Mairlot Sep 17 '17 at 10:55
  • $\begingroup$ Nice Answer :) This part is not very clear, can you please edit a little, Thanks $\endgroup$ – Blender For You Sep 17 '17 at 14:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.