Commit graph

124 commits

Author SHA1 Message Date
Henrik Rydgård
2c84411426 Merge pull request #8720 from unknownbrackets/tex-range
Move texture decode/hash to after vertex decode
2016-05-07 22:15:19 +02:00
Unknown W. Brackets
4b89f44d1c Avoid scheduling a rescale when scaling is off.
This happens for PPGe and kernel textures, and replacements.  Before, we
would continually reload, trying to scale, but each time decide not to
scale.
2016-05-06 19:58:01 -07:00
Unknown W. Brackets
f1dda6a53d d3d9: Move texture hashing after vertex decode. 2016-05-01 16:20:05 -07:00
Unknown W. Brackets
1a26699607 Refactor texture loading to move things around. 2016-05-01 11:17:55 -07:00
Unknown W. Brackets
c20075b0e0 Pass video info to texture replacements. 2016-05-01 08:54:43 -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
f26c0328da Check alpha when loading replaced textures. 2016-05-01 00:30:53 -07:00
Unknown W. Brackets
e1fd6b6f21 Account for scaleFactor when saving clipped PNG. 2016-05-01 00:30:50 -07:00
Unknown W. Brackets
0c357c0ea3 Pass w/h in for replacement lookup.
So we can scale the w/h properly.
2016-05-01 00:30:44 -07:00
Unknown W. Brackets
d6e5df6f21 Save individual mip levels. 2016-05-01 00:30:41 -07:00
Unknown W. Brackets
565653c77b Save and load textures using full key.
Of course, need this, not just the hash.
2016-05-01 00:30:40 -07:00
Unknown W. Brackets
5dbc2b9267 Initial support for saving textures to PNGs. 2016-04-30 15:03:39 -07:00
Unknown W. Brackets
bf39e61458 Setup initial structure for texture replacements. 2016-04-30 13:44:31 -07:00
Unknown W. Brackets
1300631e9a Allow unswizzling with a dest pitch. 2016-03-26 23:38:50 -07:00
Unknown W. Brackets
f31fbb9417 Cleanup fbTexInfo_ when detaching framebuffers. 2016-03-26 12:30:34 -07:00
Unknown W. Brackets
aad04f2941 Centralize the texcache key format. 2016-03-26 12:30:33 -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
Unknown W. Brackets
add506a0d3 Cleanup differences in aniso handling.
Some places were not handling it as a power of two.
2016-03-20 19:31:02 +01:00
Henrik Rydgard
dced84c9fc Work on texture support, cube.elf works correctly. Delete unused code. 2016-03-20 19:30:11 +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
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
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
36c8b043f3 d3d9: Fix CLUT4 optimization color creation.
Fixes #8385.
2016-01-04 07:36:47 -08:00
Unknown W. Brackets
6cc69ed25f Factor out texture shader application.
This allows it to be reused between depal and indexed textures (second not
implemented yet.)
2016-01-03 23:50:49 -08:00
Unknown W. Brackets
14b350a5fe d3d9: Fix render-to-texture not working.
Broken by a copy/paste mistake in #7870 form OpenGL.
2016-01-03 23:44:43 -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
2494176919 Remove incorrect CLUT4 optimization. 2016-01-02 13:20:30 -08:00
Unknown W. Brackets
69daa75228 Move more common code around in texcache. 2015-12-31 11:41:02 -08:00
Unknown W. Brackets
a45f05c598 Move NotifyFramebuffer and LoadClut to common code. 2015-12-31 11:13:39 -08:00
Unknown W. Brackets
7a864f5aa1 Be forgiving when maxSeenV increases.
This still allows us to optimize < 512 heights, but at the same time,
doesn't hit spritesheets as hard and avoids the scaling penalty.
2015-12-30 17:15:50 -08:00
Unknown W. Brackets
d18164bd4d d3d9: Clean up some scaling handling. 2015-12-30 16:54:25 -08:00
Unknown W. Brackets
1339f6b1f3 Report formats on usage of rendered clut. 2015-11-26 14:31:46 -08:00
Unknown W. Brackets
3965cba187 Disable clut render for now as a "slow effect".
Also, add reporting.
2015-11-26 13:42:18 -08:00
Unknown W. Brackets
8e2557bafe Support render-to-clut, at least in some cases.
This is pretty much only tested with Brave Story.  See #6754.

There may be other cases which are not handled yet.
2015-11-26 13:31:17 -08:00
Henrik Rydgard
3acdd4e237 We had two global types called FBO, which is not ok. Fix that.
This caused some very strange behaviour in the MSVC debugger when looking at this stuff.
2015-11-14 13:24:51 +01:00
Henrik Rydgard
7e3cd987cd Fixes to D3D viewport management. For some reason, still having strange driver-bug-ish problems in unbuffered... 2015-11-12 14:47:43 +01:00
Henrik Rydgard
6b2862284b Minor cleanups 2015-11-02 20:09:59 +01:00
Henrik Rydgard
069a7b0d2f Move the viewport to the right place. 2015-11-02 20:08:00 +01:00
Henrik Rydgard
f4248cb550 Remove a whole lot of flipping special cases 2015-11-02 20:07:30 +01: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
52c3fc221b Also split DirectX9's texture cache. 2015-09-13 09:36:17 -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
Henrik Rydgard
1c68069083 refactor: Get rid of gstate from depalshadercache 2015-07-29 14:28:51 +02:00