UV unwrapping a donut/torus shape.

On the right is the shape I want to unwrap, and on the left is what I have now.
The intended result is quite close to this but I want it (the uv layout) to be perfectly rectangular.


Select the outer right vertical edgeloop in the uv editor, and press ‘P’ to pin it, and ‘W’ and select ‘align auto’. Repeat for the very left edgeloop. Do another UV-unwrap and the results should look more rectangular. Then repeat the process for the upper and buttom edgeloops, remember to make adjustsments where needed. Another UV-unwrap, and the UV-map should be perfectly rectangular, with some minor distortions inside that you can fix with the same technique (instead of using ‘align auto’ use the 2D cursor pivor point to scale the edgeloops completely to one vertex on either axis to 0) if needed.

I found that if I use “u -> follow active quads” on a torus, I get perfectly rectangular uv coordinates that can then be scaled easily to the desired fit and size.

@Artorp: Thanks, that worked.

@Sanne: Although it looks rectangular, I found it isn’t exactly, and the mesh structure is also messed up.

I have also found a quick solution: Make a plane, unwrap, and shape it into a torus.

Hmm, really? I found it almost perfect. Just to clarify, if I add a torus, go to edit mode, hit u -> follow active quads, I get this:


And scaled uniformly a bit to default grid image:


Mesh structure doesn’t seem meshed up.

Your solution to unwrap a plane first is a good one, though. You can even make a perfectly unwrapped sphere like that using the warp tool (shift-w).

OK, so it was probably because I wasn’t using the mesh primitive to make the torus. I used the spin tool on a circle, so that was probably why it was messed up.

And thanks for reminding me about the warp tool. I almost forgot it after a long break from blendering.

I get a similar good result with using the spin tool on a circle. Did you perhaps forget to remove doubles and recalc normals after spin?

About the warp tool, I also tend to forget it, especially in situations where I would really need it. :wink:

Recalculating normals is what I didn’t do. Thanks!

I also forgot it first - looks veeery weird in textured view.
Glad it’s working for you now!