mirror of
https://github.com/antopilo/Nuake.git
synced 2026-01-06 06:09:52 +03:00
48 lines
947 B
GLSL
48 lines
947 B
GLSL
#shader vertex
|
|
#version 440 core
|
|
layout(location = 0) in vec3 Position;
|
|
layout(location = 1) in vec3 Normal;
|
|
layout(location = 1) in vec2 UV;
|
|
|
|
uniform mat4 u_Model;
|
|
uniform mat4 u_View;
|
|
uniform mat4 u_Projection;
|
|
|
|
out mat4 o_Projection;
|
|
out sample vec2 a_UV;
|
|
out vec4 o_FragPos;
|
|
|
|
void main()
|
|
{
|
|
a_UV = UV;
|
|
o_Projection = u_Projection;
|
|
gl_Position = u_Projection * u_View * u_Model * vec4(Position, 1.0);
|
|
o_FragPos = gl_Position;
|
|
}
|
|
|
|
#shader fragment
|
|
#version 440 core
|
|
|
|
layout(location = 0) out vec4 FragColor;
|
|
layout(location = 3) out int gEntityID;
|
|
|
|
in vec2 a_UV;
|
|
in mat4 o_Projection;
|
|
in vec4 o_FragPos;
|
|
|
|
uniform sampler2D u_DepthTexture;
|
|
uniform sampler2D gizmo_texture;
|
|
uniform float u_Opacity;
|
|
uniform int u_EntityID;
|
|
|
|
void main()
|
|
{
|
|
vec4 color = vec4(0, 0, 0, 0);
|
|
|
|
vec4 px_color = texture(gizmo_texture, a_UV).rgba;
|
|
color = px_color * vec4(1, 1, 1, u_Opacity);
|
|
|
|
gEntityID = u_EntityID;
|
|
|
|
FragColor = color;
|
|
} |