我正在搜索一些实现多个游戏中使用的Component Based Entity System (ECS)框架并在许多游戏引擎中实现的库(unity,libgdx等)
我正在scala(ECS roguelike)开始一个小游戏项目,此时我只找到一个名为ashley的java库。
你知道是否存在其他ECS库(在Scala中),或者唯一的方法是在scala(ashley)中使用或重新实现这个库吗?
另一个相关问题,演员范式和基于组件的实体系统并不是那么遥远,有什么区别?
答案 0 :(得分:2)
关于与Actor系统的差异的问题,Actor系统的目的是允许actor之间的异步通信。我在ECS中看不到与异步性有关的任何内容。事实上,从您的一个链接:
每个系统将按逻辑顺序每帧更新一次
这意味着同步,阻止程序的进度,因此与组件将以并发方式发送彼此消息的actor系统完全不同。
关于您在Scala中对ECS库的需求。 Scala和Java是可互操作的,您有什么理由不能在scala代码中使用ashley
吗?