blob: 5f2da2a003e8f3cef5bde25e9a611d3336036f81 [file] [log] [blame]
#version 430 core
in vec3 vertexPosition;
in vec3 vertexNormal;
in vec3 particlePosition;
in vec3 particleColor;
out VertexBlock
{
flat vec3 color;
vec3 pos;
vec3 normal;
} v_out;
uniform mat4 mvp;
uniform mat3 modelViewNormal;
uniform mat4 modelView;
void main(void)
{
vec4 pos = vec4(vertexPosition.xyz, 1.0) + vec4(particlePosition, 0.0);
gl_Position = mvp * pos;
v_out.pos = vec4(modelView * pos).xyz;
v_out.normal = normalize(modelViewNormal * vertexNormal);
v_out.color = mix(particleColor * 0.2, particleColor, smoothstep(0.5, 0.8, abs(v_out.normal).z));
}