Extend Texture Instead of Stretching when Object is Scaled

I’m trying to make a reusable 2D ladder, and I want the texture applied to it to extend rather than stretch when the object is scaled vertically. The only way I’ve figured out so far is to use global coordinate mapping, but this causes the texture to get messed up when the object is translated or rotated.

Can someone give me some pointers. I’m pretty noobish when it comes to working with textures :o.


I still could use some help with this. If anyone has any tips, I’d greatly appreciate your post.

Only way I can think of is to alter the UVs of the vertices with Python depending on the value you scale by. Otherwise, I don’t think it’s possible. You might also be able to use nodes to do it, but I’m not sure if you can get object scale as a node input.

You can use the mapping node inside the material node editor to rotate the direction in which the limited global coordinates support works, this will allow you to use it with different orientations.