22 lines
613 B
GLSL
22 lines
613 B
GLSL
#version 450 core
|
|
in vec4 vPosID;
|
|
in vec4 vCol;
|
|
in vec4 vCenterSize;
|
|
in vec4 vControls;
|
|
layout (location=0) out vec4 fCol;
|
|
layout (location=1) out vec4 fPos;
|
|
layout (location=2) out vec4 fNorm;
|
|
void main()
|
|
{
|
|
float d = dot(vControls,vControls);
|
|
if (d > 1) {discard;}
|
|
//fCol = vCol;
|
|
fCol = vec4(vCol.xyz,vCol.w*(1-d));
|
|
fPos = vec4(vPosID.xy, vPosID.z + (1-d) * vCenterSize.w, 0.5);
|
|
vec3 fn1 = (1-d)*vec3(vCenterSize.xyz - fPos.xyz);
|
|
//vec3 fn1 = vec3(vCenterSize.xyz - fPos.xyz);
|
|
//fNorm = vec4(0.5*fn1.xy,fn1.z, 0.5);
|
|
fNorm = vec4(fn1.xyz, 0.5);
|
|
//fNorm = vec4(0,0,1, 1);
|
|
}
|