6a446efd5f
Second Stage: re implement zcomplock and correct all the logic error in PixelShaderGen.cpp. i disable fastzcomlock for the moment to avoid confusions.
...
please test for regressions
2012-04-03 00:08:36 -03:00
a0d60210fd
First Stage:
...
Fix depth related errors in dstalpha pass.
best place to test: water splash effect in super mario galaxy
2012-04-02 14:26:12 -03:00
460610ea0e
Revert Rodolfo's recent zcomploc commits until they actually work correctly.
...
This reverts commit 402006a83a
.
This reverts commit 48d8d71391
.
This reverts commit 450dcc9d2c
.
2012-03-30 01:57:53 +02:00
402006a83a
more fixes to zcomplock and opengl implementation
2012-03-29 18:26:58 -03:00
450dcc9d2c
As requested, this is my implementation of zcomploc using a multi-pass algorithm. My apologize to the others devs for committing in the main branch but is the only way to get this tested as soon as possible.
...
please test for regressions, speed and for other issues fixed, as a example, the black color in water splash in super mario galaxy are fixed with this rev.
please as soon as yo find a bug let me know.
2012-03-27 15:44:58 -03:00
fee98b426b
Revert r41bcf657f89d, r3a9fed0ba285, r9adc119e3c2f and re58692653afd (all of them are wrong).
2012-03-24 15:58:44 +01:00
9adc119e3c
PixelShaderGen: For custom textures and scaled EFB copies, use correct texel to pixel mapping when sampling textures
...
(D3D9 only)
This is basically the same as revision e58692653a
, just for scaled textures and with a LOT more work...
2012-02-20 20:32:08 +01:00
eb01a110c9
Implement texture preloading
2012-02-03 21:21:13 +01:00
1446fb33d5
TextureCacheBase: Replace the efbcopy_state member variable of texture cache entries with a more general "texture type"
2012-01-31 19:52:02 +01:00
cc54ee7d94
TextureCache: Move EFB copy cache code from TextureConverter to TextureCache
2012-01-31 19:51:32 +01:00
a02df43e6d
TextureConverter (OGL/D3D9): Kill EncodeToRam because it wasn't used anywhere and it basically does the same as EncodeToRamFromTexture anyway
2012-01-31 18:09:35 +01:00
3b38295cbd
TextureCacheBase: De-uglify hybrid EFB copies (documentation needs updating though)
...
TextureCacheBase: Fixed dynamic EFB copies being set to normal textures.
2012-01-31 18:09:35 +01:00
5239ba88c9
TextureCache: Remove unsafe texture cache
2012-01-31 18:09:35 +01:00
c5008fe9de
TextureCache: Renaming some variables
...
OGL: Fix a possible bug at texture dumping
OGL: Add a TODO about a possible bug
2012-01-31 18:09:34 +01:00
f57f654b59
set ProgramShaderCache program format correctly.
2012-01-18 10:22:03 -08:00
0b74ead13f
More "stuff" for SS, also a small fix in the program shader cache cache setup."
2012-01-11 04:10:43 -06:00
39613a95a8
initialize the uninitialized
2012-01-04 01:36:09 -08:00
bd5cf88686
let us try normal c++ static init instead...
2011-12-29 16:25:03 +01:00
6a5b56d25f
Get the program binary type correctly or else ATI makes massive (~400MB) shader caches. Also, don't need the line in the PixelShaderGen.
2011-12-29 01:35:50 -06:00
8a48b42e4c
Add support for Dual source blending to older ATI cards that don't support 420pack but do support GL_ARB_blend_func_extended. This is more proper as well anyways.
2011-12-29 00:32:06 -06:00
fbbea9bb9b
These checks aren't needed when using CG.
2011-12-29 00:01:50 -06:00
c8d0c8e217
oops, forgot to make sure the gl program is actually free'd.
2011-12-26 10:27:18 -05:00
6f729f8cbf
Woops, better not forget the ing
2011-12-26 04:09:36 -06:00
3773d29b6d
Remove some warnings in ProgramShadercache, Was using wrong variable for checking dual source blending.
2011-12-26 03:54:44 -06:00
5f296d0be7
refactor ProgramShaderCache::PCacheEntry
2011-12-26 02:58:52 -05:00
16f9d8e06d
Checking GLEW_VERSION_4_0 is superfluous since we check GL_ARB_get_program_binary, and it's a runtime variable anyways.
2011-12-26 00:43:47 -05:00
4bc14c3473
fix formatting uglies introduced in glsl-master branch
2011-12-26 00:15:54 -05:00
b607695103
Add in the Windows fix.
2011-12-25 12:21:31 -06:00
8349cc2551
Only use explicit attribute locations when we are supporting GLSL > 1.2 since we need in/out instead of attribute variable types. This was brought to my attention from MESA. MESA supports GL_ARB_explicit_attrib_location, but yets to support GLSL 1.3, so basically useless extension to MESA right now?
2011-12-24 08:58:51 -06:00
aa2032af2c
Write all shaders to disk on emulator stop instead of constantly. Also change pair from u64 to u32.
2011-12-24 02:19:30 -06:00
b90fa37c60
If user doesn't compile with glew 1.6, cut out program binaries so everything still compiles.
2011-12-24 00:37:13 -06:00
9bc6b83fd0
If CG isn't available, still compile and fallback on GLSL
2011-12-24 00:24:13 -06:00
7c558df283
Missed a if, don't want people crashing now do we?
2011-12-21 22:33:33 +00:00
8e0172374c
Give OSX users more of a chance of supporting Single pass DSB in the future.
2011-12-21 01:29:29 -06:00
a10656b1b2
Implement Program shaders cache. Seems to reduce a small amount of stuttering when F-Zero starts. Did it because I can :|
2011-12-21 00:15:48 -06:00
31a9b6c322
Go back to using glGetString with GL_EXTENSIONS because glew 1.7 is required to check for newer 4.2 extensions that way.
2011-12-20 23:07:42 -06:00
dc134b9bac
Move the GLSL extension checks over here so it is nicer.
2011-12-20 21:55:11 -06:00
f6b33cf0be
Add a define back so we work without GLEW 1.6, Also I missed a line when I was fixing binding sampler locations last night when I was tired.
2011-12-19 19:10:05 -06:00
3e773f093d
fixed a freeze on emu shutdown in windows build
2011-12-19 15:13:26 -08:00
9ce17a43ec
There we go, actually found the issue.
2011-12-19 00:15:07 -06:00
768a683f04
This thing fails when we don't support binding. Not 100% sure why I need to set this multiple times.
2011-12-18 23:31:00 -06:00
636d6a915d
Remove this silliness
2011-12-18 01:51:15 -06:00
4342efe712
Some shader programs don't come with Vertex shaders attached, don't try to bind a Vertex Uniform block then.
2011-12-17 01:17:11 -06:00
b837ae25fc
Set Sampler values at program make time instead of every frame. Fix an issue when The user had UBO support but not Binding support.
2011-12-17 01:06:55 -06:00
73c3f198f4
Only delete this buffer if we support it.
2011-12-16 23:37:22 -06:00
fe6fb55389
Add a GUI option to use GLSL shaders. Also fix a small typo.
2011-12-16 23:18:24 -06:00
9ff48ac6eb
Make sure not to try and bind UBO locations when it isn't supported
2011-12-15 15:48:21 -06:00
ad13f2d23d
Instead of querying the vertex attribute location. Let's bind it to where CG expects it to be as well. Was causing problems when we were trying to activate the components below and they weren't available. This fixes cubivore with GLSL shader. Also any other game that uses 3 normal pointers.
2011-12-11 06:18:01 -06:00
c908e1173d
glMapBuffer was slow, go back to glBufferSubData, single combined ps/vs ubo now
2011-12-11 06:11:38 -06:00
a613012d08
try combining vs/ps ubo
2011-12-11 06:02:47 -06:00