1.7 KiB
1.7 KiB
InputModule
命名空间: XCEngine::Input
类型: class (abstract)
头文件: XCEngine/Input/InputModule.h
描述: 定义平台输入桥接层的最小接口,把操作系统消息翻译成 InputManager 可消费的调用。
概述
InputModule 代表“输入后端适配器”这一层。它本身不保存全局输入状态,职责是从平台窗口系统接收原始消息,然后调用 InputManager::Process* 把这些消息转换成引擎内部统一格式。
这层拆分的价值在于:
- 游戏代码只依赖
InputManager,不直接依赖 Win32、GLFW 或其它平台 API。 - 各平台后端可以各自决定如何接收事件,但最后都汇总到同一套引擎输入状态。
当前实现中的位置
- WindowsInputModule 是当前代码库里的实际实现。
InputModule本身只定义抽象接口,不提供默认逻辑。
线程语义
- 具体线程语义取决于平台后端。
- 当前 Windows 路径假定输入消息和
InputManager更新都发生在窗口线程或主线程。
公开方法
| 方法 | 说明 |
|---|---|
| Destructor | 虚析构函数。 |
| Initialize | 初始化平台输入后端。 |
| Shutdown | 关闭平台输入后端。 |
| PumpEvents | 主动轮询平台事件。 |
| HandleMessage | 处理一条平台消息。 |