summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authoriwubcode <iwubcode@users.noreply.github.com>2021-05-08 14:17:31 -0500
committeriwubcode <iwubcode@users.noreply.github.com>2021-10-08 18:17:20 -0500
commitaa07fde8a02c7dc3a5ce46f3aa4d4e1d30c87c4e (patch)
treefb13dd48fe68de614b12aa705714bff92b745102 /Source
parent0bbea6d67b344106a1e71ede1a90bcef7edb7760 (diff)
VideoCommon: update fov multiplier variables and add constant variables for defaults to the Free Look camera
Diffstat (limited to 'Source')
-rw-r--r--Source/Core/VideoCommon/FreeLookCamera.cpp29
-rw-r--r--Source/Core/VideoCommon/FreeLookCamera.h10
2 files changed, 21 insertions, 18 deletions
diff --git a/Source/Core/VideoCommon/FreeLookCamera.cpp b/Source/Core/VideoCommon/FreeLookCamera.cpp
index 3eca6e6270..a2566ffbd5 100644
--- a/Source/Core/VideoCommon/FreeLookCamera.cpp
+++ b/Source/Core/VideoCommon/FreeLookCamera.cpp
@@ -162,7 +162,7 @@ public:
void MoveForward(float amt) override
{
m_distance += -1 * amt;
- m_distance = std::clamp(m_distance, 0.0f, m_distance);
+ m_distance = std::max(m_distance, MIN_DISTANCE);
}
void Rotate(const Common::Vec3& amt) override
@@ -187,7 +187,7 @@ public:
CameraControllerInput::Reset();
m_rotation = Common::Vec3{};
m_rotate_quat = Common::Quaternion::Identity();
- m_distance = 0;
+ m_distance = MIN_DISTANCE;
}
void DoState(PointerWrap& p) override
@@ -199,7 +199,8 @@ public:
}
private:
- float m_distance = 0;
+ static constexpr float MIN_DISTANCE = 0.0f;
+ float m_distance = MIN_DISTANCE;
Common::Vec3 m_rotation = Common::Vec3{};
Common::Quaternion m_rotate_quat = Common::Quaternion::Identity();
};
@@ -207,26 +208,26 @@ private:
Common::Vec2 CameraControllerInput::GetFieldOfView() const
{
- return Common::Vec2{m_fov_x, m_fov_y};
+ return Common::Vec2{m_fov_x_multiplier, m_fov_y_multiplier};
}
void CameraControllerInput::DoState(PointerWrap& p)
{
p.Do(m_speed);
- p.Do(m_fov_x);
- p.Do(m_fov_y);
+ p.Do(m_fov_x_multiplier);
+ p.Do(m_fov_y_multiplier);
}
void CameraControllerInput::IncreaseFovX(float fov)
{
- m_fov_x += fov;
- m_fov_x = std::clamp(m_fov_x, m_min_fov_multiplier, m_fov_x);
+ m_fov_x_multiplier += fov;
+ m_fov_x_multiplier = std::max(m_fov_x_multiplier, MIN_FOV_MULTIPLIER);
}
void CameraControllerInput::IncreaseFovY(float fov)
{
- m_fov_y += fov;
- m_fov_y = std::clamp(m_fov_y, m_min_fov_multiplier, m_fov_y);
+ m_fov_y_multiplier += fov;
+ m_fov_y_multiplier = std::max(m_fov_y_multiplier, MIN_FOV_MULTIPLIER);
}
float CameraControllerInput::GetFovStepSize() const
@@ -236,20 +237,20 @@ float CameraControllerInput::GetFovStepSize() const
void CameraControllerInput::Reset()
{
- m_fov_x = 1.0f;
- m_fov_y = 1.0f;
+ m_fov_x_multiplier = DEFAULT_FOV_MULTIPLIER;
+ m_fov_y_multiplier = DEFAULT_FOV_MULTIPLIER;
m_dirty = true;
}
void CameraControllerInput::ModifySpeed(float amt)
{
m_speed += amt;
- m_speed = std::clamp(m_speed, 0.0f, m_speed);
+ m_speed = std::max(m_speed, 0.0f);
}
void CameraControllerInput::ResetSpeed()
{
- m_speed = 60.0f;
+ m_speed = DEFAULT_SPEED;
}
float CameraControllerInput::GetSpeed() const
diff --git a/Source/Core/VideoCommon/FreeLookCamera.h b/Source/Core/VideoCommon/FreeLookCamera.h
index bc2b30feae..07353dc609 100644
--- a/Source/Core/VideoCommon/FreeLookCamera.h
+++ b/Source/Core/VideoCommon/FreeLookCamera.h
@@ -65,11 +65,13 @@ public:
float GetSpeed() const;
private:
- float m_fov_x = 1.0f;
- float m_fov_y = 1.0f;
+ static constexpr float MIN_FOV_MULTIPLIER = 0.025f;
+ static constexpr float DEFAULT_SPEED = 60.0f;
+ static constexpr float DEFAULT_FOV_MULTIPLIER = 1.0f;
- float m_min_fov_multiplier = 0.025f;
- float m_speed = 60.0f;
+ float m_fov_x_multiplier = DEFAULT_FOV_MULTIPLIER;
+ float m_fov_y_multiplier = DEFAULT_FOV_MULTIPLIER;
+ float m_speed = DEFAULT_SPEED;
bool m_dirty = false;
};