Open DaanVanYperen opened 6 years ago
Might want to deprecate some things too (@EntityDescriptor
comes to mind).
I also think entities should only be inserted/removed from systems at the end of World::process
- this would simplify debugging and reasoning about entity state changes overall. The resulting code is simpler too (but as I have learnt elsewhere, requires some rewiring w.r.t. the current impl). Providing both current behavior and old isn't really feasible - although it could maybe be emulated at a performance cost.
Sounds good!
Recently added https://github.com/junkdog/artemis-odb/blob/master/artemis-core/artemis/src/test/java/com/artemis/EntityComponentLifecycleIntegrationTest.java to figure out how things work. Maybe take a look at the test names and see if we need to change any other behaviours?
Currently the System hierarchy is quite big, does multiple things, and heavy with framework logic. There might be some ways we can:
Ties to #528