if you check out the CGAL library, they have code that solves surface parameterization problems. the least squares conformal mapping is pretty nice for creating uv maps.
http://doc.cgal.org/latest/Surface_mesh_parameterization/gro...
http://doc.cgal.org/latest/Surface_mesh_parameterization/Sur...