void Renderables::addToRenderables(SharedPointer<GameObject> &i_GameObject) { size_t objecIndex; if (!i_GameObject.isNull()) { if (!isObjectRenderable(i_GameObject, objecIndex)) mRenderables.push_back(i_GameObject); } }//addToRenderables
bool Renderables::removeFromRenderables(SharedPointer<GameObject> &i_GameObject) { size_t objectIndex = 0x0f0f0f0f; if ((!i_GameObject.isNull()) && isObjectRenderable(i_GameObject, objectIndex) && (objectIndex != 0x0f0f0f0f)) { mRenderables.erase(mRenderables.begin() + objectIndex); return true; } return false; }//removeFromRenderables
bool Renderables::isObjectRenderable(SharedPointer<GameObject>&i_GameObject, size_t & o_index) { bool isObjectFound = false; if (!i_GameObject.isNull()) { for (size_t i = 0; i < mRenderables.size() && isObjectFound == false; i++) { if (mRenderables[i].isEqual(i_GameObject)) { mRenderables[i].isNull(); o_index = i; isObjectFound = true; } //if } // for } return isObjectFound; } //isObjectRenderable