Henrik Rydgard
634add3a46
Depalettize works at other resolutions than 1x. For some strange reason though if you change resolution in game it breaks.
2014-05-27 22:09:26 +02:00
Henrik Rydgard
d414327da7
Use a small offset to turn NEAREST into floor() when sampling the clut.
...
Minor fixes and cleanups.
2014-05-27 22:09:25 +02:00
Henrik Rydgard
d0e65054a4
A bit closer to working. Shadow visible
2014-05-27 22:09:22 +02:00
Henrik Rydgard
8fba7fa98e
Initial work on depalettization.
2014-05-27 22:07:24 +02:00
Unknown W. Brackets
ec0ae44200
Don't force nearest for colortest against black.
...
Should fix #4217 and be relatively safe. Probably it's a common colortest
ref color that's safe?
2014-05-15 23:52:16 -07:00
Unknown W. Brackets
99458d7797
Avoid forcing nearest/disabling linear if possible.
...
If we know that the test is trivially true, we don't need to worry about
the test. May help #4405 .
2014-05-15 22:38:44 -07:00
Unknown W. Brackets
2d12eb3394
Do not specify max LOD for no-mipmap textures.
...
Fixes #6077 , incorrect filtering with no mipmaps in Popolocrois.
This was causing it to use the mag filtering setting, even when minifying.
2014-05-13 22:40:58 -07:00
Unknown W. Brackets
f660c04983
Optimize double alpha blending for 1/0 textures.
...
If the blend is 2*a / 1-a, and the alpha is either 1 or 0, we can still
use color doubling instead. Fixes #3379 (Persona 2.)
2014-05-11 14:17:19 -07:00
Unknown W. Brackets
779a52e08a
Don't forget tex alpha if only a mip has none.
...
Mip levels should only move toward unknown.
2014-05-04 09:54:53 -07:00
raven02
abc5c86339
Split out texture level
2014-04-19 06:45:17 +08:00
raven02
3fc5ba22f4
Set texture bias in constant mode
2014-04-18 18:07:52 +08:00
Unknown W. Brackets
089fea7185
Ignore uncached/kernel bits in texture cache.
...
Although I suppose we could respect uncached and never cache...
Possibly #5879 .
2014-04-14 07:58:00 -07:00
Unknown W. Brackets
a411ec6d08
Don't use BGRA for upscaled textures.
...
Since they aren't color swapped. Fixes #5881 .
2014-04-14 07:34:04 -07:00
Unknown W. Brackets
419e812c9a
Also color swap DXT textures.
...
Probably #5878 .
2014-04-14 01:27:47 -07:00
Unknown W. Brackets
943353faac
Use GL_BGRA for 32 bit textures on Windows.
...
25% improvement in Popolocrois, probably decent gains in other games using
32-bit textures often. FF2 for example doesn't.
2014-04-14 00:28:31 -07:00
Unknown W. Brackets
ca6e4635aa
Fix texture cache invalidation.
2014-04-13 16:25:09 -07:00
Unknown W. Brackets
dc0eea0522
Propagate texcache hash fails through cluts.
...
In games that use palette swapping (hi, FF2), if we detect a change in
a texture, another texture with the same address but new clut might not be
rehashed.
This just marks all other textures as dangerous when a hashfail occurs.
Fixes FF2 from recent optimizations. It's slower, but still much faster
than before.
2014-04-13 16:20:58 -07:00
Unknown W. Brackets
6cfc61665d
Switch to a bitmask instead.
2014-04-13 14:45:55 -07:00
Unknown W. Brackets
4c1c694d4b
Use flags to avoid hashing textures when unchanged.
...
If only parameters change (like wrapping or clut, etc.) we don't need to
rehash the data - we know it hasn't changed.
Should reduce the distance between lazy texture hashing on and off.
2014-04-13 14:22:39 -07:00
Unknown W. Brackets
b6dc7eba8b
Simplify texture status checks a bit.
2014-04-13 13:19:35 -07:00
raven02
a6523dd507
Texture lod bias should be signed
2014-04-12 02:33:52 +08:00
Henrik Rydgård
89cf9230a1
Indentation fix
2014-04-02 10:28:03 +02:00
Henrik Rydgard
d83a5da6bd
Fix glTextureStorage2D issue by scaling w/h. Fixes #5625
2014-04-02 00:15:41 +02:00
Unknown W. Brackets
b800762ceb
Add a NEON-optimized version of XXH32.
...
This takes at least 40% less time to hash on NEON/ARM devices.
2014-03-25 00:34:55 -07:00
Unknown W. Brackets
b44d10a91e
Move texture unswizzling to decoder, use NEON.
2014-03-22 21:35:16 -07:00
Henrik Rydgard
8bf015fe16
texcache: SSE optimized version of the most common case of Unswizzle
...
(didn't put this in fast_math because it's pretty specific to PSP)
2014-03-23 01:50:50 +01:00
Unknown W. Brackets
66f501b981
Avoid an invalid enum on GLES2 texture creation.
...
My device logs an error, which I'm guessing has perf impact.
2014-03-22 09:34:22 +01:00
Unknown W. Brackets
f124e7dddc
Fix a minor typo.
2014-03-03 00:21:04 -08:00
Unknown W. Brackets
c7437bbe8e
Fix some minor warnings.
2014-03-03 00:08:32 -08:00
Unknown W. Brackets
4f1236c2ba
Don't use replaceImages for texture scaling = auto.
2014-03-02 01:39:41 -08:00
Unknown W. Brackets
034ae337b7
Handle texture scaling when render res is auto.
2014-03-02 01:39:40 -08:00
Unknown W. Brackets
15a608a6b9
Check for kernel textures in kernel ram properly.
...
Textures can perfectly legitimately be in volatile ram.
2014-03-01 16:11:56 -08:00
Henrik Rydgard
9c4d9461d4
Detect bad mipmap sizes, autogen mipmaps in this case. Might help part of #2603
...
(outrun)
2014-02-17 11:42:03 +01:00
Unknown W. Brackets
d2108a962e
Switch from USING_GLES2 to MOBILE_DEVICE.
...
Still using USING_GLES2 for, well, GLES2. But for things that are really
about mobile, we need a new define. Devices are coming that don't use
GLES2.
2014-02-08 16:37:58 -08:00
Bovine
2c0df8db79
Fixed infrequent segfault in CheckAlpha
...
pixelData was allocated with stride shorts per row and then advanced as
stride ints per row (reading every other row). Upshot: fully solid
16-bit textures with alpha channels should now properly categorize as
ALPHA_FULL
2014-02-02 13:51:45 -07:00
Unknown W. Brackets
b626daca59
Correct CheckAlpha() for un-rearranged textures.
...
Fixes #4403 . It was just not seeing the alpha when a texture had a large
bufw and a small w, and transparent only near the bottom - as in FF1's case.
2014-01-26 19:39:34 -08:00
Unknown W. Brackets
b48de952fd
Duplicate framebuffers textured onto themselves.
...
This fixes #2917 .
I verified that, at least for my card, blitting is much faster than
glReadPixels (by quite a margin.)
2014-01-20 07:54:39 -08:00
Unknown W. Brackets
09f1c795e5
Pass around texture pointers, not addresses.
...
This makes it possible to override it easier, rather than needing it in
PSP RAM.
2014-01-20 07:52:09 -08:00
Unknown W. Brackets
3e7f749f6d
Change the self message for separate reporting.
2014-01-20 01:07:01 -08:00
Henrik Rydgård
1e360d5c0a
Merge pull request #5153 from unknownbrackets/texcache2
...
Allow texture scaling on changed textures
2014-01-19 23:58:03 -08:00
Unknown W. Brackets
eeaeb91610
Disable scaling to odd multiples when unsupported.
...
May help #4000 .
2014-01-19 21:14:21 -08:00
Unknown W. Brackets
9680a7ccc7
Allow texture scaling on changed textures.
...
But only if they don't change very frequently. Should fix #1934 .
2014-01-19 20:54:48 -08:00
Henrik Rydgård
4fda9135da
Log dimensions of framebuffer/texture collisions. Update native.
2014-01-14 10:51:45 +01:00
Unknown W. Brackets
6b0853c2e0
Report when texturing from the render framebuffer.
2014-01-14 01:14:06 -08:00
raven02
271b680737
When mipmap disabled , maxlevel always 0 (set earlier)
2014-01-11 16:26:36 +08:00
Unknown W. Brackets
0f5aae9c49
Cleanup differences in DirectX9 texcache code.
2014-01-01 15:49:10 -08:00
Unknown W. Brackets
e477c50ea1
Fix #4922 , kill age checks in texcache.
2014-01-01 15:49:10 -08:00
Unknown W. Brackets
e24f45b9a4
Add ini options to configure the texture cache.
2014-01-01 15:49:09 -08:00
Henrik Rydgard
91531a9792
Get rid of "ATIClampBug", it's not a bug, it's just lack of full non-pow-2 texture support
2014-01-02 00:09:01 +01:00
Henrik Rydgård
079d9c04dd
Merge pull request #4942 from unknownbrackets/warnings
...
Fix some warnings, possibly fix Symbian
2013-12-30 00:28:48 -08:00