567 Commits

Author SHA1 Message Date
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
Unknown W. Brackets
85a23dac63 Avoid framebuffer lookups for repeated prims.
There are usually many prims per framebuffer.  This cuts time spent in
SetRenderFramebuffer() from 1% to 0.13% (although a bit more time in
ExecuteOp, not much.)
2013-04-22 22:04:27 -07:00
Unknown W. Brackets
b84dadfd3a Add NOP to GE disasm. 2013-04-22 22:04:26 -07:00
Unknown W. Brackets
bf808064b2 Add a function to pretty-print vertex type.
For easier debugging.
2013-04-22 22:04:26 -07:00
Henrik Rydgard
5f1ed03165 Revert "Merge pull request #1324 from cinaera/pullreq" as it seems to break stuff, needs more testing.
This reverts commit a2655699282f193be680703936983dccf4bd9605, reversing
changes made to 06999ae649457232aedcb12b32bc574618cd44d4.
2013-04-21 21:09:02 +02:00
Henrik Rydgard
e877821cca Turn off the single-strip optimization for software transform as it doesn't work yet. 2013-04-21 19:32:57 +02:00
Henrik Rydgard
628c223234 GPUCommon: Get rid of prev variable. 2013-04-21 19:32:56 +02:00
Unknown W. Brackets
b54eb41041 Don't signal again if a PAUSE handler unstalls.
Basically, if the handler calls sceGeListUpdateStallAddr(), and it hits
a finish (which it might), before we were triggering another PAUSE.

THat's wrong, it should just be a FINISH as usual.
2013-04-20 20:15:47 -07:00
Henrik Rydgard
dd0088e6b8 Fix strange offset of skinned meshes in HW transform (helmet outside body etc) 2013-04-20 23:37:07 +02:00
Henrik Rydgard
b52d21bd4a Don't use an index buffer for single triangle strips. Improve dirtying of proj matrices. 2013-04-20 23:37:07 +02:00
Henrik Rydgard
70bb4e1c85 Fudge GPU cycle estimates to let GoW runs fast and GTA smooth. See comments for the horrible details.
I hope this doesn't affect other games adversely.
2013-04-20 20:21:12 +02:00
raven02
4a8d3c331a Consolidate DIRTY_MATAMBIENTALPHA/DIRTY_MATSPECULAR 2013-04-20 22:46:25 +08:00
BeaR
191199a8d0 Fix vertex shader compilation 2013-04-18 19:34:24 +02:00
BeaR
de7c1ef327 Correct ambient light 2013-04-18 17:36:20 +02:00
BeaR
9027e5018b Handle zero-length vectors when normalizing 2013-04-18 17:36:20 +02: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
c04ce5a64e Implement projective texture mapping. It's not used a great deal but good to have. 2013-04-17 21:41:47 +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
Henrik Rydgard
382e1df04c Merge branch 'shader' of https://github.com/cinaera/ppsspp into cinaera-shader 2013-04-16 21:31:14 +02:00
Henrik Rydgard
98daf18d56 Add skeleton code for Windows multitouch, to be filled in by someone who can test :P 2013-04-16 21:14:46 +02:00
BeaR
8cc3f01b7b Use correct state for lmode 2013-04-16 19:22:18 +02:00
BeaR
c9daf8df7b Cleanup and fix vertex shader 2013-04-16 19:01:18 +02:00
Unknown W. Brackets
f86e01707f Use a struct for the GE stack entries, cleaner. 2013-04-15 23:06:56 -07:00
Unknown W. Brackets
7b184602df Remember the GE offset in the stack on call/ret. 2013-04-15 22:20:49 -07:00
Henrik Rydgard
ea11c36091 Fix a vshader id bit collision, avoid color test when set to 'ALWAYS', zeroinitialize dls. 2013-04-15 22:57:54 +02:00
Henrik Rydgard
cbbc4e2c9e Reset gstate_c.offsetAddr on RET. Fixes some "CALL to illegal address"
(as seen in Flatout for example).
2013-04-15 22:24:30 +02:00
BeaR
f7739ccdc2 Apply attenuation to ambient light 2013-04-15 19:11:26 +02:00
Henrik Rydgard
af06611691 Fix bug in ServerHostname found by MSVC's debug allocator. Sneak in a comment. 2013-04-14 10:04:07 +02:00
Henrik Rydgård
c8238a1a05 Merge pull request #1024 from raven02/patch-3
Fix buffered mode broken in MotoGP
2013-04-14 00:46:42 -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
Unknown W. Brackets
34f1f3a8e7 Remove one more FP usage in GPU. 2013-04-13 13:04:39 -07:00
Henrik Rydgard
e3fb88de68 Background thread for icon loading, show in game list. Switch to GNU STL in Android port. 2013-04-13 21:24:07 +02:00
Henrik Rydgard
5828fe5728 Fix vertexdecoder RGB565 bug found by unknownbrackets, also remove FP use in RGBA5551 2013-04-13 19:45:17 +02:00
BeaR
38231ca60a Fix SW spotlight 2013-04-13 17:52:16 +02:00
Unknown W. Brackets
e45bd32c61 Fix incorrect GPU timing with signal jumps. 2013-04-12 08:57:30 -07:00
Henrik Rydgård
7e657e8f78 Merge pull request #1261 from unknownbrackets/fbo-flicker
Fix FBO decimation in a cleaner way
2013-04-12 07:53:36 -07:00
Unknown W. Brackets
e7f0bf71bf Don't go decimate happy on FBOs if a game reuses.
Some games, e.g. games that render at < 60fps, reuse FBOs.
This was making all three pointers the same, making us more likely
to decimate things when we ought not to.
2013-04-12 07:09:45 -07:00
Unknown W. Brackets
c4a6224506 Don't decimate FBOs if none were used.
Not sure why this is happening, but fixes #1260.
2013-04-12 07:00:59 -07:00
raven02
fcba4d4df1 Simply and initialize lightscale%i/angle%i/distance%i 2013-04-11 21:49:44 +08:00
raven02
7be4ce1d86 Match SW T&L with hardware 2013-04-11 21:47:34 +08:00
Henrik Rydgard
d46812a49f Implement pullrq #1240 better, I think. 2013-04-10 00:06:29 +02:00
BeaR
fa3a1fbd52 Add support for spotlights 2013-04-09 18:26:06 +02:00