Commit graph

3 commits

Author SHA1 Message Date
Bill Currie
f4cbe3f220 [qfcc] Ensure compute shaders set all local_size elements
The default value is 1, and the assumption in target_spirv is that if
the first one is set, all are set, but the source code doesn't need to
set any explicitly.
2025-01-21 12:14:06 +09:00
Bill Currie
fb7025dbd3 [qfcc] Handle execution modes for spir-v/glsl
This means that `layout(triangles)` etc now work, though there are
issues with frag shaders missing functions (since getting function calls
working) and compute shaders silently failing.
2025-01-21 10:42:56 +09:00
Bill Currie
c58748d640 [qfcc] Implement many glsl qualifiers as attributes
Attributes seem appropriate as GLSL's qualifiers affect variables rather
than types (since there's no typedef).

Not much is done with the attributes yet other than some basic error
checking (duplicates of non-layout attributes) and debug output, but
most (if not all) declarations get to the declaration code with
attributes intact.
2024-09-09 20:01:06 +09:00