Commit graph

27 commits

Author SHA1 Message Date
BimDav
4ef18e2608
Resource change tracking (#388)
* Add mutated tracker on resources and ChangedRes query for added or mutated resources.

* ResMut:::new() now takes a reference to a 'mutated' flag in its archetype.

* Change FetchResource so that get() returns an Option. Systems using Resources will only be called if all fetched Resources are Some(). This is done to implement ChangedRes, which is Some iff the Resource has been changed.

* Add OrRes for a logical or in tuples of Resource queries.

* Separate resource query get() in is_some() and get() methods for clarity

* Remove unneeded unsafe

* Change ResMut::new()
2020-09-10 13:15:02 -07:00
Grant Moyer
586303fd53
Parallel queries (#292)
Add support for Parallel Queries
2020-09-08 12:18:32 -07:00
Robbie Davenport
4aabe983ec
Switch usage of std HashMap/HashSet default hasher, to aHash algo (#258)
switch to ahash for HashMaps and HashSets via a new bevy_utils crate
2020-08-28 17:08:51 -07:00
Lachlan Sneff
1eca55e571
Replace std synchronization primitives with parking_lot (#210)
* Replace std::sync::Mutex with parking_lot::Mutex
* Replace std::sync::RwLock with parking_lot::RwLock
2020-08-21 14:55:16 -07:00
Victor "multun" Collod
c38420f1e9 enforce clippy for all target and features 2020-08-16 07:20:06 -07:00
Victor "multun" Collod
d138647818 enforce cargo fmt --check 2020-08-16 05:02:06 -07:00
Victor "multun" Collod
1ec7183494 profiling: fix build 2020-08-16 02:06:59 -07:00
John Doneth
589af3dc51 Add Command::remove_one 2020-08-13 19:38:38 -04:00
Carter Anderson
423c5e3e0f ecs: prepare for publishing 2020-08-09 18:16:12 -07:00
Carter Anderson
3d09459813 add more doc comments and clean up some public exports 2020-08-09 16:13:04 -07:00
Carter Anderson
f85ec04a48 ecs: prepare system ranges based on stage and thread locals 2020-07-30 13:19:55 -07:00
Carter Anderson
2929197d9b render: add RenderPass queries. move ui to its own pass 2020-07-28 20:11:27 -07:00
Carter Anderson
bd8e979de8 ecs: only borrow/iterate archetypes currently used by a given query 2020-07-28 16:37:37 -07:00
Carter Anderson
64cc382477 ecs: move copy of QueryBorrow into bevy_ecs and fix perf regressions 2020-07-28 16:17:21 -07:00
Carter Anderson
7212b70478 rustfmt changes 2020-07-28 14:24:03 -07:00
Moxinilian
311f04f858 transform: implement hierarchical entity despawn 2020-07-28 00:10:32 +02:00
Thomas Herzog
b4c185eb0c cargo fmt 2020-07-26 21:10:18 +02:00
Carter Anderson
6cad80d572 transform|ui: fix transform update lag 2020-07-23 18:26:08 -07:00
Carter Anderson
d79339ea62 transform: add more control parent/child ordering and make parent/children insertion atomic 2020-07-23 17:32:53 -07:00
Carter Anderson
85bd0342d4 ecs: add write_world and write_resources to Commands
this allows for custom commands
2020-07-23 13:12:38 -07:00
Carter Anderson
f82af10a69 ecs: component removal tracking 2020-07-22 17:57:13 -07:00
Carter Anderson
ae30175e18 ecs: fix query.get::<T>() access 2020-07-21 22:00:55 -07:00
Carter Anderson
0c2e26ddde Revert "ecs: remove &mut requirement on query iterators"
This reverts commit 6dc1d07cbc.
2020-07-21 20:12:15 -07:00
Carter Anderson
6dc1d07cbc ecs: remove &mut requirement on query iterators 2020-07-20 13:59:51 -07:00
Carter Anderson
946d5d1024 ecs: refactor resources
fixes unintialized global resource memory
2020-07-19 14:23:06 -07:00
Carter Anderson
fe1adb6cf6 ui: focus/click/hover system. initial buttons 2020-07-18 14:08:46 -07:00
Carter Anderson
9f26a453c6 ecs: simplify imports 2020-07-16 19:20:51 -07:00