-----------------------------------------------------------------------
| 188 | } |
| 189 | //----------------------------------------------------------------------- |
| 190 | Controller<Real> *ControllerManager::createTextureWaveTransformer( |
| 191 | TextureUnitState *layer, TextureUnitState::TextureTransformType ttype, WaveformType waveType, |
| 192 | Real base, Real frequency, Real phase, Real amplitude ) |
| 193 | { |
| 194 | SharedPtr<ControllerValue<Real> > val; |
| 195 | SharedPtr<ControllerFunction<Real> > func; |
| 196 | |
| 197 | switch( ttype ) |
| 198 | { |
| 199 | case TextureUnitState::TT_TRANSLATE_U: |
| 200 | // Target value is a u scroll |
| 201 | val.reset( OGRE_NEW TexCoordModifierControllerValue( layer, true ) ); |
| 202 | break; |
| 203 | case TextureUnitState::TT_TRANSLATE_V: |
| 204 | // Target value is a v scroll |
| 205 | val.reset( OGRE_NEW TexCoordModifierControllerValue( layer, false, true ) ); |
| 206 | break; |
| 207 | case TextureUnitState::TT_SCALE_U: |
| 208 | // Target value is a u scale |
| 209 | val.reset( OGRE_NEW TexCoordModifierControllerValue( layer, false, false, true ) ); |
| 210 | break; |
| 211 | case TextureUnitState::TT_SCALE_V: |
| 212 | // Target value is a v scale |
| 213 | val.reset( OGRE_NEW TexCoordModifierControllerValue( layer, false, false, false, true ) ); |
| 214 | break; |
| 215 | case TextureUnitState::TT_ROTATE: |
| 216 | // Target value is texture coord rotation |
| 217 | val.reset( |
| 218 | OGRE_NEW TexCoordModifierControllerValue( layer, false, false, false, false, true ) ); |
| 219 | break; |
| 220 | } |
| 221 | // Create new wave function for alterations |
| 222 | func.reset( |
| 223 | OGRE_NEW WaveformControllerFunction( waveType, base, frequency, phase, amplitude, true ) ); |
| 224 | |
| 225 | return createController( mFrameTimeController, val, func ); |
| 226 | } |
| 227 | //----------------------------------------------------------------------- |
| 228 | Controller<Real> *ControllerManager::createGpuProgramTimerParam( |
| 229 | GpuProgramParametersSharedPtr params, size_t paramIndex, Real timeFactor ) |
no test coverage detected