Commit Graph

522 Commits

Author SHA1 Message Date
Henrik Rydgård 5a8e9c4f71 Port some accessors over from #9255 to be able to catch these changes and dirty state later. 2017-04-03 17:04:58 +02:00
Unknown W. Brackets 32a07b9aa9 Texcache: Sprinkle comments on the secondary cache. 2017-03-26 10:18:43 -07:00
Henrik Rydgard c8187dd35c If an entry already exists in the secondary texture cache, delete it properly. Fixes #9503 2017-03-26 18:33:11 +02:00
Unknown W. Brackets bc31415bfc Texcache: Fix "reuse changed textures".
Broken by 9876365, which stopped generating new texture names/ptrs.
2017-03-25 15:30:58 -07:00
Unknown W. Brackets bb39c2e458 Texcache: Rehash textures after mem invalidation.
Before, we were doing this when we enqueued.  We need to at least do this
when an invalidation is triggered.
2017-03-25 11:49:15 -07:00
Unknown W. Brackets 7fb7a4877d Texcache: Cleanup last bound tex invalidation.
When we're deleting, we're always about to bind a new tex.
2017-03-25 11:42:24 -07:00
Unknown W. Brackets 18484bed3d D3D11: Correct non-palette 16 bit textures on Win7.
These weren't being expanded.
2017-03-18 20:10:21 -07:00
Unknown W. Brackets 41dacb792c Texcache: Reduce duplicated expand32 code. 2017-03-18 20:09:38 -07:00
Unknown W. Brackets 404c61d77d Minor typo fixes. 2017-03-18 11:51:05 -07:00
Unknown W. Brackets d0ea5ed72b Texcache: Always mark videos as freq changing.
This prevents scaling of the first frame in some cases, when later frames
would also not be scaled.  Improves performance and reduces frame
mismatch.
2017-03-18 11:49:30 -07:00
Unknown W. Brackets 30ff5d6cdb Texcache: Apply freq change flag to minihash fail.
Previously, by mistake, only full hash fails could flag a frequently
changing texture - minihash checks skipped this, causing scaling
performance issues.

Fixes #9125.
2017-03-18 11:44:06 -07:00
Unknown W. Brackets bea6d787c0 Texcache: Cleanup some code formatting.
Makes it more readable.  No functional impact.
2017-03-18 11:43:26 -07:00
Henrik Rydgard 98763655e7 Plug a memory leak in the GLES texture cache. Fixes #9089 2017-02-23 22:41:13 +01:00
Henrik Rydgard 8eb668ea59 D3D11: Enable pixel depth rounding. GL: Fix a crash bug 2017-02-23 20:40:53 +01:00
Henrik Rydgard 0954ecf28c D3D11: Expand 16-bit texture formats to 32-bit if they are not supported, like on Windows 7. Part of issue #9317 2017-02-22 17:31:01 +01:00
Henrik Rydgard f24b1495ba Assorted texture format cleanup, prep for supporting D3D11 on Win7 2017-02-22 16:23:04 +01:00
Henrik Rydgard f772066c54 Remove some unnecessary error handling paths 2017-02-21 11:29:51 +01:00
Henrik Rydgard 78abf7453c Add some comments and a sanity check, fix a minor leak 2017-02-21 10:58:21 +01:00
Henrik Rydgard 195eb94c8e Texcache: Keep pointers to entries instead of full entries in the map. 2017-02-20 00:45:07 +01:00
Henrik Rydgard 4652c6af28 Some member variable renaming to match the convention 2017-02-20 00:19:58 +01:00
Henrik Rydgard f753573332 Unify HandleTextureChange 2017-02-20 00:13:21 +01:00
Henrik Rydgard f15e25c4b5 Centralize SetTexture 2017-02-20 00:05:23 +01:00
Henrik Rydgard aae2030a14 Unify Decimate() 2017-02-19 23:39:35 +01:00
Henrik Rydgard d9c20fbaff Unify ApplyTexture 2017-02-19 23:25:09 +01:00
Henrik Rydgard 665ffe34ab Centralize DeleteTexture 2017-02-19 22:50:04 +01:00
Henrik Rydgard dbafc6ef95 Centralize Texcache::Clear 2017-02-19 22:31:07 +01:00
Henrik Rydgard 4364569cf4 Move TexCacheEntry outside the TextureCacheCommon class. Nested structs are annoying. 2017-02-19 18:53:30 +01:00
Henrik Rydgard b0cdcfca3c D3D11: Proper fix for DXT5 crash. May also help #9134. 2017-02-18 02:41:17 +01:00
xebra 59fd5da438 Fix fake mipmap hacks. 2017-02-15 22:07:58 +09:00
xebra 945e603072 Fix fake mipmap issue related #5350 2017-02-15 01:02:50 +09:00
Henrik Rydgard 9f00b355ca Unify DownloadFramebufferForClut 2017-02-08 15:58:46 +01:00
Henrik Rydgard 454f2cf4bf Unify "SetOffsetTexture" 2017-02-08 15:48:36 +01:00
Henrik Rydgard 346b9d0c51 Texcache: Unify SetTextureFramebuffer 2017-02-08 15:44:01 +01:00
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