I have created a simple road using bezier curve, array and curve modifiers. As you can see on the picture some faces looks weird - a texutre is distorted. Why ? Did I do something wrong ? How to fix that ?
So I hope my answer is accurate enough.
Your faces are projected as squares on the image in the UV Editor. But your faces are actually not squares, they are twisted quads. Also, in any 3D software a face is made of 2 triangles. So when Blender will map this face the UV map it will simply map 2 triangles, and it will give the following result.
If you subdivide your face a bit with some Ctrl R, the same thing will happen, but as your faces are much smaller the effect will be much less visible.