Commit Graph
3990 Commits
Author SHA1 Message Date
Unknown W. Brackets c22953a4b9 Treat invalid blend factors as fixed consistently. 2015-11-19 06:48:06 -08:00
Henrik Rydgard af33011fd3 Buildfix 2015-11-18 12:13:36 +01:00
Henrik Rydgard 758ec5a027 Avoid clearing the backbuffer before actually doing any rendering to fbo on every frame - instead, clear when stretching the framebuffer into place. May save quite a bit of bandwidth on tiler GPUs with naive GL drivers. 2015-11-18 12:13:35 +01:00
Henrik Rydgård 563ad0fa10 Merge pull request #8219 from unknownbrackets/gpu-logicop
Make logic ops flush on GLES
2015-11-16 01:21:43 +01:00
Unknown W. Brackets 7e71bd653f Allow logic ops in GLES.
We have a backup plan for them now, so they need to flush.

Fixes #2917.
2015-11-15 15:06:37 -08:00
Unknown W. Brackets 2ed8aab2d7 Avoid direct refs to OES_texture_npot.
So that we can control it centrally in GLES_GPU.
2015-11-15 15:06:09 -08:00
Henrik Rydgård 5b21c1aa39 Merge pull request #8174 from hrydgard/remove-option-depthrangehack
Remove the depth range hack option, turning it into an ugly game specific compatibility hack.
2015-11-15 23:05:20 +01:00
Henrik Rydgard 4b360a571c Remove the depth range hack option, turning it into an ugly game specific compatibility hack.
I hate doing this, but it's not really better off as an option.

See #8171
2015-11-15 23:00:25 +01:00
Unknown W. Brackets 010a7ac1af Correct state leakage on shader blend/self render.
This makes #2917 look right on desktop with blit and logic ops disabled.
2015-11-15 13:12:29 -08:00
Unknown W. Brackets bf7f07f918 Optimize inverse blending modes, where possible.
Also, take advantage of cases where we can double src and src.a in the
shader, which can in some cases get us closer to accurate.
2015-11-14 12:37:32 -08:00
Unknown W. Brackets 1be77e3893 Fix crash in headless GPU tests/bad settings.
Really any situation in which sPostShaderName is not exactly "Off", but
said shader doesn't exist.  In headless, it was "".
2015-11-14 11:00:10 -08:00
Unknown W. Brackets 294f09a61f Call ResetShaderBlending() from ApplyDrawState().
Cleaner this way.
2015-11-13 23:15:28 -08:00
Unknown W. Brackets 13a09647e2 d3d9: Disable shader blending, not implemented.
Fixes bad graphics in Ridge Racer, etc.
2015-11-13 23:11:06 -08:00
Henrik Rydgard 639d56aa27 Remove a few minor differences between the state mapping code in the two backends 2015-11-12 18:11:32 +01:00
Henrik Rydgard 4a71d4cda2 The ConvertBlendState machinery is now pure, so move it out to GPU/Common 2015-11-12 18:11:20 +01:00
Henrik Rydgard 091fb28f55 Extract the glstate.blendcolor call from ConvertBlendState 2015-11-12 18:11:19 +01:00
Henrik Rydgard 71103cb0ca Make ConvertBlendState into a reasonably pure function with no side effects 2015-11-12 18:11:15 +01:00
Henrik Rydgard e97d771e0f Extract blend state mapping into a function. 2015-11-12 15:57:33 +01:00
Henrik Rydgård ce28ee28f1 Merge pull request #8198 from hrydgard/centralize-viewport-mapping
Centralize viewport mapping
2015-11-12 15:27:31 +01:00
Henrik Rydgard 45da00d381 Fix viewport offset in gl non-buffered 2015-11-12 15:22:20 +01:00
Unknown W. Brackets a821cd3f12 Disable UV range opt. for shader blending FBO.
Obviously this is unsafe, not sure what I was thinking...
2015-11-09 23:31:34 -08:00
Henrik Rydgard a6ced1d0b4 Move viewport/stencil conversion out into GPUStateUtils.cpp, use it in D3D as well.
D3D bugfixes. Not perfect yet.
2015-11-09 21:21:54 +01:00
Henrik Rydgard 77f2b0c9e9 Extract the viewport/scissor conversion into a function. 2015-11-09 21:21:54 +01:00
Unknown W. Brackets 43238322ef Let's try a more limited heuristic. 2015-11-08 09:38:18 -08:00
Unknown W. Brackets 2c0b662484 Report depth test equality checks. 2015-11-08 09:04:12 -08:00
Unknown W. Brackets ac31c66a60 Fix #8169, really dumb typos.
Sorry.
2015-11-04 19:40:53 -08:00
Henrik Rydgard aac0cd3227 Minor consistency improvement between d3d and opengl code 2015-11-05 00:08:48 +01:00
Henrik Rydgard 5bfcd07b35 Viewport clipping/overage fix 2015-11-04 23:03:14 +01:00
Henrik Rydgard ffe35f73af Fix viewport vertical positioning, fixing #8165. However, God Eater bloom breaks. Why?? 2015-11-04 23:03:13 +01:00
Henrik Rydgard a6d6a68a95 Oops 2015-11-04 22:28:54 +01:00
Henrik Rydgard f3b0562bd8 Improve viewport terminology a bit. No functional change. 2015-11-04 22:03:29 +01:00
Henrik Rydgård 452ed71e68 Couple of LLVM compiler warnings 2015-11-04 12:46:38 +01:00
Henrik Rydgard 067431b35b Region is not used in the viewport calculations - remove wrong commented out code 2015-11-04 11:04:47 +01:00
Henrik Rydgård 8145cc789a Merge pull request #8163 from unknownbrackets/gpu-minor
Zero out dst blend factors in 565
2015-11-04 10:07:00 +01:00
Unknown W. Brackets 2b832e7f6c Zero out dst blend factors in 565. 2015-11-04 00:35:55 -08:00
Henrik Rydgård 606c57d478 Merge pull request #8158 from unknownbrackets/gpu-minor
Avoid polluting glstate in GetTempFBO()
2015-11-04 09:14:18 +01:00
Unknown W. Brackets 95a5bd62d5 Switch a few other things to use force(). 2015-11-03 23:02:02 -08:00
Unknown W. Brackets 5ff3e6a5e7 Avoid polluting glstate in GetTempFBO().
Since we do this "late", we might overwrite important settings, such as
stencil, color masks, etc.

This affects both depal and fbo shader blending.

Didn't do it for all ClearBuffer()s, since I'm worried some might be
intentionally resetting state.
2015-11-03 22:37:19 -08:00
Unknown W. Brackets 7af7b2bc6d Add methods to "force" glstate to certain values.
This way we don't have to use totally different syntax when doing:

   glstate.scissorTest.force(false);
   // Do stuff that needs scissorTest temporarily off.
   glstate.scissorTest.restore();

There's cleaner options maybe but this is a simple first step.
2015-11-03 22:37:05 -08:00
Henrik Rydgard 44be9f2a50 Move Windows GPU init code into Windows/GPU 2015-11-03 23:22:09 +01:00
Unknown W. Brackets bc0a694ec2 Unbreak depth range test reporting.
Was broken in 9e18fb7e90.
2015-11-03 00:14:53 -08:00
Unknown W. Brackets 869260087c Fix screenshots to be right side up, not crash. 2015-11-02 19:43:36 -08:00
LunaMooandLuna 71a0928d6b Flip display layout editor coordinates to match #8130:) 2015-11-03 00:28:47 +01:00
Henrik Rydgard b411fc0455 Postproc: Scale pixel deltas and round off screen position. Fixes #8016 2015-11-02 22:22:48 +01:00
Henrik Rydgard a1ad278005 unknownbrackets' fixes for last commit 2015-11-02 20:51:40 +01:00
Unknown W. BracketsandHenrik Rydgard 3a7edd8cac Switch viewport overage to the new world of sanity. 2015-11-02 20:11:58 +01:00
Henrik Rydgard 95240d46e8 Set the flipped flag to false on debug buffers 2015-11-02 20:11:36 +01:00
Henrik Rydgard 14652f0650 Make some optional arguments non-optional. 2015-11-02 20:10:29 +01:00
Henrik Rydgard bd64d5ba61 Fix a Y flip typo 2015-11-02 20:10:19 +01:00
Henrik Rydgard 6b2862284b Minor cleanups 2015-11-02 20:09:59 +01:00