diff options
Diffstat (limited to '')
-rw-r--r-- | src/render/Draw.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/render/Draw.cpp b/src/render/Draw.cpp index 7c5a48ad..e1f79697 100644 --- a/src/render/Draw.cpp +++ b/src/render/Draw.cpp @@ -1,6 +1,10 @@ #include "common.h" #include "patcher.h" #include "Draw.h" +#include "Frontend.h" +#include "Camera.h" + +float CDraw::ms_fAspectRatio; float &CDraw::ms_fNearClipZ = *(float*)0x8E2DC4; float &CDraw::ms_fFarClipZ = *(float*)0x9434F0; @@ -11,6 +15,18 @@ uint8 &CDraw::FadeRed = *(uint8*)0x95CD90; uint8 &CDraw::FadeGreen = *(uint8*)0x95CD71; uint8 &CDraw::FadeBlue = *(uint8*)0x95CD53; +void CDraw::CalculateAspectRatio() { + if (FrontEndMenuManager.m_PrefsUseWideScreen) { + ms_fAspectRatio = 1.7777778f; + } + else if (TheCamera.m_WideScreenOn) { + ms_fAspectRatio = 1.25f; + } + else { + ms_fAspectRatio = 1.3333334f; + } +} + static float hFov2vFov(float hfov) { float w = SCREENW; @@ -36,4 +52,7 @@ CDraw::SetFOV(float fov) STARTPATCHES InjectHook(0x4FE7B0, CDraw::SetFOV, PATCH_JUMP); + + Nop(0x46B618, 2); + Patch<float>(0x5F0A64, 1.3333334f); ENDPATCHES |