c9e13f6b7a
ogl: fix ubo workaround
2013-08-23 17:53:20 +02:00
02afec5076
Polish shader uid checking.
2013-04-29 21:00:39 +02:00
5e6b712651
Merge 'master' into shader-uids-awesome.
...
Conflicts:
Source/Core/VideoCommon/Src/BPMemory.h
Source/Core/VideoCommon/Src/LightingShaderGen.cpp
Source/Core/VideoCommon/Src/PixelShaderGen.cpp
Source/Core/VideoCommon/Src/PixelShaderGen.h
Source/Core/VideoCommon/Src/PixelShaderManager.cpp
Source/Core/VideoCommon/Src/VertexShaderGen.cpp
Source/Core/VideoCommon/Src/VertexShaderGen.h
2013-04-25 14:05:54 +02:00
e78d99e5c1
New license header introduced to all Video based projects.
2013-04-17 23:29:41 -04:00
ef85b9af45
Update the license file text (change SVN to Git) in all projects except Core since I was told a merge was happening soon. So for the sake of the merge going smoothly, I'll fix that when I remove the tab/space mismatches from the Core project.
...
Also, some tab/space mismatches removed from VideoOGL, and some places I missed in VideoDX[number] projects.
Now, the Core is literally the only project with tab/space mismatches (on a large scale).
2013-04-15 16:28:55 -04:00
b2517c0308
More build fixes.
2013-03-29 15:08:00 +01:00
3253603ae7
Merge 'master' into shader-uids-awesome.
...
Conflicts:
Source/Core/VideoCommon/Src/LightingShaderGen.cpp
Source/Core/VideoCommon/Src/PixelShaderGen.cpp
Source/Core/VideoCommon/Src/PixelShaderGen.h
Source/Core/VideoCommon/Src/PixelShaderManager.cpp
Source/Core/VideoCommon/Src/VertexShaderGen.cpp
Source/Core/VideoCommon/Src/VertexShaderGen.h
Source/Plugins/Plugin_VideoOGL/Src/PixelShaderCache.cpp
Source/Plugins/Plugin_VideoOGL/Src/PixelShaderCache.h
Source/Plugins/Plugin_VideoOGL/Src/VertexManager.cpp
Source/Plugins/Plugin_VideoOGL/Src/VertexShaderCache.cpp
Source/Plugins/Plugin_VideoOGL/Src/VertexShaderCache.h
2013-03-26 22:21:19 +01:00
106d7c37e8
GLSL: store and use exact ubo sizes
2013-03-17 16:49:42 +01:00
0325e37bfb
merge glsl headers into one place
2013-02-13 21:34:48 +01:00
b3675d15dc
enable shader cache again
2013-02-13 16:30:15 +01:00
398b37f371
fix ValidateShaderIDs
2013-02-13 15:16:32 +01:00
bbc292c210
merge Vertex and PixelShaderCache into ProgramShaderCache
...
this is the first step, uniform handling is still missing
2013-02-13 13:12:19 +01:00
30170575c8
create StreamBuffer class for ogl upload
2013-01-31 23:11:53 +01:00
afb5be10d9
OSX likes to put unordered_map in the weirdest of places...
2013-01-28 15:36:55 -06:00
fa45403557
Got to love that my server's cmake is half retarded.
2013-01-28 15:32:38 -06:00
d94f3c4155
Stop using std::pair and std::map. Switch over to u64 and std::unordered_map. Provides a very small speed boost.
2013-01-28 15:18:54 -06:00
a526fc5f92
ubo streaming
2013-01-25 13:20:42 +01:00
6401a18143
remove texture sampler from uniform list
2013-01-19 00:12:02 +01:00
bb200acdd8
also don't search in the shader cache if the shader isn't changed
2013-01-15 23:42:24 +01:00
c3aafc77b3
upload complete uniform buffer at once
...
this is the way of dx11. it would upload more per draw, but uses less calls.
will be faster if many uniforms are changed, but slower else
2013-01-14 13:58:11 +01:00
c2898748ac
bind locations _before_ link program, fix dest alpha
2012-12-31 02:34:27 +01:00
1a8005d948
set ProgramShaderCache program format correctly.
2012-10-09 23:56:00 -05:00
eb7a0c485a
More "stuff" for SS, also a small fix in the program shader cache cache setup."
2012-10-09 23:56:00 -05:00
210ecad15f
let us try normal c++ static init instead...
2012-10-09 23:56:00 -05:00
03b09bed5d
Get the program binary type correctly or else ATI makes massive (~400MB) shader caches. Also, don't need the line in the PixelShaderGen.
2012-10-09 23:56:00 -05:00
108722bed0
oops, forgot to make sure the gl program is actually free'd.
2012-10-09 23:54:18 -05:00
4cd748bbec
Remove some warnings in ProgramShadercache, Was using wrong variable for checking dual source blending.
2012-10-09 23:54:18 -05:00
4c1fef8f98
refactor ProgramShaderCache::PCacheEntry
2012-10-09 23:54:18 -05:00
aaa405c973
Checking GLEW_VERSION_4_0 is superfluous since we check GL_ARB_get_program_binary, and it's a runtime variable anyways.
2012-10-09 23:54:18 -05:00
31a8424bcc
fix formatting uglies introduced in glsl-master branch
2012-10-09 23:54:17 -05:00
5c486587a6
Write all shaders to disk on emulator stop instead of constantly. Also change pair from u64 to u32.
2012-10-09 23:43:22 -05:00
4eb227bd4c
If user doesn't compile with glew 1.6, cut out program binaries so everything still compiles.
2012-10-09 23:43:22 -05:00
d012c75005
Implement Program shaders cache. Seems to reduce a small amount of stuttering when F-Zero starts. Did it because I can :|
2012-10-09 23:42:41 -05:00
ba12c0b4f5
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.
2012-10-09 23:41:48 -05:00
d70726b035
glMapBuffer was slow, go back to glBufferSubData, single combined ps/vs ubo now
2012-10-09 23:41:48 -05:00
d9117ab6a1
try combining vs/ps ubo
2012-10-09 23:41:48 -05:00
e641ede232
make use of glMapBuffer to set ubo data
2012-10-09 23:41:48 -05:00
73a29bf6a1
have separate variables/functions for VS/PS ubo stuff, array was confusing.
2012-10-09 23:41:48 -05:00
3bcec51334
More coding style fixes because I suck at sed
2012-10-09 23:41:48 -05:00
3c6d0fc710
8 spaces indentation -> tabs
2012-10-09 23:41:48 -05:00
4a84c6f742
Add in UBOs, doesn't work yet. Still debugging here.
2012-10-09 23:41:05 -05:00
a357c77257
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).
2012-10-09 23:23:37 -05:00