Commit Graph

3714 Commits

Author SHA1 Message Date
Henrik Rydgard
82ed16fbfd Make sure we detect ES 3.0 the same way in both vertex and fragment shaders 2016-01-23 16:57:24 +01:00
Unknown W. Brackets
e30ab95179 d3d9: Fix maxSeenV when not known.
And just make the code reused between both.  Fixes #8478.
2016-01-22 18:48:54 -08:00
Unknown W. Brackets
e964e15ed3 Correct savestate of running GE list.
Fixes #8459.
2016-01-21 22:14:47 -08:00
Henrik Rydgård
cd35684a46 Merge pull request #8454 from unknownbrackets/gpu-depth-round
Add pixel depth rounding to d3d9, gles2 and support forcing via config
2016-01-21 09:41:26 +01:00
Henrik Rydgård
24cad4cab5 Merge pull request #8468 from unknownbrackets/minor
Add a small assert and some warning fixes
2016-01-21 09:40:32 +01:00
Unknown W. Brackets
9354e253bd Fix some warnings in shader cache read.
In case something gets truncated.
2016-01-21 00:24:45 -08:00
Unknown W. Brackets
597596884e Add a smart C FILE * helper.
When all you want is for it to close by itself on error.
2016-01-20 23:33:56 -08:00
Unknown W. Brackets
79792a3c38 d3d9: Account for half-pixel z offset. 2016-01-20 22:53:47 -08:00
Unknown W. Brackets
0443fbebd0 Add methods to download depth to PSP RAM. 2016-01-20 22:11:03 -08:00
Unknown W. Brackets
2916298695 gedbg: Add scaled 16-bit z support. 2016-01-20 22:11:02 -08:00
Unknown W. Brackets
f9970dba94 d3d9: Respect per-pixel depth rounding.
Using the 16-bit depth range.
2016-01-20 22:11:01 -08:00
Unknown W. Brackets
27dba51e70 Add fallbacks where low quality depth is required.
Even on GLES2, this should work.  Also check the depth before applying
rounding - we might even already be 24-bit.
2016-01-20 22:11:01 -08:00
Unknown W. Brackets
79750ed1ad Add a config setting to control depth quality.
For those who want 1x PSP like behavior.
2016-01-20 22:11:00 -08:00
Unknown W. Brackets
57aa864c0c Blit depth when current, not max, size matches.
This is really what was implemented originally, this code was just not
updated to match when we started resizing framebuffers.

Fixes #6497.
2016-01-20 21:35:19 -08:00
Henrik Rydgård
4c8384aa09 Merge pull request #8461 from unknownbrackets/gpu-depth
Swap depth range to use minz/maxz
2016-01-20 10:19:51 +01:00
Unknown W. Brackets
02bf70a2d0 Where possible, rewrite 5551 stencil ops too.
We can in most cases fix INVERT, and also INCR so INVERT works when we
can't fix it.

Fixes #8422.
2016-01-19 23:17:58 -08:00
Unknown W. Brackets
e00c9940e8 Correct pixel depth rounding. 2016-01-19 20:19:50 -08:00
Unknown W. Brackets
5de7d2cf8f Oops, correctly center depth. 2016-01-19 07:51:56 -08:00
Unknown W. Brackets
6ef97f72d2 gedbg: Show scaled depth values properly. 2016-01-19 07:23:06 -08:00
Unknown W. Brackets
b80c02c272 Simulate depth clamping.
We'll allow extra space in both directions.  It's not exactly right, but
it's a fast approximation.
2016-01-19 07:12:58 -08:00
Unknown W. Brackets
0920f6c6eb Use minz/maxz as the depth range.
This allows values that fall outside the viewport, but still within the
depth range, to be drawn.
2016-01-19 07:12:57 -08:00
Henrik Rydgård
07a16705d8 Merge pull request #8452 from unknownbrackets/gpu-mpeg
Resize FBOs when video width is larger
2016-01-19 09:42:13 +01:00
Henrik Rydgård
b387795d2a Merge pull request #8447 from unknownbrackets/gpu-depth
Simplify depth calculation a bit
2016-01-19 08:51:43 +01:00
Unknown W. Brackets
d1b3768e49 Use a common func everywhere for float depth vals. 2016-01-18 19:29:45 -08:00
Unknown W. Brackets
51a4ba9950 softgpu: Support screen scaling filter.
No reason it has to be nearest, we have an option for that.
2016-01-17 23:47:42 -08:00
Unknown W. Brackets
83436991ec softgpu: Add support for normal UV projection. 2016-01-17 23:33:59 -08:00
Unknown W. Brackets
1a2c7ea487 softgpu: Recreate VAO on device lost. 2016-01-17 23:33:59 -08:00
Unknown W. Brackets
bf536e56f5 softgpu: Use common GLSL creation code.
This ought to handle leaving the app on Android, for example.  Not that
tons of Android users are using softgpu...
2016-01-17 23:33:58 -08:00
Unknown W. Brackets
99eb3f8a94 Instead, let's resize it in case there's rendering. 2016-01-17 23:07:00 -08:00
Unknown W. Brackets
7993866ee4 Invalidate FBOs when video width is larger.
This way we won't try to upload them wrong.  Fixes #8392.
2016-01-17 21:58:49 -08:00
Unknown W. Brackets
0828721bc2 Simplify depth calculation a bit.
This way we keep the original range better, so we should lose less
precision.
2016-01-17 18:30:58 -08:00
Unknown W. Brackets
516147680c Merge pull request #8182 from LunaMoo/minor_cleaning
Move "Display Rotation" and stretching options to display layout editor.
2016-01-17 14:54:39 -08:00
Unknown W. Brackets
6d6c415f2b Merge pull request #8443 from hrydgard/pseudo-shader-cache-gl-2
GL shader disk cache .. kind of
2016-01-17 14:28:05 -08:00
Henrik Rydgard
6df8573583 Minor fixes 2016-01-17 22:53:06 +01:00
Henrik Rydgard
b39206f922 Use the app cache directory on Android for the shader cache. 2016-01-17 22:15:23 +01:00
Unknown W. Brackets
b40c3fd839 Use video format when uploading to framebuffers.
Expected to help Bounty Hound, #8392.
2016-01-17 12:57:27 -08:00
Unknown W. Brackets
f60aef2e16 Add a more specific interface for video frames.
Since we know more about them.  No functional change yet.
2016-01-17 12:57:26 -08:00
Unknown W. Brackets
73bcf16612 Flush before loading the CLUT.
In case it's what was being rendered to.
2016-01-17 12:55:48 -08:00
Henrik Rydgard
e92beb619c Disable the shader cache for homebrew and other things that lack disc_id 2016-01-17 21:35:46 +01:00
Henrik Rydgard
dfcfb530d7 Log how long it takes to compile shaders at the start. 2016-01-17 20:53:58 +01:00
Henrik Rydgard
5cd5812239 Handle shader compile errors gracefully when loading shader cache. 2016-01-17 20:44:52 +01:00
Henrik Rydgard
b246442374 Hook up GL shader cache. Cache linked shader programs. 2016-01-17 20:44:51 +01:00
Henrik Rydgard
790210f6ef Minor fixes 2016-01-17 20:33:22 +01:00
Henrik Rydgard
36e1840ea0 More parameter removal 2016-01-17 20:33:22 +01:00
Henrik Rydgard
332310c2d6 Remove redundant parameters 2016-01-17 20:33:21 +01:00
Henrik Rydgard
dfa7a252de Get rid of some redundant vertex shaders when using unlit ShadeMapping (wipeout, etc) 2016-01-17 20:33:21 +01:00
Henrik Rydgard
c8b1064d20 GL Cleanup: No longer redundantly store the shader ID inside the shader objects 2016-01-17 20:33:14 +01:00
Henrik Rydgard
98c779ccb8 Fix #8255 by swapping the two portrait modes.
Thanks unknown.
2016-01-17 11:03:34 +01:00
LunaMoo
6061ad7579 Some improvements, comments and polishing. 2016-01-17 09:21:12 +01:00
LunaMoo
e4271fe1bc Integrate stretching options into display layout editor. 2016-01-17 09:18:41 +01:00