Ryan Houdek
b607695103
Add in the Windows fix.
2011-12-25 12:21:31 -06:00
Ryan Houdek
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
Ryan Houdek
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
Sonicadvance1
7c558df283
Missed a if, don't want people crashing now do we?
2011-12-21 22:33:33 +00:00
Ryan Houdek
8e0172374c
Give OSX users more of a chance of supporting Single pass DSB in the future.
2011-12-21 01:29:29 -06:00
Ryan Houdek
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
Ryan Houdek
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
Ryan Houdek
9ce17a43ec
There we go, actually found the issue.
2011-12-19 00:15:07 -06:00
Ryan Houdek
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
Ryan Houdek
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
Ryan Houdek
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
Ryan Houdek
73c3f198f4
Only delete this buffer if we support it.
2011-12-16 23:37:22 -06:00
Ryan Houdek
fe6fb55389
Add a GUI option to use GLSL shaders. Also fix a small typo.
2011-12-16 23:18:24 -06:00
Ryan Houdek
9ff48ac6eb
Make sure not to try and bind UBO locations when it isn't supported
2011-12-15 15:48:21 -06:00
Ryan Houdek
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
Jordan Woyak
c908e1173d
glMapBuffer was slow, go back to glBufferSubData, single combined ps/vs ubo now
2011-12-11 06:11:38 -06:00
Jordan Woyak
a613012d08
try combining vs/ps ubo
2011-12-11 06:02:47 -06:00
Jordan Woyak
5ae1f674f5
make use of glMapBuffer to set ubo data
2011-12-11 05:29:15 -06:00
Jordan Woyak
bcb2abbcf1
fix stupid indentation
2011-12-11 04:32:57 -06:00
Jordan Woyak
031c523fba
have separate variables/functions for VS/PS ubo stuff, array was confusing.
2011-12-11 04:28:02 -06:00
Ryan Houdek
fbef258dab
Disable UBO buffer generation if hardware doesn't support it.
2011-12-11 04:19:11 -06:00
Pierre Bourdon
df283a56a0
More coding style fixes because I suck at sed
2011-12-11 11:14:02 +01:00
Pierre Bourdon
014c474024
8 spaces indentation -> tabs
2011-12-11 11:08:18 +01:00
Ryan Houdek
2907ffd72c
Make this pretty
2011-12-10 15:58:44 -06:00
Ryan Houdek
c678172f32
Make sure our UBO buffers are always aligned correctly.
2011-12-10 15:52:20 -06:00
Ryan Houdek
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
Ryan Houdek
c72a244809
Make sure to support everything even if GPU doesn't.
2011-12-10 14:35:37 -06:00
Ryan Houdek
5925feb6e0
yay, UBOs work 100% now.
2011-12-10 08:07:13 -06:00
Ryan Houdek
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
Ryan Houdek
49664bff61
More for Billiard <3
2011-12-10 02:02:22 -06:00
Ryan Houdek
24336171f1
Firin ma lazer
2011-12-10 01:57:27 -06:00
Ryan Houdek
126dfa073b
Firin ma lazer
2011-12-10 01:56:37 -06:00
Ryan Houdek
54a90d08ce
Fix one error.
2011-12-09 21:15:15 -06:00
Ryan Houdek
e8087aa1a9
Remove bSupportsGLSLLocation since it won't work how I expect it.
2011-12-09 19:14:02 -06:00
Ryan Houdek
8e5bb59cb6
Add in UBOs, doesn't work yet. Still debugging here.
2011-12-09 17:30:05 -06:00
Ryan Houdek
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