diff options
author | Sergeanur <s.anureev@yandex.ua> | 2020-05-09 01:55:32 +0200 |
---|---|---|
committer | Sergeanur <s.anureev@yandex.ua> | 2020-05-09 01:56:53 +0200 |
commit | 4b8d6a3223c9eeaeebb979945553704987b3c625 (patch) | |
tree | 42ec648eaa09e35d68f8f13f4dfad277f8bd3946 /src/render | |
parent | anims streaming (diff) | |
parent | Merge remote-tracking branch 'origin/master' (diff) | |
download | re3-4b8d6a3223c9eeaeebb979945553704987b3c625.tar re3-4b8d6a3223c9eeaeebb979945553704987b3c625.tar.gz re3-4b8d6a3223c9eeaeebb979945553704987b3c625.tar.bz2 re3-4b8d6a3223c9eeaeebb979945553704987b3c625.tar.lz re3-4b8d6a3223c9eeaeebb979945553704987b3c625.tar.xz re3-4b8d6a3223c9eeaeebb979945553704987b3c625.tar.zst re3-4b8d6a3223c9eeaeebb979945553704987b3c625.zip |
Diffstat (limited to 'src/render')
-rw-r--r-- | src/render/Sprite.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/render/Sprite.cpp b/src/render/Sprite.cpp index 30eaf840..1dd1aaab 100644 --- a/src/render/Sprite.cpp +++ b/src/render/Sprite.cpp @@ -29,13 +29,17 @@ CSprite::CalcScreenCoors(const RwV3d &in, RwV3d *out, float *outw, float *outh, float recip = 1.0f/out->z; out->x *= SCREEN_WIDTH * recip; out->y *= SCREEN_HEIGHT * recip; - // What is this? size? - *outw = 70.0f/CDraw::GetFOV() * SCREEN_WIDTH * recip; #ifdef ASPECT_RATIO_SCALE - *outh = 70.0f/CDraw::GetFOV() / (DEFAULT_ASPECT_RATIO / SCREEN_ASPECT_RATIO) * SCREEN_HEIGHT * recip; + float fov = CDraw::ConvertFOV(DefaultFOV); #else - *outh = 70.0f/CDraw::GetFOV() * SCREEN_HEIGHT * recip; + const float fov = DefaultFOV; #endif + // this is used to scale correctly if you zoom in with sniper rifle + float fovScale = fov / CDraw::GetFOV(); + + *outw = fovScale * SCREEN_SCALE_AR(recip) * SCREEN_WIDTH; + *outh = fovScale * recip * SCREEN_HEIGHT; + return true; } |