What is the best way to create a set of objects that are basically the same, but differ in their (animated) location and their image texture?
It is possible to create a different material for each object, and a different texture with a different image for each material. However, for many objects I would have many very similar materials, which seems inefficient.
Another possibility might be to use one material and one huge texture atlas. However, each single image texture is already quite big in my case, so merging images into an even bigger file might make things hard to deal with.
The specific problem
I am creating a dashboard that will be placed over a movie, similar to augmented reality or a full-screen HUD. To have depth and animations, I use a couple of objects (currently eight) consisting of a one-face mesh each, holding one "layer" of the dashboard. The layers consist of images I prepared in Inkscape/Illustrator.
At the moment all layers have the same size, basically filling the whole screen. So yes there are a lot of empty spaces right now, which I thought helps to have simpler animations.
I am considering trimming those images and creating a texture atlas, if nothing else works better. However, I would like to keep the full-sized, prepared layers, as they might change in the future. And if they change, I don't have to change a UV-map, but only reload source files.
Update: Visual aids
The images contained in those layers about like the following. At the moment always two layers belong together, one holding a foreground (mostly text) and the other a background.
The idea is, that the two layers in the leftmost column are always shown and one pair from another column at a time. Here animation comes in, but that's no problem. For presentation, the layers get stacked like the following.
The effect I ultimately want to achieve is a three-dimensional interface like the following (exaggerated) image on the right side. This compares to a standard orthographic projection on the left.
The issue now is that I expect more layers to come and I want to keep things scalable. How to keep required effort minimal when new layers are added?