bdc28106ee
Optimize shader uid checks by checking the number of uid values which are actually used.
2013-06-22 21:47:22 +02:00
16ada5fa3d
Compactify generated UID generator assembly and generally cleanup code by storing tev stage hash values in a struct.
2013-06-22 21:47:22 +02:00
7df8a9cae8
Partial revert of 0247b2a97a
. I'll add a work around for Qualcomm in a bit. Qualcomm shader compiler failing was only due to floating suffixes not whole function defines. Qualcomm video driver devs seem to have a good response time when it comes to OpenGL ES 3 issues.
2013-06-18 07:52:36 -05:00
c57a90c5b5
don't define clipPos twice
...
fix issue 6378
2013-06-17 23:24:54 +02:00
f724b47f45
PixelShaderGen: Fix more critical issues, some of which are regressions of revision 32b78a85
.
2013-06-17 13:08:38 +02:00
2b2ca5260f
PixelShaderGen: Fixed some bugs, removed unused shader uid fields.
2013-06-17 13:03:38 +02:00
7a01ceba73
PixelShaderGen: Fix various merge conflicts and a critical regression from revision 32b78a85
.
2013-06-17 12:51:57 +02:00
c505260ec1
Fix some merge conflicts.
2013-06-17 12:29:47 +02:00
ca22872dae
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/VertexShaderGen.cpp
2013-06-17 12:05:47 +02:00
20719081df
PixelShaderGen: Move RegisterStates from global storage to stack.
2013-06-17 11:37:41 +02:00
32b78a8572
First steps of making the pixel shader uid struct more compact.
2013-06-17 10:50:12 +02:00
9594cac42c
Build fix: Android NDK doesn't support any locale switching.
...
Also, Mac OS X doesn't support DX9.
2013-06-16 14:51:38 +02:00
fc7099a905
Set the locale per-thread instead of globally when generating shaders. Add cross-compatible versions of newlocale, uselocale and freelocale.
...
This commit fixes a rare race condition when generating shaders because setlocale is global.
2013-06-16 12:33:13 +02:00
a905b18ef1
Merge branch 'ppd' - per pixel depth
...
use always ppd is a huge gpu performance drop: 20%-50%
and always disable it cause some rendering issues
so there is an option again
But this time it's called "Fast Depth Calculation"
2013-05-12 07:29:31 +02:00
bf67378812
Fix the integer compare in our GLSL fmod function
2013-05-11 00:16:20 -05:00
f7c3cacb5c
ppd: fix small issues in my last commit
2013-05-10 12:51:06 +02:00
89be1cbf51
recreate "per pixel depth" option and renamed it to fast depth calculation
2013-05-09 17:48:48 +02:00
0247b2a97a
[Android] More GLES3 things. Disable Framedumping and MSAA rendering. Remove the HLSL->GLSL shader defines since Qualcomm doesn't support this in their shader compiler. Now they get chosen in our shader generator instead.
2013-05-06 06:43:04 -05:00
9cb263ad48
PixelShaderGen: Set some uid fields that I missed before.
2013-04-29 21:19:48 +02:00
02afec5076
Polish shader uid checking.
2013-04-29 21:00:39 +02:00
77dae3496a
PixelShaderGen: Cleanups.
2013-04-29 19:52:12 +02:00
adab4e37f7
Fix some mistakes from the master merge; some cleanups.
2013-04-29 19:37:32 +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
8da425b008
Formatting cleanup for VideoCommon.
...
Block braces on new lines.
Also killed off trailing whitespace and dangling elses.
Spaced some things out to make them more readable (only in places where it looked like a bit of a clusterfuck).
2013-04-24 09:21:54 -04:00
bab9963b00
New license header introduced for DiscIO, AudioCommon, InputCommon, VideoCommon, and Common projects.
2013-04-17 23:09:55 -04:00
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
4c40e70b8a
ogl: support glsl120
2013-04-08 14:50:58 +02:00
195336021f
Fix a few typos in the comments/logging in VideoDX9, VideoCommon, and VideoSoftware projects.
...
See Render.cpp, PixelShaderGen.cpp, and PixelShaderManager.cpp for most of the changes.
See VertexShaderManager.cpp for a logging typo fix.
See SWRenderer.cpp for a small typo fix for a message that gets swprintf'd in DrawDebugText.
See SWVertexLoader.cpp for a typo fix of an assert message.
Should slightly improve the readability of some of those files.
2013-04-07 17:11:29 -04:00
0ca7ea6c3f
D3D11: Fix glitched polygon edges when MSAA is enabled (this time without breaking OpenGL)
2013-04-07 20:58:48 +02:00
9f8841e960
Revert "D3D11: Fix glitched polygon edges when MSAA is enabled."
...
This reverts commit 61c327ba8b
.
2013-04-03 21:17:09 -07:00
61c327ba8b
D3D11: Fix glitched polygon edges when MSAA is enabled.
2013-04-03 18:56:33 +02:00
a60e1a3db8
ShaderGen: Remove some TODOs and fix an issue with per pixel lighting.
2013-03-31 23:57:39 +02:00
f57b902d33
PixelShaderGen: Cleanups.
2013-03-31 23:53:46 +02:00
f6d65a636e
ShaderGen: Fix per pixel lighting.
2013-03-31 23:29:33 +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
9eccd56ef0
PixelShaderGen: Some cleanups.
2013-03-29 20:59:03 +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
f2a8fbb314
PixelShaderGen: Slightly reduce the number of redundant shader compilations.
2013-03-29 14:54:13 +01:00
c743e75d92
fixes for my last commit
2013-03-29 00:41:36 -03:00
40d919b352
Implement dual source blending to avoid unneeded alpha pass.
...
this implementation does not work in windows xp (sorry no support for dual source blending there).
this should improve speed on older hardware or in newer hardware using super sampling.
disable partial fix for 4x supersampling as I'm interested in knowing the original issue with the implementation to fix it correctly.
remove the deprecation label from the plugin while I'm working on it.
2013-03-28 20:08:51 -03:00
a171525df6
Fix Windows crash.
2013-03-27 01:33:27 +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
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
6962929356
GLSL: fix nfs-hp2
2013-03-15 23:32:01 +01:00
8c1091a21f
Merge branch 'master' into GLSL-master
...
Conflicts:
Source/Core/VideoCommon/Src/PixelShaderGen.cpp
Source/Plugins/Plugin_VideoDX11/Src/VertexManager.cpp
Source/Plugins/Plugin_VideoDX9/Src/VertexManager.cpp
2013-03-15 11:19:52 -05:00