diff options
| author | ladevieq <ladevie.quentin@gmail.com> | 2023-01-25 23:06:30 +0100 |
|---|---|---|
| committer | ladevieq <ladevie.quentin@gmail.com> | 2023-01-25 23:06:30 +0100 |
| commit | 90a0afd18f080088cac068d92810fb630225d6be (patch) | |
| tree | 341310124fec15c6a02708815377db0cddb6b252 /shaders/api-test-ui.vert | |
| parent | 0a882c4b85423a170455f05a52d18f7fa7c9220b (diff) | |
Working compute api with uniforms
Diffstat (limited to 'shaders/api-test-ui.vert')
| -rw-r--r-- | shaders/api-test-ui.vert | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/shaders/api-test-ui.vert b/shaders/api-test-ui.vert new file mode 100644 index 0000000..6a37abc --- /dev/null +++ b/shaders/api-test-ui.vert @@ -0,0 +1,37 @@ +#extension GL_EXT_buffer_reference : require
+
+struct vertex {
+ vec2 pos;
+ vec2 uv;
+ uint color;
+ uint[3] padding;
+};
+
+layout(buffer_reference) readonly buffer vertices {
+ vertex vertices[];
+};
+
+layout(set = 1, binding = 0) uniform parameters {
+ vertices vertex_buffer;
+ vec2 scale;
+ vec2 translate;
+} params;
+
+out gl_PerVertex {
+ vec4 gl_Position;
+};
+
+layout(location = 0) out struct {
+ vec2 uv;
+ vec4 color;
+} Out;
+
+
+void main() {
+ vertex v = params.vertex_buffer.vertices[gl_VertexIndex];
+
+ Out.color = unpackUnorm4x8(v.color);
+ Out.uv = v.uv;
+
+ gl_Position = vec4(v.pos * params.scale + params.translate, 0.0, 1.0);
+}
|
