summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/OGL/ProgramShaderCache.cpp
AgeCommit message (Collapse)Author
2020-01-24Add Dolphin version and current video backend to shader compilation logsRyan Meredith
2019-07-26OGL/ProgramShaderCache: Use std::lock_guard deduction guides where applicableLioncash
Same thing, less reading.
2019-07-26OGL/ProgramShaderCache: Remove unused headersLioncash
Removes a few inclusions that aren't necessary, reducing the number of header dependencies.
2019-07-26OGL/ProgramShaderCache: Use std::string_view where applicableLioncash
2019-07-10VideoCommon/Statistics: Rename stats global to g_statsLioncash
Makes the global variable follow our convention of prefixing g_ on global variables to make it obvious in surrounding code that it's not a local variable.
2019-07-10VideoCommon/Statistics: Normalize statistic variable namesLioncash
Normalizes all variables related to statistics so that they follow our coding style. These are relatively low traffic areas, so this modification isn't too noisy.
2019-05-04Merge pull request #7839 from ShFil119/impr/redundantLéo Lam
Remove redundant initialization
2019-04-30Remove redundant initializationFilip Gawin
2019-04-21OGL: Set shared context state up to match main contextStenzek
Has a better chance of avoiding recompiling if so.
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-03-29Merge pull request #7869 from stenzek/d3dcommonConnor McLaughlin
D3D: Move sharable D3D11/D3D12 code to common library
2019-03-29OGL: Support subgroup reduction operations via GL_NV_shader_thread_shuffleStenzek
2019-03-29VertexManagerBase: Increase vertex/uniform buffer sizesStenzek
ZTP was uploading 10MB+ of uniforms per frame, reducing paralellism by forcing GPU waits.
2019-02-19Move most backend functionality to VideoCommonStenzek
2018-12-04Use main buffers for utility drawsStenzek
2018-10-20GLContext: Remove global context pointerStenzek
2018-10-20Refactoring and cleanup of GLInterface (now GLContext)Stenzek
2018-03-16Assert: Remove unused parameter from DEBUG_ASSERTLioncash
This brings the macro in line with the regular ASSERT macro, which only has one macro parameter.
2018-03-14Assert: Uppercase assertion macrosLioncash
Macros should be all upper-cased. This is also kind of a wart that's been sticking out for quite a while now (we avoid prefixing underscores).
2018-03-10OGL: Move primitive restart enable logic to GLUtilStenzek
2018-03-10OGL: Re-implement async shader compilingStenzek
2018-03-10Move shader caches to VideoCommonStenzek
2018-03-10OGL: Fix abstract pipelines on drivers without binding layout supportStenzek
2018-03-10OGL: Make ProgramShaderCache thread safeStenzek
2018-02-25OGL: Only create bad shader files in Dump when compile failedStenzek
Warnings are still logged.
2018-02-22VideoBackends: Add AbstractShader and AbstractPipeline classesStenzek
2018-02-22OGL: Log warnings from shader compiles, even if it compiled successfullyStenzek
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.
2018-01-05Standardise some enums from ALL_CAPS to CamelCaseJonathan Hamilton
2018-01-05Workaround qualcomm driver bugJonathan Hamilton
It seems it doesn't like modifying inout variables in place - so instead use a temporary for ocol0/ocol1 and only write them once at the end of the shader
2018-01-05Implement dual-source blending in shaderJonathan Hamilton
For some GLES drivers that don't support dual-source blending, but do support GL_EXT_shader_framebuffer_fetch, this might be useful.
2017-09-11VideoBackends: Move SamplerState to commonStenzek
2017-09-11Renderer: Move cull mode to a rasterization state objectStenzek
Also moves logic for primitive handling to VideoCommon.
2017-09-05VideoBackends: Clear uid bits that are unused for the current backendStenzek
Currently, this is only the logic op bit, but this will be extended to the framebuffer fetch/blend modes. In the future, when/if we move to VideoCommon pipelines, this state will be part of the pipeline UID anyway, and we can mask it out in the backend by using a two-level map, so the shaders/programs are shared.
2017-08-05ProgramShaderCache: Call glTexImage3D after glTexParameterStenzek
Was missed before merge.
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-31VideoConfig: Drop force vertex/pixel ubershader settingsStenzek
This was mainly included for debugging, but could end up being confusing for users, as well as polluting the GL program cache with a mix of uber and specialized shaders if the option was changed.
2017-07-30Ubershaders: Support per-pixel lightingStenzek
2017-07-30VideoBackends: Support a different number of threads for precompilingStenzek
At runtime, we only really want a single shader compiler thread. However, for initial boots, we can use a higher number to speed things up.
2017-07-30ShaderGen: Use consistent variable names for texture coordinatesStenzek
2017-07-30OGL: Uber shader supportStenzek
2017-07-20ShaderGen: Pass host config to shader generation functionsStenzek
Also moves the host config checks to common.
2017-07-20VideoCommon: Move shader cache filename generation to commonStenzek
2017-07-20OGL: Reload shader cache when relevant video config changesStenzek
2017-06-18Merge pull request #5305 from iwubcode/abstract_textureshuffle2
Abstract Texture
2017-06-15Add a namespace to OpenFStreamJosJuice
For consistency with the other functions in FileUtil.h.
2017-06-15Move IOFile to a separate fileJosJuice
Reduces the number of files that need to be recompiled when making changes to FileUtil.h.