-
Book Overview & Buying
-
Table Of Contents
SDL Game Development
By :
We are now armed with a little XML knowledge but before we move forward, we are going to take a look at Object Factories. An object factory is a class that is tasked with the creation of our objects. Essentially, we tell the factory the object we would like it to create and it goes ahead and creates a new instance of that object and then returns it. We can start by looking at a rudimentary implementation:
GameObject* GameObjectFactory::createGameObject(ID id)
{
switch(id)
{
case "PLAYER":
return new Player();
break;
case "ENEMY":
return new Enemy();
break;
// lots more object types
}
}This function is very simple. We pass in an ID for the object and the factory uses a big switch statement to look it up and return the correct object. Not a terrible solution but also not a particularly good one, as the factory will need to know about each type it needs to create and maintaining the switch statement for many different...