尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

1台电脑4个玩家:Universal Split Screen 免费开源PC游戏分屏上手

1台电脑4个玩家:Universal Split Screen 免费开源PC游戏分屏上手 1台电脑4个玩家Universal Split Screen 免费开源PC游戏分屏上手【免费下载链接】UniversalSplitScreenSplit screen multiplayer for any game with multiple keyboards, mice and controllers.项目地址: https://gitcode.com/gh_mirrors/un/UniversalSplitScreenUniversal Split Screen 是一款免费开源的 PC 游戏分屏工具把只支持单人的 PC 游戏改造成多人同屏的本地多人体验多套键盘、鼠标和手柄可以同时接入一台电脑。它不用你多买一台主机也不用加任何付费硬件编译好就能用。一图看懂这个免费开源分屏工具能干什么不逐条念功能直接看它对玩家的意义能力对玩家意味着什么识别多套输入设备两人的键鼠各干各的互不串键把画面切分成多块两人或四人共享一屏各自独立视角预置主流游戏配置Minecraft、Terraria 等选一下就能用手柄与键盘混接一人拿手柄、一人用键鼠不用重绑免费、代码公开自己编译、自己改参数无费用从拉取代码到跑起第一局编译与配置三步第一步把仓库拉到本地git clone https://gitcode.com/gh_mirrors/un/UniversalSplitScreen第二步用 Visual Studio 打开 UniversalSplitScreen.sln按依赖顺序编译主程序 UniversalSplitScreen只编 x86输入钩子 HooksCPPx86 与 x64 各编一遍得到 HooksCPP32.dll 和 HooksCPP64.dll注入器 InjectorLoaderx86 与 x64得到 IJx86.exe 和 IJx64.exe启动钩子 StartupHookx86 与 x64得到 StartupHook32.dll 和 StartupHook64.dll。构建后步骤会自动把产物改名并拷进主程序目录Source Engine 游戏另需 x86 的 SourceEngineUnlocker。第三步载入预置配置。预置配置放在 Config/ 目录Minecraft、Terraria、Source Engine 等游戏都有现成 JSON启动主程序后在下拉框选中即可。它凭什么做到三块机制三分钟看懂机制部分不贴代码只说结论。输入分离手柄键盘混用时各认各的窗口原始输入模块RawInput/ 目录在设备被系统首次上报时记下它的身份。之后每次按键、每次移动程序都清楚它属于哪套设备只转发给对应窗口。你按 W不会替朋友的角色挪一步。进程注入钩子不改游戏只改它读到的结果注入器会把一个很小的 DLL 送进游戏进程这一步由 HooksCPP 和 StartupHook 完成。DLL 落地后拦截游戏常调用的查询比如前台窗口是哪个鼠标现在在哪并返回被服务玩家对应的答案。游戏以为自己还是正常单人局。窗口布局切好屏幕并锁住位置窗口管理把游戏窗口挪到指定位置、切成目标尺寸还能关边框、锁位置防止游戏自己跳回全屏。每个玩家的画面固定在自己那块区域里。给《我的世界》配上分屏一份精简 JSON 配置Minecraft 适合当例子原版只认一个玩家画面里只有一个视角。仓库带了 1.14.3 的预置配置关键字段如下{ OptionsName: Minecraft 1.14.3, SendNormalMouseInput: true, SendNormalKeyboardInput: true, SendScrollwheel: true, SendWM_ACTIVATE: true, Hook_GetForegroundWindow: true, Hook_GetCursorPos: true, Hook_SetCursorPos: true, Hook_GetAsyncKeyState: true, Hook_XInput: false, DrawMouse: true, Hook_UseLegacyInput: true, EndVKey: 35 }字段含义SendNormalMouseInput / SendNormalKeyboardInput走标准消息通道转发鼠标和键盘通常开着Hook_GetForegroundWindow / Hook_GetCursorPos拦截游戏对当前窗口和鼠标位置的查询DrawMouse在窗口上画指针每个玩家看得到自己指着哪EndVKey键盘键码上界决定键盘如何在多玩家间切分选中这份配置后把已运行的 Minecraft 窗口纳入管理按玩家数切分屏幕第二块视角就出来了。多人同屏更顺滑的调优清单手柄与键盘混用时打开配置里的 Hook_XInput并按玩家分别设置控制器序号键鼠尽量插在不同 USB 口确认没被其他输入类软件占用多显示器布局用扩展模式把窗口拖到副屏边缘同屏玩法留在主屏降低输入延迟关掉 Windows 游戏模式和第三方覆盖层帧数吃紧先降游戏内画质再考虑减少同屏窗口数主程序保持 x86钩子 DLL 按游戏进程的 32/64 位配对踩坑速查现象、原因、处理办法现象常见原因处理办法新插键鼠不出现在列表驱动没就绪或被其他程序占用重插 USB关掉占用程序后刷新识别分屏后明显掉帧多窗口同分辨率渲染压力叠加先降游戏画质再减少同屏窗口数配置不生效JSON 不在配置目录或保存后没重新载入确认文件在 Config/ 目录重启主程序重选两人的鼠标一起动输入没分离走了同一个通道检查输入分离开关确认硬件各自独立社区与后续欢迎提交 Issue 反馈问题、用 PR 贡献代码或把自己的游戏配置发到仓库共享。后续计划加入更多游戏预置配置与图形化配置界面。下一步很简单把第二副手柄或第二套键鼠插上电脑编译出主程序先挑一个有预置配置的游戏试一局。跑通之后再给没配置的游戏建一个属于自己的 JSON。【免费下载链接】UniversalSplitScreenSplit screen multiplayer for any game with multiple keyboards, mice and controllers.项目地址: https://gitcode.com/gh_mirrors/un/UniversalSplitScreen创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表