1. A method, comprising: generating, based on a geometric model, a sequence of video frames; determining, based on a depth buffer associated with the geometric model, a velocity map comprising a plurality of velocity values for each pixel, each velocity value representing a difference between a viewport position of a pixel in a current frame and a previous frame, wherein the viewport position of the pixel is calculated using a pixel depth value stored in the depth buffer; determining, based on the velocity map, a plurality of motion vectors, each motion vector corresponding to a macroblock comprising one or more pixels of a video frame of the sequence of video frames; and producing, by a processing device, an output bit stream representative of the sequence of video frames, by encoding, using the motion vectors, the sequence of video frames.