← 博客

着色器缓存怎么清除 (2026):驱动更新后游戏卡顿、每次都编译着色器,按 Windows、N卡、A卡顺序处理

《现代战争4》中,戴着头盔和护目镜的士兵持步枪贴墙而立,身后夜晚街道上的建筑被烈火吞没,火星四处飞舞
图片来源: © Activision · Call of Duty: Modern Warfare 4 official Steam screenshot
核心摘要
  • 着色器缓存是游戏针对你的显卡和驱动提前生成的图形代码。清除后下次启动会重新生成,所以清完后的第一局稍微更卡一点是正常现象。
  • 要清的位置有三处:Windows 的 DirectX 着色器缓存、NVIDIA 控制面板的着色器缓存大小和缓存文件夹、AMD Software 的重置着色器缓存。只处理自己显卡对应的那一边即可。
  • 像使命召唤这样在游戏内做着色器预加载的作品,先把预加载等完。官方说明离开主菜单会中断预加载,并可能导致性能问题。

刚更新完显卡驱动,昨天还很流畅的游戏突然隔几秒就顿一下;或者每次打开游戏,都要重新看一遍“正在编译着色器”的进度条。这时候最常听到的建议就是“清一下着色器缓存”。可不少人清完之后发现第一局反而更卡,以为自己弄坏了什么。

本文以 2026 年 11 月 10 日的情况为准,按顺序讲清楚着色器缓存是什么、什么时候该清、Windows、N卡、A卡分别怎么清,以及为什么游戏内的着色器预加载值得耐心等完。这种情况在现代战争4这类首次启动和大更新后要提前准备着色器的游戏里,以及红色沙漠这种开放世界大作里尤其常见,因为第一次跑图时新画面会接连出现。先说清楚一点:清缓存并不会提高平均帧数,它的作用是清掉损坏或过期的缓存,减少反复编译和瞬间掉帧。

按症状先做什么

症状可能原因先做什么
只有驱动更新后的第一局卡游戏正在按新驱动重新生成着色器先别清,再玩两三局再判断。
每次启动都从零开始编译着色器缓存没有保存下来或已损坏清除 Windows 的 DirectX 着色器缓存和显卡缓存,然后重启。
连续几天都在同一位置顿卡缓存过期或损坏清除显卡那边的缓存,再把同一位置跑两遍对比。
预加载没跑完就进的那局卡预编译没有完成在主菜单等进度条走满。
把N卡着色器缓存大小设为禁用后更卡了缓存存不下来,每次都重新编译把着色器缓存大小改回驱动程序默认值。
游戏本身流畅,只有录屏视频卡录制编码设置问题按游戏录制卡顿解决方法的顺序检查录制设置。

清之前先搞懂:缓存是干什么的,清掉会发生什么

着色器是让显卡画出光照、阴影、水面、烟雾等效果的小程序。使用 DirectX 12 或 Vulkan 的新游戏,需要把着色器按你的显卡型号和驱动版本转换(编译)一遍,再把结果存到硬盘上,下次直接复用。这份存下来的数据就是着色器缓存。

游戏第一次遇到没有缓存的画面时,会当场编译,画面就会顿一下,这就是常说的着色器编译卡顿。更新驱动或者游戏打了大补丁之后,旧缓存对不上了,就会重新编译,所以更新后卡顿和编译画面会扎堆出现。这是正常现象,不是故障。

真正需要清缓存的是另外几种情况:更新后玩了好几天,同一个位置还是一直卡;每次启动都从零开始编译;或者出现贴图错乱、画面闪烁,像是缓存损坏。这时清空缓存,下次启动会重新干净地生成。但清完后的第一次启动和第一局要把所有着色器重新做一遍,耗时更长,也可能比平时更卡。所以判断效果要看第二局、第三局,而不是第一局。同一段路再跑一次卡顿变少了,就说明有效;没变化,原因就在缓存之外。

清理着色器缓存的步骤

  1. 1先等游戏内着色器预加载跑完像近几年的使命召唤这样,游戏内自带着色器预加载(预编译)的作品,先从这里确认。这一步是首次启动的重要环节,离开主菜单就会暂停,没跑完就进对局可能导致性能下降。现代战争4在大更新后会再跑一次,中途打断下次启动也能接着进行。从 2026 年 10 月 21 日起,在 Windows 11(24H2 及以上)且显卡受支持(如 NVIDIA RTX、AMD RDNA 系列)的电脑上通过 Microsoft Store 或 Xbox PC 应用安装的版本,还能借助 Advanced Shader Delivery 直接下载预编译好的着色器,生效时启动画面左下角会显示“Precompiled shaders installed”。先把显卡驱动更新到最新;如果没看到这行字,就等主菜单的进度条走满再进对局。
  2. 2删除 Windows 的 DirectX 着色器缓存Windows 11 打开“设置”>“系统”>“存储”>“临时文件”,在列表里只勾选“DirectX 着色器缓存”,点“删除文件”。也可以用磁盘清理:在开始菜单搜索“磁盘清理”,选 C 盘,勾选同名项目后删除。其他不需要的项目取消勾选即可。存档和游戏设置不在这一项里。
  3. 3N卡:检查着色器缓存大小并清空缓存文件夹打开 NVIDIA 控制面板,进入“管理 3D 设置”>“全局设置”,找到“着色器缓存大小”。如果之前照着优化教程把它设成了“禁用”,这本身就可能导致反复编译,改回“驱动程序默认值”。想彻底清空,可以先暂时设为“禁用”并重启,然后在文件资源管理器地址栏输入 %LOCALAPPDATA%\NVIDIA,删除 DXCache 和 GLCache 文件夹里的文件。较新的驱动还会在 AppData\LocalLow\NVIDIA\PerDriverVersion 下存放缓存,也一起检查。删完后一定要改回“驱动程序默认值”,再重启一次。控制面板里的其他选项见NVIDIA 控制面板游戏设置。
  4. 4A卡:执行重置着色器缓存打开 AMD Software: Adrenalin Edition,在“游戏”选项卡的“显卡”里展开高级设置,可以看到“重置着色器缓存”。点“执行重置”,驱动保存的着色器缓存就会被清除。不同版本菜单位置略有差别,找不到的话在 AMD Software 的搜索框里输入“着色器缓存”。这个按钮只清驱动那一层的缓存,Windows 的 DirectX 着色器缓存要按前面的步骤另外删除。
  5. 5重启后让首次启动把编译跑完重启电脑再打开游戏,因为要从零重建所有着色器,编译画面会比平时更久。不要切出窗口,也不要马上进对局,等它跑完。Steam 上使用 Vulkan 或 OpenGL 的游戏,在 Steam 设置里保持开启“着色器预缓存”,可以下载预先编译好的着色器,缩短首次启动时间。
  6. 6同一段跑两遍再对比原来卡的地点或地图,第一遍先正常跑过去生成缓存,第二遍按同样路线再跑一次再看效果。第一遍正在生成新缓存,不适合拿来比较。想看数字的话,按游戏里怎么显示帧数把帧数显示打开。重点不是平均帧数变没变,而是突然掉帧的次数有没有减少。

清完后确认这几项

  • 游戏内的着色器预加载或编译进度已经走满。
  • N卡的着色器缓存大小是“驱动程序默认值”,不是“禁用”。
  • 对比的是清除后的第二局及以后,而不是第一局。
  • 对比时地点、画质设置、后台程序都保持一致。
  • 清完后如果每次启动还是重新编译,已经检查过 C 盘剩余空间。
如果清完缓存还是卡,任务管理器里磁盘占用一直很高,或者内存的已提交接近上限,原因可能不在着色器而在内存。玩大作时怎么看内存和页面文件余量,可以参考游戏虚拟内存怎么设置。另外,C 盘快满的时候,新缓存可能没地方存,导致每次都重新编译,记得先腾出一些空间。

用前后录像确认卡顿是否真的减少

着色器卡顿只有一瞬间,光凭“感觉好一点了”很难下结论。清缓存之前先把会卡的那一段录一遍,清理后在第二局把同一段再录一遍,两段放在一起看,差别一目了然。DOR 是一款免费的 Windows 游戏录屏软件,启动支持的游戏后会自动识别,录下整局或从启动到退出的整段游玩,录好的视频都集中在软件的“我的剪辑”里。

现代战争4会分别识别战役和多人模式,录下整段游玩。只需在软件里把要对比的片段按 16:9、9:16、1:1 裁剪保存,再到 DOR 工作室(dor.gg/studio)把两段拼在一起导出 mp4,或者用 dor.gg 链接分享,去贴吧或 B 站评论区求助时也能直接给人看。

在 RTX 系列等支持的 NVIDIA 显卡上,DOR 会用 NVENC 硬件编码录制。怎么让两次录制条件保持一致,可以参照换外设前后录像对比的方法。

启动游戏即自动录制的 游戏录制软件 →

FAQ

常见问题

清除着色器缓存能提高帧数吗?

不能提高平均帧数。它清掉的是损坏或过期的缓存,减少反复编译和瞬间卡顿。清完后的第一局因为要重建着色器,反而可能更卡,效果要从第二局开始看。

N卡着色器缓存大小设多少合适?

没有特殊原因就保持“驱动程序默认值”。设成“禁用”会导致缓存存不下来,每次都重新编译,卡顿可能更多。除非硬盘空间确实不够,否则没必要特意调小。

着色器预加载太久了,能跳过吗?

可以跳过,但没跑完就进的对局可能会卡。使命召唤的预加载中途停下后下次会接着跑,赶时间的话可以先停掉,之后在主菜单再等它跑完。驱动或游戏刚更新后再跑一次是正常的。

Games

相关游戏指南

继续阅读

相关文章

立即开始使用 DOR

只要打开游戏,DOR 就会自动录制,精彩瞬间一个都不会错过