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
{{ message }}
This repository has been archived by the owner on Jul 16, 2024. It is now read-only.
Currently, using :without(Components.B) in a query is similar to querying normally, using world:get(Components.B) to check if the component is present, and using continue to skip the iteration (though faster.) This is intended behavior and is documented.
forid, ainworld:get(Components.A):without(Components.B) do-- Do somethingendforid, ainworld:get(Components.A) doifworld:get(id, Components.B) docontinueend-- Do somethingend
However, this approach comes with a few downsides:
The cost of iteration on entities with excluded components is hidden.
The archetype is broader than required.
Giving :without the ability to narrow the archetype would resolve these issues, though the potential downsides outside of implementation complexity are unclear.
The text was updated successfully, but these errors were encountered:
Currently, using
:without(Components.B)
in a query is similar to querying normally, usingworld:get(Components.B)
to check if the component is present, and usingcontinue
to skip the iteration (though faster.) This is intended behavior and is documented.However, this approach comes with a few downsides:
Giving
:without
the ability to narrow the archetype would resolve these issues, though the potential downsides outside of implementation complexity are unclear.The text was updated successfully, but these errors were encountered: