Commit graph

77 commits

Author SHA1 Message Date
Henrik Rydgard
edb6e5a54c Fix fallthough bugs in isAlphaTestTriviallyTrue 2013-08-24 11:56:39 +02:00
Henrik Rydgard
416f0c56e8 Experiment: Use glBlendFuncSeparate to not change dest alpha when blending.
Fixes Persona blending issues.
2013-08-22 19:14:04 +02:00
raven02
9931e5c5cc Fragment : Set doTextureAlpha = gstate.isTextureAlphaUsed(); 2013-08-20 21:32:07 +08:00
Unknown W. Brackets
12c5f5e1e6 Use constants for other uv gen mode usages.
And also change them to treat 3 as coords as well.
2013-08-19 00:43:54 -07:00
Unknown W. Brackets
46805b37cb Use the texture-related GE accessors. 2013-07-21 19:45:04 -07:00
Unknown W. Brackets
988614f6d0 Use lightning GE state accessors where appropriate. 2013-07-21 19:44:30 -07:00
Unknown W. Brackets
c0da6b97c5 Add and use some color/alpha test accessors. 2013-07-21 19:44:30 -07:00
raven02
7ac496529b Vendor Based Alpha and Color Testing 2013-07-21 01:14:36 +08:00
raven02
44fe09f03e Fix black box in Dainiji_Super_Robot_Taisen_Z_Hakaihen 2013-07-20 01:55:12 +08:00
Henrik Rydgard
1abd9ff2d3 Change the alpha test rounding offset to be just under half. Fixes some disappearing things.. 2013-07-18 19:19:52 +02:00
Henrik Rydgard
d76c45411d alpha test: fix typo, add back rounding offset 2013-07-18 01:02:21 +02:00
Henrik Rydgard
3e24949f8a Try different approach to rounding the inputs to the alpha test. Appears to fix some problems on PowerVR. 2013-07-17 23:03:21 +02:00
Henrik Rydgard
79110638c9 Unbreak things (silly mistake in last commit, remove *2.0 factor which just can't be right) 2013-07-06 22:50:06 +02:00
Henrik Rydgard
9928bd762c Specify alphacolorref as highp 2013-07-06 22:44:18 +02:00
raven02
64de3c428e Minor cleanup 2013-06-28 21:43:12 +08:00
Unknown W. Brackets
cd213e655b Add some debug code for finding textures. 2013-06-22 10:35:34 -07:00
Henrik Rydgard
cdef31f9fc Turn off the use of uniform arrays in shaders as some devices don't like them, and the speedup seems to be very small if any. 2013-05-26 14:03:02 +02:00
Henrik Rydgard
199907b9ed Shader simplification - well, more of it. Hopefully this helps the mali problems a bit more. 2013-05-22 15:52:10 +02:00
Unknown W. Brackets
03f3f99e39 Don't use ivec in the fragment shader.
Attempt at #1777.  Needs the + 0.5 to round properly on mobile.
2013-05-12 13:09:02 -07:00
Unknown W. Brackets
5ecacd6bc8 Don't double alpha when alphablend is disabled.
Probably doesn't affect much.
2013-05-12 09:31:23 -07:00
Unknown W. Brackets
c937a22f26 Only double the color with color doubling.
Not the alpha.
2013-05-09 23:31:53 -07:00
Unknown W. Brackets
47c404b925 Clean up some comments. 2013-05-09 01:19:55 -07:00
Unknown W. Brackets
4a30221c95 Ignore texfunc RGBA when texture is full alpha.
This allows us to skip some work in the fragment shader.
2013-05-08 23:14:20 -07:00
Unknown W. Brackets
ebf1b57834 Rename round255f to roundAndScale255f.
Seems to verbose to me, but no one can think it doesn't scale or round
this way.
2013-05-07 08:02:27 -07:00
Unknown W. Brackets
f2b4c4a0bc Pre-round the colortest/alphatest reference val. 2013-05-07 07:52:49 -07:00
raven02
eba452f1ba Add back round255f and round255v to u_alphacolorref 2013-05-07 21:52:40 +08:00
raven02
3744f6ee28 Fix colortest rounding using vec3 2013-05-07 19:53:48 +08:00
raven02
274b9c712c Add rounding to equality check for ColorTest 2013-05-07 16:47:53 +08:00
Unknown W. Brackets
9537be9ebb Don't double src alpha when it's not safe to do so.
Fixes LittleBigPlanet vignette.
2013-05-03 01:10:59 -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
3a769bb047 Do alpha test equal compares using rounding.
Fixes accuracy problems, Popolocrois shows things now.
2013-04-29 01:19:23 -07:00
Henrik Rydgard
e3f183bc28 ColorDouble needs to be in the fragment shader ID 2013-04-27 18:33:56 +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
ea11c36091 Fix a vshader id bit collision, avoid color test when set to 'ALWAYS', zeroinitialize dls. 2013-04-15 22:57:54 +02:00
raven02
3252eb6554 Fragment Shader : use mix() for decal/blend 2013-04-08 22:48:40 +08:00
Henrik Rydgard
e246ffe20c fragment shader: RGBA DECAL does make more sense this way 2013-04-07 20:37:19 +02:00
raven02
b03dfeb8a6 Clean up if-else 2013-04-06 22:28:38 +08:00
raven02
34f6a7512f Miss parenthesis in GE_TEXFUNC_BLEND 2013-04-06 22:24:04 +08:00
BeaR
da1b345cd4 HW T&L: Change unlitcolor initialization and cleanup fragmentshader formatting 2013-04-02 12:24:22 +02:00
raven02
6396324f57 Add few isEnabled() in GPUState for Alpha/Color/Lighting/Texture Test 2013-03-27 18:35:54 +08:00
raven02
68faecd87c minor cleanup only 2013-03-25 22:57:40 +08:00
raven02
51fdd2a665 Enable ColorTest 2013-03-25 22:36:56 +08:00
Henrik Rydgard
724a7c8c93 Revert latest fliptexture hack. This seems to work better. 2013-03-11 20:26:47 +01:00
Henrik Rydgard
de469e77a4 Fix silly typo breaking alpha test in many cases. Make some log VERBOSE. 2013-03-11 19:40:47 +01:00
Henrik Rydgard
14b35c8d2d Turning off alpha test on GREATER than 0 and LESS than 255 wasn't safe. Only GEQUAL and LEQUAL, duh! 2013-03-11 19:29:13 +01:00
Henrik Rydgard
ac47d74d7b Remove obviously useless alpha tests. May help speed on mobile GPUs a little. 2013-03-11 18:43:36 +01:00
Henrik Rydgard
654620cb66 Adreno doesn't like negations when using discard, apparently.. 2013-03-10 16:01:00 +01: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
raven02
b862841dd4 Put PPGeDraw into CalculateFPS() and add enableColorDoubling alias 2013-03-03 15:33:03 +08:00
raven02
d99ca71a47 Add u_colormask and use it in enableColorTest 2013-02-25 05:45:35 +08:00