Files
XCEngine/docs/api/XCEngine/Input/InputManager/Initialize.md

46 lines
921 B
Markdown
Raw Normal View History

2026-03-26 16:45:24 +08:00
# InputManager::Initialize
2026-03-26 17:39:53 +08:00
初始化输入状态缓存并注册默认逻辑映射。
2026-03-26 16:45:24 +08:00
```cpp
void Initialize(void* platformWindowHandle);
```
2026-03-26 17:39:53 +08:00
## 行为说明
2026-03-26 16:45:24 +08:00
2026-03-26 17:39:53 +08:00
当前实现是幂等的:如果已经初始化,直接返回。
2026-03-26 16:45:24 +08:00
2026-03-26 17:39:53 +08:00
首次初始化时,它会:
2026-03-26 16:45:24 +08:00
2026-03-26 17:39:53 +08:00
- 保存 `platformWindowHandle`
- 分配 256 槽键盘状态数组
- 分配 5 槽鼠标按键状态数组
- 分配 32 槽按钮瞬时状态数组
- 注册默认轴和按钮映射
-`m_initialized` 设为 `true`
2026-03-26 16:45:24 +08:00
2026-03-26 17:39:53 +08:00
当前没有做的事情:
- 不会清空事件监听器
- 不会校验窗口句柄
- 不会启动平台事件循环
## 参数
- `platformWindowHandle` - 平台窗口句柄;当前会保存下来,但 `InputManager` 本身不直接使用它。
2026-03-26 16:45:24 +08:00
2026-03-26 17:39:53 +08:00
## 返回值
- 无。
## 示例
```cpp
XCEngine::Input::InputManager::Get().Initialize(windowHandle);
2026-03-26 16:45:24 +08:00
```
## 相关文档
2026-03-26 17:39:53 +08:00
- [返回类型总览](InputManager.md)
- [Shutdown](Shutdown.md)