Random shader attribute make random to arrays and instances.
It would be cool to have a way to easily create random variation in colors with modifier or instance-on-empty workflow, because apply array just to have random color is a destructive workflow.
4 Comments
this is already done in a GSOC branch. devtalk.blender.org/t/improve-cycles-eevee-for-procedural-content-creation/7186
Wouldn't we need an option in the Array Modifer that alloewd us to treat the Objects Separately??
There's a Random per Island inside Geometry now that handles this. :)
You CAN do it in Eevee and Cycles using collection instances with random node applied to the material of the collection object like so: Array a collection instance (an empty object): make an empty a child of a plane, set plane to Object Properties>Instancing>Faces. This allows an empty to appear in each array of the plane. In that same area you can turn off display and render of instancer so it will hide the plane. Add an Array modifier to the plane. Set the empty to show the collection you wish (Object Properties>Instancing>Collection). The random material node will be correctly applied across arrays of instances in Eevee and Cycles. To create a collection, select an object(s) in Outliner window, press "M". You can create a new collection or add to an existing one.