Adding GameObjects to the mix
GameObjects
are a fundamental part of any Unity game, which makes them an essential addition to our Factory pattern implementation. For our example, we’re going to add GameObjects
to each Creator
class variation we’ve already built so the items not only have a code component but also appear in the game scene.
Because the main building block of our item classes is the IItem
interface, we’re going to make each of our concrete items a MonoBehaviour
so Unity treats them as components. We’ll use the factories to instantiate new GameObjects
based on the pre-made models in the starter project and show you how to build up complex objects from scratch. In an ideal world, we would have the item classes own their own GameObjects
, but C# doesn’t allow interfaces to have instance fields.
If you’re asking yourself why I don’t just add an instance field to each item class and assign it a GameObject
in its...