Commit Graph

20 Commits (main)

Author SHA1 Message Date
cosmonaut fc2120cca9 Storage Rewrite (#6)
- add Snapshot with Take and Restore methods
- remove World.Transfer
- components can now be accessed via `ref`
- clients should call World.Dispose when they are done with a World
- rewrite ECS storage to use fewer classes
- all ECS storage methods now exposed in World
- removed filter callbacks
- removed MessageWithEntity methods
- various data structure optimizations

Reviewed-on: #6
2023-11-21 19:50:17 +00:00
cosmonaut 2bf2128d07 remove unused reference to TemplateComponentDepot 2023-07-21 14:43:54 -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 3817a9e809 get relation by index 2023-03-20 14:26:27 -07: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 453426a232 rename and add new relation lookup methods 2022-08-09 14:41:31 -07:00
cosmonaut ad4dfd9249 World should be internal 2022-05-15 12:16:49 -07: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 1123ef5662 check for specific relation 2022-04-06 20:08:28 -07:00
cosmonaut da35e99266 entity relation system 2022-04-06 12:53:50 -07:00
cosmonaut d7e795309f Entity Iteration Rework (#1)
Filters are now the canonical way to look up Entities. The only exception is the new GetSingletonEntity.
2022-04-03 21:46:52 +00:00
cosmonaut 42113f882c rename no-parameter Get to GetSingleton 2022-03-31 19:55:01 -07:00
cosmonaut 323fb0e209 add Exists API call to check if entity exists 2022-03-31 16:15:30 -07:00
cosmonaut 0ddc89ddea add singleton getter 2022-03-21 16:21:42 -07:00
cosmonaut 82271e6b13 move FilterBuilder to EntityComponentReader 2022-03-08 15:23:07 -08:00
cosmonaut b27cbcb50a note about ReadEntities 2022-03-06 23:27:35 -08:00
cosmonaut 0f4052728e initial commit 2022-03-04 18:01:44 -08:00