Creative Applications has a writeup of Robb Godshaw's process for using Rhino with Neon raytracing and T-Splines for freeform surfaces to more or less eyeball brute-reverse the Mac Photobooth warp filters as lenses (and some sunglasses), then fabbing on the photosensitive-resin-medium printer Objet Connex 500 (fed with VeroClear) or on a 3-axis CNC mill (the preferred, albeit more limiting route).
Check the video for a quick breakdown of the process and some of the objects produced in the workflow, or click through to the Instructable for the finer points and deep cuts like this introduction to Hamiltonian Optics.
Robb mentions using this process to create a custom projection lens for his Lunar Persistence Apparatus robotic projector ... intriguing for lower-resolution applications of projection-as-lighting rather than high-resolution digital imagery.