0c463d4b881df5afcb2eacbfd856eb7ddd2f488d
FancyInput
FancyInput 是一款面向 Windows 的游戏输入可视化叠层与输入宏工具。它可以在游戏画面上实时显示键盘、鼠标和手柄输入,也支持自定义叠层布局、虚拟手柄映射以及宏录制与回放。
功能
- 实时可视化键盘、鼠标和手柄输入
- 支持 XInput、SDL3、RawInput 和 MouseKeyHook 输入后端
- 自定义叠层元素、位置、大小、透明度和布局
- 支持 PNG/GIF 图像资源与图像编辑
- 键盘到虚拟 Xbox 360 手柄的映射
- 输入宏录制、编辑和回放
- 支持命令、键盘、鼠标、延迟等宏动作
- 支持 Once、Hold、Toggle 等触发模式
- 宏项目可保存为
.fipm文件并批量加载 - 系统托盘、内置 Cmd/PowerShell 终端和在线更新
系统要求
- Windows 10 或更高版本
- .NET 8 Desktop Runtime(运行已发布版本时)
- 使用虚拟手柄功能时,需要安装 ViGEmBus,并提供 ViGEm 客户端组件
- 使用 HidHide 隐藏真实手柄时,需要安装 HidHide,并以管理员身份运行程序
虚拟手柄和 HidHide 都是可选功能,不影响基本的输入叠层使用。
构建
开发环境
- Visual Studio 2022,安装“.NET 桌面开发”工作负载
- .NET 8 SDK
- Windows 操作系统
从源码构建
dotnet restore FancyInput.sln
dotnet build FancyInput.sln --configuration Release
构建输出位于 FancyInput/bin/Release/。也可以使用 Visual Studio 打开 FancyInput.sln,选择 Debug 或 Release 配置后运行项目。
使用说明
启动程序后,可以从主窗口进入以下功能:
- 读取:打开已有的叠层项目或配置文件
- 创建:创建新的输入叠层布局
- 管理:管理已有项目和布局
- 工坊:创建、编辑、录制和运行输入宏
- 设置:配置输入后端、运行权限和其他选项
使用全局输入监听、虚拟手柄或 HidHide 功能时,请确认程序拥有必要的 Windows 权限。请勿在不清楚宏动作含义的情况下运行来自他人的宏文件或命令。
项目结构
FancyInput/
├── Common/ 通用工具、枚举和行为
├── Models/ 输入处理、宏、叠层和设备管理
├── ViewModels/ MVVM 视图模型
├── Views/ WPF 窗口、页面和控件
└── Resources/ 图标、二维码和样式资源
第三方组件
项目使用了多个第三方组件,包括:
- Hardcodet.NotifyIcon.Wpf
- MouseKeyHook
- SDL3-CS / SDL3-CS.Native
- SharpDX.XInput
- WpfAnimatedGif
第三方组件的版权和许可归各自作者所有。使用或重新发布包含这些组件的程序时,请同时遵守其各自许可证。相关项目地址如下:
许可证
FancyInput 仓库中的源代码采用 MIT License 授权。该许可证允许使用、复制、修改和分发源代码,但必须保留版权声明和许可证文本。
官方编译版如附带单独的终端用户协议,则以该发行版随附的协议为准;第三方组件不受 FancyInput 的源代码许可证替代。
联系方式
- 作者:XLworkspace
- 邮箱:contact@xlworkspace.com
- 微信公众号:星览工作站(微信号:XLWorkspace)