Skip to content

Releases: 4zyz4/GKME

4.2.0

Choose a tag to compare

@4zyz4 4zyz4 released this 24 Sep 11:48

Android 端

新增功能

  • 悬浮模式:新增可悬浮于其他应用之上的悬浮操控模式,并支持显示按钮透明度继承
  • USB / ADB 连接模式:新增 USB 直连方式,并精简内置 platform-tools 仅保留 adb
  • 实体手柄完整按键映射:实体手柄可自定义全部按键映射
  • 自定义按键盘 4/8 方向模式:自定义按键盘支持四向与八向操作
  • 鼠标触摸板:滑动判定距离可配置
  • 键盘上档字符:Shift 按下时数字/符号键显示对应上档字符
  • UI 过渡动画:设置页切换、编辑布局浮窗与参数切换均新增过渡动画

音频与震动

  • 手机扬声器与控制器音频改走 SDL3 多设备低延迟播放
  • 手机本地合成 Switch Pro HD 震动,并将 Windows 端 PCM 转为 Switch HD 震动
  • 修复 OTG 手柄音频触觉超发阻塞 WiFi 收包的问题

优化

  • 布局缓存校验算法由 SHA-256 改为 CRC32
  • 控件透明度改为不透明度(默认 100%),并兼容旧配置

修复

  • 修复鼠标板快速滑动丢位移与按键误释放
  • 修复加速度计转摇杆融合陀螺仪时平移导致的漂移;移除陀螺仪转鼠标的基础死区
  • 修复矩形区域跟随启用、移动与缩放失效;收起浮窗后选中按钮不再错误展开
  • 修复旋转矩形按钮缩放/文字与鼠标触控板外观问题

Windows 端

新增功能

  • USB / ADB 连接模式:USB 发现对齐 WiFi 广播
  • Switch Pro 手柄模拟:新增 USB Switch Pro 模拟
  • USB 双 Joy-Con 手柄模拟:新增双 Joy-Con 模拟,且支持HD震动
  • Switch Pro HD 震动下发参数,由手机端本地合成

4.1.0

Choose a tag to compare

@4zyz4 4zyz4 released this 19 Sep 12:15

新功能

实体手柄

  • 集成 SDL3 接管实体手柄,HIDAPI 优先并启用扩展报告,支持多手柄同时接入
  • 新增手柄详细信息(驱动 / 震动 / 体感 / 触摸板 / 扳机)与「重新检测手柄」入口
  • 输入、体感、音频、震动、自适应扳机均可分别选择设备
  • 支持手柄 LED 颜色与玩家指示灯透传,外观颜色可绑定 LED 实时跟随
  • 支持 USB 手柄音频与音圈马达震动
  • 支持从 PC 接收 DualSense 自适应扳机效果并经 USB 转发,接通四马达扳机震动
  • 游戏震动改为设备选择,支持多手柄与左右马达交换

体感

  • 新增加速度计映射与陀螺仪基准方向设置
  • 陀螺仪设置新增死区 / 反死区
  • 加速度计转向支持多圈累积(旋转过 ±90° 后继续增大而非反向)

触控板 / 鼠标

  • 触控板手势拆分为 7 个独立下拉框:单击、双指点击、三指点击、双击后滑动、单指滑动、双指滑动、三指滑动
  • 新增三指手势中键点击、双击后按住拖拽

连接与界面

  • 广播与握手携带设备标识 (ANDROID_ID),便于多设备区分与连接
  • 蓝牙目标平台新增「Windows 仅手柄」「Android 仅手柄」「通用键鼠」模式,切换时始终清除配对
  • 新增息屏模式:屏幕以纯黑覆盖,服务继续后台运行
  • 键盘 Shift 按下时数字 / 符号键显示上档字符
  • 音量键映射改为单行布局,支持 chip 点击删除
  • 设置页面与侧栏新增过渡动画(圆形扩散 / 滑动擦除)

改进

  • 震动 / 音圈 / 体感按手柄连接状态各保存一套设置
  • 移除「震动开关」与「震动重定向检测」,简化设置
  • 开关 / 拖动条 / 复选框改为灰色样式

修复

  • 修复音圈马达断续、杂音,以及与基础震动的冲突
  • 修复手机扬声器卡顿
  • 修复虚拟触摸板双击后单击误触发震动
  • 修复实体手柄触控板插槽不稳定
  • 修复摇杆值计算冲突
  • 修复旋转矩形按钮的缩放、文字显示与触控板外观
  • 拆分超范围位移,避免 toByte 截断导致指针反向

构建

  • Gradle 升级至 9.7.1,AGP 升级至 9.4.0,启用 Gradle 配置缓存
  • 添加 SDL gamecontrollerdb.txt 手柄映射库
  • 解决全部 Kotlin 编译器警告

4.0.0

Choose a tag to compare

@4zyz4 4zyz4 released this 05 Sep 12:13

项目正式更名为 GKME

新增

新增陀螺仪坐标系选择器,支持自定义编辑
世界空间模式陀螺仪映射算法
陀螺仪转鼠标/摇杆映射功能
新增陀螺仪按钮激活模式(GyroActivateMode):支持"始终开启"和"按下特定按钮开启"两种模式
autoHold + gyroActivate 复合按钮跟随 toggle 状态触发
陀螺仪映射在按钮未按下时自动归零
双马达手机及多马达控制器支持

新增鼠标按钮支持(LMB/RMB/MMB)
触控板添加鼠标加速度属性
鼠标手势支持(双指手势)
陀螺仪在蓝牙模式下也可转鼠标,统一鼠标总线并使用向量叠加
蓝牙连接时触控板直接模拟鼠标移动
横向滚动支持
键盘功能增强

浮动编辑器新增键盘按键支持
键盘按键支持滑动/重叠/autoHold 功能
方向键支持 Unicode 字符
修复 HID 键盘扫描码以匹配 Mousedroid 标准
扳机功能

新增滑动扳机和模拟线性扳机
修复扳机重置错误和扳机位缺失问题
修复 LTRT 反转问题

新增外观设置导出/导入功能,支持图片和颜色配置
显示模式从预设页迁移到外观设置页
控制标签添加控制器/键盘/鼠标前缀

浮动编辑面板优化:进入特定设置后隐藏保存/放弃/添加按钮,新增返回按钮
陀螺仪设置改名,编辑面板交互改进
新增预设复制功能
编辑模式按钮选择和拖拽可靠性提升,修复幽灵按钮问题
添加控件键盘按键预览形状修复

新增端口占用检测和错误处理
启用 R8 代码压缩和资源缩减,减小安装包体积

音频设置中仅在设备实际存在时显示对应手机马达选项
移除默认左/右手柄预设,新增 JSON 解析缓存
底部导航栏 Tab 顺序重新排列,移除自定义 Tab
震动反馈:D-pad 和键盘按键增加震动反馈
非锁定控件支持独立调整大小
重构:分层按钮触摸架构,独立的震动处理管线
重构:集中化 bit 名称映射到 BitNameMapper
UI 文案优化:物理手柄 → 实体手柄

修复

切换显示模式时预览不更新及图标重叠问题
外观设置页面切换时预览空白问题
陀螺仪方向标签重复显示问题
鼠标按钮状态同步、触控板旋转和蓝牙鼠标上报问题
线性扳机视图重建、滑动方向和行程距离问题

重构

项目重命名: 包名从 com.zyz4.gamepademu 统一改为 com.zyz4.gkme,模块和资源引用全面更新
布局仓库重构及相关文件更新
蓝牙 HID 服务和 UDP 连接管理器优化

Windows 端重大更新

技术栈迁移

从 WPF 迁移到 Avalonia UI 框架
启用 NativeAOT 编译,支持 AOT 编译和 Trim,显著减少部署体积并提升启动速度
项目正式更名为 GKME,从 GamepadEmuHost 改名
重构网络层为专用线程模型:收发线程分离,输入事件驱动立即上报,大幅提升响应速度
硬编码控制器配置文件:用 C# 静态 ControllerProfile 对象替代 JSON 解析,绕过 NativeAOT 下的 System.Text.Json 反序列化问题

输入子系统重构

键盘输入使用 C++ DLL 封装 SendInput:
由于 .NET 结构体 Marshal 失败,改用 C++ DLL 封装 SendInput API

UI/UX 改进

新增系统托盘图标:支持显示/隐藏窗口和退出菜单
新增关于对话框:展示项目信息
修复端口冲突导致崩溃:启动时检测 UDP 端口冲突,显示友好提示后退出
窗口最小化/关闭行为优化:最小化保留任务栏图标,关闭(X 按钮)隐藏到托盘

3.0.2

Choose a tag to compare

@4zyz4 4zyz4 released this 10 Aug 02:26

修复了无震动,连接后立即自动断开的bug

3.0.1

Choose a tag to compare

@4zyz4 4zyz4 released this 09 Aug 06:23

修复了无法重连的bug

3.0.0

Choose a tag to compare

@4zyz4 4zyz4 released this 08 Aug 06:26

支持模拟Dualsense,包括音圈马达和控制器音频支持

2.3.0

Choose a tag to compare

@4zyz4 4zyz4 released this 05 Aug 07:03

自定义按键板:支持自定义组合按键编辑
一体十字键:十字键区域内跟随手指
摇杆反死区:支持配置摇杆反死区参数

2.2.0

Choose a tag to compare

@4zyz4 4zyz4 released this 03 Aug 06:19

修复蓝牙一直注册hid报表问题
增加图标大小调节(外观)

2.1.0

Choose a tag to compare

@4zyz4 4zyz4 released this 02 Aug 06:58

支持了触摸板扩展范围
增加了ds4报文序号递增
修复了触摸板失效问题

2.0.0

Choose a tag to compare

@4zyz4 4zyz4 released this 30 Jul 05:52

支持摇杆触发区域调节
支持透明度调节
支持按钮重叠区域触发调节
支持外观自定义
兼容Emotion电脑端(WIFI)