Commit Graph

122 Commits

Author SHA1 Message Date
e7a5847c30 ShaderGen: Build fix. 2013-04-10 14:44:09 +02:00
abde070f63 LightingShaderGen: Use a float4 array for lights instead of a struct (uniform management in the non-UBO path is a mess otherwise).
Also fix a small bug (cf. revision  154c533e76).
2013-04-10 14:25:18 +02:00
ec08914905 Move Shader UID mismatch checking to VideoCommon. 2013-04-10 12:54:22 +02:00
ec5f596b31 VertexShaderGen: More per-pixel-lighting fixes. 2013-04-10 12:17:28 +02:00
a60e1a3db8 ShaderGen: Remove some TODOs and fix an issue with per pixel lighting. 2013-03-31 23:57:39 +02:00
f6d65a636e ShaderGen: Fix per pixel lighting. 2013-03-31 23:29:33 +02:00
248d56d930 ShaderGen: Small optimization. 2013-03-31 20:55:57 +02:00
2afd892e46 ShaderGen: More interface cleanups. Less wtfs :) 2013-03-29 22:24:49 +01:00
e31c2aa601 ShaderGen: Cleanup uid data writing. 2013-03-29 21:53:57 +01:00
3c02f227db PixelShaderManager: Disable constant cache (won't work in the non-UBO path of the opengl backend).
ShaderGen: Replace typeid usage with more general code.
2013-03-29 20:35:31 +01:00
11fae2e1cb Fix Windows build, try 4. 2013-03-27 00:17:46 +01:00
364a5093d9 ShaderGenCommon: Replace the GenOutput enum by using typeid instead. 2013-03-26 23:21:08 +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
b75a617d8a VertexShaderGen: De-uglify VS output structure writing 2013-03-26 19:36:59 +01:00
30f1a4b4fe Partially revert "Now CG plays nice with this new stuff."
This reverts commit 3943840d5c.

Suppport for old GLSL versions has been dropped, so to make things less ugly we can use a structure for lights again.
2013-03-26 19:36:59 +01:00
edd9d0e0ef Clean up more space/tab mismatches in AudioCommon, Common, and VideoCommon.
Not planning to touch Core since it's the most actively changed part of the project.
2013-03-19 21:51:12 -04:00
a1c5e90083 Merge branch 'master' into GLSL-master
Conflicts:
	CMakeLists.txt
	Source/Core/DolphinWX/CMakeLists.txt
	Source/Core/DolphinWX/Src/GLInterface.h
	Source/Core/VideoCommon/Src/PixelShaderGen.cpp
	Source/Core/VideoCommon/Src/TextureCacheBase.cpp
	Source/Core/VideoCommon/Src/VertexManagerBase.cpp
	Source/Plugins/Plugin_VideoDX11/Src/VertexManager.cpp
	Source/Plugins/Plugin_VideoDX9/Src/VertexManager.cpp
	Source/Plugins/Plugin_VideoOGL/Plugin_VideoOGL.vcxproj
	Source/Plugins/Plugin_VideoOGL/Plugin_VideoOGL.vcxproj.filters
	Source/Plugins/Plugin_VideoOGL/Src/GLUtil.h
	Source/Plugins/Plugin_VideoOGL/Src/PixelShaderCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/TextureCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/VertexManager.cpp
	Source/Plugins/Plugin_VideoOGL/Src/VertexShaderCache.cpp
	Source/Plugins/Plugin_VideoOGL/Src/main.cpp
2013-03-06 15:59:29 +01:00
642eab92bc disable per pixel depth if depth textures aren't used 2013-03-04 20:12:58 +01:00
dea1e2827d Open std::fstream in a unicode-safe manner. 2013-02-28 19:33:39 -06:00
8b7141d3de Revert "Fix performance issues on certain legacy graphics hardware that isn't capable of copying an integer."
This reverts commit 380f22ca0e.

Yeah, reverting a revert.
2013-02-26 08:57:35 +01:00
380f22ca0e Fix performance issues on certain legacy graphics hardware that isn't capable of copying an integer.
This reverts commit 52dacaa3e3.
2013-02-25 20:52:30 -06:00
c86b892f95 Revert "remove numTexGens=7 hack. only cg wasn't able to handle more then 8 texcoords"
This reverts commit 4653adecf1.

Also dx9 isn't able to hanlde more than 11 varying registers.
More frustrating is the lightning issue by this commit. I don't know why it happens...
2013-02-24 20:51:44 +01:00
52dacaa3e3 Make the posmtx vertex attribute an int instead of converting to and from a float. 2013-02-23 20:54:30 -06:00
4653adecf1 remove numTexGens=7 hack. only cg wasn't able to handle more then 8 texcoords 2013-02-17 22:37:00 +01:00
0325e37bfb merge glsl headers into one place 2013-02-13 21:34:48 +01:00
10567cb23f always write to uv coords 2013-02-07 13:23:20 +01:00
b519d37128 Move new lighting shader uids to LightingShaderGen.h 2013-01-28 21:52:03 +01:00
dc0f470215 Added new shader cache uids for pixel shader gen. 2013-01-28 21:44:39 +01:00
3c8df842bb Moved some of the new shader uid stuff to a common header file. 2013-01-28 21:05:29 +01:00
ca0e292dd4 Replace the shader uid system with a new one which quasi-automatically generates uids for shaders.
Currently used in the vertex shader only (had to fork lighting shaders for now).
2013-01-28 21:05:29 +01:00
e0ffdda26e Merge branch 'immediate-removal' into GLSL-master
Conflicts:
	Source/Core/VideoCommon/Src/PixelShaderGen.cpp
	Source/Plugins/Plugin_VideoSoftware/Src/SWRenderer.cpp

immediate-removal is a new created branch seperated from master but reverted the revert of immediate-removal
so we get less conflicts by merging
2013-01-24 16:58:28 +01:00
ff889c0e65 use attrib pointers in nativeVertexFormat 2013-01-14 22:59:08 +01:00
b06f30f845 Remove the per pixel depth option.
Depth calculations are always done in the pixel shader now.

Due to the unpredictability of our zcomploc hacks this commit probably changes the behavior of some games which use zcomploc.
2013-01-08 18:16:48 +01:00
b38b62afc6 remove glsl binding support. convert every shader to version 130 2013-01-02 16:56:08 +01:00
48ede4dd30 switch to glsl 130, more than OpenGL 3.1 isn't needed 2012-12-28 16:05:14 +01:00
7d93834cd8 Bit more cleanup from removing Nvidia CG 2012-12-27 22:53:07 -06:00
e3e14af0dd Revert "VertexShaderGen: Fix a shader compilation error.". I'm an idiot :p
This reverts commit 4d868705fd.
2012-12-24 21:29:24 +01:00
4d868705fd VertexShaderGen: Fix a shader compilation error. 2012-12-24 19:50:16 +01:00
85ac76e8e2 fix gcc compilation 2012-12-19 23:42:22 +01:00
3f0d7312fa A couple missed lines on the rebase. 2012-10-13 12:43:00 -05:00
10666a9b87 More 'stuff' 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
71f6b1eec6 Change 'stuff' 2012-10-09 23:56:00 -05:00
31a8424bcc fix formatting uglies introduced in glsl-master branch 2012-10-09 23:54:17 -05:00
9996f27120 Give OSX users more of a chance of supporting Single pass DSB in the future. 2012-10-09 23:42:41 -05:00
5bcbf92f43 Make sure to support everything even if GPU doesn't. 2012-10-09 23:41:06 -05:00
d4a80ca3ec yay, UBOs work 100% now. 2012-10-09 23:41:05 -05:00
1f75ee49bf 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. 2012-10-09 23:41:05 -05:00
b105d70339 Firin ma lazer 2012-10-09 23:41:05 -05:00
c82b92bfc2 Fix one error. 2012-10-09 23:41:05 -05:00