资讯动态

PC游戏分屏:用 Universal Split Screen 实现本地多人的完整指南

发布时间:2026/8/22 10:39:13 来源:尧图企业网站定制
PC游戏分屏用 Universal Split Screen 实现本地多人的完整指南【免费下载链接】UniversalSplitScreenSplit screen multiplayer for any game with multiple keyboards, mice and controllers.项目地址: https://gitcode.com/gh_mirrors/un/UniversalSplitScreenUniversal Split Screen 是一个开源工具让任意 Windows 游戏都具备 PC 游戏分屏的本地多人能力它把同一款游戏的多个副本自动排成左右、上下或四宫格并为每个副本绑定独立的键盘、鼠标或手柄。无论游戏官方是否支持多人你和朋友都能在同一台电脑上共用一套输入设备同时游玩。下文带你走完了解、安装、上手、进阶与排障的完整流程。一分钟看懂它能做什么它解决的核心问题只有一个PC 游戏大多没有主机游戏那种同屏双人。做法是把窗口拆开、把输入分开——每个玩家拿到一块独立画面和一套独立键鼠/手柄互相不干扰。对比项Universal Split Screen手动开窗口同屏玩家数24 人自动布局自己拖窗口输入仍共用输入设备多键盘、多鼠标、多手柄共用一套键盘鼠标轮流操作输入冲突按设备重定向互不串键按键全进当前焦点窗口游戏限制部分游戏需解锁单实例锁多数游戏只允许开一个窗口从获取到跑通的快速上手 先拿到源码git clone https://gitcode.com/gh_mirrors/un/UniversalSplitScreen然后按顺序执行用 Visual Studio 打开UniversalSplitScreen.sln选择 Batch build 一次编译所有项目README 中说明各项目有不同架构要求主程序UniversalSplitScreen编译 x86SourceEngineUnlocker编译 x86InjectorLoader、HooksCPP、StartupHook需同时编译 x86 与 x64。确认产物已复制到主程序目录SourceEngineUnlocker.dll、IJx86.exe/IJx64.exe、HooksCPP32.dll/HooksCPP64.dll、StartupHook32.dll/StartupHook64.dll各项目构建后会自动改名复制。运行主程序用鼠标点击已打开的游戏窗口完成绑定再点启动分屏即可。支持范围一览哪些游戏、哪些设备 输入设备方面可同时接入多个键盘、多个鼠标、多个手柄4 个以上手柄需开启 DirectInput 转译钩子。游戏本体支持 x86 与 x64 两种架构32 位与 64 位游戏均可。 项目UniversalSplitScreen/Config/目录预置了 13 个经过调优的游戏配置覆盖常见类型沙盒建造我的世界Minecraft 1.14.3.json、泰拉瑞亚生存经营星露谷物语、异星工厂、饥荒联机版动作射击无主之地 2、核 Throne策略模拟监狱建筑师引擎级支持Source 引擎与 GoldSrc 引擎游戏各含独立配置理论上任何能开两个窗口的 Windows 游戏都能适配复制一份现有配置改名再按排障经验微调勾选即可。原理通俗版输入是怎么被分开的把整套流程想象成一座公寓楼的收发室。楼上住着四个住户四份游戏窗口每个住户只认自己门口的那套信箱。收发室收到一封信件你的按键或鼠标移动看地址后投递到对应住户住户本人感觉不到有任何中转。第一层是窗口管理程序把两份或四份游戏窗口移动到屏幕的左/右、上/下或四角位置并同步调整尺寸就像把一块白板划成四格。第二层是输入重定向主程序通过 Windows 的 Raw Input 机制直接读取输入设备原始信号的接口监听到某只键盘、某只鼠标的动作再按你预先的绑定关系把这条输入转给对应的游戏窗口。第三层是进程注入简单说就是往游戏进程正在运行的游戏程序实例里放进一个小的辅助模块HooksCPP.dll。它会拦截游戏内部的几个关键查询——现在谁是前台窗口鼠标在哪哪个键被按着——并按每个玩家各自的视角回答于是每个玩家都感觉游戏完全归自己控制。从基础到进阶关键配置参数每个配置就是一个 JSON 文件保存在程序同目录的config文件夹中字段对应UniversalSplitScreen/Core/OptionsStructure.cs。常用项输入发送方式SendNormalKeyboardInput/SendNormalMouseInput走系统常规通道SendRawKeyboardInput/SendRawMouseInput走原始输入适合对延迟敏感的游戏。查询拦截开关Hook_GetForegroundWindow、Hook_GetCursorPos、Hook_SetCursorPos、Hook_GetAsyncKeyState解决游戏查到自己不在前台就不响应输入的问题。手柄支持Hook_XInputXbox 手柄必需、Hook_DInput超过 4 个手柄时配合使用。焦点维持SendWM_ACTIVATE/SendWM_SETFOCUS周期性发送激活消息WM 消息是 Windows 窗口之间传递的系统级通知防止窗口失焦后游戏停摆。鼠标呈现DrawMouse在每块分屏上画一个独立光标SystemMouseToMiddle可把系统光标移到屏幕中央避免个别游戏如 RimWorld光标卡在左上角。单实例解锁AutofillHandleName填引擎互斥锁名称如 Source 引擎的hl2_singleton_mutex。EndVKey结束分屏模式的快捷键默认 End 键LeftOffset/TopOffset/ExtraHeight用于微调窗口偏移。专业提示改配置前先复制一份现有配置再修改方便回退。对画面要求高的游戏建议先用窗口模式跑通双人流程确认输入没有串键再切到无边框全屏。分屏不生效的排查思路现象可能原因解决办法弹出注入错误 0xC0009898游戏位数判断错误注入了不匹配的注入器确认游戏是 32 位还是 64 位重新注入手柄操作无效未启用 XInput 钩子勾选Hook_XInput后重启分屏第 5 个及以后的手柄无效缺少 DirectInput 转译同时启用Hook_DInput与Hook_XInputSource 系游戏开不了第二份引擎互斥锁阻止多实例使用解锁功能或设置AutofillHandleName鼠标位置漂移、视角跳游戏查询光标位置未被拦截启用Hook_GetCursorPos与Hook_SetCursorPos点一下其他窗口后游戏就停焦点丢失后无输入启用SendWM_ACTIVATE或SendWM_SETFOCUS许可证与社区参与许可证MIT可自由使用、修改与分发。提交问题报告附上游戏名称、配置内容与复现步骤帮助定位兼容性。贡献配置为新游戏在UniversalSplitScreen/Config/下编写并分享 JSON 配置。提交代码改进输入重定向、窗口布局或注入逻辑均可。Universal Split Screen 把同屏多人从主机独占变回 PC 玩家的日常选项配置化的输入重定向让它对绝大多数游戏通用。如果你手边正好有两套键鼠或几个手柄打开仓库编译一份今晚就能和同屏的人打一局。【免费下载链接】UniversalSplitScreenSplit screen multiplayer for any game with multiple keyboards, mice and controllers.项目地址: https://gitcode.com/gh_mirrors/un/UniversalSplitScreen创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价