Commit Graph

1720 Commits

Author SHA1 Message Date
dc23a076be disable emulate format changes on glsl120
The current shader uses bit operations which aren't supported by glsl120.
A workaround with round + frac + lots of additions would be possible, but unreadable.
So I think it isn't worth

But this fixes the annoying shader compilation error message
2013-08-06 10:34:30 +02:00
7d187dc597 Change a glClear in the OpenGL renderer to improve performance on Mali chips. 2013-08-02 23:19:16 +00:00
4aba0135e1 [Android] Qualcomm Swap hack isn't needed anymore due to the new StreamBuffer type. 2013-07-26 21:49:48 -05:00
bab2534c36 Didn't mean to disable hacked buffer. 2013-07-27 00:51:26 +00:00
8db9b61be6 Enable the shader cache on GLES3 now that the shaders compile fine on Mali and Adreno. 2013-07-27 00:42:20 +00:00
f786f0f0c6 Remove the broken buffers bug on Mali hardware since it isn't needed anymore using the glBufferData route in the StreamBuffer class. 2013-07-27 00:41:38 +00:00
319e29e7d0 Add the new glBufferData stream buffer type to the streambuffer class which is hugely more efficient on Mali drivers. 2013-07-27 00:40:16 +00:00
a9ebd7d3e5 Fix Android Build. 2013-07-26 15:02:03 +00:00
6887a0c341 Change from using glDrawElements/glDrawElementsBaseVertex to glDrawRangeElements/glDrawRangeElementsBaseVertex. On Mali, this reduces a internal function usage from 8% to off the charts. 2013-07-26 14:51:04 +00:00
3e697b363e Fix an issue where TextureConverter.cpp was creating a renderbuffer with the wrong format. Also a few minor shader issues where they were using integers in place of floats. 2013-07-25 18:39:00 +00:00
672871b3be Add in the Mali driver bug so we can call glFlush every flush. It seemingly is quicker calling flush every time instead of every n times. 2013-07-25 05:44:20 +00:00
9795d10dcb OGL/SamplerCache: Treat lod_bias as a signed integer. 2013-07-22 18:24:56 +00:00
c6ae08fc39 implement emulate efb format changes on ogl backend 2013-07-22 15:41:10 +02:00
15b8ac64ef Implement zcomploc on OpenGL4.2+ 2013-07-22 12:02:16 +02:00
737df2a68c Patch from Degasus that removes the last of the the GL_TEXTURE_RECTANGLE usages. This is needed to have GLES3 support. 2013-07-13 17:24:23 -05:00
3de5b1bed9 Fix vendor retrieval for Tegra in VideoOGL. 2013-07-02 21:58:09 -04:00
72d49e05a7 fix opengl debug build on win32 2013-06-27 10:34:53 +02:00
99d32e756f only provide ES2_compatibility workaround for non gles devices 2013-06-26 13:14:46 +02:00
21ca344a21 provide GL_ARB_ES2_compatibility workaround
ES2 is in ogl core since 4.1, but not all drivers support it
2013-06-25 18:14:41 +02:00
fb310f2247 Revert "Create our OGL context on the same thread in the OpenGL backend. Same issue with Qualcomm not working with threading correctly."
This reverts commit 2697b8c04f.

The context creation may be moved to Video_Prepare, but the window creation isn't allowed to.
Eg we set the window title or read the mouse position, both need the window.
Also the readback of the window size didn't worked any more.
2013-06-19 09:17:33 +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
9c32c923bc Remove saturate function define in GLSL since we use clamp everywhere instead. Change the function defines over to just regular defines since Qualcomm can't handle function defines at all it seems. 2013-06-18 12:42:14 -05: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
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
ab6151a5ba Build Fix 2x 2013-06-11 08:41:30 -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
2697b8c04f Create our OGL context on the same thread in the OpenGL backend. Same issue with Qualcomm not working with threading correctly. 2013-05-26 22:30:38 -05:00
a51d6a6ddd add new statistics for gpu buffer streaming 2013-05-23 21:07:01 +02:00
39c9516197 [Android] Qualcomm driver has a bug where it returns an invalid length for GL_INFO_LOG_LENGTH with glGetShaderiv. Qualcomm drivers seem to max out at ~512bytes returned from glGetShaderInfoLog so this is a reasonable max. 2013-05-17 21:13:02 -05: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
5ac58a34ea [Android] Beginning of GLES3 support. 2013-05-05 23:37:02 -05:00
cb5b9c0327 [Android] Add GLSLES3 to the GLSL version enums. Add in the version and precision qualifier to the shader header. 2013-05-05 23:37:02 -05:00
028a1a4971 GL_DEPTH_COMPONENT can't have type of GL_UNSIGNED_BYTE with glTexImage2D. Qualcomm drivers get hit with this but all else don't care. 2013-05-05 23:37:02 -05:00
a295a3eb56 ogl: report shader compilation issues in the same way as other backends 2013-05-04 23:30:13 +02:00
8bcd9a74c8 Clear the texture cache when a new dol is loaded via ES_LAUNCH. Fixes the black screen in The House of the Dead 2.
Abbreviated some of the information in the window titlebar.
2013-05-01 23:51:43 +10: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
673d256f45 glew1.8 debug build fix 2013-04-24 16:24:55 +02: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
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
605bbf5ca8 Merge remote-tracking branch 'origin/master' into Android-trash 2013-04-13 00:58:37 -05:00
39a7096711 Extend our OSD class to support callbacks on init, onframe, and shutdown. 2013-04-13 00:48:53 -05:00
addd3926d9 ogl: remove GL_TRIANGLE_FAN on utils rendering
wtf have I done? fans aren't supported well on hardware
2013-04-11 16:27:32 +02:00
7e630ba920 Merge branch 'primitive_restart' 2013-04-11 14:01:58 +02:00
3c87512180 ogl: fix single core crash
osx is missing, sorry but I'm too stupid for objective-c
2013-04-11 03:32:07 +02:00
26b428539a small cleanup suggested by neobrain 2013-04-10 14:12:35 +02:00