summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_graphics_pipeline.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-11-18gl_graphics_pipeline: GLASM: Fix transform feedback attribs buffer modeAmeer J1-1/+5
GL_SEPARATE_ATTRIBS only applies when multiple buffers are being used, else GL_INTERLEAVED_ATTRIBS handles the cases for a single buffer with potentially more than one attribute
2023-08-13gl_graphics_pipeline: Fix GLASM storage buffer detectionAmeer J1-2/+2
2023-08-13gl_graphics_pipeline: GLASM: Fix transform feedback with multiple buffersAmeer J1-13/+1
2023-07-21settings,general: Rename non-confirming enumslat9nq1-3/+3
2023-07-19general: Silence -Wshadow{,-uncaptured-local} warningslat9nq1-7/+8
These occur in the latest commits in LLVM Clang.
2023-06-26shaders: Track local memory usageameerj1-0/+1
2023-06-16video_core: Use sampler IDs instead pointers in the pipeline configWollnashorn1-4/+4
The previous approach of storing pointers returned by `GetGraphicsSampler`/`GetComputeSampler` caused UB, as these functions can cause reallocation of the sampler slot vector and therefore invalidate the pointers
2023-06-15video_core: Fallback to default anisotropy instead to 1x anisotropyWollnashorn1-1/+1
2023-06-15video_core: Add per-image anisotropy heuristics (format & mip count)Wollnashorn1-5/+20
2023-03-09OpenGL: Prefer glClientWaitSync for OGLSync objectsameerj1-4/+1
At least on Nvidia, glClientWaitSync with a timeout of 0 (non-blocking) is faster than glGetSynciv of GL_SYNC_STATUS.
2023-02-14remove static from pointer sized or smaller types for aesthetics, change constexpr static to static constexpr for consistencyarades791-2/+1
Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-14add static lifetime to constexpr values to force compile time evaluation where possiblearades791-1/+2
Signed-off-by: arades79 <scravers@protonmail.com>
2023-01-30gl_graphics_pipeline: Force context flush when loading shader cacheameerj1-3/+4
2022-11-04video_core: Fix SNORM texture buffer emulating error (#9001)Feng Chen1-2/+2
2022-10-07Update 3D regsKelebek11-7/+22
2022-10-06Shader Decompiler: Check for shift when deriving composite samplers.Fernando Sahmkow1-2/+3
2022-10-06VideoCore: Fix channels with disk pipeline/shader cache.Fernando Sahmkow1-14/+14
2022-09-20video_core: Generate mipmap texture by drawingFengChen1-0/+11
2022-06-14common: Change semantics of UNREACHABLE to unconditionally crashLiam1-2/+2
2022-04-23general: Convert source file copyright comments over to SPDXMorph1-3/+2
This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-04-07video_core: Replace lock_guard with scoped_lockMerry1-1/+1
2022-03-06gl_graphics_pipeline: Improve shader builder synchronization using fences (#7969)Ameer J1-17/+29
* gl_graphics_pipeline: Improve shader builder synchronization Make use of GLsync objects to ensure better synchronization between shader builder threads and the main context * gl_graphics_pipeline: Make built_fence access threadsafe * gl_graphics_pipeline: Use GLsync objects only when building in parallel * gl_graphics_pipeline: Replace GetSync calls with non-blocking waits The spec states that a ClientWait on a Fence object ensures the changes propagate to the calling context
2021-11-16shader: Properly scale image reads and add GL SPIR-V supportReinUsesLisp1-8/+16
Thanks for everything!
2021-11-16shader: Properly blacklist and scale image loadsReinUsesLisp1-1/+1
2021-11-16texture_cache: Add getter to query if image view is rescaledReinUsesLisp1-2/+1
2021-11-16glsl/glasm: Pass and use scaling parameters in shadersReinUsesLisp1-13/+23
2021-11-16gl_graphics_pipeline: Add downscale factor to shader uniformsameerj1-1/+14
2021-11-16texture_cache: Simplify image view queries and blacklistingReinUsesLisp1-20/+22
2021-11-16opengl: Use Shader::NumDescriptors when possibleReinUsesLisp1-22/+10
2021-08-05texture_cache: Address ameerj's reviewyzct123451-1/+1
2021-07-23opengl: Fix asynchronous shadersReinUsesLisp1-3/+27
Wait for shader to build before configuring it, and wait for the shader to build before sharing it with other contexts.
2021-07-23renderer_opengl: Use ARB_separate_shader_objectsReinUsesLisp1-37/+25
Ensures that states set for a particular stage are not attached to other stages which may not need them.
2021-07-23video_core: Enable GL SPIR-V shaderslat9nq1-22/+42
2021-07-23gl_graphics_pipeline: Fix assembly shaders check for transform feedbacksReinUsesLisp1-1/+1
2021-07-23gl_graphics_pipeline: Inline hash and operator== key functionsReinUsesLisp1-10/+0
2021-07-23gl_shader_cache: Check previous pipeline before checking hash mapReinUsesLisp1-18/+15
Port optimization from Vulkan.
2021-07-23gl_graphics_pipeline: Port optimizations from Vulkan pipelinesReinUsesLisp1-55/+125
2021-07-23glsl: Address rest of feedbackameerj1-17/+15
2021-07-23gl_shader_cache: Implement async shadersameerj1-52/+71
2021-07-23gl_shader_cache: Remove const from pipeline source argumentsameerj1-2/+2
2021-07-23gl_shader_cache: Move OGL shader compilation to the respective Pipeline constructorameerj1-9/+58
2021-07-23gl_texture_cache: Create image storage viewsReinUsesLisp1-1/+4
Fixes SULD.D tests.
2021-07-23buffer_cache: Reduce uniform buffer size from shader usageReinUsesLisp1-10/+11
Increases performance significantly on certain titles.
2021-07-23buffer_cache: Mark uniform buffers as dirty if any enable bit changesReinUsesLisp1-1/+3
2021-07-23glasm: Prepare XFB from state instead of global registersReinUsesLisp1-4/+2
2021-07-23glasm: Use storage buffers instead of global memory when possibleReinUsesLisp1-4/+15
2021-07-23gl_shader_cache: Rename Program abstractions into PipelineReinUsesLisp1-14/+14
2021-07-23gl_graphics_program: Fix texture buffer bindingsReinUsesLisp1-24/+35
2021-07-23glasm: Set transform feedback stateReinUsesLisp1-2/+88
2021-07-23renderer_opengl: State track assembly programsReinUsesLisp1-20/+7
2021-07-23HACK: Bind stages before and after bindingsReinUsesLisp1-0/+11
Works around a bug where program parameters are only applied to the current stage, and this one wasn't bound at the moment. Affects all SSBO usages on GLASM.
2021-07-23opengl: Initial (broken) support to GLASM shadersReinUsesLisp1-2/+13
2021-07-23shader: Initial OpenGL implementationReinUsesLisp1-0/+296