1. A non-transitory machine-readable storage medium carrying one or more sequences of instructions which, when executed by one or more processors, cause the one or more processors to carry out a method of capturing a scene in motion, the method comprising: receiving first time-indexed depth data from a first data capture device comprising a plurality of 3D data capturing modules, the first time-indexed depth data comprising distance measurements from the first data capture device to a plurality of different points on first surfaces of the scene in motion for each of a plurality of times over a period of time; receiving second time-indexed depth data from a second data capture device comprising a plurality of 3D data capturing modules, the second time-indexed depth data comprising distance measurements from the second data capture device to a plurality of different points on second surfaces of the scene in motion for each of the plurality of times over the same period of time; receiving first location data indicating the first data capture device's location during the period of time; receiving second location data indicating the second data capture device's location during the period of time; receiving relative location data indicating how the first data capture device and the second data capture device are located relative to each other during the period of time; generating time-indexed three dimensional (3D) frames, wherein generating the time-indexed 3D frames comprises: determining, for each of the plurality of times, a 3D coordinate in a coordinate system for each of the pluralities of different points on the first and second surfaces of the scene in motion based on the first time-indexed depth data, the second time-indexed depth data, the first location data, the second location data, and the relative location data; and storing, to an electronic memory, the time-indexed 3D frames capturing the scene in motion.