Commit Graph

13 Commits (3b1dafdebdb8fbe3e4617312dd90a452378b3af8)

Author SHA1 Message Date
cosmonaut b27875b9a8 complete World.Dispose 2023-11-20 15:11:17 -08:00
cosmonaut c6f8b65b32 hello filters my old friend 2023-11-07 17:46:44 -08:00
cosmonaut e6059a2f0a misc fixes 2023-11-03 17:47:17 -07:00
cosmonaut 8774314f62 misc fixes 2023-11-03 15:39:30 -07:00
cosmonaut 001b6714cc storage refactor 2023-11-03 12:40:26 -07:00
cosmonaut 4ef7cb4302 Determinism fixes (#5)
- Making sure that transferring from one world to another and back preserves original order of filters and relations
- Provides a MoonTools.ECS.Random class
- MoonTools.ECS.RandomManager class can be used to synchronize your Random instance with the ECS randomness
- Refactors some collections to use NativeMemory for performance and to ensure memory safety on world transfer
- Exposes some internal collections to public

Reviewed-on: #5
2023-10-13 20:42:22 +00:00
cosmonaut 4268762a0c fix EntitiesInRandomOrder 2023-04-06 14:54:20 -07:00
cosmonaut 1438188dca add filter callback system 2023-01-26 16:34:15 -08:00
cosmonaut f69d132a5e Storage refactor, snapshot system, experimental template system (#3)
- Major storage refactor to improve performance and reduce garbage collection
- Snapshot system to facilitate rollback implementation
- Experimental template system to instantiate entities based on a template. Use at your own risk, this may change significantly or be removed!

Reviewed-on: #3
2023-01-10 00:41:00 +00:00
cosmonaut a9032603ec add Filter.NthEntity 2022-08-17 15:29:38 -07:00
cosmonaut 37d10db955 remove implicit usings 2022-04-07 22:52:03 -07:00
cosmonaut b4c862d568 allow randomized entity access on filters 2022-04-02 01:00:48 -07:00
cosmonaut b2b32b0424 initial filter implementation 2022-03-05 22:12:27 -08:00