Well i have to this day devised five ways to do it. But i think copying a edege and doing a animated sweep of it and then animate the snapshot node is the way to go.
Heres a simple example:
CODE
//shorthand notation for trasfeering basically a file
//copy to script editor and execute
//NOTE: clears your current scene.
file -f -new;
polyCube -w 12 -h 1 -d 1 -sx 1 -sy 1 -sz 1 -ax 0 1 0 -cuv 4 -ch 1;
move -r -6 0 0;
move 0 0 0 pCube1.scalePivot pCube1.rotatePivot;
rotate -r -os 45 0 0;
makeIdentity -apply true -t 1 -r 1 -s 1 -n 0;
delete -ch;
currentTime 0;
setKeyframe -breakdown 0 |pCube1.rotate;
currentTime 24;
rotate -r -os 0 0 -90;
setKeyframe -breakdown 0 |pCube1.rotate;
duplicateCurve -ch 1 -rn 0 -local 0 "pCube1.e[0]";
animSweep 0 15 0 1 1 3 1 0 0;
expression -s "snapshot1.startTime=frame-15;snapshot1.endTime=frame";
setAttr "loft1.degree" 1;
setAttr "duplicatedCurve1.visibility" 0;
setAttr "snapshot1Group.visibility" 0;
This said generating a right shaped proxy might be hard so you CAN let the renderer do it,