Artemis ECS的bit
中的Component Type
成员以及TypeBit
中的SystemBit
和Entity
成员的目的是什么?
以下是Artemis ECS的git仓库的一些屏幕截图,它们引用了ComponentType
和Entity
:
对于ComponentType
对于Entity
Here是git的链接。
最佳答案
调查https://github.com/gemserk/artemis/blob/master/src/com/artemis/EntityManager.java
-在addComponent函数。它呼吁
e.addTypeBit(type.getBit());
另外removeComponent()调用:
e.removeTypeBit(type.getBit());
因此,这只是实体内组件的ID。另一个ID用于收集EntityManager中的组件类型。
无论如何,这是一个有点旧的实现。看一下名为artemis-odb的fork,它在性能上更高,并且主动developed。 ComponentType也被重构。
关于java - Artemis ECS中位数据背后的目的,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25465353/