Commit graph

2573 commits

Author SHA1 Message Date
Henrik Rydgard
16f4622ac7 Remove cached light variables to reduce work when parsing DLs.
Also removes some duplication between GL and the inactive D3D code.
2014-04-21 12:51:19 +02:00
Unknown W. Brackets
006ed53e73 Use defines on x86/SSE to avoid func pointers.
Unfortunately no such luck for Android.
2014-03-25 01:28:09 -07: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
a26e6ce4b6 Minor improvements to QuickTexHashNEON().
Cuts a VFP switch, oops.
2014-03-23 11:56:25 -07:00
Unknown W. Brackets
970dd4f2f8 Use vldmia not vld1 for QuickTexHashNEON().
It turns out this is ~20% slower usually, so aligned is not worth the
pipeline hit.
2014-03-23 11:56:24 -07:00
Unknown W. Brackets
2482b2a1e0 Use aligned NEON loads in texhash. 2014-03-22 21:58:50 -07:00
Unknown W. Brackets
b44d10a91e Move texture unswizzling to decoder, use NEON. 2014-03-22 21:35:16 -07:00
Unknown W. Brackets
678237aa6c Improve SSE usage in software transform.
It's actually already pretty decent (unlike the softgpu), but there were a
few places it could use a bit of help.  Speeds up things with hardware
transform off, or areas that need to use software transform.
2014-03-17 23:05:48 -07:00
Unknown W. Brackets
6630e45eff Just add a packed version of Vec3f.
This way we can have it aligned to memory where needed.  I think it'd be
better to avoid this if possible so that we can actually vectorize
spline/etc. code.

Fixes #5673.
2014-03-17 06:59:40 -07:00
Henrik Rydgard
2eb6a4e2f2 Fix a warning, rename some parameters, etc. 2014-03-08 10:40:43 +01: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
chinhodado
cb39a5d978 fix buffer overflow 2014-02-19 12:07:45 -05:00
Unknown W. Brackets
97192388b6 Clamp float z in throughmode, rather than wrapping.
Matches tests, fixes sky in Tales of Eternia (#4572.)
2014-02-13 08:03:56 -08:00
Unknown W. Brackets
ad8488ecc4 Reset reporting on a new game.
This way "once" and "spam" no longer persist between runs.  Makes it
easier to test a bunch of games in a row without restarting in between.
2014-02-09 17:39:16 -08:00
Unknown W. Brackets
e7eca477b0 Add a tab to show vertex values to the GE debugger.
Should be pretty useful, especially for depth issues.
2014-02-08 22:03:29 -08:00
Henrik Rydgård
ca8311b4b8 Fix post processing shader list on Android. Fixes #5330.
This simply removes an old workaround that's no longer needed due to a
bug fix.
2014-02-04 13:20:36 +01:00
Unknown W. Brackets
d8e9ed73ab Fix a code alignment warning.
I'm not really clear on why this code would not be 4 byte aligned,
but cmake says it ain't on iOS, so okay.
2014-01-10 22:21:31 -08:00
Henrik Rydgård
e5e17fbc6e More include cleanup. Hoping for very slightly faster compile times.. 2013-12-30 10:49:05 +01:00
Henrik Rydgard
791f434f88 Custom postshaders now load successfully 2013-12-10 15:33:58 +01:00
Unknown W. Brackets
eb3011fd18 Don't even define the sse tex hash on non-sse.
Avoids unused func warnings.
2013-12-01 11:21:16 -08:00
Berkan Diler
68d518727f Remove unnecessary comment 2013-11-27 19:51:35 +01:00
Unknown W. Brackets
2623f6bfe2 Disable the optimized hash on iOS, seems to crash.
Except not for me, not sure why.
2013-11-23 10:41:58 -08:00
Unknown W. Brackets
fcc77f525f Implement some basic vertex previews on prim.
3D doesn't work correctly (sometimes it does...)  2D should be working.
2013-11-17 13:27:50 -08:00
Unknown W. Brackets
ac8edb4282 Support reversed buffer formats in the ge debugger.
So that it doesn't show garbage under the softgpu.
2013-11-17 02:14:34 -08:00
Henrik Rydgård
662ad32d4f Fix and re-enable @unknownbracket's handcoded NEON tex hash 2013-11-11 17:12:38 +01:00
Henrik Rydgård
53800bd413 Disable the hand-coded NEON texture hash again. It's slow, for unknown reasons. 2013-11-11 14:39:29 +01:00
Henrik Rydgård
1713465e9f Revert "Temporarily disable the handcoded NEON texture hash"
and
Revert "Temporarily disable the handcoded non-NEON tex hash"

This reverts commit 068af6fda8df8069bc0491fe98e75ae007f5b650.
This reverts commit 91543e7a8d27b4a8c906c1e1c349f489a449c432.
2013-11-11 14:13:47 +01:00
Henrik Rydgård
0c18c4be4e Temporarily disable the handcoded non-NEON tex hash 2013-11-11 14:13:47 +01:00
Henrik Rydgård
c80403c377 Temporarily disable the handcoded NEON texture hash 2013-11-11 14:13:47 +01:00
Henrik Rydgård
345a4ccf0e Merge pull request #4487 from unknownbrackets/perf
Texture cache hashing tweaks, disable second cache on mobile
2013-11-09 17:30:40 -08:00
sum2012
e4b68099e0 Attempt to fix Colin Mcrae Dirt 2 Crash correctly
#4482
2013-11-10 08:23:31 +08:00
Unknown W. Brackets
fa79d7f13c Handcode the non-NEON texcache hash as well on ARM.
Well, it could be a better algorithm, but at least this uses LDMIA.
2013-11-09 14:51:23 -08:00
Unknown W. Brackets
2dfa2379f4 Rewrite QuickTexHashNEON directly in asm.
Seems like gcc couldn't optimize it to this.
2013-11-09 12:54:55 -08:00
Henrik Rydgard
497915141b Revert to normal for loop in the index generator, the < 3 case gets taken care of properly. Just existing caused some issues. 2013-11-09 19:33:40 +01:00
sum2012
886fcdd0b1 Fix Colin Mcrae Dirt 2 Crash
#4482
2013-11-10 02:23:22 +08:00
Henrik Rydgard
9a51d25279 Minor optimization in IndexGenerator::AddStrip. 2013-11-08 12:43:47 +01:00
Unknown W. Brackets
e435b81281 Optimize IndexGenerator::AddPrim() funcs for MSVC.
Reduces profile from ~5.4% to ~1.6% (with vertex cache off) in
Senjou no Valkyria 3.  Similar to the TranslatePrim() funcs.
2013-11-04 22:49:28 -08:00
Unknown W. Brackets
64e977db08 Improve the non-NEON tex hash path on ARM.
This generates better looking disassembly, though a small change.
2013-11-03 07:43:10 -08:00
Sacha
5613b86864 Use NEON texture decoder on Blackberry and iOS. Use ARMV7 defines. 2013-11-03 15:59:10 +10:00
Unknown W. Brackets
ed1204a10f Android armv6/etc. buildfix. 2013-11-02 10:14:25 -07:00
Unknown W. Brackets
4d47ccd5df Add a NEON version of the tex hash.
Should be used only for NEON devices.  Currently only compiled on Android.
2013-11-02 02:09:54 -07:00
Sacha
bb8e364086 Fix shader path. 2013-10-28 15:46:12 +10:00
Henrik Rydgard
3a787f46a5 Hide shaders we can't run on GLES2 2013-10-23 22:58:21 +02:00
Henrik Rydgard
7d8aed096a Add proper support for upscaling shaders, add Spline36 upscaling
Spline36 isn't as amazing as I had hoped heh. And it will need work to
work in GLSL ES. Anyway...

This also renames u_texcoordDelta to u_texelDelta to fit in with u_pixelDelta.
2013-10-22 12:18:49 +02:00
Unknown W. Brackets
9a9aa5b194 Fix initialization order warnings. 2013-10-19 14:57:45 -07:00
Sacha
eb19a8b869 Include shaders in the installable packages for Blackberry, Symbian, Meego. 2013-10-17 14:29:34 +10:00
Unknown W. Brackets
775c37f387 Override shaders by name. 2013-10-12 16:48:06 -07:00
Unknown W. Brackets
74db6d4e26 Load custom shaders from ms0:/PSP/shaders/. 2013-10-12 16:44:46 -07:00
Henrik Rydgard
33acec8263 Actually, don't ignore the first section of postshader ini files - if there's no comment there, it won't exist. 2013-10-12 02:13:51 +02:00
Henrik Rydgard
e0b19decca Add generic "PostShader" functionality, replacing FXAA (it's one of them).
Replaces #4018, sorry DanyalZia :)
2013-10-12 02:05:55 +02:00