Commit Graph

426 Commits

Author SHA1 Message Date
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
Unknown W. Brackets
2013034bd6 d3d9: Log better when offscreen surface fails.
We're getting reporting that this is happening.
2015-06-21 12:50:02 -07:00
Henrik Rydgård
43744b0239 Merge pull request #7741 from hrydgard/frame-profiler
Frame profiler overlay
2015-05-26 00:42:01 +02:00
Henrik Rydgard
0b2a1dfe53 Profile a few more scopes 2015-05-26 00:39:27 +02:00
Unknown W. Brackets
4110a24d8f Fix Direct3D9 framebuffer upload conversion funcs.
All of the 16 bit formats were, afaict, wrong in different ways.
2015-05-25 10:47:37 -07:00
Unknown W. Brackets
c75010931c Use SSE in CheckAlpha scanning. 2015-05-24 22:55:43 -07:00
Henrik Rydgård
83182a0469 Merge pull request #7739 from hrydgard/screen-rotation
Implement basic screen rotation as requested in #297
2015-05-18 16:31:19 +02:00
Unknown W. Brackets
7d2507e0cc d3d9: Also track bone matrices for morph here. 2015-05-16 21:54:07 -07:00
Henrik Rydgard
95b6b50fd5 Disable screen rotation in non-buffered rendering (as it won't worK) 2015-05-12 22:44:18 +02:00
Henrik Rydgard
3f7830743a Implement basic screen rotation as requested in #297 . Does not work correctly in non-buffered rendering yet. 2015-05-12 21:01:15 +02:00
Henrik Rydgard
5d0d67140f Reverse Y when checking for rotated rects in Direct3D 9. Fixes #7738. 2015-05-12 20:01:04 +02:00
Unknown W. Brackets
4fa50a9a50 Reduce clut allocation size a bit.
Really think this probably should only be 1024 bytes, but need to work out
some more details before shrinking all the way.
2015-04-26 00:50:47 -07:00
Unknown W. Brackets
ab67c49ae9 Make sure we don't hash outside max bytes.
If we've never even loaded that much, play it safe.
2015-04-26 00:43:36 -07:00
Unknown W. Brackets
6e50a0b274 Allow depal palette entries to repeat.
This is what happens if the base is 0x10 in 8888 mode (means | 0x100.)
2015-04-26 00:36:08 -07:00
Unknown W. Brackets
c8fc9b0bf3 Cleanup some incorrect handling of clut offset. 2015-04-26 00:31:00 -07:00
Henrik Rydgård
a4a10588ed Merge pull request #7697 from unknownbrackets/texcache
Include texture size in the cache key
2015-04-20 00:08:44 +02:00
Henrik Rydgård
e979b3a6ce Merge pull request #7696 from unknownbrackets/texcache2
Unswizzle when reading from the swizzled mirror
2015-04-19 10:27:29 +02:00
Unknown W. Brackets
2e4d20883f d3d9: Reset viewport when clearing framebuf. 2015-04-18 17:40:21 -07:00
Unknown W. Brackets
eb98d89fc9 d3d9: clear alpha on switch from 565 buffer.
For parity with OpenGL.
2015-04-18 17:39:18 -07:00
Unknown W. Brackets
b12a595325 d3d9: Make sure to clear alpha to zero. 2015-04-18 17:39:18 -07:00
Unknown W. Brackets
b726a414d7 Log a reason when invalidating textures.
Makes debugging easier.
2015-04-18 12:42:13 -07:00
Unknown W. Brackets
58563324bd Include texture size in cache key.
This makes Tales of Destiny 2's towns significantly faster.  It may
however cause us to keep textures around for longer - but we still account
for them in our metrics and invalidation.
2015-04-18 12:42:13 -07:00
Unknown W. Brackets
ce9f404bef Unswizzle when reading from the swizzled mirror. 2015-04-18 12:39:04 -07:00
Unknown W. Brackets
1e8f2c2630 Allow clut load outside valid mem, fill with zero.
And only for the parts outside memory.
2015-04-12 22:38:17 -07:00
Henrik Rydgard
a19ea78b4b Consolidate the texture scaler code. 2015-04-08 22:52:49 +02:00
Henrik Rydgard
6660985210 Extract a bunch more color conversion loops. 2015-04-08 22:52:48 +02:00
Henrik Rydgard
b5acf15cc9 Extract some explicit loops into calls to color conversion functions. 2015-04-08 22:52:48 +02:00
Henrik Rydgard
c2cf2bd97e Move some more color conversion functions to ColorConv 2015-04-08 22:52:47 +02:00
Henrik Rydgard
31961eace9 Color conv attempt 2. Start consolidating simple color conversion functions in a single header+cpp. 2015-04-08 22:52:46 +02:00
Henrik Rydgård
a67f009679 Merge pull request #7668 from hrydgard/consolidate-spline
Consolidate spline code
2015-04-08 22:20:55 +02:00
Henrik Rydgard
058499e5bf De-dupe the spline code 2015-04-08 21:44:54 +02:00
Henrik Rydgard
2002576e9d DrawEngineCommon: Make it possible to call Flush from shared code. 2015-04-08 21:37:54 +02:00
Henrik Rydgard
ed8a3eaf6d Move the vertex decoder cache into DrawEngineCommon 2015-04-08 21:35:00 +02:00
Unknown W. Brackets
08032e4b14 Fix a leak in an error condition. 2015-04-08 11:58:00 -07:00
Unknown W. Brackets
10626e356d Avoid a potential divide by zero. 2015-04-08 11:57:59 -07:00
Unknown W. Brackets
2450724be2 Make Memory::Memcpy() execute memchecks directly.
This makes it easier to handle breakpoints in HLE.
2015-04-05 18:09:20 -07:00
sum2012
3549705195 Use better solution from @Bigpet 2015-03-23 20:29:51 +08:00
sum2012
433347e3b6 GPU:Do not "decimate" the usageFlags.
Fix #7625
2015-03-23 07:25:44 +08:00