quakeforge/libs/video/renderer/vulkan/shader/particle.vert
Bill Currie 6aaf5c3722 [vulkan] Start work on particles for Vulkan
This gets the pipelines loaded (and unloaded on shutdown). Probably the
easy part :P. Still need to sort out the command buffers,
synchronization, and particle generation (and probably a bunch else
that's not coming to mind).
2021-12-24 06:45:13 +09:00

31 lines
649 B
GLSL

#version 450
layout (set = 0, binding = 0) uniform Matrices {
mat4 Projection3d;
mat4 View;
mat4 Sky;
mat4 Projection2d;
};
layout (push_constant) uniform PushConstants {
mat4 Model;
};
layout (location = 0) in vec4 position;
layout (location = 1) in vec4 velocity;
layout (location = 2) in vec4 color;
layout (location = 3) in vec4 ramp;
layout (location = 0) out vec4 o_velocity;
layout (location = 1) out vec4 o_color;
layout (location = 2) out vec4 o_ramp;
void
main (void)
{
// geometry shader will take care of Projection and View
gl_Position = Model * position;
o_velocity = Model * velocity;
o_color = color;
o_ramp = ramp;
}