Henrik Rydgard
edafa9bc17
Centralize the GPU state conversion functions
2015-10-24 23:49:05 +02:00
Henrik Rydgard
92389a4966
Use a common ShaderId class. Start moving shader ID code to GPU/Common
2015-10-24 23:24:06 +02:00
Henrik Rydgard
d3b265a3e4
Fix render resolution race condition. Should help #8002
2015-09-27 20:00:47 +02:00
Henrik Rydgard
b07b002040
Introduce "Compatibility Flags".
...
These should be used very restrictively, see comment in Compatibility.h.
Should help #8004 , by disabling depth rounding in Fight Night round 3.
2015-09-27 01:23:20 +02:00
Henrik Rydgard
70cb4372c1
Assorted fixes to auto resolution. Fixes too low resolution and also #8002 , plus notification spam
2015-09-25 19:10:09 +02:00
Henrik Rydgård
eed2f9d9d5
Merge pull request #8000 from unknownbrackets/gpu-minor
...
Allow framebufs to get smaller and affect the offset texture code
2015-09-25 09:47:16 +02:00
Henrik Rydgård
d8b43dd9e9
Fix #7999
2015-09-24 11:22:20 +02:00
Unknown W. Brackets
400b8886e6
Use the framebuf->height for offset calculation.
...
This way if we shrunk the framebuffer, it'll still work.
2015-09-23 23:59:39 -07:00
Henrik Rydgard
ec63663ad5
More consistent handling of resolution changes. Should help #7995
2015-09-23 12:25:38 +02:00
Henrik Rydgard
3232e46c36
Make debug build nearly warning free in MSVC 2015
2015-09-17 22:02:15 +02:00
Unknown W. Brackets
dff4aeb30f
Correct uv bound pointers in arm vertexjit.
2015-09-13 14:55:10 -07:00
Unknown W. Brackets
93e9d6cd56
Respect framebuffer offset in fb copies.
...
We need to offset the copy coordinates also, or we'll copy the wrong
thing.
2015-09-13 11:35:15 -07:00
Unknown W. Brackets
62de281e35
Use texture UV range to optimize framebuf copies.
2015-09-13 11:34:52 -07:00
Unknown W. Brackets
f4df7f076e
Hash less of 512 tall textures when possible.
...
This allows xBRZ to work better on such textures, and also may reupload
them less frequently.
2015-09-13 11:15:57 -07:00
Unknown W. Brackets
88eea00fe4
Add a safety against vertcache breaking uv checks.
2015-09-13 11:09:21 -07:00
Unknown W. Brackets
5c233fa545
Add initial decoding check for uv bounds.
2015-09-13 10:00:33 -07:00
Unknown W. Brackets
52c3fc221b
Also split DirectX9's texture cache.
2015-09-13 09:36:17 -07:00
Unknown W. Brackets
a3078a6ae1
Move late state apply after sw transform decode.
...
Need this so ApplyDrawStateLate() can use data from the decode.
2015-09-13 06:53:55 -07:00
Unknown W. Brackets
5360422310
Defer bind of shader blend copy until after verts.
2015-09-13 06:52:47 -07:00
Unknown W. Brackets
71afaffc20
Pack texture cache entries just a bit tighter.
2015-09-13 06:43:47 -07:00
Unknown W. Brackets
7d63a10fdd
Centralize texture cache entry structures.
2015-09-13 06:43:37 -07:00
Unknown W. Brackets
e1df8fc45f
Centralize sampling params and test optimizations.
2015-09-13 06:38:07 -07:00
Unknown W. Brackets
85533dad6e
Native merge part 2: update build files.
...
And a couple minor stragglers.
2015-09-06 13:06:57 -07:00
Henrik Rydgard
d822cbf60b
Move fbo.cpp/h from native into PPSSPP
2015-09-06 13:13:37 +02:00
Henrik Rydgard
72ae497350
Remove glstate usage except in the GPU implementation. Prepare for moving it into PPSSPP.
2015-09-06 12:42:15 +02:00
Henrik Rydgard
186d624ef3
Cleanup of FBO+blit flags. Requires the change in native to stop lying.
2015-09-05 22:40:45 +02:00
Henrik Rydgard
86a02fed61
Minor cleanup
2015-09-05 19:42:58 +02:00
Henrik Rydgard
08b340f423
More D3D hackery: Take inverted Z in proj matrix into account.
...
Also, *2 breaks it for no good reason so don't do that.
2015-08-30 22:45:24 +02:00
Henrik Rydgard
488c62e534
This makes slightly more sense than the last commit.
2015-08-29 20:38:19 +02:00
Henrik Rydgard
7b0a31ade5
Adjust D3D depth calculations to get them to match OpenGL as close as I can get it.
2015-08-29 17:43:09 +02:00
Henrik Rydgard
76eacf32f4
Change the offset to 0.0
2015-08-27 18:02:45 +02:00
Henrik Rydgard
2b7d08e3af
Also apply the GT fix in D3D, doh
2015-08-27 18:01:00 +02:00
Henrik Rydgard
bf6aef44cd
Oops, didn't finish the D3D code
2015-08-26 17:45:21 +02:00
Henrik Rydgard
d89da71057
Get rid of a division in the vertex shader by precomputing the inverse.
2015-08-26 17:40:06 +02:00
Henrik Rydgard
44ce0c8dee
Implement vertex shader depth rounding in DX9
2015-08-26 16:07:40 +02:00
Henrik Rydgard
1e8a1b801f
Rename viewportX1/X2 etc to scale + center, which is what they actually are.
2015-08-26 15:24:35 +02:00
Henrik Rydgard
29fc9e81a4
Use the gstate.getViewport* accessors.
2015-08-26 15:24:35 +02:00
Henrik Rydgard
d7f4c47c22
Refactor: Even more getting rid of gstate access in the framebuffer manager.
2015-08-05 12:13:14 +02:00
Henrik Rydgard
454a363876
Reorganize all the gstate fetching in FramebufferCommon to one place
2015-08-05 11:36:02 +02:00
Henrik Rydgard
d26b74d4d6
GPU refactor: Move accesses to gstate out of leaf functions
2015-08-05 01:03:49 +02:00
Henrik Rydgard
1c68069083
refactor: Get rid of gstate from depalshadercache
2015-07-29 14:28:51 +02:00
Henrik Rydgard
b5f7d9346f
Minor cleanups in GPU
2015-07-29 13:08:02 +02:00
Henrik Rydgard
c8fe0b2690
Minor simplification, buildfixes
2015-07-29 12:38:31 +02:00
Henrik Rydgard
2430c283a5
More GPU cleaning, removing uses of GPUState.h where not needed.
...
Want to get rid of direct accesses to GPUState in modules that may be reused in
my future next-gen backends, that will reformat display lists into command lists that will
then be optimized and executed, out of sync with the real GPUState.
Candidate modules that may be reused in full are Framebuffer and Depal, possibly TextureCache to some degree.
2015-07-29 12:37:49 +02:00
Henrik Rydgard
38a31fbd8b
Get rid of more uses of gstate from SplineCommon
2015-07-29 12:04:52 +02:00
Henrik Rydgard
53f062b7b2
refactor: Remove some uses of gstate from SplineCommon and a fex texcache functions
2015-07-29 11:40:45 +02:00
Henrik Rydgard
e857bd9a1c
Minor code simplification in texcache
2015-07-29 10:59:02 +02:00
Henrik Rydgård
6fee2b456c
GPU classes: Replace "virtual" with "override" for free function type checking
2015-07-25 14:23:02 +02:00
Unknown W. Brackets
7f8cf7f800
arm64: Use XXH64 for vertex hashing, etc.
...
Based on benchmarks, it performs better than XXH32 on an A57.
2015-07-22 21:38:01 -07:00
Unknown W. Brackets
a5cfd1a319
Oops, typo.
2015-06-21 19:58:42 -07:00