Harbor

branch main
showing the latest snapshot on main
basic_vertex.glsl-opengl 589 B · Plain text
gpu/shader/tests/golden/basic_vertex.glsl-opengl 0644 Raw
#version 450

layout(std140, binding = 0) uniform uniforms_Block {
	mat4 model;
	mat4 view_proj;
	mat4 normal_mat;
} uniforms;

layout(location = 0) in vec3 in_position;
layout(location = 1) in vec3 in_normal;
layout(location = 2) in vec2 in_uv;
layout(location = 0) out vec2 out_uv;
layout(location = 1) out vec3 out_normal;

void main() {
	vec3 pos = in_position;
	vec4 world_pos = (uniforms.model * vec4(pos, 1.0));
	vec4 clip_pos = (uniforms.view_proj * world_pos);
	gl_Position = clip_pos;
	out_uv = in_uv;
	out_normal = normalize((uniforms.normal_mat * vec4(in_normal, 0.0)).xyz);
}