summaryrefslogtreecommitdiffstats
path: root/shaders
diff options
context:
space:
mode:
Diffstat (limited to 'shaders')
-rw-r--r--shaders/triangle.frag5
-rw-r--r--shaders/triangle.vert26
2 files changed, 17 insertions, 14 deletions
diff --git a/shaders/triangle.frag b/shaders/triangle.frag
index 7c5b0e7..c7d99f3 100644
--- a/shaders/triangle.frag
+++ b/shaders/triangle.frag
@@ -1,9 +1,12 @@
#version 450
layout(location = 0) in vec3 fragColor;
+layout(location = 1) in vec2 fragTextureCoordinates;
layout(location = 0) out vec4 outColor;
+layout(binding = 1) uniform sampler2D textureSampler;
+
void main() {
- outColor = vec4(fragColor, 1.0);
+ outColor = vec4(fragColor * texture(textureSampler, fragTextureCoordinates).rgb, 1.0);
}
diff --git a/shaders/triangle.vert b/shaders/triangle.vert
index f5b2f8d..bf93f44 100644
--- a/shaders/triangle.vert
+++ b/shaders/triangle.vert
@@ -1,20 +1,20 @@
#version 450
-layout(location = 0) out vec3 fragColor;
+layout(location = 0) in vec3 inPosition;
+layout(location = 1) in vec3 inColor;
+layout(location = 2) in vec2 inTextureCoordinates;
-vec2 positions[3] = vec2[](
- vec2(0.0, -0.5),
- vec2(0.5, 0.5),
- vec2(-0.5, 0.5)
-);
+layout(location = 0) out vec3 fragColor;
+layout(location = 1) out vec2 fragTextureCoordinates;
-vec3 colors[3] = vec3[](
- vec3(1.0, 0.0, 0.0),
- vec3(0.0, 1.0, 0.0),
- vec3(0.0, 0.0, 1.0)
-);
+layout(set = 0, binding = 0) uniform UniformBufferObject {
+ mat4 model;
+ mat4 view;
+ mat4 projection;
+} ubo;
void main() {
- gl_Position = vec4(positions[gl_VertexIndex], 0.0, 1.0);
- fragColor = colors[gl_VertexIndex];
+ gl_Position = ubo.projection * ubo.view * ubo.model * vec4(inPosition, 1.0);
+ fragColor = inColor;
+ fragTextureCoordinates = inTextureCoordinates;
}
Go back to lisible.xyz