| 157 | } |
| 158 | |
| 159 | bool PostEffectManager::_addEffect( PostEffect *effect ) |
| 160 | { |
| 161 | EffectVector *effects = NULL; |
| 162 | |
| 163 | const String &binName = effect->getRenderBin(); |
| 164 | |
| 165 | switch( effect->getRenderTime() ) |
| 166 | { |
| 167 | case PFXAfterDiffuse: |
| 168 | effects = &mAfterDiffuseList; |
| 169 | break; |
| 170 | |
| 171 | case PFXEndOfFrame: |
| 172 | effects = &mEndOfFrameList; |
| 173 | break; |
| 174 | |
| 175 | case PFXBeforeBin: |
| 176 | effects = &mBeforeBinMap[binName]; |
| 177 | break; |
| 178 | |
| 179 | case PFXAfterBin: |
| 180 | effects = &mAfterBinMap[binName]; |
| 181 | break; |
| 182 | |
| 183 | case PFXTexGenOnDemand: |
| 184 | break; |
| 185 | } |
| 186 | |
| 187 | if ( effects == NULL ) |
| 188 | return false; |
| 189 | |
| 190 | effects->push_back( effect ); |
| 191 | |
| 192 | // Resort the effects by priority. |
| 193 | effects->sort( &_effectPrioritySort ); |
| 194 | |
| 195 | return true; |
| 196 | } |
| 197 | |
| 198 | bool PostEffectManager::_removeEffect( PostEffect *effect ) |
| 199 | { |
no test coverage detected