Commit graph

567 commits

Author SHA1 Message Date
Ukendio
cfee0e9861 Add relations as first class citizens 2024-05-10 18:02:23 +02:00
Marcus
d63de48546
Relationships (#31)
* Sparse set for entity records

* Swap dense indexes

* Improve inlining

* Add benchmarks

* Add tests for relations

* Add REST

* Merge upstream changes

* Add back symmetric and non idempotent add function

* Only swap when not last row

* Assert that the entity is alive

* Update example with relations
2024-05-10 17:59:57 +02:00
Marcus
6775601e21
Delete lib/a.lua 2024-05-10 14:27:38 +02:00
Ukendio
87d49e5134 Reorganize file 2024-05-09 02:20:54 +02:00
Marcus
1de41447b6
Remove observer for now (#34)
* Add case for when component is not found in archetype

* Check only destination archetype first

* Omit onNotifyAdd

* Remove observers
2024-05-08 01:04:11 +02:00
Marcus
91d3fcabc3
Add case for when component is not found in archetype (#25)
* Add case for when component is not found in archetype

* Check only destination archetype first

* Omit onNotifyAdd
2024-05-08 00:57:22 +02:00
Marcus
e8b78f7b50
Add world.delete (#22) 2024-05-07 21:33:42 +02:00
Marcus
bf5908a8f5
Adds symmetic and idempotent function add (#26)
* Adds symmetic function add

* Should be componentId not entityId
2024-05-07 21:32:56 +02:00
Marcus
887c892c2e
Move root archetype (#33) 2024-05-07 21:30:36 +02:00
alicesaidhi
517dbb99c0
Add svg images (#18)
* svg logo

* fix light mode

* Create logo_old.png
2024-05-07 18:37:14 +02:00
Marcus
d5414f1bc4
Add iter method (#20) 2024-05-05 15:22:02 +02:00
Ukendio
7cb610b097 Update mirror 2024-05-05 15:06:57 +02:00
Ukendio
7ad1ef37f0 Add exhaustive benchmarks for operations 2024-05-05 03:45:38 +02:00
Ukendio
5476491c5d Should index into column 2024-05-05 03:25:34 +02:00
Marcus
c0854e960e
Move benchmarks (#28)
* Update mirror

* Remove matter from main
2024-05-05 02:48:34 +02:00
howmanysmall
283243350f
Fix style and add some micro optimizations (#27) 2024-05-05 01:52:01 +02:00
Michael
cda04ce5a9
Update newMatter.lua (#19)
* Update newMatter.lua

* Update newMatter.lua

* Update newMatter.lua
2024-05-03 18:14:45 +02:00
Ukendio
c5daddd505 Increment component id 2024-05-03 15:31:16 +02:00
Ukendio
21f71f803d Fix mispelling 2024-05-03 14:45:48 +02:00
Ukendio
fbc5317cb0 Add banner 2024-05-03 14:45:11 +02:00
Michael
ad8f4ae660
Update newMatter.lua to match world-rewrite branch (#16)
* Update newMatter.lua to match world-rewrite branch

* Update newMatter.lua
2024-05-03 11:50:52 +02:00
Marcus
089c5d46a9
Fix component overriding when in disorder (#15)
* Fix component overriding when in disorder

* Add benchmarks

* Should use same data
2024-05-03 02:39:59 +02:00
Shane
e5e1aec6b2
Update README.md example and remove trailing whitespace (#14) 2024-05-02 15:33:31 +02:00
Ukendio
0a70e7887b Bump wally version 2024-05-01 15:58:15 +02:00
Ukendio
14d53e03c1 Index indices after archetype matched 2024-05-01 15:16:39 +02:00
Ukendio
14507ac775 Merge branch 'main' of https://github.com/Ukendio/jecs 2024-05-01 14:43:05 +02:00
Ukendio
d4d2f1fdb9 Add testkit 2024-05-01 14:41:51 +02:00
Marcus
9c5a84e3af
Cache column indices instead of pointers (#13) 2024-05-01 14:41:10 +02:00
Shane
d0fb1a1b1d
return an EmptyQuery when querying for components that are not tied to any entities (#12)
* Update init.lua

* export Query type

* replace EmptyQuery with static reference
2024-05-01 03:45:49 +02:00
Shane
1b1ae947d9
export Query type 2024-04-30 16:55:48 -07:00
Shane
e2d1156f72
Update init.lua 2024-04-30 16:45:42 -07:00
Marcus
4978ac7856
Separate ids and add tests (#11) 2024-05-01 01:09:15 +02:00
Marcus
275aa6ec6d
Move assertion up (#9) 2024-04-30 17:52:44 +02:00
Marcus
2ace031fa2
Provide better error messages (#7)
* Provide better error messages

* Inline getSmallestMap
2024-04-30 16:36:38 +02:00
Marcus
6adc3670ee
Revert "nil return for getSmallestMap() (#5)" (#8)
* Revert "nil return for getSmallestMap() (#5)"

This reverts commit 12287b12ef.

* Keep export world
2024-04-30 16:21:21 +02:00
Shane
12287b12ef
nil return for getSmallestMap() (#5)
* nil return for getSmallestMap()

* World type export
2024-04-30 16:06:46 +02:00
Marcus
dc73c03d74
Swap entity index for last row (#6) 2024-04-30 16:05:31 +02:00
Marcus
8ef960dad6
Add without (#4)
* Add without

* Return self

* Set compatibleAchetype after without

* Add test for Without

* Adding test
2024-04-29 15:21:05 +02:00
Marcus
13c703211d
Add without (#3) 2024-04-28 21:00:00 +02:00
Marcus
b75dc91a6a
Merge pull request #1 from Ukendio/add-observers
Add observers
2024-04-28 16:48:41 +02:00
Ukendio
8223b7ae91 Add observers 2024-04-28 16:46:40 +02:00
Ukendio
201383dcac Remove ROOT_ARCHETYPE in world initializer 2024-04-26 19:11:54 +02:00
Ukendio
ffca213183 Add description to benchmark 2024-04-26 00:10:34 +02:00
Ukendio
c532f55588 Bump wally version 2024-04-26 00:10:23 +02:00
Ukendio
3816777724 Include ECR in benchmark 2024-04-25 16:41:41 +02:00
Ukendio
44e6813cfb Remove mirror from benchmark example 2024-04-25 16:37:01 +02:00
Ukendio
74fe5be0c0 Index into archetypemap 2024-04-25 16:26:30 +02:00
Ukendio
b1626a9be0 Add mirror 2024-04-25 07:26:38 +02:00
Ukendio
33192b7a6f Remove hard coded behaviour 2024-04-25 07:26:13 +02:00
Ukendio
7d48063d20 Cache indices 2024-04-25 07:17:08 +02:00