I have made a road out of a plane and used the array modifier, so the road follow a path.

What I would like to do is to change the road texture on some of the planes, so the road don't look so repeated. Some talk about the modifier UV Project but I don't understand how that is going to help me changing the textures on some of the planes.

Please help

enter image description here


The blender native array modifier unfortunately does not allow for different materials per array object, therefore to get the effect that you want there are only 3 ways:

Option 1:

Apply the array modifier and separate the resulting object by lose parts in mesh options and apply separate materials. This will obviously mean you also have to apply the curve modifier and place it where you want it first, etc

Option 2:

The UVProject modifier will allow you to uv project a picture to the entire object from an projector object (like an empty). In this case you would have to have one road texture that has all the variations in it already and project it using the UVProject modifier onto the array object. However this means that you cant add random variations automatically, and you have to plan the texture ahead of time to the length of the entire road object.

Option 3:

Use the Advanced Array Modifier build: https://developer.blender.org/T26662

(Option 4)

(I do not have an Animation Nodes build available to me for testing right now so take this with a grain of salt, but i am pretty certain that you could offset a texture/material per object segment with Animation Nodes)


You may want to try mixing other image textures using object coordinates from other object(s):

Similar to UV Project, it projects towards the local Z axis of the object chosen (the empty object here in the attached case).

enter image description here

(While this is the Cycles solution, it also works with BI based on similar concept, but different setup.)


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.