Sonic Generations and the Hardware Configuration Lock
Internal developer comments (leaked 2018 Sonic RT archive) indicate the check was designed to prevent from swapped GPUs (e.g., laptop docking/undocking while the game runs). The hedgehog engine’s shader permutation cache was tied to specific GPU feature levels (vs_3_0 vs vs_4_0). A sudden change mid-session could crash. However, the check was over-aggressively applied at every launch , not only on resume from sleep or GPU hotplug.