Commit Graph

31 Commits (3b1dafdebdb8fbe3e4617312dd90a452378b3af8)

Author SHA1 Message Date
cosmonaut 3b1dafdebd file-scoped namespaces + formatting 2023-11-20 23:13:04 -08:00
cosmonaut b27875b9a8 complete World.Dispose 2023-11-20 15:11:17 -08:00
cosmonaut 6136450617 fix not compiling in release mode 2023-11-20 11:13:41 -08:00
cosmonaut 2d333d0651 fix crash on post-snapshot entity ID recycle 2023-11-16 10:36:11 -08:00
cosmonaut f849db955c add World.ClearMessages 2023-11-15 15:10:56 -08:00
cosmonaut 523b6e3ef7 actually add filters to filter index 2023-11-08 10:17:22 -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 b5e28ae69f add World.Clear 2023-07-21 14:41:53 -07:00
cosmonaut 4d45d05618 World Transfer + Entity Tags (#4)
- removed Snapshot system
- Entities can now be transferred between Worlds along with their Components and Relations using a Filter
- Entities can now be given a string tag on creation
- Manipulators can update an Entity's string tag
2023-07-10 22:36:34 +00:00
cosmonaut f7d4fcdee7 add Manipulator, remove Spawner, remove Template 2023-05-24 12:46:27 -07:00
cosmonaut c68e16456e run Filter callbacks before updating component storage 2023-05-19 13:24:26 -07:00
cosmonaut cf75824d67 Fix entity relation inconsistency on destroy 2023-02-09 15:15:55 -08:00
cosmonaut 02ccc3d1a5 add World.Relate + Spawner object 2023-02-09 10:50:25 -08: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 56948e4c31 World State Save and Load (#2)
Reviewed-on: #2
2022-05-03 04:51:11 +00:00
cosmonaut 5243259acb relations can now contain data 2022-04-19 12:35:21 -07:00
cosmonaut 37d10db955 remove implicit usings 2022-04-07 22:52:03 -07:00
cosmonaut da35e99266 entity relation system 2022-04-06 12:53:50 -07:00
cosmonaut 9e6917094d system updates called by the application instead of World 2022-03-25 16:00:19 -07:00
cosmonaut 26621e66fe world no longer triggers renderer draw 2022-03-24 22:12:37 -07:00
cosmonaut 1d7db58d43 remove WorldBuilder 2022-03-07 11:46:17 -08:00
cosmonaut 229a0651bd WorldBuilder 2022-03-07 10:56:53 -08:00
cosmonaut 2d55a3b6b2 clear message depot at end of update 2022-03-06 23:26:54 -08:00
cosmonaut b30923ade3 initial message system 2022-03-06 23:17:05 -08:00
cosmonaut b2b32b0424 initial filter implementation 2022-03-05 22:12:27 -08:00
cosmonaut 0f4052728e initial commit 2022-03-04 18:01:44 -08:00