Staged 即将登陆 Steam! 立即加入心愿单

返回博客
一台显示器中央全屏运行着游戏,旁边的区域里显示着 Discord 语音频道
指南

Discord 游戏内覆盖层全屏不显示?原因与解决方法(不退出全屏也能用)

2024 年起 Discord 覆盖层在独占全屏下不显示属设计使然。设置检查清单、切换无边框及其代价,以及不退出全屏也能看到 Discord 的方法。

SM
Steve Miller
2026年10月28日9 分钟阅读

先说结论: 自 2024 年 4 月 15 日开始推送的 Discord 新版游戏覆盖层,只会显示在无边框窗口(窗口化全屏)或窗口模式运行的游戏之上。在真正的独占全屏下它不工作,Discord 官方支持页面明确写着这一点。你有三条路。(1) 把游戏的显示模式改成无边框;这就是各类教程说的"退出全屏",代价是少量 FPS 和输入延迟。(2) 在 用户设置 → 游戏覆盖 里打开启用旧版覆盖层;那是基于钩子注入的旧方案,已被标记为将来移除,也是崩溃和反作弊摩擦的常见来源。(3) 如果你根本不想退出全屏,就用 Staged 让游戏运行在一块虚拟显示器上,把 Discord 窗口本身放在游戏旁边的一个区域里。这样连覆盖层都不需要了。

如果你搜的是"discord 覆盖层不显示"或"discord 游戏内覆盖 全屏 没反应",你多半处于以下情况之一:玩游戏时 Discord 什么都不显示;收到"游戏时可通过覆盖层使用 Discord"的提示,然后就没了下文;或者你已经受够了每次想看覆盖层都得把游戏从全屏里退出来。本文按最快定位问题的顺序检查各项设置,说明哪些情况属于设计使然,并展示如何保持全屏的同时仍然看到 Discord。让 Discord 一直可见的所有方法,见姊妹文章。

先说原因:2024 年 4 月起,Discord 覆盖层变成了一个独立窗口

Discord 出于稳定性和兼容性考虑重做了游戏覆盖层,从 2024 年 4 月 15 日开始推送(记录在 Discord 支持页面"[Known Issue] Game Overlay")。有四点变化:

  • 覆盖层现在对所有游戏默认启用。
  • 它在窗口模式和无边框(窗口化全屏)下工作,但在真正的全屏下不工作。
  • 只要游戏窗口失去焦点,它就会隐藏。
  • 通话中只共享游戏窗口不会带上覆盖层;共享整个屏幕则会。

旧版覆盖层会把一个名为 discord_hook 的模块加载进游戏进程,在游戏自己的渲染里绘制 Discord 界面。所以它能在独占全屏下显示,但也因此只支持有限的游戏列表、会引发崩溃和卡顿,并且在反作弊面前需要格外小心。新版覆盖层完全不碰游戏:它只是一个置顶窗口。稳定,但只有在 Windows 允许在游戏上方绘制另一个窗口时才会出现,也就是无边框或窗口模式。

取决于你的 Discord 版本,旧方案仍以一个开关的形式存在:用户设置 → 游戏覆盖 → 启用旧版覆盖层。Discord 页面注明"此选项将来可能被移除"。

为什么独占全屏之上什么都画不上去

在 Windows 里,把其他窗口显示在游戏之上的是桌面窗口管理器(DWM)。无边框游戏看起来是全屏,但对 Windows 来说就是一个普通窗口,所以置顶的 Discord 窗口会被画在它上面。而在独占全屏下,游戏拥有显示器,DWM 退到一边。这种状态下没有任何机制能把别的窗口放上去,无论是 Discord、浏览器的画中画小窗还是别的什么。旧版覆盖层能绕过这一点,仅仅是因为它活在游戏自己的渲染路径里。

Windows 11 在 设置 → 系统 → 屏幕 → 显示卡 → 默认设置 下有一个叫窗口游戏优化的开关。它把以窗口或无边框模式运行的 DirectX 10/11 游戏从旧的 blt 呈现模型切换到翻转模型,缩短帧延迟(Microsoft 的描述)。如果你用无边框玩,先把它打开。

"游戏时可通过覆盖层使用 Discord"提示和那个小方框

游戏刚启动时,你可能看到角落闪过一个小矩形,并收到 Discord 的通知,提示你游戏时可以通过覆盖层使用 Discord。这是 Discord 检测到了游戏,并确认该游戏已启用覆盖层。矩形是覆盖层的小组件区域;如果你不在通话中,它会保持空白然后消失。

  • 你想要覆盖层但什么都没出现:确认游戏处于焦点且为无边框模式,然后走下面的清单。
  • 方框和通知很烦:用户设置 → 已注册的游戏,点击该游戏旁边的显示器图标关闭它的覆盖层。要全部关闭,用 用户设置 → 游戏覆盖 顶部的总开关。

设置检查清单:覆盖层不显示时,按这个顺序

  1. 覆盖层总开关。 用户设置(左下角齿轮)→ 游戏覆盖 → 顶部的启用游戏内覆盖(旧版本叫"启用覆盖")。
  2. 按游戏的开关。 用户设置 → 已注册的游戏:你正在玩的游戏旁边的显示器图标必须是开启状态。如果游戏不在列表里,先启动它,再用**添加它!**手动注册。
  3. 游戏的显示模式。 在游戏的图形设置里选择"无边框""窗口化全屏""全屏窗口"或你的游戏使用的类似叫法。这也是 Discord 官方故障排除 FAQ 的第一步。
  4. 焦点。 新版覆盖层在游戏窗口不活动时会隐藏。刚点过浏览器或其他应用时它不会出现。先点一下游戏,再看。
  5. 快捷键。 打开覆盖层及其编辑模式的默认键是 Shift + 反引号(Shift+`)。某些键盘布局或游戏不会把反引号传递过去;在 用户设置 → 游戏覆盖 → 切换覆盖层锁定 里改绑别的键。编辑模式下可以拖动每个小组件,图钉图标决定某个窗口是否在游戏中显示(通知、语音、视频、活动、直播)。如果你把小组件拖出了屏幕,也在这里重置。
  6. 对齐权限级别。 如果游戏以管理员身份运行(反作弊游戏很常见),先完全退出 Discord,用"以管理员身份运行"重新启动它,再启动游戏。权限级别不一致是覆盖层始终不出现在游戏上方的常见原因。
  7. 硬件加速。 用户设置 → 高级(部分版本:外观)→ 关闭硬件加速,重启 Discord。有些机器反而是关掉后出问题;两种都试。
  8. 与其他覆盖层冲突。 MSI Afterburner / RivaTuner、NVIDIA 应用(原 GeForce Experience)的覆盖层、Steam 覆盖层和 Xbox Game Bar 都想在游戏上方绘制内容。逐个关闭,找出罪魁祸首。
  9. 只有消息不显示。 已静音的服务器或私信不会显示通知,开启主播模式时则完全不显示。另外确认 用户设置 → 游戏覆盖 里的消息已启用。
  10. 最后手段:旧版覆盖层。 用户设置 → 游戏覆盖 → 启用旧版覆盖层。它确实能在独占全屏下显示,但会钩入游戏;如果它导致卡顿或崩溃,Discord 自己也建议为该游戏关闭覆盖层。崩溃日志位于 %appdata%\discord\0.0.(最大编号)\modules\discord_hook\hook。
  11. 更新或重装。 Ctrl+R 重新加载 Discord 并应用待安装的更新。若无效,删除 %AppData%\Discord 和 %LocalAppData%\Discord,再用官方安装程序重装。

关于反作弊游戏(VALORANT 等)的说明

VALORANT 的安全软件 Riot Vanguard 包含一个内核模式驱动,Riot 明确表示它可能阻止某些东西在你的电脑上加载。在这类游戏上,注入游戏进程的覆盖层是最糟糕的做法。新版 Discord 覆盖层是一个从不触碰游戏的独立窗口,所以现实的方案是:让游戏运行在等同于无边框的模式下,并让 Discord 与游戏的权限级别一致。如果仍然不显示,与其强行走旧版路线,不如考虑接下来的两个选项。

"退出全屏"指的是切换到无边框,以及它的真实代价

大多数教程说的"退出全屏",就是把游戏的显示模式从独占全屏改成无边框窗口。只是一个设置:游戏内 设置 → 图形(视频)→ 显示模式(屏幕模式、窗口模式)→"无边框""窗口化全屏"或类似选项。有些老游戏用 Alt+Enter 在全屏和窗口之间切换。Windows 11 上再按前文说明打开"窗口游戏优化"。无边框模式的原理见我们的解释文章。

真实代价是:无边框要经过桌面合成器,所以相比独占全屏有少量 FPS 和输入延迟的损失。我们在自己的机器上测 Cyberpunk 2077,窗口化的损耗大约是 10–15 %。GPU 有余量的游戏里你感觉不到;竞技射击游戏里有些人会在意。细节见无边框 vs 全屏。还有一点无边框改变不了:失去焦点就暂停的游戏,仍然会暂停。只有游戏自己的设置("后台运行"之类)能控制这个。

不退出全屏也能看 Discord:虚拟显示器方案

你想要覆盖层的真正原因,是不把视线从游戏移开也能看到 Discord,而不是想在游戏上盖一层半透明界面。如果你想在不退出全屏的前提下做到这一点,Staged 会给游戏一块专属的虚拟显示器,游戏在那里以真正的全屏应用运行,Staged 再把这块显示器作为一个窗口(Game Stage)显示在你的真实屏幕上。Discord 窗口放在旁边的一个区域里,大小随你。Discord 是一个始终可见的普通窗口,所以你既不需要覆盖层,也不需要钩子。

  • 游戏保有自己的显示器,所以点击 Discord 不会让它最小化,也不存在 Alt+Tab。
  • 无游戏钩子、无注入、无反作弊风险:Staged 从不触碰游戏进程。
  • 在我们的机器上实测:Windows 11 上直接硬件扫描输出、零合成器开销,舞台显示与游戏相同的那一帧(亚帧延迟),处理开销低于 0.2 ms。在游戏以低于面板分辨率渲染的 GPU 受限 A/B 测试中,我们测得最高 2 倍 FPS。详情见实验室页面。
  • 坦白说明限制:虚拟显示器解决的是最小化和焦点被抢的问题。失去焦点就暂停的引擎,在你改掉游戏自身设置之前仍会暂停。Staged 是在 Steam 上销售的付费应用。

设置只有四步:安装 Staged,创建一个 Game Stage 区域,添加一个 Discord 区域并分配给它,从 Staged 启动游戏。把布局保存为配置文件,一个快捷键就能调回来。

如果你真的想退出的是 Discord 自己的全屏

有时"discord 退出全屏"说的是 Discord 自己的窗口,不是游戏。当你全屏观看朋友的 Go Live 直播或屏幕共享时,按 Esc,或再点一次视频上的全屏按钮即可。Discord 主窗口是一个普通的最大化窗口,标题栏按钮就能还原。

常见问题

为什么 Discord 覆盖层在我的全屏游戏里不显示?

因为 2024 年 4 月起推送的游戏覆盖层是作为一个独立窗口运行在游戏之上的,所以只在窗口模式和无边框(窗口化全屏)下工作。独占全屏下游戏拥有显示器,上面什么都画不了。Discord 在其"[Known Issue] Game Overlay"页面记录了这一点。

能不退出全屏就使用 Discord 覆盖层吗?

在 Discord 这边,唯一的路是 用户设置 → 游戏覆盖 → 启用旧版覆盖层,它会钩入游戏,稳定性更差,并且已被标记为将来移除。如果你想保持全屏又看到 Discord,就用 Staged 让游戏运行在虚拟显示器上,把 Discord 窗口放在旁边的区域里。那样就不需要覆盖层了。

"游戏时可通过覆盖层使用 Discord"这个通知是什么?

是 Discord 告诉你它检测到了游戏,并且该游戏已启用覆盖层。启动后闪过的小矩形是覆盖层的小组件区域。如果不想要,在 用户设置 → 已注册的游戏 里关掉该游戏的显示器图标,或者整体关闭游戏覆盖。

需要以管理员身份运行 Discord 吗?

只有当游戏本身以管理员身份运行时才需要,这在反作弊游戏里很常见。这时也以管理员身份启动 Discord,让两者处于同一权限级别。两者都正常运行的话就不需要。

按 Shift + 反引号没反应,怎么打开覆盖层?

在 用户设置 → 游戏覆盖 → 切换覆盖层锁定 里改绑按键;有些键盘布局和游戏不会传递反引号。另外记住,新版覆盖层只在游戏窗口处于活动状态时显示,所以先点一下游戏。

硬件加速应该开还是关?

没有统一答案。在 用户设置 → 高级(部分版本:外观)→ 硬件加速 里切换,重启 Discord,保留能让覆盖层出现的那个设置。更新 GPU 驱动能解决部分情况。

无边框模式会掉多少 FPS?

取决于游戏和你的 GPU 余量,但相比独占全屏会有少量 FPS 和输入延迟的损失。我们在自己的机器上测 Cyberpunk 2077,窗口化的损耗大约是 10–15 %。Windows 11 的"窗口游戏优化"能缩小 DirectX 10/11 游戏上的这个差距。

保持全屏,把 Discord 放在旁边

游戏用独占全屏,Discord 用普通窗口。Staged 让游戏运行在虚拟显示器上,并在同一块显示器上把 Discord 放在游戏旁边,你再也不用和覆盖层设置较劲。下载 Staged,也看看 Steam 页面。

参考资料

相关文章

相关文章