-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rename World.Mask #39
Comments
I filed #32 and #38 to experiment with two alternatives: Here are the ideas I'm considering, some much worse than
|
I'm going to discard all short ideas. They don't describe how the values are used and even if they may look attractive to some (I liked The related to bits group tells us what the values are technically, but not what they represent. I think they share the same problems as the current The related to ECS group is interesting. I think The adjectives group doesn't look too bad when written down, but I'd prefer a noun so that the name can be used easily when talking about the code. This critique also applies to all short names, as well as the related to ECS group. Finally, in the other group, |
I'm going to leave this open for a few more days in case I have more ideas. So far, I don't think any of the alternatives is significantly better than |
I was reading up on ECS design in languages with manual memory managment, and I came across an article by Austin Morlan in which he used the term signature to describe exactly what the values of
I really like this name. It gives us a single word to precisely describe a concept in Goodluck. Instead of saying a bit mask describing the component composition of an entity, we can say: the entity's signature. |
I've just merged #40. |
This is a cosmetic change intended to establish a better vocabulary for describing ECS concepts. I think mask is very close and I don't want to change it if there isn't a significantly better name.
The problem that I see with mask is that the values of the
World.Mask
array are not used as masks. They're bitfields (or bitsets) but they're not used to mask other bitfields in Goodluck. Instead, systems define their masks (QUERY
) to filter entities to run on. The semantic difference is marginal, but I'd like to spend some effort and try to find a better name which would better describe how these values are used.The text was updated successfully, but these errors were encountered: