sandbox updates
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
#version 450
|
||||
#extension GL_EXT_buffer_reference : require
|
||||
|
||||
struct TriangleVertex {
|
||||
vec4 vertex;
|
||||
vec4 color;
|
||||
};
|
||||
|
||||
layout(buffer_reference, std430) readonly buffer TriangleVertexBuffer {
|
||||
TriangleVertex vertices[];
|
||||
};
|
||||
|
||||
layout( push_constant ) uniform constants {
|
||||
TriangleVertexBuffer triangleBuffer;
|
||||
vec2 padding;
|
||||
vec4 data1;
|
||||
vec4 data2;
|
||||
vec4 data3;
|
||||
} PushConstants;
|
||||
|
||||
layout (location = 0) out vec3 outColor;
|
||||
|
||||
void main()
|
||||
{
|
||||
//const array of positions for the triangle
|
||||
const vec3 positions[3] = vec3[3](
|
||||
vec3(-1.f,1.f, 0.0f),
|
||||
vec3(1.f,1.f, 0.0f),
|
||||
vec3(0.f,-1.f, 0.0f)
|
||||
);
|
||||
|
||||
//const array of colors for the triangle
|
||||
const vec3 colors[3] = vec3[3](
|
||||
vec3(1.0f, 0.0f, 0.0f), //red
|
||||
vec3(0.0f, 1.0f, 0.0f), //green
|
||||
vec3(00.f, 0.0f, 1.0f) //blue
|
||||
);
|
||||
|
||||
// Load vertex data from device address
|
||||
TriangleVertex v = PushConstants.triangleBuffer.vertices[gl_VertexIndex];
|
||||
|
||||
// output the position of each vertex
|
||||
gl_Position = vec4(v.vertex.xyz, 1.0);
|
||||
outColor = vec3(v.color.xyz);
|
||||
}
|
||||
Reference in New Issue
Block a user