SeanOMik
2e33de5da2
lua: implement Changed query that supports components and resources
2024-10-20 21:20:43 -04:00
SeanOMik
2ffdd4085b
lua: create `View`s that can query from the world
2024-10-19 17:45:59 -04:00
SeanOMik
76b7cac699
lua: expose most fields for window component
2024-10-02 20:54:54 -04:00
SeanOMik
ef2b0bf326
ecs,scripting: fix invalid resources being passed to lua
...
CI / build (pull_request) Failing after 3m35s
Details
The issue was World::get_resource_ptr, it was returning a pointer to the AtomicRefCell instead of the actual resource data
2024-09-29 14:35:24 -04:00
SeanOMik
f5aca87ede
ecs: don't automatically tick the world, use Res and ResMut anywhere ecs resources are requested to track changes better
...
now the user must manually tick the world. The engine will do this before every update
2024-09-27 21:03:27 -04:00
SeanOMik
782d64f6cf
ecs: implement an actual Filter trait, create a Changed filter
2024-09-21 14:06:21 -04:00
SeanOMik
54b47c2178
ecs: implement change tracking for world resources
2024-07-19 16:07:03 -04:00
SeanOMik
3a80c069c9
render: move most of the mesh processing to a MeshPrepare node
...
Moving that out of the MeshesPass makes the rendering meshes accessible to other passes/nodes. The shadow pass will need access to them which is why this was done now
2024-06-29 22:23:49 -04:00
SeanOMik
f0d36e7b56
ecs: impl Clone for World and return entity in dynamic views
2024-04-27 00:21:26 -04:00
SeanOMik
db501015d0
Create an example project to test transform interpolation
2024-04-24 00:30:30 -04:00
SeanOMik
337ce18e8c
ecs: update existing components on entity in World::insert
2024-04-22 00:20:42 -04:00
SeanOMik
4a0d003181
ecs: add not filter, improve the code for inserting components into entity, bundle cleanup and improvements
2024-04-10 22:26:49 -04:00
SeanOMik
a17c035c05
resource: use a SceneGraph for loading gltf nodes, make resources Send + Sync
2024-03-31 00:32:31 -04:00
SeanOMik
46cdcfdd3b
ecs: make resources Send + Sync, rewrite Commands, CommandsQueue so that they are Send + Sync
2024-03-30 22:20:52 -04:00
SeanOMik
c3de9e77db
ecs: fix filters
2024-03-09 00:46:42 -05:00
SeanOMik
b76832ec05
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-09 00:46:42 -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
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
9307265a5a
Implement staged system execution, make it easier to add systems, remove some compiler warnings
2024-01-06 15:40:13 -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
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
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
9c6c32199d
Create simple function systems
2023-12-21 23:33:41 -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
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