Files
stgsharp/StgSharpDebug/Shader/particle.vert
T

37 lines
705 B
GLSL

#version 460 core
layout(location = 0) in vec3 singleCoord;
layout(location = 1) in vec3 locations;
layout(location = 2) in float rotation;
layout(location = 3) in float scale;
uniform mat4x4 Camera;
void main()
{
/**/
mat4x4 scalingMat = mat4x4
(
scale,0,0,0,
0,scale,0,0,
0,0,scale,0,
0,0,0,1
);
/**/
/**/
mat4x4 rotationMat = mat4x4
(
cos(rotation),-sin(rotation),0,0,
sin(rotation),cos(rotation),0,0,
0,0,1,0,
0,0,0,1
);
/**/
gl_Position = Camera * ( rotationMat * scalingMat * vec4( singleCoord.xyz , 1) + vec4( locations.xyz , 0));
}