diff options
Diffstat (limited to 'src/render/Draw.cpp')
-rw-r--r-- | src/render/Draw.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/render/Draw.cpp b/src/render/Draw.cpp index 7c5a48ad..b411176f 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,17 @@ uint8 &CDraw::FadeRed = *(uint8*)0x95CD90; uint8 &CDraw::FadeGreen = *(uint8*)0x95CD71; uint8 &CDraw::FadeBlue = *(uint8*)0x95CD53; +void +CDraw::CalculateAspectRatio() +{ + if(FrontEndMenuManager.m_PrefsUseWideScreen) + ms_fAspectRatio = 16.0f/9.0f; + else if(TheCamera.m_WideScreenOn) + ms_fAspectRatio = 1.25f; + else + ms_fAspectRatio = 4.0f/3.0f; +} + static float hFov2vFov(float hfov) { float w = SCREENW; @@ -36,4 +51,7 @@ CDraw::SetFOV(float fov) STARTPATCHES InjectHook(0x4FE7B0, CDraw::SetFOV, PATCH_JUMP); + + Nop(0x46B618, 2); + Patch<float>(0x5F0A64, 1.3333334f); ENDPATCHES |