You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
They do not both have to perform the query. The application should recognize that both systems require the same entity ids. This can be addressed by:
When a query is added to RustApp, it's ID should be some kind of hash of it's component ids.
Queries should implement some kind of internal cache. if it has been run before, and no entities have been added or removed, the previous entity ids should be returned by the query.
There are also more complex cases for caches. For example:
A query has been performed. Entities have been added to one component but not the others. The query's cache is still valid.
A query has been performed. Entities have been removed from any of the components. The queyr needs to remove all the entities which have been removed from any of the components.
A query has been performed. The same entities have been added to all the components. The query can be updated with those entities.
In theory this can be implemented by having a cache on the commands, which registers which entities have been added / removed each spawn / delete. This can be built up until they are able to be added to the query result.
The text was updated successfully, but these errors were encountered:
If you have a two systems
They do not both have to perform the query. The application should recognize that both systems require the same entity ids. This can be addressed by:
RustApp
, it's ID should be some kind of hash of it's component ids.There are also more complex cases for caches. For example:
In theory this can be implemented by having a cache on the commands, which registers which entities have been added / removed each spawn / delete. This can be built up until they are able to be added to the query result.
The text was updated successfully, but these errors were encountered: