Commit Graph

50 Commits

Author SHA1 Message Date
SeanOMik b51f1e16ef
ecs: fix World::insert, finish a TODO related to it
The TODO was that if the archetype has a single entity, add a component column for the new component instead of moving the entity to a brand new archetype
2024-03-03 16:19:59 -05:00
SeanOMik c0df9f2d65
ecs: fix a typo in docs 2024-03-02 22:55:12 -05:00
SeanOMik 6210778e9d
ecs: some code cleanup 2024-03-02 22:55:11 -05:00
SeanOMik 7d90b1d38f
ecs: improve docs 2024-03-02 22:55:10 -05:00
SeanOMik 21537481c9
ecs: add relations, improve docs 2024-03-02 22:55:10 -05:00
SeanOMik 5521d4a659
scripting: start work on exposing InputActions to lua, implement inserting reflected resource 2024-02-25 17:06:53 -05:00
SeanOMik 4a7cdfab80
ecs: fix executing deferred fn system arguments 2024-02-24 14:30:09 -05:00
SeanOMik 5dfc073db5
ecs: add commands test and fix Commands 2024-02-24 11:09:26 -05:00
SeanOMik 380c8df740
ecs: implement deferred system commands, change the way system fn arguments are implemented 2024-02-23 16:34:21 -05:00
SeanOMik e88758f59d
scripting: expose resources to the world 2024-01-20 00:54:36 -05:00
SeanOMik e5599e1d27
scripting, ecs: expose Transform to lua, update component ticks on changes from lua 2024-01-13 11:52:20 -05:00
SeanOMik 189d05e323
split the math module into a lyra-math crate, implement Reflect and Component for Transform 2024-01-13 11:51:16 -05:00
SeanOMik acfd238274
ecs: implement component for some glam types 2024-01-12 14:09:29 -05:00
SeanOMik 8f58096643
Fix memory bug caused by non-copy components (Vec, HashMap, etc.)
ci/woodpecker/push/debug Pipeline failed Details
ci/woodpecker/manual/debug Pipeline failed Details
2024-01-06 22:52:30 -05:00
SeanOMik ac24d1f913
Fix querying resources in fn systems, create CommonActionLabels, more code cleanup of free fly camera 2024-01-06 21:38:21 -05:00
SeanOMik 9307265a5a
Implement staged system execution, make it easier to add systems, remove some compiler warnings 2024-01-06 15:40:13 -05:00
SeanOMik 98ee6fc323
ecs: cleanup 2024-01-04 23:58:56 -05:00
SeanOMik c673fd98ff
Large restructuring so lyra-scripting can create a Plugin
ci/woodpecker/push/debug Pipeline failed Details
2024-01-04 23:25:29 -05:00
SeanOMik 0f062217ca
ecs: Add world query, make it possible to request resources from function systems 2024-01-04 20:49:27 -05:00
SeanOMik d075fd5d5f
Fix test failure caused by invalid pointer free, remove unused dependencies
ci/woodpecker/push/debug Pipeline was successful Details
2023-12-28 22:54:19 -05:00
SeanOMik 10fc7842cf
Fix a painful amount of compiler warnings, and clippy warnings 2023-12-28 21:30:45 -05:00
SeanOMik 09bba5b3b3
Switch to lyra-ecs systems, move ecs mod to scene mod, reexport lyra-ecs as ecs 2023-12-26 23:48:46 -05:00
SeanOMik 2805399fe4
Switch to use lyra-ecs 2023-12-26 14:12:53 -05:00
SeanOMik 64519b2b4f
[lyra-ecs] Add World::get_resource_or_else, update README.md 2023-12-22 12:22:10 -05:00
SeanOMik 1a541e527b
Create a Component derive macro 2023-12-21 23:33:55 -05:00
SeanOMik 1ab79fae83
Make fields and methods pub 2023-12-21 23:33:54 -05:00
SeanOMik 68a2868478
Use Any for Resources instead of pointers, utility stuff for DynamicType 2023-12-21 23:33:53 -05:00
SeanOMik 8c8e7dfd7d
Implement inserting components into entities, ViewOne 2023-12-21 23:33:52 -05:00
SeanOMik da206b4824
Rename World::view to World::view_iter, some code cleanup 2023-12-21 23:33:51 -05:00
SeanOMik a68b0a7fb4
Simple dynamic views 2023-12-21 23:33:50 -05:00
SeanOMik a1ca2789ce
Dynamically typed bundles and archetypes 2023-12-21 23:33:49 -05:00
SeanOMik e867aaeadb
Groundwork for dynamic types in archetypes 2023-12-21 23:33:48 -05:00
SeanOMik 808cb77040
Implement multiple argument fn systems 2023-12-21 23:33:47 -05:00
SeanOMik ddc6a3dbf2
Add ArgFetcher for resources 2023-12-21 23:33:46 -05:00
SeanOMik 5f5f875783
Rewrite FnSystem stuff, add World argument fetcher 2023-12-21 23:33:45 -05:00
SeanOMik 27b0b87bd7
Finish GraphExecutor `execution` test 2023-12-21 23:33:44 -05:00
SeanOMik c3c1e81913
Create QueryResourceMut 2023-12-21 23:33:43 -05:00
SeanOMik 068eeecd4c
Create graph system executor 2023-12-21 23:33:42 -05:00
SeanOMik 9c6c32199d
Create simple function systems 2023-12-21 23:33:41 -05:00
SeanOMik 7f17a97ef7
Return Ref and RefMut from the borrow queries to enforce borrow checks even more 2023-12-21 23:33:40 -05:00
SeanOMik 6fedb270b9
Convert package to a lib, get resources from views 2023-12-21 23:33:39 -05:00
SeanOMik 08a458eb9c
Implement simple resources 2023-12-21 23:33:38 -05:00
SeanOMik 7d94cf052f
Simple ECS resources 2023-12-21 23:33:37 -05:00
SeanOMik e8e2bc0c24
Enforce single mutable borrows of component columns 2023-12-21 23:33:36 -05:00
SeanOMik 4c0b517127
Implement despawning entities 2023-12-21 23:33:36 -05:00
SeanOMik 2c718231ed
Implement query for tuples of query types 2023-12-21 23:33:34 -05:00
SeanOMik 2e53156b0d
Implement query borrow and borrow mut for all &T and &mut T 2023-12-21 23:33:33 -05:00
SeanOMik 92e284e625
Create queries and views 2023-12-21 23:33:32 -05:00
SeanOMik f62f21e69f
simple queries (which will be completely rewritten 2023-12-21 23:33:31 -05:00
SeanOMik cde7d140ea
early version of ecs working 2023-12-21 23:33:18 -05:00