Commit Graph

22 Commits

Author SHA1 Message Date
ReinUsesLisp 9750e0410b opengl: Declare fragment outputs even if they are not used
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-22 21:51:34 -04:00
ReinUsesLisp df14567fcc glasm: Use storage buffers instead of global memory when possible 2021-07-22 21:51:33 -04:00
ReinUsesLisp e9a5390a92 glasm: Implement indirect attribute loads 2021-07-22 21:51:33 -04:00
ReinUsesLisp 8499797b68 glasm: Fix output patch reads
With this, Luigi's Mansion's sand renders properly.
2021-07-22 21:51:33 -04:00
ReinUsesLisp 9452fe2dc6 shader: Split profile and runtime information in separate structs 2021-07-22 21:51:33 -04:00
ReinUsesLisp 83ff44531b glasm: Fix patch attribute declarations 2021-07-22 21:51:33 -04:00
ReinUsesLisp 62f0368ce4 glasm: Implement clip distance stores 2021-07-22 21:51:32 -04:00
ReinUsesLisp 2e5002f0bf glasm: Implement patch memory 2021-07-22 21:51:32 -04:00
ReinUsesLisp 24e3128420 glasm: Implement InvocationId 2021-07-22 21:51:32 -04:00
ReinUsesLisp 2268a150ce glasm: Implement geometry shader attribute reads 2021-07-22 21:51:32 -04:00
ReinUsesLisp 2c0780b9fa glasm: Properly declare attributes on geometry programs 2021-07-22 21:51:32 -04:00
ReinUsesLisp 96d2dd78b0 glasm: Implement ImageRead 2021-07-22 21:51:32 -04:00
ReinUsesLisp e63efa1b56 glasm: Fix compute stage name 2021-07-22 21:51:32 -04:00
ReinUsesLisp 601f7bfd00 glasm: Implement stores to gl_ViewportIndex 2021-07-22 21:51:32 -04:00
ReinUsesLisp 1e64cbd23a glasm: Implement ImageFetch 2021-07-22 21:51:32 -04:00
ReinUsesLisp 0c82ee3444 glasm: Support textures used in more than one stage 2021-07-22 21:51:32 -04:00
ReinUsesLisp 22fb9cc538 emit_glasm: Enable ARB_draw_buffers when needed 2021-07-22 21:51:31 -04:00
ReinUsesLisp 6758e3d946 glasm: Add graphics specific shader declarations to GLASM 2021-07-22 21:51:31 -04:00
ReinUsesLisp 7273fcab95 glasm: Implement shuffle and vote instructions on GLASM 2021-07-22 21:51:31 -04:00
ReinUsesLisp 6c0a696179 glasm: Implement basic GLASM instructions 2021-07-22 21:51:30 -04:00
ReinUsesLisp 03f17ebc43 glasm: Changes to GLASM register allocator and emit context 2021-07-22 21:51:30 -04:00
ReinUsesLisp d9b9c10f32 glasm: Add GLASM backend infrastructure 2021-07-22 21:51:30 -04:00