Game Development Patterns and Best Practices by John P. Doran & Matt Casanova

Game Development Patterns and Best Practices by John P. Doran & Matt Casanova

Author:John P. Doran & Matt Casanova [Doran, John P.]
Language: eng
Format: azw3
Tags: COM012040 - COMPUTERS / Programming / Games, COM051390 - COMPUTERS / Programming / Open Source, COM051070 - COMPUTERS / Programming Languages / C++
Publisher: Packt Publishing
Published: 2017-04-27T04:00:00+00:00


Cloning an object

We have seen a few examples of how M5Component derived classes use the Prototype pattern. We will look at a few more important ones a little later, but for now let's look at how the M5Object class uses these Clone methods, and how the M5Object itself is cloned. Recall that the M5Object also had a Clone method. Even though this class isn't part of a hierarchy, it can still use the concept of the Prototype pattern to create cloneable instances. Here is the Clone method of the M5Object:

//M5Object.h

class M5Object//Everything is the same as before

{

public:

M5Object* Clone(void) const;

};

//M5Object.cpp

M5Object* M5Object::Clone(void) const

{

//create new object

M5Object* pClone = new M5Object(m_type);

//copy the internal data

pClone->pos = pos;

pClone->vel = vel;

pClone->scale = scale;

pClone->rotation = rotation;

pClone->rotationVel = rotationVel;



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.