summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/OGL/ProgramShaderCache.cpp
AgeCommit message (Collapse)Author
2015-12-26ShaderGeneration: Get rid of static buffersLioncash
2015-12-21StreamBuffer: Make factory function return a std::unique_ptrLioncash
2015-11-23We shouldn't be trying to enable the SSBO extension in ES.Ryan Houdek
2015-11-04Merge pull request #3227 from Tilka/sizeofScott Mansell
OGL: don't hardcode buffer sizes
2015-11-04OGL: use StringFromFormat where appropriateTillmann Karras
2015-11-04Merge pull request #3226 from Tilka/shadergenScott Mansell
VideoCommon: return code/uid from shader gens
2015-11-03DriverDetails: remove BUG_BROKENINFOLOG leftoversTillmann Karras
It was removed in 961873827853891aba6bc43243c01bf70e2c1f4b.
2015-11-03VideoCommon: return code/uid from shader gensTillmann Karras
rather than passing in non-const references
2015-11-01VideoCommon: flush vertex manager if components changeTillmann Karras
2015-10-29ShaderCaches: remove unneeded typedefsTillmann Karras
2015-10-29OGL/ProgramShaderCache: small cleanupTillmann Karras
Drop an unused function and privatize the cash, er, I mean cache.
2015-10-18Make sure FORCE_EARLY_Z is defined for GLESScott Mansell
2015-10-18Support Conservative Depth as a fallback for EarlyZScott Mansell
Allows Mesa based drivers to support ZCompLoc
2015-10-12PixelShaderGen: Use arrays of texture samplers.Scott Mansell
2015-09-28Fix building with PCH disabled.Rohit Nirmal
2015-09-07OGL: reimplement SSAA based on ARB_gpu_shader5degasus
So i965 shall support it again.
2015-09-06VideoBackends: Reimplement SSAA, now for D3D + OGLdegasus
2015-09-05Properly support MSAA and SSAA as separate features(+GLES)Ryan Houdek
SSAA relies on MSAA being active to work. We only supports 4x SSAA while in fact you can enable SSAA at any MSAA level. I even managed to run 64xMSAA + SSAA on my Quadro which made some pretty sleek looking games. They were very cinematic though. With this, it properly fixes up SSAA and MSAA support in GLES as well. Before they were broken when stereo rendering was enabled. Now in GLES they can properly support MSAA and also stereo rendering with MSAA enabled(with proper extensions).
2015-09-04Remove all of our workarounds for Qualcomm devices we don't support anymore.Ryan Houdek
2015-09-04Support EXT_blend_func_extended in GLES.Ryan Houdek
This lets us get dual source blending on GLES targets.
2015-09-01[GLES] Support texture_buffer for palette texture conversion.Ryan Houdek
OpenGL ES 3.2 adds this feature to core It was available to GLES 3.1 as GL_{EXT, OES}_texture_buffer as well. For the non-Nvidia vendors that implemented this is: - Qualcomm's Adreno 4xx - IMGTec's PowerVR Rogue
2015-08-26Support OpenGL ES 3.2.Ryan Houdek
OpenGL ES 3.2 adds a few things we care about supporting in core. In particular: - GL_{ARB,EXT,OES}_draw_elements_base_vertex - KHR_Debug - Sample Shading - GL_{ARB,EXT,OES,NV}_copy_image - Geometry shaders - Geometry shader instancing (If they support GL_{EXT,OES}_geometry_point_size) Nvidia was the first to release an OpenGL ES 3.2 driver which I uesd to test this on. This also enables GS Instancing on GLES 3.1 hardware if it supports all of the required extensions.
2015-06-12Options: merge SCoreStartupParameter into SConfigdegasus
2015-06-04Use PanicAlertT instead of PanicAlert when appropriateJosJuice
I tried to change messages that contained instructions for users, while avoiding messages that are so technical that most users wouldn't understand them even if they were in the right language.
2015-05-25Set copyright year to when a file was createdTillmann Karras
2015-05-25Update license headers to GPLv2+Tillmann Karras
2015-03-08Merge pull request #2142 from Sonicadvance1/fix_gles31_non_nvidiaRyan Houdek
Fix OpenGL ES 3.1 on non-Nvidia devices.
2015-03-08Fix OpenGL ES 3.1 on non-Nvidia devices.Ryan Houdek
We are declaring we require ARB_shader_image_load_store in the shader, this isn't an extension on GLES because it is part of the GLSL ES 3.1 spec. If we are running as GLES then just not put it in the shaders.
2015-03-02ProgramShaderCache: Do plenty of error checking before writing shaders to ↵Jules Blok
the disk.
2015-02-24OGL: support palette texture decodingdegasus
2014-12-19VideoCommon: Make IsPassthrough() a function of the ShaderUid.Jules Blok
2014-12-18OGL: Don't generate a geometry shader if the backend doesn't support it.Jules Blok
This commit repurposes the bSupportsStereoscopy flag as the bSupportsGeometryShaders flag.
2014-12-18GeometryShader: Disable the geometry shader stage if it is a pass-through ↵Jules Blok
shader.
2014-12-15GeometryShaderGen: Support multiple primitive types.Jules Blok
And make more stereoscopy code optional.
2014-12-14GeometryShaderGen: Pass the primitive type and always run the generator ↵Jules Blok
regardless of stereoscopy.
2014-12-14VideoCommon: Add a separate constants buffer for the geometry shader.Jules Blok
2014-12-13Merge pull request #1640 from rohit-n/switch-defaultskidau
Silence some -Wswitch-default warnings.
2014-12-11Silence some -Wswitch-default warnings.Rohit Nirmal
2014-12-07Enables stereo rendering with OpenGL ES 3.1 + AEP.Ryan Houdek
If the host device supports GLES 3.1 and AEP we can have stereo rendering. Just need to make sure to grab the correct function pointer that GL_EXT_geometry_shader provides, and enable AEP in the shaders. We can't just check if AEP is in the extension list for support because Qualcomm has failed once more. With the Nexus 6 it reports support for AEP but doesn't support OpenGL ES 3.1, which is an impossible combination. From reports on their forum it seems that attempting to use any AEP things results in nothing happening, seems like a stub implementation.
2014-11-29Fixes OpenGL ES rendering.Ryan Houdek
sampler2DArray doesn't have a default precision, so we need to set it ourselves.
2014-11-23ProgramShaderCache: Abort shader compilation if geometry shader failed to ↵Jules Blok
compile.
2014-11-23ProgramShaderCache: Don't call glAttachShader if no geometry shader was ↵Jules Blok
compiled.
2014-11-23VideoConfigDiag: Add stereoscopy options group.Jules Blok
2014-11-23ProgramShaderCache: Always generate a geometry shader UID, even if ↵Jules Blok
stereoscopy is disabled.
2014-11-23GeometryShaderGen: Support stereoscopy on GPUs without support for instancing.Jules Blok
2014-11-23Add geometry shader generator for stereo 3D.Jules Blok
2014-11-17OGL: implement bounding box support with ssbodegasus
This implemention tries to be as accurate as the old SW implemention, but it will remove the dependcy of our vertexloader on videosw.
2014-10-26OGL: Get rid of error macrosLioncash
2014-09-10Remove extra semicolons at the ends of some lines.Rohit Nirmal
2014-08-15OGL: Clean up parameters for some functions.Lioncash