UV Mapping Walls

I’ve not yet found a practical way to UV map walls:


All UV-mapping-related tutorials I’ve come across are either the basics with a single quad/cube that stretch it to the image, or of character modelling.

What I want is, given a connected set of walls of varied width and angles but uniform height that wrap around a room in 3D, to have it simply unwrap it horizontally the way you’d expect. There’d need to be only 1 seam at one of the corners, and the 2 ends would then end up at the edges of the texture bounds, so that when you scale the entire thing by integer multiples the walls touching at the seam will also line up.

You could do 1 wall/face at a time and stretch it to the bounds of the texture, but then walls of different widths would have the texture looking stretched/squished. The walls’ relative sizes need to be preserved, and all edges that are horizontal or vertical on the faces when looking straight at them should remain so in the UV map, which thus should not contain a single diagonal line.

I’ve tried every entry of the “U” menu, with and without seams, and none seem to accomplish the above. I’d deem wall texturing to be exceedingly common, so how does one go about it?


Nothing? Let me reiterate: I want to UV map with the following 2 conditions:

  1. Relative sizes are preserved, so that a texture doesn’t look stretched in one face and squished in the next.
  2. Horizontal and vertical angles are preserved - so that quads lined perfectly straight along the axes won’t end up skewed on a diagonal.

These are pretty fundamental. Is there a way?

Apply seams
Select all in edit mode, U / Unwrap
Set the unwrap method to conformal in the toolshelf
In uv image editor Ctrl+A (average islands scale)
In uv image editor window Ctrl+P (pack islands)
Watch some of the UV tutorials at blendercookie.com

Hmm, with a repeated texture would all the panels/units/faces need to be the same approximate width/height to avoid stretching? Or be divided to be equal if the UV was done in one selection, or you would need a UV for each panel. They surely would if you were applying a ‘wallpaper’. Can generated (box?) UVs be used? You don’t mention what kind of surface you’re applying. If it is a simple ‘paint’ texture have you considered using procedural method? http://blendermama.com/blender-uv-and-generated-mapping-in-architectural-visualisation.html Best wishes.

I’m not an expert btw.