FancyInput
This commit is contained in:
@@ -0,0 +1,99 @@
|
||||
# FancyInput
|
||||
|
||||
<p align="center">
|
||||
<img src="FancyInput/Resources/Icons/Icon.png" alt="FancyInput 图标" width="160">
|
||||
</p>
|
||||
|
||||
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 操作系统
|
||||
|
||||
### 从源码构建
|
||||
|
||||
```powershell
|
||||
dotnet restore FancyInput.sln
|
||||
dotnet build FancyInput.sln --configuration Release
|
||||
```
|
||||
|
||||
构建输出位于 `FancyInput/bin/Release/`。也可以使用 Visual Studio 打开 `FancyInput.sln`,选择 `Debug` 或 `Release` 配置后运行项目。
|
||||
|
||||
## 使用说明
|
||||
|
||||
启动程序后,可以从主窗口进入以下功能:
|
||||
|
||||
- **读取**:打开已有的叠层项目或配置文件
|
||||
- **创建**:创建新的输入叠层布局
|
||||
- **管理**:管理已有项目和布局
|
||||
- **工坊**:创建、编辑、录制和运行输入宏
|
||||
- **设置**:配置输入后端、运行权限和其他选项
|
||||
|
||||
使用全局输入监听、虚拟手柄或 HidHide 功能时,请确认程序拥有必要的 Windows 权限。请勿在不清楚宏动作含义的情况下运行来自他人的宏文件或命令。
|
||||
|
||||
## 项目结构
|
||||
|
||||
```text
|
||||
FancyInput/
|
||||
├── Common/ 通用工具、枚举和行为
|
||||
├── Models/ 输入处理、宏、叠层和设备管理
|
||||
├── ViewModels/ MVVM 视图模型
|
||||
├── Views/ WPF 窗口、页面和控件
|
||||
└── Resources/ 图标、二维码和样式资源
|
||||
```
|
||||
|
||||
## 第三方组件
|
||||
|
||||
项目使用了多个第三方组件,包括:
|
||||
|
||||
- Hardcodet.NotifyIcon.Wpf
|
||||
- MouseKeyHook
|
||||
- SDL3-CS / SDL3-CS.Native
|
||||
- SharpDX.XInput
|
||||
- WpfAnimatedGif
|
||||
|
||||
第三方组件的版权和许可归各自作者所有。使用或重新发布包含这些组件的程序时,请同时遵守其各自许可证。相关项目地址如下:
|
||||
|
||||
- [Hardcodet.NotifyIcon.Wpf](https://github.com/hardcodet/wpf-notifyicon)
|
||||
- [MouseKeyHook](https://github.com/gmamaladze/globalmousekeyhook)
|
||||
- [SDL3-CS](https://github.com/edwardgushchin/SDL3-CS)
|
||||
- [SharpDX](https://github.com/sharpdx/SharpDX)
|
||||
- [WpfAnimatedGif](https://github.com/XamlAnimatedGif/WpfAnimatedGif)
|
||||
|
||||
## 许可证
|
||||
|
||||
FancyInput 仓库中的源代码采用 [MIT License](LICENSE) 授权。该许可证允许使用、复制、修改和分发源代码,但必须保留版权声明和许可证文本。
|
||||
|
||||
官方编译版如附带单独的终端用户协议,则以该发行版随附的协议为准;第三方组件不受 FancyInput 的源代码许可证替代。
|
||||
|
||||
## 联系方式
|
||||
|
||||
- 作者:XLworkspace
|
||||
- 邮箱:contact@xlworkspace.com
|
||||
- 微信公众号:星览工作站(微信号:XLWorkspace)
|
||||
Reference in New Issue
Block a user