mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-03-30 16:20:21 +00:00
Fix inverted preview rotation when using controller
This commit is contained in:
parent
2e6aa155a3
commit
d78b227670
@ -209,17 +209,17 @@ namespace MWInput
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
float rot[3];
|
float rot[3];
|
||||||
rot[0] = yAxis * dt * 1000.0f * mCameraSensitivity * (mInvertY ? -1 : 1) * mCameraYMultiplier / 256.f;
|
rot[0] = -yAxis * dt * 1000.0f * mCameraSensitivity * (mInvertY ? -1 : 1) * mCameraYMultiplier / 256.f;
|
||||||
rot[1] = 0.0f;
|
rot[1] = 0.0f;
|
||||||
rot[2] = xAxis * dt * 1000.0f * mCameraSensitivity * (mInvertX ? -1 : 1) / 256.f;
|
rot[2] = -xAxis * dt * 1000.0f * mCameraSensitivity * (mInvertX ? -1 : 1) / 256.f;
|
||||||
|
|
||||||
// Only actually turn player when we're not in vanity mode
|
// Only actually turn player when we're not in vanity mode
|
||||||
bool controls = MWBase::Environment::get().getInputManager()->getControlSwitch("playercontrols");
|
bool controls = MWBase::Environment::get().getInputManager()->getControlSwitch("playercontrols");
|
||||||
if (!MWBase::Environment::get().getWorld()->vanityRotateCamera(rot) && controls)
|
if (!MWBase::Environment::get().getWorld()->vanityRotateCamera(rot) && controls)
|
||||||
{
|
{
|
||||||
MWWorld::Player& player = MWBase::Environment::get().getWorld()->getPlayer();
|
MWWorld::Player& player = MWBase::Environment::get().getWorld()->getPlayer();
|
||||||
player.yaw(rot[2]);
|
player.yaw(-rot[2]);
|
||||||
player.pitch(rot[0]);
|
player.pitch(-rot[0]);
|
||||||
}
|
}
|
||||||
else if (!controls)
|
else if (!controls)
|
||||||
MWBase::Environment::get().getWorld()->disableDeferredPreviewRotation();
|
MWBase::Environment::get().getWorld()->disableDeferredPreviewRotation();
|
||||||
|
@ -249,17 +249,17 @@ namespace MWInput
|
|||||||
if (!mGuiCursorEnabled)
|
if (!mGuiCursorEnabled)
|
||||||
{
|
{
|
||||||
float rot[3];
|
float rot[3];
|
||||||
rot[0] = mGyroYSpeed * dt * mGyroVSensitivity * 4 * (mInvertY ? -1 : 1);
|
rot[0] = -mGyroYSpeed * dt * mGyroVSensitivity * 4 * (mInvertY ? -1 : 1);
|
||||||
rot[1] = 0.0f;
|
rot[1] = 0.0f;
|
||||||
rot[2] = mGyroXSpeed * dt * mGyroHSensitivity * 4 * (mInvertX ? -1 : 1);
|
rot[2] = -mGyroXSpeed * dt * mGyroHSensitivity * 4 * (mInvertX ? -1 : 1);
|
||||||
|
|
||||||
// Only actually turn player when we're not in vanity mode
|
// Only actually turn player when we're not in vanity mode
|
||||||
bool playerLooking = MWBase::Environment::get().getInputManager()->getControlSwitch("playerlooking");
|
bool playerLooking = MWBase::Environment::get().getInputManager()->getControlSwitch("playerlooking");
|
||||||
if (!MWBase::Environment::get().getWorld()->vanityRotateCamera(rot) && playerLooking)
|
if (!MWBase::Environment::get().getWorld()->vanityRotateCamera(rot) && playerLooking)
|
||||||
{
|
{
|
||||||
MWWorld::Player& player = MWBase::Environment::get().getWorld()->getPlayer();
|
MWWorld::Player& player = MWBase::Environment::get().getWorld()->getPlayer();
|
||||||
player.yaw(rot[2]);
|
player.yaw(-rot[2]);
|
||||||
player.pitch(rot[0]);
|
player.pitch(-rot[0]);
|
||||||
}
|
}
|
||||||
else if (!playerLooking)
|
else if (!playerLooking)
|
||||||
MWBase::Environment::get().getWorld()->disableDeferredPreviewRotation();
|
MWBase::Environment::get().getWorld()->disableDeferredPreviewRotation();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user