Commit graph

104 commits

Author SHA1 Message Date
Unknown W. Brackets
6a7722283c Hash textures using cityhash rather than adding.
It should be more accurate, and for some games is faster.
For most it seems not hugely different.
2013-04-24 01:52:37 -07:00
Unknown W. Brackets
5d978fc626 Fix second texture cache key, duh. 2013-04-24 01:52:37 -07:00
Unknown W. Brackets
fd34a2e74d More aggressively decimate the second texcache. 2013-04-24 01:52:37 -07:00
Unknown W. Brackets
5bdf91ea43 Use a secondary texture cache for hash failures.
Animation is pretty common in 2D games, keep it cached.
2013-04-24 01:52:36 -07:00
Unknown W. Brackets
223bb6795a Don't rehash a non-matching texture. 2013-04-24 01:52:36 -07:00
Unknown W. Brackets
e2a9813d82 Basic mechanics for a secondary texcache, cleanup.
No need to set these values upon resuse.
2013-04-24 01:52:35 -07:00
Henrik Rydgard
42e4dc897e Add most Japanese kanji, the brute force way.
Hope everything supports 2048x2048 textures.
2013-04-18 14:59:00 +02:00
Henrik Rydgard
b12fc6e7aa UTF8-enable PPGE and add hiragana and katakana, let's see if this is enough. 2013-04-17 20:51:02 +02:00
Unknown W. Brackets
7b6f7abf42 Swap buffers after unswizzling, it's faster. 2013-04-17 01:07:00 -07:00
Unknown W. Brackets
4e4861a104 Optimize common cases for unswizzled indexed tex. 2013-04-16 23:36:56 -07:00
Unknown W. Brackets
8d55445b28 Optimize texture unswizzling by walking pointers.
Also fix rowWidth = 1, there's no way that was correct, it wasn't even
increasing the address it was reading from.
2013-04-16 23:36:55 -07:00
Unknown W. Brackets
6f41255947 Improve the common case of indexed texture reading.
Cuts from 3.8% to 0.8% in Crimson Gem Saga on Windows.
2013-04-13 16:30:56 -07:00
Henrik Rydgard
d46812a49f Implement pullrq #1240 better, I think. 2013-04-10 00:06:29 +02:00
Unknown W. Brackets
74dbd2b44c Use AllocateMemoryPages() for the texcache buffers. 2013-04-09 01:59:47 -07:00
Unknown W. Brackets
de79941ef4 Allow the tex buffers to grow if necessary.
Only does the 16 bit one for now.

Tactics Ogre uses a texture that is 1024x1024.  Ouch.
2013-04-09 01:59:33 -07:00
raven02
fe5c3d778c Set min/mag filter to GL_LINEAR when disable mipmapping 2013-04-03 16:43:09 +08:00
Unknown W. Brackets
5bb006391c Android buildfix. 2013-04-03 00:57:08 -07:00
raven02
87e24ea938 Add option to toggle mipmapping , default false 2013-04-03 07:38:13 +08:00
Henrik Rydgard
a9e436fcc1 Fix DXT5 alpha channel 2013-03-29 23:38:14 +01:00
Unknown W. Brackets
e4223dbcb0 Simplify adding report messages, add a bunch more. 2013-03-26 00:54:00 -07:00
Unknown W. Brackets
afbde31b42 Add some OpenGL related reporting errors. 2013-03-24 09:45:43 -07:00
Henrik Rydgard
1f5b6b7f59 Logging changes and cleanup 2013-03-15 21:01:57 +01:00
Henrik Rydgard
3727d1837d Safety check to prevent a crash in Wipeout on Android. However, something is broken if we get here. 2013-03-11 18:24:29 +01:00
Sacha
e916af3755 Revert pull 910, fix for numerous games, frameskip 2013-03-11 12:02:31 +10:00
raven02
5da0897fe3 Fix black screen in non-buffered rendering mode 2013-03-08 22:51:04 +08:00
Henrik Rydgard
bc15617392 Make un-buffered rendering much smarter, removing flicker.
This turns it into a very viable option for many games. You do lose some FX
but it can as a result even be used as a workaround for the massive glow
in Wipeout...
2013-03-03 13:00:21 +01:00
Unknown W. Brackets
347eb253dc Oops, will crash if we remove the end? 2013-02-25 14:04:47 -08:00
Unknown W. Brackets
64c42ffaf2 Fix some warnings generated by clang. 2013-02-24 10:23:31 -08:00
Henrik Rydgard
28979e9250 Some work toward better FBO handling. Fixes some things, breaks some things.. 2013-02-21 21:37:19 +01:00
Unknown W. Brackets
d8b1ea22f5 Cleanup some warnings and reuse some vars. 2013-02-18 08:34:51 -08:00
Xele02
2a6af9b8a3 Add displayList debug dialog 2013-02-17 01:28:43 +01:00
Henrik Rydgard
2301a3b49e Flip texcoord vertically when texturing from FBO to compensate for OpenGL coordinate systems 2013-02-15 00:31:39 +01:00
Henrik Rydgard
5ace14dd30 Log level adjustments 2013-02-12 22:09:40 +01:00
Henrik Rydgard
0982a29293 Some texturecache code cleanup. Fix missing DIRTY_AMBIENT.
The latter fixes the blinking caustics in the tunnel in Vineta K in Wipeout Pure.
And surely other things.
2013-02-12 21:01:53 +01:00
Henrik Rydgard
6965b82c62 Set lastBoundTexture when creating a new one. 2013-02-12 20:12:08 +01:00
Henrik Rydgard
174b9749d7 Minor speedup to 16-bit texture color conversion. 2013-02-12 19:17:38 +01:00
Unknown W. Brackets
8e51ce1beb Check the entire texture again, fixes wrong tex.
Not sure why, but only on Android.  Also faster on Windows.
2013-02-12 07:55:44 -08:00
Henrik Rydgard
f0c632131e Flush the draw buffer less. Default aniso to 0 on mobile, 8 on PC/the rest. 2013-02-11 19:03:11 +01:00
raven02
66417155c9 Add option to set AnisotropyLevel , default 4 2013-02-11 21:03:53 +08:00
Unknown W. Brackets
b9f61a9cf3 Don't blacklist an invalidated texture forever. 2013-02-10 23:29:44 -08:00
Unknown W. Brackets
7b9e90d434 OpenGL ES 2 buildfix again.
Sorry.
2013-02-10 18:20:34 -08:00
Unknown W. Brackets
4807a0b886 OpenGL ES2 buildfix.
Darn it.
2013-02-10 18:16:11 -08:00
Unknown W. Brackets
8a715f7b67 Don't forget a tex is unreliable until decimate. 2013-02-10 14:26:17 -08:00
Unknown W. Brackets
ca943f070c Don't delete cache invalidated textures.
Note: still decimates.
2013-02-10 14:20:59 -08:00
Unknown W. Brackets
f77a4985f1 Keep track of whether a texture is reliable or not. 2013-02-10 14:20:58 -08:00
Unknown W. Brackets
d56f3055b6 Don't check the power of two padding in texcache. 2013-02-10 14:20:58 -08:00
Unknown W. Brackets
f15c1839ac Use backoff to invalidate textures as well. 2013-02-10 14:20:58 -08:00
Unknown W. Brackets
5f3f3b8716 Speed up TextureCache::Invalidate() in debug. 2013-02-10 13:11:29 -08:00
Henrik Rydgard
87c9aa99c2 Let's specify MAX_LOD whether it works or not on gles 2... 2013-02-10 12:13:35 +01:00
Henrik Rydgard
db3f01044d Turn down texturecache logging a bit. Fix unfinished optimization. 2013-02-09 21:32:02 +01:00