Ryan Houdek
f2d998c938
Work around broken Android garbage.
...
This fixes running Dolphin on the Nexus 9.
Android's EGL stack has internal arrays that they use for tracking OpenGL function usage. Probably has something to do with their OpenGL profiling
garbage that used to be in ADT.
Android has three of these arrays, each statically allocated.
One array is for all GLES 1.x functions
One array is for all GLES 2.0/3.0/3.1 and a couple of extensions they deem worthy of being in this array.
The last array is for all function pointers grabbed via eglGetProcAddress that isn't in the other two arrays.
The last array is the issue that we are having problems with. This array is 256 members in length.
So if you are pulling more than 256 function pointers that Google doesn't track in their internal array, the function will return NULL and yell at you
in logcat.
The Nvidia Shield Tablet gets around this by replacing part of the EGL stack with their own implementation that doesn't have this garbage.
The Nexus 9 on the other hand doesn't get away with this. So we pull >100 more function pointers than the array can handle, and some of those we need
to use.
The workaround for this is to grab OpenGL 1.1 functions last because we won't actually be using those functions, so we get away with not grabbing the
function pointers.
2014-12-20 15:15:57 -06:00
skidau
31bc51072b
Merge pull request #1712 from skidau/GC-Adapter-thread-fix
...
Corrected the buffer that is used by the GCAdapter thread.
2014-12-20 13:09:19 +11:00
Ryan Houdek
d7d1d11286
Merge pull request #1722 from Armada651/intel-interface
...
OGL: Disable geometry shaders on Intel's Windows drivers due to broken interface blocks.
2014-12-19 17:09:01 -06:00
Jules Blok
bc3ed44050
OGL: Disable geometry shaders on Intel's Windows drivers due to broken interface blocks.
2014-12-19 23:56:02 +01:00
skidau
f913cb6ab6
Removed redundant code from the GC Adapter interface.
2014-12-20 09:44:35 +11:00
skidau
9eecfca71d
Corrected the buffer that is used by the GCAdapter thread.
2014-12-20 09:44:35 +11:00
Ryan Houdek
b30802e2f0
Merge pull request #1721 from Sonicadvance1/fix_adreno_400
...
Fixes Adreno 400 performance.
2014-12-19 15:55:50 -06:00
Ryan Houdek
2a95454c01
Merge pull request #1717 from Armada651/geom-shaderpack
...
VideoCommon: Don't specify the redundant in/out qualifier if GL_ARB_shading_language_420pack is supported.
2014-12-19 15:54:13 -06:00
Jules Blok
0d79e8f32b
VideoCommon: Don't specify the redundant in/out qualifier if GL_ARB_shading_language_420pack is supported.
...
Some driver developers interpreted "can" as "must" in the OpenGL specs. (I'm looking at you AMD)
2014-12-19 22:45:39 +01:00
Ryan Houdek
8c0e26d969
Minor changes to DriverDetails
...
Fixes a typo where the official IMGTec drivers were said to be the OSS driver support.
Removes Mali GPU family detection just like I removed the Adreno family detection.
We don't support Mali Utgard anyway.
If we need family detection we can properly add it, right now it isn't needed.
2014-12-19 21:41:12 +00:00
Ryan Houdek
0fec69001b
Fixes Adreno 400 slow performance.
...
Adreno 300 and 400 have the same video driver performance issues because they are very similar architectures which use basically the same thing with
everything.
There isn't any need to detect the family of the driver with Qualcomm anyway. If we ever need family specific bugs then we can implement real support
for that.
Performance issue on Adreno 400 series was due to us only detecting Adreno 300 series, and with Adreno 400 it wouldn't use the bugs, which would cause
it to use glBufferSubData, causing the huge performance hit.
2014-12-19 21:31:37 +00:00
Markus Wick
ca18e51450
Merge pull request #1715 from Armada651/geom-interface
...
VideoCommon: Add in/out qualifiers to centroid storage qualifier.
2014-12-19 12:41:10 +01:00
Jules Blok
cdd9e07522
VideoCommon: Add in/out qualifiers to centroid storage qualifier.
...
Fixes shaders for GPUs that don't support GL_ARB_shading_language_420pack.
2014-12-19 12:19:15 +01:00
Ryan Houdek
02f22152be
Merge pull request #1706 from Armada651/line-width
...
VideoCommon: Merge LineGeometryShader into GeometryShaderGen.
2014-12-18 19:43:12 -06:00
Jules Blok
e7e8a4f1cb
GeometryShaderGen: Don't use the reserved keyword "point" in D3D.
2014-12-19 02:24:41 +01:00
Markus Wick
c7b809d46b
Merge pull request #1669 from degasus/swvertexloader
...
Video Software Vertex Loader
2014-12-18 19:30:56 +01:00
shuffle2
717e155ce1
Merge pull request #1689 from kayru/d3d_efb_copy_fix
...
D3D: Fixed D3D validation error during EFB to texture copy
2014-12-18 02:59:51 -08:00
Jules Blok
8dc3653ac9
VideoCommon: Don't pass structs between shader stages when geometry shaders are unsupported.
2014-12-18 00:37:16 +01:00
Jules Blok
1f84f4632d
OGL: Check OpenGL version for geometry shader support.
2014-12-18 00:37:16 +01:00
Jules Blok
93ce95b48e
D3D: Use ROUND_UP macro for rounding buffer sizes.
2014-12-18 00:37:15 +01:00
Jules Blok
69df23f725
VideoCommon: Only use interface blocks when geometry shaders are supported.
2014-12-18 00:37:14 +01:00
Jules Blok
1af3d8447a
GeometryShaderManager: Set the constants within the callbacks.
2014-12-18 00:37:09 +01:00
Jules Blok
3d9dfad6a2
D3D: Set the geometry shader before every draw call.
...
And refactor the VertexManager draw call.
2014-12-18 00:36:50 +01:00
Jules Blok
7e8f96f0d3
OGL: Don't generate a geometry shader if the backend doesn't support it.
...
This commit repurposes the bSupportsStereoscopy flag as the bSupportsGeometryShaders flag.
2014-12-18 00:36:49 +01:00
Jules Blok
782a5adb94
VideoCommon: Pass interface blocks between shader stages to resolve naming conflicts.
2014-12-18 00:36:49 +01:00
Jules Blok
bd6d229733
GeometryShader: Disable the geometry shader stage if it is a pass-through shader.
2014-12-18 00:36:48 +01:00
Jules Blok
f2e52b46c3
GeometryShaderGen: Cosmetics.
2014-12-18 00:36:47 +01:00
Jules Blok
2850c9a206
VertexManager: Disable culling for lines and points.
2014-12-18 00:36:47 +01:00
Jules Blok
0ac7103391
GeometryShaderGen: Pack uniforms more tightly.
2014-12-18 00:36:40 +01:00
skidau
418e006e88
Merge pull request #1710 from degasus/jit-linking-fix
...
Jit: move constants out of class
2014-12-18 09:48:18 +11:00
degasus
5f322cc9e8
Jit: move constants out of class
...
This fixes a linking issues on debug builds.
2014-12-17 23:42:10 +01:00
Yuriy O'Donnell
5688c27610
D3D: Moved setting texture by slot mask into StateManager
2014-12-17 23:41:26 +01:00
shuffle2
d9e2f51900
Merge pull request #1698 from shuffle2/win-qt-5.4.0
...
windows: use qt 5.4.0
2014-12-17 06:06:59 -08:00
Markus Wick
98292682fe
Merge pull request #1709 from unknownbrackets/attributeless-fix
...
OGL: Attempt a larger buffer to workaround 7946
2014-12-17 14:20:54 +01:00
skidau
5313dd1b8c
Merge pull request #1702 from CarlKenner/DebugSymbols
...
Fix many bugs with the Symbols menu (when run with -d argument).
2014-12-17 22:04:56 +11:00
Unknown W. Brackets
5b51f5a801
OGL: Attempt a larger buffer to workaround 7946.
2014-12-16 22:20:45 -08:00
CarlKenner
6e7eb52211
Rename menu items, stop using PanicAlertT, remove -d when running from visual studio.
...
I accidentally committed my addition of the -d option that I used for testing, now it's fixed.
2014-12-17 01:12:33 +10:30
CarlKenner
84ae817c18
Remove white space at ends of lines.
2014-12-17 01:12:08 +10:30
CarlKenner
cd5d354acc
Load 4 column map files like in American Mensa Academy.
...
Unfortunately the map files in American Mensa Academy don't correspond to the release version.
But at least now if other games use those map files we will be able to load them.
2014-12-17 01:12:03 +10:30
CarlKenner
dfd915eb53
Merge bad map file loading into the original function.
2014-12-17 01:11:58 +10:30
CarlKenner
f95f43fdde
Apparently c_str doesn't return a C str.
2014-12-17 01:11:52 +10:30
CarlKenner
aa850c8eee
Convert spaces to tabs in IDA Pro script.
2014-12-17 01:11:47 +10:30
CarlKenner
e246aaf419
Add "Load bad map file" option for map files on disc that don't quite match.
...
Currently it is very simple and naive, but filters out most of the bad matches.
2014-12-17 01:11:41 +10:30
CarlKenner
f54d9e33c2
Fix many bugs with the Symbols menu (when run with -d argument).
...
The Symbols menu is now fully useable.
2014-12-17 01:11:36 +10:30
Markus Wick
d3c4a8eda3
Merge pull request #1707 from magumagu/blend-and-logic-op
...
D3D+OGL: choose blendenable over logicopenable.
2014-12-16 12:27:04 +01:00
magumagu
31bcdb8f2f
D3D+OGL: choose blendenable over logicopenable.
...
No sane game should turn on both logicopenable and blendenable in the same
blend mode, but not every game is sane. Fixes issue 6009.
2014-12-15 20:16:25 -08:00
skidau
7b5b76caa4
Merge pull request #1700 from JosJuice/discio-clear-error
...
DiscIO: Clear error status when reading file
2014-12-16 13:09:03 +11:00
skidau
ce8b3d83a8
Merge pull request #1693 from magumagu/memcheck-fastmem
...
JIT: use fastmem loads in MMU mode.
2014-12-16 13:07:53 +11:00
Jules Blok
d115048615
GeometryShaderGen: Remove redundant declaration.
2014-12-15 23:20:56 +01:00
Jules Blok
16af00d515
GeometryShaderGen: Use signed integers for the texture offset flags.
2014-12-15 23:05:16 +01:00