#控制 #输入 #游戏开发 #游戏引擎 # #事件 #按下

puppetmaster

编写游戏的易于使用的输入处理

1 个不稳定版本

0.1.0 2021年12月16日

#364 in #控制

MIT 许可证

24KB
194

Puppetmaster

编写游戏的易于使用的输入处理。

这个crate暴露了不同类型的输入处理器。根据您的游戏引擎如何提供输入数据,选择要使用哪一个。

  • EventInputHandler 当您的游戏引擎使用事件时
  • PollingInputHandler 当您的游戏引擎提供一组当前按下的键时
  • QueryInputHandler 当您的游戏引擎提供调用以查询键状态的功能时

输入与控制

这个crate在输入控制之间做出了区分。 输入 是您的游戏引擎提供的原始按键码; 控制 是您的游戏对此所做的事情。

因此,像 Key::W 这样的东西将是一个输入,由您的游戏引擎预定义,您可以将它映射到您在游戏代码中定义的 Control::Up

多个输入可以映射到同一个控制,但反之则不行。因此,W键和上箭头都可以映射到 Control::Up,但是您不能让Shift键同时映射到蹲下和冲刺。


这个crate还包括使用每种输入处理器类型的示例代码。

这些都是用GGEZ编写的。我希望有不同类型的游戏引擎来展示Puppetmaster的灵活性,但遗憾的是,GGEZ和Macroquad在alsa版本上存在冲突。所以,一切都是GGEZ,因为您可以使用所有3种类型的输入处理器。

依赖关系

~530–720KB
~13K SLoC