summaryrefslogtreecommitdiff
path: root/assets/shaders/object.vert
diff options
context:
space:
mode:
Diffstat (limited to 'assets/shaders/object.vert')
-rw-r--r--assets/shaders/object.vert29
1 files changed, 29 insertions, 0 deletions
diff --git a/assets/shaders/object.vert b/assets/shaders/object.vert
new file mode 100644
index 0000000..23c0ffb
--- /dev/null
+++ b/assets/shaders/object.vert
@@ -0,0 +1,29 @@
+#version 450
+#extension GL_ARB_separate_shader_objects : enable
+
+layout(location = 0) in vec3 in_position;
+layout(location = 1) in vec3 in_normal;
+layout(location = 2) in vec2 in_tex_coord;
+
+layout(location = 0) out vec3 out_position;
+layout(location = 1) out vec3 out_normal;
+layout(location = 2) out vec2 out_tex_coord;
+
+layout(set = 0, binding = 0) uniform global_object_uniform {
+ mat4 projection;
+ mat4 view;
+}
+global_ubo;
+
+layout(push_constant) uniform push_constants {
+ mat4 model; // 64 bytes
+}
+u_push_constants;
+
+void main() {
+ gl_Position = global_ubo.projection * global_ubo.view * u_push_constants.model *
+ vec4(in_position.x, in_position.y, in_position.z, 1.0);
+ out_position = in_position;
+ out_normal = in_normal;
+ out_tex_coord = in_tex_coord;
+} \ No newline at end of file