9

我正在搜索一些库,这些库实现了多个游戏中使用的基于组件的实体系统(ECS)框架,并在许多游戏引擎(unity、libgdx 等)中实现。

我正在scala(ECS roguelike)中开始一个小游戏项目,此时我只找到一个名为ashley的java库。

你知道是否存在其他 ECS 库(在 Scala 中),或者唯一的方法是在 scala(ashley)中使用或重新实现这个库吗?

另一个相关的问题,Actor 范式和基于组件的实体系统并不是那么遥远,有什么区别?

4

1 回答 1

2

关于与Actor系统不同的问题,Actor系统的目的是允许Actor之间的异步通信。我在 ECS 中看不到任何与异步相关的内容。事实上,从您的一个链接:

每个系统将按逻辑顺序每帧更新一次

这意味着通过程序进行同步的、阻塞的进程,这与组件将以并发方式相互发送消息的参与者系统完全不同。

关于您对 Scala 中的 ECS 库的需求。Scala 和 Java 是可互操作的,有什么理由不能简单地ashley在 scala 代码中使用?

于 2015-09-11T14:59:22.060 回答