Commit Graph

48 Commits

Author SHA1 Message Date
ameerj ccd4becb79 glsl: Implement indexed attribute loads 2021-07-22 21:51:37 -04:00
ameerj 819ae85298 glsl: Conditionally add GL_ARB_sparse_texture2 2021-07-22 21:51:37 -04:00
ameerj 5292962d7e glsl: Conditionally use GL_EXT_shader_image_load_formatted
Fix for SULD.D
2021-07-22 21:51:37 -04:00
ameerj b3a46a3746 glsl: Implement image atomics and set layer
along with some more cleanup/oversight fixes
2021-07-22 21:51:37 -04:00
ameerj 8c9d420fa5 glsl: Use textureGrad fallback when EXT_texture_shadow_lod is unsupported 2021-07-22 21:51:37 -04:00
ameerj 8894af7c06 glsl: Fix <32-bit SSBO writes
and more cleanup
2021-07-22 21:51:37 -04:00
ameerj 4534294b7b glsl: Cleanup and address feedback 2021-07-22 21:51:37 -04:00
ameerj bef3820fb0 glsl: Refactor Global memory functions 2021-07-22 21:51:37 -04:00
ameerj 2e8da9d3be glsl: Implement Load/WriteGlobal
along with some other misc changes and fixes
2021-07-22 21:51:37 -04:00
ameerj d19a49485a glsl: Implement Images 2021-07-22 21:51:37 -04:00
ameerj 0c162d8b17 glsl: skip gl_ViewportIndex write if device does not support it 2021-07-22 21:51:37 -04:00
ameerj f54240823c glsl: Implement transform feedback 2021-07-22 21:51:37 -04:00
ameerj 922ea01123 glsl: Yet another gl_ViewportIndex fix attempt 2021-07-22 21:51:37 -04:00
ameerj 1736a7e162 glsl: Add gl_ViewportIndex out attribute 2021-07-22 21:51:37 -04:00
ameerj 363e228778 glsl: Fix precise variable declaration
and add some more separation in the shader for better debugability when dumped
2021-07-22 21:51:37 -04:00
ameerj e866cece98 glsl: Implement tessellation shaders 2021-07-22 21:51:37 -04:00
ameerj 7374a8bf1d glsl: Implement geometry shaders 2021-07-22 21:51:37 -04:00
ameerj aa06d8fa05 glsl: Implement gl_ViewportIndex
SSBU now working
2021-07-22 21:51:37 -04:00
ameerj 1cc3be2135 HACK glsl: Write defaults to unused generic attributes 2021-07-22 21:51:37 -04:00
ameerj 12b9b923e1 glsl: Fix ssbo indexing and name shadowing between shader stages 2021-07-22 21:51:37 -04:00
ameerj 33f63cdc22 glsl: Rework var alloc to not assign unused results 2021-07-22 21:51:37 -04:00
ameerj 748e56e8a2 glsl: Fix ATOM and implement ATOMS 2021-07-22 21:51:37 -04:00
ameerj f91616b31a glsl: Use gl_SubGroupInvocationARB 2021-07-22 21:51:36 -04:00
ameerj ee44e94932 glsl: Implement VOTE for subgroup size potentially larger 2021-07-22 21:51:36 -04:00
ameerj 5a3864d8c4 glsl: Implement VOTE 2021-07-22 21:51:36 -04:00
ameerj 1e59e72a48 glsl: Implement ST{LS} 2021-07-22 21:51:36 -04:00
ameerj d7213c862e glsl: Implement more instructions used by SMO 2021-07-22 21:51:36 -04:00
ameerj 08935e289f glsl: Implement TEX depth functions 2021-07-22 21:51:36 -04:00
ameerj b055e4a91e glsl: Implement TEX ImageSample functions 2021-07-22 21:51:36 -04:00
ameerj a68609b4f8 glsl: Better Storage access and wip warps 2021-07-22 21:51:36 -04:00
ameerj 72974388fb glsl: WIP var forward declaration
to fix Loop control flow.
2021-07-22 21:51:36 -04:00
ameerj c797a0c5a5 glsl: Fix bindings, add some CC ops 2021-07-22 21:51:36 -04:00
ameerj b96d76fa7e glsl: Implement derivatives and YDirection
plus some other misc additions/changed
2021-07-22 21:51:36 -04:00
ameerj ac6135774f glsl: Fix non-immediate buffer access
and many other misc implementations
2021-07-22 21:51:36 -04:00
ameerj 2328b0b2a8 glsl: textures wip 2021-07-22 21:51:36 -04:00
ameerj 32328acc39 glsl: Implement some attribute getters and setters 2021-07-22 21:51:36 -04:00
ameerj c8b2a5a4f3 glsl: Track S32 atomics 2021-07-22 21:51:36 -04:00
ameerj ce2ddb7d69 glsl: Query GL Device for FP16 extension support 2021-07-22 21:51:36 -04:00
ameerj 1d88049eaf glsl: Simply FP storage atomics 2021-07-22 21:51:36 -04:00
ameerj 0adc9d2fc1 glsl: F16x2 storage atomics 2021-07-22 21:51:36 -04:00
ameerj 5fa21197b9 glsl: Revert ssbo aliasing. Storage Atomics impl 2021-07-22 21:51:36 -04:00
ameerj 659eecb295 glsl: Wip storage atomic ops 2021-07-22 21:51:36 -04:00
ameerj bf40d10805 glsl: More FP fixes 2021-07-22 21:51:36 -04:00
ameerj d7656077bf glsl: FP function fixes 2021-07-22 21:51:36 -04:00
ameerj eea0726cd5 glsl: Implement a few Integer instructions 2021-07-22 21:51:36 -04:00
ameerj 690e6a79c7 glsl: Fix program linking and cbuf 2021-07-22 21:51:35 -04:00
ameerj 3355c467e0 glsl: Fix "reg" allocing
based on glasm with some tweaks
2021-07-22 21:51:35 -04:00
ameerj fda83fe3c5 glsl: Initial backend 2021-07-22 21:51:35 -04:00