Citra模拟器本身不支持多窗口渲染,但可通过macOS系统级窗口管理与Vulkan渲染后端协同实现双屏分离:主屏显示控制界面,副屏全屏运行游戏。需满足macOS 12+、OpenGL 4.3+、Nightly版Citra,并正确配置Vulkan后端、禁用硬件着色器、指定副屏全屏及窗口位置锁定。

想在Mac上用双屏体验3DS游戏——主屏显示模拟器界面与控制面板,副屏全屏呈现游戏画面,实现操作区与观景区分离?这需要绕过Citra原生不支持多窗口渲染的限制,通过系统级窗口管理与图形设置协同实现。
确认硬件与系统基础条件
打开“关于本机”,确认运行的是 macOS 12 Monterey 或更高版本;Apple Silicon(M1/M2/M3)芯片机型需已启用 Rosetta 2 兼容层,Intel Mac 则必须为 macOS 10.15 Catalina 及以上。【未满足任一条件将无法启用副屏独立渲染】
检查显卡是否支持 OpenGL 4.3:在终端输入 system_profiler SPDisplaysDataType | grep "OpenGL Version",返回值必须为“4.3”或更高。
安装适配双屏的Citra版本
访问官方 GitHub 发布页(https://github.com/citra-emu/citra/releases),下载标注为 macOS (Intel/Apple Silicon) - Nightly Build 的最新 .dmg 文件——不要选旧版 Stable,Nightly 才包含对多显示器窗口位置记忆的修复补丁。
将 Citra 应用拖入“应用程序”文件夹后,右键→“显示简介”→勾选“使用 Rosetta 打开”(Apple Silicon 用户必做,否则副屏窗口会黑屏或错位)。
配置双屏显示模式
第一步:启动 Citra → 点击顶部菜单栏「Citra」→「Preferences」→「Graphics」→ 将「Renderer backend」设为 Vulkan(OpenGL 在双屏下易出现副屏撕裂或无响应)。
第二步:在「Graphics」页中,关闭「Use hardware shader acceleration」——此选项在双屏 Vulkan 模式下会导致副屏画面冻结,关掉后帧率略降但画面稳定。
第三步:勾选「Enable GPU geometry shaders」并点击「OK」保存,此时 Citra 会自动重启。
第四步:重启后进入「Graphics」→「Fullscreen mode」→ 选择「Display: [你的副屏名称]」→ 勾选「Fullscreen on startup」→ 关闭设置窗口。
强制窗口分离与位置锁定
方法一(推荐):按住 Option 键的同时,将 Citra 主窗口拖拽至副屏区域,松手后立即按下 Command + Control + F 进入副屏独占全屏;此时主屏保留 Citra 的「Emulation」菜单栏和状态栏,可随时调出控制器映射或截图功能。
方法二:若副屏未识别,打开「系统设置」→「显示器」→ 点击「排列」选项卡 → 取消勾选「镜像显示器」→ 拖动白色菜单栏图标到副屏顶部 → 返回 Citra,点击「View」→「Toggle Fullscreen」两次,强制刷新显示目标。
注意:首次启用双屏时,Citra 可能将游戏画面错误投射到主屏。此时不要关闭程序,直接在副屏桌面空白处右键→「调度中心」→ 找到 Citra 全屏窗口缩略图→长按拖入副屏区域释放即可生效。
加载游戏并启用双屏交互
点击「File」→「Load File」→ 选择 .cci 或 .3ds 格式游戏文件(避免使用 .cia,该格式在双屏模式下安装过程会卡死主界面)。
游戏载入后,按 Command + Shift + D 呼出调试窗口 → 在「GPU」标签页中确认「Current display」显示为副屏设备名 → 若显示为「Unknown」,立即关闭游戏,回到「Preferences」→「Graphics」→「Renderer backend」切换回 OpenGL 再切回 Vulkan,重试一次。
此时主屏显示按键映射、帧率统计与快捷按钮,副屏呈现无边框 16:9 游戏画面,触控板或手柄操作实时响应,无需切换焦点。


















