Commit Graph

124 Commits

Author SHA1 Message Date
Unknown W. Brackets
b9f4cc4481 Double colors only when texturing, and after test.
Per tests.
2014-01-12 11:45:29 -08:00
Henrik Rydgård
c277fe3019 Don't declare fragColor0 unless we will use it. See #4877 2013-12-29 11:26:56 +01:00
raven02
9676f6943f Restore Alpha/ColorDoubling to do before color test 2013-12-25 15:39:37 +08:00
raven02
f97aacce45 Reformat stencilToAlpha a bit 2013-12-24 22:36:57 +08:00
Henrik Rydgard
832c933cb8 Some shader fixes 2013-12-17 23:38:58 +01:00
Henrik Rydgard
f8312716f3 Only use dual source when actually needed.
Does generate a few more shaders but hopefully isn't a problem, should get rid of most of the slowdown in most games.
2013-12-16 23:44:28 +01:00
Henrik Rydgard
a9a15d5196 Don't use dual source when stencil disabled 2013-12-16 23:41:42 +01:00
Henrik Rydgard
0d2ec01e83 Switch CanReplaceAlphaWithStencil response to an enum 2013-12-16 23:24:32 +01:00
Henrik Rydgard
a8a48013f6 Don't use gl_FragColor when deprecated 2013-12-16 23:18:13 +01:00
Henrik Rydgard
40a0705b50 Typo fix checking the alpha func for src factors 2013-12-16 23:13:33 +01:00
Henrik Rydgård
b6f8038a51 Fragment shader: Remove superfluous precision specifiers.
Also make sure to strip lowp/mediump/highp on desktop even for GL3.0-3.3.
2013-12-16 11:46:59 +01:00
Unknown W. Brackets
0043950770 Use #version 130 for OpenGL 3.0+ to support out.
Otherwise it just gives errors on cards that support dual source blending.
2013-12-15 08:32:22 -08:00
Henrik Rydgard
214cc01976 Fix bugs in stencil2alpha, fix bugs in glsl 3 support, enable dual source blending where available
The stencil2alpha bug fixes fix some glows in Wipeout, dual source fixes the rest.
2013-12-15 12:49:13 +01:00
Henrik Rydgard
3cde4921ae Have the shader generators generate modern GLSL if available.
This opens up to use other modern features like dual source alpha later.
2013-12-15 11:23:27 +01:00
raven02
affc7f44a6 Add extra GE_TEXFUNC_UNKNOWN1/2/3 which handle same as GE_TEXFUNC_ADD 2013-12-14 06:47:20 +08:00
Henrik Rydgard
e2080f6c65 Revert "STENCIL_VALUE_UNKNOWN for DECR/INCR/INVERT"
This reverts commit 59d3b92e71.

Revert "zero alpha if stencil op consistently says to zero for format 5551 as well"

This reverts commit ed07a7f411.
2013-12-08 17:48:22 +01:00
raven02
59d3b92e71 STENCIL_VALUE_UNKNOWN for DECR/INCR/INVERT 2013-12-08 22:19:13 +08:00
raven02
ed07a7f411 zero alpha if stencil op consistently says to zero for format 5551 as well 2013-12-08 22:05:31 +08:00
Henrik Rydgard
7b4759384f Only zero alpha if stencil op consistently says to zero.
Otherwise we may be better off keeping the alpha.
2013-12-08 13:04:54 +01:00
Unknown W. Brackets
054501c100 Replace alpha when blend mode allows it.
Some games are using fixed/fixed blending modes which work in our favor.
2013-12-07 02:54:33 -08:00
Henrik Rydgard
c738364f67 Make sure to disable scissor when doing the initial clear of a new FBO.
Minor cleanups.
2013-12-06 23:08:37 +01:00
Henrik Rydgård
13cdbd5284 Mask away alpha when the stencil operation is KEEP 2013-12-06 11:15:13 +01:00
Henrik Rydgard
41209eb936 Stencil-to-alpha fragment tweak: Set alpha to 0 if we can't deduce the stencil value.
This fixes the weird glowing shadows in Wipeout.
2013-12-04 19:55:09 +01:00
Henrik Rydgard
a6150db8d5 Disable frag shader stenciltoalpha in clearmode. 2013-12-03 11:10:27 +01:00
Unknown W. Brackets
4418aacbaf When writing stencil to alpha, consider fb format. 2013-12-03 00:15:08 -08:00