summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/profile.h
AgeCommit message (Collapse)Author
2025-01-14Revert incorrect copyright attribution for non-contributed filesZephyron
- In commit b3facaa6bb30cdc39f2b7d632fef1e3bfeee7785, the copyright header was updated to include "Citron Homebrew Project" across multiple files, regardless of whether any contributions were made. - This commit removes the incorrect attribution and reverts the copyright header to its previous state. - Copyright attribution should only be added when meaningful contributions have been made to the file. - This commit ensures proper compliance with copyright standards and maintains correct attribution to the respective contributors. - Special thanks to Tachi for pointing out the need for these corrections and ensuring that proper attribution practices are followed.
2024-12-31chore: update project references and add Citron copyrightZephyron
- Replaced all references to the old project name with Citron. - Added Citron copyright information alongside existing notices in all files.
2024-02-19shader_recompiler: throw on missing geometry streams in geometry shadersLiam
2023-12-18shader_recompiler: ignore clip distances beyond driver support levelLiam
2023-11-26Merge branch 'master' into ssbo-alignAmeer J
2023-11-19renderer_vulkan: ignore viewport stores on non-supporting driversLiam
2023-10-31shader_recompiler: Align SSBO offsets in GlobalMemory functionsAmeer J
2023-10-19Manually robust on Maxwell and earlierKelebek1
2023-06-03Avoid using VectorExtractDynamic for subgroup mask on Adreno GPUsBilly Laws
This crashes their shader compiler for some reason.
2023-06-03Implement scaled vertex buffer format emulationBilly Laws
These formats are unsupported by mobile GPUs so they need to be emulated in shaders instead.
2023-04-08video_core: Enable ImageGather with subpixel offset on IntelWollnashorn
2023-04-08shader_recompiler: Add subpixel offset for correct rounding at `ImageGather`Wollnashorn
On AMD a subpixel offset of 1/512 of the texel size is applied to the texture coordinates at a ImageGather call to ensure the rounding at the texel centers is done the same way as in Maxwell or other Nvidia architectures. See https://www.reedbeta.com/blog/texture-gathers-and-coordinate-precision/ for more details why this might be necessary. This should fix shadow artifacts at object edges in Zelda: Breath of the Wild (#9957, #6956).
2023-01-05Vulkan: Add a workaround for input_position on Adreno driversBilly Laws
Adreno drivers will crash compiling geometry shaders if the input position is not wrapped in a gl_in struct.
2022-12-13Vulkan: Add support for VK_EXT_depth_clip_control.FernandoS27
2022-04-23general: Convert source file copyright comments over to SPDXMorph
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.
2021-12-29glsl: Add boolean reference workaroundameerj
2021-12-29glsl_context_get_set: Add alternative cbuf type for broken driversameerj
some drivers have a bug bitwise converting floating point cbuf values to uint variables. This adds a workaround for these drivers to make all cbufs uint and convert to floating point as needed.
2021-07-22glsl: Clamp shared mem size to GL_MAX_COMPUTE_SHARED_MEMORY_SIZEameerj
2021-07-22shader: Ignore global memory ops on devices lacking int64 supportameerj
2021-07-22emit_spirv: Workaround VK_KHR_shader_float_controls on fp16 NvidiaReinUsesLisp
Fix regression on Fire Emblem: Three Houses when using native fp16.
2021-07-22shader: Rework varyings and implement passthrough geometry shadersReinUsesLisp
Put all varyings into a single std::bitset with helpers to access it. Implement passthrough geometry shaders using host's.
2021-07-22shader: Split profile and runtime info headersReinUsesLisp
2021-07-22glsl: Address rest of feedbackameerj
2021-07-22glsl: Conditionally use fine/coarse derivatives based on device supportameerj
2021-07-22glsl: Cleanup/Address feedbackameerj
2021-07-22glsl: Add stubs for sparse queries and variable aoffi when not supportedameerj
2021-07-22glsl: Implement fswzaddameerj
and wip nv thread shuffle impl
2021-07-22glsl: Implement image atomics and set layerameerj
along with some more cleanup/oversight fixes
2021-07-22glsl: Add cbuf access workaround for devices with component indexing bugameerj
2021-07-22glsl: Use textureGrad fallback when EXT_texture_shadow_lod is unsupportedameerj
2021-07-22glsl: skip gl_ViewportIndex write if device does not support itameerj
2021-07-22glsl: Query GL Device for FP16 extension supportameerj
2021-07-22glasm: Use ARB_derivative_control conditionallyReinUsesLisp
2021-07-22opengl: Declare fragment outputs even if they are not usedReinUsesLisp
Fixes Ori and the Blind Forest's menu on GLASM. For some reason (probably high level optimizations) it is not sanitized on SPIR-V for OpenGL. Vulkan is unaffected by this change.
2021-07-22glasm: Use storage buffers instead of global memory when possibleReinUsesLisp
2021-07-22shader: Split profile and runtime information in separate structsReinUsesLisp
2021-07-22shader: Add OpenGL shader profile optionsReinUsesLisp
2021-07-22shader: Implement SR_Y_DIRECTIONFernandoS27
2021-07-22spirv: Implement ViewportMask with NV_viewport_array2ReinUsesLisp
2021-07-22shader: Implement tessellation shaders, polygon mode and invocation idReinUsesLisp
2021-07-22spirv: Implement alpha testameerj
2021-07-22shader: Implement transform feedbacks and define file formatReinUsesLisp
2021-07-22shader: Implement early Z testsReinUsesLisp
2021-07-22shader: Implement geometry shadersReinUsesLisp
2021-07-22shader: Implement ATOM/S and REDameerj
2021-07-22spirv: Guard against typeless image reads on unsupported devicesReinUsesLisp
2021-07-22shader: Implement ViewportIndexFernandoS27
2021-07-22spirv: Add fixed pipeline point sizeReinUsesLisp
2021-07-22shader: Implement LDS, STS, LDL, and STS and use SPIR-V 1.4 when availableReinUsesLisp
2021-07-22shader: Better interpolation and disabled attributes supportReinUsesLisp