19 Set(
nullptr, 0.0
f, 0.0
f);
24 Set(camera, translationSpeed, rotationSpeed);
27 void CameraRig::Set(std::shared_ptr<Camera>
const& camera,
float translationSpeed,
float rotationSpeed)
156 #if defined(GTE_USE_MAT_VEC) 157 mWorldAxis[0] = incremental * mWorldAxis[0];
158 mWorldAxis[2] = incremental * mWorldAxis[2];
160 incremental *
mCamera->GetDVector(),
161 incremental *
mCamera->GetUVector(),
162 incremental *
mCamera->GetRVector());
164 mWorldAxis[0] = mWorldAxis[0] * incremental;
165 mWorldAxis[2] = mWorldAxis[2] * incremental;
167 mCamera->GetDVector() * incremental,
168 mCamera->GetUVector() * incremental,
169 mCamera->GetRVector() * incremental);
181 #if defined(GTE_USE_MAT_VEC) 182 mWorldAxis[0] = incremental * mWorldAxis[0];
183 mWorldAxis[2] = incremental * mWorldAxis[2];
185 incremental*
mCamera->GetDVector(),
186 incremental*
mCamera->GetUVector(),
187 incremental*
mCamera->GetRVector());
189 mWorldAxis[0] = mWorldAxis[0] * incremental;
190 mWorldAxis[2] = mWorldAxis[2] * incremental;
192 mCamera->GetDVector() * incremental,
193 mCamera->GetUVector() * incremental,
194 mCamera->GetRVector() * incremental);
206 #if defined(GTE_USE_MAT_VEC) 208 incremental *
mCamera->GetDVector(),
209 incremental *
mCamera->GetUVector(),
210 incremental *
mCamera->GetRVector());
213 mCamera->GetDVector() * incremental,
214 mCamera->GetUVector() * incremental,
215 mCamera->GetRVector() * incremental);
227 #if defined(GTE_USE_MAT_VEC) 229 incremental *
mCamera->GetDVector(),
230 incremental *
mCamera->GetUVector(),
231 incremental *
mCamera->GetRVector());
234 mCamera->GetDVector() * incremental,
235 mCamera->GetUVector() * incremental,
236 mCamera->GetRVector() * incremental);
248 #if defined(GTE_USE_MAT_VEC) 250 incremental *
mCamera->GetDVector(),
251 incremental *
mCamera->GetUVector(),
252 incremental *
mCamera->GetRVector());
255 mCamera->GetDVector() * incremental,
256 mCamera->GetUVector() * incremental,
257 mCamera->GetRVector() * incremental);
269 #if defined(GTE_USE_MAT_VEC) 271 incremental *
mCamera->GetDVector(),
272 incremental *
mCamera->GetUVector(),
273 incremental *
mCamera->GetRVector());
276 mCamera->GetDVector() * incremental,
277 mCamera->GetUVector() * incremental,
278 mCamera->GetRVector() * incremental);
297 if (element.second ==
function)
299 mIndirectMap.erase(trigger);
339 if (mNumActiveMotions > 0)
bool PopMotion(int trigger)
bool PushMotion(int trigger)
bool SetInactive(MoveFunction function)
virtual void RollClockwise()
virtual void RollCounterclockwise()
void Set(std::shared_ptr< Camera > const &camera, float translationSpeed, float rotationSpeed)
virtual void MoveForward()
void Register(int trigger, MoveFunction function)
virtual void MoveBackward()
std::array< MoveFunction, MAX_ACTIVE_MOTIONS > mActiveMotions
bool SetActive(MoveFunction function)
void(CameraRig::* MoveFunction)(void)
Vector4< float > mWorldAxis[3]
std::shared_ptr< Camera > mCamera
std::map< int, MoveFunction > mIndirectMap