Commit Graph

1463 Commits

Author SHA1 Message Date
raven02
4f81d97624 emnu fix#2 2013-12-21 16:18:38 +08:00
raven02
ad720b31e0 emnu fix#1 2013-12-21 16:17:40 +08:00
Henrik Rydgård
b2d0f37d96 Fix crashing on some OpenGL versions 2013-12-18 12:00:23 +01:00
Henrik Rydgard
0a1514161d GLSL 3.0 fix 2013-12-18 11:22:31 +01:00
Henrik Rydgard
832c933cb8 Some shader fixes 2013-12-17 23:38:58 +01:00
Henrik Rydgard
38f94ea0bf Minor typo fix 2013-12-17 00:20:40 +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
068d4f0ee5 Another typo fix 2013-12-16 23:40:30 +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
34f2f5db98 When drawing the displayed FBO to the screen, always use bilinear.
Might want to make this an option in the future.
2013-12-16 16:04:08 +01:00
raven02
71d2ce3731 Replace -ve fogcoef[1] with -10000.0f 2013-12-16 22:45:21 +08:00
raven02
8306243b97 Check gstate.isSkinningEnabled() only 2013-12-16 20:44:13 +08: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
3f674f7ef6 Always update framebuffer tex sampling params.
Otherwise they are not always correct and cause glitches.
2013-12-15 18:23:47 -08:00
Henrik Rydgård
f8282d1dd3 Merge pull request #4847 from unknownbrackets/gpu-minor
Use #version 130 for OpenGL 3.0+ to support out
2013-12-15 14:17:28 -08:00
Unknown W. Brackets
a2d91ee26d softgpu: Don't mask out so much of fb stride.
Seems like anything from 4 is supported in 8888, most likely it just needs
to align to 16 bytes.  Values above 1024 work, but e.g. 2044 seems buggy.

Fixes the map on Hexyz Force (rendered at 80 stride.)
2013-12-15 11:59:24 -08: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
raven02
7f828a6b66 Set float for gstate.getStencilTestRef() * (1.0f / 255.0f); 2013-12-15 21:40:14 +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
Unknown W. Brackets
11ed3a46d9 Workaround Tactics Ogre block transfer weirdness.
This works around #4833, while keeping videos in Valkyrie Profile (and any
other games programmed the same way) working.
2013-12-14 16:45:29 -08:00
Unknown W. Brackets
13bf4d83fa Add memchecks for common HLE copy operations.
Better to catch some than miss everything.
2013-12-14 14:56:05 -08:00
Unknown W. Brackets
057cad228c Upload block transfers to FBOs when from ram. 2013-12-14 10:10:23 -08: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
raven02
5c6dbb8a31 Restore viewport when switching render targets 2013-12-14 04:14:59 +08:00
Henrik Rydgård
1cf3b16b4f Merge pull request #4796 from raven02/patch-3
Render correct fog in 3rd birthday and menu transparency in Kurohyou 2
2013-12-12 00:29:02 -08:00
Henrik Rydgård
6fed4e2683 Revert "Exact : should be applied to all rendering mode"
This reverts commit f170d5ef7b.
2013-12-11 16:59:20 +01:00
raven02
a1fd9eb149 Render correct fog in 3rd birthday and transparency in Kurohyou 2 2013-12-11 23:37:28 +08:00
raven02
f170d5ef7b Exact : should be applied to all rendering mode 2013-12-11 23:27:04 +08:00
raven02
2e7609b084 Cleanup ClearmodeDepthMask 2013-12-10 20:48:20 +08:00
Henrik Rydgård
b784daf424 Check for INF in fog coef, replace with large value. See #2387 2013-12-09 14:56:29 +01:00
Henrik Rydgård
9e42086e21 Logspam reduction 2013-12-09 13:45:17 +01:00
Unknown W. Brackets
c6a441965e Move shared clut check to gstate. 2013-12-08 23:11:56 -08:00
Henrik Rydgard
bd1d4e2d92 As if softgpu wasn't slow enough already, implement bilinear filtering. 2013-12-09 01:44:23 +01: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
Henrik Rydgard
628bf497dd Hopefully fix UV scaling properly this time.
Check the faces in Hexyz Force please.
2013-12-08 11:52:20 +01:00
Henrik Rydgård
08a0709091 Merge pull request #4751 from unknownbrackets/reporting
Cut down on reporting of FBO misuse
2013-12-08 01:18:39 -08:00
Unknown W. Brackets
0e4ca7f9a8 Stop reporting logic ops.
We support them on desktop and they're not really often used.
2013-12-08 00:48:23 -08:00
Unknown W. Brackets
9de7b34d1c Cut down on reporting of FBO misuse.
These cases are likely to be okay.
2013-12-08 00:38:10 -08:00
Unknown W. Brackets
2df1db4c7e Avoid optimizing out both constant colors. 2013-12-07 23:24:25 -08:00
Unknown W. Brackets
a4780f5199 Don't forget the alpha in non-fixed blending. 2013-12-07 23:21:45 -08:00
Unknown W. Brackets
808eeb3a25 Attempt to pick a better blend for stencil replace. 2013-12-07 10:02:46 -08:00
raven02
60def7baf9 Set src/dst alpha to non GL_ZERO in case STENCIL_VALUE_UNIFORM 2013-12-07 21:11:47 +08: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