Henrik Rydgard
096018a163
Texcache: Unify AttachFramebuffer, misc
2017-02-08 15:37:40 +01:00
Henrik Rydgard
3b18f4452f
TexCache: Unify Invalidate, InvalidateAll, ClearNextFrame
2017-02-08 15:24:33 +01:00
Henrik Rydgard
29b30c197b
Unify CheckFullHash
2017-02-08 15:24:27 +01:00
Henrik Rydgard
d05ef4a859
Pass through the DrawContext to texturecaches and fb managers.
...
This is preparation for sharing more framebuffer code between the
backends.
2017-02-05 19:51:50 +01:00
Henrik Rydgard
7e46a153c0
Centralize DoBlockTransfer between the GPUs.
...
Required adding a pointer to the framebuffer manager and texture cache in
GPUCommon, which took a little bit of refactoring.
2016-12-21 18:07:17 +01:00
Unknown W. Brackets
8c6cdd0274
Correct CLUT load size.
...
Should be measured in 32 bytes not 16 bytes.
See #8850 .
2016-07-09 10:13:43 -07:00
Unknown W. Brackets
5962093ef5
Centralize the majority of texture decode.
2016-06-19 08:05:54 -07:00
Unknown W. Brackets
339f065a5c
Centralize texture deindexing more.
2016-06-19 07:14:31 -07:00
Unknown W. Brackets
1a26699607
Refactor texture loading to move things around.
2016-05-01 11:17:55 -07:00
Unknown W. Brackets
f5b93bc6f0
Remove global num videos hack.
2016-05-01 08:53:48 -07:00
Unknown W. Brackets
99d29356d7
Track video addresses in texture cache.
2016-05-01 08:39:18 -07:00
Unknown W. Brackets
bf39e61458
Setup initial structure for texture replacements.
2016-04-30 13:44:31 -07:00
Unknown W. Brackets
b4406957c9
Halve the default tex buf size.
...
Might as well not allocate 2.5 MB that most of the time won't be needed.
If it becomes needed, it'll allocate at runtime, but this should be
uncommon.
2016-03-26 23:38:51 -07:00
Unknown W. Brackets
1300631e9a
Allow unswizzling with a dest pitch.
2016-03-26 23:38:50 -07:00
Unknown W. Brackets
3593a7963e
Cleanup and clarify texture swizzling funcs.
2016-03-26 21:55:32 -07:00
Unknown W. Brackets
7d5f308494
Fix a crash where we used an old framebuf.
...
This was causing Breath of Fire 3 to crash, because it had an offset
framebuffer set that was never detatched.
2016-03-26 12:30:34 -07:00
Unknown W. Brackets
f31fbb9417
Cleanup fbTexInfo_ when detaching framebuffers.
2016-03-26 12:30:34 -07:00
Unknown W. Brackets
e8c8f19aec
Move framebuf attachment into central code.
...
It doesn't look like this will be different, and there's a bug in it.
2016-03-26 12:30:32 -07:00
Henrik Rydgard
bd17351ef9
Texcache: Minor refactor/cleanup
2016-03-22 23:56:55 +01:00
Henrik Rydgard
58b07e00d7
Assorted fixes and cleanups.
2016-03-06 11:46:41 -08:00
Unknown W. Brackets
c593b7cdfd
Ignored rendered CLUTs that are in the margins.
...
Fixes issues with Ridge Racer on some mobile devices.
2016-01-23 09:02:30 -08: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
c6ffed6484
gedbg: Add mechanics to grab CLUT buffer.
2016-01-10 09:25:19 -08:00
Henrik Rydgård
8b27bc51f5
Merge pull request #8389 from unknownbrackets/gpu-memcpy
...
Refactor VRAM download, optimize rendered CLUTs
2016-01-05 12:49:29 +01:00
Unknown W. Brackets
6b98b99006
Take the closest matching CLUT framebuffer.
2016-01-05 00:42:24 -08:00
Unknown W. Brackets
909d477719
Support CLUTs at an x offset.
...
Used by Kurohyo 2. Highly unlikely to be a mis-estimate within stride.
2016-01-05 00:02:58 -08:00
Victor Xie
cd63b6d057
Fixed build on Mac OS X.
2016-01-05 14:23:54 +08:00
Unknown W. Brackets
28a07c70c6
Explicitly download rendered cluts.
...
This avoids triggering logic that tries to get the sizing right, or
optimize frequent copies. CLUTs often get estimated wrong, so it's better
to copy just the correct range, always.
2016-01-04 21:29:03 -08:00
Unknown W. Brackets
e427d09628
Determine scaleFactor once per frame.
...
This way, for auto, we can properly treat it like scaleFactor = 1 when the
resolution is small.
2016-01-03 23:06:15 -08:00
Unknown W. Brackets
69daa75228
Move more common code around in texcache.
2015-12-31 11:41:02 -08:00
Unknown W. Brackets
83c4467888
Check for CLUT framebuffers only in VRAM.
2015-12-31 11:13:40 -08:00
Unknown W. Brackets
4f0f1b9582
Validate the mirrors are in range.
...
We apply some things based on the assumption that it's in range inside
AttachFramebuffer, so let's not pass wrong things in.
2015-12-31 11:13:40 -08:00
Unknown W. Brackets
a45f05c598
Move NotifyFramebuffer and LoadClut to common code.
2015-12-31 11:13:39 -08:00
Henrik Rydgard
edafa9bc17
Centralize the GPU state conversion functions
2015-10-24 23:49:05 +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
Unknown W. Brackets
c7e6f051e4
Split the texture application into two stages.
...
The latter simply applies the texture.
This makes our IsAlphaTestTriviallyTrue() check correct.
2015-09-13 09:30:39 -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
e1df8fc45f
Centralize sampling params and test optimizations.
2015-09-13 06:38:07 -07:00
Henrik Rydgard
4212bbb51e
Cleanup SoftwareTransform a bit more
2014-09-13 13:15:18 +02:00