summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/OGL/ProgramShaderCache.h
AgeCommit message (Collapse)Author
2024-10-10C++20: Synthesize `operator!=` From `operator==`mitaclaw
The inequality operator is automatically generated by the compiler if `operator==` is defined.
2022-11-28VideoBackends:OGL: Creating vertex formats shouldn't unbind anythingTellowKrinkle
2021-10-13Fix all uninitialized variable warnings (C26495)Pokechu22
2021-07-05treewide: convert GPLv2+ license info to SPDX tagsPierre Bourdon
SPDX standardizes how source code conveys its copyright and licensing information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX tags are adopted in many large projects, including things like the Linux kernel.
2019-07-26OGL/ProgramShaderCache: Convert typedef over to a using aliasLioncash
Same thing, but nicer to read from left to right.
2019-07-26OGL/ProgramShaderCache: Use std::string_view where applicableLioncash
2019-04-21OGL: Fix binding error on shutdownStenzek
This was occurring if the imgui vertex format was bound on shutdown, which is destroyed before the vertex buffers
2019-04-21OGL: Store shader source in OGLShaderStenzek
So it can be dumped with info log when linking fails.
2019-04-21OGL: Remove unused ProgramShaderCache::CompileShader()Stenzek
2019-04-16OGL: Support returning pipeline cache dataStenzek
2019-02-19Move most backend functionality to VideoCommonStenzek
2018-12-04Use main buffers for utility drawsStenzek
2018-03-10OGL: Re-implement async shader compilingStenzek
2018-03-10Move shader caches to VideoCommonStenzek
2018-03-10OGL: Make ProgramShaderCache thread safeStenzek
2018-02-22VideoBackends: Add AbstractShader and AbstractPipeline classesStenzek
2018-02-22OGL: Track state of last bound vertex array objectStenzek
This reduces the overhead of calling glBindVertexArray() every time RestoreAPIState() is called, even when it is redundant.
2017-09-11Renderer: Move cull mode to a rasterization state objectStenzek
Also moves logic for primitive handling to VideoCommon.
2017-09-02VideoBackends: Add the explicit keyword to WorkItem-derived class constructorsLioncash
Prevents implicit conversions
2017-09-02OGL/ProgramShaderCache: Remove unnecessary virtual keywordLioncash
This is superfluous, considering the override keyword is present.
2017-08-02ProgramShaderCache: Create a FBO for shared contexts to draw intoStenzek
This way it allows us to use surfaceless contexts in EGL/GLX. It also ensures that the shared context shares a similar setup to the main context's framebuffer, potentially reducing the number of variants a driver needs to generate.
2017-07-30OGL: Uber shader supportStenzek
2017-07-20OGL: Reload shader cache when relevant video config changesStenzek
2017-06-13Video Backends: Split texture cache code out into separate files, introduce ↵iwubcode
'AbstractTexture'
2017-04-01OGL: Support compute shaders and emitting GLSL 4.3Stenzek
This also changes bSupportsEarlyFragmentTests to bSupportsImageLoadStore, as it is used for both.
2017-01-04VideoCommon: Make dst_alpha state implicit.degasus
2016-11-27Remove unnecessary ConfigManager includesLéo Lam
Making changes to ConfigManager.h has always been a pain, because it means rebuilding half of Dolphin, since a lot of files depend on and include this header. However, it turns out some includes are unnecessary. This commit removes ConfigManager includes from files which don't contain SConfig or GPUDeterminismMode or GPU_DETERMINISM (which means the ConfigManager include is not used). (I've also had to get rid of some indirect includes.)
2016-06-26Remove UID Checker.Scott Mansell
Kind of pointless now that multiple shaders with the same UID are now fundementally impossible.
2016-06-24Reformat all the things. Have fun with merge conflicts.Pierre Bourdon
2016-01-04Merge pull request #3431 from stenzek/shadercacheMathew Maidment
ShaderGen: Remove virtual methods and string from ShaderGeneratorInterface.
2016-01-02ShaderGen: Remove virtual methods from ShaderGeneratorInterface, move string ↵Stenzek
buffer to ShaderCode This fixes the crashes occuring at startup with a non-empty shader cache. Because LinearDiskCache reads/writes to the storage of ShaderUid, ShaderUid must be trivially copyable. Additionally, adds a static assert to LinearDiskCache to ensure this doesn't happen in the future. The initialization of ShaderUid data has been moved to the code generation functions, so the above condition holds true.
2016-01-01ProgramShaderCache: Simplify SHADERUID comparison operatorsLioncash
2015-12-26ShaderGeneration: Get rid of static buffersLioncash
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-09-22Move GL interface code out of the OpenGL video backend.Scott Mansell
2015-05-25Set copyright year to when a file was createdTillmann Karras
2015-05-25Update license headers to GPLv2+Tillmann Karras
2014-12-14GeometryShaderGen: Pass the primitive type and always run the generator ↵Jules Blok
regardless of stereoscopy.
2014-11-28Merge pull request #1439 from Armada651/ogl-stereo-3dRyan Houdek
OGL: Stereoscopic 3D Support
2014-11-24More formatting and consistency fixesStevoisiak
2014-11-23Cosmetics.Jules Blok
2014-11-23Add geometry shader generator for stereo 3D.Jules Blok
2014-08-15OGL: Fix brace and body placementsLioncash
Also got rid of void argument specifiers. These are a carryover from C.
2014-03-14OGL: Remove some dead code.Tony Wasserka
2014-03-11Fixes spacing for "for", "while", "switch" and "if"Matthew Parlane
Also moved && and || to ends of lines instead of start. Fixed misc vertical alignments and some { needed newlining.
2014-02-20Fix more header sorting issues in VideoBackends/ (now check-includes clean).Pierre Bourdon
2014-02-18Convert all includes to relative paths.Lioncash
2014-02-10Replace all include guard ifdefs with "#pragma once"lioncash