How do I unwrap a model proportionally? I have this revolver model that I want to unwrap using a combination of seams and project from view. I use Texture Atlas to combine all the models into one. 

The problem with this method is that some faces are unwrapped disproportionately bigger than others, and I want each island to be in proportion so that the texel density is equal across the whole model. I don't want to do this by hand. I think this is a useful skill to know.

How do I do this? Is there an addon that can help me with this?
Average Island Scale

For this task I usually take advantage of the Average Island Scale operator available in the UVs menu. I don't know the math behind it, but the effect is to re-proportionate the uv island to the region extension of the real mesh.

Here's a basic example:



And here's an example with Suzanne UVs. I duplicated the same object, so the UV island are at the beginning overlapping, then I ran the command.