17个版本 (11个破坏性更新)

0.11.0 2024年1月11日
0.10.3 2023年12月23日
0.9.2 2023年12月5日
0.8.0 2023年11月18日

#1804 in 游戏开发


用于bevy_kot

MIT/Apache

270KB
4K SLoC

Koe的Bevy工具包

Bevy工具的集合。

内容

ECS

  • 系统调用者,将系统作为函数调用(需要&mut World)。
  • 实体回调。
  • 用于向实体添加/删除组件的实用工具(需要&mut World)。
  • ReactCommands管理的响应式框架:React组件,ReactRes资源,以及响应式事件(使用ReactEventReader)。更多信息请参阅文档
  • AutoDespawner资源用于垃圾收集实体。

UI

  • StyleStack 提供样式继承,这对于设置和覆盖预制体样式特别有用。您可以通过 style_stack.add() 将样式添加到当前 '帧',这样它对所有子帧都可用。然后您可以使用 style_stack.push()/.pop() 来添加/移除帧。在启动时,您可以使用一组默认样式初始化堆栈,然后在构建 UI 分支时,您可以使用 style_stack.add(style_stack.style::<X>().my_inner_style.clone()); (例如,如果您需要某些小部件的特殊字体,您可以通过展开在初始化时插入的小部件的特殊样式,将该字体拉入堆栈)。
  • UiBuilder 为构建 UI 打包了有用的系统参数:一个 ReactCommands、一个 lunex ui 树句柄、Bevy 资产服务器、一个实体 GC 的销毁器工具和 StyleStack 资源。构建器公开了 div()div_rel(),这些是管理 StyleStack 帧的便捷方法。
  • InteractiveElementBuilder 允许您将交互回调添加到实体,这些回调由交互管道系统自动调用。它相当有偏见,并假设您正在使用 bevy_lunex,但它有一个相当大的 API,应该适用于大多数常规用例(它需要一个主要的重构来解锁剩余的用例)。与 bevy_mod_picking 不同,后者您可以随时添加回调,InteractiveElementBuilder 一次添加所有回调,从而启用更多内置功能。构建器的支持代码使得定义不同的交互源成为可能(目前所有击中测试都与 lunex 小部件相关联,待重构 [这是当前最大的可用性问题])。

杂项

工具

Bevy 兼容性

bevy bevy_kot
0.12 0.9.0 - master
0.11 0.0.1 - 0.8.0

bevy_lunex 兼容性

lunex bevy_kot
0.0.9 0.9.0 - master
0.0.6 0.0.2 - 0.8.0
0.0.5 0.0.1

依赖项

~49–86MB
~1.5M SLoC