Commit graph

761 commits

Author SHA1 Message Date
Peter Thoman
1f7a3776b3 Only scale textures which were never invalidated 2013-05-01 20:31:57 +02:00
Unknown W. Brackets
d412cf5c64 Approximate better with two fixed blend colors.
Having one be constant, or having a nearby blend, is better than fixing
both to 1.0 or 0.0.
2013-05-01 08:00:52 -07:00
Peter Thoman
e19442a8c1 Eliminated C++11 lambdas 2013-05-01 16:31:28 +02:00
Peter Thoman
95e6a5c4ea Adjusted Texture Scaler to use global threadpool 2013-05-01 14:12:10 +02:00
Peter Thoman
af68180319 Parallelized texture scaling 2013-05-01 14:12:09 +02:00
Peter Thoman
5e918a644f Moved texture scaling to separate file 2013-05-01 14:12:09 +02:00
Unknown W. Brackets
4009a37692 Improve blending with two fixed colors.
It's not right, but it's less bad.  Maybe there's a better way?

Improves Popolocrois and Lunar (battle) blending issues.
2013-05-01 00:55:30 -07:00
Peter Thoman
2212e7f609 Fixed threading issue pointed out by unknownbrackets and made texture scaling changes apply immediately 2013-04-30 17:58:05 +02:00
Henrik Rydgård
b7cd4d63e2 Merge pull request #1599 from PeterTh/master
xBRZ texture scaling
2013-04-30 04:29:36 -07:00
Unknown W. Brackets
320951a77c Disasm the GE blend mode better. 2013-04-30 00:17:39 -07:00
Unknown W. Brackets
8f27d03af3 Double alpha at least for a known case.
Makes Popolocrois look much better now.
2013-04-30 00:04:20 -07:00
Unknown W. Brackets
bc1e0d09d4 Report a possible blend error. 2013-04-30 00:04:00 -07:00
Peter Thoman
c7c4ec7c3b Added xBR texture scaling to TextureCache 2013-04-30 03:49:12 +02:00
Peter Thoman
392087f26b Added xBRZ library 2013-04-30 03:44:54 +02:00
Unknown W. Brackets
3a769bb047 Do alpha test equal compares using rounding.
Fixes accuracy problems, Popolocrois shows things now.
2013-04-29 01:19:23 -07:00
Unknown W. Brackets
b0ce9e934e Split out the GPU vendor and the full detail.
This way we can sort things more easily.
2013-04-29 00:30:54 -07:00
Unknown W. Brackets
5cea38e405 Reporting: catch information about the GPU. 2013-04-29 00:26:43 -07:00
Unknown W. Brackets
acd0b471e7 Make sure that x64 uses all the same opt settings.
There were some differences.  Also, make debug use the same sse mode
release does so they have parity.
2013-04-28 22:22:01 -07:00
Unknown W. Brackets
46e5b84242 Small opt. for common immediately stalled list. 2013-04-28 14:56:38 -07:00
Unknown W. Brackets
597cdbca3f Simplify, don't let InterpretList do downcount. 2013-04-28 14:30:28 -07:00
Unknown W. Brackets
1edbfa3212 Use a downcount and fast run loop in the GE. 2013-04-28 14:23:30 -07:00
Unknown W. Brackets
5a03888b56 Centralize state and pc changes in the GE.
To make later things easier.
2013-04-28 13:34:29 -07:00
Unknown W. Brackets
f6287cb33d Resize the tex buffers to the larger of w/bufw.
Since it's rearranging, it needs the larger, and it might be in place too.
2013-04-28 13:17:01 -07:00
Unknown W. Brackets
89ad3fb41a Swap a couple Unchecked loops for Memcpy calls.
Should be the same or faster, seems clearer anyway...
2013-04-28 11:33:14 -07:00
Unknown W. Brackets
880af79caa Get rid of the duplicate texture decode func.
Just need one, really.
2013-04-28 11:26:00 -07:00
Unknown W. Brackets
d0733562f1 Optimize clut reading a tiny bit, use one func. 2013-04-28 11:25:59 -07:00
Unknown W. Brackets
4fe0f59bd7 Fix some missing texture buffer resizes.
I think this is all of them...
2013-04-28 11:25:59 -07:00
Unknown W. Brackets
13aeb9e67f Get rid of the cluthash in the texcache.
It's part of the key now, and better anyway.
2013-04-28 02:40:57 -07:00
Unknown W. Brackets
0cd65102af Cache cluts by hash not address.
This makes it immensely faster in Final Fantasy Tactics, and fixes the
numerous graphical issues.
2013-04-28 02:38:59 -07:00
Unknown W. Brackets
394a8eaf9e Small optimization to typical 4-bit textures.
These aren't used that often, but this makes them a bit faster.

It also looks cleaner, imho.
2013-04-28 01:53:24 -07:00
Unknown W. Brackets
9427f352c3 Fix black screen when fbo set in first frame.
Because BeginFrame() is actually only called after the first frame.
2013-04-27 15:46:10 -07:00
Henrik Rydgard
c5c3189436 Fix some framebuffer-related crash bugs. Ignore cache instruction 'FILL'. 2013-04-27 20:06:31 +02:00
Henrik Rydgard
6f4ad05582 Remove some unused code, add some stubs to vfpu jit, some cleanup 2013-04-27 19:35:42 +02:00
Henrik Rydgard
660d5700e7 Unify some VS project settings 2013-04-27 19:34:41 +02:00
Henrik Rydgard
e3f183bc28 ColorDouble needs to be in the fragment shader ID 2013-04-27 18:33:56 +02:00
Unknown W. Brackets
9fa4725f67 Mask clut indexes for > 8-bit clut indexes.
Fixes #1532.
2013-04-27 01:19:09 -07:00
Unknown W. Brackets
46ab5cd0f7 Fix typo in GeDisasm texture format. 2013-04-25 07:49:51 -07:00
Unknown W. Brackets
7405b050be Revert secondary texture cache.
This reverts commits 5d978fc626,
6a7722283c,
fd34a2e74d,
5bdf91ea43,
223bb6795a, and
e2a9813d82.
2013-04-25 07:48:54 -07:00
Henrik Rydgard
6f23a56779 Remove use of setlocale() in Osk as I could not figure out the purpose, and it broke stuff.
If this is actually needed, please send a pull request adding it back, turning it off when not used, and also add an explanation in a comment.
2013-04-25 10:42:31 +02:00
Henrik Rydgard
1965775c5a Ugly workaround for locale issue breaking HW transform for some people 2013-04-24 23:30:09 +02:00
Unknown W. Brackets
0b9de18f8c Small optimization to morph vertex step funcs. 2013-04-24 08:19:42 -07:00
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
Unknown W. Brackets
6be092b4de Make sure to print all GE command data in disasm.
Even if part of it shouldn't be used, if it is, that may be important.
2013-04-23 08:08:11 -07:00
Unknown W. Brackets
4075295327 Show more vertex type info in the GE frame dump. 2013-04-23 07:00:37 -07:00
Unknown W. Brackets
9208f6389d Avoid calling time_update in GE w/o debug stats.
Just wastes time, especially if the game hammers sceGeListUpdateStallAddr,
which many games do.
2013-04-22 22:04:27 -07:00