Entities and components
We can think of entities as the objects in our game. They can be the player, an enemy character, an NPC, level decorations and backgrounds, or even the UI used to inform the player of their lives, power, and other stats. The entity is thought of as a container of components. Components are behaviors that dictate the appearance and actions of an entity. One might ask, "how is this any different from objects and functions?" The short answer is that objects and functions in inheritance-based design describe more of what our game objects are, while working with component-based structuring focuses more on what they do. As we deal with the classes and functionality of the GameplayKit framework, we will be able to get a better handle on this. In this framework, we'll see that entities and components are handled with the GKEntity
and GKComponent
classes, respectively.
Note
If you are still a bit confused about component-based structuring, check back in our...