Where DLSS actually gets its information

Temporal accumulation

The scene is rendered at a fraction of the output resolution — but with the sampling grid nudged by a fraction of a pixel every frame, and the results accumulated. Over time, different frames sample different points inside the same output pixel. The missing information does not come from nowhere: it comes from previous frames.

Reference · reconstruction · difference
Reference
Reconstruction
Difference ×4

The inset magnifies the picket fence, which is the hardest thing in the scene: its bars are about one output pixel wide, so at quarter resolution they fall between samples entirely.

Reconstruction method build it up one piece at a time

Controls
1/3
0.10
0.8 px/frame
1.6 px/frame
Pixels shaded / frame
Pixels displayed
Shading saved
Effective samples / pixel
PSNR vs reference

This is the answer to the data processing inequality. A single low-resolution frame genuinely does not contain the high-resolution image, and no amount of processing will extract it. But a sequence of low-resolution frames, each sampling the scene at slightly different points, collectively does. Accumulating sixteen quarter-resolution frames gathers as many samples as one full-resolution frame — the information was always there, spread across time instead of across space.

Motion vectors are what make it work. Blending the previous frame into the current one is only valid if the two describe the same thing. Once the camera pans, output pixel (x,y) is looking at different geometry than it was last frame, and blending them smears the image — mode 3. A motion vector says where each piece of the scene was in the previous frame, so the history can be re-aimed before it is blended. Watch the moving disc in mode 3 versus mode 4: the trailing smear is called ghosting, and it is the single most visible artefact of temporal upscaling.

So where does the neural network come in? Everything above is classical temporal anti-aliasing and needs no learning at all. What DLSS learns is the hard part: deciding how much to trust the history at each pixel. When something is newly revealed from behind an object, or a specular highlight moves, or a motion vector is simply wrong, the history is invalid and must be rejected — and rejecting too eagerly loses the sharpness the whole scheme exists to gain. That trade-off is what a network trained on enormous quantities of rendered footage estimates better than a hand-written heuristic.