//----------------------------------------------------------------------------- void ManualObject::begin(const String& materialName, RenderOperation::OperationType opType, const String & groupName) { if (mCurrentSection) { OGRE_EXCEPT(Exception::ERR_INVALIDPARAMS, "You cannot call begin() again until after you call end()", "ManualObject::begin"); } mCurrentSection = OGRE_NEW ManualObjectSection(this, materialName, opType, groupName); mCurrentUpdating = false; mCurrentSection->setUseIdentityProjection(mUseIdentityProjection); mCurrentSection->setUseIdentityView(mUseIdentityView); mSectionList.push_back(mCurrentSection); mFirstVertex = true; mDeclSize = 0; mTexCoordIndex = 0; }
//----------------------------------------------------------------------------- void ManualObject::begin(const String& materialName, RenderOperation::OperationType opType, const String & groupName) { if (mCurrentSection) { OGRE_EXCEPT(Exception::ERR_INVALIDPARAMS, "You cannot call begin() again until after you call end()", "ManualObject::begin"); } // Check that a valid material was provided MaterialPtr material = MaterialManager::getSingleton().getByName(materialName, groupName); if( material.isNull() ) { LogManager::getSingleton().logMessage("Can't assign material " + materialName + " to the ManualObject " + mName + " because this " "Material does not exist. Have you forgotten to define it in a " ".material script?", LML_CRITICAL); material = MaterialManager::getSingleton().getByName("BaseWhite"); if (material.isNull()) { OGRE_EXCEPT(Exception::ERR_INTERNAL_ERROR, "Can't assign default material " "to the ManualObject " + mName + ". Did " "you forget to call MaterialManager::initialise()?", "ManualObject::begin"); } } mCurrentSection = OGRE_NEW ManualObjectSection(this, materialName, opType, groupName); mCurrentUpdating = false; mCurrentSection->setUseIdentityProjection(mUseIdentityProjection); mCurrentSection->setUseIdentityView(mUseIdentityView); mSectionList.push_back(mCurrentSection); mFirstVertex = true; mDeclSize = 0; mTexCoordIndex = 0; }