mirror of
https://github.com/yquake2/ref_vk.git
synced 2024-11-29 23:22:11 +00:00
35 lines
797 B
GLSL
35 lines
797 B
GLSL
|
#version 450
|
||
|
#extension GL_ARB_separate_shader_objects : enable
|
||
|
|
||
|
layout(location = 0) in vec3 inVertex;
|
||
|
layout(location = 1) in vec2 inTexCoord;
|
||
|
|
||
|
layout(push_constant) uniform PushConstant
|
||
|
{
|
||
|
mat4 vpMatrix;
|
||
|
} pc;
|
||
|
|
||
|
layout(set = 1, binding = 0) uniform UniformBufferObject
|
||
|
{
|
||
|
mat4 model;
|
||
|
vec4 color;
|
||
|
float time;
|
||
|
float scroll;
|
||
|
} ubo;
|
||
|
|
||
|
layout(location = 0) out vec2 texCoord;
|
||
|
layout(location = 1) out vec4 color;
|
||
|
layout(location = 2) out float aTreshold;
|
||
|
|
||
|
out gl_PerVertex {
|
||
|
vec4 gl_Position;
|
||
|
};
|
||
|
|
||
|
void main() {
|
||
|
gl_Position = pc.vpMatrix * ubo.model * vec4(inVertex, 1.0);
|
||
|
texCoord = inTexCoord + vec2(sin(2.0 * ubo.time + inTexCoord.y * 3.28), sin(2.0 * ubo.time + inTexCoord.x * 3.28)) * 0.05;
|
||
|
texCoord.x += ubo.scroll;
|
||
|
color = ubo.color;
|
||
|
aTreshold = 0.0;
|
||
|
}
|