Why upscaling changes everything
Once upscaling becomes the default, “native resolution” stops being the baseline. You’re now comparing pipelines: reconstruction quality, temporal stability, and the hidden cost of latency. The real question is not “FPS gain”, but “what did we trade to get it”.
Most bad takes come from testing the wrong thing: averages instead of frametimes, short runs instead of sustained play, or static scenes that hide temporal artifacts.
Common trade-offs (and where they show up)
Frametime stability
A big FPS number can still feel worse if frametimes wobble. Watch p95 frametime, spikes during traversal, and stability in high-effects scenes.
Latency & responsiveness
Some pipelines shift latency, especially with additional processing steps. You might “gain FPS” but lose input feel in competitive or fast camera motion.
Artifacts over time
Ghosting, shimmer, texture crawling, UI halos — many issues are temporal. Always test motion: pans, foliage, thin geometry, particle-heavy scenes.
What to measure (so tests match reality)
Upscaling evaluation needs two tracks: performance and perceptual stability. For performance, don’t stop at FPS — collect frametime tails. For quality, use repeatable scenes with high-frequency detail and lots of motion.
- Frametime p95/p99 (not only average FPS).
- Stutter frequency during traversal and asset streaming.
- VRAM pressure (spikes can cause sudden instability).
- Driver stability across updates and game patches.
Quick checklist
Before you compare
Pick 2–3 repeatable scenes (motion-heavy).
Lock camera path or use a consistent route.
Run long enough to capture streaming behavior.
During testing
Track frametime p95/p99 and spike count.
Watch artifacts in motion: shimmer/ghosting/halo.
Repeat after driver update (regressions happen).