99301bd158
PixelShaderGen: Store early_ztest as part of shader uid.
2013-06-29 23:01:42 +02:00
f524312fd1
VertexShaderGen: Fix a potential bug where vertex shader uids don't change when pixel lighting is toggled.
2013-06-29 23:01:42 +02:00
e3c0a39d5d
Merge branch 'shader-uids-awesome-after-hours'.
2013-06-28 17:45:19 +02:00
166a9c5637
Finishing touches.
2013-06-28 17:43:53 +02:00
ba310ce096
PixelShaderManager: Revert code introduced mainly in revision 0fdeb81038
.
...
The shader constant usage profile functionality is still buggy and the code using it wasn't ever meant to be merged to master.
2013-06-25 13:37:38 +02:00
597a6b34cb
Compactify VertexShader uid struct.
2013-06-23 19:29:02 +02:00
a2e132dd4b
small index generator optimiztions
...
- rewrite loops to not use divisions and multiplications
- remove warnings as the current implementations seems to be correct (ignore additional vertices)
2013-06-23 14:38:25 +02:00
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
02cbcc8ec4
[Android] When running OpenGL ES 3 backend, we've got to switch the screen coordinates or bad things happen. Adds a Driver bug that causes swap every single flush. Hard requirement currently to see /anything/ on screen.
2013-06-18 12:44:06 -05:00
c4eb659fec
BPMemory: Assign a more descriptive name to a field in the genmode register.
2013-06-18 17:25:16 +02:00
6143594db6
[Android] Qualcomm glGetShaderInfoLog returns a max of 1024 bytes(tested) for the log, and glGetShaderiv with GL_INFO_LOG_LENGTH /always/ returns 0 on compile failure.
2013-06-18 10:24:36 -05: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
8816369144
PixelShaderGen: Add some TODOs.
...
Totally the perfect commit message for a final commit before merging :p
2013-06-17 13:17:25 +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
f0ea525d3b
PixelShaderGen: Change a comment slightly.
2013-06-17 11:39:50 +02:00
20719081df
PixelShaderGen: Move RegisterStates from global storage to stack.
2013-06-17 11:37:41 +02:00
7e0db58b1e
Fix stuff
2013-06-17 10:50:16 +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
fa4ad82878
Fix Windows Compiling?
2013-06-12 03:14:13 -05:00
9df3dbe13c
Build Fix
2013-06-11 08:38:45 -05:00
703a51e4c0
[Android] Start of *working* GLES3 support. Needs to be able to compile in Windows still.
2013-06-11 08:33:56 -05:00
196d152ad7
Invalidate the texture cache using the GPU thread when the CPU thread makes a request.
...
Fixes issue 6350.
2013-06-08 11:28:54 +10:00
a51d6a6ddd
add new statistics for gpu buffer streaming
2013-05-23 21:07:01 +02:00
10d1d19409
Set graphics settings while playing a movie in UpdateActiveConfig(), so settings can't be changed for a frame.
2013-05-21 19:20:22 -04: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
f348712d3a
BPMemory: Fix a small documentation mistake from revision 9365187f89
.
2013-05-10 11:47:06 +00: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
c7486609fa
fix underflow in IndexGenerator::AddFan
...
fix issue 6282
The Last Story seems to render a fan with two vertices. It is non-sense as it
shouldn't do anything, but the code underflows at (u32)numVerts-3
2013-05-09 10:17:12 +02:00
9365187f89
BPMemory: Add register documentation for texture source adress and EFB configuration.
2013-05-06 22:20:17 +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
2c7ed2a793
Apply color mask when alpha test parameters change. Required to make the changes in revision be706a3977
work properly.
...
Fixes issue 6080.
2013-05-01 11:50:37 +02: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
eef95fa4c5
ShaderGenCommon: Adding documentation.
2013-04-25 13:30:41 +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
4a48485482
Revert "Revert "Fix performance issues on certain legacy graphics hardware that isn't capable of copying an integer.""
...
This reverts commit 8b7141d3de
.
GLSL120 can't handle integer attributes :-(
2013-04-24 03:03:52 +02:00
d244bca1f5
Fix a bunch of random typos in comments and logging.
...
Also update the comment headers for two functions in GCMemcard.cpp.
2013-04-19 09:21:45 -04:00