TODO 1.9 KB

123456789101112131415161718192021222324252627
  1. * long term feature: templated generic vm
  2. * long term feature: shared_ptr less locator
  3. * long term feature: shared_ptr less resource cache
  4. * custom allocators and EnTT allocator-aware in general (long term feature, I don't actually need it at the moment) - see #22
  5. * debugging tools (#60): the issue online already contains interesting tips on this, look at it
  6. * runner proposal: https://en.wikipedia.org/wiki/Fork%E2%80%93join_model https://slide-rs.github.io/specs/03_dispatcher.html
  7. * work stealing job system (see #100)
  8. * meta: sort of meta view based on meta stuff to iterate entities, void * and meta info objects
  9. * hashed string: add implicit check on construction for uniqueness (optional)
  10. * allow for built-in parallel each if possible
  11. * tags revenge: if it's possible, reintroduce them but without a link to entities (see #169 for more details)
  12. * empty components model allows for shared components and prefabs unity-like
  13. * allow to replace std:: with custom implementations
  14. * allow to sort groups (::respect can already work with begin/end instead of a whole sparse set)
  15. * cleanup - see https://github.com/skypjack/entt/commit/ad5cedc08c83e8cbcc8aaeac9634d44624ffe35a#commitcomment-32380903
  16. TODO
  17. * add and burst add with components (sort of registry.create<A, B>(first, last) and registry.create<A, B>())
  18. TODO
  19. * update doc dispatcher (it's outdated) or rollback changes to add extra parameters (is that really useful at the end of the day?)
  20. TODO
  21. * events on replace, so that one can track updated components? indagate impact
  22. * define basic reactive systems (track entities to which component is attached, track entities from which component is removed, and so on)
  23. * define systems as composable mixins (initializazion, reactive, update, whatever) with flexible auto-detected arguments (registry, views, etc)
  24. ==> from Tommaso on discord view<Health, Transform>().where<Health>([](h) {h > 5}).where<Transform>([](t) {t.inside(aabb)});