VideoCommon: Update active config when we check for config changes, this ensures Free Look settings are copied at the start of the frame. Also update the camera's controller type at this time

This commit is contained in:
iwubcode 2020-12-06 12:03:50 -06:00
parent a893c25b01
commit c7b24d6213

View File

@ -45,6 +45,7 @@
#include "Core/ConfigManager.h" #include "Core/ConfigManager.h"
#include "Core/Core.h" #include "Core/Core.h"
#include "Core/FifoPlayer/FifoRecorder.h" #include "Core/FifoPlayer/FifoRecorder.h"
#include "Core/FreeLookConfig.h"
#include "Core/HW/SystemTimers.h" #include "Core/HW/SystemTimers.h"
#include "Core/HW/VideoInterface.h" #include "Core/HW/VideoInterface.h"
#include "Core/Host.h" #include "Core/Host.h"
@ -63,6 +64,7 @@
#include "VideoCommon/FrameDump.h" #include "VideoCommon/FrameDump.h"
#include "VideoCommon/FramebufferManager.h" #include "VideoCommon/FramebufferManager.h"
#include "VideoCommon/FramebufferShaderGen.h" #include "VideoCommon/FramebufferShaderGen.h"
#include "VideoCommon/FreeLookCamera.h"
#include "VideoCommon/NetPlayChatUI.h" #include "VideoCommon/NetPlayChatUI.h"
#include "VideoCommon/NetPlayGolfUI.h" #include "VideoCommon/NetPlayGolfUI.h"
#include "VideoCommon/OnScreenDisplay.h" #include "VideoCommon/OnScreenDisplay.h"
@ -104,6 +106,7 @@ Renderer::Renderer(int backbuffer_width, int backbuffer_height, float backbuffer
MAX_XFB_HEIGHT} MAX_XFB_HEIGHT}
{ {
UpdateActiveConfig(); UpdateActiveConfig();
FreeLook::UpdateActiveConfig();
UpdateDrawRectangle(); UpdateDrawRectangle();
CalculateTargetSize(); CalculateTargetSize();
@ -401,6 +404,9 @@ void Renderer::CheckForConfigChanges()
const bool old_bbox = g_ActiveConfig.bBBoxEnable; const bool old_bbox = g_ActiveConfig.bBBoxEnable;
UpdateActiveConfig(); UpdateActiveConfig();
FreeLook::UpdateActiveConfig();
g_freelook_camera.SetControlType(FreeLook::GetActiveConfig().camera_config.control_type);
// Update texture cache settings with any changed options. // Update texture cache settings with any changed options.
g_texture_cache->OnConfigChanged(g_ActiveConfig); g_texture_cache->OnConfigChanged(g_ActiveConfig);