Age | Commit message (Collapse) | Author | |
---|---|---|---|
2025-02-28 | shader_recompiler: Implement vertex count lookup for Geometry stage | Zephyron | |
Add proper handling of input topologies in the Geometry stage for all three shader backends (GLASM, GLSL, SPIRV). This implementation uses a lookup table approach to determine vertex counts based on input topology type (Points, Lines, LinesAdjacency, Triangles, TrianglesAdjacency) and shifts the vertex count by 16 bits as required by the invocation info format. Additional changes: - Fixed TessellationControl and TessellationEval stages to properly break after emitting code - Added proper header include for runtime_info.h in GLASM backend - Improved code documentation with clear commenting patterns This change ensures accurate geometry shader behavior across all backends, improving compatibility with games that rely on proper vertex count reporting. Signed-off-by: Zephyron <zephyron@citron-emu.org> | |||
2025-02-16 | build: upgrade fmt and SDL2 | Zephyron | |
Update fmt library to version 11.0.2 and make necessary adjustments: - Replace fmt/format.h includes with fmt/ranges.h - Add const qualifiers to formatter::format functions - Update CMake to require fmt version 11 Additional dependency updates: - Update SDL2 bundled version from 2.28.2 to 2.32.0 - Update catch2 to version 3.8.0 - Update vcpkg baseline to c82f74667287d3dc386bce81e44964370c91a289 | |||
2025-01-20 | shader: Implement EmitInvocationInfo across all backends | Zephyron | |
- Add proper invocation info handling for tessellation and fragment stages - Return patch vertices info shifted by 16 bits for tessellation stages - Return sample mask shifted by 16 bits for fragment stage - Return standard format (0x00ff0000) for compute and other stages - Implement consistently across SPIRV, GLSL, and GLASM backends - Remove stubbed warning message | |||
2025-01-14 | Revert incorrect copyright attribution for non-contributed files | Zephyron | |
- 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-31 | chore: update project references and add Citron copyright | Zephyron | |
- Replaced all references to the old project name with Citron. - Added Citron copyright information alongside existing notices in all files. | |||
2024-02-22 | Merge pull request #13075 from liamwhite/mali-having-a-bad-time | Narr the Reg | |
shader_recompiler: throw on missing geometry streams in geometry shaders | |||
2024-02-19 | shader_recompiler: throw on missing geometry streams in geometry shaders | Liam | |
2024-02-15 | shader_recompiler: fix non-const offset for arrayed image types | Liam | |
2024-02-15 | Revert "shader_recompiler: use only ConstOffset for OpImageFetch" | Liam | |
This reverts commit f296a9ce9a1a144d322d54d4628dba6f8a800cb7. | |||
2024-02-05 | shader_recompiler: use only ConstOffset for OpImageFetch | Liam | |
2024-01-18 | Merge pull request #12644 from liamwhite/vkspec-image-offset | liamwhite | |
shader_recompiler: fix Offset operand usage for non-OpImage*Gather | |||
2024-01-16 | Merge remote-tracking branch 'origin/master' into typos3 | Viktor Szépe | |
2024-01-15 | Fix more typos | Viktor Szépe | |
2024-01-11 | shader_recompiler: emulate 8-bit and 16-bit storage writes with cas loop | Liam | |
2024-01-11 | shader_recompiler: fix Offset operand usage for non-OpImage*Gather | Liam | |
2024-01-04 | Merge pull request #12437 from ameerj/gl-amd-fixes | liamwhite | |
OpenGL: Fixes and workaround updates for AMD | |||
2023-12-26 | shader_recompiler: use default value for clip distances array | Liam | |
2023-12-26 | shader_recompiler: respect clip distance limits in indexed store | Liam | |
2023-12-21 | spirv_emit_context: Fix BaseInstance for OGL spirv | Ameer J | |
2023-12-21 | shader_recompiler: use float image operations on load/store when required | Liam | |
2023-12-20 | emit_glsl_image: Use inlined texelFetch offsets | Ameer J | |
2023-12-18 | shader_recompiler: use minimal clip distance array | Liam | |
2023-12-18 | shader_recompiler: ignore clip distances beyond driver support level | Liam | |
2023-12-03 | Merge pull request #12196 from ameerj/glsl-cbuf-sizes | liamwhite | |
GLSL: Use known cbuf sizes when possible | |||
2023-11-26 | GLSL: Prefer known used cbuf sizes | Ameer J | |
2023-11-26 | Merge branch 'master' into ssbo-align | Ameer J | |
2023-11-19 | renderer_vulkan: ignore viewport stores on non-supporting drivers | Liam | |
2023-11-18 | shader_recompiler: Fix spelling of "derivate" (#12067) | Ameer J | |
2023-10-31 | shader_recompiler: Align SSBO offsets in GlobalMemory functions | Ameer J | |
2023-10-23 | Merge pull request #11847 from ameerj/glsl-shfl-fix | liamwhite | |
emit_glsl_warp: Fix shfl_in_bounds conditional | |||
2023-10-22 | emit_glsl_warp: Fix shfl_in_bounds conditional | Ameer J | |
2023-10-19 | Manually robust on Maxwell and earlier | Kelebek1 | |
2023-10-02 | ci: fix new codespell errors | Liam | |
2023-09-22 | emit_spirv: fix incorrect use of descriptor index in image atomics | Liam | |
2023-09-14 | shader_recompiler: skip sampler for buffer textures (#11435) | liamwhite | |
2023-09-02 | shader_recompiler: always declare image format for image buffers | Liam | |
2023-09-01 | shader_recompiler: fix emulation of 3D textureGrad | Liam | |
2023-08-18 | Shader Recomnpiler: implement textuzreGrad 3D emulation constant propagation | Fernando Sahmkow | |
2023-06-25 | emit_glasm: Fix lmem size computation | ameerj | |
2023-06-22 | Remove memory allocations in some hot paths | Kelebek1 | |
2023-06-03 | video_core: Enable support_descriptor_aliasing on Turnip, disable storage ↵ | bunnei | |
atomic otherwise. | |||
2023-06-03 | Avoid using VectorExtractDynamic for subgroup mask on Adreno GPUs | Billy Laws | |
This crashes their shader compiler for some reason. | |||
2023-06-03 | Implement scaled vertex buffer format emulation | Billy Laws | |
These formats are unsupported by mobile GPUs so they need to be emulated in shaders instead. | |||
2023-05-11 | Fix Tears of the Kingdom flickering clouds and depths. | Kelebek1 | |
2023-04-30 | Define SampleMask as an array | Kelebek1 | |
2023-04-08 | shader_recompiler: Use vector arithmetic rather than component-wise in ↵ | Wollnashorn | |
ImageGatherSubpixelOffset Should be more efficient and better readable | |||
2023-04-08 | shader_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-03-12 | general: fix spelling mistakes | Liam | |
2023-02-08 | glsl_emit_context: Remove redeclarations of gl_SampleID and gl_SampleMask | ameerj | |
These built-ins seem to be available without needing to be declared for fragment shaders, similar i.e. to gl_FragDepth | |||
2023-01-29 | spirv: Fix TXQ with MSAA textures | ameerj | |