diff options
| author | JMC47 <JMC4789@gmail.com> | 2021-04-23 21:21:53 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-04-23 21:21:53 -0400 |
| commit | 18e84361d925af09586b940b265f10e501e889d6 (patch) | |
| tree | dfaeb6832c9fcb9e1f6ce01305863198a760754e /Source/Core/VideoBackends/Software/Clipper.cpp | |
| parent | be5775614c9486540523c1b64cdba4d1d6202c31 (diff) | |
| parent | 97ea3a603ef4df32945dfd33300cedcb04ffa67a (diff) | |
Merge pull request #9660 from ezio1900/master
VideoCommon: Fix scissorOffset, handle negative value correctly
Diffstat (limited to 'Source/Core/VideoBackends/Software/Clipper.cpp')
| -rw-r--r-- | Source/Core/VideoBackends/Software/Clipper.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Source/Core/VideoBackends/Software/Clipper.cpp b/Source/Core/VideoBackends/Software/Clipper.cpp index 41a5e07d07..9c507de5ca 100644 --- a/Source/Core/VideoBackends/Software/Clipper.cpp +++ b/Source/Core/VideoBackends/Software/Clipper.cpp @@ -518,8 +518,10 @@ void PerspectiveDivide(OutputVertexData* vertex) Vec3& screen = vertex->screenPosition; float wInverse = 1.0f / projected.w; - screen.x = projected.x * wInverse * xfmem.viewport.wd + xfmem.viewport.xOrig - 342; - screen.y = projected.y * wInverse * xfmem.viewport.ht + xfmem.viewport.yOrig - 342; + screen.x = + projected.x * wInverse * xfmem.viewport.wd + xfmem.viewport.xOrig - bpmem.scissorOffset.x * 2; + screen.y = + projected.y * wInverse * xfmem.viewport.ht + xfmem.viewport.yOrig - bpmem.scissorOffset.y * 2; screen.z = projected.z * wInverse * xfmem.viewport.zRange + xfmem.viewport.farZ; } } // namespace Clipper |
