Madeira触屏虚拟手柄配置完全指南:A/B/X/Y、双摇杆与扳机键设置
【免费下载链接】MadeiraRun x86-64 Windows PC games on jailed iOS via FEX-Emu + Wine + DXMT项目地址: https://gitcode.com/GitHub_Trending/mad/Madeira
Madeira 触屏虚拟手柄让你在未越狱的 iPhone 上运行 Windows PC 游戏——通过 FEX-Emu + Wine + DXMT 三大引擎,把触屏变成带 A/B/X/Y 按键、双摇杆与扳机键的虚拟手柄,经 XInput 协议直送游戏。
🎮 为什么需要触屏虚拟手柄
Madeira 让 iPhone 跑起 Thumper、ULTRAKILL 等 x86-64 Windows 游戏,但手机上没有实体手柄怎么办?项目内置了一套横屏触屏手柄覆盖层:虚拟按键以 XInput 格式合并为"1 号玩家"输入,与蓝牙实体手柄完全兼容——触屏和物理按键可叠加使用,扳机键取更大值,摇杆按优先级仲裁(见 docs/CONTROLLERS.md)。
⚡ 快速开始:一键加载内置 Xbox 布局
最省事的配置方式是直接加载内置的Xbox controller完整 XInput 布局:
- 进入横屏游戏画面,确认触屏手柄已开启;
- 点击覆盖层顶栏的布局按钮(堆叠方块图标);库内游戏中也可在游戏内Session菜单的Controller layout一行切换;
- 选择Xbox controller,布局即刻按当前屏幕安全区自动适配——手机和平板都能摆正。
该布局的按键排布(源码定义见 TouchControlPresets.swift):
| 区域 | 按键 |
|---|---|
| 左上角一排 | LT(扳机)、LB |
| 右上角一排 | RB、RT(扳机) |
| 左摇杆上方 | 十字方向键(D-pad) |
| 右摇杆上方 | A/B/X/Y 菱形键 |
| 底部中央 | View / Menu 系统键 |
| 摇杆内侧 | L3 / R3 摇杆按压键 |
左下角LS与右下角RS即双摇杆本体,支持全范围模拟输入,方向以首次落点为原点做径向钳制。
🕹️ A/B/X/Y 与双摇杆的操作细节
- A/B/X/Y以菱形排列在右摇杆上方,斜向相邻按键保证不重叠,单指精准点按不打滑;
- 双摇杆(LS/RS)是真正的模拟输入,输出带符号的完整 XInput 范围(±32768),不施加任何死区,留给游戏自行处理(轴转换逻辑见 GamepadInput.swift);
- 键盘型摇杆(WASD、方向键)的摇杆帽中央会画一个小键盘/箭头图标以便区分,手柄摇杆则保留 LS/RS 标签;
- 支持多指独立触控:同一按钮被两个控件映射时,松开一根手指,另一根保持按住。
🔫 扳机键 LT/RT 设置说明
LT/RT 被实现为全按式扳机:按下即输出 255 满值,映射到 XInput 的左右扳机(0–255)。当你同时使用实体手柄时,规则很简单——触屏与物理扳机取更大值。
若某款游戏只在启动时枚举一次 XInput、看不到你的手柄,可在配置文件中开启会话预留开关,让 1 号玩家槽位在会话开始时即保持连接(默认关闭):
在
Documents/madeira.cfg中加入env.MADEIRA_PAD_EARLY_SLOT = 1后重启应用
完整开关说明与回退方式(MADEIRA_XINPUT = 0、MADEIRA_TOUCH_XINPUT = 0)见 docs/CONTROLLERS.md 的开关表。
🛠️ 自定布局:创建、保存与按游戏记忆
不满意默认位置?布局编辑器支持拖拽定位、双指缩放(0.5–3.0 倍):
- 布局菜单中选择Create new layout,自动命名为下一个空闲的 "Custom Layout N" 并打开空白编辑;
- 用+添加按键,在Controller标签页为每个控件指定手柄映射(A/B/X/Y、十字键、LB/RB、L3/R3、LT/RT、LS/RS、View/Menu 均可);
- 点击Done结束编辑,改动自动写回该自定义布局,持久化在
Documents/madeira-control-presets.json; - 库内游戏会单独记住自己使用的布局(
controlLayout字段),退出会话后自动还原共享布局,互不干扰。
内置布局只读不可改;如果你在内置布局上做了修改,它会被当作"未保存控件",切换布局时系统会询问是否保留为新的自定义布局,手工布局永远不会丢失。
⚙️ 常见问题速查
- Xbox 内置布局不显示?该布局仅在触屏 XInput 开启时提供,确认未设置
MADEIRA_TOUCH_XINPUT = 0; - 想让新用户首次进入横屏就自动获得手柄布局?在
madeira.cfg中设置env.MADEIRA_CONTROLS_XBOX_DEFAULT = 1,首次显示横屏覆盖层时自动应用内置布局(仅对没有控件文件的用户生效); - 手柄导航库界面?1 号手柄的按键同样驱动应用库界面,游戏会话中自动让位;
- 更多输入相关内容可参考 docs/KEYBOARD_MOUSE.md 与 docs/LIBRARY.md,触屏状态机实现见 TouchGamepad.swift。
掌握以上配置,A/B/X/Y、双摇杆和扳机键都能在你的 iPhone 触屏上各就各位——剩下的,就是开玩了 🚀
【免费下载链接】MadeiraRun x86-64 Windows PC games on jailed iOS via FEX-Emu + Wine + DXMT项目地址: https://gitcode.com/GitHub_Trending/mad/Madeira
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考