“have a material with an exposed
parameter”? And you only create that
material once, right? Not one for
every image.
Once is enough, instanced dynamic materials can be modified during run-time. So you get away with having 1 material and pipe in data modifying it. You can create a texture parameter by holding ‘t’ and left clicking in the graph, then right click that node and convert it to a parameter - the name is important, we’ll use it later to send a texture this material will use:
You will need to give the parameter a default texture value in the details panel; otherwise, it will complain.
you have a “Set” node in-between
One can Get (read from) or Set (write to) variables. In this very case, the DMI (named after Dynamic Material Instance) holds a reference to an instance of a dynamic material we’ve just created. I’m setting this variable to the return value of the Create Dynamic Material Instance node - we need to access this material later on in order to send it a new texture to use. A reference like this allows for it.
An easy way to to create reference of the correct type, is to right click a pin and Promote to Variable:

And is the Images variable of type
“Texture2D, Object Reference” or
“Texture2DArray, Object Reference”?
It’s an array of Texture 2D:

I can’t bring up the Array elements
when trying to create a “Texture2D,
Object Reference” variable. I can only
choose one picture there.
You will need to turn this variable into an array. The first red dot above.
