| 120 | } |
| 121 | |
| 122 | void TextInputTweenApp::removeChar() |
| 123 | { |
| 124 | if( ! mCharacters.empty() ) { |
| 125 | mDyingCharacters.push_back( mCharacters.back() ); |
| 126 | mCharacters.pop_back(); |
| 127 | |
| 128 | if( ! mCharacters.empty() ) |
| 129 | mSceneDestMatrix = mCharacters.back().getDestMatrix(); |
| 130 | else |
| 131 | mSceneDestMatrix = mat4(); |
| 132 | |
| 133 | mat4 randStartMatrix = mSceneDestMatrix; |
| 134 | randStartMatrix *= translate( randVec3() * randFloat( 100.0f, 600.0f ) ); |
| 135 | randStartMatrix *= rotate( randFloat( 2.0f, 6.0f ), randVec3() ); |
| 136 | |
| 137 | mDyingCharacters.back().animOut( timeline(), randStartMatrix ); |
| 138 | |
| 139 | timeline().apply( &mSceneMatrix, mSceneDestMatrix, 1.0f, EaseOutAtan( 10 ) ); |
| 140 | } |
| 141 | } |
| 142 | |
| 143 | void TextInputTweenApp::update() |
| 144 | { |
nothing calls this directly
no test coverage detected