Changeset 10916 for code/branches/cpp11_v2/src/libraries/tools/Shader.cc
- Timestamp:
- Dec 2, 2015, 11:22:03 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/cpp11_v2/src/libraries/tools/Shader.cc
r10821 r10916 197 197 { 198 198 // iterate through the list of parameters 199 for ( auto & elem: this->parameters_)200 { 201 Ogre::Technique* techniquePtr = materialPtr->getTechnique( elem.technique_);199 for (const ParameterContainer& parameter : this->parameters_) 200 { 201 Ogre::Technique* techniquePtr = materialPtr->getTechnique(parameter.technique_); 202 202 if (techniquePtr) 203 203 { 204 Ogre::Pass* passPtr = techniquePtr->getPass( elem.pass_);204 Ogre::Pass* passPtr = techniquePtr->getPass(parameter.pass_); 205 205 if (passPtr) 206 206 { 207 207 // change the value of the parameter depending on its type 208 if ( elem.value_.isType<int>())209 passPtr->getFragmentProgramParameters()->setNamedConstant( elem.parameter_, elem.value_.get<int>());210 else if ( elem.value_.isType<float>())211 passPtr->getFragmentProgramParameters()->setNamedConstant( elem.parameter_, elem.value_.get<float>());208 if (parameter.value_.isType<int>()) 209 passPtr->getFragmentProgramParameters()->setNamedConstant(parameter.parameter_, parameter.value_.get<int>()); 210 else if (parameter.value_.isType<float>()) 211 passPtr->getFragmentProgramParameters()->setNamedConstant(parameter.parameter_, parameter.value_.get<float>()); 212 212 } 213 213 else 214 orxout(internal_warning) << "No pass " << elem.pass_ << " in technique " << elem.technique_ << " in compositor \"" << this->compositorName_ << "\" or pass has no shader." << endl;214 orxout(internal_warning) << "No pass " << parameter.pass_ << " in technique " << parameter.technique_ << " in compositor \"" << this->compositorName_ << "\" or pass has no shader." << endl; 215 215 } 216 216 else 217 orxout(internal_warning) << "No technique " << elem.technique_ << " in compositor \"" << this->compositorName_ << "\" or technique has no pass with shader." << endl;217 orxout(internal_warning) << "No technique " << parameter.technique_ << " in compositor \"" << this->compositorName_ << "\" or technique has no pass with shader." << endl; 218 218 } 219 219 this->parameters_.clear(); … … 228 228 { 229 229 const Ogre::Root::PluginInstanceList& plugins = Ogre::Root::getSingleton().getInstalledPlugins(); 230 for ( auto &plugin : plugins)230 for (Ogre::Plugin* plugin : plugins) 231 231 if (plugin->getName() == "Cg Program Manager") 232 232 return true;
Note: See TracChangeset
for help on using the changeset viewer.