Commit Graph

1840 Commits

Author SHA1 Message Date
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
ed1bfdf293 Merge branch 'cmake-osx2' 2011-12-17 16:30:02 +01: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
800e1c9e09 Let compiling work on OSX. 2011-12-16 00:00:08 -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
5ae1f674f5 make use of glMapBuffer to set ubo data 2011-12-11 05:29:15 -06:00
16b58a8825 Show a bit of information when using GLSL shaders. 2011-12-11 05:15:08 -06:00
bcb2abbcf1 fix stupid indentation 2011-12-11 04:32:57 -06:00
031c523fba have separate variables/functions for VS/PS ubo stuff, array was confusing. 2011-12-11 04:28:02 -06:00
fbef258dab Disable UBO buffer generation if hardware doesn't support it. 2011-12-11 04:19:11 -06:00
df283a56a0 More coding style fixes because I suck at sed 2011-12-11 11:14:02 +01:00
014c474024 8 spaces indentation -> tabs 2011-12-11 11:08:18 +01:00
1724385c8c Actually have Dual Source blending work for people. Forgot about this change. 2011-12-11 03:10:03 -06:00
2907ffd72c Make this pretty 2011-12-10 15:58:44 -06:00
c678172f32 Make sure our UBO buffers are always aligned correctly. 2011-12-10 15:52:20 -06:00
97c3c156e6 Use UBOs in every shader. I had missed a few. Only cache Uniform locations if we aren't using UBOs. 2011-12-10 15:40:10 -06:00
c72a244809 Make sure to support everything even if GPU doesn't. 2011-12-10 14:35:37 -06:00
5925feb6e0 yay, UBOs work 100% now. 2011-12-10 08:07:13 -06:00
7ab38cff68 UBO works for Pixel Shaders if Binding for UBO is zero, otherwise fails. Probably why Vertex shader UBO is failing. Too tired to investigate right now. 2011-12-10 07:38:30 -06:00
49664bff61 More for Billiard <3 2011-12-10 02:02:22 -06:00
24336171f1 Firin ma lazer 2011-12-10 01:57:27 -06:00
126dfa073b Firin ma lazer 2011-12-10 01:56:37 -06:00
54a90d08ce Fix one error. 2011-12-09 21:15:15 -06:00
e8087aa1a9 Remove bSupportsGLSLLocation since it won't work how I expect it. 2011-12-09 19:14:02 -06:00
4fe9792760 Merge branch 'GLSL-master' of https://code.google.com/p/dolphin-emu into GLSL-master 2011-12-09 17:30:50 -06:00
8e5bb59cb6 Add in UBOs, doesn't work yet. Still debugging here. 2011-12-09 17:30:05 -06:00
87c3c37ba7 add ProgramShaderCache.* to visual studio project files 2011-12-09 14:28:59 -08:00
0ccba2b581 Support Dual Source Blending in OGL plugin with GLSL. 2011-12-08 05:09:48 -06:00
cecc3c3873 Bit of cleanup. Clean up my massive hack in the ShaderManagerFiles. Almost feature parity with Nvidia CG now I think. Just need to do Alpha test with Dual source blending now. 2011-12-08 03:20:31 -06:00
1201988fe4 Add support for GL_ARB_shading_language_420pack so we don't have to binding sampler locations. Also add support for GL_ARB_separate_shader_objects which doesn't currently work for some reason....investigating. 2011-12-08 01:51:08 -06:00
f77d54ff52 Welp, just fixed that problem. 2011-12-07 23:23:00 -06:00
4c136c4efc Missed a spot. Most games work now, Still have a problem with viewtiful joe. Destination Alpha pass doesn't work yet, going to use Dual source blending on that. 2011-12-07 23:20:55 -06:00
ed18b82d2f This lets us see stuff with GLSL shaders. Just need to take care of some compile errors now. 2011-12-07 22:11:41 -06:00
33c24f0a15 Almost there. 2011-12-07 22:04:34 -06:00
8c3775ee6f Under OS X, link GL plugin against Cg framework instead of Cg library. 2011-12-05 01:12:09 +01:00
252093295b Do not fail with strict drivers when compiling a not SM2.0 shader
To enforce SM2.0 compatibility, the OpenGL plugin was made to crash when
compiling a shader which does not fit in the SM2.0a limits. However, on some
combinations of OS/drivers/GPU, our shaders already do not fit in these limits,
causing artificial failures only to try to keep a non existant SM2.0a compat.
Basically, this sucks.

This commit increases the artificial limit to SM3.0. If you're using a GPU
which does not support SM3.0 and Dolphin works properly, this should not cause
any problem at all.
2011-12-03 23:24:10 +01:00
804938e9fc More stuff 2011-12-02 20:17:26 -06:00
8a18a110b7 mah 2011-12-02 18:46:07 -06:00
6882e00d5e Compile 2011-12-02 18:31:06 -06:00
49b6e4beed meh 2011-12-02 18:26:15 -06:00
575814895c Merge branch 'clearscreen-kill-immediate-mode' 2011-12-01 20:16:23 -06:00
f8eb45637f Now CG plays nice with this new stuff. 2011-12-01 00:33:12 -06:00
b20176b74f Add in GLSL setting again.
PS and VS making. Untested and won't work for now.

Add in program shader cache files.

Readd NativeVertexFormat stuffs.

Add in PS and VS cache things.

SetShaders in places.

Fixed EFB cache index computations in OpenGL renderer.

The previous computation was very likely to go out of array bounds,
which could result in crashes on EFB access.

Also, the cache size was rounded down instead of up. This is a problem
since EFB_HEIGHT (528) is not a multiple of EFB_CACHE_RECT_SIZE (64).
2011-11-30 22:02:25 -06:00