summaryrefslogtreecommitdiff
path: root/src/enhancements/freecam/freecam.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/enhancements/freecam/freecam.cpp')
-rw-r--r--src/enhancements/freecam/freecam.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/enhancements/freecam/freecam.cpp b/src/enhancements/freecam/freecam.cpp
index c5ee60319..07d0f6e51 100644
--- a/src/enhancements/freecam/freecam.cpp
+++ b/src/enhancements/freecam/freecam.cpp
@@ -236,9 +236,11 @@ void freecam_keyboard_manager(Camera* camera, Vec3f forwardVector) {
if (bFreecamUseController) {
if (fController.buttonDepressed & R_TRIG) {
fTargetPlayer = true;
+ FrameInterpolation_DontInterpolateCamera();
}
if (fController.buttonDepressed & L_TRIG) {
fTargetPlayer = false;
+ FrameInterpolation_DontInterpolateCamera();
}
if (fController.buttonPressed & L_JPAD) {
TargetPreviousPlayer = true;
@@ -273,6 +275,7 @@ void freecam_keyboard_manager(Camera* camera, Vec3f forwardVector) {
else if (wnd->GetWindowBackend() == Ship::WindowBackend::FAST3D_DXGI_DX11) {
if (FreecamKeyDown('F')) {
fTargetPlayer = !fTargetPlayer;
+ FrameInterpolation_DontInterpolateCamera();
}
if (FreecamKeyDown('N')) {
TargetPreviousPlayer = true;
@@ -309,6 +312,7 @@ void freecam_keyboard_manager(Camera* camera, Vec3f forwardVector) {
const uint8_t* keystate = SDL_GetKeyboardState(NULL);
if (FreecamKeyDown(SDL_SCANCODE_F)) {
fTargetPlayer = !fTargetPlayer;
+ FrameInterpolation_DontInterpolateCamera();
}
if (FreecamKeyDown(SDL_SCANCODE_N)) {
TargetPreviousPlayer = true;
@@ -345,6 +349,7 @@ void freecam_keyboard_manager(Camera* camera, Vec3f forwardVector) {
fRankIndex--;
camera->playerId = fRankIndex;
gScreenOneCtx->player = &gPlayers[fRankIndex];
+ FrameInterpolation_DontInterpolateCamera();
}
}
@@ -354,6 +359,7 @@ void freecam_keyboard_manager(Camera* camera, Vec3f forwardVector) {
fRankIndex++;
camera->playerId = fRankIndex;
gScreenOneCtx->player = &gPlayers[fRankIndex];
+ FrameInterpolation_DontInterpolateCamera();
}
}