Let S be the boundary of a convex polytope of dimension d + 1, or more generally let S be a convex polyhedral pseudomanifold. We prove that S has a polyhedral nonoverlapping unfolding into Rd , so the metric space S is obtained from a closed (usually nonconvex) polyhedral ball in Rd by identifying pairs of boundary faces isometrically. Our existence proof exploits geodesic flow away from a source point v S, which is the exponential map to S from the tangent space at v. We characterize the cut locus (the closure of the set of points in S with more than one shortest path to v) as a polyhedral complex in terms of Voronoi diagrams on facets. Analyzing infinitesimal expansion of the wavefront consisting of points at constant distance from v on S produces an algorithmic method for constructing Voronoi diagrams in each facet, and hence the unfolding of S. The algorithm, for which we provide pseudocode, solves the discrete geodesic problem. Its main construction generalizes the source unfoldi...