Currently, when the list of existing archetypes changes, each currently existing Query on the ECS completely recalculates its list of matching archetypes the next time it is executed.
This is unnecessary. Instead, the Ecs.ArchetypeListChanged event should contain EventArgs which tell the handler which Archetypes were added/removed, so the Query can specifically check if these Archetypes are relevant for it when updating, instead of having to iterate through ALL Archetypes of the ECS.
Currently, when the list of existing archetypes changes, each currently existing Query on the ECS completely recalculates its list of matching archetypes the next time it is executed.
This is unnecessary. Instead, the Ecs.ArchetypeListChanged event should contain EventArgs which tell the handler which Archetypes were added/removed, so the Query can specifically check if these Archetypes are relevant for it when updating, instead of having to iterate through ALL Archetypes of the ECS.